:root{--ink:#202124;--paper:#f7f7f2;--cream:#e7e9e5;--gold:#a7a9b8;--muted:#686d72;--line:rgba(32,33,36,.16);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font:14px/1.75 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}::selection{background:var(--gold);color:#17120f}:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.skip{position:fixed;left:20px;top:-100px;z-index:200;background:var(--paper);padding:12px}.skip:focus{top:20px}.wrap{max-width:1440px;padding:0 6vw;margin:auto}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.23em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';height:1px;width:27px;background:currentColor}.serif,h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.03;margin:0}h2{font-size:clamp(44px,5.5vw,82px);letter-spacing:-.035em}h3{font-size:36px}em{font-weight:400}.button{display:inline-flex;align-items:center;justify-content:center;gap:36px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:17px 24px;font-size:11px;font-weight:500;letter-spacing:.05em;transition:background .25s,transform .25s;white-space:nowrap}.button:hover{background:#444650;transform:translateY(-2px)}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.outline{background:transparent;color:inherit;border-color:currentColor}.arrow{font-size:21px;line-height:1}.text-link{display:inline-flex;gap:32px;align-items:center;border-bottom:1px solid currentColor;padding:8px 0;font-size:12px}.header{height:96px;padding:0 4vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.2);position:absolute;top:0;left:0;width:100%;z-index:30;color:var(--paper)}.brand{display:flex;align-items:center;gap:17px}.brand-monogram{font-family:var(--serif);font-size:48px;line-height:1;letter-spacing:-7px;padding-right:6px;color:#b2afbd}.brand-wordmark{font-size:10px;letter-spacing:.2em;line-height:1.8}.brand-wordmark small{display:block;font-size:7px;letter-spacing:.4em}.nav{display:flex;align-items:center;gap:30px;font-size:11px}.nav a:not(.button){position:relative}.nav a:not(.button):after{content:'';position:absolute;bottom:-5px;height:1px;background:currentColor;width:0;left:0;transition:width .25s}.nav a:hover:after{width:100%}.header .button{padding:11px 20px;background:transparent;border-color:rgba(255,255,255,.5);color:inherit}.menu-toggle{display:none;color:inherit;background:none;border:0;padding:10px;font-size:12px}.hero{position:relative;min-height:790px;height:100svh;max-height:1100px;color:var(--paper);background:#19100a;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.035);will-change:transform}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,8,5,.64),transparent 78%),linear-gradient(0deg,rgba(15,9,5,.8),transparent 35%);pointer-events:none}.hero-content{position:relative;z-index:2;padding-top:clamp(170px,22vh,250px)}.hero .eyebrow{color:#dfd1b8}.hero h1{font-size:clamp(100px,12.8vw,194px);line-height:.83;letter-spacing:-.055em;margin:40px 0 26px;max-width:1200px}.hero h1 em{display:block;color:#e4cfaa;padding-left:12vw}.hero-desc{max-width:285px;font-size:12px;line-height:1.9;color:#e4dcd0;margin:0 0 28px}.hero-bottom{position:absolute;bottom:36px;left:6vw;right:6vw;z-index:3;display:flex;justify-content:space-between;align-items:flex-end}.hero-bottom .rating{font-size:10px;letter-spacing:.05em}.stars{color:#d8bb83;letter-spacing:4px;font-size:12px;display:block;margin-bottom:5px}.scroll-cue{display:flex;align-items:center;gap:18px;font-size:9px;letter-spacing:.17em;text-transform:uppercase}.scroll-cue span{display:block;width:36px;height:55px;border:1px solid #a18b72;border-radius:25px;text-align:center;padding-top:13px;font-size:19px;animation:float 2.5s ease-in-out infinite}.hero-side{position:absolute;right:4vw;top:46%;z-index:3;writing-mode:vertical-rl;font-size:9px;letter-spacing:.28em}.image-credit{font-size:8px;opacity:.55;letter-spacing:.03em}.ticker{background:#202124;color:#e2e3e7;padding:20px 0;border-top:1px solid #3e4046;overflow:hidden}.ticker-track{display:flex;gap:42px;width:max-content;animation:ticker 45s linear infinite;font-size:10px;letter-spacing:.22em}.ticker i{color:var(--gold);font-style:normal}.intro{padding:115px 0 90px;display:grid;grid-template-columns:1fr 1.45fr;gap:9vw}.intro h2{margin-top:27px}.intro-right{padding-top:25px}.intro-right p{max-width:470px;color:#6f655a;font-size:14px}.intro-right .text-link{margin-top:16px}.mini-stats{display:flex;gap:55px;border-top:1px solid var(--line);margin-top:35px;padding-top:23px}.mini-stats strong{display:block;font:36px/1 var(--serif);margin-bottom:9px}.mini-stats span{font-size:9px;text-transform:uppercase;letter-spacing:.14em}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-head .eyebrow{margin-bottom:20px}.services-preview{padding-bottom:110px}.service-cards{display:grid;grid-template-columns:1.28fr 1fr 1fr;gap:22px}.service-card{position:relative;display:block}.card-img{height:390px;position:relative;overflow:hidden;background:var(--cream)}.service-card:first-child .card-img{height:440px}.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.service-card:hover img{transform:scale(1.055)}.card-img .label{position:absolute;top:18px;left:18px;background:var(--paper);padding:6px 12px;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.card-img .circle-link{position:absolute;bottom:18px;right:18px;width:42px;height:42px;display:grid;place-items:center;border:1px solid #fff8;border-radius:50%;color:white;font-size:23px;backdrop-filter:blur(5px)}.card-meta{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:22px 0 16px;gap:15px}.card-meta h3{font-size:32px}.card-meta span{font-size:11px}.card-note{font-size:11px;color:var(--muted);margin-top:10px}.service-card:nth-child(2){padding-top:45px}.service-card:nth-child(3){padding-top:90px}.scene-scroll{height:210vh;background:#202124;color:var(--paper);position:relative}.scene-sticky{height:100svh;min-height:680px;position:sticky;top:0;overflow:hidden;display:flex;align-items:center}.scene-copy{position:relative;z-index:3;width:46%;padding:0 0 0 6vw;pointer-events:none}.scene-copy a,.scene-copy button{pointer-events:auto}.scene-copy h2{font-size:clamp(60px,7.7vw,112px);margin:27px 0}.scene-copy p{font-size:12px;color:#c4c6d0;max-width:310px}.scene-copy .text-link{margin-top:10px}.scene-canvas{position:absolute;right:-5%;top:0;width:80%;height:100%;z-index:1}.scene-orbit{position:absolute;width:58vw;height:58vw;border:1px solid #bfc0d32b;border-radius:50%;right:-5vw;top:50%;transform:translateY(-50%) rotateX(55deg);pointer-events:none}.scene-watermark{position:absolute;bottom:-45px;left:4vw;font:clamp(130px,22vw,320px)/1 var(--serif);color:#d0cde008;letter-spacing:-.06em}.scene-controls{display:flex;gap:8px;margin:30px 0}.scene-controls button{border:1px solid #888b99;color:#dbdce6;background:transparent;font-size:9px;letter-spacing:.12em;padding:10px 16px}.scene-controls button[aria-pressed=true]{background:#e2ddf0;color:#202124}.scene-caption{position:absolute;right:6vw;bottom:38px;font-size:9px;letter-spacing:.13em;color:#b8bbc5;z-index:3}.scene-progress{position:absolute;bottom:0;left:0;height:2px;background:#c1bbd8;width:var(--progress,0%)}.treatment-section{padding:115px 0;background:#edf0e9}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.category-tile{position:relative;height:420px;overflow:hidden;color:white;background:#29211b}.category-tile img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.category-tile:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#17110dde)}.category-tile:hover img{transform:scale(1.06)}.category-tile .tile-content{position:absolute;bottom:28px;left:26px;right:26px;z-index:2}.tile-content small{font-size:9px;letter-spacing:.16em}.tile-content h3{font-size:48px;margin:8px 0}.tile-content span{position:absolute;right:0;bottom:10px;font-size:26px}.work-section{padding:110px 0}.work-gallery{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:22px;align-items:center}.work-gallery figure{margin:0}.work-gallery img{height:370px;width:100%;object-fit:cover}.work-gallery figure:nth-child(2) img{height:470px}.work-gallery figcaption{font-size:9px;text-transform:uppercase;letter-spacing:.12em;padding-top:14px;color:var(--muted)}.about{background:#ededf2;padding:100px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.about-photo{position:relative;padding-bottom:30px}.about-photo>img{height:570px;width:100%;object-fit:cover;object-position:top}.signature{position:absolute;right:-35px;bottom:0;background:#2a2119;color:#d4b37a;width:145px;height:145px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:38px var(--serif);transform:rotate(-12deg);border:9px solid #ededf2}.about h2{margin:25px 0}.about p{color:#666b70;max-width:440px}.about .text-link{margin-top:20px}.quote{padding:100px 6vw;text-align:center;background:#f8f5ef}.quote .stars{margin-bottom:25px}.quote blockquote{font:clamp(30px,4.2vw,60px)/1.18 var(--serif);max-width:930px;margin:0 auto 30px}.quote cite{font-style:normal;font-size:10px;letter-spacing:.15em}.quote p{font-size:10px;color:var(--muted)}.faq{padding:100px 0;display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw}.faq h2{margin-top:25px}.faq-list details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;padding:22px 38px 22px 0;position:relative;font-size:13px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:6px;font-size:22px;top:15px}details[open] summary:after{content:'−'}.faq-list details p{font-size:12px;color:#766b5e;padding:0 30px 20px 0;margin:0}.booking{background:#282018;color:var(--paper);padding:95px 0;position:relative;overflow:hidden}.booking-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.booking .eyebrow{color:#c9ab7e;margin-bottom:22px}.booking h2{font-size:clamp(55px,7vw,100px)}.booking p{font-size:11px;color:#b3a58f}.booking-monogram{position:absolute;right:28%;top:0;font:330px/1 var(--serif);color:#bca0710b;letter-spacing:-50px;pointer-events:none}.footer{padding:60px 0 25px;background:#191a1d;color:#e4e5ea}.footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px}.footer .brand{margin-bottom:24px}.footer p,.footer a{font-size:10px}.footer p{color:#aeb1ba}.footer h3{font:10px var(--sans);letter-spacing:.15em;margin:10px 0 22px}.footer-links{display:flex;flex-direction:column;gap:9px}.footer-bottom{border-top:1px solid #3b3e45;margin-top:45px;padding-top:22px;display:flex;justify-content:space-between;font-size:9px;color:#b3b5bd}.footer-bottom a{font-size:9px}.mobile-book{display:none}.page-head{padding:155px 0 65px;background:#ededf2}.inner-page .header{color:var(--ink);border-color:var(--line)}.inner-page .header .button{color:var(--ink);border-color:var(--ink)}.breadcrumb{font-size:9px;color:#8b7d6c;margin:0 0 30px;display:flex;gap:10px;flex-wrap:wrap}.page-head h1{font-size:clamp(54px,7vw,100px);letter-spacing:-.04em;max-width:1000px}.page-head p{max-width:600px;color:#656a70;font-size:13px}.catalog{padding:65px 0 100px}.filter-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:32px}.filter-bar button,.filter-bar a{padding:10px 18px;border:1px solid var(--line);background:transparent;font-size:10px}.filter-bar [aria-pressed=true],.filter-bar .active{background:var(--ink);color:white}.search{margin-left:auto;padding:12px 16px;border:1px solid var(--line);background:transparent;max-width:230px;min-width:180px;color:var(--ink)}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.catalog-card{padding:28px;border:1px solid var(--line);min-height:245px;display:flex;flex-direction:column;transition:background .25s}.catalog-card:hover{background:#e9e1d4}.catalog-card small{font-size:9px;letter-spacing:.13em;color:#8c7c66;text-transform:uppercase}.catalog-card h2{font-size:33px;margin:20px 0 16px;letter-spacing:-.02em}.catalog-card p{font-size:11px;color:#867764;margin:0 0 20px}.catalog-card .catalog-bottom{border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between;margin-top:auto;font-size:12px}.empty{padding:35px 0;color:var(--muted)}[hidden]{display:none!important}.detail-layout{display:grid;grid-template-columns:1fr 380px;gap:8vw;padding:75px 0 100px}.detail-content h2{font-size:44px;margin:20px 0}.detail-content p{color:#726455;max-width:650px}.detail-content .note{border-left:2px solid var(--gold);padding:16px 24px;background:#ede6db;font-size:12px;margin:30px 0}.detail-content img{max-height:430px;width:100%;object-fit:cover;margin-top:35px}.price-panel{background:#e8dfd1;padding:32px;height:max-content;position:sticky;top:30px}.price-panel .price{font:68px var(--serif)}.price-panel .price small{font:14px var(--sans)}.price-panel dl{margin:25px 0}.price-panel dl div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px}.price-panel dd{margin:0}.price-panel .button{width:100%;gap:20px}.price-panel>p{font-size:9px;color:#8b7b66}.detail-faq{margin-top:45px}.related{background:#edf0e9;padding:70px 0}.related h2{font-size:45px;margin-bottom:30px}.related .catalog-card{background:var(--paper)}.source-note{font-size:10px;color:#948370}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:70px 0}.info-grid img{width:100%;height:500px;object-fit:cover}.info-grid h2{font-size:45px;margin:20px 0}.info-grid p{color:#786b5c}.hours{width:100%;border-collapse:collapse}.hours td{padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.hours td:last-child{text-align:right}.legal{max-width:760px;margin:60px auto 100px;padding:0 25px}.legal h2{font-size:32px;margin:35px 0 16px}.legal p{font-size:13px}.motion-toggle{position:fixed;bottom:20px;right:20px;z-index:50;border:1px solid #a58e6a;background:#eee7d9;color:#31291f;width:37px;height:37px;border-radius:50%;font-size:13px;opacity:.8}.reveal{transition:opacity .8s,transform .8s}.js .reveal:not(.visible){opacity:0;transform:translateY(25px)}body.reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reduce-motion .reveal{opacity:1!important;transform:none!important}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes float{50%{transform:translateY(6px)}}
@media(min-width:1600px){.hero-content{padding-top:220px}.hero h1{font-size:190px}}
@media(max-width:1000px){.nav{gap:17px}.brand-wordmark{display:none}.wrap{padding:0 5vw}.hero{min-height:740px}.hero h1{font-size:14vw}.hero-content{padding-top:220px}.intro{gap:5vw}.service-cards{gap:14px}.card-img{height:310px}.service-card:first-child .card-img{height:360px}.card-meta h3{font-size:27px}.scene-copy{width:52%;padding-left:5vw}.scene-canvas{right:-20%;width:100%}.category-tile{height:330px}.work-gallery img{height:300px}.work-gallery figure:nth-child(2) img{height:370px}.about-photo>img{height:480px}.footer-main{grid-template-columns:1.5fr 1fr 1fr}.footer-hours{display:none}.detail-layout{grid-template-columns:1fr 310px;gap:5vw}.catalog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){body{font-size:13px}.header{height:77px;padding:0 6vw}.brand-monogram{font-size:43px}.brand-wordmark{display:block;font-size:8px}.brand-wordmark small{font-size:6px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:77px;left:0;right:0;background:#211a14;color:#f5f5f0;padding:25px 6vw;flex-direction:column;align-items:flex-start;gap:24px;font-size:14px}.nav.open{display:flex}.inner-page .nav{color:#f5f5f0}.inner-page .nav .button{color:#f5f5f0;border-color:#f5f5f0}.hero{height:calc(100svh - 54px);min-height:720px;max-height:900px}.hero-photo{object-position:62% center}.hero:after{background:linear-gradient(90deg,#0b08086b,transparent),linear-gradient(0deg,#160e08f2,transparent 85%)}.hero-content{padding-top:235px}.hero .eyebrow{font-size:8px}.hero h1{font-size:23vw;margin:30px 0 25px}.hero h1 em{padding-left:12vw}.hero-desc{font-size:11px;max-width:240px}.hero-bottom{bottom:30px}.hero-side{display:none}.hero-bottom .rating{font-size:8px;max-width:170px}.scroll-cue{font-size:8px;gap:9px}.scroll-cue span{width:27px;height:42px;padding-top:8px;font-size:16px}.hero .image-credit{display:none}.button{padding:15px 20px;font-size:10px}.ticker{padding:15px 0}.ticker-track{font-size:8px;gap:25px}.intro{grid-template-columns:1fr;padding:70px 0;gap:16px}.intro-right{padding-top:0}.intro-right p{font-size:12px}.mini-stats{gap:45px}.section-head{align-items:flex-start;gap:24px;flex-direction:column;margin-bottom:28px}.services-preview{padding-bottom:65px}.service-cards{display:flex;overflow-x:auto;gap:18px;padding-bottom:20px;scroll-snap-type:x mandatory}.service-card{flex:0 0 82%;padding:0!important;scroll-snap-align:start}.card-img,.service-card:first-child .card-img{height:360px}.card-meta h3{font-size:32px}.scene-scroll{height:180vh}.scene-sticky{min-height:680px;align-items:flex-start}.scene-copy{width:100%;padding:65px 6vw 0}.scene-copy h2{font-size:68px;margin:22px 0 18px}.scene-copy p{max-width:260px;font-size:11px}.scene-canvas{top:24%;height:77%;width:150%;right:-25%}.scene-orbit{top:72%;width:100vw;height:100vw;right:0}.scene-controls{margin:20px 0}.scene-caption{bottom:25px;font-size:7px}.scene-watermark{font-size:32vw;bottom:0}.scene-copy .text-link{display:none}.treatment-section,.work-section{padding:65px 0}.category-grid{grid-template-columns:1fr;gap:18px}.category-tile{height:350px}.category-tile:nth-child(2) img{object-position:center 40%}.work-gallery{gap:12px;grid-template-columns:1fr 1fr}.work-gallery figure:nth-child(3){display:none}.work-gallery img,.work-gallery figure:nth-child(2) img{height:300px}.work-gallery figcaption{font-size:7px}.about{padding:65px 0}.about-grid{grid-template-columns:1fr;gap:35px}.about-photo>img{height:470px}.signature{right:10px;width:115px;height:115px;font-size:30px}.about p{font-size:12px}.quote{padding:65px 7vw}.quote blockquote{font-size:36px}.faq{grid-template-columns:1fr;padding:65px 0;gap:30px}.booking{padding:65px 0}.booking-inner{flex-direction:column;align-items:flex-start;gap:25px}.booking h2{font-size:67px}.footer{padding-bottom:85px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{gap:18px;flex-wrap:wrap}.mobile-book{position:fixed;bottom:0;left:0;right:0;display:flex;z-index:45;background:var(--ink);color:var(--paper);justify-content:space-between;align-items:center;padding:16px 6vw;font-size:11px;border-top:1px solid #81705a}.motion-toggle{bottom:65px;right:14px;width:32px;height:32px}.page-head{padding:115px 0 45px}.page-head h1{font-size:57px;overflow-wrap:anywhere}.page-head p{font-size:12px}.breadcrumb{font-size:8px}.catalog{padding:40px 0 65px}.filter-bar{gap:6px}.filter-bar button,.filter-bar a{padding:9px 13px;font-size:9px}.search{margin-left:0;width:100%;max-width:none;margin-top:10px}.catalog-grid{grid-template-columns:1fr}.catalog-card{min-height:210px;padding:24px}.catalog-card h2{font-size:34px}.detail-layout{display:flex;flex-direction:column-reverse;padding:35px 0 65px;gap:35px}.price-panel{position:static}.price-panel .price{font-size:52px}.price-panel dl{margin:15px 0}.detail-content h2{font-size:38px}.detail-content img{max-height:340px}.related{padding:55px 0}.related h2{font-size:40px}.info-grid{grid-template-columns:1fr;gap:30px;padding:45px 0}.info-grid img{height:400px}.source-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal:not(.visible){opacity:1;transform:none}}

.detail-figure{margin:35px 0}.detail-figure figcaption{padding-top:8px}.scene-copy h2{max-width:630px}.no-webgl .scene-sticky{min-height:650px}

.inner-page .header .brand-monogram{color:#202124}
