:root{--navy:#0b1f3a;--navy-2:#102850;--gold:#c9a44c;--gold-light:#e0c477;--gold-dark:#8a6a1e;--paper:#f7f5ef;--sand:#ece8dc;--ink:#18202b;--muted:#5a6472;--mist:#aeb8c8;--mist-2:#c9d1de;--pad:clamp(20px, 5vw, 64px);--font-display:"Sora", sans-serif;--font-mono:"DM Mono", monospace}*,:before,:after{box-sizing:border-box}body{background:var(--paper);margin:0}a{color:var(--gold-dark);text-decoration:none}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:clip}.page{color:var(--navy);background:var(--paper);font-family:Inter,sans-serif;line-height:1.55;overflow-x:clip}.wrap{max-width:1280px;padding-left:var(--pad);padding-right:var(--pad);margin:0 auto}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;font-size:13px}.h2{font-family:var(--font-display);letter-spacing:-.025em;margin:0 0 40px;font-size:clamp(32px,5vw,56px);line-height:1}.progress{background:var(--gold);transform-origin:0;z-index:100;pointer-events:none;height:3px;position:fixed;inset:0 0 auto;transform:scaleX(0)}.w{vertical-align:top;margin-bottom:-.14em;padding-bottom:.14em;display:inline-block;overflow:hidden}.wi{will-change:transform;display:inline-block}.sw{transition:none}.header{z-index:2;justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px;display:flex;position:relative}.header img{width:auto;height:64px;display:block}.link-line{white-space:nowrap;color:var(--navy);border-bottom:1.5px solid var(--navy);padding-bottom:2px;font-size:15px;font-weight:500}.link-line:hover{color:var(--gold-dark)}.hero{isolation:isolate;position:relative}.hero-gl{z-index:-1;pointer-events:none;position:absolute;inset:0}.hero-gl canvas{width:100%;height:100%;display:block}.hero-inner{will-change:transform, opacity;padding-top:clamp(40px,9vw,120px);padding-bottom:clamp(56px,8vw,110px)}.hero h1{font-family:var(--font-display);letter-spacing:-.04em;text-wrap:balance;max-width:12ch;margin:0;font-size:clamp(40px,8.6vw,120px);font-weight:700;line-height:1}.accent{color:var(--navy-2);position:relative}.accent .underline{background:var(--gold);transform-origin:0;height:.07em;position:absolute;bottom:.02em;left:0;right:0}.lead{max-width:36em;color:var(--ink);text-wrap:pretty;margin:32px 0 0;font-size:clamp(18px,2.2vw,24px)}.actions{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.btn{text-align:center;white-space:nowrap;border:1.5px solid #0000;border-radius:999px;max-width:100%;padding:16px 26px;font-size:16px;font-weight:600;line-height:1.2;transition:background .25s,color .25s,transform .25s;display:inline-block}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:var(--navy)}.btn-gold:hover{background:var(--navy-2);color:var(--paper)}.btn-outline{border-color:var(--navy);color:var(--navy)}.btn-outline:hover{background:var(--navy);color:var(--paper)}.btn-gold-on-dark:hover{background:var(--paper);color:var(--navy)}.btn-gold-on-navy2:hover{background:var(--gold-light);color:var(--navy)}.btn-outline-light{border-color:var(--paper);color:var(--paper)}.btn-outline-light:hover{background:var(--paper);color:var(--navy)}.section-rule{border-top:1px solid #0b1f3a22;padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(48px,7vw,96px)}.grid-services{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:16px;display:grid}.card{background:var(--sand);border-radius:20px;flex-direction:column;gap:14px;min-height:240px;padding:28px;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s;display:flex}.card:hover{box-shadow:0 18px 40px #0b1f3a1c}.card .num{font-family:var(--font-mono);color:var(--gold-dark);font-size:13px}.card h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:26px;line-height:1.1}.card p{color:var(--ink);text-wrap:pretty;margin:0;font-size:16px}.projects{background:var(--navy);color:var(--paper);padding:clamp(56px,8vw,110px) 0}.projects .eyebrow{color:var(--mist)}.projects .h2{letter-spacing:-.03em;margin-bottom:0;font-size:clamp(38px,6vw,80px)}.projects .h3{opacity:.75;font-weight:200}.project-list{flex-direction:column;gap:clamp(56px,8vw,110px);display:flex}.project{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));align-items:center;gap:clamp(24px,4vw,56px);display:grid}.shot{aspect-ratio:4/3;background:var(--navy-2);border:1px solid #f7f5ef22;border-radius:20px;position:relative;overflow:hidden}.shot.flip{order:2}.shot-in{will-change:transform;background:repeating-linear-gradient(135deg,#16305a 0 14px,#102850 14px 28px);height:124%;position:absolute;top:-12%;left:0;right:0}.shot-label{font-family:var(--font-mono);color:var(--mist);font-size:12px;position:absolute;bottom:18px;left:18px}.project-body{flex-direction:column;gap:16px;display:flex}.project-case{font-family:var(--font-mono);color:var(--gold);font-size:13px}.project h3{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:clamp(32px,4.5vw,52px);line-height:1}.project .sub{text-wrap:pretty;margin:0;font-size:19px;font-style:italic}.project .desc{color:var(--mist-2);text-wrap:pretty;margin:0;font-size:16px}.tags{flex-wrap:wrap;gap:8px;display:flex}.tag{border:1px solid #f7f5ef44;border-radius:999px;padding:5px 13px;font-size:13px}.result{background:var(--gold);color:var(--navy);text-wrap:pretty;border-radius:14px;padding:16px 18px;font-size:15px}.project-link{color:var(--paper);border-bottom:1.5px solid var(--gold);align-self:flex-start;padding-bottom:2px;font-size:17px;font-weight:600;transition:color .25s}.project-link:hover{color:var(--gold)}.steps-section{padding-top:clamp(56px,8vw,110px);padding-bottom:clamp(56px,8vw,110px)}.grid-steps{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:32px;display:grid}.step{flex-direction:column;gap:10px;padding-top:18px;display:flex;position:relative}.step .rule{background:var(--navy);transform-origin:0;height:2px;position:absolute;top:0;left:0;right:0}.step .big{font-family:var(--font-display);color:var(--gold-dark);font-size:56px;font-weight:700;line-height:1}.step h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:26px}.step p{color:var(--ink);text-wrap:pretty;margin:0}.mentor-wrap{padding-bottom:clamp(56px,8vw,110px)}.mentor{background:var(--navy-2);color:var(--paper);will-change:transform;border-radius:28px;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:end;gap:32px;padding:clamp(28px,6vw,72px);display:grid}.mentor .eyebrow{color:var(--gold-light);margin-bottom:14px}.mentor h2{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(32px,5vw,60px);line-height:1.05}.mentor .col{flex-direction:column;align-items:flex-start;gap:24px;display:flex}.mentor p{text-wrap:pretty;margin:0;font-size:19px}.about{border-top:1px solid #0b1f3a22;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px 64px;padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(56px,8vw,110px);display:grid}.about .h2{margin:0}.about .big-p{text-wrap:pretty;margin:0 0 20px;font-size:clamp(20px,2.4vw,28px);line-height:1.35}.about .motto{color:var(--gold-dark);margin:0;font-size:18px;font-style:italic}.contact{background:var(--navy);color:var(--paper);padding:clamp(56px, 9vw, 120px) var(--pad);text-align:center}.contact h2{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;max-width:12ch;margin:0 auto;font-size:clamp(34px,6.6vw,92px);line-height:1}.contact .lead{color:var(--mist-2);max-width:30em;margin:28px auto 0;font-size:clamp(18px,2.2vw,22px)}.contact .actions{justify-content:center}.contact .btn{padding-left:28px;padding-right:28px;font-weight:700}.footer{background:var(--navy);color:var(--mist);padding:28px var(--pad) 96px;border-top:1px solid #f7f5ef22;flex-wrap:wrap;justify-content:space-between;gap:16px 40px;font-size:14px;display:flex}.footer .brand{color:var(--paper);align-items:center;gap:14px;display:flex}.footer img{width:auto;height:48px}.footer .links{flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}.footer a{color:var(--mist);transition:color .25s}.footer a:hover{color:var(--gold)}.fab{white-space:nowrap;z-index:50;color:#0b2e17;background:#25d366;border-radius:999px;align-items:center;gap:10px;height:56px;padding:0 22px;font-size:15px;font-weight:700;transition:background .25s;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 8px 24px #0004}.fab:hover{color:#0b2e17;background:#1ebe5b}.fab i{background:#0b2e17;border-radius:50%;width:12px;height:12px}@media (prefers-reduced-motion:reduce){.progress{display:none}}
