:root{--color-void: #070706;--color-ink: #10100e;--color-stone: #2a2b28;--color-mist: #c8c2b6;--color-cream: #ebe4d7;--color-wood: #8f5a34;--color-ember: #d4a574;--color-water: #1b3536;--color-leaf: #3f5a42;--font-display: "Rock Salt", cursive;--font-body: "Figtree", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--content-max: 42rem;--header-offset: 1.5rem;--ease-out: cubic-bezier(.22, 1, .36, 1);--hero-fade: .7s;--overlay-scrim: linear-gradient( 180deg, rgba(7, 7, 6, .55) 0%, rgba(7, 7, 6, .08) 38%, rgba(7, 7, 6, .42) 100% )}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:auto}html,body,#root{min-height:100%}body{margin:0;background:var(--color-void);color:var(--color-cream);font-family:var(--font-body);font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,textarea,select{font:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--color-ember);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{position:relative;min-height:100vh;background:var(--color-void)}.canvas-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;opacity:0;transition:opacity 1.1s var(--ease-out)}.app-shell.is-revealed .canvas-layer{opacity:1}.canvas-layer canvas{display:block;width:100%!important;height:100%!important}.ui-layer{position:relative;z-index:1;pointer-events:none}.webgl-fallback{opacity:0;transition:opacity 1.1s var(--ease-out)}.app-shell.is-revealed .webgl-fallback{opacity:1}.content-rail{opacity:0;transition:opacity 1.1s var(--ease-out) .15s}.app-shell.is-revealed .content-rail{opacity:1}.ui-layer a,.ui-layer button{pointer-events:auto}.scroll-track{position:relative;z-index:1;height:100vh;pointer-events:none}.scroll-track.is-active{height:620vh}.layout-cta{position:fixed;top:50%;right:clamp(1rem,3vw,2.25rem);z-index:4;transform:translateY(-50%);display:inline-flex;align-items:center;gap:.65rem;padding:.85rem 1.1rem;border:1px solid color-mix(in srgb,var(--color-cream) 55%,transparent);background:color-mix(in srgb,var(--color-void) 55%,transparent);color:var(--color-cream);font-family:var(--font-display);font-size:clamp(.85rem,1.6vw,1.05rem);font-weight:400;letter-spacing:.02em;text-transform:none;cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .25s var(--ease-out),border-color .25s var(--ease-out)}.layout-cta:hover{background:color-mix(in srgb,var(--color-cream) 12%,transparent);border-color:var(--color-cream)}@media (max-width: 720px){.layout-cta{top:auto;bottom:clamp(5.5rem,18vh,7.5rem);right:1rem;left:1rem;transform:none;justify-content:center}}.hero-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(1.25rem,4vw,2.5rem);background:var(--overlay-scrim);pointer-events:none;opacity:0;transition:opacity 1s var(--ease-out)}.hero-overlay.is-ready{opacity:1}.hero-overlay.is-ready.is-dimmed{opacity:.28}.brand-logo{display:block;width:auto;height:auto;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.brand-logo--nav{width:clamp(2rem,3.5vw,2.6rem);height:auto}.brand-logo--center{width:min(42vw,18rem);height:auto;filter:drop-shadow(0 12px 40px rgba(0,0,0,.45))}.brand-logo--headline{width:clamp(4.5rem,12vw,7rem);height:auto;margin-bottom:var(--space-sm)}.hero-brand{display:inline-flex;align-items:center;gap:.75rem;font-family:var(--font-display);font-size:clamp(.85rem,1.6vw,1.05rem);font-weight:400;letter-spacing:.04em;text-transform:none;color:var(--color-cream)}.hero-center-logo{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;place-items:center;pointer-events:none;transition:opacity .9s var(--ease-out)}.intro-fade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;background:var(--color-void);pointer-events:none;opacity:1;transition:opacity .95s var(--ease-out)}.intro-fade__logo{width:min(46vw,15rem);height:auto;opacity:0;transform:scale(.96);transition:opacity .85s var(--ease-out),transform .85s var(--ease-out)}.intro-fade--logo .intro-fade__logo{opacity:1;transform:scale(1)}.intro-fade--out{opacity:0}.intro-fade--out .intro-fade__logo{opacity:1;transform:scale(1)}@media (prefers-reduced-motion: reduce){.intro-fade,.intro-fade__logo,.canvas-layer,.webgl-fallback,.content-rail,.hero-overlay,.hero-center-logo{transition:none}}.hero-copy{position:relative;z-index:1;max-width:min(100%,22ch);margin-top:auto;margin-bottom:clamp(3.5rem,10vh,6rem)}.hero-copy h1{margin:0 0 var(--space-sm);font-family:var(--font-display);font-size:clamp(1.85rem,5.5vw,3.4rem);font-weight:400;line-height:1.25;letter-spacing:.01em;color:var(--color-cream)}.hero-copy p{margin:0;max-width:28ch;font-size:clamp(.95rem,2vw,1.125rem);color:var(--color-mist)}.hero-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center;justify-content:space-between;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--color-mist) 80%,transparent)}.scroll-cue{display:inline-flex;align-items:center;gap:.65rem}.scroll-cue__line{width:1px;height:2.25rem;background:linear-gradient(180deg,var(--color-ember),transparent);transform-origin:top;animation:pulse-line 2.2s var(--ease-out) infinite}.disclaimer{max-width:36ch}.webgl-fallback{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;display:grid;place-items:end start;padding:clamp(1.25rem,4vw,2.5rem);background:radial-gradient(ellipse at 30% 20%,rgba(143,90,52,.35),transparent 50%),radial-gradient(ellipse at 70% 70%,rgba(27,53,54,.45),transparent 45%),linear-gradient(160deg,#141210,#070706 60%)}.webgl-fallback__note{max-width:34ch;margin-bottom:6rem;color:var(--color-mist);font-size:.95rem}@media (max-width: 720px){.hero-copy{max-width:16ch}.hero-meta{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion: reduce){.scroll-cue__line{animation:none}.hero-overlay{transition:none}}@keyframes pulse-line{0%,to{transform:scaleY(.45);opacity:.45}50%{transform:scaleY(1);opacity:1}}.content-rail{position:relative;z-index:3;background:linear-gradient(180deg,rgba(7,7,6,.35) 0%,var(--color-void) 8%),var(--color-void);color:var(--color-cream);pointer-events:auto}.section{width:min(1120px,calc(100% - 2.5rem));margin:0 auto;padding:clamp(4rem,10vh,7rem) 0}.section+.section{border-top:1px solid color-mix(in srgb,var(--color-mist) 14%,transparent)}.section__eyebrow{margin:0 0 var(--space-sm);font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--color-ember)}.section__title{margin:0 0 var(--space-sm);max-width:14ch;font-family:var(--font-display);font-size:clamp(1.6rem,4vw,2.6rem);font-weight:400;line-height:1.3}.section__lede{margin:0 0 var(--space-lg);max-width:42ch;color:var(--color-mist);font-size:1.05rem}.section__note{margin:var(--space-md) 0 0;max-width:56ch;color:color-mix(in srgb,var(--color-mist) 78%,transparent);font-size:.88rem}.highlight-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:var(--space-lg)}.highlight-card{padding:1.2rem 1.15rem;border-top:1px solid color-mix(in srgb,var(--color-ember) 55%,transparent)}.highlight-card h3{margin:0 0 .45rem;font-size:1rem}.highlight-card p{margin:0;color:var(--color-mist);font-size:.95rem}.sauna-lineup{max-width:40rem}.sauna-lineup__label{margin:0 0 .65rem;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-ember)}.sauna-lineup ul{margin:0;padding:0;list-style:none;display:grid;gap:.65rem}.sauna-lineup li{color:var(--color-mist);font-size:.95rem}.sauna-lineup strong{color:var(--color-cream);font-weight:600}.tier-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.tier-card{display:flex;flex-direction:column;gap:.75rem;padding:1.35rem 1.25rem;border:1px solid color-mix(in srgb,var(--color-mist) 18%,transparent);background:color-mix(in srgb,var(--color-ink) 88%,transparent)}.tier-card__name{margin:0;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ember)}.tier-card__price{margin:0;font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);line-height:1.45;padding-bottom:.15rem}.tier-card__visits{margin:.15rem 0 0;font-family:var(--font-body);font-size:.95rem;line-height:1.4;color:var(--color-mist)}.tier-card__detail{margin:0;color:var(--color-mist);font-size:.95rem}.tier-card__compare{margin-top:auto;padding-top:.75rem;border-top:1px solid color-mix(in srgb,var(--color-mist) 14%,transparent);color:color-mix(in srgb,var(--color-mist) 75%,transparent);font-size:.85rem}.meta-row{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin:0 0 var(--space-lg);color:var(--color-mist);font-size:.92rem}.form-stack{display:grid;gap:1rem;max-width:36rem}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;gap:.4rem}.field--full{grid-column:1 / -1}.field label,.field legend{font-size:.85rem;color:var(--color-mist)}.field{border:0;margin:0;padding:0;min-inline-size:0}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{width:100%;padding:.75rem .85rem;border:1px solid color-mix(in srgb,var(--color-mist) 22%,transparent);border-radius:0;background:color-mix(in srgb,var(--color-ink) 90%,transparent);color:var(--color-cream)}.field textarea{min-height:6rem;resize:vertical}.field input:not([type=checkbox]):not([type=radio]):focus,.field select:focus,.field textarea:focus{outline:2px solid var(--color-ember);outline-offset:1px}.choice-list{display:grid;gap:.65rem;margin-top:.55rem}.choice{display:grid;grid-template-columns:1rem 1fr;column-gap:.75rem;align-items:center;color:var(--color-mist);font-size:.95rem;line-height:1.35}.choice input[type=checkbox],.choice input[type=radio]{width:1rem;height:1rem;margin:0;padding:0;flex-shrink:0;accent-color:var(--color-ember)}.survey-progress{margin:0 0 var(--space-lg);font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ember)}.survey-form{display:grid;gap:1.5rem;max-width:none}.survey-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.survey-question{display:flex;flex-direction:column;gap:.85rem;min-height:100%;margin:0;padding:1.15rem 1.2rem 1.25rem;border:1px solid color-mix(in srgb,var(--color-mist) 16%,transparent);border-radius:14px;background:color-mix(in srgb,var(--color-ink) 78%,transparent)}.survey-question legend{float:left;width:100%;padding:0;margin:0;font-size:.98rem;font-weight:600;line-height:1.4;color:var(--color-cream)}.survey-question:after{content:"";display:table;clear:both}.survey-question .choice-list{margin-top:0}.survey-question__number{color:var(--color-ember)}.survey-question__hint{display:block;margin-top:.35rem;font-size:.75rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb,var(--color-mist) 80%,transparent)}@media (max-width: 860px){.survey-grid{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:fit-content;padding:.85rem 1.25rem;border:1px solid var(--color-cream);background:var(--color-cream);color:var(--color-void);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.8rem;cursor:pointer}.btn:hover{background:transparent;color:var(--color-cream)}.btn:disabled{opacity:.55;cursor:not-allowed}.form-success{max-width:36rem;padding:1.25rem;border:1px solid color-mix(in srgb,var(--color-ember) 45%,transparent);background:color-mix(in srgb,var(--color-ink) 92%,transparent)}.form-success h3{margin:0 0 .5rem;font-size:1.05rem}.form-success p{margin:0;color:var(--color-mist)}.faq-list{display:grid;gap:.65rem;max-width:48rem}.faq-item{border:1px solid color-mix(in srgb,var(--color-mist) 16%,transparent);background:color-mix(in srgb,var(--color-ink) 85%,transparent)}.faq-item summary{cursor:pointer;list-style:none;padding:1rem 1.1rem;font-weight:600}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";float:right;color:var(--color-ember)}.faq-item[open] summary:after{content:"–"}.faq-item p{margin:0;padding:0 1.1rem 1.1rem;color:var(--color-mist)}.site-footer{padding:clamp(3rem,8vh,5rem) 0 2.5rem;border-top:1px solid color-mix(in srgb,var(--color-mist) 14%,transparent);background:#050504}.site-footer__inner{width:min(1120px,calc(100% - 2.5rem));margin:0 auto;display:grid;gap:1.5rem}.site-footer__brand{display:inline-flex;align-items:center;gap:.75rem;font-family:var(--font-display);font-size:1rem}.site-footer__brand img{width:2.4rem;height:auto}.site-footer p{margin:0;max-width:48ch;color:var(--color-mist);font-size:.92rem}.site-footer__meta{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;color:color-mix(in srgb,var(--color-mist) 75%,transparent);font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}@media (max-width: 720px){.form-grid{grid-template-columns:1fr}.section{width:min(1120px,calc(100% - 1.5rem))}}
