@font-face{font-family:Poppins;src:url('assets/fonts/poppins-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url('assets/fonts/poppins-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:Poppins;src:url('assets/fonts/poppins-latin-600-normal.woff2') format('woff2');font-weight:600 900;font-display:swap}
:root{--pink:#e8c8e3;--ink:#352b34;--deep:#2b222b;--white:#fff;--paper:#fcf8fb;--muted:#75616f;--line:rgba(90,54,78,.16);--inkline:rgba(90,54,78,.2);--pad:clamp(24px,5vw,84px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;color:var(--ink);background:var(--white);font-family:Poppins,sans-serif;font-size:14px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,summary{font:inherit}button{cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid #885379;outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.12;letter-spacing:-.055em}h2{font-size:clamp(34px,4.2vw,64px)}h3{font-size:28px}p{line-height:1.85}button{border:0}::selection{background:#e8c8e3;color:var(--ink)}.icon{display:inline-block;width:20px;height:20px;flex-shrink:0;background:currentColor;mask:var(--icon) center/contain no-repeat;-webkit-mask:var(--icon) center/contain no-repeat}.reverse{transform:rotate(180deg)}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:500;line-height:1.6;display:block}.line{display:inline-block;width:25px;height:1px;background:currentColor;margin-right:10px;vertical-align:middle}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;z-index:100;background:white;padding:12px;top:-100px}.skip-link:focus{top:10px}.header{height:100px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--ink);color:var(--white);border-bottom:1px solid var(--line);position:relative;z-index:20}.wordmark{font-size:34px;font-weight:500;letter-spacing:.08em;line-height:1;display:inline-flex;flex-direction:column;align-items:center}.wordmark span{font-size:8px;letter-spacing:.63em;margin-top:7px;margin-left:5px}.desktop-nav{display:flex;gap:34px;margin-left:80px}.desktop-nav a{font-size:12px;position:relative;padding:9px 0;color:#51404d}.desktop-nav a:after{content:'';height:2px;background:white;position:absolute;left:0;right:100%;bottom:0;transition:right .3s}.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}.header-book{display:flex;gap:28px;align-items:center;font-size:11px;padding:13px 21px;background:white;color:var(--ink)}.header-book .icon{width:17px}.menu-toggle{display:none;background:transparent;color:white;padding:10px}.mobile-nav{position:absolute;z-index:19;top:80px;left:0;right:0;padding:25px var(--pad);background:var(--ink);color:white;border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:10px 0;font-size:23px}.grid-bg{background-color:var(--ink);background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:100px 100px;background-blend-mode:soft-light}.hero{position:relative;min-height:750px;height:calc(100svh - 100px);max-height:980px;color:white;overflow:hidden;padding:0 var(--pad)}.hero:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 58% 43%,transparent,#e8c8e326 70%)}.hero-topline{position:relative;padding-top:28px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em;color:#685160}.status-dot{display:inline-block;width:5px;height:5px;background:#765569;border-radius:50%;margin-right:8px;vertical-align:2px}.hero-copy{position:relative;z-index:4;width:65%;padding-top:clamp(98px,13vh,160px);pointer-events:none}.hero-copy a{pointer-events:auto}.hero-copy .eyebrow{color:#685160;margin-bottom:28px;font-size:9px}.hero h1{font-size:clamp(55px,6.1vw,96px);letter-spacing:-.066em;line-height:1.05;font-weight:500}.hero-line{display:block;overflow:hidden;padding-bottom:6px}.hero-line>span{display:block}.hero-description{font-size:13px;color:#66505f;margin-top:25px;padding-left:18px;border-left:1px solid #9c7e93;line-height:1.95}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 24px;font-size:11px;font-weight:500;position:relative;transition:background .3s,box-shadow .3s;will-change:transform}.button.light{background:white;color:var(--ink)}.button:hover{background:#fcf4fa;box-shadow:0 4px 25px #0002}.button .icon{width:19px}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:11px;padding:7px 0;border-bottom:1px solid #ffffff5c}.text-link .icon{width:16px;transition:transform .3s}.text-link:hover .icon{transform:translate(3px,-3px)}.dark-link{border-color:var(--inkline)}.hero-proof{display:flex;align-items:center;gap:12px;margin-top:42px;font-size:9px;color:#685160}.tiny-stars{font-size:12px;letter-spacing:3px}.hero-proof>span:last-child{display:flex;align-items:center;gap:9px}.hero-proof i{width:2px;height:2px;border-radius:50%;background:#685160}.hero-art{position:absolute;top:78px;right:var(--pad);width:43%;height:calc(100% - 145px);max-height:730px}.hero-photo{position:absolute;right:25px;top:0;width:78%;height:87%;overflow:hidden}.hero-photo img{object-position:50% 32%;filter:contrast(.95);opacity:.83}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#352b34c9,transparent 50%)}.photo-caption{position:absolute;bottom:18px;left:20px;right:20px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:.13em;z-index:1}.vertical-note{position:absolute;left:6%;top:25px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.27em;color:#705666}.studio-focus{position:absolute;right:-15px;top:43px;background:#f9eff8f5;border:1px solid var(--line);padding:20px 22px;width:173px;z-index:3;box-shadow:0 10px 35px #0002}.studio-focus>.eyebrow{font-size:8px;color:#705666;margin-bottom:13px}.studio-focus>span:not(.eyebrow):not(.focus-star){font-size:13px;display:block;padding:8px 0;border-top:1px solid var(--line)}.studio-focus>.focus-star{position:absolute;right:20px;bottom:-28px;font-size:42px;line-height:1;color:#885e7c}.detail-photo{position:absolute;width:48%;height:38%;left:-10%;bottom:3%;border:6px solid var(--ink);z-index:2;background:var(--ink);overflow:hidden}.detail-photo img{object-fit:cover;object-position:10% 52%;transform:scale(2.7);transform-origin:12% 52%;filter:brightness(.8)}.detail-photo>span{position:absolute;bottom:0;left:0;right:0;background:#352b34ed;padding:12px 10px;font-size:6px;letter-spacing:.13em;text-align:center}.hero-seal{position:absolute;bottom:4%;right:7%;width:110px;height:110px;border:1px solid #99758e66;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;z-index:3;background:var(--ink)}.hero-seal>span:not(.seal-star){font-size:6px;letter-spacing:.17em}.seal-star{font-size:39px;line-height:1.4}.hero-bottom{position:absolute;bottom:24px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.15em;color:#705666}.hero-bottom a{display:flex;gap:10px;align-items:center}.hero-bottom .icon{width:12px}.marquee-wrap{background:#faf3f9;border-bottom:1px solid var(--inkline);overflow:hidden;padding:23px 0}.marquee{display:flex;width:max-content;animation:marquee 45s linear infinite}.marquee>div{display:flex;align-items:center;gap:44px;padding-right:44px;font-size:13px;font-weight:500;letter-spacing:.03em;white-space:nowrap}.marquee span{font-size:28px;line-height:1}.marquee-wrap:hover .marquee{animation-play-state:paused}.section{padding:108px var(--pad)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:58px}.section-heading .eyebrow{margin-bottom:26px;color:#776170}.section-heading>p,.section-heading>div>p{max-width:320px;color:#705e6a;font-size:12px;line-height:1.9}.service-overview{border-top:1px solid var(--inkline)}.service-row{position:relative;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--inkline);padding:30px 0;transition:padding .3s,background .3s}.service-row:hover{padding-left:18px;padding-right:18px;background:var(--paper)}.row-number{font-size:11px;color:#806a79;width:40px}.service-row h3{font-size:clamp(23px,2.6vw,38px);margin-bottom:8px;letter-spacing:-.045em}.service-row p{font-size:11px;color:#705e6a}.service-tag{font-size:8px;letter-spacing:.12em;margin-left:auto;color:#776170}.round-arrow{margin-left:30px;width:24px;height:24px}.service-menu{margin-top:28px;border-bottom:1px solid var(--inkline)}summary{list-style:none;display:flex;align-items:center;gap:22px;cursor:pointer;padding:20px 0;font-size:13px}summary::-webkit-details-marker{display:none}.menu-count{font-size:8px;color:#776170;letter-spacing:.12em}.plus{margin-left:auto;font-size:23px;line-height:1;font-weight:400;transition:transform .3s}details[open]>summary .plus{transform:rotate(45deg)}.menu-content{padding-bottom:30px}.filter-bar{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 25px}.filter-bar button{background:white;border:1px solid var(--inkline);padding:9px 14px;font-size:10px;border-radius:0}.filter-bar button.selected{background:var(--ink);color:white}.service-results{display:grid;grid-template-columns:repeat(2,1fr);gap:0 30px}.menu-service{border-top:1px solid var(--inkline);padding:22px 0}.menu-service h4{font-size:14px;margin:0 0 7px;font-weight:500}.menu-service>p{font-size:11px;color:#705e6a;margin:8px 0 16px;white-space:pre-line}.menu-service footer{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:10px}.menu-service footer a{text-decoration:underline;text-underline-offset:4px}.small-note{display:block;font-size:9px;color:#776170;margin-top:20px}.work-section{background:var(--paper);padding:100px 0 38px;overflow:hidden}.work-section>.section-heading,.work-bottom{margin-left:var(--pad);margin-right:var(--pad)}.work-heading-right{display:flex;gap:45px;align-items:flex-end}.gallery-controls{display:flex;gap:8px}.circle-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--inkline);border-radius:50%;background:transparent;transition:background .2s}.circle-button:hover{background:#f5e6f1}.circle-button .icon{width:18px;height:18px}.work-track{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--pad) 30px;scrollbar-width:none;overscroll-behavior-x:contain}.work-track::-webkit-scrollbar{display:none}.work-card{flex:0 0 37%;padding:0;background:transparent;text-align:left;scroll-snap-align:center}.work-image{height:460px;overflow:hidden;position:relative;background:#f2e7ef}.work-image>img{transition:transform .85s cubic-bezier(.2,.7,.3,1),filter .8s}.work-card.portrait img{object-position:center 38%}.work-card.detail img{transform:scale(2);transform-origin:14% 55%;object-position:center 52%}.work-card.artwork img{object-fit:contain;background:white;padding:20px}.work-card:hover .work-image>img{transform:scale(1.04)}.work-card.detail:hover .work-image>img{transform:scale(2.1)}.image-view{position:absolute;bottom:20px;right:20px;left:20px;background:#352b34e8;color:white;display:flex;justify-content:space-between;align-items:center;padding:13px 17px;font-size:11px;transform:translateY(80px);opacity:0;transition:transform .4s,opacity .4s}.work-card:hover .image-view,.work-card:focus-visible .image-view{transform:translateY(0);opacity:1}.work-label{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:18px;font-size:14px}.work-label small{font-size:7px;letter-spacing:.13em;color:#776170}.work-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--inkline);padding-top:24px}.work-bottom>span{font-size:8px;letter-spacing:.12em;color:#776170}.work-bottom .text-link{border-color:var(--inkline)}.artist-story{display:grid;grid-template-columns:1fr 1fr;gap:11%}.artist-visual{align-self:start;position:sticky;top:60px}.artist-image{height:610px;background:var(--ink);overflow:hidden}.artist-image img{filter:contrast(.95);object-position:47% 30%;opacity:.94}.artist-caption{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.1em;margin-top:17px;color:#776170}.artist-copy>.eyebrow{color:#776170;margin-bottom:24px}.split-name{font-size:clamp(38px,5.2vw,78px);line-height:1.07}.split-name>span{display:block}.name-period{color:#9b718f}.split-name .letter-wrap{display:inline-block;overflow:hidden;vertical-align:bottom}.split-name .letter{display:inline-block;transition:transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i)*35ms)}.js-motion .split-name:not(.is-visible) .letter{transform:translateY(110%)}.story-chapter{padding-top:65px;padding-bottom:60px;border-bottom:1px solid var(--inkline)}.story-chapter:last-child{border:0;padding-bottom:0}.chapter-label{font-size:8px;letter-spacing:.13em;color:#776170;display:block;margin-bottom:18px}.story-chapter h3{font-size:31px;line-height:1.2}.story-chapter p{font-size:12px;color:#705e6a;margin-top:24px}.story-chapter .text-link{margin-top:25px}.signature-section{position:relative;padding:100px var(--pad);display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center;color:white;overflow:hidden;isolation:isolate}.signature-copy{position:relative;z-index:2}.signature-copy .eyebrow{color:#705666;margin-bottom:30px}.signature-copy h2{font-size:clamp(40px,5.1vw,75px);line-height:1.12}.outline-text{color:transparent;-webkit-text-stroke:1px #76516b}.signature-copy p{margin:25px 0 23px;color:#66505f;font-size:12px}.signature-art{position:relative;aspect-ratio:1/1.14;max-width:460px;margin:15px 0;z-index:1;background:white;transform:rotate(4deg);overflow:hidden}.signature-art img{object-fit:cover;filter:contrast(.98)}.signature-note{position:absolute;bottom:0;left:0;right:0;text-align:center;color:var(--ink);font-size:7px;letter-spacing:.14em;background:white;padding:15px}.mask-on-scroll{clip-path:inset(0 0 0 0);transition:clip-path 1.5s cubic-bezier(.16,1,.3,1),transform 1.5s cubic-bezier(.16,1,.3,1)}.js-motion .mask-on-scroll:not(.is-visible){clip-path:inset(100% 0 0 0);transform:rotate(0) translateY(50px)}.ink-spread{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.ink-spread:before,.ink-spread:after{content:'';position:absolute;width:480px;height:450px;border-radius:48% 52% 64% 36%/56% 38% 62% 44%;background:#b77da5;opacity:.38;filter:url(#ink-bleed);transform:scale(.1);transition:transform 3.5s cubic-bezier(.15,.5,.2,1);left:18%;top:8%}.ink-spread:after{left:auto;right:-100px;top:40%;width:600px;height:560px;transition-delay:.2s;background:#fff;opacity:.2}.ink-active .ink-spread:before{transform:scale(2) rotate(40deg)}.ink-active .ink-spread:after{transform:scale(1.8) rotate(-30deg)}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%}.process-display{position:sticky;top:55px;align-self:start;padding:36px 40px 28px;background:var(--paper);display:flex;flex-direction:column;height:425px}.process-overline{font-size:9px;letter-spacing:.14em;color:#776170}.process-number{font-size:200px;font-weight:400;line-height:1.35;letter-spacing:-.09em;color:var(--ink);font-variant-numeric:tabular-nums}.process-progress{height:2px;background:#e8c8e3;margin-bottom:22px}.process-progress span{display:block;height:100%;background:var(--ink);width:33.33%;transition:width .6s}.process-current{font-size:12px}.process-step{padding:40px 0 80px;border-top:1px solid var(--inkline);opacity:.45;transition:opacity .6s;min-height:350px}.process-step.is-current{opacity:1}.process-step .eyebrow{margin-bottom:24px}.process-step h3{font-size:31px}.process-step p{color:#705e6a;font-size:12px;margin-top:20px}.reviews-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#faf3f9;padding:70px var(--pad);align-items:center}.reviews-intro>.eyebrow{color:#776170;margin-bottom:25px}.reviews-intro h2{font-size:clamp(33px,3.7vw,54px)}.reviews-intro .text-link{margin-top:32px}.review-window{height:350px;overflow:hidden;position:relative;text-align:center;mask-image:linear-gradient(transparent,black 12%,black 88%,transparent)}.review-track{animation:review-carousel 22s linear infinite}.review-window:hover .review-track,.review-window:focus .review-track{animation-play-state:paused}.review-slide{height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.rating-number{font-size:91px;line-height:1;letter-spacing:-.07em}.rating-number span{font-size:22px;color:#776170;letter-spacing:-.03em;margin-left:9px}.review-slide>p:not(.rating-number){font-size:13px;color:#705e6a;line-height:1.6}.review-slide .eyebrow{font-size:8px;color:#776170}.booking-section{padding:100px var(--pad) 65px;color:white;position:relative;overflow:hidden;isolation:isolate}.booking-section>.eyebrow{margin-bottom:34px;color:#705666}.booking-section h2{font-size:clamp(55px,8.4vw,125px);line-height:1.04}.booking-bottom{margin-top:65px;display:flex;justify-content:space-between;align-items:center;gap:25px}.booking-bottom>p{font-size:12px;color:#66505f}.booking-button{padding:22px 28px;font-size:13px;gap:65px}.booking-aside{font-size:8px;letter-spacing:.15em;color:#705666;line-height:2.1;text-align:right}.contact-section{padding-bottom:75px}.contact-grid{display:grid;grid-template-columns:.9fr 1fr 1.2fr;gap:50px}.contact-grid .eyebrow{font-size:8px;color:#776170;margin-bottom:22px}.contact-grid p,.contact-link{font-size:13px;line-height:1.9}.contact-grid .text-link{margin-top:20px;font-size:10px}.contact-link{display:block;width:max-content;max-width:100%;margin-bottom:4px}.contact-link:hover{text-decoration:underline}.hours{font-size:11px;margin:0}.hours>div{display:flex;justify-content:space-between;gap:20px;margin-bottom:8px}.hours dd{margin:0;white-space:nowrap;color:#705e6a}.hours dt{font-weight:400}.policy{border-top:1px solid var(--inkline);border-bottom:1px solid var(--inkline);margin-top:55px}.policy summary{font-size:11px}.policy p{max-width:900px;color:#705e6a;font-size:12px;margin-bottom:18px}.footer{background:var(--ink);color:white;padding:44px var(--pad) 20px;overflow:hidden}.footer-top{display:flex;justify-content:space-between;align-items:center}.footer-top p{font-size:11px;color:#66505f;margin-left:auto;margin-right:18%}.back-top{display:flex;align-items:center;gap:18px;font-size:8px;letter-spacing:.12em}.back-top .icon{width:15px}.footer-word{font-size:clamp(70px,13.3vw,220px);white-space:nowrap;font-weight:500;letter-spacing:-.065em;line-height:1.2;margin:40px 0 20px;will-change:transform}.footer-word>span{font-size:.17em;vertical-align:top;display:inline-block;margin-top:25px;margin-left:13px;letter-spacing:0}.footer-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:20px;font-size:8px;letter-spacing:.07em;color:#705666;position:relative;background:var(--ink)}#motion-toggle{display:flex;align-items:center;gap:9px;background:transparent;color:inherit;font-size:8px;padding:7px 0}.motion-indicator{display:inline-block;width:6px;height:6px;border-radius:50%;background:#885e7c}.lightbox{border:0;background:#2b222bfa;color:white;padding:70px;max-width:100vw;max-height:100dvh;width:100vw;height:100dvh}.lightbox::backdrop{background:#2b222bf5}.lightbox[open]{display:flex;align-items:center;justify-content:center;gap:35px}.lightbox figure{margin:0;max-width:75vw;height:80vh;display:flex;flex-direction:column;align-items:center;gap:15px}.lightbox figure img{object-fit:contain;max-height:calc(80vh - 50px)}.lightbox figcaption{font-size:12px}.lightbox .circle-button{color:white;border-color:#ffffff5c;flex-shrink:0}.lightbox .circle-button:hover{background:#ffffff24}.lightbox-close{position:absolute;right:24px;top:20px}body.dialog-open{overflow:hidden}.hero-line>span{animation:hero-text 1.3s cubic-bezier(.16,1,.3,1) both}.hero-line:nth-child(2)>span{animation-delay:.15s}.hero-enter{animation:fade-up 1.1s .45s both}.mask-reveal{animation:cinematic-reveal 1.9s cubic-bezier(.2,.75,.2,1) both}.detail-photo.mask-reveal{animation-delay:.25s}.js-motion .reveal{opacity:0;transform:translateY(30px);transition:opacity .9s,transform .9s cubic-bezier(.2,.6,.2,1)}.js-motion .reveal.is-visible{opacity:1;transform:translateY(0)}
@keyframes marquee{to{transform:translateX(-50%)}}@keyframes cinematic-reveal{from{clip-path:inset(50% 0 50% 0);opacity:.3}to{clip-path:inset(0);opacity:1}}@keyframes hero-text{from{transform:translateY(110%)}to{transform:translateY(0)}}@keyframes fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes review-carousel{0%,30%{transform:translateY(0)}45%,75%{transform:translateY(-350px)}90%,100%{transform:translateY(-700px)}}
@media(min-width:1600px){.hero-copy{padding-top:160px}.hero-art{right:7%;width:41%}.hero{min-height:850px}.hero h1{font-size:100px}}
@media(max-width:1100px){.desktop-nav{margin-left:0;gap:23px}.hero{min-height:720px}.hero-copy{padding-top:135px}.hero-art{width:45%;right:30px}.hero h1{font-size:6.3vw}.hero-actions{gap:18px}.hero-actions .button{padding:14px 18px;gap:15px}.hero-actions .text-link{font-size:10px}.hero-seal{width:85px;height:85px;right:4%;bottom:0}.hero-proof{flex-wrap:wrap;gap:5px;max-width:300px}.hero-topline span:last-child{display:none}.studio-focus{width:145px;padding:16px;right:0}.studio-focus>span:not(.eyebrow):not(.focus-star){font-size:11px}.work-heading-right{gap:15px}.work-card{flex-basis:44%}.work-image{height:410px}.work-label{flex-wrap:wrap;gap:6px}.artist-story{gap:7%}.artist-image{height:520px}.contact-grid{gap:25px}.service-tag{font-size:7px}.process-display{height:370px;padding:30px}.process-number{font-size:170px}.booking-aside{display:none}.footer-word{font-size:13.2vw}}
@media(max-width:760px){html{scroll-padding-top:24px}.header{height:80px;gap:15px}.wordmark{font-size:28px}.wordmark span{font-size:6px}.desktop-nav{display:none}.header-book{margin-left:auto;font-size:10px;gap:12px;padding:10px 13px}.header-book .icon{width:15px}.menu-toggle{display:flex;padding:6px}.hero{height:auto;max-height:none;min-height:1050px;padding-bottom:70px}.hero-topline{padding-top:24px;font-size:7px}.hero-copy{padding-top:55px;width:100%}.hero-copy .eyebrow{font-size:8px;margin-bottom:20px}.hero h1{font-size:clamp(40px,9.4vw,70px);letter-spacing:-.065em}.hero-description{margin-top:20px;font-size:11px}.hero-actions{margin-top:25px;gap:20px}.hero-actions .text-link{font-size:9px;gap:8px}.hero-actions .button{font-size:10px;padding:14px 16px;gap:18px}.hero-proof{max-width:none;margin-top:25px;gap:10px;font-size:8px}.hero-art{position:relative;top:auto;right:auto;margin-top:42px;margin-left:0;width:100%;height:440px}.hero-photo{right:10%;width:72%;height:90%}.vertical-note{left:6%;font-size:7px;top:5px}.studio-focus{right:0;top:27px;width:128px;padding:14px}.studio-focus>.eyebrow{font-size:7px;margin-bottom:10px}.studio-focus>span:not(.eyebrow):not(.focus-star){font-size:10px;padding:7px 0}.detail-photo{left:0;width:44%;height:39%;bottom:0}.hero-seal{right:1%;bottom:0;width:82px;height:82px}.hero-seal>span:not(.seal-star){font-size:5px}.seal-star{font-size:27px}.hero-bottom{font-size:6px;bottom:20px;gap:10px}.hero-bottom>span:last-child{display:none}.hero-bottom .icon{width:10px}.marquee-wrap{padding:20px 0}.marquee>div{font-size:10px;gap:24px;padding-right:24px}.marquee span{font-size:22px}.section{padding:70px var(--pad)}.section-heading{flex-direction:column;align-items:flex-start;gap:25px;margin-bottom:38px}.section-heading .eyebrow{font-size:8px;margin-bottom:21px}.section-heading>p,.section-heading>div>p{font-size:11px;max-width:330px}.service-row{gap:14px;padding:25px 0}.row-number{font-size:9px;width:17px}.service-row h3{font-size:23px}.service-row p{font-size:10px;max-width:250px}.service-tag{display:none}.round-arrow{margin-left:auto;width:19px;height:19px}.service-row:hover{padding-left:8px;padding-right:8px}.service-menu summary{font-size:11px;gap:12px}.menu-count{font-size:6px}.service-results{grid-template-columns:1fr}.filter-bar button{font-size:9px;padding:8px 11px}.menu-service h4{font-size:13px}.work-section{padding-top:70px}.work-heading-right{width:100%;justify-content:space-between;align-items:center}.work-heading-right p{font-size:10px}.work-track{gap:18px}.work-card{flex-basis:82%}.work-image{height:400px}.work-label{font-size:12px}.work-label small{font-size:6px}.image-view{opacity:1;transform:none;left:auto;bottom:12px;right:12px;padding:9px 12px;font-size:9px}.image-view .icon{width:13px}.work-bottom{align-items:flex-start;gap:15px;flex-direction:column}.work-bottom>span{font-size:7px}.work-bottom .text-link{font-size:10px}.artist-story{grid-template-columns:1fr;gap:44px}.artist-visual{position:relative;top:0}.artist-image{height:460px}.artist-image img{object-position:center 27%}.artist-caption{font-size:7px}.split-name{font-size:54px}.artist-copy>.eyebrow{font-size:8px}.story-chapter{padding:40px 0}.story-chapter h3{font-size:28px}.story-chapter p{font-size:11px}.signature-section{padding:70px var(--pad);grid-template-columns:1fr;gap:30px}.signature-copy h2{font-size:45px}.signature-copy .eyebrow{font-size:8px}.signature-copy p{font-size:11px}.signature-art{max-width:350px;width:90%;justify-self:center}.process-layout{grid-template-columns:1fr;gap:25px}.process-display{position:relative;top:0;height:auto;padding:25px;display:grid;grid-template-columns:1fr 1fr;align-items:center;column-gap:30px}.process-overline{font-size:7px}.process-number{grid-column:2;grid-row:1/4;font-size:100px;line-height:1.15;justify-self:end}.process-progress{margin:18px 0}.process-current{font-size:10px}.process-step{min-height:230px;padding:30px 0 45px;opacity:1}.process-step h3{font-size:28px}.process-step .eyebrow{font-size:8px}.process-step p{font-size:11px;margin-top:17px}.reviews-section{grid-template-columns:1fr;gap:25px;padding:65px var(--pad)}.reviews-intro .eyebrow{font-size:8px}.reviews-intro h2{font-size:36px}.reviews-intro .text-link{margin-top:25px}.review-window{border-top:1px solid var(--inkline)}.booking-section{padding:70px var(--pad) 50px}.booking-section>.eyebrow{font-size:8px;margin-bottom:25px}.booking-section h2{font-size:clamp(42px,10vw,65px)}.booking-bottom{margin-top:35px;align-items:flex-start;flex-direction:column;gap:25px}.booking-bottom>p{font-size:11px}.booking-button{padding:18px 22px;font-size:11px;gap:45px}.contact-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.contact-grid>div:last-child{grid-column:1/-1;max-width:360px;width:100%}.contact-grid p,.contact-link{font-size:11px;overflow-wrap:anywhere}.contact-grid .eyebrow{font-size:7px;margin-bottom:15px}.contact-grid .text-link{font-size:9px;gap:8px}.hours{font-size:11px}.policy{margin-top:35px}.policy summary{font-size:10px}.policy p{font-size:11px}.footer{padding-top:35px}.footer-top{flex-wrap:wrap;gap:30px}.footer-top p{font-size:9px;margin:0 0 0 auto}.back-top{font-size:7px}.footer-word{font-size:12.2vw;margin:30px 0 15px}.footer-word>span{margin-top:8px;margin-left:5px}.footer-bottom{font-size:6px}.footer-bottom>span:nth-child(2){display:none}#motion-toggle{font-size:7px}.lightbox{padding:70px 16px}.lightbox[open]{gap:8px}.lightbox figure{max-width:75vw;height:70vh}.lightbox figure img{max-height:calc(70vh - 60px)}.lightbox .circle-button{width:28px;height:28px}.lightbox figcaption{font-size:10px;text-align:center}}
@media(max-width:370px){.header-book{font-size:8px}.hero h1{font-size:36px}.hero-actions{gap:12px}.hero-actions .button{font-size:9px;padding:12px}.hero-actions .text-link{font-size:8px}.hero-proof{font-size:7px;gap:5px}.tiny-stars{font-size:10px}.contact-grid{grid-template-columns:1fr}.contact-grid>div:last-child{grid-column:auto}.split-name{font-size:45px}.work-image{height:340px}}
html.motion-paused{scroll-behavior:auto}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important;transition:none!important}.motion-paused .reveal,.motion-paused .hero-enter{opacity:1!important;transform:none!important}.motion-paused .mask-on-scroll,.motion-paused .mask-reveal{clip-path:none!important;opacity:1!important}.motion-paused .hero-line>span,.motion-paused .split-name .letter{transform:none!important}.motion-paused .footer-word{transform:none!important}.motion-paused .process-step{opacity:1}.motion-paused .ink-spread{display:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal,.hero-enter{opacity:1!important;transform:none!important}.js-motion .split-name .letter{transform:none!important}.mask-on-scroll,.mask-reveal{clip-path:none!important;transform:none!important}.process-step{opacity:1}.ink-spread{display:none}.footer-word{transform:none!important}}

/* White & ghost pink surfaces; plum ink preserves readable contrast. */
.header,.mobile-nav,.hero-seal,.footer,.footer-bottom{background:var(--pink);color:var(--ink)}
.grid-bg{background-color:var(--pink);background-blend-mode:normal}
.hero,.signature-section,.booking-section,.menu-toggle{color:var(--ink)}
.desktop-nav a:after{background:var(--ink)}
.text-link{border-bottom-color:var(--inkline)}
.hero-photo:after{background:linear-gradient(0deg,#352b3480,transparent 50%)}
.photo-caption,.detail-photo>span{color:white}
.detail-photo{border-color:var(--pink)}
.hero-seal{border-color:var(--inkline)}
.hero-photo img{opacity:1}
.studio-focus{color:var(--ink);box-shadow:0 10px 35px #58354a15}
.ink-spread:before{opacity:.17}.ink-spread:after{opacity:.5}

/* Mobile readability, touch access and progressive enhancement. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}
.no-script-nav{display:flex;flex-wrap:wrap;gap:12px;padding:16px var(--pad);background:var(--pink)}
.no-script-nav a{min-height:48px;display:inline-flex;align-items:center;padding:0 10px}
.hero-copy{pointer-events:auto}
.hero-proof,.section-heading>p,.section-heading>div>p,.story-chapter p,.process-step p,.contact-grid p,.contact-link,.hours,.policy p{font-size:14px}
.menu-service>p{font-size:13px}.menu-service h4{font-size:16px}.menu-service footer{font-size:12px}
.menu-service footer a{min-height:48px;display:inline-flex;align-items:center}
.filter-bar button{min-height:48px;font-size:12px}
.service-row p{font-size:13px}.service-menu summary,.policy summary{min-height:56px;font-size:14px}
.text-link{min-height:44px;font-size:13px}.header-book,.button{min-height:48px}
.circle-button{min-width:48px;min-height:48px}.desktop-nav a{min-height:48px;display:flex;align-items:center}
.review-window:focus-within .review-track{animation-play-state:paused}
.marquee-wrap:focus-within .marquee{animation-play-state:paused}
.mobile-nav{max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}
.menu-service{scroll-margin-top:30px}
@media(max-width:760px){
 .header{padding-inline:20px;gap:8px}.menu-toggle{width:48px;height:48px;align-items:center;justify-content:center;flex-shrink:0}
 .header-book{font-size:11px;padding:10px 12px;gap:10px}.hero-copy{padding-top:38px}
 .hero-description,.signature-copy p,.booking-bottom>p,.hero-actions .button,.hero-actions .text-link{font-size:13px}
 .hero-actions{gap:14px;flex-wrap:wrap}.hero-actions .button{padding:14px 16px}.hero-proof{font-size:11px;gap:8px}
 .hero-proof>span:last-child{flex-wrap:wrap;gap:5px}.hero-art{margin-top:30px}.hero{min-height:0}
 .hero-topline,.hero-copy .eyebrow,.eyebrow,.section-heading .eyebrow,.artist-copy>.eyebrow,.signature-copy .eyebrow,.booking-section>.eyebrow,.contact-grid .eyebrow,.reviews-intro .eyebrow,.process-step .eyebrow{font-size:10px}
 .hero-bottom{font-size:8px}.hero-bottom a{min-height:44px}.hero-bottom{bottom:5px}
 .service-row p{font-size:13px}.service-row h3{font-size:24px}.service-menu summary{font-size:13px}.menu-count{font-size:9px}
 .work-heading-right p,.work-bottom .text-link,.image-view,.artist-caption,.chapter-label,.contact-grid .text-link{font-size:12px}
 .work-label small,.work-bottom>span{font-size:10px}.work-label{font-size:14px}.image-view{min-height:44px}
 .section-heading>p,.section-heading>div>p,.story-chapter p,.process-step p,.contact-grid p,.contact-link,.hours,.policy p{font-size:14px}
 .process-display{position:relative}.process-current{font-size:12px}.process-overline{font-size:10px}.process-step{opacity:1}
 .contact-grid{grid-template-columns:1fr;gap:30px}.contact-grid>div:last-child{grid-column:auto;max-width:none}
 .contact-link{min-height:44px;display:flex;align-items:center}.contact-grid .text-link{margin-top:8px}
 .footer-top p{font-size:12px}.back-top{min-height:48px;font-size:10px}.footer-bottom{font-size:10px}
 #motion-toggle{min-height:48px;font-size:11px}.footer{padding-bottom:max(20px,env(safe-area-inset-bottom))}
 .lightbox{padding:70px 12px 30px}.lightbox figure{max-width:100%;width:100%;height:75dvh}.lightbox figure img{max-height:calc(75dvh - 60px)}
 .lightbox figcaption{font-size:12px;padding:0 48px}.lightbox-prev,.lightbox-next{position:absolute;top:50%;z-index:1;background:#352b34d9}
 .lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-close{right:16px;top:16px}
 .ink-spread:before,.ink-spread:after{filter:none;transition-duration:1.5s;max-width:90vw;max-height:90vw}
}
@media(max-width:370px){.wordmark{font-size:25px}.header-book{font-size:10px}.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.hero-proof{align-items:flex-start;flex-direction:column}.hero-bottom>span{font-size:7px}.hero-art{height:390px}.footer-top p{font-size:11px}}
@media(hover:none){.image-view{opacity:1;transform:none}.work-card:hover .work-image>img{transform:none}.work-card.detail:hover .work-image>img{transform:scale(2)}.service-row:hover{padding-left:0;padding-right:0}.button{will-change:auto}}

.process-step{opacity:1}.process-step.is-current{border-top-color:var(--ink);border-top-width:2px}

/* Signature services: an offset photo composition with a gentle image reveal. */
.service-showcase{padding:92px var(--pad) 42px;background:var(--paper)}
.service-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:155px 255px 270px 125px;gap:16px}
.mosaic-intro{grid-column:1;grid-row:1;align-self:center;padding-bottom:12px}
.mosaic-intro .eyebrow{color:#776170;margin-bottom:18px}
.mosaic-intro h2{font-size:clamp(34px,3.8vw,56px);line-height:1.08}
.service-tile{position:relative;isolation:isolate;overflow:hidden;padding:0;border:0;text-align:left;background:#352b34;color:white;display:block;width:100%;height:100%;--pointer-x:0px;--pointer-y:0px;--scroll-y:0px}
.tile-1{grid-column:1;grid-row:2}.tile-2{grid-column:2;grid-row:1/3}.tile-3{grid-column:1;grid-row:3/5}.tile-4{grid-column:2;grid-row:3}
.service-tile-media{position:absolute;inset:-20px;z-index:-3;transform:translate3d(var(--pointer-x),calc(var(--pointer-y) + var(--scroll-y)),0) scale(1.015);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.service-tile-media img{object-position:var(--photo-position);filter:saturate(.8);transition:filter .8s,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.service-tile:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(30,19,27,.62),transparent 32%,rgba(30,19,27,.2) 48%,rgba(30,19,27,.87));pointer-events:none;transition:opacity .6s}
.tile-reveal-veil{position:absolute;inset:0;background:rgba(232,200,227,.18);z-index:-2;clip-path:inset(0);transition:clip-path .85s cubic-bezier(.22,.8,.25,1);pointer-events:none}
.tile-topline{position:absolute;top:24px;left:28px;right:28px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:9px;letter-spacing:.12em;font-weight:500;text-shadow:0 1px 4px #0008}
.tile-open{width:22px;height:22px;transition:transform .5s}
.tile-content{position:absolute;left:28px;right:28px;bottom:27px;display:flex;flex-direction:column;align-items:flex-start}
.tile-title{font-size:clamp(24px,2.5vw,38px);line-height:1.12;letter-spacing:-.045em;font-weight:500;max-width:95%;text-shadow:0 2px 14px #0004}
.tile-description{display:block;max-width:375px;font-size:13px;line-height:1.75;margin-top:15px}
.tile-view{display:inline-flex;align-items:center;gap:9px;margin-top:12px;font-size:10px;letter-spacing:.04em}.tile-view .icon{width:14px;height:14px}
.mosaic-outro{grid-column:2;grid-row:4;align-self:center;justify-self:center;text-align:center}
.mosaic-outro p{font-size:12px;color:#705e6a;margin-bottom:13px}
.mosaic-cta{background:var(--pink);color:var(--ink);min-height:52px;font-size:12px;padding:14px 24px;gap:36px}
.mosaic-cta:hover{background:#e2bbdc}
.showcase-note{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:25px;margin-top:30px;border-top:1px solid var(--inkline)}
.showcase-note>span{font-size:9px;letter-spacing:.12em;color:#776170}
@media(hover:hover) and (pointer:fine){
 .tile-description{max-height:0;opacity:0;overflow:hidden;margin-top:0;transform:translateY(12px);transition:max-height .6s,opacity .4s,transform .6s,margin-top .6s}
 .tile-view{max-height:0;opacity:0;overflow:hidden;margin-top:0;transform:translateY(12px);transition:max-height .6s,opacity .4s,transform .6s,margin-top .6s}
 .service-tile:is(:hover,:focus-visible) .tile-reveal-veil{clip-path:inset(0 0 100% 0)}
 .service-tile:is(:hover,:focus-visible) .service-tile-media img{filter:saturate(1);transform:scale(1.035)}
 .service-tile:is(:hover,:focus-visible) .tile-description{max-height:120px;opacity:1;margin-top:15px;transform:translateY(0)}
 .service-tile:is(:hover,:focus-visible) .tile-view{max-height:24px;opacity:1;margin-top:12px;transform:translateY(0)}
 .service-tile:is(:hover,:focus-visible) .tile-open{transform:translate(3px,-3px)}
}
@media(max-width:1100px) and (min-width:761px){.service-mosaic{grid-template-rows:150px 245px 270px 125px;gap:12px}.tile-content{left:22px;right:22px;bottom:24px}.tile-topline{left:22px;right:22px;font-size:8px}.tile-title{font-size:29px}.mosaic-intro h2{font-size:38px}}
@media(max-width:760px){
 .service-showcase{padding:64px var(--pad) 30px}
 .service-mosaic{display:flex;flex-direction:column;gap:16px}
 .mosaic-intro{align-self:stretch;padding-bottom:13px}.mosaic-intro .eyebrow{font-size:10px;margin-bottom:20px}.mosaic-intro h2{font-size:38px}
 .service-tile{height:350px;min-height:350px}
 .service-tile-media{inset:0;transform:none!important}
 .tile-topline{top:22px;left:22px;right:22px;font-size:9px}
 .tile-content{bottom:25px;left:22px;right:22px}.tile-title{font-size:30px;max-width:95%}
 .tile-description{font-size:13px;max-height:none;opacity:1;margin-top:14px;transform:none}
 .tile-view{max-height:none;opacity:1;margin-top:12px;transform:none;font-size:11px}
 .tile-reveal-veil{display:none}.service-tile-media img{filter:none}
 .mosaic-outro{align-self:stretch;padding-top:13px}.mosaic-outro p{font-size:13px}.mosaic-cta{min-height:52px;width:100%;font-size:13px}
 .showcase-note{flex-direction:column;align-items:flex-start;margin-top:27px;gap:8px}.showcase-note>span{font-size:9px}.showcase-note .text-link{font-size:12px}
}
.motion-paused .service-tile-media,.motion-paused .service-tile-media img{transform:none!important}
.motion-paused .tile-description,.motion-paused .tile-view{max-height:none;opacity:1;transform:none;margin-top:12px}
@media(prefers-reduced-motion:reduce){.service-tile-media,.service-tile-media img{transform:none!important}.tile-reveal-veil{display:none}.tile-description,.tile-view{max-height:none;opacity:1;transform:none;margin-top:12px}}
