
  :root{
    --teal:#1e4345; --teal-footer:#355856; --cream:#f2e8e1; --hero-cream:#f2e4d5;
    --copper:#b3764f; --copper-btn:#b7755b; --gold:#ecc086; --ink:#4c4842;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:'Nunito Sans',sans-serif;background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased}
  a{text-decoration:none;color:inherit}
  img{display:block;max-width:100%}

  /* ============ HERO — photo crops to fit, text stays readable ============ */
  .hero{
    position:relative;
    height:max(620px, 88svh);
    background:var(--hero-cream) url('img/hero-bg.jpg') center 62%/cover no-repeat;
    overflow:hidden;
  }
  .nav{
    position:relative;z-index:2;
    display:flex;align-items:flex-start;justify-content:space-between;
    padding:26px 4vw 0 4vw;
  }
  .logo{width:clamp(150px,16vw,220px);height:auto}
  .menu{display:flex;align-items:center;gap:clamp(18px,2.8vw,40px);padding-top:6px}
  .menu a{
    white-space:nowrap;font-size:clamp(11px,.95vw,14px);font-weight:700;
    letter-spacing:.18em;text-transform:uppercase;color:#2f4a48;transition:color .2s;
  }
  .menu a:hover{color:var(--copper)}
  .menu .btn-book{
    background:var(--teal);color:#f2e8dd;border-radius:6px;
    padding:clamp(12px,1.3vw,17px) clamp(16px,1.9vw,27px);letter-spacing:.16em;
  }
  .menu .btn-book:hover{background:#153335;color:#fff}

  .hero-copy{position:absolute;z-index:2;left:6%;top:50%;transform:translateY(-46%);max-width:520px}
  .hero-copy h1{
    font-family:'Cormorant Garamond',serif;font-weight:500;
    font-size:clamp(40px,4.7vw,66px);line-height:1.05;color:#164447;
  }
  .hero-rule{width:36px;height:2px;background:#164447;margin:clamp(20px,2.6vw,36px) 0 clamp(16px,2.2vw,30px)}
  .hero-copy p{
    max-width:250px;font-size:clamp(15px,1.35vw,19px);line-height:1.52;color:#6f4227;
  }
  .btn-appt{
    display:inline-block;margin-top:clamp(22px,3vw,40px);
    background:var(--teal);color:#f2e8dd;border-radius:6px;
    font-size:clamp(11px,1vw,14px);font-weight:700;letter-spacing:.18em;text-transform:uppercase;
    padding:clamp(14px,1.5vw,19px) clamp(22px,2.6vw,36px);transition:background .2s;
  }
  .btn-appt:hover{background:#153335}

  /* ============ LOCATION ============ */
  .location{background:var(--cream);padding:clamp(34px,4vw,54px) 4vw clamp(38px,4.6vw,62px);text-align:center}
  .eyebrow{
    font-size:clamp(10px,.95vw,13px);font-weight:700;letter-spacing:.24em;text-transform:uppercase;
    color:#4a4642;display:inline-flex;align-items:center;gap:14px;
  }
  .eyebrow::before,.eyebrow::after{content:"";width:clamp(22px,2.6vw,34px);height:1px;background:#9a938a}
  .location h2{
    font-family:'Cormorant Garamond',serif;font-weight:500;
    font-size:clamp(24px,2.75vw,40px);letter-spacing:.155em;color:#232323;
    margin-top:clamp(6px,.7vw,12px);text-transform:uppercase;
  }
  .features{
    max-width:1180px;margin:clamp(26px,3vw,44px) auto 0;
    display:grid;grid-template-columns:1fr 1fr 1fr;
  }
  .feature{padding:0 clamp(16px,3vw,40px);position:relative}
  .feature + .feature::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:1px;background:#cabfb3}
  .feature img{width:clamp(66px,7.7vw,96px);height:auto;margin:0 auto clamp(12px,1.4vw,20px);border-radius:50%}
  .feature h3{font-size:clamp(11px,1.05vw,14px);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8a4f2d;margin-bottom:clamp(6px,.8vw,11px)}
  .feature p{font-size:clamp(13px,1.2vw,16px);line-height:1.55;color:var(--ink);max-width:250px;margin:0 auto}

  /* ============ REIKI ============ */
  .reiki{
    position:relative;overflow:hidden;color:#e9ddc8;
    aspect-ratio:1122/354;min-height:400px;max-height:640px;
    background:#372f36 url('img/reiki-bg.jpg') center/cover no-repeat;
  }
  .reiki-inner{position:absolute;inset:0;max-width:1780px;margin:0 auto;padding:0 4vw}
  .reiki-eyebrow{
    position:absolute;left:4vw;top:9%;
    font-size:clamp(10px,.95vw,13px);font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);
  }
  .reiki h2{
    position:absolute;left:4vw;top:15%;
    font-family:'Cormorant Garamond',serif;font-weight:500;
    font-size:clamp(38px,4.6vw,66px);line-height:1;color:#f6efe0;
  }
  .reiki-underline{
    position:absolute;left:4vw;top:38%;width:clamp(240px,30vw,420px);height:1px;
    background:linear-gradient(90deg,#c99a5f,rgba(201,154,95,.12));
  }
  .reiki-underline::after{
    content:"❁";position:absolute;left:50%;top:-9px;transform:translateX(-50%);
    color:#c99a5f;font-size:14px;
  }
  .reiki p{position:absolute;left:4vw;width:clamp(260px,27vw,380px);font-size:clamp(13px,1.25vw,17px);line-height:1.55}
  .reiki .p1{top:43%}
  .reiki .p2{top:64%}
  .btn-reiki{
    position:absolute;left:4vw;top:84.5%;
    display:inline-block;background:var(--copper-btn);color:#fdf6ec;border-radius:5px;
    font-size:clamp(10px,.95vw,13px);font-weight:700;letter-spacing:.2em;text-transform:uppercase;
    padding:clamp(11px,1.2vw,15px) clamp(20px,2.4vw,32px);transition:background .2s;
  }
  .btn-reiki:hover{background:#a3624a}

  /* ============ FOOTER ============ */
  .footer{background:var(--teal-footer);color:#eef0e9;padding:clamp(22px,2.4vw,32px) 4vw 0}
  .footer-grid{max-width:1780px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}
  .f-item{display:flex;align-items:center;gap:14px}
  .f-item:nth-child(2){justify-content:center}
  .f-item:nth-child(3){justify-content:flex-end}
  .f-icon{
    width:46px;height:46px;border-radius:50%;border:1.5px solid #cfd6cf;
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
  }
  .f-icon svg{width:19px;height:19px;stroke:#eef0e9;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .f-item strong{display:block;font-size:15px;font-weight:700}
  .f-item small{display:block;font-size:13px;opacity:.9;margin-top:2px}
  .copyright{text-align:center;font-size:12.5px;opacity:.9;padding:clamp(18px,2.2vw,26px) 0 18px}

  /* ============ MOBILE ============ */
  @media (max-width:760px){
    .hero{height:auto;min-height:100svh;display:flex;flex-direction:column;
      background:
        linear-gradient(180deg, rgba(242,228,213,.94) 0%, rgba(242,228,213,.82) 42%, rgba(242,228,213,.12) 78%),
        url('img/hero-bg.jpg') 74% bottom/cover no-repeat}
    .nav{flex-direction:column;align-items:center;gap:14px;padding-top:20px}
    .logo{width:170px}
    .menu{flex-wrap:nowrap;justify-content:center;gap:22px;padding-top:0}
    .menu a{font-size:12px;letter-spacing:.14em}
    .menu .btn-book{display:none}
    .hero-copy{position:static;transform:none;text-align:center;margin:44px auto 0;padding:0 24px 300px}
    .hero-copy h1{font-size:44px}
    .hero-rule{margin:24px auto 20px}
    .hero-copy p{margin:0 auto;font-size:17px}
    .btn-appt{margin-top:30px}
    .features{grid-template-columns:1fr;gap:36px}
    .feature + .feature::before{display:none}
    .feature img{width:80px}
    .feature p{font-size:15px;max-width:270px}
    .reiki{aspect-ratio:auto;max-height:none;min-height:0;
      background:linear-gradient(rgba(45,38,44,.55),rgba(45,38,44,.55)),url('img/reiki-bg.jpg') 72% center/cover no-repeat}
    .reiki-inner{position:static;padding:46px 24px 52px}
    .reiki-eyebrow,.reiki h2,.reiki-underline,.reiki p,.btn-reiki{position:static}
    .reiki h2{font-size:44px;margin-top:10px}
    .reiki-underline{width:280px;margin:18px 0 24px;position:relative}
    .reiki p{width:100%;max-width:340px;font-size:16px;margin-bottom:16px}
    .btn-reiki{margin-top:10px;padding:14px 28px;font-size:12px}
    .footer-grid{grid-template-columns:1fr;gap:18px}
    .f-item:nth-child(2),.f-item:nth-child(3){justify-content:flex-start}
    .copyright{font-size:12px}
  }

/* ============ INNER PAGES ============ */
.inner-head{
  background:var(--hero-cream) url('img/hero-bg.jpg') center 20%/cover no-repeat;
  position:relative;
}
.inner-head::after{content:"";position:absolute;inset:0;background:rgba(242,228,213,.82)}
.inner-head .nav{position:relative;z-index:2}
.inner-title{position:relative;z-index:2;text-align:center;padding:clamp(30px,4vw,60px) 24px clamp(44px,5vw,80px)}
.inner-title h1{
  font-family:'Cormorant Garamond',serif;font-weight:500;
  font-size:clamp(34px,4vw,56px);color:#164447;line-height:1.1;
}
.inner-title p{margin-top:12px;font-size:clamp(14px,1.2vw,17px);color:#6f4227}
.content{max-width:880px;margin:0 auto;padding:clamp(36px,4.5vw,64px) 24px}
.content h2{
  font-family:'Cormorant Garamond',serif;font-weight:500;
  font-size:clamp(26px,2.6vw,36px);color:#164447;margin:1.6em 0 .5em;
}
.content h2:first-child{margin-top:0}
.content p{font-size:clamp(15px,1.15vw,17px);line-height:1.7;margin-bottom:1em}
.svc{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #ddd0c4}
.svc strong{font-size:clamp(15px,1.15vw,17px);font-weight:700;color:#3d3a36}
.svc span{font-size:clamp(13px,1vw,15px);color:#8a5a3c;white-space:nowrap}
.svc small{display:block;font-weight:400;font-size:clamp(13px,1vw,14.5px);color:var(--ink);margin-top:3px}
.cta-band{background:var(--teal);color:#f2e8dd;text-align:center;padding:clamp(34px,4vw,54px) 24px}
.cta-band h2{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(24px,2.6vw,36px);margin-bottom:10px}
.cta-band p{font-size:clamp(14px,1.15vw,16px);opacity:.9;margin-bottom:22px}
.btn-light{
  display:inline-block;background:var(--copper-btn);color:#fdf6ec;border-radius:6px;
  font-size:clamp(11px,1vw,14px);font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  padding:15px 30px;transition:background .2s;
}
.btn-light:hover{background:#a3624a}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,48px);max-width:980px;margin:0 auto;padding:clamp(36px,4.5vw,64px) 24px}
.contact-card h2{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(24px,2.4vw,32px);color:#164447;margin-bottom:16px}
.c-item{display:flex;align-items:center;gap:14px;padding:12px 0}
.c-item .f-icon{border-color:#b3764f}
.c-item .f-icon svg{stroke:#8a5a3c}
.c-item strong{display:block;font-size:16px;color:#3d3a36}
.c-item small{display:block;font-size:13.5px;color:var(--ink)}
form.book label{display:block;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6f4227;margin:16px 0 6px}
form.book input, form.book select, form.book textarea{
  width:100%;padding:12px 14px;border:1px solid #d8c9ba;border-radius:6px;
  font-family:'Nunito Sans',sans-serif;font-size:15px;color:#3d3a36;background:#fdfaf6;
}
form.book textarea{min-height:110px;resize:vertical}
form.book button{
  margin-top:20px;border:0;cursor:pointer;
  background:var(--teal);color:#f2e8dd;border-radius:6px;
  font-family:'Nunito Sans',sans-serif;font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  padding:16px 32px;transition:background .2s;
}
form.book button:hover{background:#153335}
@media (max-width:760px){
  .contact-grid{grid-template-columns:1fr}
  .inner-head{background-position:70% 20%}
}
