@font-face{font-family:GrenzeGotisch;src:url('/assets/fonts/grenze-gotisch-bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Barlow;src:url('/assets/fonts/barlow-condensed-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Barlow;src:url('/assets/fonts/barlow-condensed-medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Barlow;src:url('/assets/fonts/barlow-condensed-semibold.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--ink:#100c0b;--ivory:#eadfca;--muted:#c1b6a5;--gold:#ad905e;--line:#6c593a;--red:#cc7564;--paper:#211613;--display:GrenzeGotisch,Georgia,serif;--text:Barlow,'Arial Narrow',Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#685953 url('/assets/brand/night-texture-fast.webp') repeat;background-blend-mode:multiply;color:var(--ivory);font-family:var(--text);font-size:20px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--ivory);outline-offset:6px}img{max-width:100%;height:auto;display:block}figure,p,h1,h2,h3{margin:0}p+p{margin-top:1em}h1,h2{font-weight:700}h3{font-weight:500}::selection{background:#744537;color:var(--ivory)}[hidden]{display:none!important}.shell{width:calc(100% - 48px);max-width:1500px;margin-inline:auto}.eyebrow{font-size:14px;font-weight:500;letter-spacing:.27em;text-transform:uppercase;color:var(--gold);line-height:1.5}.red{color:var(--red)}.skip-link{position:absolute;left:20px;top:-100px;background:var(--ivory);color:var(--ink);padding:14px;z-index:100}.skip-link:focus{top:8px}.site-header{position:relative;padding-top:32px;margin-bottom:28px;z-index:10}.desktop-nav{height:56px;border-block:1px solid var(--gold);display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center}.nav-side{display:flex;justify-content:space-evenly;gap:24px}.nav-side a{font-size:16px;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;padding:15px 0}.nav-side a:hover,.nav-side a[aria-current]{color:var(--gold)}.brand{display:flex;gap:34px;justify-content:center;align-items:center;font-size:13px;letter-spacing:.4em;text-transform:uppercase;white-space:nowrap}.brand img{width:104px;height:104px;background:var(--ink);border-radius:50%;box-shadow:0 0 0 3px var(--ink)}.mobile-nav,.mobile-menu{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:56px;padding:14px 28px;background:var(--ivory);color:var(--ink);border:1px solid var(--ivory);font-size:16px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;line-height:1.4;transition:background .15s,color .15s}.button:hover{background:var(--gold);border-color:var(--gold)}.button span{font-size:24px;line-height:1}.text-link{display:inline-block;font-size:19px;letter-spacing:.065em;border-bottom:1px solid var(--red);padding-block:10px 5px}.text-link:hover{color:var(--gold)}
.hero{position:relative;height:min(95vw,1220px);min-height:800px;margin-bottom:24px;isolation:isolate}.hero-title{position:absolute;left:3.5%;top:3%;z-index:4;width:59%;pointer-events:none}.hero-title .eyebrow{margin-bottom:18px}.hero h1{font-family:var(--display);font-size:clamp(110px,12.6vw,196px);line-height:.88;letter-spacing:-.04em;text-wrap:balance;max-width:840px}.hero-portrait{position:absolute;left:63.7%;top:0;width:29%;height:87%;border:0;z-index:1}.hero-portrait img{width:100%;height:100%;object-fit:contain;object-position:50% 0;filter:none}.hero-portrait figcaption{position:absolute;left:calc(100% + 16px);top:8%;width:50px;font-size:13px;letter-spacing:.2em;text-transform:uppercase;line-height:1.75;color:var(--muted);border-top:1px solid var(--gold);padding-top:24px}.hero-detail{position:absolute;left:10.2%;top:32%;width:25.5%;height:34%;z-index:2;border:0}.hero-detail img{width:100%;height:100%;object-fit:contain;object-position:50% 0;filter:none}.hero-detail figcaption{position:absolute;right:calc(100% + 18px);top:14%;width:55px;color:var(--muted);font-size:12px;letter-spacing:.18em;line-height:1.7;text-transform:uppercase;border-left:1px solid var(--gold);padding:140px 0 0 0}.hero-hand{position:absolute;left:31%;top:-1%;width:52%;height:100%;z-index:3;mix-blend-mode:lighten;pointer-events:none}.hero-hand img{width:100%;height:100%;object-fit:contain;object-position:50% 0}.hero-intro{position:absolute;left:3.5%;bottom:1.5%;width:36%;z-index:5}.hero-intro h2{font-family:var(--text);font-size:clamp(27px,3vw,45px);font-weight:500;line-height:1.25;letter-spacing:.05em;text-transform:uppercase;max-width:520px}.hero-intro p{font-size:21px;color:var(--muted);max-width:350px;margin-block:16px 24px;line-height:1.5}.hero-intro .button{padding-inline:24px;font-size:15px;gap:18px;white-space:nowrap}.hero-intro .text-link{display:table;margin-top:6px}.hero-margin{position:absolute;right:1%;bottom:11%;font-size:13px;letter-spacing:.25em;text-transform:uppercase;width:50px;color:var(--red)}.practice-band{border-block:1px solid var(--gold);padding:30px 3.5% 38px;display:flex;align-items:center;justify-content:space-between;gap:35px}.practice-band h2{font-family:var(--text);font-size:clamp(30px,3.6vw,53px);font-weight:400;letter-spacing:.045em;line-height:1.3;text-transform:uppercase;margin-top:10px}.practice-band .text-link{border:none;font-size:15px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);white-space:nowrap}.mobile-break{display:none}
.selected-work,.process-preview,.service-examples{padding:100px 3.5%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:45px}.section-heading h2,.artist-text h2,.enquiry-invitation h2{font-family:var(--display);font-size:clamp(50px,5.8vw,88px);line-height:1.05;letter-spacing:-.02em}.section-heading .eyebrow{margin-bottom:16px}.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.work-grid img{width:100%;height:350px;object-fit:cover}.selected-work .work-card{min-width:0}.selected-work .work-card figcaption>span:last-child{min-width:0}.work-card:nth-child(even){margin-top:60px}.work-card img{filter:brightness(.9);transition:filter .2s}.work-card:hover img{filter:brightness(1)}.work-card figcaption{display:flex;gap:16px;padding-top:17px;font-size:22px;line-height:1.2}.work-index{font-size:13px;color:var(--gold);padding-top:5px}.work-card small{display:block;font-size:13px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:10px}.style-links{display:flex;gap:60px;border-top:1px solid var(--line);margin-top:50px;padding-top:24px}.style-links a{font-size:24px;display:flex;gap:50px}.style-links a:hover{color:var(--gold)}.artist-preview{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:40px 9% 100px;border-bottom:1px solid var(--line);align-items:center}.artist-image img{width:100%;height:520px;object-fit:cover;filter:grayscale(1)}.photo-credit{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-top:15px}.artist-text .eyebrow{margin-bottom:20px}.artist-text p:not(.eyebrow){color:var(--muted);font-size:23px;margin-top:24px}.artist-text .text-link{margin-top:20px}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;list-style:none;padding:0;margin-top:50px}.process-steps li{border-top:1px solid var(--gold);padding-top:26px}.process-steps span{color:var(--gold);font-size:15px}.process-steps h3{font-size:30px;line-height:1.2;margin:16px 0}.process-steps p{color:var(--muted);font-size:22px;max-width:350px}.enquiry-invitation{text-align:center;padding:95px 25px 110px;border-block:1px solid var(--line)}.enquiry-invitation h2{font-size:clamp(70px,8vw,130px);margin:18px 0}.enquiry-invitation>p:not(.eyebrow){max-width:610px;margin:0 auto;color:var(--muted);font-size:24px}.enquiry-invitation .button{margin-top:34px}.site-footer{padding:60px 3.5% 22px}.footer-main{display:grid;grid-template-columns:.8fr 1.2fr .7fr;gap:70px;align-items:center}.footer-brand{display:flex;align-items:center;gap:25px}.footer-brand span{font-family:var(--display);font-size:34px}.footer-main p{font-size:19px;color:var(--muted)}.footer-main .eyebrow{color:var(--gold);font-size:13px;margin-bottom:10px}.footer-main a:not(.footer-brand){font-size:19px}.footer-main a:hover{color:var(--gold)}.footer-links{display:flex;flex-direction:column;gap:5px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:45px;padding-top:20px;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.1em}
.page-intro{padding:80px 3.5% 65px}.page-intro h1{font-family:var(--display);font-size:clamp(70px,9vw,145px);line-height:1.05;letter-spacing:-.035em;max-width:1100px;margin:20px 0 26px}.lead{font-size:27px;max-width:720px;color:var(--muted);line-height:1.5}.editorial{padding:15px 9% 90px;display:grid;grid-template-columns:minmax(0,1fr);gap:70px}.editorial:has(.editorial-image){grid-template-columns:1fr 1.1fr;align-items:start;gap:9%}.editorial-image{position:sticky;top:30px}.editorial-image img{width:100%;max-height:650px;object-fit:cover}.editorial-image figcaption{font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:15px}.copy-section{max-width:760px;margin-bottom:60px}.copy-section h2{font-family:var(--text);font-weight:500;font-size:36px;line-height:1.2;margin:10px 0 22px}.copy-section p:not(.eyebrow){color:var(--muted);font-size:23px;line-height:1.6}.copy-section:last-child{margin-bottom:0}.work-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.service-examples{border-top:1px solid var(--line)}.service-examples figcaption{padding:18px 0}.service-examples h3{font-size:27px}.service-examples p{font-size:21px;color:var(--muted)}.service-examples>p{margin-top:25px}.service-examples>p a{text-decoration:underline;text-underline-offset:5px}
.gallery{padding:0 3.5% 80px}.filters{display:flex;gap:38px;padding-bottom:24px;border-bottom:1px solid var(--gold);flex-wrap:wrap}.filters a{font-size:21px;letter-spacing:.06em;padding:8px 0;color:var(--muted);min-height:44px}.filters a[aria-current],.filters a:hover{color:var(--ivory);border-bottom:2px solid var(--red)}.gallery-count{color:var(--muted);font-size:16px;letter-spacing:.06em;padding:22px 0 36px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 30px}.gallery-item{scroll-margin-top:25px}.gallery-item img{width:100%;height:370px;object-fit:cover}.lightbox-trigger{position:relative;display:block;overflow:hidden}.image-open{position:absolute;bottom:0;right:0;padding:8px 13px;background:var(--ink);font-size:14px;letter-spacing:.1em;opacity:0;transition:opacity .2s}.lightbox-trigger:hover .image-open,.lightbox-trigger:focus .image-open{opacity:1}.gallery-item h2{font-family:var(--text);font-size:27px;font-weight:500;line-height:1.2;margin:20px 0 7px}.gallery-item figcaption>span{font-size:13px;color:var(--gold);letter-spacing:.14em;text-transform:uppercase}.gallery-item figcaption>p{font-size:18px;color:var(--muted);margin-top:12px;line-height:1.4}.lightbox{color:var(--ivory);background:var(--ink);border:1px solid var(--gold);max-width:1100px;width:95vw;max-height:95dvh;padding:50px 24px 20px}.lightbox::backdrop{background:#080605ed}.lightbox-close{position:absolute;top:12px;right:18px;font-family:var(--text);font-size:17px;letter-spacing:.1em;background:transparent;border:none;color:var(--ivory);min-height:32px;min-width:60px}.lightbox-body{display:grid;grid-template-columns:1fr 270px;gap:35px;align-items:center}.lightbox-body>img{width:100%;max-height:70dvh;object-fit:contain}.lightbox-caption h2{font-size:34px;font-family:var(--display);line-height:1.1;margin-bottom:18px}.lightbox-caption p{color:var(--muted);font-size:20px}.lightbox-controls{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px;margin-top:18px}.lightbox-controls button{border:0;background:transparent;color:var(--ivory);padding:10px;font-size:20px}.lightbox-controls span{font-size:15px;color:var(--muted)}
.booking-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:9%;padding:0 7% 90px;align-items:start}.booking-aside{position:sticky;top:30px}.booking-aside img{width:100%;height:400px;object-fit:cover;object-position:20% 50%;filter:brightness(.8);margin-bottom:35px}.booking-aside h2{font-family:var(--display);font-size:50px;line-height:1.1;margin:14px 0 22px}.booking-aside p:not(.eyebrow){color:var(--muted);font-size:22px;margin-bottom:25px}.booking-aside>a{display:table;font-size:20px}.booking-aside .text-link{margin-top:20px}.review-notice{border-left:2px solid var(--gold);padding:16px 20px;background:var(--paper);font-size:18px;margin-bottom:35px}.review-notice strong{font-size:14px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}.review-notice p{margin-top:7px;color:var(--muted)}.review-notice a{text-decoration:underline}label{display:block;margin:28px 0 10px;font-size:22px}label>span:not(.checkbox span){color:var(--muted);font-size:17px}input,select,textarea{width:100%;border:1px solid var(--line);background:#120d0c;color:var(--ivory);padding:13px 15px;border-radius:0;min-height:52px}input:focus,textarea:focus,select:focus{border-color:var(--gold)}textarea{resize:vertical}input::placeholder{color:#918778}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.field-help{font-size:17px;color:var(--muted);margin-bottom:12px}.checkbox{display:flex;align-items:flex-start;gap:15px;margin-top:28px;font-size:19px}.checkbox input{width:20px;height:20px;min-height:0;margin:5px 0 0;accent-color:var(--gold);flex-shrink:0}.checkbox a{border-bottom:1px solid var(--gold)}.checkbox span{font-size:19px;color:var(--muted)}input[type=file]{font-size:17px;padding:10px}input[type=file]::file-selector-button{background:var(--paper);color:var(--ivory);font:inherit;border:1px solid var(--line);padding:8px 12px;margin-right:15px}.honey{position:absolute;left:-9999px;max-height:0;overflow:hidden}.file-list{list-style:none;padding:0;font-size:17px;color:var(--muted)}.form-errors{border:1px solid var(--red);padding:20px;background:var(--paper);margin-bottom:20px}.form-success{border-top:1px solid var(--gold);padding-top:30px}.form-success h2{font-family:var(--display);font-size:55px;line-height:1.1;margin:20px 0}.form-success p:not(.eyebrow){font-size:23px;color:var(--muted)}.submit-status{font-size:18px;margin-top:14px;color:var(--muted)}.faqs{padding:70px 9% 90px;border-top:1px solid var(--line)}.faqs h2{font-family:var(--display);font-size:60px;line-height:1.1;margin:20px 0 35px}.faqs details{border-top:1px solid var(--line);padding:20px 0;max-width:950px}.faqs details:last-child{border-bottom:1px solid var(--line)}.faqs summary{font-size:25px;cursor:pointer;padding:5px 0}.faqs details>p{color:var(--muted);max-width:780px;padding:15px 25px 5px;font-size:22px}
@media(min-width:1600px){.hero{height:1160px}.hero h1{font-size:194px}.hero-detail{top:33%}.hero-intro{bottom:2%}.hero-intro h2{font-size:43px}}
@media(max-width:1050px) and (min-width:701px){.shell{width:calc(100% - 36px)}.brand{gap:13px;letter-spacing:.22em}.brand img{width:88px;height:88px}.nav-side{gap:16px}.nav-side a{font-size:13px}.hero{min-height:830px}.hero h1{font-size:12.8vw}.hero-intro{width:43%}.hero-intro h2{font-size:30px}.hero-intro .button{font-size:13px;padding-inline:14px;gap:12px}.hero-detail{top:29%;height:31%;width:28%}.hero-portrait{height:76%}.hero-portrait figcaption{display:none}.hero-hand{left:32%;width:56%;height:89%}.hero-intro{bottom:0}.hero-margin{bottom:19%}.selected-work,.process-preview{padding-block:65px}.work-grid{gap:18px}.work-grid img{height:270px}.artist-preview{padding-inline:6%;gap:7%}.artist-image img{height:410px}.footer-main{gap:30px;grid-template-columns:1fr 1.1fr .7fr}.footer-brand{gap:12px}.footer-brand img{width:80px;height:80px}.footer-brand span{font-size:29px}.footer-main p,.footer-main a:not(.footer-brand){font-size:16px}.gallery-item img{height:290px}.booking-layout{gap:6%;padding-inline:4%}.booking-aside>a{font-size:17px;overflow-wrap:anywhere}.editorial{padding-inline:5%;gap:6%}}
@media(max-width:700px){body{font-size:19px}.shell{width:calc(100% - 32px)}.site-header{padding-top:10px;margin-bottom:20px}.desktop-nav{display:none}.mobile-nav{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--gold);padding-bottom:12px}.mobile-brand{display:flex;align-items:center;gap:13px}.mobile-brand span{font-size:12px;letter-spacing:.15em;text-transform:uppercase;line-height:1.4}.mobile-brand strong{font-weight:500;font-size:16px}.mobile-brand img{width:64px;height:64px}.menu-button{background:transparent;border:1px solid var(--line);color:var(--ivory);font-size:15px;letter-spacing:.14em;text-transform:uppercase;padding:10px 15px;min-height:44px}.mobile-menu{display:grid;border-bottom:1px solid var(--line);padding:15px 0}.mobile-menu a{padding:12px 8px;font-size:24px}.hero{min-height:0;height:auto;display:grid;grid-template-columns:1fr 1.1fr;gap:16px;position:relative;margin-bottom:30px}.hero-title{position:relative;left:auto;top:auto;width:auto;grid-column:1/-1;padding:18px 6px 8px;pointer-events:auto}.hero-title .eyebrow{font-size:11px;margin-bottom:19px}.hero h1{font-size:clamp(74px,19.5vw,126px);line-height:.9;letter-spacing:-.045em;max-width:600px;text-wrap:initial}.hero-portrait{position:relative;left:auto;top:auto;width:auto;height:320px;grid-column:2;grid-row:2;border:0;margin-top:22px}.hero-portrait img{object-position:50% 0}.hero-portrait figcaption{display:none}.hero-detail{display:none}.hero-hand{position:relative;left:auto;top:auto;width:120%;height:390px;grid-column:1;grid-row:2;justify-self:center;margin-top:-12px;z-index:3}.hero-hand img{object-fit:contain}.hero-intro{position:relative;left:auto;bottom:auto;width:auto;grid-column:1/-1;margin:55px 6px 0}.hero-intro h2{font-size:28px;line-height:1.2}.hero-intro p{font-size:21px;max-width:340px;margin:18px 0 23px}.hero-intro .button{font-size:13px;gap:15px;padding-inline:20px;width:100%;max-width:365px;white-space:normal}.hero-intro .text-link{font-size:17px;margin-top:10px}.hero-margin{display:none}.practice-band{padding:25px 6px;display:block}.practice-band .eyebrow{font-size:11px}.practice-band h2{font-size:31px;line-height:1.2;margin-top:15px}.practice-band .text-link{font-size:12px;letter-spacing:.1em;margin-top:13px}.mobile-break{display:block}.eyebrow{font-size:12px;letter-spacing:.2em}.selected-work,.process-preview,.service-examples{padding:65px 6px}.section-heading{display:block;margin-bottom:28px}.section-heading h2,.artist-text h2{font-size:48px;line-height:1.05}.section-heading .text-link{margin-top:16px;font-size:17px}.work-grid{grid-template-columns:1fr 1fr;gap:24px 16px}.selected-work .work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-grid img{height:235px}.work-card:nth-child(even){margin-top:30px}.work-card figcaption{font-size:21px;gap:8px}.work-index{font-size:11px}.work-card small{font-size:10px;line-height:1.5;letter-spacing:.04em}.style-links{display:block;margin-top:30px;padding-top:8px}.style-links a{justify-content:space-between;border-bottom:1px solid var(--line);padding:16px 0;font-size:22px}.artist-preview{display:block;padding:5px 6px 65px}.artist-image img{height:400px;object-position:50% 30%}.photo-credit{font-size:11px}.artist-text{margin-top:35px}.artist-text p:not(.eyebrow){font-size:22px;margin-top:20px}.process-steps{display:block;margin-top:30px}.process-steps li{padding-top:20px;margin-bottom:30px}.process-steps h3{font-size:28px;margin:8px 0 12px}.process-steps p{font-size:21px}.enquiry-invitation{padding:65px 6px}.enquiry-invitation h2{font-size:76px}.enquiry-invitation>p:not(.eyebrow){font-size:22px;max-width:350px}.enquiry-invitation .button{font-size:13px;padding-inline:20px;gap:14px}.footer-main{grid-template-columns:1fr;gap:32px}.site-footer{padding:40px 6px 20px}.footer-brand img{width:90px;height:90px}.footer-brand span{font-size:36px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:9px}.footer-main p,.footer-main a:not(.footer-brand){font-size:18px}.footer-bottom{display:block;font-size:11px;line-height:1.8;margin-top:32px}.footer-bottom span{display:block}.page-intro{padding:35px 6px 40px}.page-intro h1{font-size:69px;margin:17px 0 22px;line-height:.98}.lead{font-size:23px}.editorial,.editorial:has(.editorial-image){display:block;padding:0 6px 65px}.editorial-image{position:static;margin-bottom:40px}.editorial-image img{max-height:550px}.copy-section{margin-bottom:42px}.copy-section h2{font-size:31px}.copy-section p:not(.eyebrow){font-size:21px;line-height:1.55}.gallery{padding:0 6px 60px}.filters{gap:10px 23px;padding-bottom:14px}.filters a{font-size:18px;padding:8px 0}.gallery-count{font-size:14px;padding:20px 0 24px}.gallery-grid{grid-template-columns:1fr 1fr;gap:34px 17px}.gallery-item img{height:220px}.gallery-item h2{font-size:23px;margin:14px 0 8px}.gallery-item figcaption>span{font-size:10px;line-height:1.4;letter-spacing:.08em;display:block}.gallery-item figcaption>p{font-size:16px}.image-open{opacity:1;font-size:10px;padding:5px 8px}.lightbox{padding:48px 14px 14px;width:calc(100vw - 18px);max-height:95dvh}.lightbox-body{display:block}.lightbox-body>img{max-height:53dvh}.lightbox-caption{padding-top:18px}.lightbox-caption h2{font-size:30px;margin-bottom:8px}.lightbox-caption p{font-size:18px;line-height:1.3}.lightbox-controls button{font-size:18px}.work-grid.three{grid-template-columns:1fr;gap:30px}.work-grid.three img{height:360px}.booking-layout{display:block;padding:0 6px 65px}.booking-aside{position:static;margin-top:50px;border-top:1px solid var(--line);padding-top:40px}.booking-aside img{height:350px}.form-row{grid-template-columns:1fr;gap:0}.form-row label{margin-top:24px}label{font-size:21px}.checkbox span{font-size:18px}.booking-layout .button{width:100%}.faqs{padding:50px 6px 65px}.faqs h2{font-size:48px}.faqs summary{font-size:23px;line-height:1.3}.faqs details>p{padding-inline:5px;font-size:21px}.form-success h2{font-size:47px}.review-notice{font-size:17px}}
@media(max-width:370px){.hero-hand{height:360px}.hero-portrait{height:290px}.hero h1{font-size:19vw}.hero-intro .button{font-size:12px;padding-inline:14px}.gallery-item img{height:185px}.work-grid img{height:210px}.work-card figcaption{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Public library edits change presentation; original files and lightbox URLs stay intact. */
.work-image-frame{position:relative;overflow:hidden;max-width:100%}
.booking-aside .booking-photo{margin-bottom:35px}.booking-aside .booking-photo>img{margin-bottom:0}

.hero h1 span{display:block}.hero h1 .last-line{white-space:nowrap}
.desktop-nav{grid-template-rows:54px}.brand{height:54px}.hero-hand{mix-blend-mode:normal}
.hero-photo{position:relative;width:100%;height:100%;overflow:hidden}.hero-portrait img,.hero-detail img{transform:none}
@media(min-width:1051px){.hero-hand{left:34%;width:50%;height:97%}.hero-intro p{max-width:325px}}
@media(min-width:701px) and (max-width:1050px){.hero-hand{left:37%;width:54%;height:86%}.hero-margin{display:none}}
@media(max-width:700px){.hero-detail figcaption{display:none}.hero-intro{margin-top:35px}}
.consent-dialog{background:var(--ink);color:var(--ivory);border:1px solid var(--gold);max-width:650px;width:calc(100vw - 32px);padding:35px}.consent-dialog::backdrop{background:#080605df}.consent-dialog h2{font-family:var(--display);font-size:48px;line-height:1.1;margin-bottom:20px}.consent-dialog p{font-size:20px;color:var(--muted)}.consent-dialog a{text-decoration:underline}.consent-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:25px}.consent-actions .button{font-size:13px;padding-inline:20px}.privacy-choices{background:none;border:0;color:var(--ivory);padding:0;text-align:left;font:inherit;cursor:pointer}

.lightbox-body>video{display:block;max-width:100%;width:100%;max-height:78dvh;background:var(--ink)}@media(max-width:700px){.lightbox-body>video{max-height:53dvh}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Hero-only original-pixel cutouts keep the work crisp without photo frames. */
.hero-location{max-width:48ch;letter-spacing:.18em}
.hero-photo{mask-image:linear-gradient(to bottom,transparent 0,#000 3%,#000 97%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 3%,#000 97%,transparent 100%)}

/* Original-image viewer: fixed stage keeps the controls reachable while zooming. */
body:has(.lightbox[open]){overflow:hidden}
.lightbox{padding:16px 20px;width:min(1280px,96vw);max-width:1280px;height:min(900px,94dvh);max-height:94dvh;overflow:hidden}
.lightbox[open]{display:block}
.lightbox-frame{display:flex;flex-direction:column;gap:16px;height:100%;min-height:0}
.lightbox-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex-shrink:0}
.lightbox-toolbar button{font:inherit;font-size:16px;line-height:1.2;border:1px solid var(--line);background:transparent;color:var(--ivory);min-height:44px;padding:8px 13px;cursor:pointer}
.lightbox-toolbar button:disabled,.lightbox-controls button:disabled{opacity:.4;cursor:default}
.lightbox-toolbar button:focus-visible,.lightbox-stage:focus-visible,.lightbox-controls button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.lightbox-zoom-controls{display:flex;gap:5px;align-items:center;margin-right:auto}
.lightbox-zoom-controls[hidden]{display:none}
.lightbox-zoom-controls button[data-zoom="in"],.lightbox-zoom-controls button[data-zoom="out"]{font-size:24px;min-width:44px;padding:3px 10px}
.lightbox-zoom{min-width:46px;text-align:center;font-size:14px;color:var(--gold);font-variant-numeric:tabular-nums}
.lightbox .lightbox-close{position:static;letter-spacing:normal;min-height:44px;margin-left:auto}
.lightbox .lightbox-body{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;align-items:stretch;flex:1;min-height:0;overflow:hidden}
.lightbox-stage{position:relative;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#070909;touch-action:none;overscroll-behavior:contain;user-select:none}
.lightbox-stage img{display:block;max-width:none;max-height:none;object-fit:contain;flex-shrink:0;transform-origin:center;will-change:transform}
.lightbox-stage img[hidden],.lightbox-stage video[hidden]{display:none}
.lightbox-stage video{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;touch-action:auto}
.lightbox-stage.is-video{touch-action:auto}
.lightbox-stage.is-zoomed{cursor:grab}.lightbox-stage.is-zoomed.is-dragging{cursor:grabbing}
.lightbox-loading{position:absolute;inset:auto 18px;text-align:center;font-size:17px;color:var(--muted);pointer-events:none}
.lightbox-loading:empty{display:none}
.lightbox-caption{overflow:auto;min-height:0;align-self:center;max-height:100%;padding:8px 0}
.lightbox-caption small{display:block;font-size:14px;line-height:1.55;color:var(--muted);margin-top:22px}
.lightbox .lightbox-controls{flex-shrink:0;padding-top:10px;margin:0;min-height:52px}
.lightbox .lightbox-controls button{min-height:44px}
.lightbox-frame:fullscreen,.lightbox.is-expanded{width:100vw;max-width:none;height:100dvh;max-height:none;border:0;margin:0;padding:max(14px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--ink);color:var(--ivory)}
.lightbox.is-expanded{position:fixed;inset:0}
@media(max-width:700px){
  .lightbox{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;padding:12px;gap:10px;margin:0}
  .lightbox .lightbox-body{display:flex;flex-direction:column;gap:12px}
  .lightbox-stage{flex:1;min-height:120px}
  .lightbox-caption{align-self:stretch;flex-shrink:0;max-height:22dvh;padding:0}
  .lightbox-caption h2{font-size:27px;margin-bottom:5px}.lightbox-caption p{font-size:17px}
  .lightbox-caption small{font-size:12px;margin-top:8px}
  .lightbox-toolbar{gap:6px}.lightbox-toolbar button{padding:8px;font-size:14px}
  .lightbox-zoom-controls{gap:2px}.lightbox-zoom{min-width:40px}
  .lightbox-toolbar button[data-zoom="reset"]{font-size:13px}
}
@media(max-height:500px) and (orientation:landscape){.lightbox .lightbox-body{display:grid;grid-template-columns:minmax(0,1fr) 200px}.lightbox-caption{max-height:100%;overflow:auto}.lightbox-caption small{display:none}}
