@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Montserrat:wght@300;400;500;600&display=swap');

:root{
  --forest:#10271c;
  --forest-2:#173627;
  --cream:#f5efe3;
  --paper:#fbf8f1;
  --gold:#b18a4a;
  --gold-light:#d4b36b;
  --ink:#20231e;
  --muted:#6f7068;
  --line:#ded6c5;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-weight:300;line-height:1.7}
a{color:inherit}
.topbar{height:32px;padding:0 6vw;background:var(--forest);color:#e8d7ad;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:2px;text-transform:uppercase}
.topbar a{text-decoration:none;color:#fff}
.header{height:82px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;gap:30px;background:rgba(251,248,241,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.wordmark{display:flex;flex-direction:column;text-decoration:none;line-height:.9;min-width:175px}
.wordmark span{font:700 28px "Cormorant Garamond",serif;letter-spacing:5px;color:var(--forest)}
.wordmark small{font-size:7px;letter-spacing:3px;margin-top:8px;color:var(--gold)}
nav{display:flex;align-items:center;gap:32px}
nav a{text-decoration:none;font-size:9px;letter-spacing:1.7px;text-transform:uppercase;color:#41443d;position:relative}
nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--gold);transition:.25s}
nav a:hover:after{width:100%}
.nav-book,.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;text-transform:uppercase;letter-spacing:1.6px;font-size:9px;font-weight:500;transition:.25s}
.nav-book{padding:13px 18px;background:var(--forest);color:#fff;border:1px solid var(--forest)}
.nav-book:hover,.btn.dark:hover{transform:translateY(-2px);background:#244c39}
.menu-toggle{display:none;border:0;background:none;font-size:22px;color:var(--forest)}

.hero{min-height:calc(100vh - 114px);position:relative;display:flex;align-items:center;overflow:hidden;background-image:url("https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&w=2200&q=88");background-size:cover;background-position:center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,28,20,.93) 0%,rgba(10,28,20,.72) 40%,rgba(10,28,20,.2) 75%,rgba(10,28,20,.28) 100%)}
.hero-content{position:relative;z-index:2;width:min(760px,58vw);margin-left:8vw;color:#fff;padding:80px 0}
.eyebrow{font-size:9px;letter-spacing:3px;font-weight:500;color:var(--gold);margin:0 0 18px;text-transform:uppercase}
.hero .eyebrow{color:#dfc27f}
h1,h2,h3{font-family:"Cormorant Garamond",serif;font-weight:500;line-height:.94;margin:0}
h1{font-size:clamp(66px,8.4vw,126px);letter-spacing:-1px}
h2{font-size:clamp(48px,5.7vw,78px)}
em{font-style:italic;color:var(--gold-light)}
.hero-copy{max-width:570px;color:#e7e5dc;font-size:14px;margin:28px 0 32px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{padding:15px 23px}
.btn.gold{background:var(--gold);color:#fff;border:1px solid var(--gold)}
.btn.gold:hover{background:#c19a56;transform:translateY(-2px)}
.btn.light{border:1px solid rgba(255,255,255,.55);color:#fff}
.btn.light:hover{background:#fff;color:var(--forest);transform:translateY(-2px)}
.hero-note{margin-top:30px;font-size:9px;letter-spacing:1.4px;color:#ddd9cc;text-transform:uppercase}
.hero-note span{color:var(--gold-light);padding:0 7px}
.hero-brand-card{position:absolute;z-index:2;right:7vw;bottom:8%;width:min(310px,25vw);padding:9px;background:rgba(250,246,237,.9);box-shadow:0 20px 60px rgba(0,0,0,.25);transform:rotate(1deg)}
.hero-brand-card img{display:block;width:100%;aspect-ratio:1.2;object-fit:cover}

.promise{display:grid;grid-template-columns:1fr 1fr;min-height:680px}
.promise-image{min-height:600px;background:url("https://images.unsplash.com/photo-1544161515-4ab6ce6db874?auto=format&fit=crop&w=1400&q=88") center/cover}
.promise-copy{padding:110px 10vw;display:flex;flex-direction:column;justify-content:center;background:var(--cream)}
.promise-copy h2{max-width:650px}
.promise-copy>p:not(.eyebrow){max-width:530px;color:var(--muted);font-size:14px;margin:30px 0}
.signature{margin-top:25px;border-top:1px solid var(--line);padding-top:22px;width:max-content}
.signature span{display:block;font:700 22px "Cormorant Garamond",serif;letter-spacing:4px;color:var(--forest)}
.signature small{font-size:7px;letter-spacing:3px;color:var(--gold)}

.services{padding:120px 7vw;background:var(--paper)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:55px}
.section-heading>div{max-width:800px}
.section-heading>p{max-width:340px;color:var(--muted);font-size:12px;margin:0 0 8px}
.treatment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.treatment-card{background:#fff;border:1px solid var(--line);overflow:hidden;transition:.3s}
.treatment-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px rgba(35,38,30,.09)}
.treatment-card.large{grid-column:span 2;display:grid;grid-template-columns:1.15fr .85fr}
.card-image{min-height:230px;background-size:cover;background-position:center}
.massage{background-image:url("https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&w=1200&q=85")}
.spa{background-image:url("https://images.unsplash.com/photo-1600334089648-b0d9d3028eb2?auto=format&fit=crop&w=1000&q=85")}
.skincare{background-image:url("https://images.unsplash.com/photo-1556228578-8c89e6adf883?auto=format&fit=crop&w=1000&q=85")}
.beauty{background-image:url("https://images.unsplash.com/photo-1560750588-73207b1ef5b8?auto=format&fit=crop&w=1000&q=85")}
.steam{background-image:url("https://images.unsplash.com/photo-1544161515-4ab6ce6db874?auto=format&fit=crop&w=1000&q=85")}
.wellness{background-image:url("https://images.unsplash.com/photo-1600334129128-685c5582fd35?auto=format&fit=crop&w=1000&q=85")}
.card-body{padding:28px 27px 31px}
.number{font-size:9px;letter-spacing:2px;color:var(--gold)}
.card-body h3{font-size:30px;margin:25px 0 9px}
.card-body p{font-size:11px;color:var(--muted);line-height:1.8;margin:0 0 20px}
.card-body a{text-decoration:none;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--forest);font-weight:500}

.experience{display:grid;grid-template-columns:1fr 1fr;min-height:720px}
.experience-copy{padding:115px 9vw;background:var(--forest);color:#fff;display:flex;flex-direction:column;justify-content:center}
.experience-copy>p:not(.eyebrow){color:#c9d0c7;max-width:500px;font-size:13px;margin:28px 0 38px}
.experience-copy h2 em{color:#d5b36e}
.benefits{max-width:540px;border-top:1px solid rgba(255,255,255,.16)}
.benefits div{display:flex;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.benefits strong{font-size:9px;letter-spacing:2px;color:var(--gold-light);min-width:28px}
.benefits span{font-size:10px;letter-spacing:1px}
.experience-image{background:url("https://images.unsplash.com/photo-1544161515-4ab6ce6db874?auto=format&fit=crop&w=1600&q=88") center/cover;min-height:600px}

.about{display:grid;grid-template-columns:.9fr 1.1fr;min-height:610px}
.about-panel{padding:105px 9vw;background:#e9dfcc;display:flex;flex-direction:column;justify-content:center}
.about-panel h2{color:var(--forest)}
.about-panel>p:not(.eyebrow){max-width:450px;color:#64665e;font-size:13px;margin:28px 0}
.about-image{background:url("https://images.unsplash.com/photo-1600334089648-b0d9d3028eb2?auto=format&fit=crop&w=1700&q=88") center/cover}
.text-link{text-decoration:none;text-transform:uppercase;letter-spacing:1.7px;font-size:9px;font-weight:500;color:var(--forest);width:max-content;border-bottom:1px solid var(--gold);padding-bottom:7px}

.quote-section{text-align:center;padding:130px 20px;background:#f8f3e9}
.quote-section blockquote{font:500 clamp(40px,5vw,68px)/.98 "Cormorant Garamond",serif;margin:0 auto 38px;max-width:1000px;color:var(--forest)}
.quote-mark{font:600 12px/1 "Cormorant Garamond",serif;letter-spacing:5px;color:var(--gold)}

.booking{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;padding:120px 10vw;background:var(--cream)}
.booking-copy h2{color:var(--forest)}
.booking-copy>p:not(.eyebrow){max-width:500px;color:var(--muted);font-size:13px;margin:30px 0}
.contact-details{display:flex;gap:55px;margin-top:38px}
.contact-details div,.contact-details a{display:flex;flex-direction:column;text-decoration:none}
.contact-details span{font-size:8px;letter-spacing:2px;color:var(--gold);margin-bottom:7px}
.contact-details strong{font:500 24px "Cormorant Garamond",serif;color:var(--forest)}
.booking-card{align-self:center;background:var(--forest);color:#fff;padding:48px;box-shadow:0 25px 60px rgba(16,39,28,.18)}
.booking-icon{width:45px;height:45px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold-light);margin-bottom:25px}
.booking-card h3{font-size:36px}
.booking-card p{font-size:12px;color:#cbd1ca;line-height:1.8;margin:15px 0 28px}
.btn.dark{background:var(--gold);color:#fff;border:1px solid var(--gold);width:100%}
.call-link{display:block;text-align:center;color:#d7d8d1;text-decoration:none;font-size:9px;letter-spacing:1.4px;margin-top:16px}

footer{padding:50px 7vw;background:#0b1d15;color:#cbd1c8;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:50px}
.footer-wordmark span{color:#fff}
.footer-wordmark small{color:var(--gold-light)}
footer p{font-size:9px;letter-spacing:1px;margin:12px 0 0;color:#8f9b91}
.footer-right{display:flex;gap:24px}
.footer-right a{font-size:9px;text-decoration:none;text-transform:uppercase;letter-spacing:1.5px}
.copyright{margin:0!important;white-space:nowrap}

.floating-whatsapp{position:fixed;right:20px;bottom:20px;z-index:30;background:#1d6f46;color:#fff;text-decoration:none;padding:13px 17px;border-radius:40px;box-shadow:0 10px 30px rgba(0,0,0,.22);font-size:10px;letter-spacing:1px;text-transform:uppercase}
.floating-whatsapp span{margin-left:7px}

@media(max-width:950px){
  nav{gap:18px}
  .nav-book{display:none}
  .hero-content{width:70vw}
  .hero-brand-card{width:250px;right:5vw}
  .treatment-grid{grid-template-columns:1fr 1fr}
  .treatment-card.large{grid-column:span 2}
  footer{grid-template-columns:1fr 1fr}
  .copyright{grid-column:1/-1}
}
@media(max-width:720px){
  .topbar{display:none}
  .header{height:76px;padding:0 6vw}
  .wordmark span{font-size:25px}
  .menu-toggle{display:block;margin-left:auto}
  nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--paper);padding:22px 6vw;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:18px}
  nav.open{display:flex}
  .hero{min-height:780px;align-items:flex-end;background-position:60% center}
  .hero-overlay{background:linear-gradient(180deg,rgba(10,28,20,.28) 0%,rgba(10,28,20,.72) 45%,rgba(10,28,20,.95) 100%)}
  .hero-content{width:auto;margin:0;padding:45px 7vw 60px}
  h1{font-size:64px}
  .hero-brand-card{display:none}
  .promise,.experience,.about,.booking{display:block}
  .promise-image{min-height:430px}
  .promise-copy,.experience-copy,.about-panel{padding:80px 8vw}
  .experience-image,.about-image{min-height:470px}
  .services{padding:85px 6vw}
  .section-heading{display:block}
  .section-heading>p{margin-top:22px}
  .treatment-grid{grid-template-columns:1fr}
  .treatment-card.large{grid-column:auto;display:block}
  .card-image{min-height:250px}
  .quote-section{padding:95px 7vw}
  .booking{padding:85px 8vw}
  .booking-card{margin-top:45px;padding:38px 28px}
  .contact-details{gap:25px;flex-wrap:wrap}
  footer{display:block;padding:45px 7vw}
  .footer-right{margin:28px 0}
  .copyright{margin-top:25px!important}
}
@media(max-width:430px){
  h1{font-size:56px}
  h2{font-size:48px}
  .hero-copy{font-size:13px}
  .hero-actions .btn{width:100%}
  .contact-details{display:block}
  .contact-details div,.contact-details a{margin-bottom:20px}
  .floating-whatsapp{right:14px;bottom:14px}
}
