@font-face{font-family:STIX;src:url('./assets/stix-regular.woff2') format('woff2');font-weight:400 600;font-display:swap}
@font-face{font-family:STIX;src:url('./assets/stix-bold.woff2') format('woff2');font-weight:700 900;font-display:swap}
:root{--font:STIX,Georgia,serif;--gold:#e9dfb9;--paper:#eee9dc}
body{font-family:var(--font);font-size:18px;line-height:1.35}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wordmark>span,.paper-brand,.boot-wordmark,.footer-logo{font-family:STIX,Georgia,serif}.wordmark>span{font-size:29px}.header{padding:26px 4%}.nav{direction:ltr;gap:30px}.nav a{font-size:17px}.nav a>span{display:none}.header-cta{direction:ltr;font-size:16px;padding:6px 15px;gap:16px}.mobile-nav{font-size:22px}
.hero-copy{right:auto;left:6.7%;width:50%;top:50%;transform:translateY(calc(-49% - var(--hero-out)*60px));text-align:left;padding:0}.hero h1{font-family:STIX,Georgia,serif;font-size:clamp(54px,6.6vw,118px);line-height:1.055;font-weight:500;letter-spacing:-1.8px;margin:0;text-shadow:1px 0 #9ce5f078,-1px 1px #dda97a88,0 0 22px #ece3ba44}.hero-bottom{justify-content:center;bottom:56px}.scroll-cue{direction:ltr;font:18px STIX,serif;gap:15px}.signal-label{display:none}.fallback-computer{left:auto;right:5%;transform:perspective(800px) rotateY(-20deg) rotateZ(1deg)}
.work-sticky{padding-top:105px;min-height:650px;background:transparent}.work-sticky:before{display:none}.section-heading h2{font-family:STIX,Georgia,serif;font-size:clamp(48px,5.6vw,84px);font-weight:400;line-height:1.1;margin:0}.section-heading{margin-bottom:35px}.carousel{height:44vh;max-height:440px;min-height:280px}.project-card{direction:ltr;text-align:left}.project-info{background:#0d100d;direction:ltr}.project-info strong{font:20px STIX,serif}.project-info small{font-size:8px;line-height:1.2}.carousel-controls{margin-top:25px}.carousel-controls button{border:0;background:none;font:30px STIX,serif;width:42px;height:35px}.carousel-controls .mono{font:14px STIX,serif;letter-spacing:.06em}.concept-note{font:17px STIX,serif;color:var(--paper)}.concept-note button{font:inherit;color:inherit;background:none;border-bottom:1px solid #d9d1b354;padding:4px 12px}.has-portfolio .project-card{opacity:0!important;filter:none;box-shadow:none;border:0}.has-portfolio .project-card:focus-visible{opacity:1!important;outline:2px solid var(--gold)}
.paper{width:85%;max-width:1100px;padding:45px 70px;transform:translateY(calc(var(--paper-out)*-30px));line-height:1.5;box-shadow:0 20px 70px #0005}.paper-top{margin-bottom:34px}.paper h2{font-family:STIX,Georgia,serif;font-size:clamp(45px,5.5vw,76px);line-height:1.06;font-weight:500;letter-spacing:-1.2px;margin:25px 0 32px}.paper .eyebrow{font:11px var(--mono);letter-spacing:.1em}.paper-lead{font:22px/1.5 STIX,serif;max-width:850px;margin-bottom:20px}.paper>p:not(.paper-lead):not(.eyebrow){font:18px/1.55 STIX,serif;max-width:850px}.paper-services{gap:38px;padding-top:23px;margin-top:30px}.paper-services strong{font:21px/1.2 STIX,serif;display:block}.paper-services p{font:16px/1.4 STIX,serif}.paper-services span{margin-bottom:8px}.paper-footer a{font:19px STIX,serif}.paper-footer{margin-top:35px}.paper-perforation{inset:10px 13px}.paper-shreds{inset:110px 8% 90px;transform:none}.about-sticky{min-height:900px;padding:100px 5% 70px}.about{height:210svh}.about-caption{font-size:8px}.connection{display:none;height:340svh}.connection-sticky{position:sticky;top:0;height:100svh}.cinematic-ready.has-webgl:not(.reduced-motion) .connection{display:block}.connection .skip-link:focus{position:fixed}.contact{padding-top:145px;min-height:110svh}.contact-copy{width:50%;text-align:left}.contact-copy h2{font:400 clamp(75px,8vw,135px)/1 STIX,serif;letter-spacing:-2px;margin:25px 0}.contact-copy>.eyebrow{font:10px var(--mono);letter-spacing:.12em}.contact-copy>p:not(.eyebrow){font:22px/1.45 STIX,serif;color:var(--paper)}.contact-button{font:18px STIX,serif;direction:ltr;padding:14px 22px;gap:28px}.phone-number{font-size:18px}.contact-small{font:16px STIX,serif;margin-top:7px}.contact-label{left:auto;right:9%;top:27%}.footer-bottom{font:13px STIX,serif}.footer-bottom a{font:14px STIX,serif}.footer-logo{font-family:STIX,Georgia,serif}.experience-controls{direction:ltr;gap:20px}.experience-controls button{font:12px STIX,serif}.boot-wordmark{font-family:STIX,Georgia,serif}.boot-skip{font:16px STIX,serif}.boot-inner p{font-size:16px}.boot-wordmark .brand-symbol{background:repeating-linear-gradient(to bottom,#ded9bd 0px,#ded9bd 5px,transparent 5px,transparent 8px)}
dialog{width:100%;height:100svh;max-width:none;max-height:none;inset:0;margin:0;padding:100px 7% 80px;background:#10130f;color:var(--paper);border:0;border-radius:0;overflow-y:auto;text-align:left}dialog .dialog-close{position:fixed;top:26px;left:5%;color:var(--paper);font:17px STIX,serif;padding:10px;background:#12150fe6;z-index:3}dialog .eyebrow{color:#bbb495;font-size:11px;margin-top:24px}dialog h2{font:400 clamp(48px,7vw,110px)/1.05 STIX,serif;letter-spacing:-2px;margin:15px 0 36px}.dialog-image{width:100%;height:55vh;min-height:280px;display:grid;place-items:center;background:#242a1d;overflow:hidden;margin-bottom:45px}.dialog-image img{width:100%;height:100%;object-fit:contain}.dialog-image>span{font:80px STIX,serif;color:#e5a481}dialog>p:not(.eyebrow){font:23px/1.5 STIX,serif;color:#d0cfbe;max-width:800px}dialog ul{max-width:800px}dialog li{font:18px/1.5 STIX,serif;border-bottom-color:#aaaa7740;padding:15px 0}dialog .contact-button{font:19px STIX,serif;background:var(--gold);color:#252a1d}.dialog-url{display:block;margin-top:22px;font:13px var(--mono);color:#b5b79f}
@media(max-height:850px) and (min-width:721px){.hero h1{font-size:clamp(50px,6.2vw,95px)}.hero-copy{padding:0}.work-sticky{min-height:620px}.carousel{height:42vh;min-height:240px}.about-sticky{min-height:810px}.paper{padding:30px 55px}.paper h2{font-size:54px;margin:20px 0}.paper-lead{font-size:20px}.paper>p:not(.paper-lead):not(.eyebrow){font-size:17px}.paper-services{margin-top:20px;padding-top:15px}.paper-services strong{font-size:18px}.paper-services p{font-size:14px}.paper-footer{margin-top:20px}.paper-top{margin-bottom:20px}}
@media(max-width:1000px){.nav{gap:18px}.nav a{font-size:15px}.wordmark>span{font-size:25px}.header-cta{font-size:14px}.paper{width:92%}.paper-services{gap:22px}.hero-copy{left:6%;width:52%}.contact-copy{width:54%}}
@media(max-width:720px){.header{padding:23px 7%}.wordmark>span{font-size:24px}.header-cta{font-size:12px;padding:5px 10px}.hero-copy{left:8%;right:8%;width:auto;top:140px;text-align:left;transform:translateY(calc(var(--hero-out)*-50px))}.hero h1{font-size:clamp(42px,10.3vw,66px);line-height:1.01;letter-spacing:-1px}.hero h1 br:first-of-type{display:initial}.hero-sticky{min-height:790px}.hero-bottom{bottom:58px}.scroll-cue{font-size:15px;gap:10px}.fallback-computer{right:19%;left:auto;top:54%;width:60%}.section-heading h2{font-size:49px}.work-sticky{padding-top:110px;min-height:710px}.carousel{height:42vh;min-height:300px;max-height:360px}.project-info strong{font-size:19px}.project-info small{font-size:7px}.concept-note{font-size:16px}.paper{width:100%;padding:28px 30px}.paper h2{font-size:41px;line-height:1.08;letter-spacing:-.5px;margin:25px 0}.paper .eyebrow{font-size:8px}.paper-lead{font-size:18px;line-height:1.35;margin-bottom:18px}.paper>p:not(.paper-lead):not(.eyebrow){font-size:16px;line-height:1.4}.paper-top>.mono{font-size:7px}.paper-services{flex-direction:column;gap:17px;margin-top:20px;padding-top:20px}.paper-services>div{display:grid;grid-template-columns:24px 1fr;gap:0 10px}.paper-services span{font-size:10px;margin-top:5px}.paper-services strong{font-size:18px}.paper-services p{font-size:15px;grid-column:2;margin:5px 0 0}.paper-footer a{font-size:17px}.paper-footer{margin-top:30px}.paper .stamp{display:none}.about-sticky{min-height:1030px;padding:110px 5% 80px}.about{height:235svh}.paper-shreds{inset:110px 7% 80px}.connection{height:280svh}.contact{padding:120px 8% 0}.contact-copy{width:100%;text-align:left}.contact-copy h2{font-size:82px;line-height:1}.contact-copy>.eyebrow{justify-content:flex-start;font-size:8px}.contact-copy>p:not(.eyebrow){font-size:20px;line-height:1.4}.contact-button{font-size:16px;padding:12px 16px;gap:20px}.phone-number{margin:20px 0 0;font-size:17px}.contact-small{font-size:15px}.contact-label{right:8%;top:auto;bottom:25%}.footer-bottom{font-size:11px;align-items:flex-start}.footer-bottom a{font-size:12px}.experience-controls button{font-size:11px}.footer-bottom .mono{font-size:7px}.boot-wordmark{font-size:43px}.boot-inner p{font-size:11px}.boot-skip{font-size:15px}.boot-inner>small{font-size:8px}dialog{padding:90px 7% 55px}dialog h2{font-size:54px;margin-bottom:28px}.dialog-image{height:32vh;min-height:220px}dialog>p:not(.eyebrow){font-size:20px}dialog li{font-size:17px}dialog .contact-button{font-size:17px}.dialog-url{font-size:10px}}
@media(max-width:380px){.hero h1{font-size:41px}.paper h2{font-size:34px}.paper{padding:28px 24px}.paper-services strong{font-size:17px}.about-sticky{min-height:1100px}.header-cta{display:none}.boot-wordmark{font-size:35px}}
body.reduced-motion .connection,body.no-webgl .connection{display:none!important}body.reduced-motion .paper{clip-path:none;transform:none}body.reduced-motion .hero-copy{transform:translateY(-49%)}@media(max-width:720px){body.reduced-motion .hero-copy{transform:none}}
.active-project-name{font:22px STIX,Georgia,serif;text-align:center;margin-top:12px}.has-portfolio.has-webgl:not(.no-webgl):not(.reduced-motion) .project-card{pointer-events:none!important}.has-portfolio.has-webgl:not(.no-webgl):not(.reduced-motion) .carousel{cursor:grab}.has-portfolio.has-webgl:not(.no-webgl):not(.reduced-motion) .carousel:active{cursor:grabbing}.has-portfolio.no-webgl .project-card,.has-portfolio.reduced-motion .project-card{opacity:0!important}.has-portfolio.no-webgl .project-card.is-active,.has-portfolio.reduced-motion .project-card.is-active{opacity:1!important}.dialog-image{object-fit:contain;display:block}.has-portfolio.work-scene .section-heading{pointer-events:none}
.about-sticky{top:min(0px,calc(100svh - 900px))}@media(max-height:850px) and (min-width:721px){.about-sticky{top:min(0px,calc(100svh - 810px))}}@media(max-width:720px){.about-sticky{top:min(0px,calc(100svh - 1030px))}}@media(max-width:380px){.about-sticky{top:min(0px,calc(100svh - 1100px))}}
