@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');
:root{--blue:#293b46;--paper:#f8f6f1;--ink:#29353d;--line:#d7d1ca;--accent:#e0b58e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #bd7e45;outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.02}em{font-weight:400}header{height:110px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%}.wordmark{font-family:Georgia,serif;font-size:24px;letter-spacing:.06em;line-height:1.2;text-align:center}.wordmark span{display:block;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:.34em;margin-top:8px}nav{display:flex;align-items:center;gap:34px;font-size:14px}.nav-book{padding:12px 22px;border:1px solid var(--blue)}.nav-book span{margin-left:20px}.hero{background:var(--blue);color:var(--paper);display:grid;grid-template-columns:48% 52%;padding:36px 3% 0 5.5%;min-height:660px}.hero-copy{align-self:center;padding:28px 8% 45px 0}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.16em}.hero .eyebrow{color:#e8cbae;margin-bottom:36px}h1{font-size:clamp(55px,5.7vw,92px)}h1 em{color:var(--accent)}.intro{max-width:350px;margin:28px 0 30px;color:#e0e7eb;font-size:16px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:16px 23px;font-size:14px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-light{background:var(--paper);color:var(--blue)}.hero-email{display:block;width:max-content;margin-top:18px;font-size:14px;border-bottom:1px solid #8196a3}.hero-photo{min-height:530px;position:relative}.photo-label{position:absolute;bottom:22px;left:22px;background:var(--paper);color:var(--blue);padding:9px 13px;font-size:11px;letter-spacing:.14em}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;padding:22px 0;font-size:11px;letter-spacing:.14em}.hero-bottom a{font-size:13px;letter-spacing:0}.hero-bottom a span{margin-left:15px}.facts{display:flex;justify-content:center;gap:0;border-bottom:1px solid var(--line);padding:24px 5%;font-size:14px}.facts span{padding:0 5%;border-right:1px solid var(--line)}.facts span:last-child{border:0}.section{padding:100px 8%}.house{display:grid;grid-template-columns:1fr 1fr;column-gap:9%}.section-heading .eyebrow,.stay .eyebrow{margin-bottom:24px;color:#496777}h2{font-size:clamp(48px,5vw,74px)}.house-copy{align-self:center;padding-top:30px;color:#53616a}.house-copy p+p{margin-top:18px}.image-pair{grid-column:1/-1;display:grid;grid-template-columns:1.25fr 1fr;gap:6%;margin-top:55px;align-items:start}.image-large img{aspect-ratio:1.18}.image-small{margin-top:90px}.image-small img{aspect-ratio:1.05}figcaption{display:flex;justify-content:space-between;padding-top:12px;font-size:13px;color:#5c6b75}figcaption span:last-child{font-size:12px}.details{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:6%;margin-top:65px;padding-top:28px;border-top:1px solid var(--line)}h3{font-size:18px;font-weight:500;margin-bottom:10px}.details p{font-size:15px;color:#53616a}.village{text-align:center;background:#e8e0d4;padding:80px 20px 70px;border-top:1px solid #d5cabc;border-bottom:1px solid #d5cabc}.village .eyebrow{margin-bottom:24px}.village h2{font-size:clamp(60px,7vw,100px)}.village p:not(.eyebrow){max-width:500px;margin:28px auto;color:#53616a}.village-place{display:block;font-size:11px;letter-spacing:.15em;margin-top:45px}.stay{display:grid;grid-template-columns:1.2fr 1fr;gap:9%}.stay-options p{color:#53616a;margin-bottom:24px}.stay-options>div+div{margin-top:36px;border-top:1px solid var(--line);padding-top:28px}.button-dark{background:var(--blue);color:var(--paper)}.email-link{font-size:16px;border-bottom:1px solid var(--blue);overflow-wrap:anywhere;padding-bottom:5px}.email-link span{margin-left:10px}footer{background:var(--blue);color:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:30px;padding:45px 5.5%}footer p,footer>span{font-size:12px;color:#d6e0e6}footer .wordmark{font-size:21px}footer .wordmark span{font-size:10px}@media(min-width:1550px){body{max-width:1900px;margin:auto}}@media(max-width:900px){header{padding:0 5%;height:90px}nav{gap:20px}.hero{grid-template-columns:1fr 1fr;padding-left:5%;padding-top:25px}.hero-copy{padding-right:7%}h1{font-size:58px}.hero-photo{min-height:530px}.facts span{padding:0 3%}.section{padding:75px 6%}.stay{gap:5%}footer p{max-width:180px}}@media(max-width:640px){header{height:90px}.wordmark{font-size:20px}.wordmark span{font-size:10px}nav>a:not(.nav-book){display:none}.nav-book{padding:9px 12px;font-size:12px}.nav-book span{margin-left:8px}.hero{grid-template-columns:1fr;padding:0 5%}.hero-copy{padding:42px 0 38px}.hero .eyebrow{margin-bottom:25px;font-size:11px}h1{font-size:64px}.intro{max-width:380px;font-size:16px;margin:22px 0 25px}.hero-photo{min-height:0;height:380px}.hero-bottom{font-size:9px;letter-spacing:.1em}.facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;text-align:center;padding:23px 4%;font-size:12px}.facts span{padding:0 6px}.facts span:nth-child(2){border:0}.section{padding:62px 6%}.house{grid-template-columns:1fr;gap:0}h2{font-size:55px}.house-copy{padding-top:28px}.image-pair{gap:25px;margin-top:35px;grid-template-columns:1fr}.image-small{margin-top:0;width:85%;justify-self:end}.image-small img{aspect-ratio:1.15}.details{grid-template-columns:1fr;gap:24px;margin-top:40px}.details p{font-size:16px}.village{padding:60px 7%}.village h2{font-size:70px}.village-place{font-size:10px;letter-spacing:.1em}.stay{grid-template-columns:1fr;gap:36px}.stay .eyebrow{font-size:10px}.email-link{font-size:15px}footer{flex-direction:column;text-align:center;padding:38px 5%;gap:20px}footer p{max-width:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.footer-social{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#d6e0e6}.footer-social a{font-size:14px;color:var(--paper);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.footer-social a:hover{color:var(--accent)}

.local-hero{background:var(--blue);color:var(--paper);padding:65px 6%;display:grid;grid-template-columns:1.3fr 1fr;gap:7%;align-items:center}.local-hero .eyebrow{color:var(--accent);margin-bottom:24px}.local-hero h1{font-size:clamp(60px,6.5vw,94px)}.local-hero p:not(.eyebrow){max-width:500px;margin:28px 0;color:#e0e7eb}.local-hero figure img{aspect-ratio:1;object-fit:cover}.local-hero figcaption{color:#e0e7eb}.local-intro>.eyebrow{margin-bottom:24px}.local-places{display:grid;grid-template-columns:repeat(3,1fr);gap:6%;margin-top:48px}.place-number{font-family:Georgia,serif;font-size:30px;color:#537383;display:block;border-top:1px solid var(--line);padding:18px 0}.local-places h3{font-family:Georgia,serif;font-size:25px;font-weight:400}.local-places p{color:#53616a;margin-bottom:22px}.local-places a,.event>a{font-size:14px;text-decoration:underline;text-underline-offset:5px}.events-section{background:#eee8df}.events-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.events-heading .eyebrow{margin-bottom:22px}.events-heading>p{font-size:14px}.events-heading>p span{color:#5c6b75;font-size:12px}.calendar-note{max-width:700px;color:#53616a;margin:28px 0 38px;font-size:14px}.event{display:grid;grid-template-columns:95px 1fr 150px;gap:30px;padding:32px 0;border-top:1px solid #c9beb6;align-items:start}.event-date{display:flex;flex-direction:column;color:var(--blue)}.event-date span{font-size:12px;letter-spacing:.1em}.event-date strong{font-family:Georgia,serif;font-size:32px;font-weight:400;line-height:1.4}.event h3{font-family:Georgia,serif;font-size:28px;font-weight:400;margin-top:8px}.event p:not(.eyebrow){color:#53616a;font-size:16px}.event .event-detail{margin-top:10px;font-size:14px!important}.event>a{margin-top:32px}.local-close{text-align:center;padding:75px 6%}.local-close h2{margin:24px 0}.local-close p:not(.eyebrow){margin-bottom:28px}.local-inquire{display:block;width:max-content;margin:20px auto 0;text-decoration:underline;text-underline-offset:5px}nav a[aria-current]{text-decoration:underline;text-underline-offset:6px}@media(max-width:900px){header nav{gap:15px}.local-hero{gap:5%}.local-hero h1{font-size:60px}.event{grid-template-columns:85px 1fr;gap:22px}.event>a{grid-column:2;margin-top:0}.events-heading{align-items:start;flex-direction:column}}@media(max-width:640px){header{height:auto;min-height:100px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px;gap:15px}header nav{display:flex;flex-wrap:wrap}nav>a.local-nav{display:block;font-size:12px}.local-hero{grid-template-columns:1fr;padding:45px 6%;gap:32px}.local-hero h1{font-size:59px}.local-hero figure img{aspect-ratio:1.5}.local-places{grid-template-columns:1fr;gap:30px}.event{grid-template-columns:70px 1fr;gap:18px}.event h3{font-size:24px}.event-date strong{font-size:26px}.event .eyebrow{font-size:10px}.events-heading h2{font-size:53px}.local-close .eyebrow{font-size:10px}}

.header{height:auto;min-height:110px;gap:24px;padding-top:20px;padding-bottom:20px;flex-wrap:wrap}.header nav{flex-wrap:wrap;gap:22px}.sauna-hero{padding:90px 8%;background:var(--blue);color:var(--paper)}.sauna-hero h1{font-size:clamp(76px,10vw,148px);margin:28px 0}.sauna-hero>p:not(.eyebrow){max-width:480px;font-size:18px;color:#e0e7eb}.opening-label{display:inline-block;border:1px solid #8196a3;padding:10px 16px;margin-top:30px;font-size:14px}.sauna-details{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:start}.sauna-details h2{margin:24px 0 30px}.sauna-details>div>p:not(.eyebrow){margin:18px 0;color:#53616a}.sauna-hours{background:#eee8df;padding:32px}.sauna-hours h3{font-family:Georgia,serif;font-size:28px;margin:18px 0}.sauna-hours dl{margin:0}.sauna-hours dl>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:15px 0;border-bottom:1px solid #c9beb6}.sauna-hours dd{margin:0}.sauna-hours>p:last-child{font-size:14px;margin-top:24px;color:#53616a}.sauna-contact{border-top:1px solid var(--line)}.sauna-teaser{background:var(--blue);color:var(--paper);padding:60px 8%;display:flex;align-items:center;justify-content:space-between;gap:40px}.sauna-teaser h2{font-size:48px;margin:18px 0}.sauna-teaser p:not(.eyebrow){max-width:590px;color:#e0e7eb}.sauna-teaser .button{flex-shrink:0}.house-gallery{padding-top:0}.house-gallery h2{margin:20px 0 36px;font-size:58px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 20px}.gallery-item{border:0;padding:0;background:transparent;color:var(--ink);text-align:left;font:inherit;cursor:pointer;min-width:0}.gallery-item img{height:auto;aspect-ratio:1.2;object-fit:cover}.gallery-item>span{display:block;font-size:14px;padding-top:10px}.gallery-item:focus-visible,button:focus-visible{outline:3px solid #bd7e45;outline-offset:5px}.photo-viewer{border:0;background:var(--blue);color:var(--paper);padding:24px;width:min(1100px,94vw);max-height:94vh}.photo-viewer::backdrop{background:rgba(20,12,17,.88)}.photo-close{display:block;margin:0 0 16px auto}.photo-viewer button{background:transparent;border:1px solid #8196a3;color:var(--paper);padding:10px 15px;cursor:pointer;font:inherit;font-size:14px;min-height:44px}.photo-full{width:100%;height:65vh;object-fit:contain}.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:18px}.photo-caption{text-align:center;font-size:14px}@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.sauna-details{gap:5%}.sauna-teaser{flex-direction:column;align-items:start}}@media(max-width:640px){.header{min-height:100px}.header nav{gap:16px}nav>a.sauna-nav{display:block;font-size:12px}.sauna-hero{padding:55px 6%}.sauna-details{grid-template-columns:1fr;gap:30px}.sauna-hours{padding:24px}.sauna-teaser{padding:45px 6%}.sauna-teaser h2{font-size:43px}.house-gallery h2{font-size:46px}.gallery-grid{gap:22px 14px}.photo-viewer{padding:14px}.photo-full{height:55vh}.photo-controls{flex-wrap:wrap}.photo-caption{order:3;width:100%}.gallery-item>span{font-size:13px}}

.local-hero figure img{aspect-ratio:4/3}.village-journal{padding-top:0}.journal-heading{margin-bottom:38px}.journal-heading .eyebrow{margin-bottom:22px}.journal-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:start}.journal-grid figure:nth-child(2){margin-top:70px}.journal-grid img{height:auto;aspect-ratio:3/4;object-fit:cover}.journal-grid figcaption{max-width:100%;line-height:1.5}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.journal-grid{grid-template-columns:1fr;gap:30px}.journal-grid figure:nth-child(2){margin-top:0}.journal-heading h2{font-size:49px}}

:root{--header-height:84px}html{scroll-padding-top:calc(var(--header-height) + 20px)}body{padding-top:var(--header-height)}.header{position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:100;width:100%;max-width:1900px;height:var(--header-height);min-height:0;flex-wrap:nowrap;padding:12px 4%;gap:24px;background:rgba(248,246,241,.97);border-bottom:1px solid rgba(41,59,70,.14);backdrop-filter:blur(12px)}.brand-logo{display:block;position:relative;flex:0 0 auto;width:244px;height:50px;overflow:hidden}.brand-logo img{position:absolute;width:274px;max-width:none;height:auto;left:-15px;top:-33px;object-fit:contain}.header nav{flex-wrap:nowrap;gap:22px;white-space:nowrap;font-size:14px}.header .nav-book{padding:9px 16px}.header .nav-book span{margin-left:8px}@media(max-width:1100px){:root{--header-height:124px}.header{flex-direction:column;justify-content:center;gap:5px;padding:8px 4%}.header nav{max-width:100%;gap:24px;overflow-x:auto;justify-content:flex-start;align-items:center;flex-shrink:0;padding:4px 2px}.header nav>a{display:block;flex-shrink:0;font-size:14px}.header .nav-book{padding:7px 12px}}@media(prefers-reduced-transparency:reduce){.header{background:var(--paper);backdrop-filter:none}}

.ambient-panel{position:relative;isolation:isolate;overflow:hidden;background:var(--blue);color:var(--paper)}.ambient-panel .ambient-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.ambient-panel::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(12,24,31,.76),rgba(12,24,31,.43));z-index:-1}.stay-video-panel{display:flex;flex-direction:column;justify-content:center;min-height:520px;padding:48px 36px 80px}.stay .stay-video-panel .eyebrow{color:#f1dfcb}.stay-video-panel h2{font-size:clamp(44px,4.4vw,65px)}.video-toggle{position:absolute;right:20px;bottom:20px;z-index:1;color:#fff;background:rgba(15,27,34,.65);border:1px solid rgba(255,255,255,.65);padding:10px 15px;font:inherit;font-size:14px;cursor:pointer;min-height:44px}.sauna-hero.ambient-panel{min-height:650px;padding-bottom:100px}.sauna-hero.ambient-panel>p:not(.eyebrow){color:#fff}.sauna-hero.ambient-panel .opening-label{background:rgba(12,24,31,.4);border-color:#c9d5dc}.stay-options{align-self:center}@media(max-width:640px){.stay-video-panel{min-height:450px;padding:36px 24px 80px}.sauna-hero.ambient-panel{min-height:590px}.sauna-hero.ambient-panel h1{font-size:82px}}
