@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.resize{resize:both}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--brand-primary:#20372e;--brand-primary-deep:#14251e;--brand-primary-soft:#3c554a;--brand-secondary:#89502f;--brand-accent:#d9e6df;--brand-accent-warm:#d6a078;--surface-primary:#f3efe7;--surface-secondary:#d9d2c6;--surface-elevated:#fbf8f1;--surface-dark:#182c24;--text-primary:#17271f;--text-secondary:#59655e;--text-inverse:#f7f1e7;--border-subtle:#17271f2e;--border-inverse:#fff3;--font-display:Georgia, "Times New Roman", serif;--font-body:Arial, Helvetica, sans-serif;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:5rem;--radius-sm:2px;--radius-md:10px;--shadow-soft:0 20px 60px #16201b21;--motion:.24s cubic-bezier(.2, .8, .2, 1);--ease-editorial:cubic-bezier(.22, 1, .36, 1);--page-gutter:max(1.25rem, calc((100vw - 1320px) / 2))}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{background:var(--surface-primary);color:var(--text-primary);font-family:var(--font-body);margin:0;font-size:16px;line-height:1.45}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}a,button,input,select,textarea{outline-offset:4px}:focus-visible{outline:2px solid var(--brand-secondary)}img{object-fit:cover}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:#fff;padding:1rem;position:fixed;top:-100%;left:1rem}.skip-link:focus{top:1rem}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--brand-secondary);margin:0 0 1rem;font-size:.68rem;font-weight:700}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-weight:400}h1{max-width:11ch;font-size:clamp(3.25rem,8vw,7.5rem);line-height:.92}h2{font-size:clamp(2.6rem,5vw,5.4rem);line-height:.96}h3{font-size:clamp(2.1rem,3vw,3.7rem);line-height:1}.button{border:1px solid var(--brand-primary);background:var(--brand-primary);color:var(--surface-primary);min-height:48px;transition:transform var(--motion), background var(--motion), color var(--motion);justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.2rem;display:inline-flex}.button:hover{background:var(--brand-secondary);border-color:var(--brand-secondary);transform:translateY(-2px)}.button--small{min-height:40px;padding:.6rem .9rem;font-size:.85rem}.button--light{color:var(--surface-primary);background:0 0;border-color:#fff9}.text-link{text-align:left;background:0 0;border:0;align-items:center;gap:.45rem;padding:0;font-weight:700;display:inline-flex}.text-link:hover{color:var(--brand-secondary)}.site-header{z-index:30;color:var(--surface-primary);transition:background var(--motion), box-shadow var(--motion);position:fixed;inset:0 0 auto}.site-header.is-scrolled{background:#1c2923f5;box-shadow:0 4px 20px #0000001a}.header-inner{align-items:center;gap:2rem;max-width:1380px;height:76px;margin:auto;padding:0 1.25rem;display:flex}.wordmark{font-family:var(--font-display);letter-spacing:-.075em;white-space:nowrap;font-size:1.45rem}.wordmark span{color:var(--brand-secondary)}.desktop-nav{gap:1.35rem;margin-left:auto;font-size:.87rem;display:flex}.desktop-nav a{opacity:.88}.desktop-nav a:hover{opacity:1}.menu-toggle{color:inherit;background:0 0;border:0;margin-left:auto;padding:.5rem;display:none}.header-cta{margin-left:1rem}.mobile-nav{display:none}.hero{isolation:isolate;color:#f8f3ea;align-items:end;min-height:100svh;padding:clamp(7rem,17vh,12rem) max(1.25rem,50vw - 660px) 4rem;display:grid;position:relative;overflow:hidden}.hero-media,.hero-shade{z-index:-2;position:absolute;inset:0}.hero-video,.hero-fallback{object-fit:cover;width:100%;height:100%}.hero-fallback{z-index:-3;background:#263a31}.hero-shade{z-index:-1;background:linear-gradient(90deg,#131f1ac2,#131f1a33 65%,#131f1a59),linear-gradient(#0000 40%,#131f1a80)}.hero-content{max-width:680px}.hero-copy{max-width:44ch;margin:1.6rem 0 2.25rem;font-size:clamp(1.1rem,2vw,1.35rem)}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.hero .text-link{color:#fff}.hero-note{letter-spacing:.08em;color:#fff9;font-size:.7rem;position:absolute;bottom:1.25rem;right:1.25rem}.steam{z-index:-1;filter:blur(28px);background:#e6f0eb1f;border-radius:50%;width:18rem;height:12rem;animation:9s ease-in-out infinite float;position:absolute}.steam--one{top:25%;right:17%}.steam--two{animation-delay:-5s;top:40%;right:-6%}@keyframes float{50%{opacity:.55;transform:translate(-1rem,-2rem)scale(1.1)}}.intro{grid-template-columns:.45fr 1.3fr 1fr;align-items:start;gap:2rem;display:grid}.section-index{font:700 .72rem/1 var(--font-body);letter-spacing:.1em;color:var(--brand-secondary);border-top:1px solid var(--border-subtle);padding-top:.75rem}.intro-copy{max-width:30rem;padding-top:.5rem}.intro-copy p{font:400 clamp(1.3rem, 2vw, 1.75rem)/1.3 var(--font-display);margin:0 0 1rem}.intro-copy span{color:var(--text-secondary);font-size:.9rem}.baths{background:var(--brand-primary);color:var(--surface-primary)}.section-heading{justify-content:space-between;align-items:end;gap:3rem;margin-bottom:3.5rem;display:flex}.section-heading>p{max-width:25rem;color:inherit;opacity:.76;margin:0}.bath-grid{background:#fff3;grid-template-columns:1fr 1fr;gap:1px;display:grid}.bath-card{background:#304239;grid-template-rows:55% 45%;min-height:720px;display:grid}.bath-image{position:relative;overflow:hidden}.bath-image img{transition:transform .7s}.bath-image span{letter-spacing:.15em;font-size:.7rem;position:absolute;top:1.25rem;right:1.25rem}.bath-content{grid-template-columns:1fr 1fr;align-content:start;gap:1.25rem;padding:2rem;display:grid}.bath-content h3{margin:.1rem 0 1rem}.bath-content p{color:#ffffffc7;margin:0}dl{margin:0}dt{color:inherit;opacity:.62;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.35rem;font-size:.72rem}dd{margin:0}.bath-content dl div+div{margin-top:1.1rem}.bath-content ul{border-top:1px solid #fff3;flex-wrap:wrap;grid-column:1/-1;gap:.5rem 1.1rem;margin:0;padding:1.25rem 0 0;font-size:.85rem;list-style:none;display:flex}.bath-content li{align-items:center;gap:.3rem;display:flex}.bath-actions{grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:.75rem;display:flex}.bath-actions .text-link{color:#fff}.services{grid-template-columns:.42fr .9fr 1.4fr;gap:2rem;display:grid}.service-heading>p:last-child{max-width:24rem;color:var(--text-secondary);margin:1.5rem 0}.service-list{border-top:1px solid var(--border-subtle)}.service-list article{border-bottom:1px solid var(--border-subtle);grid-template-columns:2.5rem 1fr auto;align-items:start;gap:1rem;padding:1.25rem 0;display:grid}.service-list article>span{color:var(--brand-secondary);padding-top:.35rem;font-size:.73rem}.service-list h3{letter-spacing:-.025em;font-size:1.35rem}.service-list p{color:var(--text-secondary);margin:.3rem 0 0;font-size:.9rem}.service-list strong{text-align:right;font-size:.85rem;font-weight:500}.gallery-grid{grid-template-columns:1.3fr .7fr .7fr 1.3fr;gap:.75rem;display:grid}.gallery-item{color:#fff;text-align:left;border:0;min-height:300px;padding:0;position:relative;overflow:hidden}.gallery-item--tall{min-height:440px}.gallery-item:after{content:"";background:linear-gradient(#0000 45%,#00000073);position:absolute;inset:0}.gallery-item:hover img{transform:scale(1.04)}.gallery-item span,.gallery-item i{z-index:1;font-style:normal;position:absolute;bottom:1rem;left:1rem}.gallery-item i{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff2e;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;left:auto;right:1rem}.rules{grid-template-columns:1.1fr 1fr;gap:4rem;display:grid}.rules-panel{border-top:1px solid var(--border-subtle);font:400 1.25rem/1.35 var(--font-display);padding-top:1rem}.rules-panel p{margin:0 0 2rem}.contacts{color:var(--surface-primary);background:var(--brand-primary);grid-template-columns:1fr 1.3fr;gap:6rem;display:grid}.contact-copy .button{background:var(--brand-secondary);border-color:var(--brand-secondary);margin-top:2rem}.contact-details>dl{grid-template-columns:1fr 1fr;gap:2rem 1rem;margin-bottom:3.5rem;display:grid}.map-placeholder{background:#ffffff09;border:1px dashed #fff6;flex-direction:column;justify-content:center;align-items:start;min-height:220px;padding:2rem;display:flex}.map-placeholder p{color:#ffffffb3;max-width:25rem;margin:.75rem 0 1.3rem}.footer{color:var(--surface-primary);background:#17231d;grid-template-columns:2fr 1fr 1.5fr auto;gap:2rem;padding:2.5rem max(1.25rem,50vw - 660px);font-size:.85rem;display:grid}.footer p{color:#fff9}.footer nav,.footer div:nth-child(3){flex-direction:column;gap:.5rem;display:flex}.footer a:hover{color:#d0a16b}.footer small{color:#ffffff80;white-space:nowrap;align-self:end}.dialog-overlay{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0d1411b8;position:fixed;inset:0}.booking-dialog,.bath-dialog,.gallery-dialog{z-index:61;background:var(--surface-primary);box-shadow:var(--shadow-soft);outline:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.booking-dialog{width:min(570px,100vw - 2rem);max-height:calc(100dvh - 2rem);padding:clamp(1.75rem,5vw,3rem);overflow:auto}.booking-dialog [role=dialog]{display:block}.booking-dialog h2,.bath-dialog h2{margin-bottom:1rem;font-size:clamp(2.4rem,5vw,3.7rem);line-height:1}.dialog-lead{color:var(--text-secondary);max-width:30rem}.close-button{z-index:2;background:0 0;border:0;padding:.4rem;position:absolute;top:1rem;right:1rem}.contact-choices{gap:.5rem;margin-top:2rem;display:grid}.contact-choice{border:1px solid var(--border-subtle);text-align:left;background:0 0;grid-template-columns:2rem 1fr auto;align-items:center;gap:.5rem;min-height:58px;padding:1rem;display:grid}.contact-choice:hover:not(.is-disabled){border-color:var(--brand-secondary);background:#ece5d9}.contact-choice span:last-child{color:var(--text-secondary);font-size:.76rem}.contact-choice.is-disabled{opacity:.6;cursor:not-allowed}.choice-icon{font-size:1.4rem}.back-button{color:var(--text-secondary);background:0 0;border:0;margin:0 0 1.25rem;padding:0}.booking-dialog form{gap:1rem;margin-top:1.75rem;display:grid}.field{gap:.35rem;font-size:.85rem;display:grid}.field>span{font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--border-subtle);background:#fbf8f1;border-radius:0;width:100%;padding:.7rem}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field-error{color:#a0392f;margin:0;font-size:.76rem}.consent{align-items:flex-start;gap:.6rem;font-size:.8rem;display:flex}.consent input{margin-top:.2rem}.spinner{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.success-state{flex-direction:column;justify-content:center;align-items:start;min-height:280px;display:flex}.success-state p{max-width:30rem}.bath-dialog{grid-template-columns:1fr 1fr;width:min(980px,100vw - 2rem);max-height:calc(100dvh - 2rem);display:grid;overflow:auto}.dialog-image{min-height:580px;position:relative}.dialog-content{align-self:center;padding:clamp(2rem,4vw,4rem)}.dialog-content>p:not(.eyebrow){color:var(--text-secondary)}.dialog-content dl{grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0;display:grid}.dialog-content ul{margin:0 0 2rem;padding-left:1.1rem}.gallery-dialog{background:#101713;width:min(1100px,100vw - 2rem);height:min(760px,100dvh - 2rem)}.gallery-dialog img,.gallery-dialog video{object-fit:contain}.gallery-dialog video{background:#101713;width:100%;height:100%;display:block}.gallery-dialog .close-button,.gallery-prev,.gallery-next{color:#fff;background:#0000004d;border:0;padding:.65rem;position:absolute}.gallery-prev,.gallery-next{top:50%;transform:translateY(-50%)}.gallery-prev{left:1rem}.gallery-next{right:1rem}.gallery-dialog p{color:#fff;letter-spacing:.1em;font-size:.75rem;position:absolute;bottom:1rem;left:1rem}.gallery-dialog video~p{background:#101713b8;padding:.35rem .5rem;bottom:3.75rem}.technical-page{max-width:850px;margin:auto;padding:8rem 1.25rem}.technical-page h1{margin:1.5rem 0;font-size:3.5rem}.technical-page p{max-width:45rem;font-size:1.2rem}@media (max-width:800px){.section{padding:4.5rem 1.25rem}.header-inner{height:64px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.mobile-nav{background:var(--brand-primary);border-top:1px solid #ffffff26;gap:1.1rem;padding:1.4rem 1.25rem 1.8rem;display:grid}.mobile-nav a{font-family:var(--font-display);font-size:1.65rem}.mobile-nav .button{margin-top:.5rem}.hero{min-height:760px;padding-bottom:3rem}.hero-video--desktop{display:none}.hero-fallback{z-index:-2}.hero-shade{background:linear-gradient(#131f1a26 25%,#131f1acc)}.hero-note{left:1.25rem;right:1.25rem}.intro,.services,.rules,.contacts{grid-template-columns:1fr;gap:1.75rem}.section-index{width:2rem}.section-heading{margin-bottom:2.5rem;display:block}.section-heading>p{margin-top:1.5rem}.bath-grid{grid-template-columns:1fr}.bath-card{grid-template-rows:340px auto;min-height:0}.bath-content{grid-template-columns:1fr;padding:1.5rem}.bath-content dl{grid-template-columns:1fr 1fr;gap:1rem;padding-top:.5rem;display:grid}.bath-content dl div+div{margin:0}.bath-actions{padding-top:.35rem}.services .section-index{grid-row:1}.service-list article{grid-template-columns:2rem 1fr}.service-list strong{text-align:left;grid-column:2}.gallery-grid{grid-template-columns:1fr 1fr;gap:.5rem}.gallery-item,.gallery-item--tall{min-height:230px}.gallery-item--tall{min-height:310px}.contacts{gap:3rem}.contact-details>dl{grid-template-columns:1fr;gap:1.25rem}.footer{grid-template-columns:1fr 1fr;padding:2rem 1.25rem}.footer small{grid-column:1/-1}.bath-dialog{grid-template-columns:1fr}.dialog-image{min-height:260px}.dialog-content{padding:2rem 1.5rem}.form-grid{grid-template-columns:1fr}.gallery-dialog{height:min(600px,100dvh - 2rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.steam{display:none}}.admin-login{background:var(--brand-primary);place-items:center;min-height:100svh;padding:1.25rem;display:grid}.admin-login form{background:var(--surface-primary);gap:1rem;width:min(430px,100%);padding:2.5rem;display:grid}.admin-login .wordmark{margin-bottom:2rem}.admin-login h1{margin-bottom:1rem;font-size:3.5rem}.admin-shell{background:#e9e5dc;grid-template-columns:235px 1fr;min-height:100svh;display:grid}.admin-shell aside{background:var(--brand-primary);color:var(--surface-primary);flex-direction:column;gap:.3rem;padding:2rem 1.25rem;display:flex}.admin-shell aside>p{color:#ffffff8c;margin:1rem 0;font-size:.75rem}.admin-shell aside button{color:inherit;text-align:left;background:0 0;border:0;border-left:2px solid #0000;padding:.75rem}.admin-shell aside button.active{border-left-color:var(--brand-secondary);background:#ffffff17}.admin-shell aside .logout{color:#e5c4aa;align-items:center;gap:.5rem;margin-top:auto;display:flex}.admin-content{max-width:1100px;padding:clamp(2rem,6vw,5rem)}.admin-content header{margin-bottom:2rem}.admin-content h1{font-size:clamp(2.7rem,5vw,4.5rem)}.admin-notice{background:#dceae1;border-left:3px solid #3b7554;padding:.8rem 1rem}.admin-card{border:1px solid var(--border-subtle);background:#fffdfa;padding:1.5rem;box-shadow:0 6px 18px #00000008}.admin-card h2{margin-bottom:.75rem;font-size:1.8rem}.settings-form{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.settings-form .button{grid-column:1/-1;justify-self:start}.admin-list{gap:1rem;display:grid}.service-editor{grid-template-columns:1.25fr 2fr 1fr;align-items:end;gap:1rem;display:grid}.service-editor .switch{font-size:.85rem}.service-editor>div{gap:.5rem;display:flex}.icon-danger{color:#9d352c;background:0 0;border:1px solid #b15a50;padding:.5rem}.upload-form{align-items:start;gap:1rem;display:grid}.upload-form .button{justify-self:start}@media (max-width:800px){.admin-shell{grid-template-columns:1fr}.admin-shell aside{grid-template-columns:1fr 1fr;padding:1rem;display:grid}.admin-shell aside .wordmark,.admin-shell aside>p{grid-column:1/-1}.admin-shell aside .logout{margin-top:1rem}.admin-content{padding:2rem 1.25rem}.settings-form,.service-editor{grid-template-columns:1fr}.settings-form .button{grid-column:auto}}.page-progress{z-index:80;background:var(--brand-secondary);transform-origin:0;pointer-events:none;height:2px;position:fixed;inset:0 0 auto}.chapter-rail{z-index:25;gap:.35rem;padding:.7rem 0;display:grid;position:fixed;top:50%;right:clamp(.8rem,2vw,2.2rem);transform:translateY(-50%)}.chapter-rail__line{z-index:-1;background:#ffffff38;width:1px;position:absolute;top:1rem;bottom:1rem;right:7px}.chapter-rail a{color:#fff;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 8px #00000080;justify-content:flex-end;align-items:center;gap:.75rem;min-height:26px;font-size:.62rem;display:flex}.chapter-rail a b{opacity:0;transition:opacity var(--motion), transform var(--motion);font-weight:700;transform:translate(8px)}.chapter-rail a span{color:#0000;width:15px;height:15px;transition:background var(--motion), transform var(--motion), border-color var(--motion);background:#19251f4d;border:1px solid #ffffff8c;border-radius:50%;order:2;overflow:hidden}.chapter-rail a:hover b,.chapter-rail a:focus-visible b,.chapter-rail a.is-active b{opacity:1;transform:none}.chapter-rail a.is-active span{background:var(--brand-secondary);border-color:var(--brand-secondary);transform:scale(.7)}.site-header.is-scrolled{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#1c2923db;border-bottom:1px solid #ffffff14}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";background:var(--brand-secondary);height:1px;transition:right var(--motion);position:absolute;bottom:-.35rem;left:0;right:100%}.desktop-nav a:hover:after{right:0}.button{transition:transform var(--motion), background var(--motion), color var(--motion), border-color var(--motion);position:relative;overflow:hidden}.button:after{content:"";background:linear-gradient(105deg,#0000 35%,#ffffff38 50%,#0000 65%);transition:transform .65s;position:absolute;inset:0;transform:translate(-120%)}.button:hover:after{transform:translate(120%)}.text-link svg{transition:transform var(--motion)}.text-link:hover svg{transform:translate(3px,-3px)}.hero-media,.hero-shade,.hero-grain{z-index:-2;position:absolute}.hero-grain{z-index:-1;opacity:.11;pointer-events:none;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");inset:0}.hero-title-mask{padding:.08em .05em .08em 0;overflow:hidden}.hero-scroll{letter-spacing:.12em;text-transform:uppercase;writing-mode:vertical-rl;align-items:center;gap:.65rem;font-size:.7rem;display:flex;position:absolute;bottom:1.25rem;left:50%}.hero-scroll svg{animation:1.8s ease-in-out infinite scroll-cue}@keyframes scroll-cue{50%{transform:translateY(7px)}}.rhythm-line{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.8rem;margin-top:3rem;font-size:.68rem;display:flex}.rhythm-line i{background:var(--border-subtle);width:clamp(1.5rem,4vw,4rem);height:1px}.baths,.services,.gallery,.rules,.contacts{overflow:hidden}.bath-grid{perspective:1200px}.bath-reveal,.bath-reveal .bath-card{height:100%}.bath-image img{will-change:transform;transition:transform .9s cubic-bezier(.22,1,.36,1)}.bath-image__wash{background:linear-gradient(120deg,#0000 35%,#e1ede633,#0000 65%);transition:transform 1.1s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:translate(-110%)}.bath-card:hover .bath-image img{transform:scale(1.045)}.bath-card:hover .bath-image__wash{transform:translate(110%)}.service-list article{transition:padding-left var(--motion), background var(--motion);padding-right:2.25rem;position:relative}.service-list article:before{content:"";transform-origin:100%;z-index:-1;background:#a0663d14;transition:transform .5s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:scaleX(0)}.service-list article:hover{padding-left:.8rem}.service-list article:hover:before{transform-origin:0;transform:scaleX(1)}.service-arrow{opacity:0;transition:opacity var(--motion), transform var(--motion);position:absolute;top:1.25rem;right:0;transform:translate(-6px,6px)}.service-list article:hover .service-arrow{opacity:1;transform:none}.gallery-item:after{transition:background var(--motion)}.gallery-item img{transition:transform .9s cubic-bezier(.22,1,.36,1),filter .9s cubic-bezier(.22,1,.36,1)}.gallery-item:hover img{filter:saturate(1.08);transform:scale(1.055)}.gallery-item:hover:after{background:linear-gradient(#0000 28%,#0000009e)}.gallery-item em{z-index:1;letter-spacing:.14em;opacity:.75;font-size:.65rem;font-style:normal;position:absolute;top:1rem;left:1rem}.map-placeholder{position:relative;overflow:hidden}.map-placeholder:after{content:"";border:1px solid #ffffff14;border-radius:50%;width:260px;height:260px;position:absolute;top:-90px;right:-80px;box-shadow:0 0 0 32px #ffffff06,0 0 0 64px #ffffff04}@media (max-width:800px){.chapter-rail{display:none}.hero-media{inset:-4%}.hero-scroll{display:none}.service-list article{padding-right:0}.service-list article:hover{padding-left:0}.service-arrow{display:none}}@media (prefers-reduced-motion:reduce){.page-progress{display:none}.hero-media{inset:0}.bath-image img{will-change:auto}}body{background:var(--surface-primary);overflow-x:clip}.section{padding:clamp(5.5rem, 10vw, 9.5rem) var(--page-gutter)}.eyebrow{color:var(--brand-secondary);letter-spacing:.16em;font-size:.7rem}h1,h2,h3,h4{text-wrap:balance}h1{max-width:none}.button{letter-spacing:.01em;min-height:50px;padding-inline:1.35rem}.button--small{min-height:44px}.button--accent{border-color:var(--brand-accent-warm);background:var(--brand-accent-warm);color:var(--brand-primary-deep)}.button--accent:hover{border-color:var(--surface-primary);background:var(--surface-primary);color:var(--brand-primary-deep)}.text-link{min-height:44px;padding-block:.55rem}.wordmark{align-items:flex-start;min-height:44px;font-size:1.52rem;display:inline-flex;position:relative}.wordmark small{font:700 .48rem/1 var(--font-body);letter-spacing:.18em;opacity:.62;margin:.15rem 0 0 .45rem}.site-header{border-bottom:1px solid #0000}.site-header.is-scrolled{box-shadow:none;background:#14251ee6;border-color:#ffffff1a}.header-inner{max-width:1440px;height:82px;padding-inline:max(1.25rem,50vw - 690px)}.desktop-nav{gap:1.7rem}.desktop-nav a{grid-template-columns:1fr;align-items:center;gap:.35rem;min-height:44px;font-size:.8rem;display:grid}.desktop-nav a span{color:var(--brand-accent-warm);letter-spacing:.08em;opacity:0;transition:opacity var(--motion), transform var(--motion);font-size:.52rem;transform:translate(-4px)}.desktop-nav a:hover span,.desktop-nav a:focus-visible span{opacity:1;transform:none}.menu-toggle{place-items:center;min-width:48px;min-height:48px}.mobile-menu-overlay,.mobile-menu-panel{display:none}.hero{min-height:max(760px,100svh);padding:clamp(8rem, 17vh, 11rem) var(--page-gutter) 10rem;align-items:center}.hero:before{content:"";z-index:1;top:82px;bottom:0;left:var(--page-gutter);pointer-events:none;background:linear-gradient(#0000,#ffffff2e,#0000 88%);width:1px;position:absolute}.hero-media{inset:-5%}.hero-shade{background:linear-gradient(90deg,#0f1d17e0,#0f1d172e 64%,#0f1d1773),linear-gradient(#0000 38%,#0f1d17b8)}.hero-content{z-index:2;width:min(820px,72vw);max-width:none;padding-left:clamp(1.5rem,4vw,4rem);position:relative}.hero-kicker{align-items:center;gap:.9rem;margin-bottom:1.25rem;display:flex}.hero-kicker>span{width:2rem;height:2rem;color:var(--brand-accent-warm);border:1px solid #ffffff4d;border-radius:50%;place-items:center;font-size:.55rem;display:grid}.hero-kicker .eyebrow{color:var(--brand-accent-warm);margin:0}.hero h1{width:max-content;max-width:100%;color:var(--text-inverse);letter-spacing:-.065em;font-size:clamp(4.6rem,8.1vw,7.7rem);line-height:.84}.hero-title-mask{margin-left:-.07em;padding-bottom:.14em}.hero-copy{color:#f7f1e7d1;max-width:32rem;font:400 clamp(1.15rem, 1.8vw, 1.45rem)/1.35 var(--font-display);margin:1.75rem 0 1.8rem}.hero-actions{gap:1.1rem}.button--hero{border-color:var(--text-inverse);background:var(--text-inverse);color:var(--brand-primary-deep)}.button--hero:hover{border-color:var(--brand-accent-warm);background:var(--brand-accent-warm);color:var(--brand-primary-deep)}.text-link--hero{padding-inline:.75rem}.hero-meta{z-index:2;right:var(--page-gutter);bottom:1.3rem;left:var(--page-gutter);color:var(--text-inverse);border-top:1px solid #ffffff38;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:absolute}.hero-meta>div{grid-template-columns:auto 1fr;gap:.75rem;padding:1rem 1.25rem 0 0;display:grid}.hero-meta>div+div{border-left:1px solid #ffffff29;padding-left:1.25rem}.hero-meta span{color:var(--brand-accent-warm);letter-spacing:.1em;text-transform:uppercase;font-size:.58rem}.hero-meta strong{font:400 .9rem/1.2 var(--font-display)}.hero-note{right:var(--page-gutter);bottom:7.7rem}.hero-scroll{bottom:1.4rem;transform:translate(-50%)}.section-index{flex-direction:column;gap:.7rem;width:min(100%,8rem);padding-top:1rem;display:flex}.section-index span{color:var(--brand-secondary)}.section-index small{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;font-weight:400}.intro{background:radial-gradient(circle at 86% 72%, #89502f14, transparent 24rem), var(--surface-primary);grid-template-columns:minmax(0,1.35fr) minmax(18rem,.78fr);align-items:start;gap:clamp(2rem,5vw,5.5rem);position:relative}.intro-heading h2{max-width:11.8ch;font-size:clamp(3.5rem,6.4vw,6.5rem);line-height:.88}.intro-copy{border-left:1px solid var(--border-subtle);max-width:none;padding:clamp(1.5rem,5vw,5rem) 0 0 clamp(1.5rem,3vw,3rem);position:relative}.intro-copy .intro-dropcap{color:#89502f1f;font:400 clamp(6rem, 12vw, 10rem)/1 var(--font-display);position:absolute;top:0;right:0}.intro-copy p{margin-bottom:1.1rem;font-size:clamp(1.35rem,2vw,1.75rem);position:relative}.intro-copy small{max-width:28rem;color:var(--text-secondary);display:block}.intro-materials{flex-wrap:wrap;gap:.5rem;margin-top:2.5rem;display:flex}.intro-materials span{border:1px solid var(--border-subtle);color:var(--text-primary);letter-spacing:.1em;text-transform:uppercase;padding:.55rem .8rem;font-size:.7rem}.ritual{background:var(--surface-secondary);gap:clamp(2.5rem,5vw,5rem);display:grid}.ritual-heading{grid-template-columns:minmax(0,1.25fr) minmax(16rem,.55fr);align-items:end;gap:clamp(2rem,7vw,8rem);display:grid}.ritual-heading h2{max-width:10ch;margin-top:.65rem;font-size:clamp(3.6rem,7.2vw,7.4rem);line-height:.88}.ritual-heading>p{max-width:29rem;color:var(--text-secondary);margin:0 0 .7rem}.ritual-grid{grid-template-columns:minmax(0,1.65fr) minmax(16rem,.62fr);gap:clamp(.65rem,1.2vw,1rem);min-height:min(720px,72vw);display:grid}.ritual-film,.ritual-film>figure,.ritual-still,.ritual-still>figure{height:100%;min-height:0}.ritual-film figure,.ritual-still figure{background:var(--surface-dark);margin:0;position:relative;overflow:hidden}.ritual-film video,.ritual-still img{object-fit:cover;width:100%;height:100%}.ritual-film figure:after,.ritual-still figure:after{content:"";pointer-events:none;background:linear-gradient(#0000 52%,#0f1d17a8);position:absolute;inset:0}.ritual-film figcaption,.ritual-still figcaption{z-index:1;color:var(--text-inverse);position:absolute;bottom:1.25rem;left:1.25rem;right:1.25rem}.ritual-film figcaption{justify-content:space-between;align-items:end;gap:1rem;display:flex}.ritual-film figcaption span{color:var(--brand-accent-warm);letter-spacing:.14em;text-transform:uppercase;font-size:.62rem}.ritual-film figcaption strong,.ritual-still figcaption{font:400 clamp(1.05rem, 1.8vw, 1.45rem)/1.1 var(--font-display)}.ritual-stills{grid-template-rows:1fr 1fr;gap:clamp(.65rem,1.2vw,1rem);min-height:0;display:grid}.baths{background:var(--brand-primary);position:relative}.section-watermark{top:2.5rem;right:var(--page-gutter);color:#ffffff09;font:400 clamp(10rem, 24vw, 22rem)/.7 var(--font-display);pointer-events:none;position:absolute}.section-heading{z-index:1;margin-bottom:clamp(3rem,6vw,5.5rem);position:relative}.section-heading--inverse .eyebrow,.baths .eyebrow,.contacts .eyebrow{color:var(--brand-accent-warm)}.section-heading__aside{gap:.85rem;max-width:26rem;display:grid}.section-heading__aside>span{letter-spacing:.14em;opacity:.62;text-transform:uppercase;border-top:1px solid;padding-top:.8rem;font-size:.62rem}.section-heading__aside p{color:inherit;opacity:.7;margin:0}.bath-grid{z-index:1;background:0 0;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:start;gap:clamp(1rem,2.2vw,2rem);position:relative}.bath-reveal:nth-child(2){margin-top:clamp(3rem,7vw,7rem)}.bath-card{background:var(--brand-primary-soft);border:1px solid #ffffff1f;grid-template-rows:minmax(400px,58vh) auto;min-height:0}.bath-card--large{background:var(--surface-dark)}.bath-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#0f1d17a6);position:absolute;inset:0}.bath-number{z-index:2;border:1px solid #ffffff6b;border-radius:50%;place-items:center;width:2.4rem;height:2.4rem;display:grid}.bath-media-label{z-index:2;color:#ffffffa8;letter-spacing:.1em;font-size:.58rem;position:absolute;bottom:1.25rem;left:1.25rem}.bath-content{grid-template-columns:minmax(0,1.3fr) minmax(11rem,.7fr);gap:2rem;padding:clamp(1.5rem,3vw,2.5rem)}.bath-title-block h3{margin:.2rem 0 1rem}.bath-content dl{padding-top:2.25rem}.bath-content ul{padding-top:1.2rem}.bath-actions{gap:1rem}.bath-actions .text-link{min-width:44px}.bath-compare{z-index:1;border-top:1px solid var(--border-inverse);border-bottom:1px solid var(--border-inverse);color:var(--text-inverse);grid-template-columns:minmax(12rem,.7fr) 1fr 1fr;margin-top:clamp(4rem,8vw,8rem);display:grid;position:relative}.bath-compare>*{padding:clamp(1.5rem,3vw,2.5rem)}.bath-compare>*+*{border-left:1px solid var(--border-inverse)}.bath-compare__title span,.bath-compare article>span{color:var(--brand-accent-warm);letter-spacing:.12em;text-transform:uppercase;font-size:.6rem}.bath-compare h3{margin-top:.7rem;font-size:clamp(1.8rem,2.7vw,3rem)}.bath-compare h4{font:400 clamp(1.5rem, 2.2vw, 2.4rem)/1 var(--font-display);margin:.6rem 0 1.5rem}.bath-compare article dl{gap:1.1rem;display:grid}.services{background:linear-gradient(90deg, transparent 0 69%, #89502f0a 69%), var(--surface-primary);grid-template-columns:minmax(16rem,.72fr) minmax(0,1.35fr);gap:clamp(2rem,5vw,5.5rem)}.service-heading h2{max-width:8ch}.service-list article{grid-template-columns:minmax(0,1fr) minmax(8rem,auto);align-items:center;min-height:112px;padding-block:1.55rem}.service-list h3{font-size:clamp(1.45rem,2vw,2rem)}.service-number{align-self:start}.gallery{background:var(--surface-secondary)}.gallery-grid{grid-template-rows:clamp(280px,28vw,420px) repeat(4,clamp(230px,22vw,330px));grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(.6rem,1.2vw,1rem);display:grid}.gallery-item{min-height:0}.gallery-item--1{grid-area:1/1/auto/span 7}.gallery-item--2{grid-area:1/8/span 2/-1}.gallery-item--3{grid-area:2/1/auto/span 4}.gallery-item--4{grid-area:2/5/auto/span 3}.gallery-item--5{grid-area:3/1/span 2/span 4}.gallery-item--6{grid-area:3/5/auto/span 4}.gallery-item--7{grid-area:3/9/auto/-1}.gallery-item--8{grid-area:4/5/auto/span 5}.gallery-item--9{grid-area:4/10/auto/-1}.gallery-item--10{grid-area:5/1/auto/span 4}.gallery-item--11{grid-area:5/5/auto/span 4}.gallery-item--12{grid-area:5/9/auto/-1}.gallery-item img{object-fit:cover}.gallery-item span{font:400 1.15rem/1 var(--font-display);bottom:1.25rem;left:1.25rem}.gallery-item em{top:1.25rem;left:1.25rem}.gallery-item i{width:48px;height:48px}.rules{grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);align-items:start;gap:clamp(3rem,8vw,8rem)}.rules-heading{position:sticky;top:8rem}.rules-heading h2{margin-bottom:2rem;font-size:clamp(3.1rem,5.2vw,5.6rem)}.rules-list{border-top:1px solid var(--border-subtle)}.rules-list article{border-bottom:1px solid var(--border-subtle);grid-template-columns:3rem minmax(10rem,.7fr) minmax(0,1fr);align-items:start;gap:1.25rem;min-height:150px;padding:1.8rem 0;display:grid}.rules-list article>span{color:var(--brand-secondary);letter-spacing:.1em;font-size:.65rem}.rules-list h3{letter-spacing:-.035em;font-size:clamp(1.45rem,2.2vw,2.2rem)}.rules-list p{color:var(--text-secondary);margin:0}.contacts{background:radial-gradient(circle at 17% 18%, #d6a0781f, transparent 26rem), var(--brand-primary);grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(4rem,10vw,10rem);min-height:760px;position:relative;overflow:hidden}.contact-copy,.contact-details{z-index:2;position:relative}.contact-copy h2{font-size:clamp(4rem,7.4vw,7.5rem);line-height:.85}.contact-lead{color:#f7f1e7ad;max-width:26rem;font:400 1.2rem/1.4 var(--font-display);margin:2rem 0 0}.contact-details>dl{margin-bottom:2.5rem}.contact-details dd{font:400 1.1rem/1.3 var(--font-display)}.contact-orbit{border:1px solid #ffffff14;border-radius:50%;place-items:center;width:40rem;height:40rem;display:grid;position:absolute;bottom:-16rem;right:-13rem;box-shadow:0 0 0 4rem #ffffff05,0 0 0 8rem #ffffff03}.contact-orbit span{color:#ffffff0b;font:400 15rem/1 var(--font-display)}.map-placeholder{background-color:#ffffff06;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-style:solid;min-height:260px;padding:clamp(1.5rem,3vw,2.5rem)}.map-placeholder__pin{border:1px solid #ffffff59;border-radius:50%;place-items:center;width:3rem;height:3rem;display:grid}.map-placeholder__label{color:var(--brand-accent-warm);letter-spacing:.14em;text-transform:uppercase;margin-top:1.25rem;font-size:.62rem}.footer{padding:clamp(4rem, 8vw, 7rem) var(--page-gutter) 2rem;background:var(--brand-primary-deep);grid-template-columns:minmax(16rem,1.55fr) .7fr 1.15fr .75fr;gap:clamp(2rem,6vw,6rem)}.footer-brand p{color:#ffffff9e;max-width:20rem;font:400 1.1rem/1.4 var(--font-display);margin-top:2rem}.footer nav,.footer-legal,.footer-place{align-items:flex-start}.footer nav>span,.footer-legal>span,.footer-place>span{color:var(--brand-accent-warm);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.8rem;font-size:.58rem}.footer nav a,.footer-legal a{min-height:32px}.footer-place p{font-family:var(--font-display);margin:0}.footer-bottom{color:#ffffff80;border-top:1px solid #ffffff1f;grid-column:1/-1;justify-content:space-between;margin-top:2.5rem;padding-top:1.5rem;display:flex}.footer-bottom a{color:var(--text-inverse)}.mobile-booking-dock{display:none}.close-button,.menu-close,.gallery-prev,.gallery-next{min-width:48px;min-height:48px}.booking-dialog,.bath-dialog{border:1px solid #89502f3d}@media (max-width:1050px){.desktop-nav{gap:.9rem}.desktop-nav a span{display:none}.intro{grid-template-columns:4rem minmax(0,1.2fr) minmax(16rem,.8fr);gap:2rem}.bath-content{grid-template-columns:1fr}.bath-content dl{grid-template-columns:1fr 1fr;gap:1rem;padding-top:0;display:grid}.bath-content dl div+div{margin-top:0}.services{grid-template-columns:4rem minmax(14rem,.75fr) minmax(0,1.25fr);gap:2rem}.rules-list article{grid-template-columns:2.5rem .8fr 1fr}}@media (max-width:800px){.section{padding:5.5rem 1.25rem}h2{font-size:clamp(2.8rem,13vw,4.6rem)}.header-inner{height:68px}.menu-toggle{margin-left:auto;display:grid}.mobile-menu-overlay{z-index:90;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#09120eb3;animation:.26s menu-fade;display:block;position:fixed;inset:0}.mobile-menu-panel{z-index:91;width:100vw;height:100dvh;padding:0 1.25rem calc(1.25rem + env(safe-area-inset-bottom));background:radial-gradient(circle at 90% 12%, #d6a07826, transparent 18rem), var(--brand-primary-deep);color:var(--text-inverse);animation:menu-in .52s var(--ease-editorial);outline:none;flex-direction:column;display:flex;position:fixed;inset:0;overflow:auto}.mobile-menu-top{border-bottom:1px solid var(--border-inverse);justify-content:space-between;align-items:center;min-height:76px;display:flex}.menu-close{border:1px solid var(--border-inverse);color:var(--text-inverse);background:0 0;place-items:center;display:grid}.mobile-nav{background:0 0;border:0;gap:0;padding:1.5rem 0;display:grid}.mobile-nav a{border-bottom:1px solid var(--border-inverse);grid-template-columns:1fr auto;align-items:center;gap:.5rem;min-height:64px;font-size:clamp(1.7rem,8vw,2.35rem);display:grid}.mobile-nav a span{color:var(--brand-accent-warm);font:700 .58rem/1 var(--font-body);letter-spacing:.12em}.mobile-menu-footer{justify-content:space-between;align-items:end;gap:1rem;margin-top:auto;padding-top:2rem;display:flex}.mobile-menu-footer p{color:#fff9;margin:0;font-size:.78rem}@keyframes menu-in{0%{opacity:0;transform:translateY(-2rem)}}@keyframes menu-fade{0%{opacity:0}}.hero{align-items:center;min-height:max(780px,100svh);padding:7.5rem 1.25rem 12.5rem}.hero:before{top:68px;left:1.25rem}.hero-media{inset:-2%}.hero-content{width:100%;padding-left:0}.hero-kicker{gap:.65rem}.hero-kicker>span{width:1.8rem;height:1.8rem}.hero-kicker .eyebrow{font-size:.61rem}.hero h1{letter-spacing:-.065em;width:auto;max-width:100%;font-size:clamp(3rem,14.2vw,6.7rem);line-height:.86}.hero-copy{margin:1.45rem 0 1.4rem;font-size:clamp(1.05rem,4.6vw,1.3rem)}.hero-actions{align-items:stretch}.hero-actions .button{min-height:54px}.hero-meta{bottom:1.2rem;left:1.25rem;right:1.25rem}.hero-meta>div{grid-template-columns:1fr;gap:.35rem;padding:.9rem .65rem 0 0}.hero-meta>div+div{padding-left:.65rem}.hero-meta strong{font-size:.78rem}.hero-note{max-width:21rem;font-size:.57rem;bottom:8rem;left:1.25rem;right:1.25rem}.hero-scroll{display:none}.intro,.services,.rules,.contacts{grid-template-columns:1fr}.intro{gap:2.5rem}.section-index{flex-direction:row;justify-content:space-between;width:100%}.intro-heading h2{max-width:11.8ch;font-size:clamp(3.2rem,14vw,5.2rem)}.rhythm-line{margin-top:2.2rem}.intro-copy{border-top:1px solid var(--border-subtle);border-left:0;padding:2.5rem 0 0}.intro-copy .intro-dropcap{top:1rem}.section-watermark{top:3rem;right:1.25rem}.section-heading,.section-heading--inverse{gap:2rem;margin-bottom:3rem;display:grid}.section-heading__aside{max-width:none}.bath-grid{grid-template-columns:1fr;gap:1.5rem}.bath-reveal:nth-child(2){margin-top:0}.bath-card{grid-template-rows:minmax(320px,54vh) auto}.bath-content{grid-template-columns:1fr;gap:1.5rem}.bath-content ul{padding-top:1rem}.bath-actions{align-items:stretch}.bath-actions .text-link,.bath-actions .button{min-height:52px}.bath-compare{grid-template-columns:1fr;margin-top:4rem}.bath-compare>*+*{border-top:1px solid var(--border-inverse);border-left:0}.bath-compare article dl{grid-template-columns:1fr 1fr}.services{background:var(--surface-primary);gap:2.5rem}.service-heading h2{max-width:9ch}.service-list article{grid-template-columns:minmax(0,1fr);min-height:130px;padding-right:0}.service-list strong{grid-column:1}.gallery-grid{grid-template-rows:270px 330px 250px;grid-template-columns:1.15fr .85fr}.gallery-item--1{grid-area:1/1/auto/-1}.gallery-item--2{grid-area:2/1}.gallery-item--3{grid-area:2/2}.gallery-item--4{grid-area:3/1/auto/-1}.rules{gap:3rem}.rules-heading{position:static}.rules-list article{grid-template-columns:2.5rem minmax(0,1fr);min-height:0}.rules-list p{grid-column:2}.contacts{gap:4.5rem;min-height:0}.contact-copy h2{font-size:clamp(4rem,18vw,6.2rem)}.contact-details>dl{grid-template-columns:1fr 1fr}.contact-orbit{right:-20rem}.footer{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem;padding:4.5rem 1.25rem 7rem}.footer-brand,.footer-place{grid-column:1/-1}.footer nav a,.footer-legal a{align-items:center;min-width:44px;min-height:44px;display:flex}.footer-bottom{align-items:center}.footer-bottom a{align-items:center;min-height:44px;display:flex}.mobile-booking-dock{z-index:45;right:.85rem;bottom:calc(.85rem + env(safe-area-inset-bottom));min-height:66px;color:var(--text-inverse);text-align:left;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#14251ef0;border:1px solid #ffffff38;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex;position:fixed;left:.85rem;box-shadow:0 14px 40px #09120e4d}.mobile-booking-dock span{gap:.15rem;font-weight:700;display:grid}.mobile-booking-dock small{color:var(--brand-accent-warm);letter-spacing:.1em;text-transform:uppercase;font-size:.6rem;font-weight:400}.booking-dialog h2,.bath-dialog h2{padding-right:2.5rem}}@media (max-width:480px){.hero{min-height:max(760px,100svh);padding-top:7rem}.hero h1{font-size:clamp(2.85rem,14.7vw,4.4rem)}.hero-actions{grid-template-columns:1fr;gap:.45rem;display:grid}.hero-actions .button,.hero-actions .text-link{justify-content:space-between;width:100%}.hero-meta{grid-template-columns:1fr 1fr}.hero-meta>div:nth-child(3){display:none}.bath-card{grid-template-rows:300px auto}.bath-content dl{grid-template-columns:1fr}.bath-actions{grid-template-columns:1fr;display:grid}.bath-actions .text-link{justify-content:space-between}.gallery-grid{grid-template-rows:240px 300px 220px;grid-template-columns:1.08fr .92fr}.contact-details>dl,.footer{grid-template-columns:1fr}.footer-brand,.footer-place,.footer-bottom{grid-column:1}.footer-bottom{gap:1rem}.mobile-menu-footer{display:grid}.mobile-menu-footer .button{width:100%}}@media (max-width:350px){.section,.header-inner,.mobile-menu-panel,.hero{padding-inline:1rem}.hero:before,.hero-meta,.hero-note{left:1rem}.hero-meta,.hero-note{right:1rem}.hero h1{font-size:2.75rem}.hero-kicker .eyebrow{max-width:14rem}.gallery-grid{grid-template-rows:220px 270px 210px}.footer{padding-inline:1rem}}@media (max-width:1050px){.ritual-grid{grid-template-columns:minmax(0,1.4fr) minmax(15rem,.6fr);min-height:620px}}@media (max-width:800px){.ritual-heading{grid-template-columns:1fr;gap:1.4rem}.ritual-heading h2{font-size:clamp(3.2rem,14vw,5.4rem)}.ritual-grid{grid-template-columns:1fr;min-height:0}.ritual-film{height:min(72vh,560px)}.ritual-stills{grid-template-rows:280px;grid-template-columns:1fr 1fr}.gallery-grid{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:250px}.gallery-grid .gallery-item{grid-area:auto}.gallery-grid .gallery-item--1,.gallery-grid .gallery-item--4,.gallery-grid .gallery-item--6,.gallery-grid .gallery-item--8,.gallery-grid .gallery-item--12{grid-column:1/-1}.gallery-grid .gallery-item--2,.gallery-grid .gallery-item--5,.gallery-grid .gallery-item--9,.gallery-grid .gallery-item--11{grid-row:span 2}}@media (max-width:480px){.ritual-film{height:430px}.ritual-stills{grid-template-rows:220px}.ritual-film figcaption{display:grid}.gallery-grid{grid-auto-rows:185px}}@media (prefers-reduced-motion:reduce){.mobile-menu-overlay,.mobile-menu-panel{animation:none}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
