:root{--navy:#081725;--panel:#102538;--ink:#12273a;--muted:#526678;--ice:#c6d5e2;--teal:#80f0e0;--line:#d2dce4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:white;font:16px/1.58 Arial,sans-serif}a{color:inherit}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #279b9a;outline-offset:5px}.skip{position:absolute;left:1rem;top:-5rem;background:white;color:var(--ink);z-index:2;padding:.6rem}.skip:focus{top:1rem}.wrap{width:min(1320px,calc(100% - 100px));margin:auto}header{background:#fff;color:var(--navy);border-bottom:1px solid var(--line)}.mast,.brand,nav,.actions{display:flex;align-items:center}.mast{justify-content:space-between;gap:25px;min-height:88px}.brand{font-size:17px;font-weight:bold;gap:12px;text-decoration:none}.brand svg{color:#08665e;width:34px;flex:none}nav{gap:28px}nav a{text-decoration:none;font-size:14px}nav a:hover,.rail a:hover{text-decoration:underline}.nav-cta{padding:9px 14px;background:var(--teal);color:var(--navy);border:1px solid #269487;font-weight:700}.hero{background:radial-gradient(ellipse at 92% 23%,#173a50,var(--navy) 69%)}.hero-grid{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:5%;padding-block:84px 70px}.eyebrow{font:700 11px/1.45 monospace;letter-spacing:.17em;text-transform:uppercase;color:var(--teal)}.eyebrow i{display:inline-block;width:8px;height:8px;background:var(--teal);margin-right:8px;border-radius:50%}h1,h2,h3,p,figure{margin:0}h1,h2{letter-spacing:-.062em;line-height:1.02}h1{font-size:clamp(46px,5.5vw,83px);margin:22px 0}h1 em{font-style:normal;color:var(--teal)}.hero p{max-width:480px;color:var(--ice);font-size:18px}.actions{gap:11px;flex-wrap:wrap;margin-top:27px}.btn{display:inline-flex;gap:13px;align-items:center;text-decoration:none;padding:12px 17px;border:1px solid #6e8ea2;font-weight:700;font-size:14px}.primary{background:var(--teal);color:var(--navy);border-color:var(--teal)}.btn:hover{background:white;color:var(--navy)}.hero-image{display:block;position:relative;border:1px solid #638da5;background:#173147}.hero-image img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}.zoom{position:absolute;right:12px;bottom:12px;background:#071624;color:white;padding:7px 12px;font-size:13px;border:1px solid #96aebe}.zoom span{margin-right:5px}.hero-image:hover .zoom{background:var(--teal);color:var(--navy)}figcaption{display:flex;justify-content:space-between;gap:12px;color:var(--ice);font:12px/1.4 monospace;margin-top:10px}.rail{border-block:1px solid #ffffff26}.rail-grid,.cards{display:grid;grid-template-columns:repeat(4,1fr)}.rail a{text-decoration:none;padding:16px 10px;font-size:13px;text-align:center;border-left:1px solid #ffffff26}.rail a:last-child{border-right:1px solid #ffffff26}.rail span{color:var(--teal);font:12px monospace;margin-right:6px}.section{padding:88px 0}.light{color:var(--ink);background:#f4f7f9}.light .eyebrow,.card-num{color:#08665e}.section-head,.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.section-head{align-items:end;margin-bottom:33px}h2{font-size:clamp(35px,4.3vw,62px);margin:13px 0}.section-head p,.light article p,.steps p{color:var(--muted)}.cards{gap:12px}.cards article{padding:21px;background:white;border:1px solid var(--line);display:flex;flex-direction:column;scroll-margin-top:18px}.card-num{font:700 11px monospace;letter-spacing:.08em}.cards h3{font-size:22px;line-height:1.16;margin:15px 0 10px}.cards article p,.benefit,.steps p{font-size:15px}.benefit{padding-top:15px;margin-top:auto;color:var(--muted)}.benefit b{border-top:1px solid var(--line);display:block;padding-top:10px;color:var(--ink);margin-bottom:5px}.solutions{background:var(--panel)}.solutions p,.contact p,footer p{color:var(--ice)}.campus{margin-top:23px}.campus img{display:block;width:100%;height:auto;aspect-ratio:2.15;object-fit:cover;object-position:center 57%;border:1px solid #587287}.accordions details{border-top:1px solid #557085;padding:16px 0}.accordions details:last-child{border-bottom:1px solid #557085}.accordions summary{cursor:pointer;font-size:19px;font-weight:bold}.accordions p{margin-top:10px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;list-style:none;counter-reset:phase;padding:0;margin:0}.steps li{counter-increment:phase;border-top:1px solid #9badbb;padding-top:16px}.steps li:before{content:"0" counter(phase);display:block;font:700 12px monospace;color:#08665e;margin-bottom:12px}.steps b{display:block;font-size:20px;margin-bottom:6px}.contact{background:linear-gradient(100deg,var(--navy),#134652)}.contact-action{align-self:center;justify-self:end}footer{border-top:1px solid #ffffff2b;padding:34px 0}.foot-grid{display:grid;grid-template-columns:1fr auto;gap:16px}.footer-brand{font-weight:bold;text-decoration:none}footer p,.copyright{font-size:13px;color:var(--ice)}.copyright{grid-column:1/-1;border-top:1px solid #ffffff25;padding-top:13px}dialog{color:white;background:var(--navy);border:1px solid #7893a9;padding:0;max-width:95vw;max-height:95vh}dialog::backdrop{background:#000c}dialog img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(95vh - 54px);margin:auto}.viewer-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:13px}.viewer-bar button{background:var(--teal);color:var(--navy);font:inherit;padding:5px 9px;border:0;cursor:pointer}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.cards{grid-template-columns:repeat(2,1fr)}.hero-grid{gap:4%;padding-block:60px}.section{padding:65px 0}}
@media(max-width:720px){.wrap{width:calc(100% - 34px)}.mast{flex-wrap:wrap;gap:13px;padding:16px 0;min-height:0}nav{flex-wrap:wrap;gap:12px 18px}.hero-grid,.section-head,.split,.foot-grid{grid-template-columns:1fr;gap:22px}.hero-grid{padding-block:44px 30px}.section-head{gap:8px}.contact-action{justify-self:start}.rail-grid{grid-template-columns:repeat(2,1fr)}.rail a{border:1px solid #ffffff26}.section{padding:49px 0}.steps{grid-template-columns:1fr}.steps li:before{margin-bottom:6px}}
@media(max-width:460px){.cards{grid-template-columns:1fr}.brand{font-size:15px}.mast nav a{font-size:13px}.nav-cta{padding:3px 8px}.rail a{font-size:12px}.rail span{margin-right:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
