:root{--black:#090908;--coal:#121210;--gold:#cfaa67;--goldlight:#f0d9a8;--muted:#aaa69d;--white:#f7f4ed;--line:#51463280;--wrap:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:'DM Sans',sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}::selection{background:var(--gold);color:#14110b}.wrap{width:min(var(--wrap),calc(100% - 64px));margin:auto}.skip-link{position:absolute;top:-100px;left:12px;z-index:90;background:#fff;color:#000;padding:14px}.skip-link:focus{top:12px}.topline{height:32px;background:#161510;border-bottom:1px solid #3b3427;display:flex;align-items:center;justify-content:space-between;padding:0 4%;color:#bfb49b;font-size:9px;letter-spacing:2px}.topline b{color:var(--gold);margin:0 10px}.site-header{position:sticky;top:0;z-index:70;background:#090908e8;backdrop-filter:blur(18px);border-bottom:1px solid #92744845}.header-inner{height:84px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand img{height:57px;width:57px;object-fit:cover;border-radius:50%;border:1px solid #a58952}.brand>span{font-family:'Playfair Display',serif;font-size:28px;letter-spacing:2px;color:var(--goldlight)}.brand small{display:block;font-family:Manrope,sans-serif;letter-spacing:6px;font-size:9px;color:var(--gold);margin-top:-4px}.main-nav{display:flex;align-items:center;gap:28px}.main-nav>a{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.4px;transition:color .25s}.main-nav>a:hover,.main-nav>a.current{color:var(--gold)}.main-nav>.nav-cta{padding:15px 20px;border:1px solid #b99c68;color:var(--goldlight);margin-left:12px}.nav-toggle{display:none;background:transparent;border:0;width:45px;height:45px;padding:10px}.nav-toggle span{display:block;height:1px;width:25px;margin:6px auto;background:var(--gold)}.eyebrow{font:700 10px/1.5 Manrope,sans-serif;letter-spacing:3px;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:15px}.mini-line{width:28px;height:1px;background:var(--gold);display:inline-block;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1,h2,h3,blockquote{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1 em,h2 em,h3 em,blockquote em{font-weight:400;color:var(--goldlight)}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:18px 23px;font:800 10px/1.2 Manrope,sans-serif;text-transform:uppercase;letter-spacing:1.4px;transition:transform .28s,background .28s,border-color .28s;min-height:54px}.btn:hover{transform:translateY(-3px)}.btn-gold{background:var(--gold);color:#110f0b;border:1px solid var(--gold)}.btn-gold:hover{background:#ecd09b}.btn-outline{border:1px solid #a38b5e;color:#f1e5d1;background:#0004}.btn-outline:hover{border-color:var(--goldlight)}.btn span{font-size:19px;font-weight:400}.home-hero{min-height:710px;position:relative;isolation:isolate;overflow:hidden}.hero-photography{position:absolute;inset:0;background-size:cover;background-position:65% 34%;z-index:-2}.home-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#090908 0%,transparent 32%)}.home-hero-layout{min-height:710px;display:flex;align-items:center;justify-content:space-between;position:relative}.hero-body{max-width:690px;padding:85px 0 100px}.hero-body h1{font-size:clamp(68px,8vw,116px);line-height:1.04;letter-spacing:-2.5px;margin:24px 0 26px}.hero-lead{font-size:16px;line-height:1.9;color:#d0cdc6;max-width:505px}.action-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-signature{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);width:max-content;max-width:100%;margin-top:60px;padding-top:22px}.line-icon{color:var(--gold)}.hero-signature strong,.hero-signature small{display:block;letter-spacing:2px}.hero-signature strong{font-size:10px}.hero-signature small{font-size:10px;color:var(--muted);margin-top:6px}.hero-float-note{align-self:flex-end;display:flex;gap:24px;align-items:center;border-left:1px solid var(--gold);padding-left:25px;margin-bottom:130px}.hero-float-note span{color:var(--gold);font:13px Manrope}.hero-float-note strong{font:800 9px/1.7 Manrope;letter-spacing:2px}.hero-ornament{font-family:serif;font-size:200px;color:#d4b87f14;position:absolute;right:-30px;bottom:-80px}.scroll-cue{position:absolute;right:4%;bottom:45px;color:var(--gold);font-size:9px;letter-spacing:2px;writing-mode:vertical-rl;display:flex;align-items:center;gap:20px}.scroll-cue span{display:block;height:62px;width:1px;background:var(--gold)}.ticker{background:#c7a263;color:#0a0907;overflow:hidden;height:50px;display:flex;align-items:center;white-space:nowrap}.ticker-track{animation:marquee 32s linear infinite;font:800 11px Manrope;letter-spacing:2.8px;min-width:max-content}.ticker span{margin:0 36px;font-size:18px}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:125px 0}.dark-band{background:#11110f}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.editorial-stack{min-height:610px;position:relative}.photo{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#4b3925,#11110f 75%)}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease,filter .6s}.photo:hover img{transform:scale(1.055)}.photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0707064d,transparent 60%);pointer-events:none}.photo-fallback:after{content:'H2  ·  SALON';display:grid;place-items:center;color:var(--gold);font-family:'Playfair Display';font-size:30px;letter-spacing:4px}.photo-tall{width:76%;height:565px}.photo-small{width:55%;height:320px;position:absolute;right:0;bottom:-35px;border:9px solid var(--black)}.small-stamp{position:absolute;bottom:10px;left:15px;border-radius:50%;height:136px;width:136px;background:#b8904e;color:#0b0907;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-15deg)}.small-stamp b{font:50px 'Playfair Display'}.small-stamp span{font:700 8px/1.5 Manrope;text-align:center;letter-spacing:1px}.intro-copy h2,.section-head h2,.signature-heading h2,.brand-board-copy h2,.contact-left h2,.booking-aside h2{font-size:clamp(43px,4.8vw,70px);line-height:1.17;letter-spacing:-1px;margin:24px 0}.intro-copy p,.signature-heading p,.brand-board-copy p,.contact-left p,.booking-aside p{font-size:15px;line-height:2;color:var(--muted);max-width:520px}.intro-copy p.lead{font:24px/1.6 'Playfair Display';color:#efe6d9}.intro-copy>.btn{margin-top:24px}.service-symbols{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;padding:25px 0;margin-top:35px}.service-symbols div{display:flex;gap:10px;align-items:center;color:var(--goldlight);font:700 11px Manrope;letter-spacing:1px}.icon{width:28px;height:28px;flex-shrink:0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:54px}.section-head h2{margin:20px 0 0}.section-head>p{max-width:310px;color:var(--muted);line-height:1.9;font-size:14px}.editorial-cards{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:18px}.editorial-card{position:relative;height:505px;overflow:hidden}.editorial-card.tall-card{height:570px}.editorial-card .photo{position:absolute;inset:0}.editorial-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000d,transparent 70%);pointer-events:none}.editorial-overlay{position:absolute;left:35px;bottom:35px;right:25px;z-index:1}.editorial-overlay>span,.editorial-overlay>small{font:700 9px Manrope;letter-spacing:2px;color:var(--goldlight)}.editorial-overlay h3{font-size:48px;line-height:1.1;margin:12px 0 16px}.editorial-overlay>b{position:absolute;right:0;bottom:0;border:1px solid #ffffff99;width:44px;height:44px;display:grid;place-items:center;font-size:22px;font-weight:400}.signature-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:100px;align-items:center}.signature-heading .btn{margin-top:24px}.priced{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:28px 0;border-bottom:1px solid var(--line)}.priced:first-child{border-top:1px solid var(--line)}.priced div{position:relative;padding-left:45px}.priced b{font:700 11px Manrope;color:var(--gold);position:absolute;top:6px;left:0}.priced h3{font-size:25px;margin-bottom:4px}.priced small{font-size:12px;color:var(--muted)}.priced>strong{color:var(--goldlight);white-space:nowrap;font:700 12px Manrope}.photo-interlude{min-height:510px;background-size:cover;background-position:center;display:flex;align-items:center}.interlude-content h2{font-size:clamp(54px,6vw,88px);margin:25px 0}.interlude-content p{color:#d4d0c6;line-height:1.8}.interlude-content .btn{margin-top:24px}.package-promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.promo-card{padding:55px 55px 50px;background:linear-gradient(145deg,#1c1a15,#11110f);border:1px solid var(--line);position:relative}.promo-card.elevated{background:linear-gradient(145deg,#282115,#11110f);border-color:#ae8e55}.promo-card>p,.promo-card .label-best{font:800 10px Manrope;letter-spacing:2px;color:var(--gold);margin-bottom:45px}.promo-card h3{font-size:46px;line-height:1.15;margin-bottom:22px}.promo-card>strong{display:block;font:500 28px 'Playfair Display';color:var(--goldlight);border-bottom:1px solid var(--line);padding-bottom:25px}.promo-card ul{padding:20px 0 12px;margin:0;list-style:none}.promo-card li{padding:9px 0;font-size:13px;color:#d3cec3}.promo-card li:before{content:'✦';color:var(--gold);margin-right:13px}.promo-card .label-best{position:absolute;right:0;top:0;background:var(--gold);padding:11px 15px;color:#111;margin:0}.promo-card .btn{margin-top:12px}.disclaimer,.micro{font-size:11px!important;color:#979185!important;line-height:1.8!important}.disclaimer{margin-top:25px}.brand-board-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:100px}.brand-board-image{max-width:470px;margin:auto;border:1px solid #ae8e55;padding:12px}.brand-board-image img{width:100%;height:auto}.brand-board-copy .btn{margin-top:25px}.home-gallery{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:16px;grid-auto-rows:240px}.gallery-a{grid-row:span 2}.gallery-b{grid-row:span 2}.gallery-c{grid-row:span 1}.gallery-tile-cta{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;justify-content:space-between;color:var(--goldlight);font:800 11px/1.6 Manrope;letter-spacing:2px}.gallery-tile-cta b{font:38px 'Playfair Display';font-weight:400}.action-section{text-align:center;background:radial-gradient(ellipse at center,#302619 0%,#0c0b09 65%)}.action-inner h2{font-size:clamp(58px,7vw,92px);line-height:1.15;margin:24px 0}.action-inner .eyebrow{justify-content:center}.action-inner p{color:#c5bfb3;line-height:1.8}.action-inner .btn{margin:26px auto}.action-under{display:block;font:700 9px Manrope;letter-spacing:1.8px;color:#a49b8c}.footer{background:#070706;border-top:1px solid var(--line);padding:72px 0 22px}.footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:55px}.footer-intro img{width:78px;height:78px;border-radius:50%;border:1px solid var(--gold)}.footer-intro h3{font-size:27px;margin:16px 0;color:#f0e5d3}.footer-intro h3 i{color:var(--goldlight)}.footer-intro p,.footer-top>div>p{color:var(--muted);font-size:12px;line-height:1.9}.footer h4{font:800 10px Manrope;letter-spacing:2px;color:var(--gold);margin-bottom:26px}.footer-top>div>a{display:block;font-size:12px;color:#c9c5bc;margin-bottom:16px}.footer-top>div>a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid #3e3528;margin-top:65px;padding-top:20px;display:flex;justify-content:space-between;gap:18px;font-size:10px;color:#8f8778}.float-book{position:fixed;right:20px;bottom:20px;padding:15px 19px;background:var(--gold);color:#17120b;z-index:65;box-shadow:0 10px 30px #0009;font:800 10px Manrope;letter-spacing:1px;text-transform:uppercase}.float-book span{margin-right:8px}.reveal{opacity:0;transform:translateY(25px);transition:opacity .85s ease,transform .85s ease}.reveal.in-view{opacity:1;transform:translateY(0)}.subhero{height:430px;position:relative;display:flex;align-items:center;overflow:hidden}.subhero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.8}.subhero-content{position:relative}.subhero h1{font-size:clamp(56px,7vw,95px);line-height:1.1;margin:22px 0}.subhero-content>p:not(.eyebrow){font-size:14px;color:#d3cdc3;max-width:550px;line-height:1.8}.crumb{font:800 9px Manrope;letter-spacing:1.6px;color:var(--gold);text-transform:uppercase;margin-top:35px}.crumb span{margin:0 11px;color:#fff}.vertical-word{position:absolute;right:25px;bottom:40px;writing-mode:vertical-rl;color:var(--gold);letter-spacing:3px;font-size:9px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.values article{padding:48px 36px;border:1px solid var(--line)}.values .icon{width:40px;height:40px;color:var(--gold)}.values article span{float:right;font-size:11px;color:var(--gold)}.values h3{font-size:33px;margin:32px 0 12px}.values p{color:var(--muted);line-height:1.9;font-size:14px}.photo-quote{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.photo-quote .photo{height:500px}.quote-copy>span{font:700 10px Manrope;letter-spacing:2px;color:var(--gold)}.quote-copy blockquote{font-size:clamp(36px,4vw,55px);line-height:1.3;margin:25px 0}.jump-links{display:flex;flex-wrap:wrap;gap:10px;margin:40px 0 45px}.jump-links a,.gallery-filters button{border:1px solid var(--line);padding:12px 17px;font:700 10px Manrope;letter-spacing:1.4px;color:var(--goldlight);text-transform:uppercase;background:transparent}.jump-links a:hover,.gallery-filters button.active,.gallery-filters button:hover{background:var(--gold);color:#0a0907}.menu-editorial{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-menu-block{padding:40px;border:1px solid var(--line);background:#11110f;scroll-margin-top:125px}.service-menu-title span{font:700 10px Manrope;letter-spacing:2px;color:var(--gold)}.service-menu-title h3{font-size:36px;margin:14px 0 30px}.menu-line{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:14px 0;border-bottom:1px solid #4a403280}.menu-line span{font-size:13px;color:#ded7ca;line-height:1.5}.menu-line strong{font-size:11px;color:var(--goldlight);white-space:nowrap}.source-menu{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-top:100px}.source-menu img{max-height:740px;object-fit:contain;margin:auto}.source-menu h2{font-size:58px;margin:23px 0}.source-menu p{font-size:14px;line-height:2;color:var(--muted)}.source-menu .btn{margin-top:25px}.package-page{margin-top:60px}.package-page .promo-card{min-height:640px}.mini-package{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:35px 40px;margin-top:30px;border:1px solid var(--line)}.mini-package span{font:700 11px Manrope;letter-spacing:2px}.mini-package strong{font:26px 'Playfair Display';color:var(--gold)}.mini-package a{font-size:11px;color:var(--goldlight)}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.gallery-masonry{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-image{padding:0;border:0;background:#252017;height:380px;position:relative;overflow:hidden;text-align:left}.gallery-image:nth-child(2),.gallery-image:nth-child(5){height:460px}.gallery-image img{height:100%;width:100%;object-fit:cover;transition:transform .65s}.gallery-image:hover img{transform:scale(1.08)}.gallery-image>span{position:absolute;bottom:0;left:0;right:0;padding:40px 24px 24px;background:linear-gradient(transparent,#000d);font:700 11px Manrope;letter-spacing:1.4px;color:#fff}.original-gallery{margin-top:70px;border-top:1px solid var(--line);padding-top:40px;display:flex;gap:30px;align-items:center}.original-gallery h3{font-size:30px}.original-gallery p{color:var(--muted)}.original-gallery img:first-of-type{width:120px;height:120px;object-fit:cover}.original-gallery img:last-of-type{width:120px;height:160px;object-fit:contain}.lightbox{position:fixed;inset:0;z-index:150;background:#000f;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px 30px}.lightbox[hidden]{display:none}.lightbox img{max-height:75vh;max-width:90vw;object-fit:contain}.lightbox p{font-size:13px;color:var(--gold)}.lightbox-close{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;background:none;border:0}.contact-layout,.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.contact-list{margin-top:45px}.contact-list>a,.contact-list>div{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:23px 0}.contact-list .icon{color:var(--gold)}.contact-list span{flex:1}.contact-list small{display:block;font:700 10px Manrope;letter-spacing:2px;color:var(--gold);margin-bottom:8px}.contact-list strong{display:block;font-size:15px}.contact-list em{font-size:11px;color:var(--muted);display:block;margin-top:6px}.contact-list b{font-size:18px;color:var(--gold);font-weight:400}.contact-card{background:#1b1914;padding:12px;border:1px solid var(--line)}.contact-card-photo{height:340px}.contact-card-detail{padding:32px}.contact-card h3{font-size:37px;margin:15px 0}.contact-card p{color:var(--muted);line-height:1.8}.booking-steps{margin:42px 0}.booking-steps>div{display:flex;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:17px 0}.booking-steps span{font:20px 'Playfair Display';color:var(--gold)}.booking-steps p{margin:0!important;color:var(--white)}.aside-photo{height:360px}.booking-form-card{padding:52px;background:#151410;border:1px solid var(--line)}.form-kicker{font:700 10px Manrope;letter-spacing:2px;color:var(--gold)}.booking-form-card h3{font-size:44px;margin:18px 0 38px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label{font:700 10px Manrope;letter-spacing:1.4px;text-transform:uppercase;color:#d2c7b5}.form-grid label span{color:var(--gold)}.form-grid label.full{grid-column:span 2}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;margin-top:11px;border:1px solid #62513a;background:#0b0b0a;color:#fff;border-radius:0;padding:16px;font:13px 'DM Sans';outline:0}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--gold)}.form-grid textarea{resize:vertical}.form-grid input[type=date]{color-scheme:dark}.form-grid select option{background:#111}.booking-form-card .submit{width:100%;margin-top:28px}.form-disclaimer{font-size:11px;color:#a5a093;line-height:1.7;margin:18px 0 0}
@media(max-width:1120px){.main-nav{gap:16px}.main-nav>a{font-size:10px}.intro-grid,.brand-board-grid,.signature-grid{gap:60px}.editorial-overlay h3{font-size:37px}.hero-body h1{font-size:75px}}
@media(max-width:900px){.wrap{width:min(var(--wrap),calc(100% - 38px))}.topline span:last-child{display:none}.nav-toggle{display:block;position:relative;z-index:2}.main-nav{position:absolute;top:84px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:#10100f;border-bottom:1px solid var(--gold);padding:20px 26px 30px;max-height:calc(100vh - 84px);overflow:auto}.main-nav.open{display:flex}.main-nav a{padding:14px 0;font-size:12px}.main-nav>.nav-cta{margin:14px 0 0;text-align:center}.intro-grid,.brand-board-grid,.signature-grid,.source-menu,.contact-layout,.booking-layout,.photo-quote{grid-template-columns:1fr;gap:55px}.intro-copy{max-width:660px}.editorial-stack{max-width:650px}.editorial-cards{grid-template-columns:1fr 1fr}.editorial-card.tall-card{height:505px}.editorial-card:last-child{grid-column:1/-1;height:420px}.footer-top{grid-template-columns:1fr 1fr}.hero-float-note{display:none}.home-hero,.home-hero-layout{min-height:670px}.hero-body{padding:85px 0}.section{padding:90px 0}.source-menu img{max-height:600px}.gallery-masonry{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.wrap{width:calc(100% - 34px)}.topline{font-size:8px;padding:0 17px}.header-inner{height:70px}.brand img{width:48px;height:48px}.brand>span{font-size:23px}.main-nav{top:70px}.home-hero,.home-hero-layout{min-height:650px}.hero-photography{background-position:60% center;background-image:linear-gradient(90deg,#080808e8,#08080899),var(--hero-image)}.hero-body{padding:55px 0 85px}.hero-body h1{font-size:clamp(56px,13.7vw,76px);letter-spacing:-2px}.hero-lead{font-size:14px}.action-row{flex-direction:column;align-items:stretch}.action-row .btn{justify-content:space-between}.hero-signature{margin-top:40px}.scroll-cue{display:none}.section{padding:75px 0}.intro-grid{gap:55px}.editorial-stack{min-height:420px}.photo-tall{width:82%;height:400px}.photo-small{width:52%;height:240px;bottom:-20px}.small-stamp{height:100px;width:100px;bottom:0;left:7px}.small-stamp b{font-size:33px}.small-stamp span{font-size:6px}.section-head{flex-direction:column;align-items:start;gap:10px}.section-head h2,.intro-copy h2,.brand-board-copy h2,.signature-heading h2,.contact-left h2,.booking-aside h2{font-size:clamp(39px,10vw,55px)}.editorial-cards,.package-promo-grid,.values,.menu-editorial,.gallery-masonry{grid-template-columns:1fr}.editorial-card,.editorial-card.tall-card,.editorial-card:last-child{height:465px;grid-column:auto}.editorial-overlay h3{font-size:42px}.priced{align-items:start}.priced div{padding-left:32px}.priced h3{font-size:21px}.priced>strong{font-size:10px;padding-top:8px}.photo-interlude{min-height:460px}.interlude-content h2{font-size:57px}.promo-card{padding:34px 25px}.promo-card h3{font-size:38px}.home-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:200px;gap:10px}.gallery-a{grid-row:span 2}.gallery-b{grid-row:span 1}.gallery-c{grid-row:span 1}.gallery-tile-cta{grid-column:span 2}.action-inner h2{font-size:54px}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.footer-intro{grid-column:1/-1}.footer-bottom{flex-direction:column}.float-book{bottom:0;right:0;left:0;text-align:center;display:flex;justify-content:center}.footer{padding-bottom:90px}.subhero{height:380px}.subhero h1{font-size:clamp(52px,12vw,72px)}.vertical-word{display:none}.values article{padding:32px}.photo-quote .photo{height:380px}.service-menu-block{padding:28px 20px}.menu-line span{font-size:12px}.menu-line strong{font-size:10px;white-space:normal;text-align:right}.source-menu h2{font-size:48px}.mini-package{flex-direction:column;align-items:start;padding:25px}.gallery-image,.gallery-image:nth-child(2),.gallery-image:nth-child(5){height:360px}.original-gallery{flex-wrap:wrap}.booking-form-card{padding:32px 20px}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.booking-form-card h3{font-size:37px}.aside-photo{height:260px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}


/* V4: refined editorial system, meaningful motion and more accessible conversion UX */
:root{--v4-brass:#c8a678;--v4-chalk:#f5eee3;--v4-panel:#171512}
body{font-kerning:normal;-webkit-font-smoothing:antialiased}
::selection{background:#c8a678;color:#111}
:focus-visible{outline:2px solid #f1c98a;outline-offset:4px}
.scroll-progress{position:fixed;inset:0 auto auto 0;height:2px;width:0;background:linear-gradient(90deg,#8d6633,#e7c997);z-index:150;pointer-events:none}
.home-hero h1,.subhero h1,.section h2{letter-spacing:-.043em}
.home-hero .hero-lead{max-width:560px}
.v4-hero-kicker{display:inline-flex;align-items:center;gap:14px;letter-spacing:.2em!important;font-size:10px!important;font-weight:700;color:#dfc095!important;margin:0 0 24px!important}
.v4-hero-kicker span{font-size:18px}
.v4-signature-layout{display:grid;grid-template-columns:1fr .92fr;gap:clamp(35px,7vw,118px);align-items:center}
.v4-signature-content>p{max-width:520px;color:#c2b9ac;line-height:1.85}
.v4-ritual-list{margin:30px 0 34px;border-top:1px solid #5b50413d}
.v4-ritual-list a{display:grid;grid-template-columns:60px 1fr 22px;align-items:center;gap:18px;padding:22px 6px;border-bottom:1px solid #6a604a4a;transition:padding .3s,color .3s}
.v4-ritual-list a:hover{padding-left:12px;color:#e4bc87}
.ritual-symbol{font-family:Georgia,serif;font-size:27px;color:#d4b17e}
.v4-ritual-list b{display:block;font-size:17px;font-weight:600;margin-bottom:5px}.v4-ritual-list small{display:block;color:#a8a095;font-size:12px;letter-spacing:.02em}
.v4-signature-media{position:relative;padding:0 34px 38px 0}
.v4-frame-photo{aspect-ratio:4/5;overflow:hidden;border:1px solid #b5966240;background:#201b15}
.v4-frame-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.7);transition:transform 1s ease}
.v4-frame-photo:hover img{transform:scale(1.045)}
.v4-image-badge{position:absolute;right:0;bottom:0;width:166px;height:166px;background:#c6a574;color:#17130d;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;text-align:center;box-shadow:0 20px 50px #0008}
.v4-image-badge span{font:500 45px Georgia,serif}.v4-image-badge small{font-size:9px;letter-spacing:.19em;line-height:1.6;font-weight:700}
.v4-visit-section{background:radial-gradient(circle at 80% 30%,#3b2e1d38,transparent 45%),#11100e;border-top:1px solid #bea17c22}
.v4-visit-grid{display:grid;grid-template-columns:1fr 300px;gap:80px;align-items:center}.v4-visit-grid h2{max-width:630px}.v4-visit-text>p{max-width:600px}
.v4-visit-links{display:grid;max-width:510px;margin-top:28px}.v4-visit-links a{border-bottom:1px solid #a78e7138;padding:15px 4px;display:flex;justify-content:space-between;gap:12px;font-size:14px}.v4-visit-links a span{color:#d2ad78}
.v4-visit-mark{border:1px solid #bda0783d;padding:40px 32px;text-align:center;display:grid;gap:20px;justify-items:center}.v4-visit-mark img{width:135px;height:135px;object-fit:contain}.v4-visit-mark span{font-size:10px;letter-spacing:.2em;color:#bba688}
.v4-menu-note{display:flex;gap:16px;align-items:flex-start;margin:25px 0 32px;padding:19px 23px;background:#bda16f0a;border-left:2px solid #bd9a64}.v4-menu-note>span{color:#d5b989}.v4-menu-note p{font-size:13px;line-height:1.7;margin:0;color:#bdb3a5}
.v4-package-evidence{margin-top:100px;display:grid;grid-template-columns:1fr .85fr;gap:70px;align-items:center;padding:48px;border:1px solid #b5a07e38;background:#13110f}.v4-package-evidence h2{font-size:clamp(36px,4vw,60px)}.v4-package-evidence>img{max-height:660px;margin:auto;object-fit:contain;box-shadow:0 18px 45px #0009}
.v4-brand-gallery{margin-top:100px}.v4-brand-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.v4-brand-grid figure{margin:0;padding:12px;background:#14120f;border:1px solid #a68e6b36}.v4-brand-grid figure img{width:100%;aspect-ratio:4/5;object-fit:contain;background:#080808}.v4-brand-grid figcaption{padding:16px 10px 7px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#bea783}
.v4-faq-section{background:#10100e;border-top:1px solid #ffffff10}.v4-faqs{max-width:850px;margin-top:36px}.v4-faqs details{border-bottom:1px solid #b29b743e;padding:20px 0}.v4-faqs summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-size:18px;list-style:none}.v4-faqs summary::-webkit-details-marker{display:none}.v4-faqs summary::after{content:'+';color:#d8bb86}.v4-faqs details[open] summary::after{content:'−'}.v4-faqs p{max-width:670px;color:#bdb5a8;font-size:14px;line-height:1.75}
.v4-disclaimer{font-size:11px;color:#928778;line-height:1.65;padding-top:18px}
.v4-booking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(25px,6vw,88px);align-items:start}.v4-booking-intro>p{color:#b8afa1;line-height:1.8}.v4-booking-intro h2{font-size:clamp(45px,5.2vw,72px)}
.v4-booking-information{margin:35px 0 50px}.v4-booking-information>div{display:flex;align-items:center;gap:22px;padding:20px 0;border-bottom:1px solid #6d604c40}.v4-fact-icon{height:46px;width:46px;border:1px solid #ad8c604a;border-radius:50%;display:grid;place-items:center;color:#e3c498;font-size:22px}.v4-booking-information p{margin:0!important;display:grid;gap:4px}.v4-booking-information b{color:#eee7dc;font-weight:600;font-size:14px}.v4-booking-information small{font-size:12px;color:#a89d8d}.v4-contact-note{border-top:1px solid #bfa47649;padding-top:22px;display:grid;gap:10px}.v4-contact-note>span{font-size:11px;letter-spacing:.16em;color:#bfa57f}.v4-contact-note a{font-size:21px}.v4-contact-note small{color:#999084}
.v4-wizard{border:1px solid #ad906841;background:linear-gradient(155deg,#1d1a16,#100f0e 55%);padding:clamp(22px,4vw,43px);box-shadow:0 25px 70px #0008}.v4-wizard-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.v4-wizard-overline{font-size:10px;letter-spacing:.22em;color:#bd9f72}.v4-wizard h3{font-family:'Playfair Display',serif;font-size:clamp(29px,3vw,41px);margin:12px 0 0;font-weight:400}.v4-step-label{white-space:nowrap;font-size:10px;letter-spacing:.12em;color:#d7bb8f;margin-top:5px}.v4-step-track{display:flex;gap:6px;margin:30px 0}.v4-step-track span{height:2px;flex:1;background:#574a39;transition:background .2s}.v4-step-track span.is-active{background:#e2bd82}
.v4-step{border:0;padding:0;margin:0;min-width:0}.v4-step[hidden]{display:none}.v4-step legend{font-size:12px;color:#caa76f;letter-spacing:.18em;text-transform:uppercase;padding:0;margin-bottom:12px}.v4-step-help{color:#aaa194;font-size:14px;line-height:1.7;margin:0 0 23px}
.v4-service-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.v4-service-choices label{position:relative;display:flex;flex-direction:column;gap:8px;min-height:132px;padding:19px 15px;background:#14120f;border:1px solid #66564066;cursor:pointer;transition:background .2s,border-color .2s}.v4-service-choices label:hover,.v4-service-choices label:has(input:checked){border-color:#d5b17a;background:#241d13}.v4-service-choices label:has(input:focus-visible){outline:2px solid #f1c98a;outline-offset:2px}.v4-service-choices input{position:absolute;opacity:0;inset:0;cursor:pointer}.v4-service-choices span{font-size:25px;color:#d5b687}.v4-service-choices b{font-size:13px;font-weight:600;color:#eee7dc}.v4-service-choices small{font-size:11px;color:#ada08e}.v4-field-error{font-size:13px;color:#fac5b1;margin:16px 0 0}
.v4-form-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:26px}.v4-form-actions>span{font-size:11px;color:#968777}.v4-back{border:0;background:transparent;color:#d8bc96;cursor:pointer;padding:12px;font-size:14px}.v4-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.v4-fields label{display:flex;flex-direction:column;gap:11px;text-transform:uppercase;letter-spacing:.11em;font-size:11px;color:#d4b783}.v4-fields label.wide{grid-column:1/-1}.v4-fields input,.v4-fields select,.v4-fields textarea{display:block;width:100%;min-width:0;background:#12100e;border:1px solid #6b5640;padding:16px 13px;border-radius:0;color:#f4efe7;font:14px 'DM Sans',sans-serif;letter-spacing:normal}.v4-fields :is(input,select,textarea):focus{outline:1px solid #e4bd82}.v4-booking-summary{margin-top:25px;border:1px solid #ac906747;background:#17140f;padding:19px}.v4-booking-summary strong{font-size:11px;color:#d8b984;letter-spacing:.18em}.v4-booking-summary p{font-size:13px;line-height:1.9;color:#c7bfb4;margin:9px 0 0}.v4-booking-disclaimer{border-top:1px solid #68563d65;padding-top:23px;color:#a79e91;font-size:11px;line-height:1.8;margin-top:25px}
@media(max-width:980px){.v4-signature-layout,.v4-package-evidence,.v4-booking-layout{grid-template-columns:1fr}.v4-signature-media{max-width:600px}.v4-package-evidence{padding:26px}.v4-package-evidence>img{max-height:550px}.v4-visit-grid{gap:30px}}
@media(max-width:650px){.v4-visit-grid{grid-template-columns:1fr}.v4-visit-mark{max-width:250px}.v4-brand-grid{grid-template-columns:1fr 1fr}.v4-brand-grid figure:last-child{grid-column:1/-1}.v4-service-choices{grid-template-columns:1fr 1fr}.v4-service-choices label{min-height:125px;padding:16px 12px}.v4-form-actions{flex-wrap:wrap}.v4-fields{grid-template-columns:1fr}.v4-wizard{padding:22px}.v4-wizard-header{flex-direction:column;gap:8px}.v4-package-evidence{margin-top:55px}.v4-brand-gallery{margin-top:55px}.v4-signature-media{padding:0 22px 20px 0}.v4-image-badge{width:110px;height:110px}.v4-image-badge span{font-size:30px}.v4-visit-section{padding-bottom:85px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1!important;transform:none!important}}

/* V4.5 — final editorial refinement */
:root{--v45-accent:#d6b687;--v45-soft:#eee5d7}
::selection{background:#bf9d66;color:#10100e}
:focus-visible{outline:2px solid #ebc78f!important;outline-offset:4px}
:is(a,button,input,select,textarea){-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
.main-nav a,.footer a,.v4-visit-links a{transition:color .23s ease,background .23s ease,border-color .23s ease}
.main-nav a:hover,.footer a:hover,.v4-visit-links a:hover{color:#ebc790}
.btn{position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,border-color .25s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 36px #0007}
.btn:active{transform:translateY(0)}
.home-hero h1,.editorial-overlay h3,.action-inner h2{letter-spacing:-.035em}
.hero-lead,.intro-copy p,.section-head p{max-width:62ch}
.section{scroll-margin-top:90px}
.photo img,.editorial-card img,.home-gallery img{transition:transform .8s cubic-bezier(.18,.7,.3,1),filter .7s ease}
.editorial-card:hover img,.home-gallery .photo:hover img{transform:scale(1.045)}
.service-symbols svg{width:21px;height:21px}
.site-header{isolation:isolate}
.float-book{transition:transform .24s ease,box-shadow .24s ease}
.float-book:hover{transform:translateY(-3px);box-shadow:0 14px 30px #0008}
.v4-service-choices input{z-index:1}
.v4-wizard [aria-live]{min-height:1.5em}
.v4-step-track span{transition:background-color .28s ease}
.v4-booking-summary{border-left:2px solid #d9b87c}
.gallery-image:focus-visible{outline:2px solid #ebc78f!important;outline-offset:4px}
.v45-salon-divider{height:70px;display:flex;align-items:center;gap:22px;justify-content:center;overflow:hidden;background:#0c0b0a;border-top:1px solid #c29c5e25;border-bottom:1px solid #c29c5e25;color:#c6a272}
.v45-salon-divider:before,.v45-salon-divider:after{content:'';height:1px;width:min(28vw,310px);background:linear-gradient(90deg,transparent,#aa8858 70%,transparent)}
.v45-salon-divider svg{height:28px;width:28px;stroke:currentColor;fill:none;stroke-width:1.2;flex-shrink:0}
.v45-salon-divider span{white-space:nowrap;font-size:10px;font-weight:700;letter-spacing:.23em;color:#ceb38d}
.v45-menu-label{display:block;margin-top:14px;color:#9e9588;font-size:12px;line-height:1.65}
.v45-mobile-book{display:none}
@media(max-width:840px){
  .nav-toggle{min-height:44px;min-width:44px;display:grid;place-content:center;gap:5px}
  .main-nav.open{overscroll-behavior:contain}
  .main-nav a{min-height:44px;display:flex;align-items:center}
}
@media(max-width:650px){
  body{padding-bottom:68px}
  .float-book{display:none!important}
  .v45-mobile-book{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;align-items:center;justify-content:space-between;gap:12px;background:#0e0d0c;border-top:1px solid #bea17455;padding:10px max(16px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-shadow:0 -12px 35px #0009}
  .v45-mobile-book span{font-size:11px;line-height:1.4;color:#c7bdaf}.v45-mobile-book strong{display:block;color:#f1e7d7;font-size:13px}
  .v45-mobile-book a{padding:12px 18px;background:#d6b687;color:#15110c;font-size:11px;font-weight:800;letter-spacing:.03em;white-space:nowrap;min-height:44px;display:grid;place-items:center}
  .v45-salon-divider{height:58px;gap:14px}.v45-salon-divider span{font-size:9px;letter-spacing:.12em}.v45-salon-divider svg{width:23px;height:23px}
  .v4-service-choices{grid-template-columns:1fr 1fr}
  .v4-service-choices label{min-height:140px}
  .v4-form-actions .btn{min-height:48px}
  .footer{padding-bottom:28px}
}
@media(max-width:380px){.v4-service-choices{grid-template-columns:1fr}.v45-mobile-book span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.v45-salon-divider *, .btn{transition:none!important}}

@media(max-width:840px){body.menu-visible{overflow:hidden}.main-nav.open{max-height:calc(100dvh - 88px);overflow-y:auto}}
