:root{color-scheme:dark;--bg:#111111;--surface:#181818;--ink:#ffffff;--muted:#a3a3a3;--accent:#00acba;--line:#303030;--gutter:clamp(1.4rem,6.25vw,7.5rem);font-family:Inter,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}html{scroll-padding-top:105px}body{margin:0}body.menu-open,body.dialog-open{overflow:hidden}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}button{border:0}h1,h2,h3,p{margin:0}h1,h2{font-weight:500;letter-spacing:-.065em;line-height:1.03;text-wrap:balance}h2{font-size:clamp(2.8rem,5.25vw,5rem)}h3{font-weight:500;letter-spacing:-.025em}p{text-wrap:pretty}::selection{color:var(--bg);background:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button:active,.button:active,.contact-arrow:active{transform:scale(.97)}.dim{color:var(--muted)}.accent{color:var(--accent)}.serif{font-family:Manrope,Inter,sans-serif;font-style:normal;font-weight:400;letter-spacing:-.06em}.eyebrow{font-family:Inter,sans-serif;font-size:.63rem;font-weight:500;line-height:1.6;letter-spacing:.12em;text-transform:uppercase}.status-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:10px;vertical-align:middle;box-shadow:0 0 12px #00acba26}.skip-link{position:fixed;top:10px;left:10px;z-index:100;background:var(--accent);color:var(--bg);padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{height:104px;padding:0 var(--gutter);display:flex;align-items:center;gap:3rem;position:absolute;top:0;left:0;right:0;z-index:30;border-bottom:1px solid #ffffff10}.wordmark{display:inline-flex;align-items:center;font-weight:700;letter-spacing:-.065em;line-height:1;font-size:2.7rem;gap:12px;flex-shrink:0}.wordmark-period{color:var(--accent)}.brand-symbol{width:26px;height:26px;color:var(--accent)}.header-descriptor{font-size:.64rem;line-height:1.5;color:#b8b8b8}.desktop-nav{margin-left:auto;display:flex;gap:2rem;font-size:.78rem}.desktop-nav a{color:#c2c2c2;transition:color .2s}.desktop-nav a:hover{color:var(--accent)}.header-contact{font-size:.76rem;border:1px solid #454545;border-radius:40px;padding:12px 20px;display:flex;align-items:center;gap:28px;transition:background .2s,color .2s}.header-contact:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.header-contact span{font-size:1.1rem}.menu-toggle,.mobile-menu{display:none}
.hero{height:100svh;min-height:720px;position:relative;isolation:isolate;overflow:hidden;background:var(--bg)}.hero-grain{position:absolute;inset:0;z-index:-1;opacity:.17;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='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23ffffff' filter='url(%23n)' opacity='.2' d='M0 0h180v180H0z'/%3E%3C/svg%3E");pointer-events:none}.hero-copy{position:absolute;left:var(--gutter);top:26%;z-index:5;width:61%}.hero-copy .eyebrow{margin-bottom:29px;font-size:.61rem}.hero h1{font-size:clamp(4.7rem,7.8vw,8.5rem);letter-spacing:-.075em;line-height:.98}.hero-description{font-size:.94rem;line-height:1.65;color:#b4b4b4;max-width:345px;margin-top:30px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;border-radius:40px;padding:17px 24px;font-size:.75rem;line-height:1.2;transition:background .2s,color .2s,transform .1s;touch-action:manipulation}.button span{font-size:1.2rem;line-height:.8}.button-accent{background:var(--accent);color:#000000}.button-accent:hover{background:#33c4cf}.button-outline{border:1px solid #525252;background:transparent}.button-outline:hover{background:var(--ink);color:var(--bg)}.text-link{font-size:.74rem;display:inline-flex;align-items:center;gap:18px;line-height:1.5}.text-link span{font-size:1.15rem;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.lens-stage{position:absolute;inset:0;z-index:2;pointer-events:none}.lens-media{position:absolute;left:28%;top:14%;width:90%;aspect-ratio:16/9;transform-origin:50% 50%;will-change:transform,opacity}.lens-media img,.lens-media canvas{width:100%;height:100%;position:absolute;inset:0;object-fit:contain}.lens-media canvas{opacity:0}.lens-media.is-ready canvas{opacity:1}.lens-media.is-ready>.lens-poster{opacity:0}.lens-halo{position:absolute;width:46vw;height:46vw;left:50%;top:17%;border-radius:50%;background:radial-gradient(ellipse,#00acba12,transparent 65%);opacity:.7}.lens-shade{position:absolute;inset:0;background:var(--bg);opacity:0}.hero-orbit{position:absolute;left:50%;top:16%;width:46vw;height:46vw;border:1px solid #ffffff07;border-radius:50%;pointer-events:none}.hero-orbit span{position:absolute;background:#00acba3b;width:5px;height:5px;border-radius:100%;top:17%;left:12%}.hero-orbit span+span{top:83%;left:86%}.lens-annotation{position:absolute;z-index:4;right:8%;bottom:18%;display:flex;gap:12px;font-family:Inter,sans-serif;font-size:.48rem;letter-spacing:.14em;line-height:1.9}.annotation-cross{color:var(--accent);font-size:1.1rem;line-height:1}.lens-annotation .dim{font-size:.43rem}.hero-bottom{position:absolute;bottom:30px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;z-index:8;border-top:1px solid #ffffff12;padding-top:23px}.scroll-cue{font-size:.56rem;letter-spacing:.07em;text-transform:uppercase;display:flex;align-items:center;gap:14px;line-height:1.7}.scroll-circle{height:35px;width:35px;border:1px solid #626262;border-radius:50%;display:grid;place-content:center;font-size:1rem;transition:background .2s}.scroll-cue:hover .scroll-circle{background:var(--accent);color:var(--bg)}.hero-location{font-size:.66rem;margin:auto;line-height:1.6}.sequence-meter{font-size:.61rem;display:flex;gap:12px;align-items:center;font-variant-numeric:tabular-nums}.meter-track{display:block;width:98px;height:2px;background:#ffffff1f}.meter-track span{height:100%;width:100%;display:block;transform:scaleX(.017);transform-origin:left;background:var(--accent)}.sequence-copy{position:absolute;left:var(--gutter);top:26%;z-index:6;opacity:0;visibility:hidden;pointer-events:none}.sequence-copy .eyebrow{color:var(--accent)}.sequence-copy p{font-size:clamp(3rem,6vw,6.8rem);line-height:1.05;letter-spacing:-.06em;margin-top:26px}.sequence-note{display:block;color:var(--muted);margin-top:26px;font-size:.83rem;line-height:1.6}
.client-strip{padding:38px var(--gutter);display:flex;gap:3rem;align-items:center;border-bottom:1px solid var(--line);background:#151515}.client-strip>p{font-size:.69rem;flex:0 0 145px;line-height:1.7}.client-logos{display:flex;align-items:center;justify-content:space-between;gap:35px;width:100%}.client-logos img{width:clamp(65px,9vw,118px);height:38px;object-fit:contain;filter:grayscale(1) brightness(0) invert(1);opacity:.56}.client-logos img:nth-child(4){width:70px;height:48px}.section-pad{padding:105px var(--gutter)}.section-kicker{display:flex;justify-content:space-between;align-items:center;margin-bottom:65px}.mini-symbol{font-size:1.4rem;color:var(--accent);line-height:1}.studio{padding-bottom:80px}.studio-main{display:grid;grid-template-columns:1.35fr 1fr;gap:9%}.studio h2{font-size:clamp(2.6rem,4.4vw,4.5rem)}.studio-copy{padding-top:6px}.studio-copy p:first-child{font-size:1.15rem;line-height:1.65;margin-bottom:25px;max-width:450px}.studio-copy p+p{font-size:.85rem;color:var(--muted);line-height:1.8;max-width:430px}.studio-copy .text-link{margin-top:28px;color:var(--accent)}.studio-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:75px;padding-top:36px;gap:35px}.studio-stats>div{display:flex;flex-direction:column;gap:10px}.studio-stats strong{font-size:3.8rem;letter-spacing:-.075em;font-weight:400;line-height:1.2}.studio-stats strong span{font-size:2rem;color:var(--accent);vertical-align:super}.studio-stats>div>span{font-size:.69rem;color:var(--muted)}
.work{background:var(--surface)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px;gap:35px}.section-heading>p{color:var(--muted);font-size:.82rem;line-height:1.8;max-width:290px;margin-bottom:8px}.work-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;row-gap:56px}.work-card{background:none;padding:0;text-align:left;display:block;min-width:0}.work-image{display:block;position:relative;overflow:hidden;border-radius:4px;aspect-ratio:1.23;background:#c9cfbd}.work-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.work-image-med img{object-position:center 47%}.work-card:hover .work-image img{transform:scale(1.045)}.work-card-offset{transform:translateY(85px)}.project-open{position:absolute;top:20px;right:20px;width:42px;height:42px;border-radius:50%;display:grid;place-content:center;background:#111111e6;color:var(--ink);font-size:1.4rem;transition:background .2s,color .2s}.work-card:hover .project-open{background:var(--accent);color:var(--bg)}.project-tag{position:absolute;bottom:20px;left:20px;background:#111111cc;color:var(--ink);backdrop-filter:blur(14px);padding:7px 12px;border:1px solid #ffffff20;border-radius:30px;font-size:.61rem}.work-caption{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding-top:19px}.work-caption>span:first-child{display:flex;flex-direction:column;gap:4px}.work-caption strong{font-size:1.2rem;font-weight:400;letter-spacing:-.03em}.work-caption>span>span{color:var(--muted);font-size:.69rem}.work-caption>.eyebrow{font-size:.46rem;letter-spacing:.07em;padding-top:7px}.more-work{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #3e3e3e;margin-top:145px;padding-top:28px}.more-work p{font-size:.77rem;color:var(--muted)}.more-work .text-link{color:var(--accent)}
.services{padding-bottom:115px}.services-layout{display:grid;grid-template-columns:.9fr 1.3fr;gap:13%}.services-intro h2{font-size:clamp(2.6rem,4.55vw,4.4rem)}.services-intro>p{font-size:.85rem;color:var(--muted);line-height:1.8;max-width:285px;margin-top:26px}.services-intro .button{margin-top:30px}.service-item{border-top:1px solid var(--line)}.service-item:last-child{border-bottom:1px solid var(--line)}.service-item summary{list-style:none;display:flex;align-items:center;gap:20px;cursor:pointer;padding:27px 0;min-height:88px}.service-item summary::-webkit-details-marker{display:none}.service-number{font-family:Inter,sans-serif;font-size:.61rem;color:var(--muted)}.service-item h3{font-size:1.23rem;line-height:1.3;flex:1}.service-toggle{position:relative;display:block;width:24px;height:24px;border:1px solid #4d4d4d;border-radius:50%;flex-shrink:0}.service-toggle::before,.service-toggle::after{content:'';position:absolute;width:9px;height:1px;top:10px;left:6px;background:var(--ink)}.service-toggle::after{transform:rotate(90deg);transition:transform .2s}.service-item[open] .service-toggle{background:var(--accent);border-color:var(--accent)}.service-item[open] .service-toggle::after{transform:rotate(0)}.service-item[open] .service-toggle::before,.service-item[open] .service-toggle::after{background:var(--bg)}.service-body{padding:0 0 30px 34px}.service-body>p{font-size:.83rem;color:var(--muted);line-height:1.8}.service-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:23px}.service-tags span{border:1px solid #3d3d3d;border-radius:20px;padding:5px 10px;font-size:.57rem;color:#bfbfbf}.process{border-top:1px solid var(--line);padding-top:65px;padding-bottom:85px}.process .section-kicker{margin-bottom:45px}.process h2{font-size:clamp(2.7rem,4.5vw,4.5rem)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;margin-top:60px}.process-grid article{border-top:1px solid #454545;padding-top:20px}.process-number{font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.process-grid h3{font-size:1.4rem;margin-top:26px;margin-bottom:16px}.process-grid p{font-size:.8rem;line-height:1.8;color:var(--muted);max-width:310px}
.testimonial{background:#1a1a1a;position:relative;overflow:hidden;padding-top:75px;padding-bottom:80px}.testimonial>.eyebrow{color:var(--muted)}.quote-mark{font-family:Georgia,serif;line-height:1;position:absolute;left:var(--gutter);top:125px;font-size:7rem;color:var(--accent)}.testimonial blockquote{margin:45px 15% 0 12%;max-width:860px}.testimonial blockquote>p{font-size:clamp(1.5rem,2.8vw,2.7rem);letter-spacing:-.04em;line-height:1.38;text-wrap:balance}.testimonial blockquote footer{display:flex;align-items:center;gap:14px;margin-top:30px}.quote-avatar{height:40px;width:40px;border-radius:50%;background:#123238;font-size:.7rem;display:grid;place-content:center;color:var(--accent)}.testimonial footer>span+span{display:flex;flex-direction:column;gap:3px}.testimonial footer strong{font-weight:400;font-size:.73rem}.testimonial footer>span>span{color:var(--muted);font-size:.61rem}.testimonial-star{position:absolute;right:-30px;bottom:-40px;font-size:16rem;line-height:1;color:#00acba0c}
.contact{padding-top:95px;padding-bottom:65px}.contact .section-kicker{margin-bottom:55px}.contact-top{display:flex;justify-content:space-between;align-items:center;gap:2rem}.contact h2{font-size:clamp(4rem,8vw,8rem);letter-spacing:-.075em}.contact h2 .serif{color:var(--accent)}.contact-arrow{display:grid;place-content:center;width:clamp(100px,12vw,170px);height:clamp(100px,12vw,170px);font-size:clamp(4rem,6vw,6rem);border:1px solid #696969;border-radius:50%;line-height:1;transition:background .25s,color .25s}.contact-arrow:hover{background:var(--accent);color:var(--bg)}.contact-bottom{display:flex;justify-content:space-between;gap:35px;border-top:1px solid var(--line);margin-top:55px;padding-top:35px}.contact-bottom>div>.eyebrow{display:block;margin-bottom:15px}.contact-email{font-size:clamp(1rem,2.2vw,1.65rem);letter-spacing:-.04em;border-bottom:1px solid #696969;padding-bottom:5px;display:inline-flex;gap:20px;overflow-wrap:anywhere}.contact-email:hover{color:var(--accent)}.contact-bottom>div>p{font-size:.77rem;color:var(--muted);line-height:1.7;margin-top:20px}.contact address{font-style:normal;min-width:230px}.contact address p{font-size:.78rem;line-height:1.7;margin:15px 0 12px}.contact address>a{display:block;font-size:.78rem;line-height:1.8;color:var(--muted)}.contact address>a:hover{color:var(--accent)}.site-footer{border-top:1px solid var(--line);margin:0 var(--gutter);padding:25px 0 30px;display:flex;align-items:center;gap:35px}.site-footer .wordmark{font-size:2rem;gap:0}.site-footer>p{font-size:.68rem;color:var(--muted)}.site-footer>span{margin-left:auto;font-size:.6rem;color:var(--muted)}.back-top{font-size:.61rem;display:flex;gap:15px;align-items:center}.back-top>span{font-size:1rem}
.project-dialog{position:fixed;inset:0;max-width:min(1040px,90vw);width:100%;max-height:85svh;border:1px solid #464646;background:var(--surface);padding:0;border-radius:12px;color:var(--ink);overscroll-behavior:contain}.project-dialog[open]{display:grid;grid-template-columns:1.2fr 1fr}.project-dialog::backdrop{background:#060606dc;backdrop-filter:blur(12px)}.dialog-image{background:#cbd0c3;min-height:450px}.dialog-image img{width:100%;height:100%;object-fit:cover}.dialog-copy{padding:75px 35px 45px;align-self:center}.dialog-copy>.eyebrow{color:var(--accent)}.dialog-copy h2{font-size:2.6rem;margin:22px 0}.dialog-copy p{font-size:.9rem;line-height:1.8;color:var(--muted);margin-bottom:32px}.dialog-close{position:absolute;right:15px;top:15px;z-index:1;width:40px;height:40px;border:1px solid #6d6d6d;border-radius:50%;background:var(--bg)}
@media(min-width:1600px){.lens-media{width:85%;left:30%;top:12%}.hero-copy{top:29%}.hero-description{font-size:1.05rem;max-width:390px}.hero-actions{margin-top:36px}.button{font-size:.85rem;padding:20px 28px}.lens-annotation{bottom:20%}}
@media(max-width:1100px){.site-header{gap:2rem}.header-descriptor{display:none}.desktop-nav{gap:1.5rem}.hero h1{font-size:8.2vw}.hero-copy{top:28%}.hero-description{max-width:310px;font-size:.88rem}.lens-media{top:21%;left:27%;width:94%}.hero-actions{gap:20px}.button{padding:16px 20px;gap:20px}.lens-annotation{bottom:22%;right:6%}.work-caption>.eyebrow{display:none}.services-layout{gap:8%}.services-intro h2{font-size:4.8vw}.service-item h3{font-size:1.06rem}.studio-main{gap:7%}.studio-copy p:first-child{font-size:1rem}.section-pad{padding-top:85px;padding-bottom:85px}.contact address{min-width:200px}}
@media(max-width:767px){:root{--gutter:1.5rem}html{scroll-padding-top:28px}.site-header{height:82px;gap:20px}.wordmark{font-size:2.2rem;gap:9px}.brand-symbol{width:23px;height:23px}.desktop-nav{display:none}.header-contact{margin-left:auto;padding:9px 14px;font-size:.67rem;gap:18px}.menu-toggle{display:flex;width:42px;height:42px;background:none;justify-content:center;align-items:center;flex-direction:column;gap:6px;padding:9px;border:1px solid #454545;border-radius:50%;flex-shrink:0}.menu-toggle span{display:block;height:1px;width:17px;background:var(--ink);transform-origin:center;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{display:flex;position:fixed;inset:0;z-index:25;background:#111111f7;backdrop-filter:blur(24px);padding:130px var(--gutter) 40px;flex-direction:column;visibility:hidden;opacity:0;transition:opacity .3s,visibility .3s}.mobile-menu.is-open{opacity:1;visibility:visible}.menu-open .site-header{position:fixed}.mobile-menu>.eyebrow{color:var(--accent);margin-bottom:35px}.mobile-menu>a{display:flex;justify-content:space-between;align-items:center;font-size:2.7rem;letter-spacing:-.045em;padding:15px 0;border-bottom:1px solid var(--line)}.mobile-menu>a span{font-size:.7rem;letter-spacing:0;color:var(--muted)}.mobile-menu>p{margin-top:auto;padding-top:30px;font-size:.85rem;color:var(--muted);line-height:1.8}.hero{min-height:770px;max-height:1000px}.hero-copy{top:130px;width:calc(100% - 3rem)}.hero-copy .eyebrow{font-size:.52rem;margin-bottom:22px}.hero h1{font-size:clamp(3.1rem,10.9vw,5.2rem);letter-spacing:-.07em;line-height:1.02}.hero-description{font-size:.79rem;max-width:300px;margin-top:19px;line-height:1.6}.hero-actions{margin-top:22px;gap:20px}.hero-actions .button{padding:14px 17px;font-size:.65rem;gap:20px}.hero-actions .text-link{font-size:.63rem;gap:8px}.hero-actions .text-link span{font-size:1rem}.lens-media{left:-45%;width:190%;top:45%}.lens-halo{left:15%;top:44%;width:78vw;height:78vw}.hero-orbit{left:18%;top:49%;width:68vw;height:68vw}.lens-annotation{right:var(--gutter);bottom:16%;font-size:.4rem;letter-spacing:.1em}.lens-annotation .dim{display:none}.hero-bottom{bottom:24px;padding-top:18px}.hero-location{display:none}.scroll-cue{font-size:.47rem;gap:10px}.scroll-circle{width:30px;height:30px;font-size:.9rem}.sequence-meter{margin-left:auto;gap:8px;font-size:.5rem}.meter-track{width:65px}.sequence-copy{top:160px}.sequence-copy p{font-size:3.4rem;margin-top:20px}.sequence-note{font-size:.75rem;margin-top:20px}.client-strip{display:block;padding:28px var(--gutter)}.client-strip>p{font-size:.63rem;margin-bottom:24px}.client-strip>p br{display:none}.client-strip>p .dim{margin-left:4px}.client-logos{gap:15px;justify-content:space-between;flex-wrap:wrap}.client-logos img{width:18%;height:25px}.client-logos img:nth-child(4){width:10%;height:30px}.section-pad{padding:65px var(--gutter)}.section-kicker{margin-bottom:35px}.section-kicker>.eyebrow{font-size:.5rem}.studio-main{grid-template-columns:1fr;gap:30px}.studio h2{font-size:clamp(2.7rem,8vw,4rem)}.studio-copy p:first-child{font-size:1.03rem}.studio-copy p+p{font-size:.8rem}.studio-stats{grid-template-columns:1fr 1fr;gap:28px 35px;margin-top:40px;padding-top:28px}.studio-stats strong{font-size:3.1rem}.studio-stats strong span{font-size:1.4rem}.studio-stats>div>span{font-size:.6rem}.section-heading{display:block;margin-bottom:35px}.section-heading h2{font-size:3.1rem}.section-heading>p{margin-top:22px;font-size:.77rem;max-width:300px}.work-grid{grid-template-columns:1fr;gap:35px}.work-card-offset{transform:none}.work-image{aspect-ratio:1.18}.work-caption{padding-top:15px}.work-caption strong{font-size:1.1rem}.work-caption>span>span{font-size:.65rem}.project-open{width:36px;height:36px;font-size:1.2rem;top:14px;right:14px}.project-tag{font-size:.56rem;left:14px;bottom:14px}.more-work{margin-top:40px;display:block;padding-top:24px}.more-work p{font-size:.69rem;margin-bottom:12px}.more-work .text-link{font-size:.73rem}.services-layout{grid-template-columns:1fr;gap:40px}.services-intro h2{font-size:3.2rem}.services-intro h2 br:nth-of-type(3){display:none}.services-intro>p{max-width:360px;font-size:.8rem;margin-top:24px}.services-intro .button{margin-top:22px}.service-item summary{padding:23px 0;gap:14px;min-height:80px}.service-item h3{font-size:1.06rem}.service-body{padding-left:28px}.service-body p{font-size:.78rem}.service-tags span{font-size:.53rem}.process h2{font-size:2.7rem;max-width:330px}.process-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.process-grid article{padding-top:15px}.process-grid h3{margin-top:15px;margin-bottom:12px;font-size:1.4rem}.process-grid p{max-width:100%;font-size:.8rem}.quote-mark{top:87px;font-size:4rem}.testimonial blockquote{margin:35px 0 0 35px}.testimonial blockquote>p{font-size:1.52rem}.testimonial-star{font-size:10rem;right:-15px;bottom:-20px}.testimonial footer{position:relative;z-index:1}.contact .section-kicker{margin-bottom:35px}.contact-top{gap:15px}.contact h2{font-size:clamp(2.8rem,10vw,4.5rem)}.contact-arrow{width:66px;height:66px;flex-shrink:0;font-size:2.5rem}.contact-bottom{margin-top:35px;padding-top:27px;flex-direction:column;gap:32px}.contact-email{font-size:clamp(.95rem,4.1vw,1.4rem);gap:12px;letter-spacing:-.02em}.contact-bottom>div>p{font-size:.72rem}.contact address p,.contact address>a{font-size:.74rem}.site-footer{display:grid;grid-template-columns:1fr auto;gap:20px 15px;padding:25px 0}.site-footer .wordmark{font-size:1.9rem}.site-footer>p{font-size:.55rem;justify-self:end}.site-footer>span{margin:0;font-size:.5rem}.back-top{font-size:.53rem;justify-self:end}.project-dialog{max-width:92vw;max-height:88svh}.project-dialog[open]{display:block}.dialog-image{min-height:0;height:270px}.dialog-image img{object-fit:cover;object-position:50% 45%}.dialog-copy{padding:30px 22px}.dialog-copy h2{font-size:2.2rem;margin:15px 0}.dialog-copy p{font-size:.8rem;margin-bottom:25px}.dialog-copy .button{font-size:.66rem;padding:16px 18px}.dialog-close{background:#111111ee}}
@media(max-width:380px){:root{--gutter:1.2rem}.site-header{gap:12px}.hero-copy{left:var(--gutter);width:calc(100% - 2.4rem)}.hero-actions{gap:14px}.hero-actions .button{font-size:.61rem;padding:14px;gap:12px}.hero h1{font-size:10.8vw}.hero{min-height:750px}.hero-description{max-width:290px}.lens-media{top:46%}.hero-actions .text-link{font-size:.6rem}}
@media(max-height:650px) and (min-width:768px){.hero{min-height:650px}.hero-copy{top:25%}.hero h1{font-size:6.8vw;max-width:700px}.hero-description{margin-top:18px}.hero-actions{margin-top:20px}.lens-media{top:12%;width:82%;left:32%}.lens-annotation{bottom:19%}}
.client-logos img:first-child{filter:grayscale(1)}
.wordmark{gap:0}.brand-logo{width:195px;height:auto;object-fit:contain}.site-header{gap:1.7rem}.site-footer .brand-logo{width:155px}.hero-motion{display:flex;align-items:center;gap:20px;margin-left:auto}.hero-location{margin-left:auto;margin-right:auto}.motion-toggle{background:transparent;color:var(--muted);font-size:.58rem;line-height:1.5;border:1px solid #454545;border-radius:30px;padding:8px 12px;white-space:nowrap}.motion-toggle:hover{color:var(--accent);border-color:var(--accent)}
@media(max-width:767px){.brand-logo{width:135px}.site-header{gap:10px}.site-footer .brand-logo{width:130px}.hero-motion{gap:12px}.motion-toggle{font-size:.48rem;padding:6px 9px}.hero-motion .sequence-meter{margin-left:0}.hero-motion .meter-track{width:40px}}
@media(max-width:380px){.brand-logo{width:115px}.site-header{gap:8px}.hero-motion{gap:7px}.hero-motion .meter-track{width:27px}.motion-toggle{font-size:.43rem;padding:6px 7px}.sequence-meter{gap:5px}}
@media(max-width:767px){.mobile-menu{transition:opacity .3s,visibility 0s .3s}.mobile-menu.is-open{transition:opacity .3s,visibility 0s}}
@media(max-width:767px){.hero{min-height:660px;max-height:none}.hero-copy{top:112px}.lens-media{left:-30%;width:160%;top:52%}.lens-annotation{bottom:14%}.client-logos img{height:22px}.client-logos img:nth-child(4){height:35px}}
@media(max-width:767px) and (min-height:760px){.hero-copy{top:130px}.lens-media{left:-45%;width:190%;top:45%}.lens-annotation{bottom:16%}}
@media(max-width:380px) and (max-height:740px){.hero-copy{top:105px}.hero-copy .eyebrow{margin-bottom:18px}.hero-description{margin-top:16px}.hero-actions{margin-top:18px}.lens-media{top:50%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.lens-media{will-change:auto}.work-card:hover .work-image img{transform:none}}
@media(prefers-reduced-transparency:reduce){.mobile-menu{background:var(--bg);backdrop-filter:none}.project-tag{background:var(--bg);backdrop-filter:none}.project-dialog::backdrop{backdrop-filter:none}}
@media(prefers-contrast:more){:root{--muted:#c3c3c3;--line:#707070}.header-descriptor,.hero-description,.desktop-nav a{color:var(--ink)}.client-logos img{opacity:1}}

/* The opening stays cinematic; beyond the lens, the studio lives in daylight. */
body{background:#fff}
.hero-background{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,17,23,.87),rgba(8,17,23,.65) 55%,rgba(8,17,23,.54)),url('../assets/background.webp') center/cover no-repeat}
.hero h1{font-size:clamp(4.7rem,7.3vw,8rem)}
.hero-description{max-width:410px;color:#deded8}
.hero-light{position:absolute;inset:0;z-index:1;background:#fff;opacity:0;pointer-events:none}
.lens-world{position:absolute;left:50%;top:50%;width:22%;aspect-ratio:1;border-radius:50%;background:#fff;display:grid;place-items:center;transform:translate(-50%,-50%);opacity:0;visibility:hidden;z-index:0}

.lens-media>.lens-poster,.lens-media>canvas{z-index:1}
.sequence-copy p{font-size:clamp(2.5rem,4.9vw,5.2rem)}
.portal-arrival{position:absolute;inset:0;z-index:7;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:20px;padding:var(--gutter);color:#111;opacity:0;visibility:hidden;pointer-events:none}
.portal-arrival>img{width:145px;height:auto;filter:brightness(0);margin-bottom:10px}
.portal-arrival>.eyebrow{color:#007780}
.portal-arrival h2{font-size:clamp(2.8rem,5.2vw,5rem)}
.portal-arrival>p:not(.eyebrow){font-size:.9rem;color:#686868}
.portal-arrival a{pointer-events:auto;color:#007780;margin-top:12px}
.light-site{--bg:#fff;--surface:#f6f6f4;--ink:#111;--muted:#686868;--line:#dededb;color:var(--ink);background:var(--bg);color-scheme:light}
.light-site .client-strip{background:#fff}
.light-site .client-strip{gap:clamp(1rem,3.3vw,3rem)}
.light-site .client-strip>p{flex-basis:190px}
.light-site .client-logos{min-width:0;flex:1;gap:clamp(15px,2.4vw,35px)}
.light-site .client-logos img{min-width:0}
.light-site .client-logos img{filter:brightness(0);opacity:.64}
.light-site .client-logos img:first-child{filter:invert(1)}
.light-site .text-link,.light-site .contact h2 .serif,.light-site .process-number{color:#007780}
.light-site .button-outline{border-color:#aaa;color:#111}
.light-site .button-outline:hover{background:#111;color:#fff}
.light-site .service-tags span{border-color:#d8d8d8;color:#5e5e5e}
.light-site .service-toggle{border-color:#aaa}
.light-site .service-item[open] .service-toggle::before,.light-site .service-item[open] .service-toggle::after{background:#111}
.light-site .more-work{border-color:var(--line)}
.light-site .project-tag,.light-site .project-open{color:#fff;background:#111111e6}
.light-site .work-card:hover .project-open{color:#111;background:var(--accent)}
.light-site .work-image{background:#e5e6e5}
.light-site .process-grid article{border-color:#bcbcbc}
.light-site .testimonial{background:#f0f6f6}
.light-site .quote-avatar{background:#deeeee;color:#007780}
.light-site .contact-arrow{border-color:#a4b4b5}
.light-site .contact-arrow:hover{background:var(--accent);color:#111}
.light-site .contact-email{border-color:#aaa}
.light-site .contact-email:hover{color:#007780}
.site-footer.light-site{margin:0;padding-left:var(--gutter);padding-right:var(--gutter)}
.site-footer.light-site .brand-logo{filter:brightness(0)}
.project-dialog{--bg:#fff;--surface:#fff;--ink:#111;--muted:#686868;background:#fff;border-color:#d8d8d8;color-scheme:light}
.dialog-close{background:#fff;color:#111;border-color:#aaa}
.dialog-copy>.eyebrow{color:#007780}
.light-site .studio h2,.light-site .services-intro h2{letter-spacing:-.055em}
.light-site .section-heading h2{font-size:clamp(2.6rem,4.3vw,4.4rem)}
.light-site .section-heading>p{max-width:260px}
.light-site .contact h2{font-size:clamp(3.3rem,6.4vw,6.6rem)}
@media(max-width:1100px){.hero h1{font-size:7.5vw}.hero-description{max-width:355px}.sequence-copy p{font-size:5.4vw}.light-site .section-heading{align-items:flex-start}.light-site .section-heading>p{max-width:220px}}
@media(max-width:767px){.hero h1{font-size:clamp(2.8rem,10.4vw,4.8rem)}.hero-description{max-width:330px;font-size:.77rem}.hero-actions{gap:16px}.lens-media{top:54%}.sequence-copy{top:145px;max-width:calc(100% - 3rem)}.sequence-copy p{font-size:clamp(2.2rem,8.4vw,3.2rem);line-height:1.08}.sequence-copy .eyebrow{font-size:.5rem}.portal-arrival{gap:18px}.portal-arrival>img{width:115px}.portal-arrival h2{font-size:2.65rem}.portal-arrival>p:not(.eyebrow){font-size:.76rem}.light-site .section-heading h2{font-size:2.7rem}.light-site .section-heading>p{max-width:100%}.light-site .services-intro h2{font-size:2.9rem}.light-site .process h2{font-size:2.65rem}.light-site .contact h2{font-size:9vw}.light-site .client-strip>p br{display:block}.light-site .client-strip>p .dim{margin:0}.light-site .studio h2{font-size:2.8rem}}
@media(max-width:767px) and (min-height:760px){.lens-media{top:48%}}
@media(max-width:380px){.hero-copy .eyebrow{font-size:.47rem}.hero h1{font-size:10.2vw}.hero-actions .button{font-size:.62rem}.lens-media{top:54%}.portal-arrival h2{font-size:2.35rem}.light-site .studio h2{font-size:2.5rem}}
@media(max-width:767px){.lens-annotation{display:none}.dialog-close{background:#fff}}