#hb-category{ background:var(--stone); color:var(--ink); font-family:'Inter',sans-serif; }
#hb-category *{ box-sizing:border-box; }
#hb-category img{ display:block; max-width:100%; height:auto; }
#hb-category a{ color:inherit; text-decoration:none; }
#hb-category .hbc-wrap{ max-width:var(--max); margin:0 auto; padding:0 64px; }

#hb-category h1,
#hb-category h2,
#hb-category h3,
#hb-category h4{ font-family:'Fraunces',serif; font-weight:360; }
#hb-category em{ font-style:italic; color:var(--gold-1); }

#hb-category .hbc-eyebrow{
  font-family:'Inter',sans-serif; font-size:11px; letter-spacing:0.16em;
  text-transform:uppercase; color:var(--oxide); font-weight:600; margin-bottom:16px;
}

#hb-category .hbc-btn{
  display:inline-block; padding:14px 28px; font-family:'Inter',sans-serif;
  font-size:13px; font-weight:500; letter-spacing:0.02em; border-radius:2px;
  border:1px solid transparent; cursor:pointer; transition:.2s;
}
#hb-category .hbc-btn-primary{ background:var(--ink); color:var(--stone) !important; }
#hb-category .hbc-btn-primary:hover{ background:var(--ink-soft); }
#hb-category .hbc-btn-outline{ background:transparent; color:var(--ink) !important; border-color:var(--ink); }
#hb-category .hbc-btn-outline:hover{ background:var(--ink); color:var(--stone) !important; }
#hb-category .hbc-btn-outline-light{ background:transparent; color:var(--stone) !important; border-color:rgba(237,231,220,0.6); }
#hb-category .hbc-btn-outline-light:hover{ background:var(--stone); color:var(--ink) !important; }
#hb-category .hbc-btn-white{ background:var(--stone); color:var(--ink) !important; border-color:var(--stone); }
#hb-category .hbc-btn-white:hover{ background:rgba(237,231,220,0.85); }
/* Hero — now full viewport, matching the reference's "one screen, one section" feel */
#hb-category .hbc-hero{ position:relative; height:100vh; min-height:640px; max-height:920px; overflow:hidden; display:flex; align-items:flex-end; }
#hb-category .hbc-hero img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:brightness(0.55); }
#hb-category .hbc-hero-inner{ position:relative; z-index:2; color:var(--stone); padding:0 0 96px 80px; max-width:680px; }
#hb-category .hbc-hero .hbc-eyebrow{ color:var(--gold-1); opacity:0.95; }
#hb-category .hbc-hero h1{ font-size:clamp(48px,6vw,84px); line-height:1.05; margin-bottom:24px; color:var(--stone); }
#hb-category .hbc-hero p{ font-size:15px; margin-bottom:24px; max-width:440px; opacity:0.95; color:rgba(241,228,204,0.9); }
#hb-category .hbc-actions{ display:flex; gap:12px; flex-wrap:wrap; }

/* Ease section — more vertical breathing room */
#hb-category .hbc-ease{ background:var(--stone-deep); padding:140px 0; }
#hb-category .hbc-ease-grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
#hb-category .hbc-ease h2{ font-size:44px; line-height:1.1; margin-bottom:24px; color:var(--ink); }
#hb-category .hbc-ease-image{ border-radius:2px; overflow:hidden; margin-top:24px; }
#hb-category .hbc-ease-image img{ width:100%; height:340px; object-fit:cover; }
#hb-category .hbc-lead{ font-size:14px; color:#6b6558; margin-bottom:28px; }
#hb-category .hbc-ease-block{ margin-bottom:22px; }
#hb-category .hbc-ease-block h4{ font-size:14px; font-weight:600; color:var(--ink); margin-bottom:6px; }
#hb-category .hbc-ease-block p{ font-size:13.5px; color:#6b6558; }
#hb-category .hbc-ease-grid .hbc-btn{ margin-top:14px; }

/* Intro offer banner */
#hb-category .hbc-special{ background:var(--ink); color:var(--stone); display:grid; grid-template-columns:1fr 1fr; min-height:360px; }
#hb-category .hbc-special-img img{ width:100%; height:100%; object-fit:cover; min-height:360px; filter:grayscale(0.1) brightness(0.85); }
#hb-category .hbc-special-content{ display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:60px 40px; }
#hb-category .hbc-special .hbc-eyebrow{ color:var(--gold-1); opacity:0.9; }
#hb-category .hbc-special h2{ font-size:40px; margin-bottom:14px; color:var(--stone); }
#hb-category .hbc-special p{ font-size:14px; opacity:0.85; margin-bottom:26px; max-width:360px; color:rgba(241,228,204,0.85); }

/* Path / treatments intro — more room before/after */
#hb-category .hbc-path{ padding:140px 0 60px; text-align:center; background:var(--stone); }
#hb-category .hbc-path h2{ font-size:44px; margin-bottom:12px; color:var(--ink); }
#hb-category .hbc-path .hbc-wrap > p{ font-size:14px; color:#6b6558; max-width:560px; margin:0 auto; }

/* Alternating service rows — wider gap between photo and copy, more room between rows */
#hb-category .hbc-services{ padding:40px 0 140px; background:var(--stone); }
#hb-category .hbc-service{ display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; margin-bottom:110px; }
#hb-category .hbc-service.hbc-reverse .hbc-service-img{ order:2; }
#hb-category .hbc-service-img{ border-radius:2px; overflow:hidden; aspect-ratio:5/4; }
#hb-category .hbc-service-img img{ width:100%; height:100%; object-fit:cover; }
#hb-category .hbc-service-body h3{ font-size:32px; color:var(--ink); margin-bottom:12px; }
#hb-category .hbc-tags{ display:flex; flex-wrap:wrap; gap:8px 16px; margin-bottom:14px; font-size:12px; color:#6b6558; }
#hb-category .hbc-tags span{ display:inline-flex; align-items:center; gap:6px; }
#hb-category .hbc-tags span::before{ content:"✓"; color:var(--oxide); font-weight:700; }
#hb-category .hbc-service-body p{ font-size:14px; color:#6b6558; margin-bottom:22px; line-height:1.65; }
#hb-category .hbc-service-actions{ display:flex; gap:12px; flex-wrap:wrap; }

/* Ritual / membership banner — taller, more cinematic */
#hb-category .hbc-ritual{ position:relative; color:var(--stone); overflow:hidden; }
#hb-category .hbc-ritual img{ width:100%; height:520px; object-fit:cover; filter:brightness(0.5) grayscale(0.15); }
#hb-category .hbc-ritual-inner{ position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 24px; }
#hb-category .hbc-ritual-mark{ font-family:'Fraunces',serif; font-size:22px; margin-bottom:14px; opacity:0.85; color:var(--gold-1); font-style:italic; }
#hb-category .hbc-ritual h2{ font-size:44px; margin-bottom:12px; color:var(--stone); }
#hb-category .hbc-ritual p{ max-width:520px; font-size:14px; margin-bottom:22px; opacity:0.9; color:rgba(241,228,204,0.9); }

/* Related treatments grid — more breathing room */
#hb-category .hbc-treat{ padding:140px 0; background:var(--stone-deep); }
#hb-category .hbc-treat-head{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:end; margin-bottom:40px; }
#hb-category .hbc-treat-head h2{ font-size:40px; color:var(--ink); }
#hb-category .hbc-treat-head p{ font-size:14px; color:#6b6558; }
#hb-category .hbc-treat-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
#hb-category .hbc-card{ border:1px solid var(--line); border-radius:2px; overflow:hidden; background:var(--stone); display:block; transition:border-color .2s ease; }
#hb-category .hbc-card:hover{ border-color:var(--oxide); }
#hb-category .hbc-card-img{ height:220px; overflow:hidden; }
#hb-category .hbc-card-img img{ width:100%; height:100%; object-fit:cover; }
#hb-category .hbc-card-body{ padding:20px; }
#hb-category .hbc-card-body h4{ font-size:22px; color:var(--ink); margin-bottom:8px; }
#hb-category .hbc-card-body p{ font-size:13px; color:#6b6558; }

@media (max-width:860px){
  #hb-category .hbc-wrap{ padding:0 22px; }
  #hb-category .hbc-hero{ height:auto; min-height:520px; max-height:none; }
  #hb-category .hbc-hero-inner{ padding:60px 22px; max-width:none; }
  #hb-category .hbc-hero h1{ font-size:40px; }
  #hb-category .hbc-ease{ padding:80px 0; }
  #hb-category .hbc-path{ padding:80px 0 40px; }
  #hb-category .hbc-services{ padding:40px 0 80px; }
  #hb-category .hbc-service{ margin-bottom:60px; }
  #hb-category .hbc-treat{ padding:80px 0; }
  #hb-category .hbc-ease-grid,
  #hb-category .hbc-special,
  #hb-category .hbc-service,
  #hb-category .hbc-treat-head{ grid-template-columns:1fr; gap:32px; }
  #hb-category .hbc-service.hbc-reverse .hbc-service-img{ order:0; }
  #hb-category .hbc-treat-grid{ grid-template-columns:1fr; }
  #hb-category .hbc-special-img img{ min-height:240px; }
  #hb-category .hbc-ritual img{ height:360px; }
  #hb-category .hbc-ease h2,
  #hb-category .hbc-path h2,
  #hb-category .hbc-ritual h2,
  #hb-category .hbc-treat-head h2,
  #hb-category .hbc-special h2{ font-size:32px; }
}