/* ============================================================
   99-eberhardt-client — Eberhardt client revisions (2026-10-30 Loom round)
   Loads last (sorted), so these override the section files.
   - Logo-heart green on titles over dark navy + hero accent word
   - Photos in original color (template duotone/grayscale removed),
     hover zoom kept
   - Hero rating chip aligned with the buttons, bigger hero portrait
   - Pain check panel sits beside its heading
   - Taller "Why" collage so it lines up with the list
   ============================================================ */

/* --- Green titles on dark navy sections --- */
.on-ink h1,
.on-ink h2 { color: var(--brand-green); }

/* Home hero: only the rotating accent word goes green (headline stays white) */
.sec-02-hero .sec-02-hero__headline { color: var(--white); }
.sec-02-hero .sec-02-hero__rotator-word { color: var(--brand-green); }

/* --- Original-color photos, keep the hover zoom --- */
.sec-02-hero__photo img { filter: brightness(0.62); } /* keeps the green word ≥3:1 over the brightest photo areas */
.sec-02-hero__tint { display: none; }

.sec-05-services__photo,
.sec-05-services__tile:hover .sec-05-services__photo,
.sec-05-services__tile:focus-visible .sec-05-services__photo { filter: none; }
.sec-05-services__tile::before { display: none; }

.sec-09-team__photo,
.sec-09-team__card:hover .sec-09-team__photo,
.sec-09-team__card:focus-within .sec-09-team__photo { filter: none; }
.sec-09-team__photo-wrap::after { display: none; }

.sec-40-about-team__photo,
.sec-40-about-gallery__img,
.sec-60-svc-grid__photo { filter: none; }

@media (min-width: 1024px) {
  /* Hero portrait: full color, a little bigger, zoom on hover kept */
  .sec-02-hero__figure { width: min(420px, 100%); }
  .sec-02-hero__figure-img,
  .sec-02-hero__figure:hover .sec-02-hero__figure-img,
  .sec-02-hero__figure:focus-within .sec-02-hero__figure-img { filter: none; }
  .sec-02-hero__figure-tint { display: none; }
  /* Outline ring hugs the portrait instead of hanging off its corner */
  .sec-02-hero__figure-ring { transform: none; }

}

/* Rating chip: left edge lines up with the Schedule Appointment button
   at every width (the template nudges it right on tablet/desktop) */
.sec-02-hero .sec-02-hero__rating { margin-left: 0; }

/* --- Pain check: panel beside the heading, no empty right half --- */
@media (min-width: 1024px) {
  .sec-15-paincheck > .container {
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: clamp(2.5rem, 2rem + 3vw, 5rem);
    align-items: center;
  }
  .sec-15-paincheck > .container > .section-head { margin-bottom: 0; }
  .sec-15-paincheck__panel { max-width: none; margin-inline: 0; }
}

/* --- 4-phase journey: taller photo whose top lines up with the 01–04
   phase dots (nav block = 4.75rem + its clamp() bottom margin) --- */
@media (min-width: 821px) and (prefers-reduced-motion: no-preference) {
  .sec-06-journey .sec-06-journey__phase { align-items: stretch; }
  .sec-06-journey .sec-06-journey__frame {
    --journey-nav-offset: calc(4.75rem + clamp(2.5rem, 6vw, 4rem));
    margin-top: calc(-1 * var(--journey-nav-offset));
    aspect-ratio: auto;
    height: calc(var(--journey-nav-offset) + clamp(300px, 26vw, 345px));
    align-self: start;
  }
}

/* --- Location: flat cream so no lighter strip shows where the next
   section's cream wave begins (Contact page seam) --- */
.sec-13-location { background: var(--bone); }

/* Contact page (location sits right under the interior hero): map full
   width on top, details below it instead of squeezed beside it */
.sec-00-inthero + .sec-13-location .sec-13-location__card { grid-template-columns: 1fr; }
.sec-00-inthero + .sec-13-location .sec-13-location__map { min-height: 420px; }
@media (min-width: 900px) {
  .sec-00-inthero + .sec-13-location .sec-13-location__info {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    column-gap: 3rem;
  }
  .sec-00-inthero + .sec-13-location .sec-13-location__name { grid-column: 1 / -1; }
}

/* --- FAST PT "Access to Expert Care": cream instead of the wide white band --- */
#fast-start.sec-70-info--white { background: var(--bone); }
#fast-start.sec-70-info--white .sec-70-info__card { background: var(--white); }

/* --- Wave dividers must match the section they flow out of --- */
/* Booking's top wave is cream (--bone); these sections end on --bone-2 */
.sec-60-svc-choose + .sec-12-booking .sec-12-booking__wave path,
.sec-50-wwt-notsure + .sec-12-booking .sec-12-booking__wave path { fill: var(--bone-2) !important; }
/* Condition "How we fix it" bottom wave flows into a white section */
.sec-55-cond-treatment:has(+ .sec-55-cond-related) .sec-55-cond-treatment__wave path { fill: var(--white) !important; }

/* --- Prose pages (careers, bios, policies): breathing room + readable buttons.
   `.section` / `.on-bone` on these sections had no styles, so stacked prose
   sections ran into each other and buttons sat flush against the text. --- */
.sec-23-prose {
  background: var(--bone);
  padding-block: clamp(3rem, 2rem + 3vw, 5rem);
}
.sec-23-prose + .sec-23-prose {
  padding-top: 0;
}
.sec-23-prose + .sec-23-prose > .sec-23-prose__wrap {
  border-top: 1px solid var(--line-bone);
  padding-top: clamp(3rem, 2rem + 3vw, 5rem);
}
.sec-23-prose + .sec-23-prose .sec-23-prose__h:first-child { margin-top: 0; }
.sec-23-prose p:has(> .btn) { margin-top: 2rem; }
.sec-23-prose a.btn,
.sec-23-prose a.btn:hover,
.sec-23-prose a.btn:focus-visible {
  text-decoration: none;
}
.sec-23-prose a.btn--solid,
.sec-23-prose a.btn--solid:hover,
.sec-23-prose a.btn--solid:focus-visible { color: var(--accent-on); }

/* --- Buttons with helper text right under them --- */
.sec-11-insurance__submit { margin-bottom: 0.75rem; }
.sec-18-faq__card-btn { margin-bottom: 1rem; }

/* --- Nutrition: "Co-Owner & Founder of Skinny Louisiana" (old-site section) --- */
.sec-99-founder {
  background: var(--bone);
  padding-block: clamp(1rem, 2vw, 2rem) var(--sp-section);
}
.sec-99-founder__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: clamp(1.25rem, 2vw, 1.75rem);
}
.sec-99-founder__title {
  font-size: var(--fs-h3);
  color: var(--brand-green-strong);
}
.sec-99-founder__logo img { width: min(360px, 80vw); height: auto; }

/* --- Phone numbers never split across lines; Contact hero line wide
   enough that the number stays on the first line on desktop --- */
a[href^="tel:"] { white-space: nowrap; }
.sec-00-inthero:has(+ .sec-13-location) .sec-00-inthero__sub { max-width: 64rem; }
.sec-09-team .sec-09-team__book,
.sec-40-about-team .sec-40-about-team__book { display: flex; width: fit-content; margin-top: 1.25rem; }
