:root{--navy:#061e5c;--navy-2:#0b3a8c;--ink:#1f1f1f;--orange:#f27920;--orange-d:#d9640f;--paper:#f7f7f7}
html{scroll-behavior:smooth}
body{font-family:'Open Sans',system-ui,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
.font-display{font-family:'Oswald',Impact,'Arial Narrow',sans-serif}
.h-xl{font-size:clamp(2.6rem,7.2vw,6rem);line-height:.92;letter-spacing:-.02em}
.h-lg{font-size:clamp(2rem,4.6vw,3.6rem);line-height:1;letter-spacing:-.015em}
.h-md{font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.1;letter-spacing:-.01em}
.lead{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.7}
.skew-tag{transform:skewX(-12deg)}.skew-tag>*{display:inline-block;transform:skewX(12deg)}
.btn{display:inline-flex;align-items:center;gap:.6rem;min-height:3.25rem;padding:.85rem 1.6rem;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.06em;font-weight:600;border-radius:.25rem;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease,color .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 10px 24px -10px rgba(242,121,32,.8)}
.btn-primary:hover{background:var(--orange-d)}
.btn-ghost{border:2px solid rgba(255,255,255,.55);color:#fff}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover{background:var(--navy-2)}
.btn svg{transition:transform .2s ease}.btn:hover svg{transform:translateX(3px)}
.card-lift{transition:transform .3s ease,box-shadow .3s ease}
.card-lift:hover{transform:translateY(-4px);box-shadow:0 24px 40px -24px rgba(6,30,92,.45)}
.zoom{overflow:hidden}.zoom img{transition:transform .7s ease}.zoom:hover img{transform:scale(1.05)}
.stripes{background-image:repeating-linear-gradient(-55deg,rgba(255,255,255,.05) 0 2px,transparent 2px 14px)}
.grain-navy{background:radial-gradient(120% 90% at 20% 10%,#0b3a8c 0%,#061e5c 55%,#04123a 100%)}
.js .reveal{opacity:0;transform:translateY(24px);}
.reveal{transition:opacity .8s ease,transform .8s ease}
.reveal.is-in{opacity:1;transform:none}
.nav-link{position:relative}
.nav-link::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:3px;background:var(--orange);transition:right .25s ease}
.nav-link:hover::after,.nav-link[aria-current="page"]::after{right:0}
details summary::-webkit-details-marker{display:none}
details[open] .faq-icon{transform:rotate(45deg)}
.faq-icon{transition:transform .25s ease}
.field{width:100%;border:2px solid #dfe3ec;border-radius:.3rem;padding:.8rem 1rem;min-height:3.1rem;background:#fff;font-size:1rem;transition:border-color .2s,box-shadow .2s}
.field:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 4px rgba(242,121,32,.18)}
.label{display:block;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;font-weight:600;color:var(--navy);margin-bottom:.4rem}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.grecaptcha-badge{visibility:hidden}
.track{scroll-snap-type:x mandatory;scrollbar-width:none}.track::-webkit-scrollbar{display:none}
.track>*{scroll-snap-align:start}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.js .reveal{opacity:1;transform:none}}
