:root{--ink:#080808;--charcoal:#191919;--ivory:#f1ede5;--gold:#c6a66a;--muted:#a19f96;--line:#ffffff26;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--ivory);font-family:var(--sans);font-size:14px;line-height:1.7}::selection{background:var(--gold);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:wait;opacity:.6}img{max-width:100%}h1,h2,h3,p,figure{margin:0}h2,h3{font-family:var(--serif);font-weight:400;line-height:.98}h2{font-size:clamp(54px,6.7vw,112px);letter-spacing:-.035em}em{font-weight:400}p{color:var(--muted)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:6px}button{border-radius:0}a,button{touch-action:manipulation}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip:focus{position:fixed;left:20px;top:20px;z-index:100;background:var(--ivory);padding:15px;color:var(--ink)}.reading-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;z-index:40;pointer-events:none}.site-header{position:fixed;inset:0 0 auto;z-index:30;padding:24px 4.5vw;display:flex;justify-content:space-between;align-items:center;transition:background .3s,border-color .3s;border-bottom:1px solid transparent;background:linear-gradient(#080808a6,transparent)}.site-header.scrolled{background:#080808f5;border-color:var(--line)}.brand{display:flex;align-items:center;gap:13px;font-size:11px;letter-spacing:.15em;line-height:1.4}.brand img{width:55px;height:45px;object-fit:contain}.brand-small{display:block;font-size:7px;letter-spacing:.31em;color:var(--gold);margin-top:5px}nav{display:flex;gap:36px;align-items:center}nav a{font-size:10px;letter-spacing:.16em;text-transform:uppercase}nav a:hover{color:var(--gold)}.nav-book{border:1px solid #c6a66a77;padding:12px 23px}.nav-book span{margin-left:22px}.menu-toggle{display:none}.film{height:380svh;position:relative}.film-stage{height:100svh;min-height:580px;position:sticky;top:0;overflow:hidden;background:var(--ink)}.scene{position:absolute;inset:0;overflow:hidden}.scene-image{width:100%;height:100%;max-width:none;object-fit:cover;will-change:transform;transform:scale(1.02)}.scene-arrival{opacity:1}.scene-reveal{opacity:0}.scene-vignette{position:absolute;inset:0;background:linear-gradient(0deg,#080808 0%,transparent 30%,#08080822 70%,#08080866),linear-gradient(90deg,#08080855,transparent 40%,#08080833)}.reflection{position:absolute;inset:0;background:linear-gradient(110deg,transparent 40%,#c6a66a09 48%,transparent 55%);transform:translateX(-30%);pointer-events:none}.film-matte{position:absolute;inset:0;background:var(--ink);opacity:0;pointer-events:none}.film-topline{position:absolute;top:151px;left:5vw;right:5vw;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.2em;color:#c6c2b5}.arrival-title{position:absolute;left:10vw;top:50%;transform:translateY(-42%);will-change:transform,opacity}.eyebrow{font-size:9px;letter-spacing:.24em;color:var(--gold)}h1{position:relative;font-family:var(--serif);font-weight:400;font-size:clamp(100px,12.7vw,215px);line-height:.77;letter-spacing:-.055em;margin:32px 0 30px}h1 span{padding-left:8vw}h1 sup{font-family:var(--sans);font-size:11px;letter-spacing:0;vertical-align:top;display:inline-block;margin:14px 0 0 14px}.tagline{margin-left:8.5vw;font-size:14px;letter-spacing:.035em;color:var(--ivory)}.reveal-title{position:absolute;left:12vw;top:45%;transform:translateY(-25%);opacity:0}.reveal-title h2{font-size:clamp(80px,10vw,160px);margin:25px 0}.reveal-title>p:last-child{color:var(--ivory);font-size:13px}.film-bottom{position:absolute;bottom:38px;left:5vw;right:5vw;display:flex;justify-content:space-between;align-items:end;font-size:8px;letter-spacing:.18em;gap:25px}.scroll-cue{display:flex;align-items:center;gap:15px;min-height:44px}.scroll-line{width:36px;height:1px;background:var(--gold)}.scene-caption{text-align:center}.scene-caption>span{display:block;color:var(--ivory)}.scene-caption small{display:block;font-size:7px;letter-spacing:.14em;color:var(--muted);margin-top:8px}.film-count{font-size:10px;color:var(--muted)}.film-count b{color:var(--gold);font-weight:400;margin-right:14px}.frame-lines{position:absolute;inset:120px 3vw 105px;border-left:1px solid #f1ede515;border-right:1px solid #f1ede515;pointer-events:none}.section-pad{padding:95px 7vw 115px}.section-kicker{display:flex;justify-content:space-between;gap:25px;font-size:9px;letter-spacing:.18em;color:var(--gold);padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:85px}.section-kicker>span:last-child{color:var(--muted);font-size:8px}.studio{padding-top:125px}.studio-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:8vw;align-items:start}.indent{display:inline-block;margin-left:6vw}.studio-copy{padding-top:7px}.little-cross{display:block;font-size:25px;line-height:1;color:var(--gold);margin-bottom:30px}.lead{font-family:var(--serif);font-size:28px;line-height:1.45;color:var(--ivory);margin-bottom:25px}.studio-copy>p:not(.lead){font-size:12px;line-height:2;max-width:380px}.line-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid #c6a66a77;padding:16px 0;font-size:9px;letter-spacing:.17em;transition:color .2s;margin-top:25px}.line-link span{font-size:18px;transition:transform .3s}.line-link:hover{color:var(--gold)}.line-link:hover span{transform:translate(3px,-3px)}.studio-foot{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:90px;padding-top:22px;font-size:8px;letter-spacing:.14em;color:var(--muted)}.work{background:#111210;padding-top:85px}.work-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px;gap:30px}.work-heading>p{font-size:12px;padding-bottom:10px}.filters{display:flex;gap:26px;flex-wrap:wrap;margin-bottom:45px}.filters button{background:none;border:0;border-bottom:1px solid transparent;padding:10px 0;font-size:9px;letter-spacing:.1em;color:var(--muted);min-height:44px}.filters button[aria-pressed=true]{color:var(--ivory);border-color:var(--gold)}.filters button:hover{color:var(--gold)}.filters button span{font-size:7px;color:var(--gold);vertical-align:super;margin-left:5px}.gallery{display:grid;grid-template-columns:1.2fr .8fr;column-gap:7vw;row-gap:85px;align-items:start}.work-item:nth-child(3n+2){margin-top:130px}.work-item.wide{grid-column:1/-1}.work-item[hidden]{display:none}.photo-open{position:relative;width:100%;display:block;padding:0;border:0;background:var(--charcoal);overflow:hidden;text-align:left}.photo-open img{display:block;width:100%;height:650px;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.6,.2,1),filter .6s;filter:saturate(.87)}.work-item:nth-child(3n+2) img{height:510px}.work-item.wide img{height:570px;object-position:center 46%}.photo-open:hover img{transform:scale(1.035);filter:saturate(1)}.photo-plus{position:absolute;bottom:20px;right:20px;width:40px;height:40px;display:grid;place-items:center;border:1px solid #f1ede570;background:#08080866;font-size:22px}.work-item figcaption{display:flex;justify-content:space-between;align-items:start;padding-top:23px}.work-item h3{font-size:33px;letter-spacing:-.025em;margin-bottom:10px}.work-item figcaption span{font-size:8px;letter-spacing:.16em;color:var(--muted)}.work-item figcaption>span{color:var(--gold);padding-top:5px}.gallery.filtered{grid-template-columns:1fr 1fr;gap:50px}.gallery.filtered .work-item{margin-top:0;grid-column:auto}.gallery.filtered .work-item img{height:500px}.collection-end{text-align:center;padding:100px 0 0}.collection-end .little-cross{margin-bottom:22px}.collection-end p{font-family:var(--serif);font-size:29px;color:var(--ivory)}.expertise-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:7vw}.expertise-layout>div>p{margin-top:35px;font-size:12px;line-height:2}.expertise h2{font-size:clamp(55px,5.9vw,90px)}.service-list a{display:flex;align-items:start;gap:23px;padding:28px 0;border-bottom:1px solid var(--line)}.service-list a:first-child{padding-top:8px}.service-list a>span{font-size:8px;color:var(--gold);padding-top:10px}.service-list h3{font-size:38px;transition:color .2s}.service-list p{font-size:11px;margin-top:13px;max-width:310px}.service-list b{font-weight:400;font-size:21px;margin-left:auto;color:var(--gold);transition:transform .3s}.service-list a:hover h3{color:var(--gold)}.service-list a:hover b{transform:translate(3px,-3px)}.experience{background:#161713}.experience-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.experience-heading>p{font-size:12px}.process{list-style:none;padding:0;margin:75px 0 0;display:grid;grid-template-columns:repeat(5,1fr);gap:30px}.process li{border-top:1px solid #c6a66a66;padding-top:25px}.process li>span{font-size:8px;letter-spacing:.14em;color:var(--gold)}.process h3{font-size:30px;line-height:1.1;margin:26px 0 20px}.process p{font-size:11px;line-height:1.9}.booking-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:9vw}.booking-intro h2{font-size:clamp(56px,6.2vw,98px)}.booking-intro>p{font-size:13px;margin-top:30px}.phone{font-family:var(--serif);font-size:32px;display:block;margin-top:30px}.booking-intro .location{font-size:8px;letter-spacing:.19em;margin-top:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.field.full{grid-column:1/-1}label{display:block;font-size:8px;letter-spacing:.15em;color:var(--muted);margin-bottom:8px}label span{color:var(--gold)}input,select,textarea{width:100%;min-width:0;color:var(--ivory);background:transparent;border:0;border-bottom:1px solid #f1ede538;border-radius:0;padding:13px 0;outline:none;font-size:12px;min-height:46px;color-scheme:dark}input::placeholder,textarea::placeholder{color:#7f8078}input:focus,select:focus,textarea:focus{border-bottom-color:var(--gold)}select{padding-right:15px}select option{background:var(--charcoal);color:var(--ivory)}textarea{resize:vertical;min-height:100px}.form-note{font-size:10px;line-height:1.8;margin-top:20px}.submit{background:var(--ivory);border:1px solid var(--ivory);color:var(--ink);display:flex;width:100%;justify-content:space-between;padding:20px 23px;margin-top:30px;font-size:9px;letter-spacing:.15em;align-items:center;transition:background .3s}.submit>span:last-child{font-size:20px;line-height:1}.submit:hover{background:var(--gold);border-color:var(--gold)}.form-status{font-size:12px;margin-top:20px}.form-status.error{color:#e9b4a7}.form-status.success{color:var(--ivory)}.closing{position:relative;height:80svh;min-height:550px;overflow:hidden}.closing>img{width:100%;height:100%;object-fit:cover;object-position:center 47%;filter:brightness(.7)}.closing-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080808a8,transparent),linear-gradient(0deg,#080808,transparent 35%)}.closing-copy{position:absolute;top:24%;left:9vw}.closing-copy>p{font-family:var(--serif);font-size:clamp(60px,8vw,128px);line-height:.95;color:var(--ivory);letter-spacing:-.04em;margin-top:24px}.closing-label{position:absolute;bottom:35px;left:9vw;font-size:8px;letter-spacing:.2em;color:var(--gold)}.site-footer{padding:70px 7vw 28px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:65px}.footer-wordmark{font-family:var(--serif);font-size:clamp(26px,4.2vw,66px);letter-spacing:-.035em;line-height:1}.footer-wordmark>span{font-family:var(--sans);font-size:8px;letter-spacing:.65em;display:block;margin-top:15px}.footer-top>div{font-size:12px;line-height:2.2}.footer-top>div>span{display:block;font-size:8px;letter-spacing:.16em;color:var(--muted);margin-top:12px}.back-top{border:1px solid var(--line);height:48px;width:48px;display:grid;place-items:center;font-size:20px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:24px;border-top:1px solid var(--line);font-size:7px;letter-spacing:.14em;color:var(--muted)}.footer-bottom a{color:var(--gold)}dialog{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100%;max-height:none;border:0;background:#080808;color:var(--ivory);padding:20px 4vw;z-index:60}dialog::backdrop{background:#080808}dialog[open]{display:flex;flex-direction:column}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;min-height:55px}dialog button{background:none;border:0;padding:12px;color:var(--ivory);font-size:10px;letter-spacing:.12em;min-height:44px}#lightbox-close span{font-size:25px;vertical-align:middle;margin-left:15px}.lightbox-image-wrap{flex:1;min-height:0;display:grid;place-items:center;position:relative}.lightbox-image-wrap img{width:100%;height:100%;min-height:0;object-fit:contain;position:absolute;inset:0;touch-action:pan-y pinch-zoom}.lightbox-controls{display:flex;align-items:center;justify-content:space-between;min-height:65px;font-size:9px;color:var(--gold)}body.modal-open{overflow:hidden}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s,transform 1s}.js .reveal.visible{opacity:1;transform:none}.thank-you{min-height:100svh;padding:20vh 10vw;background:#111210}.thank-you h1{font-size:clamp(65px,10vw,130px);line-height:.95;margin:25px 0}.thank-you p{max-width:500px;margin-top:25px}
@media(min-width:1600px){.section-pad{padding-left:max(7vw,calc((100vw - 1500px)/2));padding-right:max(7vw,calc((100vw - 1500px)/2))}}
@media(max-width:1000px){.studio-layout{gap:5vw}.lead{font-size:24px}.photo-open img{height:520px}.work-item:nth-child(3n+2) img{height:420px}.work-item.wide img{height:460px}.process{grid-template-columns:repeat(6,1fr);gap:30px}.process li{grid-column:span 2}.process li:nth-child(n+4){grid-column:span 3}.expertise-layout{gap:4vw}.service-list h3{font-size:32px}.booking-layout{gap:6vw}.film-topline>span:last-child{display:none}}
@media(max-width:700px){html{scroll-padding-top:90px}.site-header{padding:15px 6vw}.brand{font-size:9px;gap:8px}.brand img{width:44px;height:38px}.brand-small{font-size:6px}.menu-toggle{display:flex;align-items:center;gap:18px;background:none;border:0;font-size:9px;letter-spacing:.15em;min-height:44px}.menu-toggle span{font-size:22px;color:var(--gold)}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#080808;padding:25px 7vw 35px;border-bottom:1px solid var(--line);gap:12px}nav.open{display:flex;flex-direction:column;align-items:stretch}nav a{padding:12px 0;font-size:12px}.nav-book{padding:12px 16px}.nav-book span{float:right}.film{height:260svh}.film-stage{min-height:540px}.frame-lines{inset:105px 4vw 125px}.film-topline{top:118px;left:8vw;font-size:7px}.arrival-title{left:8vw;right:5vw;top:47%;transform:translateY(-35%)}.eyebrow{font-size:7px;letter-spacing:.17em}h1{font-size:clamp(78px,20vw,140px);margin:30px 0;line-height:.83}h1 span{padding-left:3vw}h1 sup{font-size:8px;margin-left:5px}.tagline{font-size:11px;margin-left:3vw}.scene-image{object-position:50% center}.film-bottom{bottom:24px;left:8vw;right:8vw;flex-wrap:wrap;gap:16px}.scroll-cue{order:2;font-size:7px;gap:10px}.scroll-line{width:22px}.scene-caption{order:1;text-align:left;flex-basis:100%;font-size:7px}.scene-caption small{font-size:6px;letter-spacing:.07em}.film-count{order:3;margin-left:auto;font-size:8px}.reveal-title{left:8vw;right:8vw}.reveal-title h2{font-size:23vw}.section-pad{padding:70px 7vw 80px}.section-kicker{font-size:8px;margin-bottom:50px;padding-bottom:22px}.section-kicker>span:last-child{display:none}h2{font-size:clamp(48px,11vw,80px)}.studio-layout,.expertise-layout,.booking-layout{grid-template-columns:1fr;gap:45px}.studio-copy{padding-left:10vw}.lead{font-size:25px}.studio-copy>p:not(.lead){font-size:12px}.studio-foot{margin-top:55px;font-size:6px;gap:20px}.studio-foot span:last-child{text-align:right}.work-heading{display:block;margin-bottom:35px}.work-heading>p{margin-top:25px}.filters{gap:22px;margin-bottom:30px}.filters button{font-size:8px}.gallery{column-gap:4vw;row-gap:40px;grid-template-columns:1fr 1fr}.work-item:nth-child(3n+2){margin-top:70px}.photo-open img{height:330px}.work-item:nth-child(3n+2) img{height:260px}.work-item.wide img{height:380px}.photo-plus{width:28px;height:28px;bottom:10px;right:10px;font-size:17px}.work-item h3{font-size:25px;line-height:1.05}.work-item figcaption{padding-top:15px;gap:8px}.work-item figcaption span{font-size:6px;letter-spacing:.06em}.work-item figcaption>span{font-size:7px}.gallery.filtered{gap:35px 4vw}.gallery.filtered .work-item img{height:280px}.collection-end{padding-top:60px}.collection-end p{font-size:25px}.expertise h2,.booking-intro h2{font-size:clamp(50px,11vw,80px)}.service-list a{padding:25px 0}.service-list h3{font-size:34px}.service-list p{font-size:11px}.experience-heading{display:block}.experience-heading>p{margin-top:30px}.process{grid-template-columns:1fr;gap:28px;margin-top:45px}.process li,.process li:nth-child(n+4){grid-column:auto;display:grid;grid-template-columns:85px 1fr;column-gap:15px;padding-top:22px}.process li>span{grid-row:1/3;font-size:7px;padding-top:5px}.process h3{margin:0 0 13px;font-size:30px}.process p{font-size:12px}.booking-intro>p{margin-top:25px}.booking-layout{gap:55px}.form-grid{gap:26px 20px}input,select,textarea{font-size:16px}input::placeholder,textarea::placeholder{font-size:12px}label{font-size:7px}.form-note{font-size:9px}.closing{height:70svh;min-height:490px}.closing>img{object-position:40% center}.closing-copy{left:7vw;top:25%}.closing-copy>p{font-size:14vw}.closing-label{left:7vw;font-size:6px}.site-footer{padding:50px 7vw 25px}.footer-top{flex-wrap:wrap;align-items:start;gap:35px;padding-bottom:35px}.footer-wordmark{font-size:38px;flex-basis:75%}.back-top{order:2;margin-left:auto}.footer-top>div{order:3;width:100%}.footer-bottom{flex-wrap:wrap;font-size:6px;gap:16px}.footer-bottom>span:nth-child(2){display:none}.footer-bottom>a{margin-left:auto}.lightbox-bar{font-size:9px}.lightbox-controls button span{display:none}dialog{padding:12px 4vw}.thank-you{padding-top:22vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.film{height:100svh}.film-stage{position:relative}.scene-image{transform:none!important;will-change:auto}.js .reveal{opacity:1;transform:none}.scroll-cue{display:none}.film-count{display:none}}
