:root{
  --black:#060807; --dark:#0c120f; --green:#183528; --green2:#244734;
  --gold:#d4aa62; --gold2:#f0d29a; --cream:#f6ead6; --muted:#c5b8a4;
  --line:rgba(212,170,98,.24); --shadow:0 28px 80px rgba(0,0,0,.44); --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--cream);background:radial-gradient(circle at 10% 0%,rgba(212,170,98,.12),transparent 28rem),radial-gradient(circle at 88% 20%,rgba(36,71,52,.38),transparent 36rem),var(--black);font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;line-height:1.65}
a{color:inherit}.container{width:min(1120px,calc(100% - 40px));margin:0 auto}
.skip-link{position:absolute;top:-100px;left:16px;background:var(--gold);color:#111;padding:10px 14px;z-index:99}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(6,8,7,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(212,170,98,.18)}
.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{text-decoration:none;display:inline-flex;flex-direction:column;line-height:1.05;min-width:max-content}.brand-main{color:var(--gold);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.25rem,2vw,1.65rem);letter-spacing:.06em;text-transform:lowercase}.brand-sub{color:var(--muted);font-size:.78rem;letter-spacing:.16em;text-transform:none;margin-top:5px}
.main-nav{display:flex;gap:24px;align-items:center;font-size:.93rem;color:var(--muted)}.main-nav a{text-decoration:none}.main-nav a:hover{color:var(--gold2)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 20px;border-radius:999px;text-decoration:none;font-weight:650;letter-spacing:.015em;transition:transform .2s ease,box-shadow .2s ease;border:1px solid transparent}.btn:hover{transform:translateY(-2px);box-shadow:0 16px 35px rgba(0,0,0,.34)}.btn-small{min-height:40px;padding:9px 15px;font-size:.9rem}.btn-gold{color:#1d1308;background:linear-gradient(135deg,#f2d493,#b9873f);box-shadow:0 14px 36px rgba(212,170,98,.18)}.btn-green{background:linear-gradient(135deg,#27533d,#153023);color:#fff7e9;border-color:rgba(212,170,98,.22)}.btn-wide{width:100%;margin-top:24px}
.hero{position:relative;min-height:690px;display:grid;align-items:center;padding:96px 0 88px;overflow:hidden;isolation:isolate}.hero-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(6,8,7,.98) 0%,rgba(8,13,10,.87) 36%,rgba(8,13,10,.52) 64%,rgba(6,8,7,.76) 100%),linear-gradient(180deg,rgba(6,8,7,.04),rgba(6,8,7,.84)),url("../assets/images/hero-massage.jpg");background-size:cover;background-position:center right;z-index:-2}.hero-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 15%,rgba(212,170,98,.13),transparent 34rem),radial-gradient(circle at 72% 48%,rgba(212,170,98,.07),transparent 28rem)}
.glass{max-width:700px;padding:38px 0}.eyebrow{color:var(--gold2);text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;margin:0 0 14px}
h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:.025em;line-height:1.04;color:var(--gold);margin:0}h1{font-size:clamp(3.2rem,7vw,6.7rem);text-transform:lowercase}h2{font-size:clamp(2.15rem,4vw,3.45rem)}h3{margin:20px 0 12px;color:#91b599;font-size:1.16rem;font-weight:600;letter-spacing:.02em;text-transform:none}
.divider{width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:24px 0 26px;position:relative}.divider:after{content:"✦";position:absolute;left:50%;top:50%;transform:translate(-50%,-53%);color:var(--gold);background:var(--dark);padding:0 8px;font-size:.8rem}.hero .divider:after{background:rgba(8,12,10,.82)}
.hero-lead{font-size:clamp(1.55rem,2.9vw,2.45rem);line-height:1.18;max-width:680px;margin:0 0 18px;color:#fff8eb}.hero-sub{font-size:clamp(1.05rem,1.55vw,1.28rem);color:var(--muted);margin:0;max-width:560px}.button-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.feature-strip{background:linear-gradient(135deg,#11241b,#203f2f);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr)}.feature{text-align:center;padding:42px 26px;border-left:1px solid rgba(212,170,98,.22)}.feature:first-child{border-left:0}.feature-icon,.contact-icon{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(212,170,98,.52);color:var(--gold);border-radius:50%;margin-bottom:16px;font-size:1.55rem}.feature h2{font-size:1.45rem;margin-bottom:9px}.feature p{margin:0 auto;max-width:260px;color:#d9d1c2}
.section{padding:94px 0;position:relative;overflow:hidden}.split-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);gap:38px;align-items:stretch}.card{background:linear-gradient(145deg,rgba(16,26,21,.94),rgba(8,11,9,.96));border:1px solid rgba(212,170,98,.2);border-radius:var(--radius);padding:clamp(28px,4vw,54px);box-shadow:var(--shadow)}.section-intro{font-size:1.18rem;color:var(--cream);margin:0 0 28px}.price-list{border-top:1px solid rgba(212,170,98,.18)}.price-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:18px 0;border-bottom:1px solid rgba(212,170,98,.18);color:#f5ead8}.price-row span{color:#e6daca}.price-row strong{font-family:Georgia,"Times New Roman",serif;color:var(--gold2);font-size:1.38rem;white-space:nowrap}.travel-note{margin:18px 0 0;display:inline-flex;border:1px solid rgba(212,170,98,.34);background:rgba(36,71,52,.46);color:var(--gold2);border-radius:999px;padding:8px 14px;font-size:.92rem;letter-spacing:.04em}
.visual-panel{min-height:560px;border:1px solid rgba(212,170,98,.2);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;background-size:cover;background-position:center;position:relative}.visual-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.24)),radial-gradient(circle at 50% 15%,transparent,rgba(0,0,0,.22));pointer-events:none}.voucher-panel{background-image:url("../assets/images/voucher-stilllife.jpg")}.detail-panel{background-image:url("../assets/images/massage-detail.jpg")}
.about-section{padding-top:0}.about-card p{color:#e2d7c6;font-size:1.12rem;margin:0;max-width:56ch}
.contact-strip{background:linear-gradient(135deg,#10251b,#1e3d2c);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0}.contact-grid{display:grid;grid-template-columns:1.15fr 1.45fr 1.15fr .9fr;gap:18px}.contact-item{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--cream);min-width:0}.contact-icon{width:46px;height:46px;min-width:46px;margin:0;font-size:1.1rem}.contact-item strong,.contact-item em{display:block;font-style:normal}.contact-item strong{color:var(--gold2);line-height:1.25}.contact-item em{color:#d4c8b7;font-size:.92rem;line-height:1.35}
.site-footer{padding:26px 0;background:#050706;color:#a99c8a;font-size:.92rem}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.footer-inner p{margin:0}.footer-inner nav{display:flex;gap:18px}.footer-inner a{color:#c9b99f;text-decoration:none}.footer-inner a:hover{color:var(--gold)}
.ornament{position:absolute;width:420px;height:420px;opacity:.13;pointer-events:none;background:radial-gradient(circle,transparent 0 22%,rgba(212,170,98,.9) 22.4% 23%,transparent 23.5%),repeating-conic-gradient(from 0deg,rgba(212,170,98,.8) 0deg 6deg,transparent 6deg 14deg);border-radius:50%;mask-image:radial-gradient(circle,#000 0 62%,transparent 70%)}.ornament-left{left:-260px;top:120px}.ornament-right{right:-250px;top:160px}
.legal-main{padding:78px 0}.legal-card{width:min(860px,calc(100% - 40px));background:linear-gradient(145deg,rgba(16,26,21,.96),rgba(8,11,9,.96));border:1px solid rgba(212,170,98,.2);border-radius:26px;padding:clamp(28px,5vw,58px);box-shadow:var(--shadow)}.legal-card h1{font-size:clamp(2.4rem,5vw,4rem);text-transform:none;margin-bottom:24px}.legal-card h2{font-size:1.35rem;margin-top:34px;margin-bottom:8px}.legal-card p{color:#e2d7c6}.legal-card a{color:var(--gold2)}.legal-hint{margin-top:34px;padding:16px;border:1px solid rgba(212,170,98,.22);border-radius:16px;background:rgba(36,71,52,.22)}
@media(max-width:900px){.main-nav{display:none}.hero{min-height:660px;padding:70px 0 66px;align-items:end}.hero-bg{background-image:linear-gradient(180deg,rgba(6,8,7,.24) 0%,rgba(6,8,7,.72) 47%,rgba(6,8,7,.98) 100%),url("../assets/images/hero-massage.jpg");background-position:center}.glass{padding-top:210px}.split-grid{grid-template-columns:1fr;gap:28px}.visual-panel{min-height:430px}.feature-grid{grid-template-columns:1fr}.feature{border-left:0;border-top:1px solid rgba(212,170,98,.18);padding:32px 20px}.feature:first-child{border-top:0}.section{padding:64px 0}.about-section{padding-top:0;padding-bottom:64px}.contact-grid{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.container{width:min(100% - 28px,1120px)}.header-inner{min-height:74px}.brand-main{font-size:1.16rem}.site-header .btn{display:none}.hero{min-height:650px;padding:48px 0 54px}.glass{padding-top:255px}h1{font-size:clamp(2.85rem,15vw,4.3rem)}.hero-lead{font-size:1.5rem}.button-row{flex-direction:column}.btn{width:100%}.card{padding:26px 20px;border-radius:22px}.price-row{gap:12px}.price-row span{font-size:.95rem}.price-row strong{font-size:1.18rem}.visual-panel{min-height:360px}.contact-item{padding:4px 0}}


/* v11 mobile hero fix:
   - avoids cropping the word wellness@home on small screens
   - shows the hero image as a clearer top visual block on mobile
*/
@media (max-width: 900px) {
  .hero {
    min-height: auto;
    display: block;
    padding: 0 0 56px;
  }

  .hero-bg {
    position: relative;
    height: min(58vh, 410px);
    min-height: 300px;
    background-image:
      linear-gradient(180deg, rgba(6, 8, 7, .08) 0%, rgba(6, 8, 7, .22) 52%, rgba(6, 8, 7, .92) 100%),
      url("../assets/images/hero-massage.jpg");
    background-size: cover;
    background-position: 58% center;
    z-index: 0;
  }

  .hero-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
      radial-gradient(circle at 72% 44%, rgba(212, 170, 98, .10), transparent 24rem),
      linear-gradient(180deg, transparent 0%, rgba(6, 8, 7, .60) 100%);
  }

  .hero-inner {
    position: relative;
    z-index: 2;
    margin-top: -92px;
  }

  .hero-content,
  .glass {
    max-width: 100%;
    padding: 112px 0 0;
  }

  .hero h1 {
    font-size: clamp(2.42rem, 11.4vw, 4.15rem);
    letter-spacing: 0;
    max-width: 100%;
    overflow-wrap: normal;
    word-break: normal;
  }

  .hero-lead {
    font-size: clamp(1.34rem, 6vw, 1.72rem);
    max-width: 100%;
  }

  .hero-sub {
    font-size: 1.02rem;
    max-width: 100%;
  }
}

@media (max-width: 560px) {
  .hero {
    min-height: auto;
    padding-bottom: 48px;
  }

  .hero-bg {
    height: min(54vh, 370px);
    min-height: 286px;
    background-position: 60% center;
  }

  .hero-inner {
    margin-top: -82px;
  }

  .hero-content,
  .glass {
    padding-top: 102px;
  }

  .hero h1 {
    font-size: clamp(2.18rem, 10.6vw, 3.05rem);
    letter-spacing: -0.015em;
    line-height: 1.03;
  }

  .hero-lead {
    font-size: clamp(1.23rem, 5.5vw, 1.46rem);
    line-height: 1.22;
  }

  .button-row {
    margin-top: 26px;
  }
}

@media (max-width: 390px) {
  .hero h1 {
    font-size: 2.05rem;
    letter-spacing: -0.025em;
  }

  .brand-main {
    font-size: 1.02rem;
  }
}
