:root{--ink:#060606;--ink-soft:#0d0d0d;--surface:#151515;--surface-elevated:#1d1d1d;--line:#f4f1ec29;--line-soft:#f4f1ec14;--paper:#f4f1ec;--muted:#aaa59c;--red:#dc0712;--red-bright:#ff2632;--red-deep:#8f111e;--display:"Bebas Neue", "Arial Narrow", sans-serif;--sans:"DM Sans", Arial, sans-serif;--serif:"DM Serif Display", Georgia, serif;--gutter:clamp(1.25rem, 4vw, 4rem);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1)}*{box-sizing:border-box}html{background:var(--ink);color-scheme:dark;scroll-behavior:smooth}body{background:var(--ink);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}body.modal-open{overflow:hidden}body:before{z-index:150;pointer-events:none;opacity:.035;content:"";background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{background:var(--red);color:var(--paper)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit;background:0 0;border:0}button,a[href]{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:5px}img,video{max-width:100%;display:block}img{height:auto}.skip-link{z-index:300;background:var(--red);color:var(--paper);letter-spacing:.08em;text-transform:uppercase;padding:.75rem 1rem;font-size:.75rem;font-weight:700;transition:transform .18s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.cookie-banner{z-index:320;right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));background:#0d0d0dfa;border:1px solid #f4f1ec42;width:min(25rem,100% - 2rem);padding:1.15rem;position:fixed;box-shadow:0 1.5rem 4rem #00000073}.cookie-banner[hidden]{display:none}.cookie-banner p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.55}.cookie-banner .cookie-banner-kicker{color:var(--paper);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.4rem;font-size:.62rem;font-weight:700}.cookie-banner-actions{gap:.65rem;margin-top:1rem;display:flex}.cookie-banner button{letter-spacing:.1em;text-transform:uppercase;border:1px solid #f4f1ec52;min-height:2.5rem;padding:0 1rem;font-size:.62rem;font-weight:700}.cookie-banner-reject{color:var(--paper)}.cookie-banner-accept{background:var(--red);color:var(--paper);border-color:var(--red)!important}.cookie-banner>a{color:var(--paper);letter-spacing:.08em;text-transform:uppercase;margin-top:.9rem;font-size:.62rem;font-weight:700;text-decoration:underline;display:inline-block}@media (width<=640px){.cookie-banner{width:auto;bottom:1rem;left:1rem;right:1rem}.cookie-banner-actions button{flex:1}}.icon{flex:none}.site-header{z-index:100;width:100%;padding:1.4rem var(--gutter);backdrop-filter:blur(10px);background:linear-gradient(#060606f0,#0606067a,#0000);border-bottom:1px solid #f4f1ec1f;grid-template-columns:1fr auto 1fr;align-items:center;transition:background .28s,border-color .28s,padding .28s;display:grid;position:fixed;top:0;left:0}.site-header.is-scrolled{border-color:var(--line-soft);background:#060606e6;padding-block:1rem}.brand{z-index:2;font-family:var(--serif);letter-spacing:-.08em;justify-self:start;font-size:1.65rem;font-weight:400;line-height:1;position:relative}.brand-word{color:var(--paper)}.brand-dot{color:var(--red)}.desktop-nav{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:clamp(1.5rem,3vw,3.5rem);font-size:.62rem;font-weight:600;display:flex}.desktop-nav a,.header-handle,.footer-column a{transition:color .18s}.desktop-nav a:hover,.header-handle:hover,.footer-column a:hover{color:var(--red)}.header-actions{justify-self:end;align-items:center;gap:1.6rem;display:flex}.header-handle{color:var(--paper);letter-spacing:.1em;font-size:.66rem;font-weight:600}.menu-trigger,.menu-close{border:1px solid var(--line);width:2.75rem;height:2.75rem;color:var(--paper);justify-content:center;align-items:center;transition:border-color .18s,color .18s,background .18s;display:inline-flex}.menu-trigger:hover,.menu-close:hover{border-color:var(--red);background:var(--red)}.mobile-menu{z-index:1;width:100%;height:100dvh;min-height:100svh;padding:7rem var(--gutter) 2rem;background:var(--ink);transition:transform .6s var(--ease-out);flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0;transform:translateY(-105%)}.mobile-menu.is-open{transform:translateY(0)}.mobile-menu-topline,.mobile-menu-footer{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.65rem;font-weight:600;display:flex}.mobile-menu nav{gap:.5rem;display:grid}.mobile-menu nav a{border-bottom:1px solid var(--line-soft);font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;transition:color .18s ease, padding-left .22s var(--ease-out);align-items:baseline;gap:1.25rem;padding:1.05rem 0;font-size:clamp(3rem,15vw,6rem);line-height:.8;display:flex}.mobile-menu nav a span{color:var(--red);font-family:var(--sans);letter-spacing:.08em;font-size:.65rem}.mobile-menu nav a:hover{color:var(--red);padding-left:.75rem}.hero{background:#090909;align-items:flex-end;min-height:max(820px,min(100svh,960px));display:flex;position:relative;overflow:hidden}.hero-media,.hero-media:after{position:absolute;inset:0}.hero-media{overflow:hidden}.hero-media:after{z-index:1;content:"";background:linear-gradient(90deg,#060606fc 0%,#060606d1 20%,#0606062e 68%,#06060666 100%),linear-gradient(#0000 56%,#060606f0 100%)}.hero-media img{object-fit:cover;object-position:center 32%;filter:saturate(.94)contrast(1.08);width:100%;height:100%;transform:scale(1.04)}.hero-slide{opacity:0;transition:opacity 1.1s var(--ease-in-out);will-change:opacity, transform;position:absolute;inset:0;transform:scale(1.08)}.hero-slide.is-active{opacity:1;animation:hero-slide-zoom 3s var(--ease-in-out) both}.hero-slide:nth-child(3n){object-position:58% 42%}.hero-slide:nth-child(4n){object-position:44% 56%}.hero-rail{z-index:3;width:clamp(2.75rem,4vw,4.75rem);color:var(--red);font-family:var(--display);letter-spacing:.12em;border-right:1px solid #f22b457a;flex-direction:column;justify-content:flex-end;align-items:center;gap:1.55rem;padding-bottom:2.2rem;font-size:.9rem;display:flex;position:absolute;top:0;bottom:0;left:0}.hero-rail-label{writing-mode:vertical-rl;font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;font-size:.55rem;font-weight:700}.hero-copy{z-index:2;max-width:55rem;padding:0 calc(var(--gutter) + clamp(2rem, 4vw, 4rem)) 7.75rem;position:relative;top:clamp(1.25rem,2.5vw,2.4rem)}.hero-kicker{color:var(--paper);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:.65rem;margin:0 0 1.1rem;font-size:.64rem;font-weight:700;display:flex}.hero-location,.section-index,.case-kicker,.footer-label,.filter-label{color:var(--red-bright);letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:.64rem;font-weight:700;line-height:1.2}.hero-location{color:var(--paper);opacity:.74;align-items:center;gap:.65rem;margin-bottom:1.35rem;display:flex}.live-dot{background:var(--red);border-radius:50%;width:.38rem;height:.38rem;display:inline-block;box-shadow:0 0 0 4px #f22b4524}.hero h1,.section-heading h2,.case-content h2,.about-copy h2,.contact-copy h2{font-family:var(--display);letter-spacing:-.025em;text-transform:uppercase;margin:0;font-weight:400;line-height:.78}.hero h1{font-size:clamp(5.8rem,12.5vw,13rem);display:grid}.hero h1 span:last-child{color:var(--paper);font-size:.82em}.hero-statement{color:var(--paper);font-family:var(--serif);margin:1.8rem 0 2.15rem;font-size:clamp(1.45rem,2.4vw,2.4rem);line-height:1.05}.hero-service{color:#f4f1ecb8;max-width:31rem;margin:-.75rem 0 1.25rem;font-size:.82rem;line-height:1.5}.hero-tags{color:#f4f1ecb3;letter-spacing:.13em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.6rem;margin:0 0 2rem;font-size:.58rem;font-weight:700;display:flex}.hero-tags i{color:var(--red);font-style:normal}.hero-actions{align-items:center;gap:1.75rem;display:flex}.button,.text-link{letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:.75rem;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex}.button{min-height:3.15rem;transition:transform .22s var(--ease-out), background .18s ease, border-color .18s ease;border:1px solid #0000;padding:0 1.1rem}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--red);color:var(--paper)}.button-primary:hover{background:var(--red-bright)}.button-icon{border:1px solid #f4f1ecb3;border-radius:50%;place-items:center;width:1.45rem;height:1.45rem;display:grid}.text-link{min-height:3.15rem;color:var(--paper);transition:color .18s ease, gap .22s var(--ease-out);position:relative}.text-link:after{content:"";transform-origin:0;height:1px;transition:transform .22s var(--ease-out);background:currentColor;position:absolute;bottom:.52rem;left:0;right:1.9rem}.text-link:hover{color:var(--red);gap:1rem}.text-link:hover:after{transform:scaleX(.62)}.hero-footer{z-index:3;right:var(--gutter);bottom:1.9rem;left:calc(var(--gutter) + clamp(2rem, 4vw, 4rem));color:var(--muted);letter-spacing:.14em;text-transform:uppercase;grid-template-columns:auto minmax(5rem,15rem) auto;align-items:center;gap:1rem;font-size:.57rem;font-weight:600;display:grid;position:absolute}.hero-footer-frame{justify-self:end}.hero-progress,.rail-line{background:#f4f1ec45;height:1px;display:block;position:relative;overflow:hidden}.hero-progress span,.rail-line span{background:var(--red);width:21%;height:100%;display:block}.section-shell{width:min(100%,1440px);padding-inline:var(--gutter);margin-inline:auto}.works-section{background:radial-gradient(circle at 82% 10%,#e5091414,#0000 30rem);padding-top:clamp(6rem,12vw,11rem);padding-bottom:clamp(5rem,10vw,9rem)}.section-heading{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:3.25rem;display:flex}.section-heading h2{margin-top:.65rem;font-size:clamp(3.6rem,7vw,7.6rem)}.section-note{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .45rem;font-size:.63rem;font-weight:600}.filter-row{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:1.25rem;padding:1.1rem 0;display:flex}.filter-buttons{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.filter-button{border:1px solid var(--line);color:var(--muted);letter-spacing:.13em;text-transform:uppercase;transition:color .18s ease, border-color .18s ease, background .18s ease, transform .22s var(--ease-out);background:#f4f1ec06;border-radius:999px;padding:.62rem .9rem;font-size:.58rem;font-weight:700}.filter-button:hover,.filter-button.is-active{color:var(--paper);border-color:var(--red);background:var(--red)}.filter-button:hover{transform:translateY(-2px)}.catalog-rails{gap:clamp(4rem,8vw,7rem);width:100%;min-width:0;margin-top:clamp(3.5rem,7vw,6rem);display:grid}.catalog-rail{width:100%;min-width:0}.catalog-rail[hidden]{display:none}.rail-heading{justify-content:space-between;align-items:flex-end;gap:1.5rem;display:flex}.rail-kicker{color:var(--red-bright);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .45rem;font-size:.58rem;font-weight:700}.rail-heading h3{font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;margin:0;font-size:clamp(2rem,4vw,3.7rem);font-weight:400;line-height:.85}.rail-count{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:.58rem;font-weight:700}.work-rail{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:clamp(.8rem,1.5vw,1.5rem);width:100%;min-width:0;max-width:100%;padding:1.75rem 0 .6rem;display:grid}.work-card{width:100%;min-width:0;transition:opacity .28s ease, transform .28s var(--ease-out)}.work-card[hidden]{display:none}.work-card-open{text-align:left;width:100%;padding:0;display:block}.work-card-media{background:var(--surface);border:1px solid #f4f1ec24;align-items:flex-start;min-height:14rem;transition:border-color .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden}.work-card-media img{object-fit:contain;filter:saturate(.82)contrast(1.08);width:100%;height:auto;transition:filter .4s;display:block}.work-card-shade{pointer-events:none;background:linear-gradient(#0000 52%,#060606eb);position:absolute;inset:0}.work-card-number,.work-card-play,.work-card-open-label{z-index:1;position:absolute}.work-card-number{color:var(--paper);font-family:var(--display);font-size:1.15rem;top:.85rem;left:.9rem}.work-card-play{background:#0606066b;border:1px solid #f4f1ecb3;border-radius:50%;place-items:center;width:1.95rem;height:1.95rem;display:grid;top:.75rem;right:.75rem}.work-card-open-label{color:var(--paper);letter-spacing:.13em;opacity:0;text-transform:uppercase;transition:opacity .26s ease, transform .26s var(--ease-out);align-items:center;gap:.45rem;font-size:.58rem;font-weight:700;display:inline-flex;bottom:1rem;left:1rem;transform:translateY(.6rem)}.work-card:hover{transform:translateY(-.45rem)}.work-card:hover .work-card-media img{filter:saturate()contrast(1.06)}.work-card:hover .work-card-media{border-color:#e50914b8;box-shadow:0 1.5rem 3rem #00000042}.work-card:hover .work-card-open-label{opacity:1;transform:translateY(0)}.work-card-info{justify-content:space-between;align-items:flex-start;gap:1rem;padding-top:.85rem;display:flex}.work-card-info h3{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;margin:0;font-size:1.35rem;font-weight:400;line-height:.9}.work-card-info p,.work-card-info>span{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin:.4rem 0 0;font-size:.6rem;font-weight:600}.work-card-info .work-card-description{max-width:18rem;color:var(--muted);letter-spacing:0;text-transform:none;margin-top:.7rem;font-size:.78rem;font-weight:400;line-height:1.45}.work-card-info>span{color:var(--red-bright);margin-top:.1rem}.work-rail-footer{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;grid-template-columns:auto minmax(5rem,1fr);align-items:center;gap:1rem;margin-top:1.25rem;font-size:.58rem;font-weight:600;display:grid}.catalog-count{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:2.5rem 0 0;font-size:.58rem;font-weight:700}.media-preview-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(.65rem,1.25vw,1.15rem);padding-top:1.5rem;display:grid}.media-preview-card[hidden]{display:none}.media-preview-open{text-align:left;width:100%;padding:0;display:block}.media-preview-media{border:1px solid var(--line-soft);background:var(--surface);align-items:flex-start;min-height:8rem;display:flex;position:relative;overflow:hidden}.media-preview-media img{object-fit:contain;filter:saturate(.82)contrast(1.06);width:100%;height:auto;transition:filter .45s;display:block}.media-preview-shade{pointer-events:none;background:linear-gradient(#06060614,#060606ad);position:absolute;inset:0}.media-preview-index,.media-preview-play,.media-preview-open-label{z-index:1;position:absolute}.media-preview-index{color:var(--paper);font-family:var(--display);font-size:1rem;top:.65rem;left:.7rem}.media-preview-play{background:#06060685;border:1px solid #f4f1ecbf;border-radius:50%;place-items:center;width:2.2rem;height:2.2rem;display:grid;top:50%;left:50%;transform:translate(-50%,-50%)}.media-preview-open-label{opacity:0;width:1.8rem;height:1.8rem;transition:opacity .22s ease, transform .22s var(--ease-out);background:#06060673;border:1px solid #f4f1ec85;border-radius:50%;place-items:center;display:grid;bottom:.65rem;right:.65rem}.media-preview-info{justify-content:space-between;align-items:flex-start;gap:.65rem;padding-top:.65rem;display:flex}.media-preview-info strong,.media-preview-info span{color:var(--paper);letter-spacing:.09em;text-transform:uppercase;font-size:.58rem;font-weight:700;line-height:1.3}.media-preview-info span{color:var(--red-bright);flex:none;font-size:.5rem}.media-preview-card:hover .media-preview-media{border-color:#e50914b8}.media-preview-card:hover .media-preview-media img{filter:saturate()contrast(1.05)}.media-preview-card:hover .media-preview-open-label{opacity:1;transform:translateY(-.15rem)}.video-showcase{background:linear-gradient(#0000,#e509140b);padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(6rem,12vw,11rem)}.video-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,2vw,1.75rem);display:grid}.video-card[hidden]{display:none}.video-card-media{aspect-ratio:9/16;border:1px solid var(--line-soft);background:var(--surface);position:relative;overflow:hidden}.video-card-preview{object-fit:contain;filter:saturate(.82)contrast(1.06);background:#090909;width:100%;height:100%}.video-card-shade{pointer-events:none;background:linear-gradient(#0606061a,#060606bd);position:absolute;inset:0}.video-card-play{z-index:1;width:3.25rem;height:3.25rem;color:var(--paper);transition:background .18s ease, border-color .18s ease, transform .22s var(--ease-out);background:#0606067a;border:1px solid #f4f1ecd1;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-card-play:hover{border-color:var(--red-bright);background:var(--red);transform:translate(-50%,-50%)scale(1.08)}.video-card-duration,.video-card-number{z-index:1;color:var(--paper);letter-spacing:.12em;text-transform:uppercase;font-size:.52rem;font-weight:700;position:absolute}.video-card-duration{bottom:.75rem;right:.75rem}.video-card-number{font-family:var(--display);letter-spacing:0;font-size:1.1rem;top:.75rem;left:.75rem}.video-card-info{justify-content:space-between;align-items:flex-start;gap:.75rem;padding-top:.75rem;display:flex}.video-card-info div{gap:.35rem;display:grid}.video-card-info strong,.video-card-info span{letter-spacing:.1em;text-transform:uppercase;font-size:.63rem;font-weight:700;line-height:1.25}.video-card-info span{color:var(--muted);font-size:.52rem}.video-card-info>.icon{color:var(--red-bright)}.featured-case{padding-bottom:clamp(6rem,12vw,11rem)}.case-inner{background:#3c0c12;border:1px solid #f4f1ec1f;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);min-height:clamp(27rem,48vw,42rem);display:grid;position:relative;overflow:hidden}.case-media{min-height:20rem;position:relative;overflow:hidden}.case-media:after{content:"";background:linear-gradient(90deg,#0000 52%,#3c0c12d1),linear-gradient(#0000 60%,#0606064d);position:absolute;inset:0}.case-media img{object-fit:contain;object-position:50% 36%;filter:saturate(1.1)contrast(1.08);background:#090909;width:100%;height:100%}.case-media-stamp{z-index:1;color:#f4f1ecc7;letter-spacing:.16em;text-transform:uppercase;font-size:.58rem;font-weight:700;position:absolute;top:1.2rem;left:1.2rem}.case-content{z-index:1;background:linear-gradient(90deg,#3c0c12cc,#3c0c12fa);flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(2rem,5vw,5rem);display:flex;position:relative}.case-proof{color:#f4f1ec94;letter-spacing:.1em;text-transform:uppercase;gap:.45rem;margin:1.25rem 0 .5rem;font-size:.55rem;font-weight:700;line-height:1.5;display:grid}.case-content h2{margin:1.1rem 0 1.2rem;font-size:clamp(3rem,6vw,6.2rem)}.case-content>p:not(.case-kicker){color:#f4f1ecbd;max-width:19rem;margin:0 0 2rem;font-size:.95rem;line-height:1.5}.text-link-red{min-height:auto;color:var(--red)}.about-section{padding-bottom:clamp(7rem,15vw,13rem)}.about-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:center;gap:clamp(3rem,9vw,10rem);max-width:1120px;margin-inline:auto;display:grid}.about-media{padding-bottom:1.25rem;padding-right:1.25rem;position:relative}.about-media:before{z-index:-1;border-right:1px solid var(--red);border-bottom:1px solid var(--red);content:"";width:75%;height:75%;position:absolute;bottom:0;right:0}.about-media img{aspect-ratio:4/5;object-fit:cover;filter:grayscale()contrast(1.08);width:100%}.about-caption{color:var(--red-bright);letter-spacing:.14em;text-transform:uppercase;transform-origin:100% 100%;font-size:.56rem;font-weight:700;position:absolute;bottom:2.1rem;right:-1rem;transform:rotate(-90deg)}.about-copy{max-width:31rem}.about-copy h2{margin:1.3rem 0 2rem;font-size:clamp(4.4rem,8vw,8.5rem)}.about-copy h2 em{color:var(--red);font-style:normal}.about-lead,.about-body{max-width:25rem;color:var(--paper);margin:0;font-size:1.02rem;line-height:1.5}.about-body{color:var(--muted);margin-top:.8rem}.about-copy .text-link{margin-top:2.2rem}.about-arrow{font-size:1.15rem;font-weight:400}.contact-section{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:linear-gradient(135deg, var(--surface), #0e0e0e);grid-template-columns:minmax(12rem,.85fr) minmax(22rem,1.3fr) minmax(12rem,.85fr);min-height:28rem;display:grid;overflow:hidden}.contact-image{min-height:20rem;position:relative;overflow:hidden}.contact-image:after{mix-blend-mode:multiply;content:"";background:#7f051173;position:absolute;inset:0}.contact-image img{object-fit:cover;filter:saturate(1.2)contrast(1.15);width:100%;height:100%}.contact-image-left img{object-position:65% center}.contact-image-right img{object-position:45% center}.contact-copy{padding:3rem var(--gutter);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.contact-copy .section-index{margin-bottom:1.2rem}.contact-copy h2{font-size:clamp(5rem,10vw,10.5rem)}.contact-copy>p:not(.section-index){max-width:24rem;color:var(--muted);font-family:var(--serif);margin:1.5rem 0 2rem;font-size:1.15rem;line-height:1.2}.contact-email{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:1rem;font-size:.6rem;font-weight:700}.contact-email:hover{color:var(--paper)}.button-outline{border-color:var(--red);color:var(--red-bright)}.button-outline:hover{background:var(--red);color:var(--paper)}.site-footer{padding:4.5rem var(--gutter) 2.5rem;background:var(--ink-soft);grid-template-columns:minmax(12rem,1.4fr) repeat(2,minmax(10rem,.7fr)) minmax(10rem,.8fr);gap:2rem;display:grid}.brand-footer{margin-bottom:1rem;font-size:2rem;display:inline-block}.footer-brand p,.footer-legal p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:.25rem 0;font-size:.62rem}.footer-column{align-content:start;gap:.75rem;display:grid}.footer-label{margin-bottom:.45rem}.footer-column a{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:.4rem;font-size:.66rem;font-weight:600;display:inline-flex}.footer-legal{text-align:right;place-self:end}.lightbox{z-index:250;backdrop-filter:blur(14px);animation:modal-in .26s var(--ease-out) both;background:#060606e6;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.lightbox-panel{width:min(100%,1160px);max-height:min(90vh,760px);animation:modal-panel-in .46s var(--ease-out) both;background:#101010;border:1px solid #f4f1ec33;grid-template-columns:minmax(0,1.25fr) minmax(19rem,.75fr);display:grid;position:relative;overflow:auto;box-shadow:0 2rem 5rem #00000080}.lightbox-close{z-index:2;width:2.55rem;height:2.55rem;color:var(--paper);background:#06060694;border:1px solid #f4f1ec52;place-items:center;transition:border-color .18s,background .18s;display:grid;position:absolute;top:1rem;right:1rem}.lightbox-close:hover{border-color:var(--red);background:var(--red)}.lightbox-media{background:#000;place-items:center;min-height:22rem;display:grid;position:relative;overflow:hidden}.lightbox-visuals{background:#000;grid-template-rows:minmax(0,1fr) auto;min-width:0;display:grid}.lightbox-media-nav{z-index:2;gap:.45rem;display:flex;position:absolute;bottom:1rem;left:1rem}.lightbox-media-nav button{width:2.35rem;height:2.35rem;color:var(--paper);background:#060606b8;border:1px solid #f4f1ec52;place-items:center;display:grid}.lightbox-thumbs{scrollbar-width:none;gap:.4rem;padding:.55rem;display:flex;overflow-x:auto}.lightbox-thumbs::-webkit-scrollbar{display:none}.lightbox-thumbs button{opacity:.55;border:1px solid #0000;flex:0 0 4.3rem;height:3.4rem;overflow:hidden}.lightbox-thumbs button.is-active{border-color:var(--red);opacity:1}.lightbox-thumbs img{object-fit:contain;background:#090909;width:100%;height:100%}.lightbox-media:after{content:"";pointer-events:none;background:linear-gradient(#0000,#0606068c);height:30%;position:absolute;inset:auto 0 0}.lightbox-media img,.lightbox-media video{object-fit:contain;width:100%;height:100%;max-height:70vh;padding:clamp(.5rem,2.4vw,1.75rem)}.lightbox-media video{object-fit:contain;padding:0}.lightbox-media-tag{z-index:1;color:var(--paper);letter-spacing:.13em;text-transform:uppercase;background:#06060680;border:1px solid #f4f1ec38;padding:.45rem .6rem;font-size:.54rem;font-weight:700;position:absolute;bottom:1rem;right:1rem}.lightbox-fallback{color:var(--paper);background:#060606c7;margin:0;padding:.65rem .75rem;font-size:.7rem;position:absolute;bottom:1rem;left:1rem;right:1rem}.lightbox-details{background:linear-gradient(#181818,#101010);flex-direction:column;justify-content:space-between;min-height:100%;padding:clamp(2rem,4vw,4rem) clamp(1.4rem,4vw,3.8rem) 2.25rem;display:flex}.lightbox-meta{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;font-size:.6rem;font-weight:700;display:flex}.lightbox-kicker{color:var(--red-bright);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.62rem;font-weight:700}.lightbox-details h2{font-family:var(--display);text-transform:uppercase;margin:0;font-size:clamp(3.4rem,6vw,6rem);font-weight:400;line-height:.82}.lightbox-specs{flex-wrap:wrap;gap:.55rem;margin-top:1.2rem;display:flex}.lightbox-specs span{border:1px solid var(--line);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;padding:.42rem .55rem;font-size:.54rem;font-weight:700}.lightbox-details>div>p:last-child{color:var(--muted);margin:1.5rem 0 0;font-size:.92rem;line-height:1.55}.lightbox-deliverables{border-top:1px solid var(--line);margin-top:1.2rem;padding-top:1rem}.lightbox-deliverables strong{color:var(--red-bright);letter-spacing:.14em;text-transform:uppercase;font-size:.55rem}.lightbox-deliverables p{color:#f4f1ecc2;margin:.45rem 0 0;font-size:.75rem;line-height:1.5}.lightbox-actions{justify-items:start;gap:.9rem;margin-top:2rem;display:grid}.lightbox-actions .button{min-height:2.9rem;font-size:.6rem}.lightbox-link{color:var(--red-bright);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:.55rem;margin-top:2rem;font-size:.65rem;font-weight:700;display:inline-flex}@keyframes hero-slide-zoom{0%{transform:scale(1.09)translate(-1.2%)}to{transform:scale(1.03)translate(0,0)}}@keyframes modal-in{0%{opacity:0}to{opacity:1}}@keyframes modal-panel-in{0%{opacity:0;transform:translateY(1rem)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1020px){.media-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.video-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.site-header{padding:1rem var(--gutter);grid-template-columns:1fr auto}.desktop-nav,.header-handle{display:none}.mobile-menu{padding-top:5.75rem}.hero{min-height:780px}.hero-media img{object-position:52% 29%}.hero-media:after{background:linear-gradient(90deg,#060606f5 0%,#06060675 78%),linear-gradient(#0000 50%,#060606f2 100%)}.hero-rail{display:none}.hero-copy{padding:0 var(--gutter) 8rem;top:1.2rem}.hero h1{font-size:clamp(5rem,22vw,8.5rem)}.hero-kicker{font-size:.56rem}.hero-statement{margin-block:1.5rem 1.8rem;font-size:1.45rem}.hero-service{max-width:19rem;margin-bottom:1.2rem;font-size:.75rem}.hero-tags{max-width:20rem;margin-bottom:1.7rem;line-height:1.65}.hero-actions{flex-direction:column;align-items:flex-start;gap:.5rem}.hero-footer{right:var(--gutter);bottom:1.4rem;left:var(--gutter);grid-template-columns:1fr auto}.hero-progress{grid-area:2/1/auto/-1}.hero-footer-frame{justify-self:end}.section-heading{flex-direction:column;align-items:flex-start;gap:1.2rem;margin-bottom:2rem}.section-heading h2{font-size:clamp(3.8rem,17vw,6rem)}.filter-row{flex-direction:column;align-items:flex-start;gap:.85rem}.filter-label{font-size:.56rem;display:block}.filter-buttons{flex-wrap:wrap;gap:.45rem;width:100%;padding-right:0;overflow:visible}.filter-button{flex:none;font-size:.54rem}.catalog-rails{gap:4.5rem;margin-top:3rem}.rail-heading{flex-direction:column;align-items:flex-start;gap:.65rem}.rail-heading h3{font-size:clamp(2rem,10vw,3rem)}.rail-count{align-self:flex-end}.work-rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;padding-top:1.8rem}.work-rail-footer{grid-template-columns:auto 1fr}.media-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem .75rem}.work-card-open-label{opacity:1;transform:translateY(0)}.work-rail-footer{grid-template-columns:auto 1fr;gap:.65rem;font-size:.5rem}.case-inner{grid-template-columns:1fr}.case-media{min-height:18rem}.case-content{min-height:19rem;padding:2.25rem var(--gutter) 2.75rem}.case-content h2{font-size:clamp(3.4rem,15vw,5.6rem)}.about-grid{grid-template-columns:1fr;gap:3.5rem}.about-media{width:min(100%,22rem)}.about-copy h2{font-size:clamp(4.7rem,19vw,7.5rem)}.contact-section{grid-template-columns:1fr}.contact-copy{order:1;min-height:22rem}.contact-image-left{order:2;min-height:13rem}.contact-image-right{order:3;min-height:13rem}.contact-copy h2{font-size:clamp(5.3rem,22vw,8rem)}.site-footer{grid-template-columns:1fr 1fr;gap:3rem 1rem;padding-top:3.5rem}.footer-brand{grid-column:1/-1}.footer-legal{text-align:left;grid-column:1/-1;justify-self:start}.lightbox{padding:0}.lightbox-panel{grid-template-columns:1fr;width:100%;max-height:100dvh;overflow-y:auto}.lightbox-visuals{min-height:21rem}.lightbox-thumbs button{flex-basis:3.9rem;height:3rem}.lightbox-media{height:min(52vh,34rem);min-height:18rem}.lightbox-media img,.lightbox-media video{max-height:52vh}.lightbox-details{min-height:15rem;padding:1.75rem var(--gutter) 2rem}.lightbox-media-tag{bottom:.75rem;left:.75rem;right:auto}.lightbox-details h2{font-size:clamp(3.1rem,15vw,5.2rem)}.lightbox-actions .button{justify-content:center;width:100%}}@keyframes whatsapp-float-ring{0%{opacity:0;transform:scale(1)}12%{opacity:.38}to{opacity:0;transform:scale(2.6)}}@keyframes whatsapp-float-ring-outer{0%{opacity:0;transform:scale(1)}12%{opacity:.22}to{opacity:0;transform:scale(3.2)}}@keyframes whatsapp-float-breathe{0%,to{box-shadow:0 6px 24px #25d3664d,0 2px 8px #25d36633}50%{box-shadow:0 8px 40px #25d3668c,0 2px 12px #25d36659}}.whatsapp-float{z-index:80;right:calc(1rem + env(safe-area-inset-right,0px));bottom:calc(1rem + env(safe-area-inset-bottom,0px));width:3.5rem;height:3.5rem;transition:opacity .18s,transform .18s;position:fixed}.whatsapp-float.is-reduced,.modal-open .whatsapp-float{opacity:0;pointer-events:none;transform:translateY(18px)scale(.82)}.whatsapp-float-ring,.whatsapp-float-ring-outer{pointer-events:none;background:#25d366;border-radius:999px;position:absolute;inset:0}.whatsapp-float-ring{animation:2.8s cubic-bezier(.4,0,.6,1) infinite whatsapp-float-ring}.whatsapp-float-ring-outer{animation:2.8s cubic-bezier(.4,0,.6,1) 1.4s infinite whatsapp-float-ring-outer}.whatsapp-float-button{color:#fff;transition:transform .18s var(--ease-out);background:#25d366;border-radius:999px;place-items:center;animation:3s ease-in-out infinite whatsapp-float-breathe;display:grid;position:absolute;inset:0}.whatsapp-float-button:hover{transform:translateY(-3px)scale(1.08)}.whatsapp-float-button:active{transform:scale(.94)}.whatsapp-float-button:focus-visible{outline-offset:4px;outline:2px solid #fff}.whatsapp-float-button svg{fill:currentColor;width:1.75rem;height:1.75rem}.whatsapp-float:hover .whatsapp-float-ring,.whatsapp-float:hover .whatsapp-float-ring-outer{animation-play-state:paused}@media (width>=640px){.whatsapp-float{right:calc(1.5rem + env(safe-area-inset-right,0px));bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));width:4rem;height:4rem}.whatsapp-float-button svg{width:2rem;height:2rem}}@media (width<=720px){.whatsapp-float-ring,.whatsapp-float-ring-outer{animation:none}}@media (prefers-reduced-motion:reduce){.whatsapp-float-button,.whatsapp-float-ring,.whatsapp-float-ring-outer{animation:none}html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
