.detail-header{background:#142019}.detail-header .header-slot{height:106px}.detail-header .header{background:#142019}
.detail-hero{position:relative;min-height:620px;padding:70px max(7vw,24px) 75px;background:#18201B;overflow:hidden;display:flex;align-items:center}
.detail-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102018ef 0%,#102018b0 44%,#10201830 100%),url('/assets/spa-ritual.jpg') center/cover}
.detail-hero-content{position:relative;max-width:720px}.detail-breadcrumb{font-size:10px;color:#d0c5b1;letter-spacing:1px;margin-bottom:55px}.detail-breadcrumb a{border-bottom:1px solid #bc995d66}
.detail-label{font-size:10px;letter-spacing:2.4px;color:#d1b882;text-transform:uppercase}.detail-hero h1{font-size:clamp(65px,7vw,110px);line-height:1;letter-spacing:-2px;margin:23px 0 25px}.detail-hero h1 em{color:#d8ba7f;font-weight:600}.detail-lead{font-size:14px;line-height:1.9;max-width:390px;color:#d3d6c9}.detail-hero .cta{width:max-content;margin-top:30px}.detail-image-note{position:absolute;right:30px;bottom:25px;font-size:9px;color:#e8dec9;letter-spacing:1px}
.detail-overview{background:#F6F2EA;color:#18201B;padding:105px max(7vw,24px);display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center}.detail-overview figure{margin:0;position:relative;padding-bottom:40px}.detail-overview img{width:100%;height:480px;object-fit:cover;border-radius:2px 70px 2px 2px}.detail-photo-caption{position:absolute;bottom:0;right:-20px;background:#18201B;color:#d5bd88;padding:24px 32px;font:600 29px Cormorant,Georgia,serif}.detail-overview h2,.detail-gallery h2,.detail-faq h2,.detail-booking h2{font:600 clamp(40px,4.5vw,64px)/1.08 Cormorant,Georgia,serif;letter-spacing:-1px;margin:18px 0 25px}.detail-overview h2 em{color:#9c7a40}.detail-overview p{font-size:13px;line-height:1.95;color:#5c645b;max-width:460px}.detail-info{margin-top:30px;border-top:1px solid #bc995d66}.detail-info div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #bc995d44;font-size:11px}.detail-info strong{font-weight:400;color:#737b6e;text-align:right}
.detail-gallery{padding:95px max(7vw,24px);background:#18201B}.detail-gallery-heading{display:flex;justify-content:space-between;gap:40px;align-items:end}.detail-gallery-heading p{max-width:280px;font-size:12px;line-height:1.8;color:#bdc5b7}.detail-gallery-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;margin-top:40px;align-items:start}.detail-gallery figure{margin:0}.detail-gallery figure+figure{padding-top:60px}.detail-gallery button{display:block;width:100%;border:0;background:transparent;padding:0;overflow:hidden;border-radius:3px 3px 50px 3px}.detail-gallery img{display:block;width:100%;height:360px;object-fit:cover;transition:transform .7s}.detail-gallery button:hover img{transform:scale(1.04)}.detail-gallery figcaption{font-size:10px;color:#c9ba9a;margin-top:15px;letter-spacing:1px}
.detail-faq{background:#EAE2D5;color:#18201B;padding:90px max(7vw,24px);display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.detail-faq details{border-bottom:1px solid #bc995d55;padding:24px 0}.detail-faq summary{cursor:pointer;font-size:15px;line-height:1.6}.detail-faq details p{font-size:12px;line-height:1.9;color:#596254}.detail-booking{background:#DCCCB0;color:#18201B;padding:75px max(7vw,24px);display:flex;justify-content:space-between;gap:45px;align-items:center}.detail-booking h2{max-width:650px;margin:12px 0}.detail-booking .cta{background:#18201B;color:#f6f2ea;flex-shrink:0}.detail-booking p{font-size:12px;line-height:1.8;color:#515b4d}.detail-lightbox{border:1px solid #bc995d66;background:#101811;padding:10px;max-width:90vw}.detail-lightbox::backdrop{background:#000b}.detail-lightbox img{display:block;max-width:85vw;max-height:80vh}.detail-lightbox button{display:block;margin:0 0 10px auto;background:none;border:0;color:#f6f2ea;font-size:14px;padding:8px}
@media(max-width:760px){.detail-header .header-slot{height:86px}.detail-hero{min-height:560px;padding-top:35px}.detail-breadcrumb{margin-bottom:45px}.detail-overview{grid-template-columns:1fr;gap:40px;padding-top:60px;padding-bottom:60px}.detail-overview img{height:330px}.detail-photo-caption{right:0;font-size:24px;padding:20px}.detail-gallery{padding-top:60px;padding-bottom:60px}.detail-gallery-heading{display:block}.detail-gallery-grid{grid-template-columns:1fr;gap:30px}.detail-gallery figure+figure{padding-top:0}.detail-gallery img{height:280px}.detail-faq{grid-template-columns:1fr;gap:15px;padding-top:60px;padding-bottom:60px}.detail-booking{display:block;padding-top:55px;padding-bottom:55px}.detail-booking .cta{margin-top:25px;width:max-content}.detail-image-note{right:24px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.detail-gallery button:hover img{transform:none}}

.detail-gallery-grid{grid-template-columns:1.55fr 1fr;grid-template-rows:repeat(2,210px);gap:24px;align-items:stretch}
.detail-gallery-grid figure:first-child{grid-row:1/3}.detail-gallery-grid figure+figure{padding-top:0}
.detail-gallery-grid figure{position:relative;min-height:0}.detail-gallery-grid button{height:100%}.detail-gallery-grid img{height:100%;width:100%;object-fit:cover}.detail-gallery-grid figcaption{position:absolute;bottom:0;left:0;right:0;padding:25px 20px 16px;background:linear-gradient(transparent,#101811d9);margin:0;pointer-events:none}
.detail-gallery-controls{display:flex;justify-content:space-between;align-items:center;margin-top:28px;color:#d7ba83;font-size:11px;letter-spacing:2px}.detail-gallery-controls>div{display:flex;gap:12px}.detail-gallery-controls button{width:44px;height:44px;padding:0;display:grid;place-items:center;border:1px solid #bc995d66;border-radius:50%;color:#d7ba83;background:transparent;font-size:20px;margin:0}.detail-gallery-controls button:hover{background:#bc995d22}
.detail-lightbox{width:min(1050px,94vw)}.detail-lightbox>img{width:100%;height:65vh;object-fit:contain;max-width:none}.detail-lightbox .detail-gallery-controls{margin:15px 10px 5px}
@media(max-width:760px){.detail-gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 140px;gap:14px}.detail-gallery-grid figure:first-child{grid-column:1/-1;grid-row:1}.detail-gallery-grid figcaption{font-size:8px;padding:22px 12px 12px;letter-spacing:.5px}.detail-lightbox>img{height:55svh}}

/* Photo-first fullscreen viewer. */
.detail-lightbox{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:0;background:#080c0bf5;overflow:hidden;color:#f6f2ea}
.detail-lightbox::backdrop{background:#080c0b}
.detail-lightbox>img{position:absolute;inset:32px 72px 44px;width:calc(100% - 144px);height:calc(100% - 76px);max-width:none;max-height:none;object-fit:contain}
.detail-lightbox [data-lightbox-close]{position:absolute;z-index:2;top:18px;right:22px;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:50%;background:#161d1bb3;color:#eee;font:300 32px/1 Arial;display:grid;place-items:center}
.detail-lightbox .detail-gallery-controls{position:absolute;inset:0;margin:0;pointer-events:none}
.detail-lightbox .detail-gallery-controls button{position:absolute;top:50%;transform:translateY(-50%);pointer-events:auto;width:46px;height:58px;border:0;border-radius:3px;background:#161d1b99;color:#fff;font-size:26px}
.detail-lightbox [data-lightbox-prev]{left:12px}.detail-lightbox [data-lightbox-next]{right:12px}
.detail-lightbox [data-lightbox-count]{position:absolute;left:50%;bottom:15px;transform:translateX(-50%);font-size:10px;letter-spacing:2px;color:#b4bcb7}
@media(max-width:760px){.detail-lightbox>img{inset:65px 8px 60px;width:calc(100% - 16px);height:calc(100% - 125px)}.detail-lightbox [data-lightbox-close]{top:12px;right:12px}.detail-lightbox .detail-gallery-controls button{top:auto;bottom:8px;transform:none;width:44px;height:44px;background:transparent}.detail-lightbox [data-lightbox-count]{bottom:24px}}

.about-hero{background:#18201B;color:#F6F2EA;padding:65px max(7vw,24px) 85px;position:relative;overflow:hidden}.about-crumb{font-size:10px;color:#c7b88f;margin-bottom:45px}.about-hero-grid{display:grid;grid-template-columns:1fr .85fr;gap:85px;align-items:center}.about-hero h1{font:600 clamp(58px,6vw,88px)/1.05 Cormorant,Georgia,serif;letter-spacing:-1.5px;margin:25px 0}.about-hero h1 em{color:#d1b47b}.about-copy{font-size:13px;line-height:1.95;color:#c2cbbd;max-width:400px}.about-hero figure{margin:0;position:relative;padding-top:30px}.about-lobby{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.about-lobby img{display:block;width:100%;aspect-ratio:1/1.1;object-fit:cover;border-radius:100px 3px 3px 3px}.about-hero figcaption{margin-top:17px;font-size:9px;letter-spacing:2px;color:#c7b88f}.about-place{display:inline-flex;gap:20px;align-items:center;margin-top:33px;padding-top:20px;border-top:1px solid #bc995d55;font-size:10px;letter-spacing:1px;color:#d8bd87}
.about-story{background:#F6F2EA;color:#18201B;padding:95px max(7vw,24px);display:grid;grid-template-columns:.65fr 1.35fr;gap:100px}.about-story h2,.about-spaces h2{font:600 clamp(40px,4.5vw,64px)/1.08 Cormorant,Georgia,serif;margin:22px 0;letter-spacing:-1px}.about-story p{font-size:14px;line-height:2;color:#5f685c;margin:0 0 22px}.about-story .story-lead{font:600 31px/1.35 Cormorant,Georgia,serif;color:#18201B}.about-principles{margin-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:28px}.about-principles article{border-top:1px solid #bc995d77;padding-top:20px}.about-principles h3{font-size:13px;margin:0 0 12px}.about-principles p{font-size:12px;line-height:1.9;margin:0}
.about-spaces{background:#EAE2D5;color:#18201B;padding:85px max(7vw,24px)}.about-spaces-top{display:flex;justify-content:space-between;align-items:end;gap:40px}.about-spaces-top>p{max-width:340px;font-size:12px;line-height:1.9;color:#68715f}.about-space-list{margin-top:40px;border-top:1px solid #bc995d77}.about-space-list a{display:grid;grid-template-columns:60px .8fr 1fr 32px;gap:25px;align-items:center;padding:28px 0;border-bottom:1px solid #bc995d55;transition:padding .3s,color .3s}.about-space-list span{font-size:10px;color:#9b7d47}.about-space-list h3{font:600 32px Cormorant,Georgia,serif;margin:0}.about-space-list p{font-size:12px;line-height:1.9;color:#68715f;margin:0}.about-space-list b{font-size:23px;font-weight:400;color:#967641}.about-space-list a:hover{padding-left:12px;color:#967641}.about-closing{background:#18201B;padding:75px max(7vw,24px);display:flex;gap:60px;align-items:center;justify-content:space-between}.about-closing h2{font:600 52px/1.1 Cormorant,Georgia,serif;margin:15px 0}.about-closing p{font-size:12px;line-height:1.9;color:#c2cbbd;max-width:420px}.about-closing .cta{flex-shrink:0}
@media(max-width:760px){.about-hero{padding-top:35px;padding-bottom:55px}.about-hero-grid{grid-template-columns:1fr;gap:25px}.about-hero figure{padding-top:10px}.about-lobby img{aspect-ratio:4/3;border-radius:55px 3px 3px 3px}.about-story{grid-template-columns:1fr;gap:15px;padding-top:60px;padding-bottom:60px}.about-principles{grid-template-columns:1fr;gap:24px}.about-spaces{padding-top:55px;padding-bottom:60px}.about-spaces-top{display:block}.about-space-list a{grid-template-columns:25px 1fr 25px;gap:12px}.about-space-list h3{font-size:29px}.about-space-list p{grid-column:2;grid-row:2}.about-space-list b{grid-column:3;grid-row:1}.about-closing{display:block;padding-top:55px;padding-bottom:55px}.about-closing h2{font-size:43px}.about-closing .cta{width:max-content;margin-top:25px}}
@media(prefers-reduced-motion:reduce){.about-space-list a{transition:none}}

.contact-page-hero{padding:60px max(7vw,24px) 70px;background:#18201B;position:relative;overflow:hidden}.contact-page-hero:after{content:'';position:absolute;width:480px;height:480px;border:1px solid #bc995d25;border-radius:50%;right:-100px;top:-180px;pointer-events:none}.contact-page-hero h1{font:600 clamp(60px,6vw,88px)/1.07 Cormorant,Georgia,serif;margin:28px 0 25px;letter-spacing:-1.5px}.contact-page-hero h1 em{color:#d1b47b}.contact-page-hero p{font-size:13px;line-height:1.9;color:#c1c9ba;max-width:470px}.contact-page-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;background:#F6F2EA;color:#18201B;padding:85px max(7vw,24px)}.contact-page-layout h2{font:600 46px/1.1 Cormorant,Georgia,serif;margin:18px 0 30px}.contact-page-address{font-size:15px;line-height:1.9;max-width:420px}.contact-page-detail{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:40px}.contact-page-detail div{border-top:1px solid #bc995d66;padding-top:20px}.contact-page-detail h3{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#987a40}.contact-page-detail p{font-size:12px;line-height:1.9;color:#69715e}.contact-page-directions{display:flex;width:max-content;gap:30px;align-items:center;padding:18px 24px;margin-top:30px;background:#18201B;color:#f6f2ea;font-size:12px}.contact-page-location{background:#EAE2D5;padding:35px 30px;align-self:start;margin-top:30px;position:relative}.contact-page-location img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.contact-page-location h3{font:600 32px Cormorant,Georgia,serif;margin:25px 0 10px}.contact-page-location p{font-size:12px;line-height:1.9;color:#65705d}.contact-page-location small{display:block;color:#9b7d47;font-size:9px;letter-spacing:1px;margin-top:14px}.contact-page-note{background:#DCCCB0;color:#18201B;padding:65px max(7vw,24px);display:flex;gap:60px;justify-content:space-between;align-items:center}.contact-page-note h2{font:600 42px/1.1 Cormorant,Georgia,serif;margin:12px 0}.contact-page-note p{font-size:12px;line-height:1.9;max-width:500px;color:#5c654f}.contact-page-note a{font-size:12px;border-bottom:1px solid #987a40;padding-bottom:8px;white-space:nowrap}
@media(max-width:760px){.contact-page-hero{padding-top:35px;padding-bottom:50px}.contact-page-layout{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:55px}.contact-page-layout h2{font-size:38px}.contact-page-location{margin-top:0;padding:22px}.contact-page-note{display:block;padding-top:50px;padding-bottom:50px}.contact-page-note a{display:inline-block;margin-top:18px}.contact-page-detail{gap:20px}}

/* Consistent, readable primary navigation. */
.nav{font-size:15px;gap:28px}.nav .chevron{font-size:12px}
@media(min-width:761px) and (max-width:1100px){.nav{font-size:14px;gap:18px}}
@media(max-width:760px){.nav{font-size:16px;gap:23px}}

.contact-modern-intro{position:relative;background:#18201B;padding:35px max(calc((100% - 1320px)/2),7vw) 90px;overflow:hidden}.contact-modern-intro .about-crumb{margin-bottom:40px}.contact-modern-title{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:90px}.contact-modern-title h1{font:600 clamp(54px,5.5vw,80px)/1.06 Cormorant,Georgia,serif;margin:20px 0 0;letter-spacing:-1.4px}.contact-modern-title h1 em{color:#d1b47b}.contact-modern-title p{font-size:13px;line-height:1.95;color:#c2cbbd;max-width:360px;margin:0 0 4px}.contact-modern-body{background:#F6F2EA;color:#18201B;padding:0 max(calc((100% - 1320px)/2),7vw) 80px}.contact-modern-location{position:relative;top:-35px;margin-bottom:-35px;display:grid;grid-template-columns:1.75fr 1fr;min-height:480px;box-shadow:0 20px 50px #18201b15}.contact-modern-map{position:relative;background:#dedbd2;min-height:480px}.contact-modern-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.75)}.contact-modern-address{padding:45px 38px;background:#223027;color:#f6f2ea;display:flex;flex-direction:column;align-items:flex-start}.contact-modern-address h2{font:600 43px/1.08 Cormorant,Georgia,serif;margin:22px 0}.contact-modern-address address{font-style:normal;font-size:13px;line-height:1.95;color:#d0d6c7}.contact-modern-address .cta{margin-top:30px;width:100%;padding:0 22px;height:56px}.contact-modern-address small{font-size:10px;line-height:1.8;color:#aab8a7;margin-top:auto;padding-top:28px}.contact-modern-coordinates{display:flex;gap:12px;align-items:center;font-size:9px;letter-spacing:1.7px;color:#d7ba83}.contact-modern-coordinates svg{width:20px;height:20px}.contact-modern-info{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:55px}.contact-modern-info article{border-top:1px solid #bc995d77;padding-top:22px}.contact-modern-info .info-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eae2d5;color:#967440;margin-bottom:20px}.contact-modern-info h3{font:600 27px Cormorant,Georgia,serif;margin:0 0 12px}.contact-modern-info p{font-size:12px;line-height:1.8;color:#6b7363;margin:0}.contact-modern-bottom{display:flex;align-items:center;justify-content:space-between;gap:50px;border-top:1px solid #bc995d55;padding-top:35px;margin-top:55px}.contact-modern-bottom h2{font:600 34px Cormorant,Georgia,serif;margin:0 0 10px}.contact-modern-bottom p{font-size:12px;line-height:1.9;color:#68715f;max-width:530px;margin:0}.contact-modern-bottom a{white-space:nowrap;padding-bottom:8px;border-bottom:1px solid #bc995d;font-size:12px}
@media(max-width:1100px){.contact-modern-title{gap:45px;grid-template-columns:1.1fr .9fr}.contact-modern-location{grid-template-columns:1.2fr 1fr}.contact-modern-address{padding:35px 28px}.contact-modern-info{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.contact-modern-intro{padding:28px 27px 65px}.contact-modern-intro .about-crumb{margin-bottom:30px}.contact-modern-title{grid-template-columns:1fr;gap:25px}.contact-modern-title h1{font-size:53px}.contact-modern-title p{max-width:none}.contact-modern-body{padding:0 27px 55px}.contact-modern-location{grid-template-columns:1fr;top:-25px;margin-bottom:-25px}.contact-modern-map{min-height:340px}.contact-modern-address{padding:30px 25px}.contact-modern-address h2{font-size:37px}.contact-modern-info{gap:30px 22px;margin-top:40px}.contact-modern-info h3{font-size:25px}.contact-modern-bottom{display:block;margin-top:40px;padding-top:28px}.contact-modern-bottom a{display:inline-block;margin-top:24px}}

/* Compact contact layout, matching the site's visual rhythm. */
.contact-modern-intro{padding-top:28px;padding-bottom:65px}
.contact-modern-intro .about-crumb{margin-bottom:28px}
.contact-modern-title{grid-template-columns:1fr;gap:20px}
.contact-modern-title h1{font-size:clamp(48px,4.5vw,64px);margin-top:16px;line-height:1.06}
.contact-modern-title>p{max-width:640px;margin:0;font-size:14px;line-height:1.8}
.contact-modern-body{padding-bottom:55px}
.contact-modern-location{min-height:390px;grid-template-columns:1.6fr 1fr;box-shadow:0 12px 32px #18201b0d}
.contact-modern-map{min-height:390px}
.contact-modern-address{padding:30px 32px}
.contact-modern-address h2{font-size:36px;margin:16px 0 20px}
.contact-modern-address address{font-size:14px;line-height:1.8}
.contact-modern-address .cta{margin-top:22px;height:52px}
.contact-modern-address small{padding-top:18px;font-size:10px}
.contact-modern-info{margin-top:38px;gap:25px}
.contact-modern-info article{padding-top:18px}
.contact-modern-info .info-icon{margin-bottom:14px}
.contact-modern-info h3{font-size:27px;margin-bottom:10px}
.contact-modern-info p{font-size:14px;line-height:1.7;color:#596552}
@media(max-width:760px){.contact-modern-intro{padding-top:24px;padding-bottom:50px}.contact-modern-title h1{font-size:48px}.contact-modern-title>p{font-size:13px}.contact-modern-location{grid-template-columns:1fr;min-height:0}.contact-modern-map{min-height:290px}.contact-modern-address{padding:28px 25px}.contact-modern-info{grid-template-columns:1fr 1fr;gap:25px 18px}.contact-modern-info p{font-size:12px}.contact-modern-info h3{font-size:24px}}

/* Subtle contact card interaction. */
.contact-modern-info article{position:relative;padding:22px 18px 20px;border-top-color:#bc995d55;transition:transform .35s ease,background .35s ease,box-shadow .35s ease}
.contact-modern-info article:before{content:'';position:absolute;left:0;top:-1px;width:38px;height:2px;background:#bc995d;transition:width .4s ease}
.contact-modern-info article .info-icon{transition:background .35s,color .35s,transform .35s,box-shadow .35s}
.contact-modern-info article h3{transition:color .3s}
@media(hover:hover){.contact-modern-info article:hover{transform:translateY(-5px);background:#eae2d580;box-shadow:0 14px 30px #18201b0b}.contact-modern-info article:hover:before{width:100%}.contact-modern-info article:hover .info-icon{background:#bc995d;color:#18201B;transform:rotate(-8deg) scale(1.08);box-shadow:0 0 0 7px #bc995d12}.contact-modern-info article:hover h3{color:#806235}}
@media(prefers-reduced-motion:reduce){.contact-modern-info article,.contact-modern-info article:before,.contact-modern-info article .info-icon{transition:none}.contact-modern-info article:hover,.contact-modern-info article:hover .info-icon{transform:none}}

/* Footer navigation legibility. */
.footer-nav{font-size:14px;line-height:1.6;gap:12px;color:#d2d8cb}.footer-title{font-size:11px;letter-spacing:1.5px}.footer-socials svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6}
@media(max-width:760px){.footer-nav{font-size:13px}.footer-title{font-size:10px}}
