:root{--olive:#6E6E50;--khaki:#9B9B7A;--gold:#D9B340;--orange:#FF9900;--red:#FF0000;--cream:#FFFFCC;--dark:#34342A;--darker:#23231C}
.font-display{font-family:'Barlow Condensed',system-ui,sans-serif}
.font-body,body{font-family:'Barlow',system-ui,sans-serif}
.font-500{font-weight:500}.font-600{font-weight:600}.font-700{font-weight:700}.font-800{font-weight:800}
.display{font-family:'Barlow Condensed',system-ui,sans-serif;font-weight:800;text-transform:uppercase;line-height:.92;letter-spacing:-.015em}
.eyebrow{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:.95rem;display:inline-flex;align-items:center;gap:.6rem}
.dot{width:.55rem;height:.55rem;background:var(--red);border-radius:2px;display:inline-block;transform:rotate(45deg)}
body{font-size:1.0625rem;overflow-x:hidden}
.site-header{transition:background-color .3s,box-shadow .3s,backdrop-filter .3s}
.site-header.scrolled{background:rgba(35,35,28,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 30px -15px rgba(0,0,0,.5)}
.navlink{position:relative;padding:.5rem .8rem;color:rgba(255,255,255,.85);font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:1.08rem;text-transform:uppercase;letter-spacing:.04em;transition:color .2s}
.navlink::after{content:"";position:absolute;left:.8rem;right:.8rem;bottom:.2rem;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.navlink:hover,.navlink.is-active{color:#fff}.navlink:hover::after,.navlink.is-active::after{transform:scaleX(1)}
.logo-gear{transition:transform .6s cubic-bezier(.2,.8,.2,1)}a:hover>.logo-gear{transform:rotate(60deg)}
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.95rem 1.5rem;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.15rem;text-transform:uppercase;letter-spacing:.05em;border-radius:2px;transition:transform .2s,background-color .2s,color .2s,box-shadow .2s;min-height:48px}
.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}
.btn:disabled{opacity:.6;cursor:wait;transform:none}
.btn-gold{background:var(--gold);color:var(--darker);box-shadow:0 10px 25px -12px rgba(217,179,64,.8)}.btn-gold:hover{background:#e6c254}
.btn-olive{background:var(--olive);color:#fff}.btn-olive:hover{background:var(--dark)}
.btn-dark{background:var(--darker);color:#fff}.btn-dark:hover{background:#000}
.btn-ghost-light{border:2px solid rgba(255,255,255,.55);color:#fff}.btn-ghost-light:hover{background:#fff;color:var(--darker);border-color:#fff}
.btn-outline-dark{border:2px solid var(--darker);color:var(--darker)}.btn-outline-dark:hover{background:var(--darker);color:#fff}
.hero-slab{clip-path:polygon(0 70%,100% 100%,0 100%);opacity:.95}
.hero-zoom{animation:heroZoom 18s ease-out both}
@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}
.spin-slow{animation:spin 90s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.stat{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1;color:var(--gold);text-transform:uppercase}
.stat-l{margin-top:.4rem;color:rgba(255,255,255,.72);font-size:.95rem}
.card{position:relative;display:block;background:#fff;border:1px solid rgba(110,110,80,.2);padding:2rem;transition:transform .3s,box-shadow .3s,border-color .3s}
a.card:hover{transform:translateY(-6px);box-shadow:0 30px 50px -25px rgba(52,52,42,.45);border-color:var(--gold)}
a.card.sm\:translate-y-10:hover{transform:translateY(calc(2.5rem - 6px))}
@media (max-width:639px){a.card.sm\:translate-y-10:hover{transform:translateY(-6px)}}
.card-ic{display:inline-grid;place-items:center;width:3.25rem;height:3.25rem;background:var(--cream);color:var(--olive);border-radius:2px;flex-shrink:0;transition:background .3s,color .3s}
a:hover .card-ic{background:var(--gold);color:var(--darker)}
.card-t{margin-top:1.25rem;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.65rem;line-height:1.05;text-transform:uppercase;color:var(--darker)}
.card-p{margin-top:.6rem;color:#45453A;line-height:1.65}
.card-more{margin-top:1.25rem;display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--olive);transition:gap .2s}
a.card:hover .card-more{gap:.8rem}
.card-dark{background:var(--dark);border-color:var(--dark)}.card-dark .card-t{color:#fff}.card-dark .card-p{color:rgba(255,255,255,.75)}.card-dark .card-more{color:var(--gold)}.card-dark .card-ic{background:rgba(217,179,64,.18);color:var(--gold)}
.step{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:3.5rem;line-height:1;color:var(--gold);-webkit-text-stroke:1px var(--olive)}
.step-sm{display:grid;place-items:center;flex-shrink:0;width:2rem;height:2rem;background:var(--gold);color:var(--darker);font-weight:800;font-family:'Barlow Condensed',sans-serif}
.big-num{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(4rem,10vw,7rem);line-height:.8;color:transparent;-webkit-text-stroke:1.5px var(--khaki);display:block}
.brand-chip{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.35rem;text-transform:uppercase;letter-spacing:.03em;padding:.65rem 1.25rem;border:1.5px solid rgba(110,110,80,.35);color:var(--dark);background:#fff;transition:background .2s,color .2s,border-color .2s}
.brand-chip:hover{background:var(--olive);color:#fff;border-color:var(--olive)}
.brand-dark .brand-chip{background:transparent;color:#fff;border-color:rgba(255,255,255,.25)}.brand-dark .brand-chip:hover{background:var(--gold);color:var(--darker);border-color:var(--gold)}
.fab{display:flex;flex-direction:column;gap:1rem;padding:1.75rem;background:#fff;border:1px solid rgba(110,110,80,.25);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.5rem;text-transform:uppercase;line-height:1.05;transition:transform .3s,box-shadow .3s}
.fab:hover{transform:translateY(-4px);box-shadow:0 20px 40px -25px rgba(52,52,42,.5)}
.fab svg{transition:transform .6s}.fab:hover svg{transform:rotate(90deg)}
.contact-tile{display:flex;gap:1.25rem;align-items:flex-start;padding:1.5rem;background:#fff;border:1px solid rgba(110,110,80,.2);transition:border-color .2s,box-shadow .2s}
a.contact-tile:hover{border-color:var(--gold);box-shadow:0 20px 40px -25px rgba(52,52,42,.45)}
.timeline{border-top:2px solid rgba(217,179,64,.4);padding-top:2rem}
.lbl{display:block;font-weight:600;margin-bottom:.45rem;color:var(--darker)}
.inp{width:100%;min-height:52px;padding:.8rem 1rem;background:#FBFAF4;border:1.5px solid rgba(110,110,80,.35);border-radius:2px;font-size:1.05rem;color:var(--darker);transition:border-color .2s,box-shadow .2s,background .2s}
.inp:focus{outline:none;border-color:var(--olive);background:#fff;box-shadow:0 0 0 4px rgba(217,179,64,.35)}
.inp.invalid{border-color:#B42318}
textarea.inp{min-height:140px;resize:vertical}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.ajax-form{position:relative}
.form-status:empty{display:none}
.form-status{padding:1rem 1.25rem;border-left:4px solid;font-weight:500;display:flex;gap:.75rem;align-items:flex-start}
.form-status.ok{background:#F1F1E6;border-color:var(--olive);color:var(--darker)}
.form-status.err{background:#FDF0EE;border-color:#B42318;color:#7A1A12}
.grecaptcha-badge{visibility:hidden}
.link-u{text-decoration:none}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* Company tiles */
.tile-lg{display:block;background:#fff;border:1px solid rgba(110,110,80,.2);overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.tile-lg:hover{transform:translateY(-6px);box-shadow:0 30px 50px -25px rgba(52,52,42,.45);border-color:var(--gold)}
.tile-sm{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(110,110,80,.2);padding:1.75rem;transition:transform .3s,box-shadow .3s,border-color .3s}
.tile-sm:hover{transform:translateY(-6px);box-shadow:0 30px 50px -25px rgba(52,52,42,.45);border-color:var(--gold)}
.tile-sm .card-more{margin-top:auto;padding-top:1.25rem}
.tile-gold{background:var(--gold);border-color:var(--gold)}.tile-gold .card-p{color:#2A2A22}.tile-gold .card-more,.tile-gold .tile-num{color:var(--darker)}
.tile-wide{position:relative;display:block;overflow:hidden;min-height:18rem;background:var(--darker);transition:box-shadow .3s}
.tile-wide:hover{box-shadow:0 30px 50px -25px rgba(0,0,0,.6)}
.tile-num{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:2.75rem;line-height:1;color:var(--olive)}
.mini-chip{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:.95rem;letter-spacing:.03em;padding:.3rem .7rem;border:1px solid rgba(110,110,80,.35);color:var(--dark)}
/* Credential panel */
.cred-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;background:rgba(255,255,204,.25);border:2px solid rgba(255,255,204,.25)}
.cred{background:var(--dark);padding:1.5rem;transition:background .3s}
.cred:hover{background:#2c2c23}
.cred-n{font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;line-height:.9;letter-spacing:-.01em;color:var(--gold);font-size:clamp(2.2rem,5vw,3.6rem)}
.cred-l{margin-top:.6rem;color:rgba(255,255,255,.75);font-size:.95rem;line-height:1.4}
.cred-c{grid-column:span 2}
.cred-c{background:var(--gold)}.cred-c .cred-n{color:var(--darker)}.cred-c .cred-l{color:#2A2A22}.cred-c:hover{background:#e6c254}
.cred-c .cred-n{font-size:clamp(2rem,4.6vw,3.4rem)}
/* Above-the-fold hero text: visible on first paint, quick 250ms settle, no delay */
.hero-in{animation:heroIn .25s ease-out both}
@keyframes heroIn{from{opacity:.001;transform:translateY(8px)}to{opacity:1;transform:none}}
.hero-secondary{display:none}
@media (min-width:768px){.hero-secondary{display:inline-flex}}
