/* The studio welcome: one centered logo, real photographs and a personal invitation. */
.home-page #nav,
.home-page #nav.scrolled {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 172px minmax(0, 1fr);
  gap: 24px;
  padding: 0 max(5vw, calc((100vw - 1180px) / 2));
  background: #fcf7ed;
}
.home-page #nav > .logo {
  position: relative;
  grid-column: 2;
  grid-row: 1;
  justify-self: center;
  align-self: center;
  width: 152px;
  height: 142px;
  justify-content: center;
}
.home-page #nav .nav-brand-logo,
.home-page #nav.scrolled .nav-brand-logo {
  position: static;
  display: block;
  width: 152px;
  height: 152px;
  max-width: none;
  object-fit: contain;
}
.home-page #nav.scrolled > .logo { height: 72px; }
.home-page #nav.scrolled .nav-brand-logo { width: 84px; height: 84px; }
.home-page #nav .nav-links { display: contents; }
.home-page #nav .nav-group { display: flex; align-items: center; gap: 20px; grid-row: 1; }
.home-page #nav .nav-group-left { grid-column: 1; justify-content: flex-start; }
.home-page #nav .nav-group-right { grid-column: 3; justify-content: flex-end; }
.home-page #nav .nav-links a { font-size: 16px; white-space: nowrap; }
.home-page .hero.hero-benefits-first {
  padding-top: calc(var(--nav-h, 142px) + 6px);
  /* Match the header exactly, then reveal the existing leaves gradually. */
  background: linear-gradient(to bottom,
    #fcf7ed 0,
    #fcf7ed calc(var(--nav-h, 142px) - 2px),
    rgba(252, 247, 237, 0) calc(var(--nav-h, 142px) + 170px));
}

.home-page .welcome-therapies { position:static;inset:auto;z-index:auto;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;width:100%;padding:10px 0 12px;margin:0;background:transparent;box-shadow:none;backdrop-filter:none;border-bottom:1px solid #d8cfbb80; }
.welcome-therapy { display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;padding:10px 8px 6px;border-radius:14px;text-align:center;text-decoration:none;color:#314b3a;transition:background .2s,color .2s; }
.welcome-icon { display:grid;place-items:center;width:88px;height:88px;border:1px solid #cdbb9673;border-radius:50%;background:#fffaf17a;color:#997036; }
.welcome-icon svg { display:block;width:62px;height:62px; }
.welcome-icon .icon-accent { stroke:#46634f; }
.welcome-therapy-label { max-width:180px;min-height:2.8em;font:500 15px/1.4 Inter,Arial,sans-serif;letter-spacing:.015em;text-wrap:balance; }
.welcome-therapy:hover { background:#eee7d54d;color:#805e30; }
.welcome-therapy:focus-visible { outline:2px solid #997036;outline-offset:3px; }
.home-page .hero-benefits-first .hero-inner { display: block; max-width: 850px; padding: 0; margin: 26px auto 0; text-align: center; }
.home-page .hero-intro-copy { min-width: 0; }
.home-page .hero-benefits-first .hero-intro-copy .eyebrow { font-size: 12px; letter-spacing: .13em; margin-bottom: 12px; }
.home-page .hero-benefits-first h1 { font-size: clamp(38px, 4vw, 54px); line-height: 1.12; margin: 0 0 18px; text-wrap:balance; }
.home-page .hero-benefits-first .hero-intro-copy .lede { max-width: 800px; font-size: 18px; line-height: 1.65; margin: 0 auto; text-wrap:balance; }
.home-page .welcome-detail { max-width: 700px; font-size: 16px; line-height: 1.65; color: #59685a; margin: 12px auto 0; text-wrap:balance; }
.home-page .welcome-signoff { font-family: var(--serif); color: #85622e; font-size: 25px; line-height: 1.4; font-style: italic; margin: 16px 0 0; text-wrap:balance; }
.home-page .hero-offer-focus { margin: 18px 0 32px; }
.home-page .hero-primary-offer { min-height: 62px; width: min(420px, 100%); font-size:18px; }

/* Bring the first photographs into the opening view without shrinking the type. */
@media (min-width: 701px) {
  .home-page .welcome-therapies { padding-top: 4px; padding-bottom: 6px; }
  .home-page .hero-benefits-first .hero-inner { margin-top: 16px; }
  .home-page .hero-benefits-first h1 { margin-bottom: 12px; }
  .home-page .welcome-signoff { margin-top: 10px; }
  .home-page .hero-offer-focus { margin: 12px 0 20px; }
}
@media (min-width: 901px) {
  .home-page #nav:not(.scrolled) > .logo { height: 122px; }
}

@media (min-width: 901px) and (max-width: 1250px) {
  .home-page #nav, .home-page #nav.scrolled { grid-template-columns: minmax(0, 1fr) 140px minmax(0, 1fr); gap: 12px; }
  .home-page #nav .nav-group { gap: 10px; }
  .home-page #nav .nav-links a { font-size: 14px; }
  .home-page #nav .nav-offer-link { padding: 9px 10px; }
}
@media (max-width: 900px) {
  .home-page #nav, .home-page #nav.scrolled { grid-template-columns: 1fr 140px 1fr; gap: 12px; padding-inline: 5vw; }
  .home-page #nav > .logo { width: 140px; height: 120px; }
  .home-page #nav .nav-brand-logo { width: 138px; height: 138px; }
  .home-page #nav.scrolled > .logo { height: 64px; }
  .home-page #nav.scrolled .nav-brand-logo { width: 76px; height: 76px; }
  .home-page #nav .nav-toggle { display: block; grid-column: 3; grid-row: 1; justify-self: end; }
  .home-page #nav .nav-links { display: flex; }
  .home-page #nav .nav-group { display: contents; }
  .home-page #nav .nav-links a { font-size: 17px; white-space: normal; }
  .home-page #nav .nav-offer-link { margin-top: 12px; text-align: center; }
}
@media (max-width: 700px) {
  .home-page .hero.hero-benefits-first { padding-top: calc(var(--nav-h, 120px) + 4px); }
  .home-page .hero-benefits-first .hero-inner { margin-top: 23px; padding: 0; text-align: center; }
  .home-page .hero-benefits-first .hero-intro-copy .eyebrow { font-size: 11px; letter-spacing: .1em; margin-bottom: 10px; }
  .home-page .hero-benefits-first h1 { font-size: clamp(34px, 8.8vw, 42px); margin-bottom: 14px; }
  .home-page .hero-benefits-first .hero-intro-copy .lede { font-size: 16px; line-height: 1.6; margin-inline: auto; }
  .home-page .welcome-detail { font-size: 15px; line-height: 1.6; margin-top: 9px; }
  .home-page .welcome-signoff { font-size: 23px; margin-top: 10px; }
  .home-page .hero-offer-focus { margin: 18px 0 28px; }
  .home-page .hero-primary-offer { font-size: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-page #nav, .home-page #nav .nav-brand-logo { transition: none; }
}

@media(max-width:700px){.home-page .welcome-therapies{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 5px;padding:4px 0 14px}.welcome-therapy{gap:8px;padding:7px 3px}.welcome-icon{width:62px;height:62px}.welcome-icon svg{width:44px;height:44px}.welcome-therapy-label{font-size:13px;max-width:120px}.home-page .hero-benefits-first .hero-inner{margin-top:24px}.home-page .hero-benefits-first .hero-intro-copy .lede,.home-page .welcome-detail{max-width:360px}.home-page .welcome-signoff{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.welcome-therapy{transition:none}}

/* Clearer navigation and an offer summary that reads as part of the invitation. */
.home-page #nav .nav-secondary{font-weight:600;color:#223a2e;background:#e9ecdf9c;padding:10px 12px;border-radius:8px}
.home-page .hero-offer-summary{font-size:14px;line-height:1.6;text-wrap:balance}
@media(min-width:901px) and (max-width:1250px){.home-page #nav .nav-secondary{padding:8px 0;background:transparent}}
@media(max-width:700px){.home-page .hero-offer-summary{font-size:13px}.home-page .hero-offer-focus{gap:12px}.welcome-therapy-label{min-height:2.8em}}
