@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');

:root{
  --navy:#071a33; --ink:#0b213d; --blue:#1769ff; --cyan:#24d6df; --pale:#eef7ff;
  --line:#d9e7f4; --muted:#5d7088; --white:#fff; --soft:#f7fbff;
  --shadow:0 24px 70px rgba(13,49,91,.12); --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.65}
body:has(.primary-nav.is-open){overflow:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,a{ -webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.skip-link{position:fixed;left:18px;top:-70px;background:var(--cyan);color:var(--navy);padding:12px 16px;border-radius:10px;z-index:9999;font-weight:700}
.skip-link:focus{top:18px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(217,231,244,.75)}
.nav-shell{max-width:1240px;margin:auto;min-height:76px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px}
.brand strong,.brand small{display:block;line-height:1.05}
.brand strong{font-family:"Space Grotesk";font-size:16px;letter-spacing:-.03em}
.brand small{font-size:10px;color:var(--muted);margin-top:5px;text-transform:uppercase;letter-spacing:.1em}
.brand-mark{display:flex;gap:3px;align-items:end;width:27px;height:27px}
.brand-mark span{display:block;width:7px;border-radius:8px;background:var(--blue)}
.brand-mark span:nth-child(1){height:14px}.brand-mark span:nth-child(2){height:23px;background:var(--cyan)}.brand-mark span:nth-child(3){height:19px}
.primary-nav{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:600}
.primary-nav>a:not(.nav-call){color:#4e6179}
.primary-nav>a:not(.nav-call):hover{color:var(--blue)}
.nav-call{background:var(--navy);color:#fff;padding:12px 17px;border-radius:14px}
.menu-toggle{display:none;border:0;background:none;width:44px;height:44px;padding:10px}
.menu-toggle span:not(.sr-only){display:block;height:2px;background:var(--navy);margin:5px 0;border-radius:4px}

.hero{position:relative;overflow:hidden;background:linear-gradient(125deg,#071a33 0%,#0a2d58 55%,#0d5ca2 100%);color:#fff;min-height:690px}
.hero-inner{max-width:1240px;margin:auto;padding:76px 28px 86px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:70px;position:relative;z-index:2}
.hero-glow{position:absolute;border-radius:50%;filter:blur(4px);opacity:.45;pointer-events:none}
.hero-glow-a{width:460px;height:460px;background:#18d5dc;right:-150px;top:-180px}
.hero-glow-b{width:280px;height:280px;background:#226cff;left:30%;bottom:-220px}
.hero-copy{max-width:700px}
.eyebrow,.section-kicker{font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.eyebrow{color:#93f7fa;display:flex;align-items:center;gap:9px;margin-bottom:22px}
.pulse-dot{width:8px;height:8px;background:var(--cyan);border-radius:50%;box-shadow:0 0 0 7px rgba(36,214,223,.13)}
h1,h2,h3{font-family:"Space Grotesk",sans-serif;margin:0;line-height:1.05;letter-spacing:-.045em}
h1{font-size:clamp(52px,6.2vw,82px);max-width:780px}
h1 em{display:block;color:#7eecef;font-style:normal}
.hero-lede{font-size:18px;color:#cbdcf0;max-width:650px;margin:28px 0 30px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:14px;padding:15px 19px;font-size:13px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s}
.button:hover{transform:translateY(-2px)}
.button-primary{background:linear-gradient(100deg,#1b70ff,#16cbd6);color:#fff;box-shadow:0 14px 32px rgba(20,135,235,.3)}
.button-quiet{border:1px solid rgba(255,255,255,.2);color:#fff;background:rgba(255,255,255,.06)}
.button-dark{background:var(--navy);color:#fff}
.button-light{background:#fff;color:var(--navy)}
.button-outline{border:1px solid #bdd2e6;color:var(--navy)}
.hero-notes{display:flex;flex-wrap:wrap;gap:18px;margin-top:30px;color:#9fb7d0;font-size:11px}
.hero-notes b{color:#7eecef;margin-right:6px}
.hero-visual{position:relative}
.image-frame{position:relative;border-radius:34px;overflow:hidden;border:8px solid rgba(255,255,255,.1);box-shadow:0 35px 80px rgba(0,0,0,.3);transform:rotate(1.2deg)}
.image-frame img{width:100%;height:480px;object-fit:cover}
.image-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,18,36,.82))}
.image-caption{position:absolute;bottom:23px;left:23px;right:23px;z-index:2;display:flex;align-items:center;gap:12px}
.caption-icon{width:38px;height:38px;border-radius:12px;background:var(--cyan);color:var(--navy);display:grid;place-items:center}
.image-caption strong,.image-caption small{display:block}.image-caption small{color:#c4d8e9;font-size:11px;margin-top:4px}
.visual-badge{position:absolute;right:-18px;top:30px;background:#fff;color:var(--navy);padding:13px 16px;border-radius:14px;box-shadow:var(--shadow);font-size:10px;letter-spacing:.1em}
.visual-badge strong,.visual-badge span{display:block}.visual-badge span{color:var(--blue);margin-top:3px}

.signal-strip{display:grid;grid-template-columns:repeat(4,1fr);max-width:1240px;margin:-32px auto 0;position:relative;z-index:5;background:#fff;border-radius:20px;box-shadow:0 18px 50px rgba(11,52,92,.12);overflow:hidden}
.signal-strip>div{padding:23px 20px;border-right:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;column-gap:11px;align-items:center}
.signal-strip>div:last-child{border:0}.signal-num{grid-row:span 2;color:var(--blue);font:700 11px "Space Grotesk"}
.signal-strip strong{font-size:13px}.signal-strip small{font-size:10px;color:var(--muted)}

.section{max-width:1184px;margin:auto;padding:105px 28px}
.section-heading{display:grid;grid-template-columns:1fr .72fr;gap:70px;align-items:end;margin-bottom:55px}
.section-kicker{color:var(--blue);display:block;margin-bottom:16px}
h2{font-size:clamp(38px,4vw,59px)}.section-heading p,.benefit-intro p{color:var(--muted);font-size:16px;margin:0}
.service-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:18px}
.service-feature{background:linear-gradient(145deg,#0a2444,#104b85);color:#fff;border-radius:28px;padding:38px;min-height:410px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}
.service-feature:before{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(126,236,239,.3);border-radius:50%;right:-70px;top:-55px}
.service-feature:after{content:"";position:absolute;width:170px;height:170px;border:1px solid rgba(126,236,239,.18);border-radius:50%;right:-25px;top:-25px}
.service-index{font:700 11px "Space Grotesk";color:#5fe5e9;letter-spacing:.1em}
.service-feature h3{font-size:32px;margin:15px 0 12px}.service-feature p{color:#c4d8e9;max-width:480px}.service-feature a{margin-top:18px;font-size:12px;font-weight:800;color:#7eecef}
.service-stack{border-top:1px solid var(--line)}
.service-row{min-height:136px;padding:22px 4px 22px 18px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:38px 1fr 36px;gap:15px;align-items:center}
.service-row h3{font-size:20px;margin-bottom:7px}.service-row p{margin:0;color:var(--muted);font-size:13px;max-width:650px}.service-row>a{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--blue);font-weight:800}.service-row>a:hover{background:var(--blue);color:#fff}

.diagnostic{display:grid;grid-template-columns:.94fr 1.06fr;gap:76px;align-items:center;background:var(--soft);max-width:none;padding-left:max(28px,calc((100vw - 1184px)/2));padding-right:max(28px,calc((100vw - 1184px)/2))}
.diagnostic-image{position:relative}.diagnostic-image img{width:100%;height:580px;object-fit:cover;border-radius:30px}.image-stamp{position:absolute;right:-22px;bottom:28px;background:var(--cyan);color:var(--navy);padding:15px 19px;border-radius:13px;font-size:10px;line-height:1.3;letter-spacing:.12em}
.diagnostic-copy{padding:30px 0}.diagnostic-copy h2{max-width:650px}.diagnostic-copy>p{color:var(--muted);font-size:16px;max-width:650px;margin:23px 0}
.check-list{padding:0;margin:28px 0;list-style:none;display:grid;gap:14px}.check-list li{display:flex;gap:13px}.check-list li>span{width:25px;height:25px;border-radius:50%;background:#dffbfc;color:#087e86;display:grid;place-items:center;font-size:12px;font-weight:900;flex:none}.check-list strong,.check-list small{display:block}.check-list strong{font-size:13px}.check-list small{color:var(--muted);font-size:11px;margin-top:2px}
.text-link{display:inline-flex;gap:10px;color:var(--blue);font-weight:800;font-size:12px}.text-link span{transition:transform .2s}.text-link:hover span{transform:translateX(4px)}

.benefits{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.benefit-intro h2{font-size:43px}.benefit-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.benefit-grid article{padding:27px 24px 28px 0;border-bottom:1px solid var(--line)}.benefit-grid article:nth-child(odd){border-right:1px solid var(--line);padding-right:27px}.benefit-grid article:nth-child(even){padding-left:27px}.benefit-grid span{font:700 11px "Space Grotesk";color:var(--blue)}.benefit-grid h3{font-size:21px;margin:12px 0 7px}.benefit-grid p{color:var(--muted);font-size:12px;margin:0}

.cost-section{background:#eef8ff;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-left:max(28px,calc((100vw - 1184px)/2));padding-right:max(28px,calc((100vw - 1184px)/2))}
.cost-copy h2{max-width:660px}.cost-copy p{color:var(--muted);max-width:630px}.cost-copy .button{margin-top:10px}
.cost-visual{display:grid;gap:12px;align-content:center}.meter{background:#fff;border:1px solid #d8eaf6;border-radius:18px;padding:20px 22px;display:grid;grid-template-columns:1fr auto;align-items:center;box-shadow:0 8px 25px rgba(24,92,144,.05)}.meter span{font:800 10px "Space Grotesk";color:var(--blue);letter-spacing:.12em}.meter strong{font:700 36px "Space Grotesk";grid-row:span 2;color:#d6e6f3}.meter small{color:var(--muted);font-size:11px}

.cta-band{max-width:1184px;margin:0 auto 30px;background:linear-gradient(115deg,#071a33,#1056a0 70%,#16bfc9);color:#fff;border-radius:30px;padding:48px 52px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:26px;box-shadow:0 28px 65px rgba(7,46,91,.22)}
.cta-mark{width:64px;height:64px;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:grid;place-items:center;font-size:34px;color:#7eecef}.cta-band .section-kicker{color:#7eecef}.cta-band h2{font-size:38px}.cta-band p{margin:9px 0 0;color:#c7d9eb;font-size:13px}

.area{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}.area-copy h2{font-size:50px}.area-copy>p{color:var(--muted);max-width:570px}.location-tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.location-tags span{font-size:10px;font-weight:800;color:#3f617f;background:#edf6ff;border:1px solid #dbeaf6;border-radius:99px;padding:8px 11px}.address-box{border-left:3px solid var(--cyan);padding:8px 0 8px 16px;margin-top:28px}.address-label{font-size:9px;font-weight:900;letter-spacing:.14em;color:var(--blue)}address{font-style:normal}.address-box address{font-size:13px;margin-top:5px}.map-wrap{position:relative}.map-wrap iframe{width:100%;height:430px;border:0;border-radius:26px;box-shadow:var(--shadow)}.map-link{position:absolute;left:17px;bottom:17px;background:#fff;padding:10px 13px;border-radius:11px;font-size:10px;font-weight:800;box-shadow:0 8px 20px rgba(0,0,0,.12)}

.education{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;background:#071a33;color:#fff;max-width:none;padding-left:max(28px,calc((100vw - 1184px)/2));padding-right:max(28px,calc((100vw - 1184px)/2))}
.education-image img{height:520px;width:100%;object-fit:cover;border-radius:28px;filter:saturate(.9)}.education-copy{max-width:590px}.education-copy .section-kicker{color:#7eecef}.education-copy h2{font-size:50px}.education-copy>p{color:#b9cce0}.mini-facts{border-top:1px solid rgba(255,255,255,.15);margin:28px 0}.mini-facts div{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.15);display:grid;grid-template-columns:100px 1fr;gap:20px}.mini-facts b{color:#7eecef;font:800 10px "Space Grotesk";letter-spacing:.1em;text-transform:uppercase}.mini-facts span{font-size:12px;color:#c7d9eb}.education .text-link{color:#7eecef}

.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.faq-heading p{color:var(--muted);font-size:13px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0}summary{list-style:none;cursor:pointer;padding:21px 0;font-weight:700;font-size:14px;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary span{font-size:21px;color:var(--blue);transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{margin:-3px 35px 22px 0;color:var(--muted);font-size:12px}

.contact{padding-top:55px}.contact-card{background:#f2f8fe;border:1px solid #dceaf6;border-radius:30px;padding:48px;display:grid;grid-template-columns:1.15fr .85fr;gap:45px}.contact-card h2{font-size:47px}.contact-card p{color:var(--muted);max-width:520px}.contact-phone{display:inline-block;font:700 clamp(30px,4vw,48px) "Space Grotesk";letter-spacing:-.04em;color:var(--blue);margin:15px 0}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-details span{display:block;color:#6e86a0;font:800 9px "Space Grotesk";letter-spacing:.13em;margin-bottom:6px}.contact-details strong,.contact-details address{font-size:12px}.contact-actions{grid-column:1/-1;display:flex;gap:10px;border-top:1px solid #d7e6f2;padding-top:25px}

.site-footer{background:#06162b;color:#fff;padding:58px max(28px,calc((100vw - 1184px)/2)) 25px}.footer-main{display:grid;grid-template-columns:1.5fr .7fr .8fr;gap:70px;padding-bottom:50px}.footer-brand strong{color:#fff}.footer-brand small{color:#8198b2}.footer-main p{color:#8ea6bf;font-size:12px;max-width:350px;margin-top:20px}.footer-nav,.footer-contact{display:grid;align-content:start;gap:9px}.footer-nav>span,.footer-contact>span{font:800 9px "Space Grotesk";letter-spacing:.14em;color:#5ee2e7;margin-bottom:5px}.footer-nav a,.footer-contact a,.footer-contact address{color:#b5c8da;font-size:11px}.footer-contact a{font-size:18px;color:#fff;font-family:"Space Grotesk"}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:19px;color:#7890aa;font-size:9px;display:flex;justify-content:space-between;gap:20px}

.mobile-call{display:none}

@media (max-width:900px){
  .primary-nav{gap:14px}.nav-shell{padding:0 20px}.hero-inner{grid-template-columns:1fr;gap:45px;padding-top:55px}.hero-visual{max-width:650px;width:100%;margin:auto}.signal-strip{margin:0 18px;grid-template-columns:1fr 1fr}.signal-strip>div:nth-child(2){border-right:0}.signal-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .section-heading,.benefits,.faq{grid-template-columns:1fr;gap:30px}.service-layout,.diagnostic,.cost-section,.area,.education{grid-template-columns:1fr;gap:45px}.diagnostic{padding-left:28px;padding-right:28px}.diagnostic-image img{height:450px}.cost-section{padding-left:28px;padding-right:28px}.education{padding-left:28px;padding-right:28px}.education-image img{height:420px}.cta-band{margin-left:20px;margin-right:20px;grid-template-columns:auto 1fr}.cta-band .button{grid-column:2}.area{padding-top:80px}.contact-card{grid-template-columns:1fr}.contact-actions{grid-column:auto}
}
@media (max-width:720px){
  .primary-nav{display:none;position:absolute;left:14px;right:14px;top:68px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:12px;flex-direction:column;align-items:stretch;gap:3px}.primary-nav.is-open{display:flex}.primary-nav>a{padding:12px 13px}.nav-call{text-align:center}.menu-toggle{display:block}.hero{min-height:auto}.hero-inner{padding:45px 20px 60px}.hero-lede{font-size:16px}.hero-actions{display:grid}.button{width:100%}.image-frame img{height:360px}.visual-badge{right:-5px;top:18px}.signal-strip{margin:0 12px;grid-template-columns:1fr}.signal-strip>div{border-right:0;border-bottom:1px solid var(--line)!important}.signal-strip>div:last-child{border-bottom:0!important}.section{padding:75px 20px}.section-heading{margin-bottom:35px}.service-layout{gap:0}.service-feature{border-radius:22px;min-height:350px;padding:27px}.service-row{grid-template-columns:29px 1fr 32px;padding-left:0}.service-row h3{font-size:18px}.service-row p{font-size:12px}.diagnostic{padding-left:20px;padding-right:20px}.diagnostic-image img{height:350px;border-radius:22px}.image-stamp{right:10px}.benefit-grid{grid-template-columns:1fr}.benefit-grid article:nth-child(odd){border-right:0;padding-right:0}.benefit-grid article:nth-child(even){padding-left:0}.cost-section{padding-left:20px;padding-right:20px}.cta-band{padding:32px 24px;grid-template-columns:1fr;gap:17px;border-radius:22px}.cta-mark{display:none}.cta-band h2{font-size:31px}.cta-band .button{grid-column:auto}.area-copy h2,.education-copy h2{font-size:39px}.map-wrap iframe{height:350px}.education{padding-left:20px;padding-right:20px}.education-image img{height:330px}.mini-facts div{grid-template-columns:80px 1fr}.contact-card{padding:30px 23px;border-radius:22px}.contact-card h2{font-size:38px}.contact-details{grid-template-columns:1fr}.contact-actions{display:grid}.footer-main{grid-template-columns:1fr;gap:35px;padding-bottom:35px}.footer-bottom{display:grid}.mobile-call{position:fixed;display:flex;align-items:center;gap:10px;left:12px;right:12px;bottom:12px;z-index:200;background:var(--navy);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:12px 14px;box-shadow:0 16px 35px rgba(0,0,0,.24);font-size:11px;font-weight:800}.mobile-call>span:first-child{width:30px;height:30px;background:var(--cyan);color:var(--navy);border-radius:9px;display:grid;place-items:center;font-size:15px}.mobile-call span:nth-child(2){flex:1}.mobile-call b{color:#7eecef}
}
@media (max-width:390px){
  h1{font-size:46px}.hero-inner{padding-left:16px;padding-right:16px}.section{padding-left:16px;padding-right:16px}.diagnostic,.cost-section,.education{padding-left:16px;padding-right:16px}.cta-band{margin-left:12px;margin-right:12px}.image-frame img{height:315px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.button,.text-link span,summary span{transition:none}.button:hover{transform:none}
}
