@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root{
  --ink:#10201b;--forest:#17362d;--deep:#0b211b;--cream:#f2eee4;--sand:#d9d0bd;
  --white:#fbfaf6;--muted:#66736d;--line:rgba(16,32,27,.13);--accent:#b6d3a6;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.6}
a{text-decoration:none;color:inherit}.nav{height:76px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;width:100%;z-index:10;color:white}.brand{display:flex;align-items:center;gap:11px;font-weight:600;letter-spacing:.13em;font-size:14px}.brand b{font-weight:700}.brand-mark{width:35px;height:35px;border:1px solid rgba(255,255,255,.6);border-radius:50%;display:grid;place-items:center;font-size:11px;letter-spacing:0}.nav nav{display:flex;gap:30px;font-size:13px}.nav nav a{opacity:.85}.nav nav a:hover{opacity:1}.menu{display:none;background:none;border:0;color:#fff;font-size:25px}
.hero{min-height:850px;background:radial-gradient(circle at 70% 30%,#48685a 0,#1a3a30 35%,#091b16 78%);color:#fff;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:110px 8vw 70px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,17,13,.15),rgba(5,17,13,.02));pointer-events:none}.hero-copy,.hero-visual{position:relative;z-index:2}.eyebrow,.section-tag{font-size:11px;letter-spacing:.2em;font-weight:700}.hero .eyebrow{color:#b8ccb9;margin-bottom:22px}.hero h1{font-size:clamp(65px,8vw,120px);line-height:.87;letter-spacing:-.06em;margin:0 0 30px;font-weight:600}.hero h1 em,.hero h1 span{font-family:"Playfair Display",serif;font-weight:500}.hero h1 em{color:#c8dfba}.hero h1 span{color:#f0eadb}.lead{font-size:20px;max-width:580px;color:#dce5df}.actions{display:flex;gap:13px;flex-wrap:wrap;margin:35px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:15px 22px;border-radius:2px;font-weight:700;font-size:12px;letter-spacing:.07em;text-transform:uppercase;transition:.2s}.btn.primary{background:#d9e9d0;color:#13271f}.btn.primary:hover{transform:translateY(-2px);background:#edf4e9}.btn.ghost{border:1px solid rgba(255,255,255,.35);color:white}.btn.ghost:hover{background:rgba(255,255,255,.08)}.btn.light{background:var(--cream);color:var(--ink)}.btn.full{width:100%}.trust-row{display:flex;gap:20px;flex-wrap:wrap;color:#b9c8c0;font-size:11px}
.hero-visual{height:570px;display:grid;place-items:center}.steam-card{width:min(450px,80%);height:500px;border-radius:230px 230px 12px 12px;position:relative;overflow:hidden;background:linear-gradient(145deg,#607f6f,#182f27 65%);box-shadow:30px 35px 80px rgba(0,0,0,.3)}.steam-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.13),transparent 30%,rgba(0,0,0,.45));}.sauna{position:absolute;bottom:85px;left:15%;width:70%;height:235px;background:linear-gradient(100deg,#9b7954,#5b3f2a);clip-path:polygon(8% 100%,8% 25%,50% 0,92% 25%,92% 100%);display:grid;place-items:center;text-align:center;font-size:13px;letter-spacing:.25em;line-height:1.5;color:#efe7d7}.sauna strong{font-size:27px;letter-spacing:.1em}.water{position:absolute;bottom:0;height:115px;width:100%;background:linear-gradient(180deg,#769c9a,#1e4c4a)}.steam{position:absolute;border-radius:50%;background:rgba(255,255,255,.11);filter:blur(9px)}.s1{width:160px;height:270px;left:35px;top:40px}.s2{width:110px;height:220px;right:40px;top:10px}.s3{width:80px;height:160px;left:170px;top:70px}.floating-card{position:absolute;right:0;bottom:45px;background:#e9eee6;color:#173229;padding:20px 22px;width:180px;box-shadow:0 20px 40px rgba(0,0,0,.22)}.floating-card strong{font:500 38px "Playfair Display";display:block}.floating-card small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;line-height:1.4;display:block}
.section{padding:105px 8vw}.section-tag{color:#758078;margin-bottom:28px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.two-col h2,.section h2{font-size:clamp(42px,5vw,72px);line-height:.98;letter-spacing:-.045em;margin:0}.section h2 span{font-family:"Playfair Display",serif;font-style:italic;font-weight:500}.large{font-size:20px;line-height:1.55}.intro{background:var(--white)}.intro p:not(.large){color:var(--muted);max-width:580px}
.experience{background:#e8e2d5}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-head p{max-width:330px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card{min-height:250px;padding:30px;background:#f6f3ec;position:relative;border-top:3px solid var(--forest)}.card:nth-child(2){border-color:#547c82}.card:nth-child(3){border-color:#8d9e7e}.card:nth-child(4){border-color:#7e718d}.card:nth-child(5){border-color:#88704f}.card:nth-child(6){border-color:#4f7264}.icon{font-size:28px;margin-bottom:50px}.card h3{font-size:23px;margin:0 0 7px}.card p{color:var(--muted);font-size:14px;margin:0}
.mission{background:var(--deep);color:white}.mission-panel{max-width:900px}.mission .section-tag{color:#90a79c}.mission h2{font-size:clamp(48px,6vw,82px)}.mission p{max-width:680px;color:#c0cbc5;font-size:17px}.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:35px}.pill-row span{border:1px solid rgba(255,255,255,.18);padding:8px 13px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.mobile{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;background:var(--white)}.mobile-visual{height:480px;background:linear-gradient(135deg,#d7ddd2,#718a7b);position:relative;display:grid;place-items:center;overflow:hidden}.mobile-box{width:70%;height:260px;background:#6b4e36;box-shadow:25px 25px 0 rgba(25,51,41,.18);display:flex;align-items:end;padding:20px;gap:12px}.mini-sauna,.mini-plunge{height:150px;flex:1;display:grid;place-items:center;font-weight:700;letter-spacing:.15em;color:#e9e2d2}.mini-sauna{background:#9a7754}.mini-plunge{background:#487c7e}.mobile-badge{position:absolute;top:30px;right:30px;background:var(--cream);padding:13px 17px;text-align:center;font-size:10px;letter-spacing:.14em;line-height:1.3}.mobile-badge strong{font-size:17px}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.check-list li:before{content:"✓";margin-right:12px;font-weight:bold}.text-link{font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.membership{background:#d9e0d4}.membership-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.price-card{background:var(--deep);color:#fff;padding:42px}.price-card .eyebrow{color:#9eb2a7}.price{font:500 68px "Playfair Display";margin:18px 0}.price span{font:14px "DM Sans";color:#aebbb5}.divider{height:1px;background:rgba(255,255,255,.16)}.price-card ul{padding:15px 0 20px;margin:0;list-style:none;color:#c5cec9}.price-card li{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.09);font-size:13px}
.impact{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--cream)}.impact-numbers{display:grid;grid-template-columns:1fr 1fr;gap:20px}.impact-numbers div{border-top:1px solid var(--line);padding-top:22px}.impact-numbers strong{font:500 68px "Playfair Display";display:block}.impact-numbers span{font-size:13px;color:var(--muted);display:block}
.support{background:#203d33;color:white}.support-box{border:1px solid rgba(255,255,255,.15);padding:55px;display:grid;grid-template-columns:1.3fr .7fr;gap:8vw;align-items:center}.support .section-tag{color:#91a79c}.support h2{font-size:clamp(50px,6vw,80px)}.support p{color:#c4d0ca}.support-actions{display:flex;flex-direction:column;gap:12px}.support-actions .small{font-size:10px;text-align:center;margin-top:8px;color:#9eafa8}
.final-cta{background:#0a1915;color:#fff;text-align:center;padding:120px 20px}.final-cta h2{font-size:clamp(58px,9vw,120px);line-height:.9;margin:15px 0 40px;letter-spacing:-.06em}.final-cta h2 em{font-family:"Playfair Display";font-weight:500;color:#c4d9b7}.final-cta .eyebrow{color:#91a79c}
footer{background:#07110e;color:#91a098;padding:30px 8vw;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px}.footer .brand{color:white}
@media(max-width:800px){.nav{height:65px}.nav nav{display:none;position:absolute;top:65px;left:0;right:0;background:#0b211b;padding:25px;flex-direction:column;gap:18px}.nav nav.open{display:flex}.menu{display:block}.hero{grid-template-columns:1fr;min-height:auto;padding:120px 7vw 60px}.hero-visual{height:420px}.steam-card{height:380px}.floating-card{right:2%;bottom:10px}.section{padding:75px 7vw}.two-col,.mobile,.membership-grid,.impact,.support-box{grid-template-columns:1fr;gap:45px}.cards{grid-template-columns:1fr 1fr}.section-head{display:block}.section-head p{margin-top:25px}.support-box{padding:35px}.impact-numbers{gap:12px}.impact-numbers strong{font-size:52px}footer{flex-direction:column;align-items:flex-start}.trust-row{gap:10px;font-size:10px}}
@media(max-width:500px){.cards{grid-template-columns:1fr}.hero h1{font-size:67px}.hero-visual{height:350px}.steam-card{height:320px;width:85%}.floating-card{padding:14px;width:155px}.floating-card strong{font-size:30px}.mobile-visual{height:350px}.mobile-box{height:210px}.mini-sauna,.mini-plunge{height:120px}.price{font-size:55px}.impact-numbers{grid-template-columns:1fr}.support h2{font-size:54px}}

.site-logo{width:180px;height:auto;display:block;object-fit:contain}.footer-logo{width:165px}@media(max-width:800px){.site-logo{width:150px}}

.hero-image-wrap{width:min(620px,100%);height:570px;border-radius:8px;overflow:hidden;box-shadow:30px 35px 80px rgba(0,0,0,.32)}
.hero-image{width:100%;height:100%;object-fit:cover;display:block}
.concept-gallery{margin-top:55px;position:relative;overflow:hidden;height:520px;border-radius:5px}
.concept-gallery img{width:100%;height:100%;object-fit:cover;display:block}
.concept-gallery:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,17,13,.7),transparent 55%);pointer-events:none}
.concept-caption{position:absolute;left:35px;bottom:30px;z-index:2;color:white;display:flex;flex-direction:column;gap:6px}
.concept-caption span{font-size:10px;letter-spacing:.2em;font-weight:700}
.concept-caption strong{font:500 32px "Playfair Display",serif}
@media(max-width:800px){.hero-image-wrap{height:420px}.concept-gallery{height:380px}.concept-caption strong{font-size:25px}}
@media(max-width:500px){.hero-image-wrap{height:350px}.concept-gallery{height:300px}.concept-caption{left:20px;bottom:20px}}

.cards{align-items:stretch}
.photo-card{padding:0;overflow:hidden;border-top-width:4px;background:#f6f3ec;display:flex;flex-direction:column}
.photo-card .card-image{height:190px;overflow:hidden}
.photo-card .card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.photo-card:hover .card-image img{transform:scale(1.04)}
.photo-card .card-content{padding:25px 30px 30px}
.photo-card .card-content h3{margin:0 0 8px;font-size:23px}
.photo-card .card-content p{margin:0;color:var(--muted)}
@media(max-width:800px){.photo-card .card-image{height:170px}.photo-card .card-content{padding:22px}}

.mobile-coming-image{width:100%;height:100%;object-fit:cover;display:block}
.mobile-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,17,13,.08),rgba(5,17,13,.18));pointer-events:none}
.mobile-badge{z-index:2}


/* Social links */
.social-links { display:flex; justify-content:center; gap:1.25rem; margin:1rem 0; flex-wrap:wrap; }
.social-links a { color:inherit; text-decoration:none; font-weight:600; letter-spacing:.04em; transition:opacity .2s ease; }
.social-links a:hover { opacity:.65; }
