:root{--paper:#f8f1e8;--paper-deep:#efe2d3;--cream:#fffaf4;--ink:#2f2722;--muted:#756961;--terracotta:#a85d3d;--terracotta-dark:#713824;--rose:#d9b6a1;--olive:#7a8266;--line:#4d35292e;--serif:Georgia, "Times New Roman", serif;--sans:"Segoe UI", Inter, Arial, sans-serif;--shadow:0 24px 64px #4f2f2021;--shell:76rem}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6.5rem}body{background:var(--paper);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;min-width:20rem;margin:0;overflow-x:hidden}body:before{content:"";opacity:.22;pointer-events:none;z-index:-1;background-image:radial-gradient(#6847351f .65px,#0000 .65px);background-size:12px 12px;position:fixed;inset:0}::selection{background:var(--rose);color:var(--ink)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--olive);outline-offset:3px}.skip-link{background:var(--ink);color:#fff;z-index:1000;padding:.8rem 1rem;position:fixed;top:-6rem;left:1rem}.skip-link:focus{top:1rem}.shell{max-width:var(--shell);width:100%;margin-inline:auto;padding-inline:clamp(1.15rem,4vw,2.5rem)}.site-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;background:#f8f1e8e6;border-bottom:1px solid #6a4c3c24;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:5.25rem;display:flex}.header-actions{align-items:center;gap:.7rem;display:flex}.brand{align-items:center;gap:.72rem;display:inline-flex}.brand-logo{object-fit:cover;background:#fff;border-radius:50%;width:3.75rem;height:3.75rem}.brand-copy{line-height:1.08;display:grid}.brand-copy strong{font-family:var(--serif);font-size:1.18rem;font-weight:400}.brand-copy small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.63rem}.desktop-nav{align-items:center;gap:clamp(1rem,2.2vw,2rem);display:flex}.desktop-nav>a:not(.button){font-size:.9rem;font-weight:650;position:relative}.desktop-nav>a:not(.button):after{background:var(--terracotta);content:"";transform-origin:0;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:-.45rem;left:0;transform:scaleX(0)}.desktop-nav>a:hover:after{transform:scaleX(1)}.mobile-menu{display:none;position:relative}.mobile-menu summary{border:1px solid var(--line);cursor:pointer;border-radius:999px;align-items:center;min-height:2.75rem;padding-inline:1rem;font-size:.85rem;font-weight:700;display:flex}.mobile-menu summary::marker{content:""}.mobile-menu nav{background:var(--cream);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:1rem;gap:.2rem;min-width:min(18rem,100vw - 2rem);padding:.75rem;display:grid;position:absolute;top:calc(100% + .65rem);right:0}.mobile-menu nav a:not(.button){border-radius:.65rem;min-height:2.75rem;padding:.75rem}.language-menu{position:relative}.language-menu summary,.language-fallback{background:var(--cream);border:1px solid var(--line);color:var(--ink);cursor:pointer;letter-spacing:.08em;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;min-width:4.25rem;min-height:2.75rem;padding-inline:.8rem;font-size:.76rem;font-weight:800;display:inline-flex}.language-menu summary::marker{content:""}.language-menu summary span{color:var(--terracotta);font-size:1rem}.language-menu nav{background:var(--cream);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:.9rem;min-width:12rem;padding:.45rem;display:grid;position:absolute;top:calc(100% + .65rem);right:0}.language-menu nav a{border-radius:.6rem;grid-template-columns:2.15rem 1fr;align-items:center;gap:.35rem;min-height:2.65rem;padding:.55rem .65rem;font-size:.86rem;display:grid}.language-menu nav a span{color:var(--terracotta);letter-spacing:.08em;font-size:.67rem;font-weight:850}.language-menu nav a:hover,.language-menu nav a[aria-current=page]{background:var(--paper-deep)}.button{background:var(--terracotta);border:1px solid var(--terracotta);color:#fff;cursor:pointer;border-radius:.58rem;justify-content:center;align-items:center;min-height:3.2rem;padding:.78rem 1.35rem;font-size:.91rem;font-weight:750;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.button:hover{background:var(--terracotta-dark);border-color:var(--terracotta-dark);transform:translateY(-2px)}.button-small{min-height:2.8rem;padding:.65rem 1.15rem}.button-light{background:var(--cream);border-color:var(--cream);color:var(--terracotta-dark)}.button-light:hover{background:#fff;border-color:#fff}.text-link{align-items:center;gap:.55rem;min-height:3rem;font-size:.95rem;font-weight:750;display:inline-flex}.text-link span{color:var(--terracotta);font-size:1.3rem;transition:transform .18s}.text-link:hover span{transform:translate(4px)}.hero{padding-block:clamp(3.5rem,6vw,6rem) clamp(4.5rem,7vw,7rem);position:relative;overflow:hidden}.hero:before{content:"";border:1px solid #a85d3d29;border-radius:50%;width:46rem;height:46rem;position:absolute;top:-18rem;right:-20rem}.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(20rem,.92fr);align-items:center;gap:clamp(3rem,7vw,7rem);display:grid}.hero-copy{z-index:2;min-width:0;position:relative}.kicker{color:var(--terracotta);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.65rem;margin:0 0 1.1rem;font-size:.73rem;font-weight:800;display:flex}.kicker:before{content:"";background:currentColor;width:2rem;height:1px}.kicker-light{color:#f7dfd0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04}h1{letter-spacing:-.055em;max-width:13ch;margin-bottom:1.6rem;font-size:clamp(3.25rem,6.6vw,5.6rem)}h2{letter-spacing:-.045em;margin-bottom:1.4rem;font-size:clamp(2.55rem,5.6vw,5rem)}h3{letter-spacing:-.025em;font-size:clamp(1.55rem,2.3vw,2.1rem)}h1 em,h2 em{color:var(--terracotta);font-weight:400}.hero-lead,.large-copy{color:var(--muted);font-size:clamp(1.08rem,1.8vw,1.28rem);line-height:1.75}.hero-lead{max-width:37rem}.actions{flex-wrap:wrap;align-items:center;gap:.8rem 1.5rem;margin-top:2rem;display:flex}.hero-proof{border-top:1px solid var(--line);flex-wrap:wrap;gap:1.1rem 2rem;margin-top:3rem;padding-top:1.4rem;display:flex}.hero-proof span{color:var(--muted);text-transform:uppercase;gap:.1rem;font-size:.74rem;display:grid}.hero-proof b{color:var(--ink);font-family:var(--serif);text-transform:none;font-size:1.08rem;font-weight:400}.hero-visual{z-index:1;justify-self:end;width:100%;max-width:31rem;position:relative}.hero-photo{background:var(--rose);box-shadow:var(--shadow);border-radius:48% 48% 1.25rem 1.25rem;height:clamp(32rem,48vw,42rem);overflow:hidden}.hero-photo img{object-fit:cover;object-position:center;width:100%;height:100%}.hero-seal{box-shadow:var(--shadow);background:#fff;border-radius:50%;width:8.5rem;height:8.5rem;position:absolute;bottom:4rem;left:-4.25rem;overflow:hidden}.hero-seal img{object-fit:cover;width:100%;height:100%}.hero-note{color:#fff;background:#2f2722e6;padding:1rem 1.35rem;display:grid;position:absolute;bottom:-1.5rem;right:-1.5rem}.hero-note span{color:#e6c4b1;letter-spacing:.14em;text-transform:uppercase;font-size:.62rem}.hero-note strong{font-family:var(--serif);font-size:1rem;font-weight:400}.quick-book{background:var(--terracotta-dark);color:#fff;padding-block:2.2rem}.quick-book-inner{justify-content:space-between;align-items:center;gap:2rem;display:flex}.quick-book .kicker{margin-bottom:.45rem}.quick-book-title{font-family:var(--serif);margin:0;font-size:clamp(1.35rem,2.5vw,2rem)}.section{padding-block:clamp(5.5rem,10vw,9rem)}.section-heading{grid-template-columns:1.45fr .55fr;align-items:end;gap:3rem;margin-bottom:clamp(2.6rem,6vw,4.5rem);display:grid}.section-heading h2{max-width:13ch;margin-bottom:0}.section-heading>p{color:var(--muted);margin:0;line-height:1.75}.services-heading{grid-template-columns:1fr}.centered-heading{text-align:center;display:block}.centered-heading .kicker{justify-content:center}.centered-heading h2{margin-inline:auto}.massage-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:1.25rem;display:grid}.massage-card{background:var(--cream);border:1px solid #583d2f24;grid-template-rows:auto 1fr;min-width:0;height:100%;display:grid;overflow:hidden}.massage-image{height:15.5rem;position:relative;overflow:hidden}.massage-image img{object-fit:cover;width:100%;height:100%;transition:transform .45s}.massage-card:hover .massage-image img{transform:scale(1.035)}.massage-image>span{color:var(--terracotta);font-family:var(--serif);background:#fffaf4e6;padding:.35rem .55rem;position:absolute;top:1rem;left:1rem}.massage-body{flex-direction:column;padding:clamp(1.35rem,3vw,2.15rem);display:flex}.card-kicker{color:var(--terracotta);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.75rem;font-size:.66rem;font-weight:800}.certification-badge{color:#596047;letter-spacing:.08em;text-transform:uppercase;background:#7a826624;border:1px solid #7a826657;border-radius:999px;align-items:center;margin:0 0 .8rem;padding:.36rem .62rem;font-size:.67rem;font-weight:800;display:inline-flex}.massage-body h3{margin-bottom:.85rem}.massage-body>p:not(.card-kicker):not(.home-price){color:var(--muted);line-height:1.65}.massage-meta{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:auto;margin-bottom:1rem;padding-top:1.3rem;font-size:.86rem;display:flex}.massage-meta strong{color:var(--terracotta-dark)}.massage-prices{place-items:end;display:grid}.home-price{color:var(--muted);margin-top:.35rem;font-size:.76rem;font-weight:500}.card-link{color:var(--terracotta-dark);justify-content:space-between;align-items:center;min-height:2.75rem;font-size:.87rem;font-weight:750;display:flex}.card-link span{font-size:1.25rem}.card-actions{border-top:1px solid var(--line);gap:.7rem;margin-top:0;padding-top:.7rem;display:grid}.card-actions .card-link{border-bottom:1px solid var(--line)}.card-book-link{background:var(--terracotta);border:1px solid var(--terracotta);color:var(--cream);letter-spacing:.02em;text-align:center;border-radius:999px;justify-content:center;align-items:center;min-height:3rem;padding:.72rem 1rem;font-size:.82rem;font-weight:800;transition:background .18s,border-color .18s,transform .18s;display:flex}.card-book-link:hover{background:var(--terracotta-dark);border-color:var(--terracotta-dark);color:var(--cream);transform:translateY(-1px)}.card-book-link:focus-visible{outline-offset:3px;outline:3px solid #a6583f4d}.care-note{color:var(--muted);text-align:center;max-width:49rem;margin:2rem auto 0;font-size:.82rem;line-height:1.6}.salon-section{background:var(--paper-deep)}.salon-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(3rem,7vw,6rem);display:grid}.salon-copy h2,.about-copy h2{max-width:12ch}.practical-list{border-block:1px solid var(--line);margin-block:2rem}.practical-list div{grid-template-columns:7rem 1fr;gap:1rem;padding-block:1rem;display:grid}.service-area-copy{color:var(--muted);max-width:42rem;margin:1.25rem 0 0;font-size:.92rem;line-height:1.65}.practical-list div+div{border-top:1px solid var(--line)}.practical-list dt{color:var(--terracotta);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:800}.practical-list dd{margin:0;line-height:1.55}.salon-gallery{grid-template-rows:repeat(2,14rem);grid-template-columns:1.18fr .82fr;gap:.9rem;display:grid}.salon-gallery img{object-fit:cover;width:100%;height:100%}.salon-gallery .gallery-tall{grid-row:1/3}.camping-note{border-top:1px solid var(--line);grid-template-columns:.8fr 1.8fr auto;align-items:center;gap:1.5rem;margin-top:4rem;padding-top:2rem;display:grid}.camping-note span{font-family:var(--serif);font-size:1.3rem}.camping-note p{color:var(--muted);margin:0;line-height:1.6}.camping-note a{color:var(--terracotta-dark);white-space:nowrap;font-weight:800}.home-service-note{margin-top:clamp(2rem,4vw,3rem)}.about-section{background:var(--ink);color:#fff}.about-grid{grid-template-columns:.8fr 1.2fr;align-items:stretch;gap:clamp(3rem,8vw,7rem);display:grid}.about-portrait{min-height:28rem;position:relative}.about-portrait img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.about-portrait p{background:var(--terracotta);font-family:var(--serif);max-width:22rem;margin:0;padding:1.25rem 1.45rem;font-size:clamp(1.15rem,2.2vw,1.6rem);line-height:1.35;position:absolute;bottom:-2rem;right:-2.5rem}.about-copy .large-copy,.about-copy>p:not(.kicker){color:#d8d0cb;line-height:1.75}.values-grid{border-top:1px solid #ffffff2e;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.25rem;padding-top:1.5rem;display:grid}.values-grid span{gap:.3rem;display:grid}.values-grid b{color:var(--rose);font-family:var(--serif);font-size:.85rem;font-weight:400}.steps{counter-reset:none;grid-template-columns:repeat(4,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}.steps li{border-left:1px solid var(--line);min-height:13rem;padding:1.3rem clamp(1rem,2.4vw,2rem)}.steps li:last-child{border-right:1px solid var(--line)}.steps span{color:var(--terracotta);font-family:var(--serif)}.steps h3{margin:2.4rem 0 .75rem}.steps p{color:var(--muted);line-height:1.6}.center-action{justify-content:center;margin-top:2.5rem;display:flex}.faq-section{background:var(--cream)}.faq-grid{grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,8vw,7rem);display:grid}.faq-list details{border-top:1px solid var(--line);padding-block:1.35rem}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-family:var(--serif);padding-right:3rem;font-size:clamp(1.2rem,2vw,1.55rem);list-style:none;position:relative}.faq-list summary:after{color:var(--terracotta);content:"+";font-family:var(--sans);font-size:1.4rem;font-weight:300;position:absolute;top:0;right:0}.faq-list details[open] summary:after{content:"−"}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{color:var(--muted);max-width:44rem;margin:1rem 0 0;line-height:1.7}.site-footer{background:var(--terracotta-dark);color:#fff;padding:clamp(4.5rem,8vw,7rem) 0 2rem}.footer-grid{grid-template-columns:1.5fr .7fr .7fr;gap:3rem;display:grid}.footer-intro h2{color:#fff;max-width:11ch;font-size:clamp(2.5rem,5vw,4.5rem)}.footer-intro>p:not(.kicker){color:#e3cabb;max-width:30rem;line-height:1.6}.footer-intro .button{margin-top:1rem}.footer-title{color:#eac5b0;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1.2rem;font-size:.68rem;font-weight:800}.footer-grid>div:not(.footer-intro){flex-direction:column;gap:.8rem;display:flex}.footer-grid>div:not(.footer-intro) a,.footer-grid>div:not(.footer-intro) p:not(.footer-title){color:#eadbd2;margin:0;line-height:1.6}.footer-grid>div:not(.footer-intro) a:hover{color:#fff;text-underline-offset:4px;text-decoration:underline}.social-links{gap:.65rem;margin-top:.2rem;display:flex}.social-link{border:1px solid #ffffff59;border-radius:999px;justify-content:center;align-items:center;width:2.8rem;height:2.8rem;transition:background .18s,border-color .18s,transform .18s;display:inline-flex!important}.social-link:hover{background:#ffffff1f;border-color:#fff;transform:translateY(-2px);text-decoration:none!important}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.footer-bottom{color:#d8b9a7;border-top:1px solid #ffffff2e;justify-content:space-between;margin-top:4rem;padding-top:1.5rem;font-size:.78rem;display:flex}.footer-legal{gap:1.2rem;display:flex}.footer-language-row{border-top:1px solid #ffffff2e;margin-top:1.35rem;padding-top:1.35rem}.footer-languages{color:#eadbd2;align-items:center;gap:1rem 1.5rem;font-size:.78rem;display:flex}.footer-language-title{color:#eac5b0;letter-spacing:.12em;text-transform:uppercase;font-size:.66rem;font-weight:800}.footer-language-links{flex-wrap:wrap;gap:.65rem 1rem;display:flex}.footer-language-links a{align-items:baseline;gap:.35rem;display:inline-flex}.footer-language-links a span{color:#d9ad93;letter-spacing:.08em;font-size:.62rem;font-weight:850}.footer-language-links a:hover,.footer-language-links a[aria-current=page]{color:#fff;text-underline-offset:4px;text-decoration:underline}.mobile-booking-bar{display:none}.booking-section{padding-block:clamp(3rem,7vw,6rem)}.booking-step-card,.legal-card{background:var(--cream);border:1px solid var(--line);padding:clamp(1.4rem,3vw,2.2rem)}.guided-booking{max-width:68rem;margin-inline:auto}.booking-progress{background:var(--paper);z-index:80;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-bottom:1.25rem;padding-top:.35rem;display:grid;position:sticky;top:5.25rem}.booking-progress button{border:0;border-bottom:2px solid var(--line);color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:0 0;align-items:center;gap:.55rem;min-height:3.3rem;padding:.5rem .2rem;font-size:.78rem;font-weight:750;display:flex}.booking-progress button:disabled{cursor:not-allowed;opacity:.48}.booking-progress button.is-available{color:var(--ink)}.booking-progress button[aria-current=step]{border-color:var(--terracotta);color:var(--terracotta-dark)}.booking-progress button span{border:1px solid;border-radius:999px;flex:none;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;display:inline-flex}.booking-step-card{min-height:30rem}.booking-step-card>h2{margin-bottom:1.5rem;font-size:clamp(2.2rem,5vw,4rem)}.booking-back{color:var(--terracotta-dark);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:.4rem;margin-bottom:1.4rem;padding:0;font-size:.82rem;font-weight:750;display:inline-flex}.booking-step-intro{color:var(--muted);margin:-.7rem 0 1.5rem;line-height:1.6}.location-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.location-option{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:.6rem;gap:.3rem;width:100%;min-height:9rem;padding:1.2rem;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.location-option:hover{border-color:var(--terracotta);transform:translateY(-1px)}.location-option:focus-visible{outline-offset:2px;outline:3px solid #a85d3d40}.location-option.is-selected{border-color:var(--terracotta);box-shadow:inset 3px 0 0 var(--terracotta);background:#a85d3d14}.location-option span{font-family:var(--serif);font-size:1.35rem}.location-option small{color:var(--muted);font-size:.74rem;line-height:1.45}.booking-massage-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.booking-massage-options button{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:.6rem;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:.45rem;min-height:10rem;padding:1rem;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.booking-massage-options button:hover,.booking-massage-options button.is-selected{border-color:var(--terracotta);transform:translateY(-1px)}.booking-massage-options button.is-selected{box-shadow:inset 3px 0 0 var(--terracotta);background:#a85d3d14}.booking-massage-options strong{font-family:var(--serif);font-size:1.15rem;font-weight:500}.booking-massage-options span{color:var(--muted);font-size:.76rem}.booking-massage-options .booking-massage-description{flex:1;line-height:1.45}.booking-massage-options .booking-massage-duration{color:var(--terracotta-dark);font-size:.72rem;font-weight:800}.booking-continue{margin-top:1.4rem}.selection-card{border-block:1px solid var(--line);margin-block:1.2rem;padding-block:1.2rem}.selection-card strong{font-family:var(--serif);margin-bottom:.35rem;font-size:1.3rem;font-weight:400;display:block}.selection-card span,.booking-note{color:var(--muted);font-size:.82rem;line-height:1.6}.selection-card p{color:var(--muted);margin:.7rem 0 0;font-size:.78rem;line-height:1.55}.booking-panel{border:1px solid var(--line);background:#fff;min-height:44rem;margin-top:1.5rem;padding:.75rem}.booking-panel iframe{border:0;width:100%;min-height:42rem}.booking-panel-actions,.booking-help-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.booking-panel-actions{margin-top:1.2rem}.booking-help-actions{border-top:1px solid var(--line);margin-top:1.4rem;padding-top:1.4rem}.booking-success{background:#7a82661f;border:1px solid #7a826659;margin-top:1.4rem;padding:1.25rem}.booking-success h3{margin-bottom:.45rem;font-size:1.7rem}.booking-success p{color:var(--muted);line-height:1.6}.button-secondary{border:1px solid var(--terracotta);color:var(--terracotta-dark);background:0 0}.button-secondary:hover{color:#fff}.legal-page{padding-block:clamp(3.5rem,7vw,6rem)}.legal-card{max-width:50rem;margin-inline:auto;line-height:1.75}.legal-card h1{max-width:none;font-size:clamp(2.6rem,6vw,4.5rem)}.legal-card h2{margin-top:2.4rem;font-size:clamp(1.7rem,3vw,2.4rem)}.legal-card p,.legal-card li{color:var(--muted)}@media (width<=64rem){.hero-grid{grid-template-columns:1fr;gap:3rem}.hero-copy{max-width:46rem}.hero-visual{justify-self:center;width:calc(100% - 2rem);max-width:34rem}.hero-seal{bottom:2.5rem;left:-1.5rem}.massage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.salon-grid,.about-grid{gap:3.5rem}.camping-note{grid-template-columns:1fr 2fr}.camping-note a{grid-column:2}}.massage-detail-hero{background:var(--paper-deep);padding-block:clamp(2rem,5vw,4rem) clamp(4rem,8vw,7rem)}.breadcrumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.76rem;display:flex}.breadcrumbs a:hover{color:var(--terracotta-dark);text-underline-offset:.2rem;text-decoration:underline}.massage-detail-grid{grid-template-columns:minmax(18rem,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(2.5rem,7vw,6rem);display:grid}.massage-detail-photo{box-shadow:var(--shadow);height:min(42rem,65vw);min-height:32rem;overflow:hidden}.massage-detail-photo img{object-fit:cover;width:100%;height:100%}.massage-detail-intro h1{max-width:12ch;font-size:clamp(3.3rem,7vw,6rem)}.detail-facts{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin:2rem 0 0;display:grid}.detail-facts div{padding-block:1rem}.detail-facts div:nth-child(odd){border-right:1px solid var(--line);padding-right:1rem}.detail-facts div:nth-child(2n){padding-left:1rem}.detail-facts div:nth-child(n+3){border-top:1px solid var(--line)}.detail-facts dt{color:var(--terracotta);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.35rem;font-size:.65rem;font-weight:800}.detail-facts dd{font-family:var(--serif);margin:0;font-size:1.05rem;line-height:1.4}.massage-detail-content{background:var(--cream)}.detail-content-grid{grid-template-columns:minmax(0,1.4fr) minmax(17rem,.6fr);align-items:start;gap:clamp(2.5rem,8vw,7rem);display:grid}.detail-prose{gap:3.2rem;display:grid}.detail-prose h2{max-width:18ch;margin-bottom:1rem;font-size:clamp(2rem,4vw,3.2rem)}.detail-prose p,.detail-side-panel>p:not(.card-kicker){color:var(--muted);font-size:1.05rem;line-height:1.8}.detail-prose p{max-width:48rem}.detail-side-panel{background:var(--paper-deep);border:1px solid var(--line);padding:clamp(1.4rem,3vw,2.2rem);position:sticky;top:7rem}.wellness-note{border-top:1px solid var(--line);margin:1.5rem 0 0;padding-top:1.5rem;font-size:.86rem!important}.related-section{background:var(--paper-deep)}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;max-width:62rem;margin-inline:auto;display:grid}.related-card{background:var(--cream);border:1px solid var(--line);grid-template-columns:10rem minmax(0,1fr);min-width:0;display:grid;overflow:hidden}.related-card>img{object-fit:cover;width:100%;height:100%;min-height:10rem}.related-card>span{align-content:center;gap:.55rem;padding:1.3rem;display:grid}.related-card small{color:var(--terracotta);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:800}.related-card strong{font-family:var(--serif);font-size:1.4rem;font-weight:400}.related-card>span>span{color:var(--terracotta-dark);font-size:.78rem;font-weight:750}@media (width<=60rem){.desktop-nav{display:none}.mobile-menu{display:block}}@media (width<=50rem){html{scroll-padding-top:5.5rem}.desktop-nav{display:none}.mobile-menu{display:block}.header-actions{gap:.45rem}.hero{padding-top:3rem}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:42rem}.hero-visual{justify-self:center;width:calc(100% - 2rem);max-width:34rem}.hero-photo{height:min(39rem,118vw)}.hero-seal{left:-1.5rem}.hero-note{right:-1rem}.section-heading,.salon-grid,.about-grid,.faq-grid,.footer-grid,.massage-detail-grid,.detail-content-grid{grid-template-columns:1fr}.massage-detail-photo{height:min(40rem,110vw);min-height:0}.detail-side-panel{position:static}.section-heading{align-items:start;gap:1rem}.salon-copy,.about-copy{max-width:42rem}.about-portrait{width:100%;max-width:30rem;min-height:0;margin-inline:auto}.about-portrait img{aspect-ratio:4/5;height:auto;position:static;inset:auto}.about-portrait p{right:-1rem}.steps{grid-template-columns:repeat(2,1fr)}.steps li:nth-child(3),.steps li:nth-child(4){border-top:1px solid var(--line)}.steps li:nth-child(2){border-right:1px solid var(--line)}.footer-grid{gap:2.5rem}}@media (width<=40rem){body{padding-bottom:calc(4.7rem + env(safe-area-inset-bottom))}.header-inner{height:4.7rem}.brand-copy small{display:none}.brand-logo{width:3.2rem;height:3.2rem}.language-menu summary,.language-fallback{min-width:3.7rem;padding-inline:.65rem}h1{font-size:clamp(2.8rem,13vw,3.5rem)}h2{font-size:clamp(2.4rem,12vw,3.6rem)}.hero-proof{grid-template-columns:repeat(2,1fr);display:grid}.hero-seal{width:7rem;height:7rem;left:-1.1rem}.hero-note{bottom:-1rem;right:-.8rem}.quick-book-inner{flex-direction:column;align-items:stretch}.quick-book .button{width:100%}.massage-grid{grid-template-columns:1fr}.massage-image{height:15.5rem;min-height:0}.salon-gallery{grid-template-rows:20rem 10rem;grid-template-columns:1fr 1fr}.salon-gallery .gallery-tall{grid-area:auto/1/auto/3}.camping-note{grid-template-columns:1fr;align-items:start}.camping-note a{grid-column:auto}.practical-list div{grid-template-columns:1fr;gap:.45rem}.about-portrait p{bottom:-1.5rem;left:1rem;right:1rem}.about-copy{margin-top:1rem}.values-grid,.steps{grid-template-columns:1fr}.steps li,.steps li:nth-child(2),.steps li:nth-child(3),.steps li:nth-child(4){border:0;border-top:1px solid var(--line);min-height:auto;padding-block:1.4rem}.steps li:last-child{border-bottom:1px solid var(--line)}.steps h3{margin-top:.8rem}.footer-bottom{flex-direction:column;align-items:flex-start;gap:1rem}.related-grid{grid-template-columns:1fr}.related-card{grid-template-columns:7.5rem minmax(0,1fr)}.footer-languages{flex-direction:column;align-items:flex-start}.mobile-booking-bar{border-top:1px solid var(--line);padding:.65rem .85rem calc(.65rem + env(safe-area-inset-bottom));z-index:120;background:#fffaf4f5;display:block;position:fixed;bottom:0;left:0;right:0}.mobile-booking-bar .button{width:100%;min-height:3.15rem}.booking-panel{min-height:36rem;margin-inline:-.65rem;padding:.7rem}.booking-panel iframe{min-height:34rem}.booking-progress{gap:.25rem}.booking-progress button{flex-direction:column;align-items:flex-start;gap:.3rem;font-size:.68rem}.location-options,.booking-massage-options{grid-template-columns:1fr}.location-option,.booking-massage-options button{min-height:6.5rem}.booking-panel-actions,.booking-help-actions{flex-direction:column;align-items:stretch}.booking-panel-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
