:root{--navy:#063775;--navy-deep:#042044;--navy-ink:#021530;--navy-light:#0B65D6;--orange:#FF9126;--orange-deep:#D86B00;--ink:#202020;--tint:#F6F8FC}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);line-height:1.7;overflow-x:hidden}
.font-display{font-family:'Barlow Condensed','Arial Narrow',sans-serif;letter-spacing:-.01em}
.t-hero{font-size:clamp(3rem,1.6rem + 7vw,7.25rem);line-height:.88;letter-spacing:-.02em}
.t-1{font-size:clamp(2.6rem,1.7rem + 4.2vw,5rem);line-height:.92;letter-spacing:-.015em}
.t-2{font-size:clamp(2.1rem,1.5rem + 2.8vw,3.75rem);line-height:.95;letter-spacing:-.01em}
.t-3{font-size:clamp(1.5rem,1.25rem + 1vw,2rem);line-height:1.05}
.lead{font-size:clamp(1.05rem,1rem + .35vw,1.25rem);line-height:1.75}
.eyebrow{font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.18em;font-size:.85rem}
.tread{background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.05) 0 14px,transparent 14px 28px)}
.tread-dark{background-image:repeating-linear-gradient(115deg,rgba(6,55,117,.05) 0 14px,transparent 14px 28px)}
.grecaptcha-badge{visibility:hidden}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.is-in{opacity:1;transform:none}
.reveal-d1{transition-delay:.08s}.reveal-d2{transition-delay:.16s}.reveal-d3{transition-delay:.24s}
.lift{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
.lift:hover{transform:translateY(-4px);box-shadow:0 24px 48px -20px rgba(4,32,68,.35)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.25rem;padding:.85rem 1.6rem;border-radius:999px;font-weight:600;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease,color .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-orange{background:var(--orange);color:var(--navy-ink);box-shadow:0 12px 30px -12px rgba(255,145,38,.8)}
.btn-orange:hover{background:#ffa246}
.btn-ghost{border:1.5px solid rgba(255,255,255,.45);color:#fff;backdrop-filter:blur(6px)}
.btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--navy-deep)}
.btn svg,.arrow-link svg{transition:transform .2s ease}
.btn:hover svg.arr,.arrow-link:hover svg{transform:translateX(4px)}
.nav-link{position:relative}
.nav-link::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.nav-link:hover::after,.nav-link[aria-current="page"]::after{transform:scaleX(1)}
.field{width:100%;border-radius:.9rem;border:1.5px solid #d6deea;background:#fff;padding:.85rem 1rem;font-size:1rem;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.field:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 4px rgba(6,55,117,.12)}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.marquee{display:flex;width:max-content;animation:marquee 38s linear infinite}
@keyframes marquee{to{transform:translateX(-50%)}}
.spin-slow{animation:spin 40s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.carousel{scroll-snap-type:x mandatory;scrollbar-width:none}
.carousel::-webkit-scrollbar{display:none}
.carousel>*{scroll-snap-align:start}
details>summary{list-style:none;cursor:pointer}
details>summary::-webkit-details-marker{display:none}
details[open] .chev{transform:rotate(45deg)}
.chev{transition:transform .25s ease}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .reveal{opacity:1;transform:none;transition:none}
 .marquee,.spin-slow{animation:none}
 .lift,.btn,.btn svg{transition:none}
 .lift:hover,.btn:hover{transform:none}
}
