:root{
  --navy:#0B2A43; --navy-deep:#071B2C; --blue:#1C6FB0; --blue-bright:#2E8FDB;
  --teal:#1F8A7A; --teal-soft:#E6F1EE; --sand:#F6F3EC; --sand-deep:#EFE9DC;
  --ink:#172431; --ink-soft:#4B5B68; --line:#DCE3E6; --white:#FFFFFF; --amber:#C08A2E;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--sand);-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:'Plus Jakarta Sans', sans-serif;font-weight:700;letter-spacing:-.01em;color:var(--navy);margin:0;line-height:1.18;}
p{margin:0;line-height:1.6;color:var(--ink-soft);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
.eyebrow{font-family:'Inter',sans-serif;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:600;color:var(--teal);}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:8px;font-weight:600;font-size:15px;cursor:pointer;border:1px solid transparent;transition:all .2s ease;}
.btn-primary{background:var(--navy);color:var(--white);}
.btn-primary:hover{background:var(--navy-deep);}
.btn-ghost{background:transparent;color:var(--navy);border-color:var(--navy);}
.btn-ghost:hover{background:var(--navy);color:var(--white);}
section{padding:96px 0;}
@media (max-width:768px){section{padding:64px 0;}}
header{position:sticky;top:0;z-index:100;background:rgba(246,243,236,.85);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border-bottom:1px solid var(--line);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;max-width:1180px;margin:0 auto;}
.logo{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:20px;color:var(--navy);display:flex;align-items:center;gap:11px;white-space:nowrap;}
.logo-mark{width:30px;height:30px;border-radius:50%;background:conic-gradient(from 220deg, var(--teal), var(--blue) 55%, var(--navy));flex-shrink:0;box-shadow:0 0 0 3px rgba(31,138,122,.12), 0 2px 8px rgba(11,42,67,.18);}
nav.links{display:flex;gap:30px;font-size:14px;font-weight:500;color:var(--ink);flex-wrap:wrap;}
nav.links a{position:relative;padding:5px 0;transition:color .2s;}
nav.links a::after{content:'';position:absolute;left:0;right:0;bottom:-3px;height:2px;background:var(--teal);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .25s ease;}
nav.links a:hover{color:var(--blue);}
nav.links a:hover::after{transform:scaleX(1);}
nav.links a.active{color:var(--navy);font-weight:700;}
nav.links a.active::after{transform:scaleX(1);background:var(--navy);}
.nav-cta{display:flex;align-items:center;gap:18px;}
.nav-cta .btn-primary{box-shadow:0 2px 10px rgba(11,42,67,.16);}
.nav-cta .btn-primary:hover{box-shadow:0 6px 18px rgba(11,42,67,.26);transform:translateY(-1px);}
@media (max-width:1100px){nav.links{display:none;}}

/* Mobile hamburger menu — slide-in drawer */
.menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:38px;height:38px;flex-shrink:0;}
.menu-btn span{display:block;width:22px;height:2px;background:var(--navy);border-radius:2px;transition:transform .25s ease, opacity .2s ease;}
@media (max-width:1100px){.menu-btn{display:flex;}}
.menu-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-btn.open span:nth-child(2){opacity:0;}
.menu-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu-overlay{
  position:fixed;inset:0;z-index:199;background:rgba(7,27,44,.55);
  opacity:0;pointer-events:none;transition:opacity .3s ease;
}
.mobile-menu-overlay.open{opacity:1;pointer-events:auto;}
.mobile-menu{
  display:flex;flex-direction:column;position:fixed;top:0;right:0;bottom:0;z-index:200;
  width:min(360px,86vw);background:var(--navy-deep);padding:26px 30px 32px;
  transform:translateX(100%);transition:transform .35s cubic-bezier(.16,.8,.3,1);
  box-shadow:-16px 0 44px rgba(0,0,0,.35);overflow-y:auto;
}
.mobile-menu.open{transform:translateX(0);}
.mobile-menu .close-btn{align-self:flex-end;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;line-height:1;padding:8px;opacity:.65;transition:opacity .2s;}
.mobile-menu .close-btn:hover{opacity:1;}
.mobile-menu nav{display:flex;flex-direction:column;gap:0;margin-top:18px;}
.mobile-menu nav a{
  color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;font-weight:500;
  padding:15px 2px;border-bottom:1px solid rgba(255,255,255,.10);
  display:flex;align-items:center;justify-content:space-between;
  transition:padding-left .2s ease, color .2s ease;
}
.mobile-menu nav a::after{content:'→';font-family:'Inter',sans-serif;font-size:14px;opacity:.35;transition:opacity .2s, transform .2s;}
.mobile-menu nav a:hover,.mobile-menu nav a.active{color:#7FD9C4;padding-left:8px;}
.mobile-menu nav a:hover::after,.mobile-menu nav a.active::after{opacity:1;transform:translateX(3px);}
.mobile-menu .btn-primary{margin-top:26px;text-align:center;justify-content:center;background:var(--teal);}
.mobile-menu .btn-primary:hover{background:#186F62;}

/* HOME HERO */
.hero{position:relative;background:linear-gradient(180deg,#0B2A43 0%, #0E3654 62%, #123F60 100%);color:var(--white);overflow:hidden;padding:110px 0 0;}
.hero-grid{display:grid;grid-template-columns:.94fr 1.06fr;gap:60px;align-items:center;position:relative;z-index:2;}
@media (max-width:920px){.hero-grid{grid-template-columns:1fr;}}
.hero h1{color:var(--white);font-size:clamp(32px,4.6vw,52px);letter-spacing:-.01em;}
.hero .eyebrow{color:#7FD9C4;margin-bottom:18px;display:block;}
.hero p.lede{color:#C9D8E3;font-size:18px;margin-top:22px;max-width:520px;}
.hero-actions{display:flex;gap:16px;margin-top:36px;flex-wrap:wrap;}
.hero-trust-row{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px;}
.hero-trust-row span{font-size:12.5px;color:#9FB4C4;padding-left:16px;position:relative;}
.hero-trust-row span::before{content:'';position:absolute;left:0;top:5px;width:7px;height:7px;border-radius:50%;background:#7FD9C4;}
.hero .btn-primary{background:var(--teal);}
.hero .btn-primary:hover{background:#186F62;}
.hero .btn-ghost{border-color:rgba(255,255,255,.5);color:var(--white);}
.hero .btn-ghost:hover{background:rgba(255,255,255,.12);}
.route-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:42px 38px;animation:routeCardFloat 7s ease-in-out infinite;}
.route-svg{width:100%;height:auto;display:block;}
.route-caption{display:flex;justify-content:space-between;margin-top:20px;font-size:13px;color:#9FB4C4;text-transform:uppercase;letter-spacing:.08em;}
.route-path-flow{stroke:#7FD9C4;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:16 540;filter:drop-shadow(0 0 4px rgba(127,217,196,.85));animation:routeFlow 4s linear infinite;}
.route-dot{transform-box:fill-box;transform-origin:center;animation:routeDotPulse 4s ease-in-out infinite;}
.route-dot.d1{animation-delay:0s;}
.route-dot.d2{animation-delay:.9s;}
.route-dot.d3{animation-delay:1.8s;}
.route-dot.d4{animation-delay:2.7s;}
.route-dot.d5{animation-delay:3.6s;}
@keyframes routeFlow{to{stroke-dashoffset:-556;}}
@keyframes routeDotPulse{0%,84%,100%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(127,217,196,0));}90%{transform:scale(1.8);filter:drop-shadow(0 0 7px rgba(127,217,196,.95));}}
@keyframes routeCardFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);}}
@media (prefers-reduced-motion: reduce){.route-path-flow,.route-dot,.route-card{animation:none;}}
.hero-bottom-fade{height:64px;background:linear-gradient(180deg, transparent, var(--sand));margin-top:70px;}

/* INNER PAGE HERO */
.page-hero{background:linear-gradient(180deg,#0B2A43 0%, #123F60 100%);color:var(--white);padding:60px 0 52px;}
.page-hero .breadcrumb{font-size:12.5px;color:#9FB4C4;margin-bottom:20px;}
.page-hero .breadcrumb a{color:#9FB4C4;text-decoration:underline;}
.page-hero .breadcrumb a:hover{color:#fff;}
.page-hero .eyebrow{color:#7FD9C4;margin-bottom:14px;display:block;}
.page-hero h1{color:#fff;font-size:clamp(28px,3.6vw,40px);max-width:760px;}
.page-hero .lede{color:#C9D8E3;font-size:16px;margin-top:16px;max-width:640px;}

/* GENERIC CONTENT PAGE (legal, about body copy, how-it-works detail, etc.) */
.content-page{background:var(--sand);padding:72px 0;}
.content-shell{max-width:760px;margin:0 auto;}
.content-shell h2{font-size:24px;margin:36px 0 14px;}
.content-shell h2:first-child{margin-top:0;}
.content-shell p{font-size:15px;margin-bottom:14px;}
.content-shell ul{margin:0 0 16px;padding-left:20px;}
.content-shell li{font-size:15px;color:var(--ink-soft);margin-bottom:8px;}
.content-shell .updated{display:block;margin:10px 0 30px;}

/* Bottom cross-links on inner pages */
.section-nav{display:flex;gap:28px;flex-wrap:wrap;margin-top:40px;padding-top:26px;border-top:1px solid var(--line);}
.section-nav a{font-size:14px;font-weight:600;color:var(--blue);text-decoration:underline;}
.section-nav a:hover{color:var(--navy);}

/* Table of contents (privacy policy) */
.toc{background:var(--white);border:1px solid var(--line);padding:22px 26px;margin:24px 0 40px;border-radius:8px;}
.toc h4{font-size:12.5px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:12px;font-family:'Inter',sans-serif;color:var(--navy);}
.toc ol{margin:0;padding-left:18px;}
.toc li{font-size:14px;margin-bottom:6px;color:var(--ink-soft);}
.toc a{color:var(--blue);}
.toc a:hover{text-decoration:underline;}

.fact-strip{background:var(--navy);color:var(--white);}
.fact-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.12);}
.fact{padding:26px 24px;border-left:1px solid rgba(255,255,255,.12);}
.fact:first-child{border-left:none;}
.fact .num{font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;color:var(--white);}
.fact .lbl{font-size:12px;color:#9FB4C4;margin-top:4px;text-transform:uppercase;letter-spacing:.06em;}
@media (max-width:768px){.fact-strip .wrap{grid-template-columns:repeat(2,1fr);}.fact{border-left:none;border-top:1px solid rgba(255,255,255,.12);}}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;margin-bottom:52px;}
.section-head h2{font-size:clamp(26px,3.2vw,36px);max-width:560px;}
.problem{background:var(--sand);}
.problem-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:flex-start;}
@media (max-width:900px){.problem-grid{grid-template-columns:1fr;}}
.problem-list{display:flex;flex-direction:column;}
.problem-item{display:grid;grid-template-columns:auto 1fr;gap:22px;padding:24px 4px;border-top:1px solid var(--line);transition:background .2s;}
.problem-item:last-child{border-bottom:1px solid var(--line);}
.problem-item:hover{background:rgba(31,138,122,.04);}
.problem-item .tag{
  font-family:'Inter',sans-serif;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--teal);background:var(--teal-soft);white-space:nowrap;padding:7px 12px;border-radius:20px;
  height:fit-content;
}
.problem-item h4{font-size:17px;margin-bottom:6px;color:var(--navy);}
.problem-item p{font-size:15px;}
.how{background:var(--navy-deep);color:var(--white);}
.how .eyebrow{color:#7FD9C4;}
.how h2{color:var(--white);}
.steps{margin-top:60px;display:grid;grid-template-columns:repeat(4,1fr);position:relative;}
.steps::before{content:"";position:absolute;top:22px;left:0;right:0;height:1px;background:linear-gradient(90deg, rgba(127,217,196,0) 0%, rgba(127,217,196,.5) 8%, rgba(127,217,196,.5) 92%, rgba(127,217,196,0) 100%);}
@media (max-width:900px){.steps{grid-template-columns:1fr;}.steps::before{display:none;}}
.step{padding:0 24px 0 0;position:relative;}
.step:first-child{padding-left:0;}
@media (max-width:900px){.step{padding:0 0 40px 32px;border-left:1px solid rgba(127,217,196,.35);}}
.step-dot{width:11px;height:11px;border-radius:50%;background:var(--teal);border:3px solid var(--navy-deep);box-shadow:0 0 0 1px rgba(127,217,196,.6);margin-bottom:22px;position:relative;z-index:2;}
@media (max-width:900px){.step-dot{position:absolute;left:-6px;top:0;}}
.step h4{color:var(--white);font-size:18px;margin-bottom:10px;}
.step p{color:#AEC2CF;font-size:14.5px;}
.step .stage-label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#7FD9C4;margin-bottom:10px;display:block;}
.services{background:var(--sand);}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
@media (max-width:900px){.service-grid{grid-template-columns:1fr;}}
.service-card{background:var(--white);padding:32px 28px;min-height:210px;display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.16,.8,.3,1), box-shadow .3s ease;position:relative;z-index:1;}
.service-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(11,42,67,.10);z-index:2;}
.service-card .idx{font-family:'Plus Jakarta Sans',sans-serif;color:var(--teal);font-size:13px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px;}
.service-card h3{font-size:18px;margin-bottom:10px;}
.service-card p{font-size:14px;flex-grow:1;}
.matching-box{background:var(--white);border:1px solid var(--line);padding:32px 30px;margin-bottom:44px;}
.matching-box h3{font-size:18px;margin-bottom:14px;}
.matching-box ul{margin:14px 0;padding-left:20px;}
.matching-box li{font-size:14.5px;color:var(--ink-soft);margin-bottom:8px;}
.programs{background:var(--navy);color:var(--white);}
.programs .eyebrow{color:#7FD9C4;}
.programs h2{color:var(--white);}
.prog-grid{margin-top:52px;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14);}
@media (max-width:820px){.prog-grid{grid-template-columns:1fr;}}
.prog-card{background:var(--navy-deep);padding:32px 30px;transition:background .3s ease;}
.prog-card:hover{background:#0C2C46;}
.prog-card.wide{grid-column:1 / -1;}
.prog-card .tag{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:#7FD9C4;font-weight:600;}
.prog-card h3{color:var(--white);font-size:19px;margin:12px 0 10px;}
.prog-card p{color:#AEC2CF;font-size:14.5px;}
.conditions{background:var(--sand);}
.cond-grid{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media (max-width:900px){.cond-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.cond-grid{grid-template-columns:1fr;}}
.cond-card{border:1px solid var(--line);background:var(--white);padding:26px 22px;border-radius:10px;transition:transform .3s cubic-bezier(.16,.8,.3,1), box-shadow .3s ease, border-color .3s ease;}
.cond-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(11,42,67,.09);border-color:var(--teal);}
.cond-card h4{font-size:16px;margin-bottom:8px;}
.cond-card p{font-size:13.5px;}
.transparency{background:var(--sand-deep);}
.tp-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);}
@media (max-width:840px){.tp-grid{grid-template-columns:1fr;}}
.tp-col{padding:40px 36px;}
.tp-col.yes{background:var(--teal-soft);border-right:1px solid var(--line);}
@media (max-width:840px){.tp-col.yes{border-right:none;border-bottom:1px solid var(--line);}}
.tp-col h3{font-size:14px;text-transform:uppercase;letter-spacing:.08em;font-family:'Inter',sans-serif;font-weight:700;margin-bottom:20px;}
.tp-col.yes h3{color:var(--teal);}
.tp-col.no h3{color:var(--amber);}
.tp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:13px;}
.tp-list li{font-size:14.5px;color:var(--ink);padding-left:20px;position:relative;}
.tp-list li::before{position:absolute;left:0;font-family:'Plus Jakarta Sans',sans-serif;}
.tp-col.yes li::before{content:"+";color:var(--teal);font-weight:700;}
.tp-col.no li::before{content:"–";color:var(--amber);font-weight:700;}
.fees{background:var(--sand);}
.fees-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:48px;}
@media (max-width:900px){.fees-grid{grid-template-columns:1fr;}}
.fee-card{background:var(--white);padding:30px 26px;transition:transform .3s cubic-bezier(.16,.8,.3,1), box-shadow .3s ease;position:relative;z-index:1;}
.fee-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(11,42,67,.10);z-index:2;}
.fee-card .stage-label{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);font-weight:600;}
.fee-card h3{font-size:18px;margin:10px 0 8px;}
.fee-card p{font-size:13.5px;}
.fee-note{margin-top:26px;font-size:13px;color:var(--ink-soft);border-left:2px solid var(--amber);padding-left:16px;}
.about{background:var(--sand-deep);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
@media (max-width:900px){.about-grid{grid-template-columns:1fr;}}
.about h3{font-size:18px;margin:28px 0 10px;}
.about h3:first-child{margin-top:0;}
.about p{font-size:14.5px;margin-bottom:10px;}
.company-card{background:var(--white);border:1px solid var(--line);padding:26px 24px;font-size:14px;color:var(--ink-soft);}
.apply{background:var(--navy-deep);color:var(--white);}
.apply-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;}
@media (max-width:900px){.apply-grid{grid-template-columns:1fr;}}
.apply .eyebrow{color:#7FD9C4;}
.apply p{color:#AEC2CF;font-size:14.5px;margin-top:16px;max-width:400px;}
.apply h1,.apply h2,.apply h3{color:#fff;}
.contact-block{margin-top:36px;border-top:1px solid rgba(255,255,255,.15);padding-top:26px;}
.contact-block div{font-size:14px;color:#AEC2CF;margin-bottom:8px;}
form{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);padding:34px;border-radius:10px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
@media (max-width:560px){.form-row{grid-template-columns:1fr;}}
label{font-size:12.5px;color:#AEC2CF;display:block;margin-bottom:7px;text-transform:uppercase;letter-spacing:.05em;}
input,select,textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.2);color:var(--white);padding:11px 13px;font-family:'Inter',sans-serif;font-size:14px;border-radius:8px;}
input::placeholder,textarea::placeholder{color:#6E8393;}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--teal);}
.field{margin-bottom:16px;}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:#AEC2CF;margin:20px 0;}
.consent input{width:auto;margin-top:3px;}
.form-submit{width:100%;background:var(--teal);color:var(--white);border:none;padding:14px;font-size:14.5px;font-weight:600;border-radius:8px;cursor:pointer;transition:background .2s;}
.form-submit:hover{background:#186F62;}
#form-status,#contact-form-status{margin-top:12px;font-size:13.5px;}
.updated{font-size:12.5px;color:var(--ink-soft);margin-bottom:24px;display:block;}
footer{background:var(--navy-deep);color:#8199A9;padding:64px 0 32px;border-top:1px solid rgba(255,255,255,.08);position:relative;}
footer::before{content:'';position:absolute;top:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(127,217,196,.45),transparent);}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;padding-bottom:40px;}
@media (max-width:760px){.footer-grid{grid-template-columns:1fr;gap:36px;}}
.footer-grid h5{color:#C9D8E3;font-size:12px;text-transform:uppercase;letter-spacing:.09em;margin-bottom:18px;font-weight:700;font-family:'Inter',sans-serif;}
.footer-grid a{display:block;font-size:13.5px;color:#8199A9;margin-bottom:11px;transition:color .2s ease, transform .2s ease;}
.footer-grid a:hover{color:var(--white);transform:translateX(3px);}
.footer-legal{font-size:12px;line-height:1.75;color:#5E7383;border-top:1px solid rgba(255,255,255,.08);padding-top:26px;}
.footer-bottom{display:flex;justify-content:space-between;margin-top:24px;font-size:12px;color:#5E7383;flex-wrap:wrap;gap:10px;}
.disclaimer-banner{background:#FBF3E4;border-top:1px solid #E9D7AE;border-bottom:1px solid #E9D7AE;padding:11px 0;font-size:12.5px;color:#7A5B1E;text-align:center;}

/* FAQ ACCORDION */
.faq-list{display:flex;flex-direction:column;margin-top:16px;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-item:first-child{border-top:1px solid var(--line);}
.faq-q{width:100%;text-align:left;background:none;border:none;padding:20px 2px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:16px;color:var(--navy);transition:color .2s;}
.faq-q:hover{color:var(--blue);}
.faq-icon{flex-shrink:0;width:20px;height:20px;position:relative;}
.faq-icon::before,.faq-icon::after{content:'';position:absolute;background:var(--teal);border-radius:2px;}
.faq-icon::before{left:0;top:9px;width:20px;height:2px;}
.faq-icon::after{left:9px;top:0;width:2px;height:20px;transition:transform .3s ease, opacity .3s ease;}
.faq-item.open .faq-icon::after{transform:rotate(90deg);opacity:0;}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.16,.8,.3,1);}
.faq-a p{padding:0 2px 22px;font-size:14.5px;}
.faq-item.open .faq-a{max-height:400px;}

/* SCROLL REVEAL */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,.8,.3,1), transform .7s cubic-bezier(.16,.8,.3,1);}
.reveal.in{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none;}}

/* COOKIE CONSENT BAR */
.cookie-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:300;
  background:var(--navy-deep);box-shadow:0 -6px 28px rgba(0,0,0,.28);
  transform:translateY(100%);transition:transform .4s cubic-bezier(.16,.8,.3,1);
}
.cookie-bar.show{transform:translateY(0);}
.cookie-bar-inner{
  max-width:1180px;margin:0 auto;padding:18px 28px;
  display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap;
}
.cookie-bar p{color:#AEC2CF;font-size:13px;line-height:1.6;max-width:680px;margin:0;}
.cookie-bar a{color:#7FD9C4;text-decoration:underline;}
.cookie-bar-actions{display:flex;gap:10px;flex-shrink:0;}
.cookie-bar-btn{
  background:var(--teal);color:#fff;border:none;padding:11px 22px;
  font-size:13px;font-weight:600;border-radius:8px;cursor:pointer;font-family:'Inter',sans-serif;
  transition:background .2s;
}
.cookie-bar-btn:hover{background:#186F62;}
.detail-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);padding:22px 24px;margin-bottom:14px;border-radius:10px;}
.detail-card h4{color:var(--white);font-size:15.5px;margin-bottom:8px;}
.detail-card p{color:#AEC2CF;font-size:13.5px;margin:0;}
.detail-card.light{background:var(--white);border:1px solid var(--line);}
.detail-card.light h4{color:var(--navy);}
.detail-card.light p{color:var(--ink-soft);}
.content-shell .detail-card{background:var(--white);border:1px solid var(--line);}
.content-shell .detail-card h3{color:var(--navy);font-size:16px;margin-bottom:8px;}
.content-shell .detail-card p{color:var(--ink-soft);}
.prog-block{padding:44px 0;border-top:1px solid rgba(255,255,255,.12);}
.prog-block:first-of-type{padding-top:8px;border-top:none;}
.prog-block .tag{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:#7FD9C4;font-weight:600;}
.prog-block h3{color:var(--white);font-size:22px;margin:10px 0 12px;}
.prog-block > p.lede-p{color:#C9D8E3;font-size:15px;max-width:640px;margin-bottom:22px;}
.prog-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
@media (max-width:820px){.prog-detail-grid{grid-template-columns:1fr;}}
