:root{--ink:#060807;--ink-2:#0a0d0b;--cream:#f2ead9;--cream-dim:#f2ead98c;--emerald:#17e88f;--emerald-deep:#0a7a4b;--display:"Anton", Impact, sans-serif;--body:"Archivo", -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--ink);color:var(--cream);font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}.accent{color:var(--emerald)}::selection{background:var(--emerald);color:var(--ink)}#preloader{z-index:100;background:var(--ink);justify-content:center;align-items:center;transition:opacity .7s,visibility .7s;display:flex;position:fixed;inset:0}#preloader.done{opacity:0;visibility:hidden;pointer-events:none}.preloader-inner{flex-direction:column;align-items:center;gap:18px;display:flex}.preloader-name{font-family:var(--display);color:var(--cream);letter-spacing:.05em;font-size:clamp(48px,8vw,96px)}.preloader-bar{background:#f2ead926;width:min(280px,60vw);height:2px;overflow:hidden}.preloader-fill{background:var(--emerald);width:0%;height:100%;transition:width .2s}.preloader-pct{letter-spacing:.3em;color:var(--cream-dim);font-size:12px}.grain{z-index:60;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:.9s steps(4,end) infinite grain-shift;position:fixed;inset:-100%}@keyframes grain-shift{0%{transform:translate(0)}25%{transform:translate(-2%,3%)}50%{transform:translate(3%,-2%)}75%{transform:translate(-3%,-3%)}to{transform:translate(2%,2%)}}.nav{z-index:50;mix-blend-mode:difference;justify-content:space-between;align-items:center;padding:22px clamp(20px,4vw,56px);display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{font-family:var(--display);color:var(--cream);letter-spacing:.04em;font-size:26px;text-decoration:none}.nav-links{gap:clamp(18px,3vw,40px);display:flex}.nav-links a{color:var(--cream);letter-spacing:.22em;text-transform:uppercase;opacity:.75;font-size:13px;text-decoration:none;transition:opacity .25s}.nav-links a:hover{opacity:1}.hero{height:520vh;position:relative}.hero-sticky{height:100vh;position:sticky;top:0;overflow:hidden}#orbit-canvas{background:var(--ink);width:100%;height:100%;display:block;position:absolute;inset:0}.hero-vignette{pointer-events:none;background:radial-gradient(#0000 42%,#060807b8 100%),linear-gradient(#06080780,#0000 22% 72%,#060807d9);position:absolute;inset:0}.hero-content{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:0 4vw;display:flex;position:absolute;inset:0}.hero-kicker{letter-spacing:.5em;text-transform:uppercase;color:var(--emerald);margin-bottom:2.2vh;font-size:13px}.hero-title{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;font-size:clamp(64px,13.5vw,220px);line-height:.92}.hero-line{display:block}.hero-line .char{will-change:transform, opacity;display:inline-block}.hero-line-accent{-webkit-text-stroke:2px var(--cream);color:#0000}.hero-sub{letter-spacing:.06em;max-width:640px;color:var(--cream-dim);margin-top:3.4vh;font-size:clamp(13px,1.4vw,17px);font-weight:300;line-height:1.7}.hero-sub em{color:var(--cream);font-style:italic}.hero-scroll-hint{letter-spacing:.4em;text-transform:uppercase;color:var(--cream-dim);flex-direction:column;align-items:center;gap:10px;font-size:11px;display:flex;position:absolute;bottom:4.5vh;left:50%;transform:translate(-50%)}.hero-scroll-hint span{background:linear-gradient(to bottom, var(--emerald), transparent);width:1px;height:44px;animation:1.8s ease-in-out infinite drip}@keyframes drip{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}.hero-frame-meta{letter-spacing:.25em;color:var(--cream-dim);flex-direction:column;align-items:flex-end;gap:4px;font-size:11px;display:flex;position:absolute;bottom:4.5vh;right:clamp(20px,4vw,56px)}#orbit-degrees{color:var(--emerald);font-variant-numeric:tabular-nums}.section-label{letter-spacing:.45em;text-transform:uppercase;color:var(--emerald);margin-bottom:5vh;font-size:12px}.stats{z-index:2;background:var(--ink);padding:18vh clamp(20px,6vw,90px) 12vh;position:relative}.stats-grid{border-top:1px solid #f2ead91f;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:6vh 3vw;padding-top:7vh;display:grid}.stat{flex-direction:column;gap:10px;display:flex}.stat-num{font-family:var(--display);color:var(--cream);font-variant-numeric:tabular-nums;font-size:clamp(56px,7.5vw,120px);line-height:1}.stat-text{color:var(--emerald)}.stat-label{letter-spacing:.2em;text-transform:uppercase;color:var(--cream-dim);font-size:13px}.stats-footnote{max-width:520px;color:var(--cream-dim);margin-top:10vh;font-size:15px;font-weight:300;line-height:1.8}.capabilities{z-index:2;background:var(--ink);border-top:1px solid #f2ead914;padding:14vh clamp(20px,6vw,90px) 10vh;position:relative}.capabilities-title{font-family:var(--display);text-transform:uppercase;max-width:980px;margin-bottom:4vh;font-size:clamp(42px,8vw,120px);line-height:.95}.capabilities-lede{max-width:680px;color:var(--cream-dim);margin-bottom:7vh;font-size:clamp(14px,1.4vw,18px);font-weight:300;line-height:1.85}.tech-grid{flex-wrap:wrap;gap:12px;display:flex}.tech-grid span{letter-spacing:.18em;text-transform:uppercase;color:var(--cream);background:#17e88f0a;border:1px solid #17e88f38;padding:14px 22px;font-size:12px;transition:all .3s}.tech-grid span:hover{border-color:var(--emerald);background:#17e88f1f;transform:translateY(-2px)}.marquee{background:var(--emerald);z-index:3;padding:14px 0;position:relative;overflow:hidden;transform:rotate(-1.2deg)scale(1.02)}.marquee-track{white-space:nowrap;animation:26s linear infinite marquee;display:flex}.marquee-track span{font-family:var(--display);color:var(--ink);letter-spacing:.06em;padding-right:40px;font-size:clamp(16px,2vw,26px)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.pillars{height:400vh;position:relative}.pillars-sticky{height:100vh;position:sticky;top:0;overflow:hidden}.bg-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.bg-video-shade{background:linear-gradient(100deg,#060807eb 0%,#0608078c 55%,#06080759 100%);position:absolute;inset:0}.pillars-content{z-index:2;flex-direction:column;justify-content:center;height:100%;padding:0 clamp(20px,7vw,110px);display:flex;position:relative}.pillar{opacity:0;visibility:hidden;max-width:780px;position:absolute;top:50%;left:clamp(20px,7vw,110px);right:clamp(20px,7vw,110px);transform:translateY(-50%)}.pillar-index{letter-spacing:.4em;color:var(--emerald);font-size:14px}.pillar h2{font-family:var(--display);text-transform:uppercase;margin:2vh 0 3vh;font-size:clamp(48px,8.5vw,130px);line-height:.95}.pillar p{max-width:520px;color:var(--cream-dim);font-size:clamp(14px,1.3vw,17px);font-weight:300;line-height:1.8}.pillars-progress{z-index:3;background:#f2ead926;width:2px;height:30vh;position:absolute;top:50%;right:clamp(20px,4vw,56px);transform:translateY(-50%)}.pillars-progress-fill{background:var(--emerald);width:100%;height:0%}.work{z-index:2;position:relative}.work-bg{position:absolute;inset:0;overflow:hidden}.work-bg .bg-video{height:100vh;position:sticky;top:0}.work-shade{background:linear-gradient(#060807e0,#060807c7);height:100vh;position:sticky;top:0}.work-content{z-index:2;padding:20vh clamp(20px,6vw,90px);position:relative}.work-title{font-family:var(--display);text-transform:uppercase;margin-bottom:10vh;font-size:clamp(56px,11vw,180px);line-height:.92}.work-grid{grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:22px;display:grid}.card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--cream);will-change:transform;background:#0608078c;border:1px solid #f2ead924;flex-direction:column;gap:14px;padding:34px 30px 30px;text-decoration:none;transition:border-color .35s,transform .35s,background .35s;display:flex;position:relative;overflow:hidden}.card:after{content:"";background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%), #17e88f24, transparent 60%);opacity:0;pointer-events:none;transition:opacity .35s;position:absolute;inset:0}.card:hover{background:#0a0d0bbf;border-color:#17e88f8c;transform:translateY(-6px)}.card:hover:after{opacity:1}.card-index{letter-spacing:.35em;color:var(--emerald);font-size:12px}.card h3{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;font-size:clamp(30px,3vw,44px)}.card p{color:var(--cream-dim);flex:1;font-size:14px;font-weight:300;line-height:1.7}.card-arrow{color:var(--emerald);align-self:flex-end;font-size:26px;transition:transform .35s}.card:hover .card-arrow{transform:translate(8px)rotate(-45deg)}.finale{z-index:2;background:var(--ink);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:20vh clamp(20px,5vw,80px) 16vh;display:flex;position:relative}.finale-title{font-family:var(--display);text-transform:uppercase;font-size:clamp(52px,10vw,170px);line-height:.95}.finale-cta{flex-wrap:wrap;justify-content:center;gap:18px;margin-top:8vh;display:flex}.btn{font-family:var(--body);letter-spacing:.24em;text-transform:uppercase;padding:20px 44px;font-size:14px;text-decoration:none;transition:all .3s}.btn-solid{background:var(--emerald);color:var(--ink);font-weight:600}.btn-solid:hover{background:var(--cream);transform:translateY(-3px)}.btn-ghost{color:var(--emerald);background:0 0;border:1px solid #17e88f73}.btn-ghost:hover{border-color:var(--emerald);color:var(--cream);background:#17e88f14;transform:translateY(-3px)}.footer{z-index:2;background:var(--ink-2);border-top:1px solid #f2ead91a;flex-direction:column;align-items:center;gap:26px;padding:8vh clamp(20px,5vw,80px);display:flex;position:relative}.footer-links{flex-wrap:wrap;justify-content:center;gap:clamp(20px,4vw,48px);display:flex}.footer-links a{color:var(--cream);letter-spacing:.25em;text-transform:uppercase;opacity:.7;font-size:13px;text-decoration:none;transition:all .25s}.footer-links a:hover{opacity:1;color:var(--emerald)}.footer-note{letter-spacing:.1em;color:var(--cream-dim);font-size:12px}.contact-modal{z-index:200;opacity:0;visibility:hidden;place-items:center;padding:clamp(16px,4vw,40px);transition:opacity .35s,visibility .35s;display:grid;position:fixed;inset:0}.contact-modal.is-open{opacity:1;visibility:visible}.contact-modal[hidden]{display:none}.contact-modal:not([hidden]){display:grid}.contact-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060807d1;position:absolute;inset:0}.contact-modal-panel{z-index:1;background:var(--ink-2);border:1px solid #f2ead91f;width:min(560px,100%);max-height:min(90vh,860px);padding:clamp(28px,5vw,44px);transition:transform .35s;position:relative;overflow-y:auto;transform:translateY(24px)scale(.98)}.contact-modal.is-open .contact-modal-panel{transform:translateY(0)scale(1)}.contact-modal-close{width:40px;height:40px;color:var(--cream);cursor:pointer;background:0 0;border:1px solid #f2ead92e;font-size:24px;line-height:1;transition:border-color .25s,color .25s;position:absolute;top:18px;right:18px}.contact-modal-close:hover{border-color:var(--emerald);color:var(--emerald)}.contact-modal-kicker{letter-spacing:.28em;text-transform:uppercase;color:var(--cream-dim);margin-bottom:12px;font-size:11px}.contact-modal-title{font-family:var(--display);text-transform:uppercase;margin-bottom:14px;font-size:clamp(36px,7vw,56px);line-height:.95}.contact-modal-lede{color:var(--cream-dim);margin-bottom:28px;line-height:1.6}.contact-form{gap:18px;display:grid}.contact-field{gap:8px;display:grid}.contact-field label{letter-spacing:.22em;text-transform:uppercase;color:var(--cream-dim);font-size:11px}.contact-field input,.contact-field textarea{width:100%;color:var(--cream);font:inherit;background:#0608078c;border:1px solid #f2ead929;padding:14px 16px;transition:border-color .25s,box-shadow .25s}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#f2ead959}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--emerald);outline:none;box-shadow:0 0 0 1px #17e88f40}.contact-field textarea{resize:vertical;min-height:140px}.contact-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-form-status{letter-spacing:.04em;min-height:1.2em;color:var(--cream-dim);font-size:13px}.contact-form-status.is-error{color:#ff8f8f}.contact-form-status.is-success{color:var(--emerald)}.contact-submit{cursor:pointer;border:none;width:100%}.contact-submit:disabled{opacity:.65;cursor:wait;transform:none}button.btn{font-family:var(--body);color:inherit}@media (width<=720px){.nav-links{gap:14px}.nav-links a{font-size:11px}.hero{height:380vh}.pillars{height:320vh}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
