:root{--navy:#2B3C8C;--deep:#0D1E6E;--water:#0085CA;--flame:#D47C3D;--leaf:#5DA341;--ink:#202020}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Public Sans',system-ui,sans-serif;color:var(--ink);overflow-x:hidden}
.font-display{font-family:'Archivo',system-ui,sans-serif;font-stretch:112%}
.t-hero{font-size:clamp(2.35rem,1.4rem + 4.6vw,5.4rem);line-height:.98;letter-spacing:-.035em}
.t-1{font-size:clamp(2rem,1.3rem + 3.2vw,4rem);line-height:1.02;letter-spacing:-.03em}
.t-2{font-size:clamp(1.7rem,1.2rem + 2.2vw,3rem);line-height:1.06;letter-spacing:-.025em}
.t-3{font-size:clamp(1.2rem,1rem + .8vw,1.6rem);line-height:1.15;letter-spacing:-.015em}
.lead{font-size:clamp(1.05rem,1rem + .35vw,1.25rem);line-height:1.7}
.prose-rpl p{line-height:1.75}
.eyebrow{font-family:'Archivo',sans-serif;font-stretch:125%;font-weight:700;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase}
.grain{background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:22px 22px}
.btn{display:inline-flex;align-items:center;gap:.6rem;min-height:3.25rem;padding:.85rem 1.5rem;border-radius:999px;font-weight:700;transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,color .25s ease}
.btn:hover{transform:translateY(-2px)}
.btn svg{transition:transform .25s ease}.btn:hover svg{transform:translateX(3px)}
.btn-flame{background:var(--flame);color:#fff;box-shadow:0 10px 30px -10px rgba(212,124,61,.7)}
.btn-flame:hover{background:#c06a2c}
.btn-ghost{border:1.5px solid rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(6px);background:rgba(255,255,255,.06)}
.btn-ghost:hover{background:#fff;color:var(--deep)}
.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover{background:var(--deep)}
.card-lift{transition:transform .35s ease,box-shadow .35s ease}
.card-lift:hover{transform:translateY(-4px);box-shadow:0 24px 50px -24px rgba(13,30,110,.35)}
.zoom{overflow:hidden}.zoom img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.zoom:hover img{transform:scale(1.06)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.nav-link{position:relative}
.nav-link::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--flame);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.nav-link:hover::after,.nav-link[aria-current=page]::after{transform:scaleX(1)}
.client-tile img{filter:grayscale(1) brightness(0);opacity:.6;transition:filter .3s,opacity .3s}
.client-tile:hover img{filter:none;opacity:1}
.grecaptcha-badge{visibility:hidden}
.field{width:100%;border:1.5px solid #d6dbea;border-radius:.9rem;padding:.9rem 1rem;background:#fff;font:inherit;transition:border-color .2s,box-shadow .2s}
.field:focus{outline:none;border-color:var(--water);box-shadow:0 0 0 4px rgba(0,133,202,.15)}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.marquee{display:flex;gap:3rem;width:max-content;animation:marq 38s linear infinite}
@keyframes marq{to{transform:translateX(-50%)}}
:focus-visible{outline:3px solid var(--water);outline-offset:3px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.marquee{animation:none;flex-wrap:wrap;width:auto}.zoom img,.btn,.card-lift{transition:none}}
