:root{--frost:#e9eef1;--white:#fbfcfd;--navy:#0f2437;--navy2:#17344d;--steel:#52626f;--volt:#f2b51d;--line:#c9d3da;--blue:#1d5a96;--f:"Avenir Next","Segoe UI Variable","Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{font:17px/1.65 var(--f);color:var(--navy);background:var(--frost);-webkit-font-smoothing:antialiased}
svg{display:block;max-width:100%}a{color:inherit}ul{list-style:none}
:focus-visible{outline:3px solid var(--volt);outline-offset:3px}
.wrap{width:min(1280px,100% - 48px);margin-inline:auto}
h1,h2,h3{line-height:1.1;letter-spacing:-.03em;font-weight:700}
h2{font-size:clamp(2rem,3.6vw,3.1rem);margin-bottom:20px}
h3{font-size:1.25rem;letter-spacing:-.01em;line-height:1.25}
p{max-width:68ch}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:var(--volt);padding:8px 14px;z-index:99}
.site-header{position:sticky;top:0;z-index:50;background:var(--white);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;letter-spacing:.02em;line-height:1.15}
.brand small{display:block;font-weight:400;font-size:.75rem;color:var(--steel);letter-spacing:0}
.mark{background:var(--navy);color:var(--volt);width:40px;height:40px;display:grid;place-items:center;font-size:.95rem}
nav{display:flex;align-items:center;gap:32px}
nav a{text-decoration:none;font-size:.95rem;font-weight:500;padding:6px 0;border-bottom:2px solid transparent;transition:border-color .2s}
nav a:hover{border-color:var(--volt)}
nav .btn-sm{background:var(--navy);color:var(--white);padding:10px 22px;border:0;transition:background .2s}
nav .btn-sm:hover{background:var(--navy2)}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}
.burger i{display:block;height:2px;background:var(--navy);margin:6px 10px;transition:transform .25s,opacity .25s}
.burger[aria-expanded=true] i:nth-child(1){transform:translateY(8px) rotate(45deg)}
.burger[aria-expanded=true] i:nth-child(2){opacity:0}
.burger[aria-expanded=true] i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.hero{background:var(--navy);color:var(--white);padding:96px 0 104px}
.hero-grid{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:center}
h1{font-size:clamp(2.6rem,5.6vw,5rem);margin-bottom:28px}
.lead{font-size:1.2rem;color:#c3d0da;margin-bottom:38px}
.cta{display:flex;flex-wrap:wrap;gap:16px}
.btn{display:inline-block;padding:15px 28px;font:inherit;font-weight:600;text-decoration:none;background:var(--volt);color:var(--navy);border:2px solid var(--volt);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn:hover{background:transparent;color:var(--volt)}
.btn.ghost{background:transparent;color:var(--white);border-color:#5d7388}
.btn.ghost:hover{border-color:var(--white);color:var(--white)}
.btn.dark{background:var(--navy);color:var(--white);border-color:var(--navy);justify-self:start}
.btn.dark:hover{background:var(--navy2);color:var(--white)}
.hero-art{background:var(--navy2);border:1px solid #2c4a65;padding:40px 32px 0;position:relative;margin:0}
.hero-art::before{content:"";position:absolute;left:0;top:0;width:76px;height:8px;background:var(--volt)}
.hero-art figcaption{padding:22px 0 26px;font-size:.95rem;color:#c3d0da}
.facts{background:var(--white);border-bottom:1px solid var(--line)}
.facts .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.facts div{padding:28px 24px;border-left:1px solid var(--line)}
.facts div:first-child{border-left:0;padding-left:0}
.facts b{display:block;font-size:1.05rem}.facts span{font-size:.92rem;color:var(--steel)}
.sec{padding:112px 0}
.split,.sv-head,.contact-grid{display:grid;grid-template-columns:5fr 7fr;gap:80px}
.split{align-items:start}
.glance{background:var(--white);border:1px solid var(--line);border-top:6px solid var(--volt);padding:28px 30px;margin-top:36px}
.glance dt{font-size:.85rem;color:var(--steel);margin-top:16px}.glance dt:first-child{margin-top:0}
.glance dd{font-weight:600}
.prose p+p{margin-top:20px}
.about-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:80px}
.about-cols div{border-left:3px solid var(--navy);padding-left:22px}
.about-cols h3{margin-bottom:10px}.about-cols p{font-size:.97rem;color:var(--steel)}
.services{background:var(--white)}
.sv-head{align-items:end;margin-bottom:56px}.sv-head h2,.sv-head p{margin:0}
.svc{display:grid;grid-template-columns:4fr 6fr 3fr;gap:40px;padding:36px 0;border-top:1px solid var(--line);border-left:6px solid transparent;transition:border-color .25s,padding .25s,background .25s}
.svc:hover{border-left-color:var(--volt);padding-left:24px;background:var(--frost)}
.svc p{color:var(--steel)}
.svc ul{display:flex;flex-wrap:wrap;gap:8px;align-content:start;font-size:.9rem;color:var(--steel)}
.svc li{border:1px solid var(--line);padding:2px 12px;border-radius:99px}
.note{border-top:1px solid var(--line);padding-top:26px;font-size:.92rem;color:var(--steel)}
.benefits{background:var(--navy);color:var(--white)}
.benefits p{color:#c3d0da}
.ben-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:56px 44px;margin-top:64px}
.ben{grid-column:span 2;border-top:4px solid var(--volt);padding-top:22px}
.ben:nth-child(n+4){grid-column:span 3}
.ben p{margin-top:10px}
.details{margin-top:36px;display:grid;gap:22px}
.details dt{font-size:.85rem;color:var(--steel)}.details dd{font-weight:600;font-size:1.1rem}
.details a{color:var(--blue)}
form{background:var(--white);border:1px solid var(--line);border-top:6px solid var(--navy);padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.field{display:grid;gap:6px;align-content:start}.field.full{grid-column:1/-1}
label{font-weight:600;font-size:.92rem}
input,textarea{font:inherit;width:100%;padding:13px 14px;border:1px solid #9fb0bc;background:var(--white);color:var(--navy);border-radius:0}
textarea{min-height:150px;resize:vertical}
input:focus,textarea:focus{outline:3px solid var(--volt);border-color:var(--navy)}
.err{color:#b42318;font-size:.85rem;min-height:1.2em}
.invalid input,.invalid textarea{border-color:#b42318}
.status{grid-column:1/-1;font-weight:600;color:var(--blue)}
footer{background:#0a1826;color:#a9b9c6;padding:64px 0 28px;font-size:.95rem}
.foot{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px}
footer h3{color:var(--white);font-size:1rem;margin-bottom:12px}
footer a{text-decoration:none}footer a:hover{color:var(--volt)}
.legal{margin-top:48px;padding-top:22px;border-top:1px solid #203449;font-size:.85rem}
@keyframes fade{from{opacity:0}to{opacity:1}}
.hero-copy>*,.hero-art{animation:fade .9s ease both}
.hero-copy>:nth-child(2){animation-delay:.15s}.hero-copy>:nth-child(3){animation-delay:.3s}.hero-art{animation-delay:.2s}
.js .reveal{opacity:0;transition:opacity .8s ease}.js .reveal.in{opacity:1}
@media(max-width:980px){
.hero-grid,.split,.sv-head,.contact-grid{grid-template-columns:1fr;gap:40px}
.facts .wrap{grid-template-columns:1fr 1fr}.facts div:nth-child(odd){border-left:0;padding-left:0}
.about-cols{grid-template-columns:1fr;margin-top:56px}.svc{grid-template-columns:1fr;gap:12px}
.ben,.ben:nth-child(n+4){grid-column:span 3}.foot{grid-template-columns:1fr 1fr}.foot div:first-child{grid-column:1/-1}}
@media(max-width:720px){
.sec{padding:72px 0}.hero{padding:64px 0 72px}.burger{display:block}
nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--white);flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 20px;border-bottom:1px solid var(--line)}
nav.open{display:flex}nav a{padding:14px 0}nav .btn-sm{text-align:center;margin-top:10px}
.ben,.ben:nth-child(n+4){grid-column:1/-1}.ben-grid{gap:40px}
form{grid-template-columns:1fr;padding:26px}.foot{grid-template-columns:1fr}.facts .wrap{grid-template-columns:1fr}.facts div{border-left:0;padding-left:0;border-top:1px solid var(--line)}.facts div:first-child{border-top:0}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1}}
