@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-regular.401567c1de0d.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-bold.787c8eb78a57.woff2') format('woff2');font-style:normal;font-weight:600 900;font-display:swap}
:root{--paper:#eeede7;--ink:#1b1c19;--muted:#67675f;--red:#df3e28;--line:#c9c8bf;--gutter:clamp(24px,4.2vw,88px);--ease:cubic-bezier(.22,.8,.25,1);color-scheme:light;font-family:Manrope,Arial,sans-serif;font-weight:400;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{color:inherit;cursor:pointer}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{border:0;background:none}img{max-width:100%;display:block}svg{display:block}figure,p,h1,h2,h3{margin:0}button:disabled{opacity:.3;cursor:default}a,button,summary,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--red);outline-offset:6px}::selection{color:var(--paper);background:var(--red)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.pad{padding-left:var(--gutter);padding-right:var(--gutter)}.micro{font-size:10px;font-weight:600;letter-spacing:.09em;line-height:1.55}.icon{width:22px;height:22px;flex-shrink:0}.display{font-size:clamp(58px,7.8vw,130px);font-weight:600;line-height:.99;letter-spacing:-.065em}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}.display em{color:var(--red)}.section-label{display:flex;justify-content:space-between;gap:24px}.section-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.section-title-row>p{font-size:14px;line-height:1.7;max-width:310px;padding-bottom:10px}.spark{width:100%;height:100%}.line-link,.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;font-size:13px}.line-link{padding-bottom:12px;border-bottom:1px solid var(--ink)}.line-link .icon,.text-link .icon{width:18px;height:18px;transition:transform .35s var(--ease)}.line-link:hover .icon,.text-link:hover .icon{transform:translate(3px,-3px)}.skip-link{position:fixed;top:-100px;left:24px;z-index:100;background:var(--paper);padding:16px}.skip-link:focus{top:16px}.scroll-progress{position:fixed;inset:0 auto auto 0;width:100%;height:2px;background:var(--red);z-index:80;transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}

/* The masthead becomes a frame; the next section rises over the opening. */
.site-header{height:78px;position:absolute;inset:0 0 auto;z-index:30;display:flex;align-items:center;padding:0 var(--gutter);gap:30px;border-bottom:1px solid var(--line);background:var(--paper)}.brand{font-size:37px;font-weight:700;letter-spacing:-.1em;line-height:1}.brand-dot{color:var(--red);padding-left:2px}.header-role{font-size:9px;line-height:1.3}.desktop-nav{display:flex;align-items:center;margin-left:auto;gap:44px;font-size:12px}.desktop-nav>a{display:flex;align-items:center;gap:20px}.desktop-nav>a>span{font-size:8px;align-self:flex-start;color:var(--muted)}.desktop-nav>a:hover{color:var(--red)}.desktop-nav .nav-contact{gap:24px;margin-left:35px}.nav-contact .icon{width:17px;height:17px}.menu-toggle{display:none}.mobile-menu{display:none}.hero{height:155svh;position:relative;--hero-progress:0;--frame-top:clamp(285px,28vw,455px)}.hero-stage{height:100svh;min-height:700px;position:sticky;top:0;overflow:hidden}.hero-heading{padding:108px var(--gutter) 0;transform:translateY(calc(var(--hero-progress)*-140px));opacity:calc(1 - var(--hero-progress)*.9)}.hero-eyebrow{display:flex;justify-content:space-between;margin-bottom:16px}.hero-eyebrow>span:first-child{color:var(--red)}.hero h1{font-size:15.15vw;font-weight:700;line-height:.86;letter-spacing:-.085em;white-space:nowrap;margin-left:-.012em}.hero-subline{display:flex;justify-content:space-between;align-items:center;margin-top:23px;font-size:11px}.hero-subline a{display:flex;gap:18px}.hero-subline a span{font-size:20px;line-height:.5}.hero-frame{position:absolute;left:calc(var(--gutter)*(1 - var(--hero-progress)));right:calc(var(--gutter)*(1 - var(--hero-progress)));top:calc(var(--frame-top)*(1 - var(--hero-progress)));bottom:calc(22px*(1 - var(--hero-progress)));background:#181a16;color:var(--paper);overflow:hidden}.hero-photo{height:100%;width:100%;object-fit:cover;object-position:50% 40%;transform:scale(calc(1.01 + var(--hero-progress)*.06))}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.13),transparent 30%,rgba(0,0,0,.65))}.frame-top,.hero-frame-bottom{position:absolute;left:28px;right:28px;display:flex;justify-content:space-between;gap:20px;z-index:1}.frame-top{top:22px;font-size:8px}.record-label{display:flex;align-items:center;gap:8px}.record-label i{width:6px;height:6px;background:var(--red);border-radius:50%;display:block}.hero-frame-bottom{bottom:19px;font-size:8px;opacity:.8}.hero-caption{position:absolute;left:28px;right:32px;bottom:65px;display:flex;align-items:flex-end;justify-content:space-between}.hero-caption p{font-size:clamp(40px,5vw,82px);line-height:1.03;letter-spacing:-.055em;font-weight:600}.hero-caption p em{color:#f0e6d8}.round-link{display:flex;align-items:center;gap:16px}.round-link>span:first-child{border:1px solid #ffffff80;border-radius:50%;width:74px;height:74px;display:grid;place-items:center;transition:background .3s,transform .3s}.round-link:hover>span:first-child{background:var(--red);border-color:var(--red);transform:rotate(-10deg)}.play-icon{width:25px;height:25px}.round-link .micro{font-size:9px}

.manifesto{padding-top:94px;padding-bottom:90px;background:var(--paper);position:relative;z-index:2}.manifesto-layout{display:grid;grid-template-columns:24% 1fr;gap:4%;align-items:start;margin-top:75px}.manifesto-layout>.spark{width:110px;height:110px;color:var(--red);transform:rotate(var(--star-rotation,0deg))}.manifesto h2{font-size:clamp(36px,4.6vw,80px);line-height:1.17;font-weight:400;letter-spacing:-.045em}.manifesto h2 em{color:var(--red)}.word{transition:opacity .18s linear}.manifesto-foot{display:flex;justify-content:space-between;align-items:end;margin-top:65px}.manifesto-foot p{font-size:12px;line-height:1.7;margin-right:13.5%}

.work-section{padding-top:85px;padding-bottom:85px;border-top:1px solid var(--line);overflow:hidden}.work-heading .section-title-row{margin-top:52px;margin-bottom:56px}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-bottom:32px}.filters{display:flex;gap:30px}.filters button{font-size:12px;padding:8px 0;position:relative;color:var(--muted)}.filters button sup{font-size:8px;margin-left:5px}.filters button[aria-pressed=true]{color:var(--ink)}.filters button[aria-pressed=true]:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--ink)}.view-toggle{display:flex;align-items:center;gap:10px}.view-toggle .icon{width:16px;height:16px}.gallery-track{display:flex;gap:26px;padding:0 var(--gutter) 14px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;touch-action:pan-x pan-y}.gallery-track::-webkit-scrollbar{display:none}.gallery-track.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.photo-card{flex:0 0 32%;min-width:0;scroll-snap-align:start;scroll-margin-left:var(--gutter)}.photo-card:nth-child(3n+2){padding-top:64px}.photo-card:nth-child(3n+2) .photo-open{aspect-ratio:3/3.55}.photo-open{display:block;padding:0;position:relative;width:100%;aspect-ratio:3/4;overflow:hidden;background:#d8d7ce;cursor:inherit}.photo-open img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);pointer-events:none}.photo-open:hover img{transform:scale(1.045)}.photo-action{position:absolute;right:20px;bottom:20px;width:44px;height:44px;background:var(--paper);border-radius:50%;display:grid;place-items:center;opacity:0;transform:translateY(10px);transition:opacity .35s,transform .35s}.photo-action .icon{width:18px;height:18px}.photo-open:hover .photo-action,.photo-open:focus-visible .photo-action{opacity:1;transform:none}.photo-card figcaption{display:flex;justify-content:space-between;gap:12px;font-size:11px;margin-top:16px}.photo-card figcaption .micro{font-size:9px;color:var(--muted)}.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:35px}.gallery-hint{color:var(--muted)}.gallery-hint>span{margin-left:20px;font-size:19px}.gallery-progress{height:1px;position:relative;background:var(--line);flex:1;max-width:400px}.gallery-progress>span{position:absolute;height:1px;left:0;top:0;background:var(--ink);width:100%;transform-origin:left;transform:scaleX(var(--gallery-progress,.04))}.gallery-arrows,.film-arrows,.lightbox-controls{display:flex;align-items:center;gap:15px}.gallery-arrows .gallery-counter{margin-right:20px}.gallery-arrows button,.film-arrows button,.lightbox-controls button{border:1px solid var(--line);border-radius:50%;width:44px;height:44px;font-size:20px;transition:color .25s,background .25s}.gallery-arrows button:hover,.film-arrows button:hover{background:var(--ink);color:var(--paper)}.work-section.is-grid .gallery-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 22px;overflow:visible;cursor:default}.work-section.is-grid .photo-card{padding:0}.work-section.is-grid .photo-open{aspect-ratio:3/4;cursor:zoom-in}.work-section.is-grid .gallery-hint,.work-section.is-grid .gallery-progress,.work-section.is-grid .gallery-arrows{visibility:hidden}.work-section.is-grid .gallery-bottom{margin-top:0;height:0}

/* A short pinned film passage, with native horizontal swipe on small screens. */
.cinema{height:230svh;position:relative;background:var(--ink);color:var(--paper);--film-x:0px;--film-progress:0}.cinema-stage{height:100svh;min-height:700px;position:sticky;top:0;overflow:hidden}.cinema-heading{padding-top:76px}.cinema .section-label{color:#cecec3}.cinema-heading .section-title-row{position:absolute;left:var(--gutter);top:30%;width:35%;display:block}.cinema .display{font-size:clamp(50px,5.9vw,110px);line-height:1.01}.cinema .display em{color:#b1b1a2}.cinema-intro{margin-top:40px;font-size:13px;line-height:1.7}.cinema-intro>.micro{display:block;margin-top:45px;font-size:8px;color:#a3a398}.film-window{position:absolute;left:44%;right:0;top:145px;bottom:95px;overflow:hidden}.film-track{display:flex;gap:46px;height:100%;align-items:center;width:max-content;padding-right:var(--gutter);transform:translateX(var(--film-x));will-change:transform}.film-card{width:clamp(220px,29svh,380px);flex-shrink:0}.film-open{position:relative;padding:0;width:100%;aspect-ratio:9/14;overflow:hidden;background:#33352f;color:#fff;display:block}.film-open img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.film-open:after{position:absolute;content:'';inset:0;background:linear-gradient(180deg,#0005,transparent 30%,#0008);pointer-events:none}.film-open:hover img{transform:scale(1.05)}.film-number{position:absolute;top:16px;left:16px;z-index:1;font-size:8px}.film-duration{position:absolute;bottom:16px;right:16px;z-index:1;font-size:9px}.film-play{position:absolute;inset:0;display:flex;flex-direction:column;gap:15px;align-items:center;justify-content:center;z-index:1}.film-play .play-icon{box-sizing:content-box;border:1px solid #ffffff90;padding:22px;border-radius:50%;transition:background .3s,transform .3s}.film-play .micro{font-size:8px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}.film-open:hover .play-icon{background:var(--red);border-color:var(--red);transform:scale(1.05)}.film-open:hover .film-play .micro{opacity:1;transform:none}.film-description{padding-top:17px}.film-description h3{font-size:21px;font-weight:400;letter-spacing:-.035em}.film-description p{font-size:11px;color:#b8b9ac;margin-top:6px}.film-description>.micro{display:block;font-size:7px;color:#909184;margin-top:15px}.cinema-bottom{position:absolute;left:0;right:0;bottom:33px;display:flex;justify-content:space-between;align-items:center}.cinema-bottom>.micro{font-size:8px;color:#b8b9ac}.film-arrows button{border-color:#66685e}.film-arrows button:hover{background:var(--paper);color:var(--ink)}.film-counter{min-width:57px;text-align:center}

.services{padding-top:100px;padding-bottom:75px}.services .section-title-row{margin-top:60px;margin-bottom:70px}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.service summary{display:grid;grid-template-columns:9% 1fr 54px;align-items:center;padding:30px 0;gap:16px}.service-index{align-self:center;color:var(--muted)}.service h3{font-size:clamp(35px,4.2vw,68px);font-weight:400;letter-spacing:-.055em;line-height:1.2;transition:color .25s}.service summary:hover h3,.service[open] h3{color:var(--red)}.service-plus{font-size:36px;font-weight:400;text-align:center;transition:transform .35s}.service[open] .service-plus{transform:rotate(45deg)}.service-content{display:grid;grid-template-columns:40% 1fr;gap:8%;margin:0 5% 40px 10%}.service-tagline{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(24px,2.8vw,43px);letter-spacing:-.04em;line-height:1.2;max-width:310px}.service-content>div>p{font-size:13px;line-height:1.8;max-width:450px}.service-content .line-link{margin-top:24px;font-size:12px}.service-tags{display:block;font-size:8px;margin-top:24px;color:var(--muted)}.services-foot{display:flex;justify-content:space-between;align-items:center;padding-top:35px}.services-foot>.micro{font-size:8px;color:var(--muted)}

.about{padding-top:100px;padding-bottom:110px;background:#e3e2da}.about-layout{display:grid;grid-template-columns:43% 1fr;gap:12%;align-items:center;margin-top:60px}.portrait-wrap{position:relative;padding-bottom:26px}.portrait{width:100%;height:auto;aspect-ratio:3/3.8;object-fit:cover;object-position:center 27%;filter:saturate(.72)}.portrait-note{display:block;position:absolute;left:0;bottom:0;font-size:8px;color:var(--muted)}.portrait-stamp{position:absolute;right:-45px;bottom:70px;width:100px;height:100px;color:var(--red);transform:rotate(-13deg)}.about-copy .display{font-size:clamp(48px,5.6vw,96px)}.about-lead{font-size:24px!important;line-height:1.3!important;letter-spacing:-.045em;color:var(--ink)!important;margin-top:36px!important;margin-bottom:26px!important}.about-copy>p{font-size:13px;line-height:1.85;color:#55574e;max-width:390px;margin-top:18px}.about-copy .line-link{margin-top:30px;font-size:11px;gap:15px}.about-location{display:flex;align-items:center;gap:9px;font-size:8px;margin-top:34px;color:#55574e}.location-dot{width:6px;height:6px;border-radius:50%;background:var(--red)}.marquee{padding:27px 0;border-bottom:1px solid var(--line);overflow:hidden}.marquee>div{display:flex;align-items:center;gap:35px;width:max-content;animation:marquee 45s linear infinite}.marquee span{font-size:clamp(30px,4vw,70px);font-weight:600;letter-spacing:-.05em}.marquee .spark{width:38px;height:38px;color:var(--red);flex-shrink:0}@keyframes marquee{to{transform:translateX(-50%)}}

.faq{display:grid;grid-template-columns:40% 1fr;gap:10%;padding-top:100px;padding-bottom:100px}.faq-intro h2{font-size:clamp(38px,4.4vw,70px);font-weight:400;line-height:1.05;letter-spacing:-.055em;margin-top:35px}.faq-intro h2 em{color:var(--red)}.faq-intro>p{font-size:12px;line-height:1.6;color:var(--muted);margin-top:24px}.faq-intro .text-link{font-size:12px;margin-top:25px}.faq-list{padding-top:5px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{padding:26px 0;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:14px}.faq-list summary>span{font-size:23px;transition:transform .3s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:12px;line-height:1.8;padding-bottom:26px;color:#57594e;max-width:450px}

.contact{background:var(--red);padding-top:65px;padding-bottom:65px;color:var(--ink)}.contact-main{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #1b1c1950;padding-top:50px;padding-bottom:55px}.contact h2{font-size:clamp(65px,10.5vw,180px);font-weight:600;letter-spacing:-.07em;line-height:.99}.contact h2 em{color:var(--paper)}.contact-arrow{border:1px solid #1b1c1970;border-radius:50%;width:clamp(100px,13vw,220px);height:clamp(100px,13vw,220px);display:grid;place-items:center;transition:background .4s,color .4s,transform .5s var(--ease)}.contact-arrow .icon{width:45%;height:45%;stroke-width:.7}.contact-main:hover .contact-arrow{background:var(--ink);color:var(--paper);transform:rotate(45deg)}.contact-lower{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:40px}.contact-lower>div>p{font-size:13px;line-height:1.7}.contact-phone{font-size:clamp(24px,2.5vw,43px);letter-spacing:-.05em;display:inline-flex;align-items:center;gap:24px;margin-top:25px}.contact-phone .icon{width:22px;height:22px}.contact-lower>div>.micro{display:block;font-size:7px;margin-top:12px}.contact form>.micro{font-size:8px;margin-bottom:22px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact label{font-size:10px;display:block;line-height:1.8}.contact select,.contact input{width:100%;background:transparent;border:0;border-bottom:1px solid #1b1c1960;padding:10px 0;border-radius:0;font-size:12px;color:var(--ink);min-height:44px}.contact select{cursor:pointer}.contact input::placeholder{color:#3a251dbb}.contact select option{background:var(--paper)}.contact input:focus-visible,.contact select:focus-visible{outline-color:var(--ink)}.form-date{max-width:47%;margin-top:18px}.briefing-submit{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 0;border-bottom:1px solid var(--ink);font-size:12px;text-align:left;margin-top:15px}.briefing-submit .icon{width:19px;height:19px}.form-note{font-size:9px;line-height:1.6;margin-top:10px;color:#342d23}.footer{padding-top:45px;padding-bottom:28px;background:var(--ink);color:var(--paper);overflow:hidden}.footer-name{display:block;font-size:13.8vw;font-weight:600;line-height:1.05;letter-spacing:-.075em;white-space:nowrap}.footer-name>span{font-size:.1em;vertical-align:top;line-height:3.3;letter-spacing:0;padding-left:4px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:8px;margin-top:35px;color:#b8b9ac}.footer-bottom a{display:flex;align-items:center;gap:12px}.footer-bottom .icon{width:13px;height:13px}

/* Dialogs stay within the visual viewport, preserve focus and stop playback on close. */
dialog{border:0;padding:0;max-height:none;max-width:none}dialog::backdrop{background:#171815df;backdrop-filter:blur(8px)}.lightbox{background:#171815;color:var(--paper);width:100%;height:100%;height:100dvh;margin:0;overflow:hidden}.lightbox-top{position:absolute;top:22px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;z-index:2}.lightbox-top>.micro{color:#aaa}.lightbox-close{display:flex;align-items:center;gap:20px;font-size:9px;letter-spacing:.1em;min-height:44px}.lightbox-close>span{font-size:35px;line-height:1}.lightbox-media{height:calc(100% - 178px);margin:80px 14% 98px;display:flex;align-items:center;justify-content:center;position:relative}.lightbox-media>img,.lightbox-media>video{width:100%;height:100%;object-fit:contain}.lightbox-media video{background:#000;max-width:100%;max-height:100%}.lightbox-media .video-error{position:absolute;bottom:55px;left:15%;right:15%;background:var(--paper);color:var(--ink);padding:20px;text-align:center;font-size:12px}.lightbox-media .video-error a{text-decoration:underline;display:block;margin-top:10px}.lightbox-bottom{position:absolute;bottom:23px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:25px}.lightbox-bottom h2{font-size:20px;font-weight:400;letter-spacing:-.03em}.lightbox-caption{font-size:8px;color:#b8b9ac;margin-top:5px;max-width:650px}.lightbox-controls button{border-color:#616356}.lightbox-count{font-size:9px;min-width:55px;text-align:center}.message-dialog{background:var(--paper);color:var(--ink);width:min(540px,calc(100% - 32px));padding:45px;margin:auto;max-height:calc(100dvh - 32px);overflow:auto}.message-close{position:absolute;right:15px;top:12px;font-size:29px;min-width:44px;min-height:44px}.message-dialog>.micro{color:var(--red);font-size:8px}.message-dialog h2{font-size:43px;line-height:1.08;letter-spacing:-.055em;font-weight:400;margin-top:24px}.message-preview{white-space:pre-wrap;background:#e3e2d9;padding:20px;line-height:1.8;font-size:12px;margin:25px 0}.message-send{padding:18px 20px;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:space-between;font-size:12px}.message-dialog .form-note{color:var(--muted)}.noscript-note{padding:24px;background:var(--paper);color:var(--ink);font-size:13px}.noscript-note a{text-decoration:underline}.will-reveal{opacity:0;transform:translateY(45px);transition:opacity 1s var(--ease),transform 1s var(--ease)}.will-reveal.is-visible{opacity:1;transform:none}

@media(min-width:1800px){.photo-card{flex-basis:29%}.film-card{width:34svh}.hero{--frame-top:25.5vw}.hero-heading{padding-top:125px}}
@media(max-width:1100px){.desktop-nav{gap:26px}.desktop-nav .nav-contact{margin-left:0}.hero{--frame-top:32vw}.hero-subline{margin-top:19px}.hero-frame-bottom,.frame-top{font-size:7px}.manifesto-foot p{margin-right:7%}.photo-card{flex-basis:38%}.cinema-heading .section-title-row{width:37%}.film-window{left:46%}.film-track{gap:32px}.service-content{grid-template-columns:40% 1fr;gap:5%}.about-layout{gap:10%}.about-copy .display{font-size:5.8vw}.about-lead{font-size:22px!important}.about-copy>p{font-size:12px}.portrait-stamp{width:80px;height:80px;right:-30px}.faq{gap:7%}.work-section.is-grid .gallery-track{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  :root{--gutter:22px}html{scroll-padding-top:24px}.site-header{height:72px;gap:22px}.brand{font-size:33px}.header-role{font-size:8px}.desktop-nav{display:none}.menu-toggle{display:flex;align-items:center;gap:15px;margin-left:auto;font-size:11px;padding:12px 0 12px 12px;z-index:32}.menu-lines{width:22px;height:14px;border-top:1px solid;border-bottom:1px solid;position:relative}.menu-lines:after{content:'';position:absolute;left:0;right:0;top:6px;border-top:1px solid}.menu-toggle[aria-expanded=true] .menu-lines{border-bottom:0;transform:rotate(45deg);height:0}.menu-toggle[aria-expanded=true] .menu-lines:after{transform:rotate(90deg);top:-1px}.mobile-menu{display:flex;position:fixed;inset:72px 0 0;background:var(--paper);z-index:29;flex-direction:column;padding:40px var(--gutter);overflow:auto}.mobile-menu>a{font-size:clamp(34px,8vw,55px);letter-spacing:-.055em;padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.mobile-menu sup{font-size:10px;letter-spacing:.1em}.mobile-menu>.micro{margin-top:auto;padding-top:40px;color:var(--muted)}body.menu-open{overflow:hidden}.menu-open .site-header{position:fixed}.display{font-size:clamp(48px,10vw,74px)}.section-label{font-size:8px;gap:18px}.section-label>span:last-child{text-align:right}.section-title-row{gap:25px}.section-title-row>p{font-size:11px;line-height:1.65;max-width:200px}.hero{height:auto;--hero-progress:0!important}.hero-stage{height:auto;min-height:0;position:relative;overflow:hidden;padding-bottom:0}.hero-heading{padding:100px var(--gutter) 24px;transform:none;opacity:1}.hero-eyebrow{font-size:7px;margin-bottom:24px}.hero h1{font-size:15vw;line-height:.95;letter-spacing:-.085em}.hero-subline{font-size:9px;margin-top:17px}.hero-subline a{gap:10px}.hero-subline a span{font-size:16px}.hero-frame{position:relative;top:auto;left:auto;right:auto;bottom:auto;margin:0 var(--gutter);height:62svh;min-height:430px;max-height:650px}.hero-photo{object-position:44% 35%;transform:scale(1.01)}.frame-top,.hero-frame-bottom{left:17px;right:17px;font-size:6px;gap:14px}.frame-top{top:17px}.frame-top>span:last-child{display:none}.hero-frame-bottom{bottom:15px}.hero-frame-bottom>span:last-child{max-width:85px;text-align:right}.hero-caption{left:19px;right:19px;bottom:59px;display:block}.hero-caption p{font-size:clamp(38px,7vw,56px);line-height:1.05}.round-link{position:absolute;right:0;bottom:135px;gap:12px;flex-direction:column}.round-link>span:first-child{width:56px;height:56px}.round-link .micro{font-size:7px;text-align:center}.round-link .play-icon{width:20px;height:20px}.manifesto{padding-top:60px;padding-bottom:65px}.manifesto-layout{grid-template-columns:15% 1fr;gap:5%;margin-top:50px}.manifesto-layout>.spark{width:40px;height:40px;margin-top:4px}.manifesto h2{font-size:clamp(25px,4.7vw,37px);line-height:1.23;letter-spacing:-.045em}.manifesto-foot{margin-top:40px;align-items:start;gap:25px}.manifesto-foot>.micro{font-size:7px;max-width:105px}.manifesto-foot p{font-size:10px;margin:0}.work-section{padding-top:60px;padding-bottom:55px}.work-heading .section-title-row{margin-top:35px;margin-bottom:35px;align-items:flex-end}.work-heading .section-title-row>p{max-width:145px;font-size:10px;padding-bottom:4px}.gallery-toolbar{padding-top:14px;margin-bottom:25px;gap:14px}.filters{gap:19px}.filters button{font-size:10px;min-height:40px}.filters button sup{font-size:7px;margin-left:2px}.view-toggle{font-size:7px;gap:7px;padding:10px 0 10px 10px}.view-toggle .icon{width:15px;height:15px}.view-toggle span{max-width:42px;text-align:left;line-height:1.3}.gallery-track{gap:17px}.photo-card{flex-basis:73%}.photo-card:nth-child(3n+2){padding-top:38px}.photo-card:nth-child(3n+2) .photo-open{aspect-ratio:3/3.5}.photo-card figcaption{font-size:10px;gap:10px;margin-top:13px}.photo-action{width:35px;height:35px;opacity:1;transform:none;right:13px;bottom:13px}.photo-action .icon{width:16px;height:16px}.gallery-bottom{gap:20px;margin-top:25px}.gallery-hint{font-size:7px}.gallery-hint>span{margin-left:5px;font-size:14px}.gallery-progress{display:none}.gallery-arrows{gap:8px}.gallery-arrows .gallery-counter{font-size:8px;margin-right:4px}.gallery-arrows button{width:38px;height:38px;font-size:18px}.work-section.is-grid .gallery-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px}.work-section.is-grid figcaption{font-size:8px}.work-section.is-grid .photo-action{width:28px;height:28px;bottom:8px;right:8px}.work-section.is-grid .photo-action .icon{width:13px;height:13px}.work-section.is-grid .gallery-bottom{padding:0}
  .cinema{height:auto;--film-x:0px!important}.cinema-stage{height:auto;min-height:0;position:relative;overflow:hidden}.cinema-heading{padding-top:55px}.cinema-heading .section-label>.record-label{font-size:7px;max-width:145px;text-align:left}.cinema-heading .section-title-row{position:static;width:100%;display:flex;align-items:flex-end;margin-top:40px;margin-bottom:35px;gap:20px}.cinema .display{font-size:clamp(43px,8vw,64px);max-width:360px}.cinema-intro{font-size:10px;line-height:1.6;margin:0;max-width:135px;padding-bottom:4px}.cinema-intro>.micro{font-size:6px;margin-top:15px}.film-window{position:relative;top:auto;bottom:auto;left:auto;right:auto;overflow:auto;scrollbar-width:none;overscroll-behavior-x:contain;scroll-snap-type:x proximity}.film-window::-webkit-scrollbar{display:none}.film-track{height:auto;width:max-content;gap:22px;padding:0 var(--gutter);transform:none;align-items:start;will-change:auto}.film-card{width:65vw;max-width:360px;scroll-snap-align:center}.film-open{aspect-ratio:9/13.3}.film-play .micro{opacity:1;transform:none}.film-play .play-icon{width:23px;height:23px;padding:20px}.film-description h3{font-size:22px}.film-description p{font-size:11px}.film-description>.micro{font-size:7px;margin-top:12px}.cinema-bottom{position:static;padding-top:30px;padding-bottom:40px;gap:25px}.cinema-bottom>.micro{font-size:7px;max-width:130px}.film-arrows{gap:8px}.film-arrows button{width:38px;height:38px;font-size:18px}.film-counter{font-size:8px;min-width:48px}
  .services{padding-top:65px;padding-bottom:50px}.services .section-title-row{margin-top:36px;margin-bottom:40px}.services .section-title-row>p{max-width:150px;font-size:10px}.service summary{grid-template-columns:8% 1fr 30px;gap:12px;padding:25px 0}.service-index{font-size:8px}.service h3{font-size:clamp(30px,6vw,45px)}.service-plus{font-size:30px}.service-content{grid-template-columns:1fr;gap:22px;margin:0 4px 30px 12%}.service-tagline{font-size:26px;max-width:280px}.service-content>div>p{font-size:12px;line-height:1.8}.service-content .line-link{font-size:11px;margin-top:20px}.service-tags{font-size:7px;margin-top:20px}.services-foot{padding-top:28px;gap:25px}.services-foot>.micro{max-width:115px;font-size:7px}.services-foot>.text-link{font-size:10px;gap:12px}.about{padding-top:60px;padding-bottom:60px}.about-layout{grid-template-columns:1fr;gap:40px;margin-top:35px}.portrait-wrap{width:80%;max-width:420px}.portrait{aspect-ratio:3/3.6;object-position:center 28%}.portrait-stamp{right:-40px;bottom:45px;width:80px;height:80px}.portrait-note{font-size:7px}.about-copy{padding-left:13%}.about-copy .display{font-size:clamp(48px,9vw,68px)}.about-lead{font-size:23px!important;margin-top:28px!important;margin-bottom:20px!important}.about-copy>p{font-size:12px;max-width:430px}.about-copy .line-link{margin-top:25px;font-size:10px}.about-location{font-size:7px;margin-top:25px}.marquee{padding:20px 0}.marquee>div{gap:23px}.marquee span{font-size:35px}.marquee .spark{width:27px;height:27px}.faq{grid-template-columns:1fr;gap:35px;padding-top:60px;padding-bottom:60px}.faq-intro>.micro{font-size:8px}.faq-intro h2{font-size:46px;margin-top:28px}.faq-intro>p{font-size:11px;margin-top:20px}.faq-intro .text-link{margin-top:17px;font-size:11px}.faq-list summary{font-size:12px;padding:24px 0;gap:20px}.faq-list details>p{font-size:11px;padding-bottom:24px}.contact{padding-top:42px;padding-bottom:45px}.contact-main{padding-top:35px;padding-bottom:35px;gap:15px}.contact h2{font-size:clamp(45px,9.6vw,72px)}.contact-arrow{width:68px;height:68px;min-width:68px}.contact-lower{grid-template-columns:1fr;gap:40px;padding-top:30px}.contact-lower>div>p{font-size:12px}.contact-phone{font-size:30px;margin-top:20px}.contact-phone .icon{width:21px;height:21px}.contact-lower>div>.micro{font-size:7px}.form-row{gap:20px}.contact form>.micro{font-size:8px;margin-bottom:15px}.contact select,.contact input{font-size:12px}.contact label{font-size:10px}.briefing-submit{font-size:11px;min-height:50px}.form-note{font-size:9px}.footer{padding-top:30px;padding-bottom:23px}.footer-name{font-size:13.5vw;letter-spacing:-.08em}.footer-bottom{margin-top:25px;font-size:6px;gap:12px;flex-wrap:wrap}.footer-bottom .icon{width:11px;height:11px}.footer-bottom>span{flex-basis:100%;margin-bottom:5px}.footer-bottom>a:last-child{margin-left:auto}.lightbox-top{top:12px}.lightbox-top>.micro{font-size:7px}.lightbox-close{font-size:8px;gap:12px}.lightbox-media{height:calc(100% - 205px);margin:75px 12px 130px}.lightbox-bottom{bottom:20px;align-items:start;flex-direction:column;gap:20px}.lightbox-bottom h2{font-size:17px}.lightbox-caption{font-size:7px;max-width:80vw}.lightbox-controls{align-self:flex-end;gap:12px}.lightbox-controls button{width:38px;height:38px;font-size:19px}.lightbox-count{font-size:8px}.message-dialog{padding:35px 25px}.message-dialog h2{font-size:38px}.message-preview{font-size:11px;padding:16px}.will-reveal{transform:translateY(25px)}
}
@media(max-width:400px){.hero h1{font-size:14.9vw}.hero-eyebrow{font-size:6px}.hero-subline{font-size:8px}.hero-subline a{gap:6px}.hero-caption p{font-size:36px}.section-title-row{gap:17px}.work-heading .section-title-row>p{font-size:9px;max-width:118px}.filters{gap:14px}.filters button{font-size:9px}.view-toggle{font-size:6px;gap:5px}.gallery-hint{max-width:85px}.cinema .display{font-size:37px}.cinema-intro{font-size:9px;max-width:115px}.services .display{font-size:44px}.services .section-title-row>p{font-size:9px;max-width:115px}.service h3{font-size:29px}.contact h2{font-size:9.2vw}.contact-arrow{width:58px;height:58px;min-width:58px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.hero{height:auto;--hero-progress:0!important}.hero-stage{position:relative}.hero-heading{transform:none;opacity:1}.cinema{height:auto}.cinema-stage{height:auto;min-height:780px;position:relative}.film-window{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#a8aa9e var(--ink)}.film-track{transform:none;will-change:auto}.marquee>div{transform:none}.will-reveal{opacity:1;transform:none}.word{opacity:1!important}}

/* Keep supporting copy readable without compressing it beside large mobile titles. */
.form-row{row-gap:0}
.form-row label{align-self:end}
.hero-eyebrow>span:first-child,.message-dialog>.micro{color:#b52e1c}
.contact{--contact-ink:#080b07;color:var(--contact-ink)}
.contact input,.contact select,.contact .form-note{color:var(--contact-ink)}
.contact input::placeholder{color:var(--contact-ink);opacity:1}
.service[open] .service-content{animation:disclose .4s var(--ease)}
@keyframes disclose{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(min-width:761px) and (max-width:1100px){.hero{--frame-top:calc(13vw + 192px)}}
@media(min-width:761px) and (max-height:679px){.hero{height:auto}.hero-stage{position:relative}.cinema{height:auto}.cinema-stage{position:relative;height:730px}.film-window{overflow-x:auto;scrollbar-width:thin}.film-track{transform:none;will-change:auto}}
@media(max-width:760px){
  .section-title-row{display:block}.section-title-row>p{margin-top:22px;padding:0;font-size:12px;max-width:280px}.work-heading .section-title-row>p{font-size:11px;max-width:260px}.services .section-title-row>p{font-size:11px;max-width:280px}.cinema-heading .section-title-row{display:block}.cinema .display{font-size:clamp(48px,10vw,64px);max-width:100%}.cinema-intro{max-width:none;margin-top:25px;display:flex;justify-content:space-between;align-items:end;gap:20px;font-size:11px}.cinema-intro>.micro{font-size:8px;max-width:110px;margin:0}.contact input,.contact select{font-size:16px;min-height:49px}.contact label{font-size:11px}.form-row{row-gap:0}
  .hero-eyebrow,.frame-top,.hero-frame-bottom,.section-label,.manifesto-foot>.micro,.gallery-hint,.view-toggle,.portrait-note,.about-location,.cinema-heading .section-label>.record-label,.cinema-intro>.micro,.film-description>.micro,.cinema-bottom>.micro,.services-foot>.micro,.service-tags,.contact-lower>div>.micro,.footer-bottom{font-size:8px}.hero-eyebrow{letter-spacing:.04em}.frame-top{letter-spacing:.035em}.hero-frame-bottom{font-size:7px;letter-spacing:.025em}.hero-frame-bottom>span:last-child{max-width:95px}.footer-bottom{font-size:8px}.footer-bottom>span{margin-bottom:8px}.view-toggle{font-size:7px}.gallery-hint{max-width:100px}
}

/* Portrait opening: layered type, a real subject, and moving excerpts of the work. */
.portrait-hero{height:148svh;--hero-progress:0;--pointer-x:0;--pointer-y:0}
.portrait-hero .hero-stage{height:100svh;min-height:740px;background:var(--paper);isolation:isolate}
.hero-kicker{position:absolute;left:var(--gutter);right:var(--gutter);top:112px;display:flex;justify-content:space-between;z-index:8;font-size:9px}
.hero-kicker>span:first-child{color:#b52e1c}
.hero-name-layer,.hero-name-outline{position:absolute;top:160px;left:var(--gutter);right:var(--gutter);pointer-events:none;transform:translate3d(calc(var(--hero-progress)*-180px + var(--pointer-x)*-8px),calc(var(--hero-progress)*-70px),0);z-index:2}
.portrait-hero h1,.hero-name-outline{font-size:18.4vw;line-height:.82;letter-spacing:-.085em;font-weight:700;white-space:nowrap;margin:0}
.portrait-hero h1>span:not(.sr-only),.hero-name-outline>span{display:block}
.portrait-hero h1>span:nth-child(2),.hero-name-outline>span:nth-child(2){margin-left:7vw}
.hero-name-layer h1>span:not(.sr-only){animation:hero-type-enter 1.25s var(--ease) both;clip-path:inset(-10% -20% -20% -20%)}
.hero-name-layer h1>span:nth-child(2){animation-delay:.14s}
.hero-name-outline{color:transparent;-webkit-text-stroke:1px #eeede7b0;z-index:5;opacity:.6;animation:hero-outline-enter 1.6s var(--ease) both}
.hero-name-outline>span:first-child{opacity:0}
.hero-person{position:absolute;left:45%;right:-1%;bottom:0;height:calc(100% - 100px);z-index:4;transform:translate3d(calc(var(--pointer-x)*13px + var(--hero-progress)*110px),calc(var(--pointer-y)*8px + var(--hero-progress)*90px),0) scale(calc(1 - var(--hero-progress)*.07));transform-origin:bottom;opacity:calc(1 - var(--hero-progress)*.35)}
.hero-person img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:saturate(.55);animation:hero-person-enter 1.5s var(--ease) both}
.hero-focus-mark{position:absolute;left:51%;top:18%;width:39%;height:57%;z-index:1;border:1px solid #b7b7a659;transform:translate(calc(var(--pointer-x)*-5px),calc(var(--pointer-y)*-5px));border-radius:48% 48% 0 0}
.hero-focus-mark>span{position:absolute;left:-30px;top:22%;writing-mode:vertical-rl;font-size:8px;letter-spacing:.15em;color:var(--muted)}
.hero-focus-mark i:before,.hero-focus-mark i:after{content:'';position:absolute;left:50%;top:18%;width:25px;border-top:1px solid #b0b1a4}
.hero-focus-mark i:after{transform:rotate(90deg)}
.hero-orbit{position:absolute;display:block;z-index:7;will-change:transform;animation:hero-orbit-enter 1.3s .3s var(--ease) both}
.hero-orbit>img{width:100%;height:100%;object-fit:cover;transition:filter .5s,scale .6s var(--ease)}
.hero-orbit:hover>img{filter:saturate(1.1);scale:1.04}
.hero-orbit>.micro{position:absolute;bottom:-23px;left:0;white-space:nowrap;font-size:7px;letter-spacing:.07em}
.orbit-photo{width:clamp(100px,10.7vw,190px);aspect-ratio:3/4;left:36%;bottom:13%;transform:translate(calc(var(--pointer-x)*-17px + var(--hero-progress)*-220px),calc(var(--pointer-y)*-12px + var(--hero-progress)*80px)) rotate(-9deg);box-shadow:0 12px 35px #15160d22}
.orbit-film{width:clamp(90px,8.4vw,155px);aspect-ratio:9/14;right:3.3%;top:24%;transform:translate(calc(var(--pointer-x)*23px + var(--hero-progress)*200px),calc(var(--pointer-y)*12px + var(--hero-progress)*-120px)) rotate(8deg);background:var(--ink);box-shadow:0 12px 35px #15160d22}
.orbit-film>.micro{color:var(--ink)}
.orbit-film>span:not(.micro){position:absolute;inset:0;display:grid;place-items:center;color:var(--paper);z-index:2}
.orbit-film .play-icon{width:20px;height:20px}
.hero-introduction{position:absolute;left:var(--gutter);bottom:90px;z-index:7;transform:translateY(calc(var(--hero-progress)*80px));opacity:calc(1 - var(--hero-progress))}
.hero-introduction>p{font-size:clamp(22px,2.2vw,38px);line-height:1.15;letter-spacing:-.045em}
.hero-introduction>p>em{color:var(--red)}
.hero-introduction>.micro{display:block;margin-top:22px;font-size:8px}
.hero-explore{position:absolute;left:57%;bottom:64px;width:116px;height:116px;z-index:8;border-radius:50%;background:var(--red);color:#080b07;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;transform:translateY(calc(var(--hero-progress)*120px)) rotate(calc(var(--hero-progress)*30deg));box-shadow:0 6px 30px #0001;transition:background .35s,color .35s}
.hero-explore>.micro{font-size:8px;text-align:center}
.hero-explore .icon{width:26px;height:26px;transition:transform .5s var(--ease)}
.hero-explore:hover{background:var(--ink);color:var(--paper)}
.hero-explore:hover .icon{transform:rotate(45deg)}
.hero-signoff{position:absolute;left:var(--gutter);right:var(--gutter);bottom:24px;display:flex;justify-content:space-between;z-index:8;font-size:8px}
.hero-signoff>a{color:var(--paper);mix-blend-mode:difference}
@keyframes hero-type-enter{from{opacity:0;translate:0 90px;rotate:3deg}to{opacity:1;translate:0 0;rotate:0deg}}
@keyframes hero-person-enter{from{opacity:0;translate:0 70px;scale:1.08}to{opacity:1;translate:0 0;scale:1}}
@keyframes hero-orbit-enter{from{opacity:0;scale:.7}to{opacity:1;scale:1}}
@keyframes hero-outline-enter{from{opacity:0}to{opacity:.6}}

/* The former opening image now has its own expanding cinematic passage. */
.story-scene{height:165svh;position:relative;background:var(--ink);color:var(--paper);z-index:3;--story-progress:0}
.story-stage{height:100svh;min-height:650px;position:sticky;top:0;overflow:hidden}
.story-image-wrap{position:absolute;inset:0;clip-path:inset(calc(12%*(1 - var(--story-progress))) calc(16%*(1 - var(--story-progress))));overflow:hidden}
.story-image{width:100%;height:100%;object-fit:cover;object-position:50% 38%;transform:scale(calc(1.15 - var(--story-progress)*.15))}
.story-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0004,transparent 25%,#000b)}
.story-meta,.story-bottom{position:absolute;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;gap:25px;z-index:2;font-size:8px}
.story-meta{top:42px}.story-bottom{bottom:30px}
.story-stage h2{position:absolute;left:var(--gutter);bottom:16%;font-size:clamp(60px,8.5vw,150px);line-height:1.02;letter-spacing:-.06em;font-weight:600;z-index:2;transform:translate3d(calc((1 - var(--story-progress))*70px),calc((1 - var(--story-progress))*35px),0);opacity:calc(.35 + var(--story-progress)*.65)}
.story-stage h2>span,.story-stage h2>em{display:block}
.story-stage h2>em{color:#eadfd0}
.story-frame-corner{position:absolute;width:24px;height:24px;z-index:3;opacity:calc(1 - var(--story-progress));pointer-events:none}
.corner-a{top:14%;left:18%;border-top:1px solid;border-left:1px solid}.corner-b{bottom:14%;right:18%;border-bottom:1px solid;border-right:1px solid}
.manifesto{padding-top:75px;padding-bottom:75px}.manifesto-layout{margin-top:50px}.manifesto-foot{margin-top:40px}

/* The acervo is a periodic two-dimensional photographic space, not a carousel. */
.atlas-section{padding-bottom:0;overflow:visible;position:relative;z-index:3;background:var(--paper)}
.atlas-section .work-heading .section-title-row{margin-bottom:50px}
.atlas-section .display{font-size:clamp(55px,7vw,118px)}
.atlas-shell{position:relative;background:#e1e1d8;color:var(--ink);isolation:isolate}
.atlas-toolbar{position:relative;z-index:5;min-height:82px;border-top:1px solid #c1c2b5;border-bottom:1px solid #c1c2b5;padding:14px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:28px;background:#e1e1d8}
.atlas-modes{display:flex;gap:4px;flex-shrink:0;border:1px solid #b7b9a9;border-radius:2px;padding:3px}
.atlas-modes>button{font-size:11px;min-height:36px;padding:7px 14px;display:flex;align-items:center;gap:18px;transition:background .3s,color .3s}
.atlas-modes>button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.atlas-modes>button>span{font-size:16px}
.atlas-filters{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.atlas-filters>button{font-size:10px;padding:10px 0;position:relative;white-space:nowrap;min-height:36px}
.atlas-filters>button>sup{font-size:7px;margin-left:4px}
.atlas-filters>button[aria-pressed=true]:after{content:'';position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--ink)}
.atlas-expand{display:flex;align-items:center;gap:12px;white-space:nowrap;min-height:40px}
.atlas-expand>.micro{font-size:8px}
.atlas-expand>span:last-child{font-size:28px;line-height:1}
.atlas-viewport{position:relative;min-height:650px;overflow:hidden;isolation:isolate}
.is-exploring .atlas-viewport{height:76svh;min-height:590px;touch-action:none;cursor:grab}
.is-dragging .atlas-viewport{cursor:grabbing;user-select:none}
.atlas-world{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 28px;padding:40px var(--gutter)}
.is-exploring .atlas-world{display:block;position:absolute;inset:0;padding:0}
.atlas-tile{position:relative;min-width:0;z-index:1;transform-origin:0 0;will-change:transform;contain:layout style}
.is-exploring .atlas-tile{position:absolute;left:0;top:0}
.atlas-tile:hover,.atlas-tile:focus-within{z-index:4}
.atlas-card{position:relative;padding:0;display:block;width:100%;height:var(--tile-height,auto);aspect-ratio:3/4;overflow:hidden;background:#c3c4b6;cursor:inherit;isolation:isolate;transform:rotate(calc(var(--atlas-drift,0)*1deg));transition:box-shadow .4s}
.atlas-card>img{width:100%;height:100%;object-fit:cover;pointer-events:none;transition:scale .7s var(--ease),filter .7s}
.atlas-card:hover>img{scale:1.06;filter:saturate(1.06)}
.atlas-card:hover{box-shadow:0 14px 40px #1c201922}
.atlas-tile figcaption{display:flex;justify-content:space-between;gap:14px;align-items:start;font-size:10px;line-height:1.5;margin-top:12px}
.atlas-tile figcaption>.micro{font-size:7px;color:#515449}
.atlas-item-number{position:absolute;left:12px;bottom:10px;background:var(--paper);color:var(--ink);min-width:23px;padding:2px 5px;text-align:center;font-size:8px;z-index:3}
.atlas-play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;z-index:3;pointer-events:none}
.atlas-play>.play-icon{box-sizing:content-box;border:1px solid #ffffff9f;border-radius:50%;padding:17px;width:20px;height:20px;backdrop-filter:blur(3px)}
.atlas-duration{position:absolute;bottom:10px;right:12px;color:#fff;z-index:3;font-size:8px;text-shadow:0 1px 5px #000}
.atlas-intro{display:none;position:absolute;left:50%;top:50%;translate:-50% -50%;text-align:center;pointer-events:none;z-index:2;transition:opacity .6s,transform .9s var(--ease);width:360px}
.is-exploring .atlas-intro{display:block}.is-touched .atlas-intro{opacity:0;transform:scale(.88)}
.atlas-intro>.micro{font-size:8px;color:#52564b}
.atlas-intro>p{font-size:clamp(60px,6.3vw,100px);line-height:.95;letter-spacing:-.06em;margin-top:24px}
.atlas-intro>p>em{color:var(--red)}
.atlas-intro-hand{display:block;font-size:36px;margin-top:20px;animation:atlas-hint 3s ease-in-out infinite}
.atlas-intro-hand+.micro{display:block;margin-top:10px}
@keyframes atlas-hint{0%,100%{translate:-9px 0}50%{translate:9px 0}}
.atlas-cursor{position:absolute;left:0;top:0;width:0;height:0;z-index:10;pointer-events:none;opacity:0;transition:opacity .2s}
.atlas-cursor>span{width:64px;height:64px;translate:-50% -50%;display:grid;place-items:center;background:var(--paper);border-radius:50%;font-size:10px;font-weight:600;box-shadow:0 2px 30px #16190e20}
.atlas-bottom{position:relative;z-index:5;padding:15px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:100px;border-top:1px solid #bfc1b3;background:#e1e1d8}
.atlas-zoom{display:flex;align-items:center;gap:9px}
.atlas-zoom>button{width:36px;height:40px;font-size:23px;line-height:1}
.atlas-zoom input{width:100px;accent-color:var(--ink);height:36px;cursor:ew-resize;display:block}
.atlas-zoom>output{font-size:9px;width:44px}
.atlas-help{display:flex;flex-direction:column;gap:5px;font-size:8px;color:#52564b;text-align:center}
.atlas-count{color:var(--ink)}
.atlas-map{padding:0;position:relative;width:110px;flex-shrink:0}
.atlas-map svg{width:100%;height:66px;border:1px solid #abad9d;background:#d5d7c9}
.atlas-map>.micro{display:block;font-size:6px;letter-spacing:.1em;margin-top:5px;text-align:center}
.is-grid .atlas-viewport{height:auto;min-height:0;overflow:visible;cursor:default}
.is-grid .atlas-world{padding:40px var(--gutter);grid-template-columns:repeat(4,minmax(0,1fr))}
.is-grid .atlas-tile{position:relative!important;transform:none!important;width:auto!important;visibility:visible!important;will-change:auto}
.is-grid .atlas-card{height:auto;aspect-ratio:3/4;transform:none;cursor:zoom-in}
.is-grid .atlas-tile[data-kind=film] .atlas-card{aspect-ratio:3/4}
.is-grid .atlas-intro,.is-grid .atlas-cursor,.is-grid .atlas-zoom,.is-grid .atlas-map{display:none}
.is-grid .atlas-bottom{min-height:68px;justify-content:center}
.is-grid .atlas-help>span:last-child{display:none}
.atlas-dialog{inset:0;margin:0;width:100%;height:100%;height:100dvh;background:#e1e1d8;overflow:auto}
.is-immersive{min-height:100dvh;display:flex;flex-direction:column}
.is-immersive.is-exploring .atlas-viewport{flex:1;height:calc(100dvh - 185px);min-height:250px}
.is-immersive .atlas-toolbar{position:sticky;top:0}
.is-immersive .atlas-bottom{margin-top:auto}
.media-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;pointer-events:none;opacity:0;transition:opacity .5s}
.media-preview.is-playing{opacity:1}
.hero-orbit>.media-preview{z-index:1}
.film-open .media-preview{z-index:0}
.film-open:after{z-index:1}
.film-open .film-number,.film-open .film-play,.film-open .film-duration{z-index:2}
.film-description{transition:translate .5s var(--ease)}
.film-card:hover .film-description{translate:5px 0}
.lightbox-media{height:calc(100% - 250px);margin-bottom:170px}
.lightbox-bottom{bottom:100px}
.lightbox-thumbnails{position:absolute;left:var(--gutter);right:var(--gutter);bottom:16px;display:flex;justify-content:safe center;gap:8px;overflow-x:auto;padding:7px 4px;scrollbar-width:thin;scrollbar-color:#737969 transparent}
.lightbox-thumbnails>button{width:39px;height:51px;flex-shrink:0;padding:0;opacity:.45;position:relative;transition:opacity .3s,transform .3s;border:1px solid transparent}
.lightbox-thumbnails img{width:100%;height:100%;object-fit:cover}
.lightbox-thumbnails>button[aria-current=true]{opacity:1;border-color:var(--paper);transform:translateY(-3px)}
.lightbox-thumbnails>button:hover{opacity:1}
.lightbox-thumbnails .thumb-film{position:absolute;right:3px;bottom:2px;font-size:10px;text-shadow:0 1px 5px #000}
.services .display,.about .display,.faq-intro h2{overflow:clip}
.heading-reveal{opacity:0;translate:0 40px;clip-path:inset(0 0 100% 0);transition:opacity .9s var(--ease),translate 1.1s var(--ease),clip-path 1.1s var(--ease)}
.heading-reveal.is-visible{opacity:1;translate:0 0;clip-path:inset(-5% -10% -10% -10%)}
@media(hover:hover) and (pointer:fine){.is-exploring .atlas-viewport:hover .atlas-cursor{opacity:1}.is-exploring .atlas-viewport,.is-exploring .atlas-card{cursor:none}}
@media(min-width:1600px){.hero-name-layer,.hero-name-outline{top:18%}.hero-person{left:47%;right:1%}.portrait-hero h1,.hero-name-outline{font-size:18vw}.hero-introduction{bottom:110px}.hero-explore{bottom:88px;width:140px;height:140px}}
@media(max-width:1100px){.hero-name-layer,.hero-name-outline{top:175px}.hero-person{left:39%;right:-9%;height:80%}.portrait-hero h1,.hero-name-outline{font-size:19vw}.orbit-photo{left:34%;bottom:20%;width:105px}.orbit-film{right:4%;top:21%;width:90px}.hero-explore{left:58%;bottom:70px}.hero-introduction{bottom:95px}.atlas-toolbar{gap:16px}.atlas-filters{gap:14px}.atlas-modes>button{padding:6px 10px;gap:10px}.atlas-expand>.micro{display:none}.atlas-section .display{font-size:7.5vw}.atlas-viewport{min-height:580px}}
@media(max-width:760px){
  .portrait-hero{height:auto;--hero-progress:0!important}.portrait-hero .hero-stage{height:100svh;min-height:760px;max-height:1050px;position:relative;padding:0}
  .hero-kicker{top:100px;font-size:7px;gap:15px;letter-spacing:.04em}.hero-kicker>span:last-child{max-width:95px;text-align:right}
  .hero-name-layer,.hero-name-outline{top:156px;left:18px;right:18px;transform:none}
  .portrait-hero h1,.hero-name-outline{font-size:25vw;line-height:.88;letter-spacing:-.085em}
  .portrait-hero h1>span:nth-child(2),.hero-name-outline>span:nth-child(2){margin-left:0}
  .hero-person{left:2%;right:-15%;height:73%;bottom:0;transform:none;opacity:1}
  .hero-person img{object-position:center bottom;filter:saturate(.5)}
  .hero-name-outline{z-index:5;-webkit-text-stroke:.6px #eeede79c}
  .hero-focus-mark{left:20%;top:27%;width:73%;height:50%}
  .hero-focus-mark>span{left:-17px;font-size:7px}
  .hero-orbit>.micro{font-size:6px;bottom:-17px}
  .orbit-photo{left:7%;bottom:31%;width:82px;transform:rotate(-11deg)}
  .orbit-film{right:5%;top:17%;width:65px;transform:rotate(8deg)}
  .hero-introduction{left:var(--gutter);bottom:85px;transform:none;opacity:1;background:#eeede7ee;padding:12px 14px 13px;margin-left:-14px;z-index:7}
  .hero-introduction>p{font-size:23px}
  .hero-introduction>.micro{font-size:7px;margin-top:12px}
  .hero-explore{left:auto;right:18px;bottom:85px;width:90px;height:90px;transform:none}
  .hero-explore>.micro{font-size:7px}.hero-explore>.icon{width:23px;height:23px}
  .hero-signoff{bottom:22px;font-size:6px;align-items:flex-end;gap:24px}
  .hero-signoff>span{max-width:105px}.hero-signoff>a{max-width:100px;text-align:right}
  .story-scene{height:125svh}.story-stage{min-height:590px;height:85svh}
  .story-image-wrap{clip-path:inset(calc(5%*(1 - var(--story-progress))) calc(6%*(1 - var(--story-progress))))}
  .story-image{object-position:45% center}
  .story-meta{top:26px;font-size:7px}.story-meta>span:last-child{display:none}
  .story-bottom{bottom:25px;font-size:7px;gap:18px}.story-bottom>span:last-child{max-width:95px;text-align:right}
  .story-stage h2{font-size:clamp(42px,9.4vw,70px);left:22px;right:22px;bottom:18%;transform:translateY(calc((1 - var(--story-progress))*30px))}
  .corner-a{left:9%;top:9%}.corner-b{right:9%;bottom:9%}
  .manifesto{padding-top:55px;padding-bottom:55px}.manifesto-layout{margin-top:35px}.manifesto-foot{margin-top:35px}
  .atlas-section{padding-top:60px}.atlas-section .display{font-size:clamp(43px,9.7vw,70px)}
  .atlas-section .work-heading .section-title-row{margin-bottom:35px}.atlas-section .work-heading .section-title-row>p{font-size:11px}
  .atlas-toolbar{padding:12px var(--gutter) 0;display:grid;grid-template-columns:1fr auto;gap:8px 16px;min-height:110px}
  .atlas-modes{width:max-content;grid-column:1;grid-row:1}.atlas-modes>button{font-size:10px;gap:12px;padding:5px 10px;min-height:34px}
  .atlas-expand{grid-column:2;grid-row:1;justify-self:end;min-height:44px;gap:8px}
  .atlas-expand>.micro{display:block;font-size:6px;max-width:65px;white-space:normal;text-align:right;letter-spacing:.04em}.atlas-expand>span:last-child{font-size:26px}
  .atlas-filters{grid-column:1/-1;grid-row:2;flex-wrap:nowrap;overflow:auto;scrollbar-width:none;gap:20px;width:100%;padding-bottom:3px}
  .atlas-filters>button{font-size:9px;min-height:40px;flex-shrink:0}.atlas-filters>button>sup{font-size:6px;margin-left:2px}
  .is-exploring .atlas-viewport{height:67svh;min-height:490px;max-height:760px}
  .atlas-intro{display:none!important}.atlas-bottom{padding:12px 18px;min-height:100px;gap:14px;align-items:center}
  .atlas-zoom{gap:1px;flex-wrap:wrap;max-width:142px}.atlas-zoom>button{width:30px;height:38px;font-size:22px}
  .atlas-zoom input{width:65px;height:38px}.atlas-zoom>output{font-size:8px;width:100%;text-align:center;margin-top:-3px}
  .atlas-help{font-size:7px;line-height:1.6;max-width:95px;gap:4px}
  .atlas-map{width:62px}.atlas-map svg{height:49px}.atlas-map>.micro{font-size:5px;line-height:1.5;margin-top:4px}
  .atlas-tile figcaption{font-size:10px}.atlas-card .atlas-duration,.atlas-item-number{font-size:9px}
  .atlas-world,.is-grid .atlas-world{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px;padding:28px var(--gutter)}
  .is-grid .atlas-tile figcaption{font-size:8px;gap:9px}.is-grid .atlas-tile figcaption>.micro{font-size:6px}
  .is-grid .atlas-play>.play-icon{width:16px;height:16px;padding:12px}
  .is-grid .atlas-viewport{height:auto;min-height:0;max-height:none}
  .is-immersive.is-exploring .atlas-viewport{height:calc(100dvh - 220px);min-height:250px;max-height:none}
  .is-immersive .atlas-toolbar{min-height:110px}.atlas-cursor{display:none}
  .lightbox-media{height:calc(100% - 285px);margin:70px 10px 215px}.lightbox-bottom{bottom:100px;gap:14px}
  .lightbox-thumbnails{left:18px;right:18px;gap:6px;bottom:14px;justify-content:flex-start}
  .lightbox-thumbnails>button{width:37px;height:48px}.lightbox-caption{max-width:85vw}
  .heading-reveal{translate:0 25px}
}
@media(min-width:761px) and (max-height:679px){.portrait-hero{height:auto}.portrait-hero .hero-stage{height:780px;position:relative}.story-scene{height:auto}.story-stage{height:720px;position:relative}.story-image-wrap{clip-path:none}.story-stage h2{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.portrait-hero{height:auto;--hero-progress:0!important}.portrait-hero .hero-stage{position:relative}.hero-person,.hero-name-layer,.hero-name-outline,.hero-orbit{transform:none!important}.story-scene{height:auto}.story-stage{position:relative}.story-image-wrap{clip-path:none}.story-stage h2{transform:none;opacity:1}.heading-reveal{opacity:1;translate:none;clip-path:none}.atlas-intro-hand{animation:none}.atlas-tile{will-change:auto}.media-preview{display:none}}
@media(max-width:760px) and (max-height:600px){.is-exploring .atlas-viewport{height:55svh;min-height:280px}.is-immersive.is-exploring .atlas-viewport{min-height:150px}.portrait-hero .hero-stage{height:760px}}
