/* Sterling Admissions — marketing site. Loads after brand.css. */

/* ---------- NAV: reversed on navy ---------- */
.nav{position:sticky;top:0;z-index:50;background:var(--navy);border-bottom:1px solid rgba(198,219,238,.14);}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;gap:22px;}
.navlinks{display:flex;gap:26px;font-size:.9rem;}
.navlinks a{text-decoration:none;color:var(--mist);opacity:.86;}
.navlinks a:hover{opacity:1;color:var(--paper);}
@media(max-width:1000px){.navlinks{display:none;}}

/* ---------- HERO ---------- */
.hero{background:var(--navy);color:var(--paper);padding:88px 0 84px;position:relative;overflow:hidden;}
.hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(680px 340px at 78% 18%,rgba(46,143,214,.22),transparent 70%);
}
.hero .wrap{position:relative;z-index:1;}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:56px;align-items:center;}
@media(max-width:940px){.hero-grid{grid-template-columns:1fr;gap:46px;}}
.hero .kicker{color:var(--daylight);}
.hero h1{font-size:clamp(2.5rem,5.4vw,4rem);margin-top:16px;color:var(--paper);}
.lede{margin-top:24px;font-size:1.08rem;color:var(--mist);max-width:52ch;}
.cta-row{display:flex;gap:13px;margin-top:34px;flex-wrap:wrap;}
/* Universities are never set near the lockup — brand rule 05. */
.hero-foot{margin-top:30px;font-size:.83rem;color:rgba(198,219,238,.72);padding-top:20px;border-top:1px solid rgba(198,219,238,.16);}
.hero-foot strong{color:var(--paper);font-weight:600;}

/* migration figure */
.hero-art{display:flex;align-items:center;justify-content:center;min-height:320px;}
.migration{width:100%;max-width:380px;}
.mig-arc{fill:none;stroke:var(--passage);stroke-width:1.5;stroke-dasharray:5 7;opacity:.75;}
.mig-node{fill:var(--daylight);}
.mig-label{font-family:var(--text);font-size:9px;font-weight:600;letter-spacing:.18em;fill:var(--mist);text-transform:uppercase;}

/* ---------- STATS ---------- */
.stats{background:var(--paper-2);border-bottom:1px solid var(--rule);}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:30px 28px;}
@media(max-width:760px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:26px;}}
.stats-grid div{text-align:center;}
.stats-grid b{display:block;font-family:var(--display);font-size:2rem;font-weight:400;color:var(--navy);}
.stats-grid span{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.13em;color:var(--slate);}

/* ---------- BLOCKS ---------- */
.block{padding:92px 0;}
.block.alt{background:var(--paper-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);}
.head{max-width:60ch;margin-bottom:46px;}
.head h2{font-size:clamp(1.8rem,3.6vw,2.5rem);margin-top:12px;color:var(--navy);}
.head-sub{margin-top:16px;color:var(--slate);font-size:1.02rem;}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:44px;}
@media(max-width:880px){.two-col{grid-template-columns:1fr;gap:38px;}}
.feature-num{font-family:var(--display);font-size:1.6rem;color:var(--passage-ink);margin-bottom:10px;}
.feature h3{font-size:1.4rem;margin-bottom:14px;color:var(--navy);}
.feature p{color:var(--slate);font-size:.97rem;}
.feature p+p{margin-top:14px;}
.clarify{margin-top:48px;background:var(--white);border:1px solid var(--rule);border-left:3px solid var(--passage);border-radius:4px;padding:28px 32px;}
.clarify h4{font-family:var(--text);font-size:.93rem;font-weight:700;margin-bottom:10px;color:var(--navy);}
.clarify p{color:var(--slate);font-size:.94rem;max-width:82ch;}

/* ---------- STEPS ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
@media(max-width:840px){.steps{grid-template-columns:1fr;}}
.step{background:var(--white);border:1px solid var(--rule);border-radius:4px;padding:32px 28px;}
.step-n{font-family:var(--display);font-size:2rem;color:var(--passage-ink);line-height:1;margin-bottom:14px;}
.step h3{font-size:1.15rem;margin-bottom:9px;color:var(--navy);}
.step p{color:var(--slate);font-size:.92rem;}

/* ---------- STORY ---------- */
.story-grid{display:grid;grid-template-columns:.62fr 2fr;gap:58px;align-items:start;}
@media(max-width:900px){.story-grid{grid-template-columns:1fr;gap:34px;}}
.story-portrait{text-align:center;}
.portrait-frame{
  width:168px;height:208px;margin:0 auto;background:var(--navy);border-radius:3px;
  display:flex;align-items:center;justify-content:center;position:relative;
  box-shadow:0 22px 44px -26px rgba(20,50,79,.5);
}
.portrait-frame::after{content:"";position:absolute;inset:9px;border:1px solid rgba(198,219,238,.28);}
.portrait-frame span{font-family:var(--display);font-size:2.9rem;color:var(--paper);}
.portrait-cap{margin-top:16px;font-size:.89rem;font-weight:600;color:var(--navy);}
.portrait-cap em{font-style:normal;font-weight:400;color:var(--slate);font-size:.83rem;}
.story h2{font-size:clamp(1.55rem,3vw,2.05rem);margin-bottom:22px;color:var(--navy);}
.story p{color:var(--slate);font-size:.99rem;max-width:66ch;}
.story p+p{margin-top:16px;}
.story strong{color:var(--ink);font-weight:600;}
.pull{
  border-left:2px solid var(--passage);padding-left:22px;margin:26px 0;
  font-family:var(--display);font-size:1.25rem;line-height:1.45;color:var(--navy);max-width:56ch;
}

/* ---------- MENTORS ---------- */
.mentor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media(max-width:960px){.mentor-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.mentor-grid{grid-template-columns:1fr;}}
.mcard{background:var(--white);border:1px solid var(--rule);border-radius:4px;padding:28px 26px;display:flex;flex-direction:column;transition:.18s;}
.mcard:hover{border-color:var(--passage-24);transform:translateY(-3px);box-shadow:0 18px 36px -26px rgba(20,50,79,.4);}
.mtop{display:flex;align-items:center;gap:14px;margin-bottom:15px;}
.minit{width:52px;height:52px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-family:var(--display);color:#fff;font-size:1.05rem;}
.mcard h3{font-size:1.1rem;color:var(--navy);}
.muni{font-size:.83rem;color:var(--passage-ink);margin-top:2px;font-weight:500;}
.mfrom{display:inline-block;font-size:.63rem;font-weight:600;text-transform:uppercase;letter-spacing:.11em;padding:3px 9px;border-radius:2px;margin-bottom:14px;}
.mfrom.intl{background:var(--passage-08);color:var(--passage-ink);}
.mfrom.us{background:rgba(20,50,79,.08);color:var(--navy);}
.mblurb{color:var(--slate);font-size:.89rem;}
.mtags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px;}
.mtag{font-size:.66rem;font-weight:600;letter-spacing:.04em;background:var(--paper-2);border:1px solid var(--rule);border-radius:2px;padding:3px 8px;color:var(--slate);text-transform:uppercase;}
.mfoot{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:18px;border-top:1px solid var(--rule);}
.mrate{font-family:var(--display);font-size:1.15rem;color:var(--navy);}
.mrate small{font-family:var(--text);font-size:.74rem;color:var(--slate);}
.mentor-cta{margin-top:36px;background:var(--navy);border-radius:4px;padding:32px 34px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.mentor-cta h3{font-size:1.2rem;margin-bottom:6px;color:var(--paper);}
.mentor-cta p{color:var(--mist);font-size:.92rem;max-width:56ch;}

/* ---------- CURRICULUM ---------- */
.tabs{display:flex;flex-wrap:wrap;gap:4px;}
.tab{background:var(--paper-2);border:1px solid var(--rule);border-bottom:none;padding:12px 17px;border-radius:4px 4px 0 0;font-size:.78rem;font-weight:500;color:var(--slate);transform:translateY(4px);transition:.15s;}
.tab:hover{color:var(--navy);}
.tab.on{background:var(--white);color:var(--navy);font-weight:700;transform:translateY(0);}
.folder{background:var(--white);border:1px solid var(--rule);border-radius:0 4px 4px 4px;padding:40px;box-shadow:0 24px 48px -34px rgba(20,50,79,.35);}
@media(max-width:640px){.folder{padding:28px 24px;}}
.fmeta{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.13em;color:var(--passage-ink);}
.folder h3{font-size:1.6rem;margin-top:9px;color:var(--navy);}
.flede{margin-top:12px;color:var(--slate);font-size:.95rem;max-width:66ch;}
.fitems{margin-top:26px;}
.fitem{padding:18px 0;border-top:1px solid var(--rule);display:grid;grid-template-columns:.9fr 2fr;gap:26px;}
@media(max-width:760px){.fitem{grid-template-columns:1fr;gap:6px;}}
.fitem h4{font-family:var(--text);font-size:.96rem;font-weight:700;color:var(--navy);}
.fitem p{color:var(--slate);font-size:.92rem;}
.fnote{margin-top:26px;background:var(--passage-08);border:1px solid var(--passage-24);border-radius:4px;padding:18px 20px;font-size:.88rem;color:var(--navy);}

/* ---------- PRICING ---------- */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media(max-width:940px){.plans{grid-template-columns:1fr;max-width:460px;margin:0 auto;}}
.plan{background:var(--white);border:1px solid var(--rule);border-radius:4px;padding:34px 30px;display:flex;flex-direction:column;position:relative;}
.plan.best{border-color:var(--passage);box-shadow:0 0 0 1px var(--passage);}
.plan-flag{position:absolute;top:-12px;left:30px;background:var(--passage-ink);color:#fff;font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;padding:4px 11px;border-radius:2px;}
.plan h3{font-size:1.35rem;color:var(--navy);}
.plan-tag{color:var(--slate);font-size:.91rem;margin-top:6px;}
.plan-price{font-family:var(--display);font-size:2.6rem;margin:20px 0 6px;color:var(--navy);}
.plan-price span{font-size:1.1rem;color:var(--slate);}
.plan ul{list-style:none;padding:0;margin:16px 0 28px;font-size:.92rem;}
.plan li{padding:9px 0 9px 25px;position:relative;border-top:1px solid var(--rule);color:var(--slate);}
.plan li:first-child{border-top:none;}
.plan li::before{content:"";position:absolute;left:0;top:17px;width:8px;height:8px;background:var(--passage);border-radius:1px;transform:rotate(45deg);}
.plan .btn{margin-top:auto;}
.refund{text-align:center;color:var(--slate);font-size:.89rem;margin-top:26px;}
.refund a{color:var(--passage-ink);}

/* ---------- Q&A ---------- */
.qna{max-width:820px;}
.qitem{border-bottom:1px solid var(--rule);}
.qitem summary{cursor:pointer;list-style:none;padding:22px 0;font-size:1.05rem;font-family:var(--display);display:flex;justify-content:space-between;gap:20px;align-items:flex-start;color:var(--navy);}
.qitem summary::-webkit-details-marker{display:none;}
.qitem summary::after{content:"+";font-family:var(--text);font-size:1.25rem;font-weight:300;color:var(--passage-ink);flex:none;line-height:1;transition:.2s;}
.qitem[open] summary::after{transform:rotate(45deg);}
.qitem p{padding:0 0 24px;color:var(--slate);font-size:.96rem;max-width:74ch;}

/* ---------- LEGAL + FOOTER ---------- */
.legal-band{background:var(--navy-2);color:rgba(198,219,238,.78);padding:32px 0;}
.legal-band p{font-size:.82rem;line-height:1.72;max-width:104ch;}
.legal-band strong{color:var(--paper);}
.foot{background:var(--navy);color:var(--mist);padding:56px 0 30px;}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:36px;}
@media(max-width:880px){.foot-grid{grid-template-columns:1fr 1fr;gap:32px;}}
@media(max-width:520px){.foot-grid{grid-template-columns:1fr;}}
.foot h4{font-family:var(--text);font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--daylight);margin-bottom:14px;}
.foot a{display:block;text-decoration:none;font-size:.89rem;color:rgba(198,219,238,.82);margin-bottom:9px;}
.foot a:hover{color:var(--paper);}
.foot-note{font-size:.84rem;color:rgba(198,219,238,.6);margin-top:14px;line-height:1.65;}
.foot-base{border-top:1px solid rgba(198,219,238,.14);margin-top:40px;padding-top:22px;font-size:.74rem;color:rgba(198,219,238,.5);}

/* Touch: stacked footer/nav links need real tap targets.
   Inline links inside prose are exempt (WCAG 2.5.5 inline exception). */
@media (pointer:coarse){
  .foot a:not(.btn){min-height:44px;display:flex;align-items:center;margin-bottom:2px;}
}

/* ---------- PROGRAMS ---------- */
.prog-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:26px;padding:22px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);}
@media(max-width:820px){.prog-facts{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.prog-facts{grid-template-columns:1fr;}}
.prog-facts span{display:block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.13em;color:var(--slate);}
.prog-facts b{display:block;font-family:var(--display);font-size:1.3rem;color:var(--navy);margin-top:5px;}
.prog-facts em{display:block;font-style:normal;font-size:.8rem;color:var(--slate);margin-top:3px;}
.sess-h{font-family:var(--text);font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--passage-ink);margin:28px 0 4px;}
.sessions{list-style:none;padding:0;margin:0;counter-reset:s;}
.sessions li{display:flex;gap:18px;padding:15px 0;border-bottom:1px solid var(--rule);}
.sessions li:last-child{border-bottom:none;}
.sn{font-family:var(--display);font-size:1.05rem;color:var(--passage-ink);flex:none;width:26px;padding-top:1px;}
.sessions b{display:block;font-size:.97rem;color:var(--navy);font-weight:600;}
.sessions p{color:var(--slate);font-size:.9rem;margin-top:3px;}

/* coming soon */
.soon{margin-top:30px;background:var(--navy);border-radius:4px;padding:28px 32px;display:flex;gap:26px;align-items:center;justify-content:space-between;}
@media(max-width:700px){.soon{flex-direction:column;align-items:flex-start;gap:16px;}}
.soon-tag{display:inline-block;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--navy);background:var(--daylight);padding:3px 9px;border-radius:2px;}
.soon h3{color:var(--paper);font-size:1.2rem;margin:12px 0 8px;}
.soon p{color:var(--mist);font-size:.92rem;max-width:70ch;}
.soon-lock{color:var(--daylight);opacity:.55;flex:none;}

/* ---------- APPLY ---------- */
.apply-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
@media(max-width:860px){.apply-grid{grid-template-columns:1fr;}}
.apply-card{background:var(--white);border:1px solid var(--rule);border-radius:4px;padding:30px 28px;display:flex;flex-direction:column;}
.apply-card h3{font-size:1.3rem;color:var(--navy);}
.ac-tag{color:var(--slate);font-size:.9rem;margin-top:6px;}
.ac-rows{margin:20px 0 14px;}
.ac-rows div{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-top:1px solid var(--rule);font-size:.9rem;}
.ac-rows div:first-child{border-top:none;}
.ac-rows span{color:var(--slate);}
.ac-rows b{color:var(--navy);font-weight:600;}
.ac-note{font-size:.76rem;color:var(--slate);margin-bottom:18px;line-height:1.5;}
.apply-card .btn{margin-top:auto;}
.apply-detail{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;margin-top:30px;}
@media(max-width:860px){.apply-detail{grid-template-columns:1fr;}}
.apply-detail h3{font-size:1.2rem;color:var(--navy);margin-bottom:14px;}
.req{list-style:none;padding:0;margin:0;}
.req li{padding:11px 0;border-top:1px solid var(--rule);font-size:.93rem;color:var(--slate);}
.req li:first-child{border-top:none;}
.req b{color:var(--navy);}
.honesty{background:var(--white);border:1px solid var(--rule);border-left:3px solid var(--passage-ink);border-radius:4px;padding:24px 26px;align-self:start;}
.honesty h4{font-family:var(--text);font-size:.93rem;font-weight:700;color:var(--navy);margin-bottom:10px;}
.honesty p{font-size:.9rem;color:var(--slate);}
.was{text-decoration:line-through;opacity:.55;}
.now{color:var(--passage-ink);}
.intro-note{text-align:center;font-size:.85rem;color:var(--slate);margin-top:16px;}
.hw-hint{display:inline-block;margin-top:6px;font-size:.76rem;color:var(--passage-ink);background:var(--passage-08);border-radius:3px;padding:2px 8px;}
