:root{
  --navy:#173f68;
  --navy-2:#24577f;
  --teal:#18a6a0;
  --mint:#e9f8f5;
  --coral:#f07a62;
  --sun:#f6c85f;
  --cream:#fffaf0;
  --sky:#eaf5fb;
  --ink:#23425e;
  --muted:#718396;
  --line:#e5edf1;
  --white:#fff;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
.admission-page{
  background:linear-gradient(180deg,#fffdf8 0%,#f7fbfc 48%,#fff 100%);
  color:var(--ink);
  overflow-x:hidden;
}

/* NAV */
.admission-nav{
  height:88px;padding:0 max(4vw,30px);display:flex;align-items:center;justify-content:space-between;
  background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,63,104,.07);
  position:sticky;top:0;z-index:50;
}
.admission-brand{width:245px;height:68px;display:block}
.admission-brand img{width:100%;height:100%;object-fit:contain;object-position:left center;transition:transform .35s ease}
.admission-brand:hover img{transform:scale(1.025)}
.admission-nav>div{display:flex;align-items:center;gap:14px}
.back-home,.nav-call{font-size:14px;font-weight:900;text-decoration:none;transition:.25s ease}
.back-home{color:var(--navy);margin-right:2px}
.back-home:hover{color:var(--teal);transform:translateX(-3px)}
.nav-call{padding:11px 19px;border-radius:999px;background:var(--navy);color:#fff;box-shadow:0 8px 18px rgba(23,63,104,.18)}
.nav-call:hover{background:var(--teal);transform:translateY(-2px);box-shadow:0 12px 22px rgba(24,166,160,.2)}

/* HERO */
.admission-hero{
  min-height:430px;position:relative;overflow:hidden;display:grid;place-items:center;
  background:var(--navy);isolation:isolate;
}
.admission-hero::before,.admission-hero::after{
  content:"";position:absolute;border-radius:50%;z-index:2;pointer-events:none;opacity:.75;
}
.admission-hero::before{width:190px;height:190px;right:-45px;top:-65px;background:rgba(246,200,95,.28);animation:floatBubble 7s ease-in-out infinite}
.admission-hero::after{width:110px;height:110px;left:6%;bottom:-48px;background:rgba(24,166,160,.3);animation:floatBubble 6s ease-in-out infinite reverse}
.admission-hero-image{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(12,42,72,.93) 0%,rgba(23,63,104,.78) 48%,rgba(23,63,104,.4) 100%),url('assets/pollachi-03.png') center 48%/cover;
  filter:saturate(.98);transform:scale(1.03);animation:heroZoom 12s ease-out forwards;
}
.admission-hero-content{position:relative;z-index:4;width:min(1160px,92%);margin:auto;color:#fff;padding:40px 0}
.admission-hero-content>p:first-child{color:#9de5dc;letter-spacing:.18em;font-size:12px;font-weight:900;margin-bottom:10px;animation:fadeUp .75s ease both}
.admission-hero h1{font-size:clamp(53px,7vw,86px);line-height:.93;color:#fff;letter-spacing:-.045em;margin:0 0 20px;animation:fadeUp .85s .08s ease both}
.admission-hero h1 span{color:#f8d47b;position:relative}
.admission-hero h1 span::after{content:"";position:absolute;left:3px;right:3px;bottom:-5px;height:7px;border-radius:50%;background:#f8d47b55;transform:rotate(-2deg)}
.admission-hero-text{max-width:520px;font-size:17px;line-height:1.7;color:#e5f0f5;margin:0;animation:fadeUp .85s .16s ease both}
.admission-hero-content::after{content:"✦  •  ✦";position:absolute;right:2%;bottom:35px;color:#f8d47b88;font-size:28px;letter-spacing:14px;animation:twinkle 2.8s ease-in-out infinite}

/* MAIN INTRO */
.admission-main{padding:86px 0 100px;position:relative}
.admission-main::before{content:"";position:absolute;top:30px;left:-100px;width:250px;height:250px;border-radius:50%;background:#eaf8f4;filter:blur(2px);z-index:-1}
.admission-intro{max-width:790px;margin:0 auto 36px;text-align:center}
.admission-intro .kicker{display:inline-flex;align-items:center;gap:9px;color:var(--teal);letter-spacing:.16em;font-size:12px;font-weight:900;margin:0 0 13px}
.admission-intro .kicker::before,.admission-intro .kicker::after{content:"";width:24px;height:2px;border-radius:99px;background:var(--sun)}
.admission-intro h2{font-size:clamp(34px,4vw,52px);line-height:1.05;color:var(--navy);margin:0 0 13px;letter-spacing:-.035em}
.admission-intro>p:last-child{color:var(--muted);line-height:1.7;margin:0}
.admission-intro strong{color:var(--coral)}

/* FORM CARD */
.admission-form-card{
  width:min(1080px,92%);margin:auto;background:rgba(255,255,255,.97);border:1px solid #e8eef1;border-radius:26px;
  box-shadow:0 24px 70px rgba(27,61,86,.13);padding:42px;position:relative;overflow:hidden;
}
.admission-form-card::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,var(--teal),var(--sun),var(--coral));}
.admission-form-card::after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-95px;top:150px;background:#fff7dc;z-index:0;pointer-events:none}
#admissionForm{position:relative;z-index:1}

.form-section{
  padding:8px 0 42px;margin-bottom:34px;border-bottom:1px dashed #dbe7eb;
  animation:sectionReveal .7s ease both;
}
.form-section:nth-of-type(2){animation-delay:.08s}.form-section:nth-of-type(3){animation-delay:.16s}.form-section:nth-of-type(4){animation-delay:.24s}
.form-section:last-of-type{margin-bottom:0}
.form-section-title{display:flex;align-items:center;justify-content:flex-start;gap:13px;margin:0 0 27px}
.form-section-title span{
  display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:var(--mint);color:var(--teal);
  font-size:12px;font-weight:900;box-shadow:inset 0 0 0 1px #d2eee9;position:relative;overflow:hidden;
}
.form-section-title span::after{content:"";position:absolute;width:28px;height:28px;border-radius:50%;background:#fff;opacity:.45;top:-15px;right:-12px}
.form-section-title h3{margin:0;color:var(--navy);font-size:25px;letter-spacing:-.02em;text-transform:none}

.form-grid{display:grid;gap:18px;margin-bottom:20px}
.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-grid label,.form-section>label{display:block;font-size:13px;font-weight:900;color:#36546c;line-height:1.35}
.form-grid em,.form-section>label em{font-style:normal;color:var(--coral)}
.form-grid input,.form-grid select,.form-section textarea,.form-section>label input,.form-section>label select{
  display:block;width:100%;box-sizing:border-box;margin-top:8px;padding:14px 15px;border:1px solid #dce6eb;border-radius:12px;
  background:#fbfdfe;font:700 14px Nunito;color:var(--ink);outline:none;transition:border-color .25s,box-shadow .25s,transform .25s,background .25s;
}
.form-grid input:hover,.form-grid select:hover,.form-section textarea:hover{border-color:#b9d7d7;background:#fff}
.form-grid input:focus,.form-grid select:focus,.form-section textarea:focus{
  border-color:var(--teal);background:#fff;box-shadow:0 0 0 4px rgba(24,166,160,.11);transform:translateY(-1px)
}
.form-section textarea{min-height:112px;resize:vertical}

/* PHOTO UPLOADS */
.photo-grid{grid-template-columns:1fr;margin-bottom:27px}
.photo-field{max-width:250px}
.photo-field>label:first-child{display:block;margin-bottom:9px}
.photo-box{
  width:160px;height:160px;border:2px dashed #c8dcdf;border-radius:20px;background:linear-gradient(145deg,#f3fbfa,#fffaf0);
  overflow:hidden;display:grid;place-items:center;position:relative;transition:.3s ease;
}
.photo-box::before{content:"📷";font-size:27px;opacity:.32;position:absolute}
.photo-box:hover{border-color:var(--teal);transform:translateY(-3px);box-shadow:0 10px 24px rgba(24,166,160,.12)}
.photo-box img{width:100%;height:100%;object-fit:cover;display:none;position:relative;z-index:1}
.upload-btn{
  display:inline-flex!important;align-items:center;gap:7px;margin-top:12px;padding:10px 18px;border-radius:999px;background:var(--navy);color:#fff;
  font-size:12px!important;font-weight:900!important;cursor:pointer;transition:.25s ease;box-shadow:0 7px 16px rgba(23,63,104,.16)
}
.upload-btn::before{content:"↑";font-size:15px}
.upload-btn:hover{background:var(--teal);transform:translateY(-2px);box-shadow:0 10px 18px rgba(24,166,160,.2)}
.upload-btn input{display:none!important}

.parent-column-headings{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:-3px 0 10px;color:#8ba0af;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.parent-column-headings span{text-align:center}
.parent-photo-grid{margin-top:28px}
.parent-photo-grid .photo-field{max-width:none}
.parent-photo-grid .photo-box{margin:0 auto}
.parent-photo-grid .photo-field>label:first-child{text-align:center}
.parent-photo-grid .upload-btn{display:flex!important;width:max-content;margin:12px auto 0}
.section-help{text-align:center;color:var(--muted);font-size:14px;line-height:1.65;margin:-7px auto 27px;max-width:760px}

/* BUTTONS */
.form-actions{display:flex;justify-content:center;gap:14px;margin-top:13px;padding-top:7px}
.form-submit,.form-cancel{border:0;padding:14px 34px;border-radius:999px;color:#fff;font:900 14px Nunito;cursor:pointer;transition:.25s ease;letter-spacing:.02em}
.form-submit{background:linear-gradient(135deg,#1eae8f,#159a9b);box-shadow:0 11px 23px rgba(24,166,160,.22)}
.form-submit::after{content:"  →"}
.form-cancel{background:#edf1f3;color:#52697b}
.form-submit:hover{transform:translateY(-3px);box-shadow:0 16px 28px rgba(24,166,160,.25)}
.form-cancel:hover{background:#e3eaed;transform:translateY(-2px)}
.form-note{margin:18px 0 0;text-align:center;color:#8b9ba9;font-size:11px;line-height:1.55}
.form-success{display:none;margin:16px 0 0;padding:13px 15px;border-radius:14px;background:#e7f8f1;color:#187051;font-size:12px;font-weight:800;text-align:center;animation:popIn .45s ease}
.form-success.show{display:block}

/* FOOTER */
.admission-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:25px max(4vw,30px);color:#718496;font-size:13px;background:#fff;border-top:1px solid #edf1f3}
.admission-footer a{font-weight:900;color:var(--teal);text-decoration:none}
.social-row{display:flex;gap:8px}.social-btn{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid #dde7eb;color:#5b6f82;background:#fff;transition:.2s}.social-btn svg{width:15px;height:15px}.social-btn:hover{color:#fff;transform:translateY(-3px);border-color:transparent}.social-instagram:hover{background:linear-gradient(135deg,#f58529,#dd2a7b 60%,#8134af)}.social-whatsapp:hover{background:#25d366}.social-facebook:hover{background:#1877f2}.social-youtube:hover{background:#ff0000}

/* ANIMATION */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes sectionReveal{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes popIn{from{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}
@keyframes floatBubble{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(16px) rotate(8deg)}}
@keyframes heroZoom{from{transform:scale(1.03)}to{transform:scale(1)}}
@keyframes twinkle{0%,100%{opacity:.45;transform:translateY(0)}50%{opacity:1;transform:translateY(-6px)}}

@media(max-width:850px){
  .form-grid.three{grid-template-columns:1fr 1fr}.form-grid.two{grid-template-columns:1fr}.parent-column-headings{display:none}
  .admission-form-card{padding:32px}.admission-hero{min-height:390px}
}
@media(max-width:600px){
  .admission-nav{height:76px;padding:0 18px}.admission-brand{width:185px;height:55px}.back-home{display:none}.nav-call{padding:9px 13px;font-size:12px}
  .admission-hero{min-height:335px}.admission-hero-content{padding:30px 0}.admission-hero h1{font-size:54px}.admission-hero-text{font-size:15px}.admission-hero-content::after{font-size:20px;right:0;bottom:22px}
  .admission-main{padding:58px 0 70px}.admission-intro{width:92%;margin-bottom:28px}.admission-intro h2{font-size:34px}.admission-form-card{width:94%;padding:23px 18px;border-radius:20px}
  .form-grid.three{grid-template-columns:1fr}.form-section{padding-bottom:32px;margin-bottom:27px}.form-section-title{margin-bottom:22px}.form-section-title h3{font-size:22px}.form-section-title span{width:39px;height:39px;border-radius:12px}
  .photo-box{width:140px;height:140px}.form-actions{flex-direction:column}.form-submit,.form-cancel{width:100%}
  .admission-footer{justify-content:center;flex-wrap:wrap;text-align:center;padding:22px 18px}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition:none!important}}
