/*
Theme Name: NHC ACO Lander Review Portrait Sized Review Physician Clean Hero Sticky Header + Card Fit Botanical Palette Spacing Fix
Theme URI: https://example.com/
Author: ChatGPT
Author URI: https://openai.com/
Description: A custom National Holistic Consulting physician-governed Medicare ACO recruitment theme with client revisions, branded logo, updated palette, and botanical graphics.
Version: 1.7.1
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nhc-aco-lander
*/

:root {
  --nhc-green: #174d2a;
  --nhc-green-2: #2e6540;
  --nhc-sage: #e8ecdd;
  --nhc-sage-2: #f2f5eb;
  --nhc-cream: #faf7ef;
  --nhc-cream-2: #fffdf8;
  --nhc-charcoal: #15231d;
  --nhc-muted: #637069;
  --nhc-line: rgba(21, 35, 29, 0.12);
  --nhc-shadow: 0 24px 80px rgba(21, 35, 29, 0.10);
  --nhc-soft-shadow: 0 12px 36px rgba(21, 35, 29, 0.08);
  --nhc-radius: 24px;
  --nhc-radius-sm: 16px;
  --nhc-max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--nhc-charcoal);
  background:
    radial-gradient(circle at top left, rgba(232,236,221,.8), transparent 36rem),
    linear-gradient(180deg, var(--nhc-cream-2), #fff 34%, var(--nhc-cream));
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
}
body.admin-bar .site-header { top: 32px; }

img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
p { margin: 0; }

.site-wrap { overflow: hidden; }
.container { width: min(calc(100% - 40px), var(--nhc-max)); margin: 0 auto; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255, 253, 248, 0.86);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid var(--nhc-line);
}
.header-inner {
  min-height: 86px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 240px;
}
.brand-logo {
  width: 72px;
  height: auto;
  display: block;
  mix-blend-mode: multiply;
}
.brand-text {
  display: grid;
  line-height: 1.05;
  letter-spacing: -0.02em;
  font-weight: 750;
}
.brand-sub { font-size: 12px; color: var(--nhc-muted); font-weight: 650; letter-spacing: .06em; text-transform: uppercase; margin-top: 5px; }
.main-nav { display: flex; align-items: center; gap: 26px; font-size: 14px; font-weight: 650; color: rgba(21,35,29,.82); }
.main-nav a { padding: 10px 0; }
.main-nav a:hover { color: var(--nhc-green); }
.header-cta,
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 24px;
  border-radius: 12px;
  border: 1px solid transparent;
  font-weight: 750;
  letter-spacing: -0.01em;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
  cursor: pointer;
}
.header-cta,
.btn-primary {
  background: linear-gradient(135deg, var(--nhc-green), #0f3b20);
  color: #fff;
  box-shadow: 0 14px 32px rgba(23,77,42,.20);
}
.btn-secondary {
  color: var(--nhc-charcoal);
  background: rgba(255,255,255,.78);
  border-color: rgba(21,35,29,.22);
}
.btn-light {
  background: #fffdf8;
  color: var(--nhc-charcoal);
  border-color: rgba(255,255,255,.45);
}
.header-cta:hover,
.btn:hover { transform: translateY(-2px); box-shadow: 0 18px 40px rgba(23,77,42,.18); }
.mobile-toggle { display: none; background: transparent; border: 0; padding: 8px; }
.mobile-toggle span { display: block; width: 24px; height: 2px; background: var(--nhc-charcoal); margin: 5px 0; }

.hero { padding: 68px 0 34px; position: relative; }
.hero-grid {
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  gap: 46px;
  align-items: center;
}
.eyebrow {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: var(--nhc-green);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 12px;
  font-weight: 850;
  margin-bottom: 18px;
}
.eyebrow::before { content: ""; width: 34px; height: 2px; background: currentColor; border-radius: 999px; }
h1, h2, h3 { margin: 0; letter-spacing: -0.055em; line-height: .98; }
h1 { font-size: clamp(44px, 6vw, 82px); max-width: 720px; }
h2 { font-size: clamp(34px, 4.2vw, 58px); }
h3 { font-size: 24px; letter-spacing: -0.035em; line-height: 1.08; }
.hero-subtitle {
  margin-top: 20px;
  color: var(--nhc-green-2);
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.18;
  font-weight: 750;
  letter-spacing: -0.03em;
  max-width: 680px;
}
.hero-copy { margin-top: 18px; color: rgba(21,35,29,.76); max-width: 650px; font-size: 17px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; }
.meta-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 28px;
  max-width: 700px;
}
.meta-pill {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 14px 15px;
  background: rgba(255,255,255,.72);
  border: 1px solid var(--nhc-line);
  border-radius: 16px;
  box-shadow: var(--nhc-soft-shadow);
  font-size: 13px;
  line-height: 1.25;
}
.meta-pill strong { display: block; color: var(--nhc-charcoal); font-size: 14px; }
.icon-circle {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--nhc-green);
  background: var(--nhc-sage);
}
.icon-circle svg { width: 22px; height: 22px; }

.hero-visual {
  position: relative;
  min-height: 560px;
  border-radius: 34px;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(250,247,239,.75), rgba(250,247,239,0) 42%),
    radial-gradient(circle at 20% 20%, #fff, rgba(255,255,255,0) 24rem),
    linear-gradient(135deg, #edf1e4, #f8f5ec 44%, #e2eadb);
  box-shadow: var(--nhc-shadow);
}
.hero-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 78% 22%, rgba(23,77,42,.16), transparent 22rem),
    linear-gradient(120deg, transparent 55%, rgba(255,255,255,.4));
}
.practice-room {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.05)),
    url("data:image/svg+xml,%3Csvg width='760' height='560' viewBox='0 0 760 560' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='760' height='560' fill='none'/%3E%3Crect x='470' y='58' width='230' height='132' rx='16' fill='%23fffdf8' opacity='.82'/%3E%3Crect x='498' y='84' width='74' height='84' rx='5' fill='%23dfe7d8'/%3E%3Crect x='590' y='84' width='74' height='84' rx='5' fill='%23dfe7d8'/%3E%3Crect x='98' y='345' width='560' height='74' rx='18' fill='%23d5decf' opacity='.82'/%3E%3Crect x='142' y='292' width='138' height='94' rx='23' fill='%23fffdf8' opacity='.9'/%3E%3Crect x='478' y='286' width='130' height='102' rx='24' fill='%23fffdf8' opacity='.92'/%3E%3Ccircle cx='360' cy='202' r='88' fill='%23fffdf8' opacity='.68'/%3E%3Cpath d='M298 211c36 21 81 21 124 0' stroke='%23174d2a' stroke-width='9' opacity='.18' fill='none'/%3E%3Cpath d='M235 390h272' stroke='%2315231d' opacity='.08' stroke-width='18'/%3E%3C/svg%3E") center/cover no-repeat;
  opacity: .9;
}
.hero-card {
  position: absolute;
  right: 34px;
  top: 58px;
  width: min(390px, calc(100% - 68px));
  padding: 26px;
  border-radius: 24px;
  background: rgba(255,253,248,.88);
  border: 1px solid rgba(255,255,255,.75);
  box-shadow: 0 30px 90px rgba(21,35,29,.16);
  backdrop-filter: blur(18px);
}
.hero-card h3 { margin-bottom: 18px; }
.support-list { display: grid; gap: 12px; }
.support-item { display: grid; grid-template-columns: 42px 1fr; gap: 12px; align-items: start; padding: 12px 0; border-top: 1px solid rgba(21,35,29,.08); }
.support-item:first-child { border-top: 0; }
.support-item strong { display: block; font-size: 15px; }
.support-item span { display: block; color: var(--nhc-muted); font-size: 13px; line-height: 1.35; }
.date-card { margin-top: 12px; padding: 14px; border-radius: 14px; background: var(--nhc-sage-2); display: flex; align-items: center; gap: 12px; font-weight: 800; }

.statement { padding: 26px 0; }
.statement-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 38px;
  align-items: center;
  padding: 38px 46px;
  border-radius: var(--nhc-radius);
  background: rgba(255,253,248,.78);
  border: 1px solid rgba(21,35,29,.08);
  box-shadow: var(--nhc-soft-shadow);
}
.statement-card h2 { font-size: clamp(28px, 3vw, 46px); }
.statement-card p { color: rgba(21,35,29,.75); font-size: 17px; }

section { scroll-margin-top: 105px; }
.section-pad { padding: 80px 0; }
.section-head { text-align: center; max-width: 780px; margin: 0 auto 44px; }
.section-head p { margin-top: 12px; color: var(--nhc-muted); font-size: 17px; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.feature-card {
  padding: 32px;
  border-radius: var(--nhc-radius);
  background: rgba(255,255,255,.72);
  border: 1px solid var(--nhc-line);
  box-shadow: var(--nhc-soft-shadow);
}
.feature-card h3 { margin: 18px 0 10px; }
.feature-card p { color: var(--nhc-muted); }
.check-list { list-style: none; padding: 0; margin: 18px 0 0; display: grid; gap: 9px; }
.check-list li { position: relative; padding-left: 26px; color: rgba(21,35,29,.84); font-size: 15px; }
.check-list li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--nhc-green); font-weight: 900; }

.eligibility { background: linear-gradient(180deg, rgba(232,236,221,.55), rgba(255,255,255,.55)); }
.fit-grid { display: grid; grid-template-columns: .86fr 1.14fr; gap: 26px; align-items: stretch; }
.fit-copy { padding: 42px; border-radius: var(--nhc-radius); background: linear-gradient(135deg, rgba(255,253,248,.96), rgba(232,236,221,.45)); border: 1px solid var(--nhc-line); }
.fit-copy p { margin-top: 16px; color: var(--nhc-muted); font-size: 17px; }
.eligibility-panel { padding: 28px; border-radius: var(--nhc-radius); background: #fff; box-shadow: var(--nhc-shadow); border: 1px solid rgba(21,35,29,.08); }
.eligibility-row { display: flex; gap: 12px; align-items: center; padding: 17px 0; border-bottom: 1px solid var(--nhc-line); font-weight: 650; }
.eligibility-row:last-of-type { border-bottom: 0; }
.eligibility-panel .btn { width: 100%; margin-top: 18px; }

.review-strip { padding: 46px 0 20px; }
.review-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 20px; }
.review-card { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 26px; border-radius: var(--nhc-radius-sm); background: rgba(255,253,248,.84); border: 1px solid var(--nhc-line); }
.review-card p { color: var(--nhc-muted); }

.process { padding: 70px 0; }
.process-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 20px; position: relative; }
.process-step { position: relative; padding: 32px; border: 1px solid var(--nhc-line); border-radius: var(--nhc-radius); background: rgba(255,255,255,.72); }
.step-number { width: 38px; height: 38px; display: grid; place-items:center; background: var(--nhc-green); color:#fff; border-radius: 999px; font-weight: 850; margin-bottom: 18px; }
.process-step p { margin-top: 8px; color: var(--nhc-muted); }

.engagement-card {
  display: grid;
  grid-template-columns: 210px 1fr;
  gap: 30px;
  align-items: center;
  padding: 36px 42px;
  border-radius: var(--nhc-radius);
  background: linear-gradient(135deg, #f6f3ea, #e9eedf);
  border: 1px solid var(--nhc-line);
}
.logo-mark-large { width: 136px; height: 136px; border-radius: 50%; display:grid; place-items:center; background:#fffdf8; border: 1px solid var(--nhc-line); }
.logo-mark-large img { width: 86px; mix-blend-mode: multiply; }
.engagement-card p { margin-top: 12px; color: var(--nhc-muted); }

.dates-faq { padding: 80px 0; }
.dates-faq-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 44px; align-items: start; }
.timeline { margin-top: 22px; display: grid; gap: 16px; }
.timeline-item { display: grid; grid-template-columns: 58px 1fr; gap: 14px; align-items: center; padding: 18px; border-radius: 18px; background: rgba(255,255,255,.72); border: 1px solid var(--nhc-line); }
.timeline-item strong { display:block; }
.timeline-item span { color: var(--nhc-muted); font-size: 14px; }
.faq-list { display: grid; gap: 10px; }
.faq-item { border: 1px solid var(--nhc-line); background: rgba(255,255,255,.72); border-radius: 14px; overflow: hidden; }
.faq-question { width:100%; border:0; background: transparent; padding: 18px 20px; display:flex; justify-content:space-between; gap:16px; text-align:left; font-weight: 750; color:var(--nhc-charcoal); cursor:pointer; }
.faq-answer { max-height: 0; overflow: hidden; transition: max-height .2s ease; }
.faq-answer p { padding: 0 20px 18px; color: var(--nhc-muted); }
.faq-item.is-open .faq-answer { max-height: 180px; }

.final-cta { padding: 20px 0 76px; }
.cta-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 28px;
  align-items: center;
  padding: 46px;
  border-radius: var(--nhc-radius);
  background:
    radial-gradient(circle at 90% 20%, rgba(255,255,255,.18), transparent 18rem),
    linear-gradient(135deg, #0f3b20, #1e5b33);
  color: #fff;
}
.cta-card::after { content:""; position:absolute; right:-60px; bottom:-80px; width:320px; height:320px; border:1px solid rgba(255,255,255,.22); border-radius: 50%; }
.cta-card h2 { font-size: clamp(32px, 4vw, 56px); }
.cta-card p { margin-top: 12px; color: rgba(255,255,255,.82); font-size: 18px; }
.cta-card > * { position:relative; z-index:2; }

.site-footer { background: #fffdf8; border-top: 1px solid var(--nhc-line); }
.footer-main { padding: 40px 0; display: grid; grid-template-columns: 1.2fr 1fr 1fr 1.1fr; gap: 30px; }
.footer-brand img { width: 78px; mix-blend-mode: multiply; }
.footer-brand p { margin-top: 14px; color: var(--nhc-muted); max-width: 300px; }
.footer-col h4 { margin: 0 0 12px; letter-spacing: .08em; text-transform: uppercase; font-size: 12px; color: var(--nhc-green); }
.footer-col a, .footer-col span { display: block; margin: 7px 0; color: var(--nhc-muted); font-size: 14px; }
.footer-bottom { border-top: 1px solid var(--nhc-line); padding: 18px 0; display:flex; justify-content:space-between; gap: 20px; color: var(--nhc-muted); font-size: 13px; }

@media (max-width: 980px) {
  .mobile-toggle { display: block; }
  .main-nav { position: fixed; top: 86px; left: 0; right: 0; padding: 22px; background: #fffdf8; border-bottom: 1px solid var(--nhc-line); box-shadow: var(--nhc-soft-shadow); display: none; flex-direction: column; align-items: flex-start; }
  .site-header.nav-open .main-nav { display: flex; }
  .header-cta { display:none; }
  .hero-grid, .statement-card, .fit-grid, .dates-faq-grid, .cta-card, .footer-main, .engagement-card { grid-template-columns: 1fr; }
  .hero-visual { min-height: 520px; }
  .feature-grid, .process-grid, .review-grid { grid-template-columns: 1fr; }
  .meta-row { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; }
}
@media (max-width: 640px) {
  .container { width: min(calc(100% - 28px), var(--nhc-max)); }
  .header-inner { min-height: 74px; }
  body.admin-bar .site-header { top: 0; }
  .brand { min-width: 0; gap: 10px; }
  .brand-logo { width: 52px; }
  .brand-text { font-size: 14px; }
  .brand-sub { display:none; }
  .main-nav { top: 74px; }
  .hero { padding-top: 42px; }
  .hero-actions { flex-direction: column; }
  .btn { width: 100%; }
  .hero-visual { min-height: 510px; border-radius: 22px; }
  .hero-card { right: 18px; left: 18px; width: auto; top: 30px; padding: 22px; }
  .statement-card, .fit-copy, .eligibility-panel, .feature-card, .cta-card, .engagement-card { padding: 26px; }
  .section-pad, .dates-faq { padding: 56px 0; }
}

/* Pods FAQ rich text support */
.faq-answer-inner { padding: 0 20px 18px; color: var(--nhc-muted); }
.faq-answer-inner p { padding: 0; margin: 0 0 10px; }
.faq-answer-inner p:last-child { margin-bottom: 0; }
.faq-item.is-open .faq-answer { max-height: 520px; }

/* 1.2 polish pass: keeps all existing Pods field names, improves spacing, hierarchy, and hero balance */
:root {
  --nhc-max: 1260px;
  --nhc-green: #124f2a;
  --nhc-green-2: #3c6847;
  --nhc-sage: #edf2e6;
  --nhc-sage-2: #f7f8f2;
  --nhc-cream: #f8f4eb;
  --nhc-cream-2: #fffdf8;
  --nhc-charcoal: #11221a;
  --nhc-muted: #5d6a63;
  --nhc-line: rgba(17, 34, 26, 0.105);
  --nhc-shadow: 0 26px 70px rgba(17, 34, 26, 0.105);
  --nhc-soft-shadow: 0 14px 34px rgba(17, 34, 26, 0.075);
}

body {
  background:
    radial-gradient(circle at 8% 4%, rgba(232, 236, 221, .72), transparent 31rem),
    radial-gradient(circle at 92% 10%, rgba(245, 247, 239, .92), transparent 28rem),
    linear-gradient(180deg, #fffdf8 0%, #fffaf1 46%, #f8f4eb 100%);
  font-size: 16px;
}

.site-header {
  background: rgba(255, 253, 248, .91);
  box-shadow: 0 12px 36px rgba(17,34,26,.035);
}
.header-inner { min-height: 78px; }
.brand { min-width: 290px; gap: 16px; }
.brand-logo { width: 74px; max-height: 62px; object-fit: contain; }
.brand-text { font-size: 17px; }
.brand-sub { font-size: 11px; letter-spacing: .08em; }
.main-nav { gap: 30px; font-size: 13px; }
.header-cta { min-height: 46px; border-radius: 13px; padding: 0 22px; }

.hero { padding: 82px 0 44px; }
.hero-grid {
  grid-template-columns: minmax(0, 1.18fr) minmax(430px, .82fr);
  gap: 74px;
  align-items: center;
}
.hero-content { min-width: 0; }
.eyebrow { font-size: 11px; letter-spacing: .16em; margin-bottom: 20px; }
.eyebrow::before { width: 28px; }
h1, h2, h3 { text-wrap: balance; }
h1 {
  font-size: clamp(44px, 4.55vw, 68px);
  max-width: 760px;
  line-height: .96;
  letter-spacing: -.065em;
  hyphens: none;
  overflow-wrap: normal;
}
h2 { letter-spacing: -.055em; }
.hero-subtitle {
  font-size: clamp(19px, 1.6vw, 25px);
  max-width: 690px;
  margin-top: 22px;
  line-height: 1.22;
}
.hero-copy { max-width: 720px; font-size: 16px; line-height: 1.65; color: rgba(17,34,26,.72); }
.hero-actions { margin-top: 30px; }
.btn, .header-cta {
  border-radius: 14px;
  letter-spacing: -.015em;
}
.btn-primary { box-shadow: 0 18px 38px rgba(18,79,42,.22); }
.btn-secondary { background: rgba(255,253,248,.92); }
.meta-row {
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  max-width: 760px;
  gap: 12px;
}
.meta-pill {
  padding: 13px 14px;
  border-radius: 15px;
  background: rgba(255,253,248,.86);
}
.icon-circle { width: 40px; height: 40px; background: #eef3e7; }

.hero-visual {
  min-height: 500px;
  border-radius: 34px;
  overflow: visible;
  box-shadow: none;
  background:
    radial-gradient(circle at 62% 50%, rgba(18,79,42,.10), transparent 17rem),
    linear-gradient(135deg, rgba(237,242,230,.8), rgba(255,253,248,.35));
}
.hero-visual::before {
  inset: 42px 0 42px 58px;
  border-radius: 34px;
  box-shadow: var(--nhc-shadow);
  background:
    linear-gradient(90deg, rgba(255,253,248,.72), rgba(255,253,248,.12)),
    radial-gradient(circle at 72% 21%, rgba(18,79,42,.16), transparent 17rem),
    linear-gradient(135deg, #f5f7ef, #e6eddf);
}
.practice-room {
  inset: 42px 0 42px 58px;
  border-radius: 34px;
  overflow: hidden;
  opacity: .78;
}
.hero-card {
  right: 36px;
  top: 68px;
  width: min(430px, calc(100% - 62px));
  padding: 28px;
  border-radius: 26px;
  background: rgba(255,253,248,.94);
  box-shadow: 0 34px 80px rgba(17,34,26,.15);
}
.hero-card h3 { font-size: 25px; max-width: 300px; }
.support-item { padding: 13px 0; }
.support-item strong { font-size: 15px; }
.support-item span { font-size: 13px; }
.date-card { border: 1px solid rgba(17,34,26,.08); }

.statement { padding: 36px 0 54px; }
.statement-card {
  padding: 44px 52px;
  border-radius: 28px;
  background: rgba(255,253,248,.92);
  box-shadow: 0 22px 60px rgba(17,34,26,.075);
}
.statement-card h2 { font-size: clamp(30px, 3vw, 48px); }
.statement-card p { max-width: 520px; }

.section-pad { padding: 92px 0; }
.section-head { margin-bottom: 50px; }
.section-head .eyebrow { margin-bottom: 14px; }
.section-head h2 { max-width: 740px; margin: 0 auto; }
.feature-grid { gap: 26px; }
.feature-card {
  border-radius: 26px;
  padding: 34px;
  background: rgba(255,253,248,.88);
  box-shadow: 0 18px 48px rgba(17,34,26,.07);
  transition: transform .18s ease, box-shadow .18s ease;
}
.feature-card:hover { transform: translateY(-3px); box-shadow: 0 24px 60px rgba(17,34,26,.10); }
.feature-card h3 { font-size: 25px; }
.feature-card p { line-height: 1.6; }

.eligibility { padding-top: 88px; padding-bottom: 88px; background: linear-gradient(180deg, rgba(237,242,230,.72), rgba(255,253,248,.78)); }
.fit-grid { grid-template-columns: .88fr 1.12fr; gap: 28px; }
.fit-copy,
.eligibility-panel {
  border-radius: 28px;
}
.fit-copy { background: linear-gradient(135deg, #fffdf8, #eef3e7); }
.eligibility-panel { box-shadow: 0 24px 70px rgba(17,34,26,.10); }
.eligibility-row { padding: 18px 0; }
.eligibility-row .icon-circle { width: 32px; height: 32px; }
.eligibility-row .icon-circle svg { width: 17px; height: 17px; }

.review-strip { padding: 64px 0 36px; }
.review-card { border-radius: 22px; background: rgba(255,253,248,.9); }
.process { padding: 78px 0; }
.process-step { border-radius: 24px; background: rgba(255,253,248,.86); }
.engagement-card {
  border-radius: 28px;
  background:
    radial-gradient(circle at 94% 15%, rgba(18,79,42,.12), transparent 18rem),
    linear-gradient(135deg, #fffdf8, #e8eee0);
  box-shadow: 0 20px 54px rgba(17,34,26,.07);
}
.logo-mark-large { background: #fff; }

.dates-faq { padding: 92px 0; }
.dates-faq-grid { gap: 56px; grid-template-columns: .9fr 1.1fr; }
.timeline-item,
.faq-item {
  background: rgba(255,253,248,.88);
  box-shadow: 0 10px 28px rgba(17,34,26,.045);
}
.faq-question { padding: 20px 22px; }
.faq-answer-inner { padding: 0 22px 20px; }

.final-cta { padding-bottom: 86px; }
.cta-card {
  border-radius: 28px;
  padding: 52px 58px;
  background:
    radial-gradient(circle at 82% 32%, rgba(255,255,255,.16), transparent 18rem),
    linear-gradient(135deg, #0f3b20 0%, #15542c 55%, #234a32 100%);
}
.cta-card .btn { min-width: 225px; }

.footer-main { grid-template-columns: 1.35fr .9fr .9fr 1.1fr; padding: 46px 0; }
.site-footer { background: rgba(255,253,248,.95); }

@media (max-width: 1100px) {
  .hero-grid { grid-template-columns: 1fr; gap: 44px; }
  .hero-visual { min-height: 480px; max-width: 760px; width: 100%; }
  h1 { max-width: 820px; }
}

@media (max-width: 980px) {
  .brand { min-width: 0; }
  .main-nav { top: 78px; }
  .statement-card, .fit-grid, .dates-faq-grid, .cta-card, .footer-main, .engagement-card { grid-template-columns: 1fr; }
  .feature-grid, .process-grid, .review-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .hero { padding-top: 44px; }
  h1 { font-size: clamp(42px, 13vw, 56px); }
  .hero-subtitle { font-size: 20px; }
  .hero-visual { min-height: 500px; border-radius: 22px; }
  .hero-visual::before, .practice-room { inset: 22px 0 22px 0; border-radius: 22px; }
  .hero-card { left: 18px; right: 18px; width: auto; top: 44px; }
  .meta-row { grid-template-columns: 1fr; }
  .statement-card, .fit-copy, .eligibility-panel, .feature-card, .cta-card, .engagement-card { padding: 26px; }
  .section-pad, .dates-faq, .eligibility { padding: 58px 0; }
}


/* 1.0.1 hero card + icon alignment fix
   Keeps all existing Pods field names. */
.icon-circle,
.step-number,
.logo-mark-large {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center;
  line-height: 0 !important;
  vertical-align: middle;
}

.icon-circle {
  position: relative;
  min-width: 40px;
  min-height: 40px;
  overflow: hidden;
}

.icon-circle svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px;
  margin: 0 !important;
  stroke-width: 2;
  transform: none !important;
}

.meta-pill .icon-circle,
.support-item .icon-circle,
.date-card .icon-circle,
.review-card .icon-circle,
.timeline-item .icon-circle {
  width: 42px;
  height: 42px;
  min-width: 42px;
  min-height: 42px;
}

.meta-pill .icon-circle svg,
.support-item .icon-circle svg,
.date-card .icon-circle svg,
.review-card .icon-circle svg,
.timeline-item .icon-circle svg {
  width: 21px !important;
  height: 21px !important;
}

.feature-card .icon-circle {
  width: 46px;
  height: 46px;
  min-width: 46px;
  min-height: 46px;
}

.feature-card .icon-circle svg {
  width: 22px !important;
  height: 22px !important;
}

.eligibility-row .icon-circle {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
}

.eligibility-row .icon-circle svg {
  width: 16px !important;
  height: 16px !important;
}

/* Make the hero support card cleaner and less bulky. */
.hero-visual {
  min-height: 480px;
  background:
    radial-gradient(circle at 65% 42%, rgba(18,79,42,.08), transparent 16rem),
    linear-gradient(135deg, rgba(237,242,230,.78), rgba(255,253,248,.45));
}

.hero-visual::before,
.practice-room {
  inset: 52px 10px 52px 54px;
  border-radius: 32px;
}

.hero-card {
  top: 64px;
  right: 42px;
  width: min(410px, calc(100% - 78px));
  padding: 30px;
}

.hero-card h3 {
  margin-bottom: 16px;
}

.support-item {
  grid-template-columns: 42px 1fr;
  align-items: center;
  gap: 14px;
  padding: 14px 0;
}

.support-item strong,
.support-item span {
  line-height: 1.32;
}

.date-card {
  align-items: center;
}

@media (max-width: 1100px) {
  .hero-visual::before,
  .practice-room {
    inset: 36px 0 36px 36px;
  }
  .hero-card {
    right: 28px;
  }
}

@media (max-width: 640px) {
  .hero-visual::before,
  .practice-room {
    inset: 22px 0 22px 0;
  }
  .hero-card {
    left: 18px;
    right: 18px;
    width: auto;
  }
}

/* 1.0.2 hero overlap fix
   Keeps all existing Pods field names. Adds enough vertical room for the right-side support card
   so it no longer collides with the statement box below. */
@media (min-width: 1101px) {
  .hero {
    padding-bottom: 86px;
  }

  .hero-grid {
    align-items: start;
  }

  .hero-visual {
    min-height: 610px;
  }

  .hero-visual::before,
  .practice-room {
    inset: 42px 10px 42px 54px;
  }

  .hero-card {
    top: 58px;
    right: 42px;
  }

  .statement {
    padding-top: 12px;
  }
}

@media (max-width: 1100px) {
  .hero {
    padding-bottom: 64px;
  }

  .hero-visual {
    min-height: 600px;
  }
}

@media (max-width: 640px) {
  .hero {
    padding-bottom: 52px;
  }

  .hero-visual {
    min-height: 570px;
  }

  .hero-card {
    top: 32px;
  }
}

/* 1.0.3 mobile hero card collision fix
   Keeps all existing Pods field names. On small screens, the right-side support card
   becomes part of the normal layout flow so the hero section grows with it and no longer
   overlaps the section below. */
@media (max-width: 767px) {
  .hero {
    padding-bottom: 40px;
  }

  .hero-grid {
    gap: 28px;
  }

  .hero-visual {
    position: relative;
    min-height: 0 !important;
    padding: 22px 18px;
    overflow: hidden;
    border-radius: 22px;
  }

  .hero-visual::before,
  .practice-room {
    inset: 0 !important;
    border-radius: 22px;
  }

  .hero-card {
    position: relative;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    width: 100% !important;
    margin: 22px 0 0;
    padding: 24px;
    z-index: 2;
  }

  .support-list {
    gap: 8px;
  }

  .support-item {
    align-items: start;
  }

  .date-card {
    margin-top: 16px;
  }

  .statement {
    padding-top: 12px;
  }
}

/* 1.0.4 iPhone hard fix for hero support-card collision
   The previous mobile rule could still leave the decorative visual area with an imposed height on some iPhone widths.
   This forces the hero card into document flow and removes all fixed/min-height behavior under tablet width. */
@media (max-width: 767px) {
  .hero {
    padding-bottom: 32px !important;
  }

  .hero-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
    gap: 28px !important;
  }

  .hero-visual {
    display: block !important;
    height: auto !important;
    min-height: unset !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 16px !important;
    margin: 0 0 44px !important;
    border-radius: 22px !important;
  }

  .hero-visual::before,
  .practice-room {
    position: absolute !important;
    inset: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    border-radius: 22px !important;
    pointer-events: none !important;
  }

  .practice-room {
    opacity: .35 !important;
  }

  .hero-card {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 24px !important;
    z-index: 3 !important;
  }

  .hero-card h3 {
    font-size: clamp(28px, 8vw, 38px) !important;
    max-width: 100% !important;
  }

  .support-item {
    grid-template-columns: 42px 1fr !important;
    align-items: center !important;
  }

  .date-card {
    display: grid !important;
    grid-template-columns: 42px 1fr !important;
  }

  .statement {
    clear: both !important;
    padding-top: 20px !important;
  }
}

@media (max-width: 430px) {
  .hero-visual {
    padding: 12px !important;
    margin-bottom: 52px !important;
  }

  .hero-card {
    padding: 22px !important;
  }

  .support-item {
    padding: 13px 0 !important;
  }
}


/* 1.5.0 visual palette update
   Matches the companion application experience while preserving all existing content,
   Pods field names, section structure, and the working mobile layout. */
:root {
  --nhc-green: #183129;
  --nhc-green-2: #456f61;
  --nhc-sage: #e7eadc;
  --nhc-sage-2: #f1f2e9;
  --nhc-cream: #eeeae1;
  --nhc-cream-2: #f7f5ef;
  --nhc-charcoal: #172a23;
  --nhc-muted: #65716b;
  --nhc-line: rgba(23, 42, 35, 0.13);
  --nhc-shadow: 0 26px 70px rgba(23, 42, 35, 0.12);
  --nhc-soft-shadow: 0 14px 34px rgba(23, 42, 35, 0.08);
}

body {
  background:
    radial-gradient(circle at 8% 4%, rgba(231,234,220,.8), transparent 31rem),
    radial-gradient(circle at 92% 10%, rgba(241,242,233,.92), transparent 28rem),
    linear-gradient(180deg, #f7f5ef 0%, #f5f2eb 46%, #eeeae1 100%);
}

.site-header {
  background: rgba(247,245,239,.93);
  border-bottom-color: rgba(23,42,35,.12);
}

.header-cta,
.btn-primary {
  background: linear-gradient(135deg, #183129, #10241d);
  box-shadow: 0 14px 32px rgba(24,49,41,.22);
}

.btn-secondary,
.btn-light {
  background: #f7f5ef;
  border-color: rgba(23,42,35,.22);
}

.hero-subtitle,
.eyebrow,
.footer-col h4 {
  color: #456f61;
}

.icon-circle {
  color: #456f61;
  background: #e7eadc;
}

.hero-visual {
  background:
    radial-gradient(circle at 65% 42%, rgba(69,111,97,.12), transparent 16rem),
    linear-gradient(135deg, rgba(231,234,220,.9), rgba(247,245,239,.58));
}

.hero-visual::before {
  background:
    linear-gradient(90deg, rgba(247,245,239,.74), rgba(247,245,239,.14)),
    radial-gradient(circle at 72% 21%, rgba(69,111,97,.18), transparent 17rem),
    linear-gradient(135deg, #f1f2e9, #dfe5d8);
}

.hero-card,
.statement-card,
.feature-card,
.review-card,
.process-step,
.timeline-item,
.faq-item,
.meta-pill {
  background: rgba(247,245,239,.94);
}

.date-card,
.fit-copy {
  background: linear-gradient(135deg, #f7f5ef, #e7eadc);
}

.eligibility {
  background: linear-gradient(180deg, rgba(231,234,220,.78), rgba(247,245,239,.84));
}

.engagement-card {
  background:
    radial-gradient(circle at 94% 15%, rgba(69,111,97,.14), transparent 18rem),
    linear-gradient(135deg, #f7f5ef, #dfe5d8);
}

.step-number {
  background: #456f61;
}

.cta-card {
  background:
    radial-gradient(circle at 82% 32%, rgba(255,255,255,.12), transparent 18rem),
    linear-gradient(135deg, #172a23 0%, #1d392f 55%, #456f61 100%);
}

.site-footer {
  background: #f3f0e8;
}

/* Client revision pass: founding physician / AI-powered ACO branding */
:root {
  --nhc-brand-forest: #192f28;
  --nhc-brand-olive: #667a35;
  --nhc-brand-sage: #9db7a7;
  --nhc-brand-cream: #f7f1e4;
}

.statement-label {
  grid-column: 1 / -1;
  color: var(--nhc-brand-olive);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
  margin-bottom: -10px;
}

/* Subtle botanical line art inspired by the client flyer. */
.hero::before,
.hero::after,
.eligibility::before,
.engagement-card::after,
.cta-card::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 300px;
  pointer-events: none;
  opacity: .13;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 300' fill='none' stroke='%23667a35' stroke-width='1.35'%3E%3Cpath d='M118 292C116 222 118 150 133 22'/%3E%3Cpath d='M129 62C96 43 67 47 45 67c28 8 55 5 84-5Z'/%3E%3Cpath d='M124 96c34-25 66-27 94-8-27 17-58 20-94 8Z'/%3E%3Cpath d='M121 132c-35-22-68-20-95 1 30 14 61 13 95-1Z'/%3E%3Cpath d='M119 171c33-23 65-22 92-1-28 14-58 15-92 1Z'/%3E%3Cpath d='M118 211c-31-20-61-17-86 4 27 11 55 10 86-4Z'/%3E%3Cpath d='M117 248c28-18 55-15 77 4-24 10-49 8-77-4Z'/%3E%3C/svg%3E");
}
.hero { position: relative; }
.hero::before { left: -95px; top: 120px; transform: rotate(-14deg); }
.hero::after { right: -105px; bottom: 20px; transform: rotate(18deg) scale(.8); }
.eligibility { position: relative; overflow: hidden; }
.eligibility::before { left: -70px; bottom: -90px; transform: rotate(-20deg); }
.engagement-card { position: relative; overflow: hidden; }
.engagement-card::after { right: -45px; bottom: -115px; transform: rotate(18deg) scale(.72); }
.cta-card::before { left: -70px; bottom: -120px; filter: brightness(3); opacity: .16; }

.hero h1 { color: var(--nhc-brand-forest); }
.hero-subtitle,
.eyebrow,
.statement-label { color: var(--nhc-brand-olive); }

.physician-partnership .statement-card {
  background:
    radial-gradient(circle at 92% 10%, rgba(157,183,167,.22), transparent 20rem),
    rgba(255,253,248,.94);
}

.engagement-card p {
  font-size: 17px;
  line-height: 1.65;
  max-width: 980px;
}

@media (max-width: 767px) {
  .hero::before,
  .hero::after,
  .eligibility::before,
  .engagement-card::after,
  .cta-card::before {
    width: 170px;
    height: 210px;
    opacity: .08;
  }
  .statement-label { margin-bottom: 0; }
}


/* 1.6.1 official logo + RGB 32,43,38 brand color merged with client copy revisions */
:root {
  --nhc-deep-brand: #202b26;
  --nhc-green: #202b26;
  --nhc-charcoal: #202b26;
  --nhc-green-2: #5f7668;
  --nhc-sage: #e7eadc;
  --nhc-sage-2: #f1f2e9;
  --nhc-line: rgba(32, 43, 38, 0.14);
  --nhc-shadow: 0 26px 70px rgba(32, 43, 38, 0.13);
  --nhc-soft-shadow: 0 14px 34px rgba(32, 43, 38, 0.085);
}
.site-header { border-bottom-color: rgba(32,43,38,.13); }
.brand-logo { width: 86px; max-height: 70px; object-fit: contain; mix-blend-mode: normal; }
.footer-brand img { width: 108px; max-height: 108px; object-fit: contain; mix-blend-mode: normal; }
.header-cta, .btn-primary { background: linear-gradient(135deg, #202b26 0%, #15201b 100%); box-shadow: 0 14px 32px rgba(32,43,38,.24); }
.header-cta:hover, .btn-primary:hover { box-shadow: 0 18px 42px rgba(32,43,38,.28); }
.step-number { background: #202b26; }
.cta-card { background: radial-gradient(circle at 82% 32%, rgba(255,255,255,.12), transparent 18rem), linear-gradient(135deg, #202b26 0%, #293a32 58%, #5f7668 100%); }
.site-footer { border-top-color: rgba(32,43,38,.13); }
@media (max-width: 640px) { .brand-logo { width: 64px; max-height: 58px; } }

/* 2.2 Botanical brand graphics
   Decorative only; no Pods fields or content structure changed. */
.hero,
.physician-partnership,
#why-join,
.eligibility,
.engagement-card,
.final-cta {
  position: relative;
}

.hero::after {
  content: "";
  position: absolute;
  left: -70px;
  bottom: -95px;
  width: 430px;
  height: 430px;
  background: url("assets/botanical-corner.svg") center/contain no-repeat;
  opacity: .22;
  pointer-events: none;
  z-index: 0;
}

.hero .container,
.physician-partnership .container,
#why-join .container,
.eligibility .container,
.final-cta .container {
  position: relative;
  z-index: 1;
}

.physician-partnership::before {
  content: "";
  position: absolute;
  right: -80px;
  top: -150px;
  width: 360px;
  height: 360px;
  background: url("assets/floral-bloom.svg") center/contain no-repeat;
  opacity: .14;
  pointer-events: none;
}

#why-join::after {
  content: "";
  position: absolute;
  right: -40px;
  bottom: 20px;
  width: 300px;
  height: 220px;
  background: url("assets/leaf-sprig.svg") center/contain no-repeat;
  opacity: .18;
  pointer-events: none;
}

.eligibility::before {
  content: "";
  position: absolute;
  left: -90px;
  top: 90px;
  width: 360px;
  height: 360px;
  background: url("assets/floral-bloom.svg") center/contain no-repeat;
  opacity: .1;
  transform: rotate(-12deg);
  pointer-events: none;
}

.engagement-card {
  overflow: hidden;
}
.engagement-card::after {
  content: "";
  position: absolute;
  right: -45px;
  bottom: -70px;
  width: 280px;
  height: 210px;
  background: url("assets/leaf-sprig.svg") center/contain no-repeat;
  opacity: .18;
  pointer-events: none;
}
.engagement-card > * {
  position: relative;
  z-index: 1;
}

.final-cta::before {
  content: "";
  position: absolute;
  left: -80px;
  bottom: -10px;
  width: 310px;
  height: 310px;
  background: url("assets/botanical-corner.svg") center/contain no-repeat;
  opacity: .16;
  filter: brightness(2.1) saturate(.45);
  pointer-events: none;
}

@media (max-width: 900px) {
  .hero::after { width: 300px; height: 300px; left: -100px; bottom: -30px; opacity: .14; }
  .physician-partnership::before { width: 260px; height: 260px; right: -120px; top: -80px; opacity: .1; }
  #why-join::after { width: 220px; height: 160px; right: -100px; opacity: .12; }
  .eligibility::before { width: 260px; height: 260px; left: -130px; opacity: .08; }
  .final-cta::before { width: 240px; height: 240px; left: -120px; opacity: .1; }
}

@media (max-width: 640px) {
  .hero::after,
  .physician-partnership::before,
  #why-join::after,
  .eligibility::before {
    opacity: .075;
  }
  .engagement-card::after { width: 180px; height: 130px; right: -80px; bottom: -34px; opacity: .1; }
}

/* 2.3 Stronger botanical treatment + visible logo
   Uses the supplied dark logo on light backgrounds and preserves the transparent
   artwork as assets/images/nhc-logo-transparent.png for future dark sections. */
.brand-logo,
.footer-brand img,
.logo-mark-large img {
  mix-blend-mode: normal !important;
}

.brand-logo {
  width: 72px !important;
  height: 72px !important;
  max-height: 72px !important;
  object-fit: cover !important;
  border-radius: 50%;
  box-shadow: 0 8px 24px rgba(32,43,38,.14);
}

.footer-brand img {
  width: 92px !important;
  height: 92px !important;
  object-fit: cover !important;
  border-radius: 50%;
  box-shadow: 0 10px 28px rgba(32,43,38,.14);
}

.logo-mark-large {
  background: #202b26 !important;
  border-color: rgba(32,43,38,.22) !important;
  overflow: hidden;
}
.logo-mark-large img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Make the floral graphics clearly visible while keeping text readable. */
.hero::after {
  left: -36px;
  bottom: -70px;
  width: 500px;
  height: 500px;
  opacity: .38;
}

.physician-partnership::before {
  right: -34px;
  top: -120px;
  width: 430px;
  height: 430px;
  opacity: .29;
}

#why-join::after {
  right: -12px;
  bottom: -6px;
  width: 360px;
  height: 255px;
  opacity: .32;
}

.eligibility::before {
  left: -46px;
  top: 55px;
  width: 430px;
  height: 430px;
  opacity: .23;
}

.engagement-card::after {
  right: -10px;
  bottom: -45px;
  width: 340px;
  height: 250px;
  opacity: .34;
}

.final-cta::before {
  left: -40px;
  bottom: -34px;
  width: 370px;
  height: 370px;
  opacity: .27;
  filter: brightness(2.3) saturate(.7);
}

/* Soft botanical color wash behind the most prominent flourishes. */
.physician-partnership::after,
.eligibility::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 999px;
  filter: blur(12px);
  z-index: 0;
}
.physician-partnership::after {
  right: 10px;
  top: 8px;
  width: 230px;
  height: 230px;
  background: rgba(155,173,136,.12);
}
.eligibility::after {
  left: 24px;
  top: 120px;
  width: 240px;
  height: 240px;
  background: rgba(196,201,152,.12);
}

@media (max-width: 900px) {
  .hero::after { width: 350px; height: 350px; left: -92px; bottom: -28px; opacity: .25; }
  .physician-partnership::before { width: 300px; height: 300px; right: -98px; top: -68px; opacity: .20; }
  #why-join::after { width: 260px; height: 190px; right: -78px; opacity: .22; }
  .eligibility::before { width: 310px; height: 310px; left: -106px; opacity: .17; }
  .engagement-card::after { width: 240px; height: 175px; right: -50px; opacity: .24; }
  .final-cta::before { width: 280px; height: 280px; left: -100px; opacity: .18; }
}

@media (max-width: 640px) {
  .brand-logo { width: 58px !important; height: 58px !important; max-height: 58px !important; }
  .hero::after { opacity: .18; }
  .physician-partnership::before { opacity: .16; }
  #why-join::after { opacity: .17; }
  .eligibility::before { opacity: .13; }
  .engagement-card::after { opacity: .20; }
}

/* 2.4.0 — unmistakable floral treatment and reliable visible logo.
   This is intentionally stronger than the prior subtle treatment. */

/* Header/footer logo: use the supplied dark square artwork as a visible brand badge. */
.brand-logo {
  width: 84px !important;
  height: 84px !important;
  max-height: 84px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
  background: #202b26 !important;
  padding: 0 !important;
  box-shadow: 0 12px 30px rgba(32,43,38,.22) !important;
}
.footer-brand img {
  width: 104px !important;
  height: 104px !important;
  border-radius: 20px !important;
  background: #202b26 !important;
  box-shadow: 0 12px 32px rgba(32,43,38,.20) !important;
}

/* Make the flowers part of the section backgrounds, not barely-visible overlays. */
.hero {
  isolation: isolate;
  background:
    linear-gradient(90deg, rgba(255,253,248,.96) 0%, rgba(255,253,248,.90) 58%, rgba(255,253,248,.56) 100%),
    url("assets/floral-bloom.svg") right -90px top 18px / 520px 520px no-repeat,
    url("assets/leaf-sprig.svg") left -85px bottom -15px / 390px 275px no-repeat;
}
.hero::after {
  display: none !important;
}

.physician-partnership {
  background:
    linear-gradient(90deg, rgba(247,248,242,.96), rgba(232,238,224,.92)),
    url("assets/botanical-corner.svg") right -55px center / 410px 410px no-repeat;
  overflow: hidden;
}
.physician-partnership::before,
.physician-partnership::after {
  display: none !important;
}

#why-join {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(rgba(255,253,248,.93), rgba(255,253,248,.93)),
    url("assets/floral-bloom.svg") left -155px center / 470px 470px no-repeat,
    url("assets/leaf-sprig.svg") right -70px bottom 25px / 340px 240px no-repeat;
}
#why-join::after { display: none !important; }

.eligibility {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(235,240,228,.95), rgba(255,253,248,.90)),
    url("assets/floral-bloom.svg") left -90px top 20px / 430px 430px no-repeat,
    url("assets/botanical-corner.svg") right -130px bottom -150px / 430px 430px no-repeat !important;
}
.eligibility::before,
.eligibility::after { display: none !important; }

.engagement-card {
  position: relative;
  background:
    linear-gradient(90deg, rgba(255,253,248,.96), rgba(224,233,216,.88)),
    url("assets/leaf-sprig.svg") right -10px center / 330px 235px no-repeat !important;
}
.engagement-card::after { display: none !important; }

.final-cta {
  position: relative;
  background:
    linear-gradient(90deg, rgba(32,43,38,.98), rgba(32,43,38,.90)),
    url("assets/floral-bloom.svg") left -95px bottom -140px / 430px 430px no-repeat;
}
.final-cta::before { display: none !important; }

/* Improve contrast of the botanical line art itself. */
.hero,
.physician-partnership,
#why-join,
.eligibility,
.engagement-card,
.final-cta {
  background-blend-mode: normal;
}

@media (max-width: 900px) {
  .brand-logo { width: 68px !important; height: 68px !important; border-radius: 15px !important; }
  .hero {
    background:
      linear-gradient(rgba(255,253,248,.93), rgba(255,253,248,.93)),
      url("assets/floral-bloom.svg") right -170px top 40px / 390px 390px no-repeat,
      url("assets/leaf-sprig.svg") left -135px bottom 0 / 300px 210px no-repeat;
  }
  .physician-partnership {
    background:
      linear-gradient(rgba(247,248,242,.94), rgba(232,238,224,.94)),
      url("assets/botanical-corner.svg") right -170px center / 340px 340px no-repeat;
  }
  #why-join {
    background:
      linear-gradient(rgba(255,253,248,.94), rgba(255,253,248,.94)),
      url("assets/leaf-sprig.svg") right -115px bottom 25px / 270px 190px no-repeat;
  }
}

@media (max-width: 640px) {
  .brand-logo { width: 58px !important; height: 58px !important; border-radius: 13px !important; }
  .hero,
  .physician-partnership,
  #why-join,
  .eligibility,
  .engagement-card {
    background-size: auto, 260px auto !important;
  }
}


/* 2.4.1 corrected official logo
   Uses the client-supplied transparent artwork with the complete “ACO” lettering.
   Generous internal padding and contain sizing prevent any letters from being cropped. */
.brand-logo,
.footer-brand img,
.logo-mark-large img {
  object-fit: contain !important;
  object-position: center !important;
}
.brand-logo {
  padding: 5px !important;
}
.footer-brand img {
  padding: 7px !important;
}
.logo-mark-large img {
  width: 92px !important;
  height: 92px !important;
  border-radius: 16px;
}

/* 2.5.0 restrained flyer-inspired botanical treatment
   Three deliberate accents only: hero bloom, eligibility line art, and final CTA leaf.
   All earlier decorative backgrounds are neutralized here so the design stays polished. */

/* Reset the prior all-over botanical treatment. */
.hero,
.physician-partnership,
#why-join,
.eligibility,
.engagement-card,
.final-cta {
  background-image: none !important;
}

.hero::before,
.hero::after,
.physician-partnership::before,
.physician-partnership::after,
#why-join::before,
#why-join::after,
.eligibility::before,
.eligibility::after,
.engagement-card::before,
.engagement-card::after,
.final-cta::before,
.final-cta::after {
  content: none !important;
  display: none !important;
}

/* 1) Hero: one recognizable floral bloom, kept clear of the copy. */
.hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(255,253,248,.98) 0%, rgba(255,253,248,.96) 56%, rgba(255,253,248,.78) 100%),
    url("assets/floral-bloom.svg") right -70px top 45px / 470px 470px no-repeat !important;
}
.hero .container { position: relative; z-index: 2; }

/* 2) One mid-page floral line-art treatment, inspired by the flyer border art. */
.eligibility {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(237,242,230,.95), rgba(255,253,248,.94)),
    url("assets/botanical-corner.svg") left -135px bottom -125px / 390px 390px no-repeat !important;
}
.eligibility .container { position: relative; z-index: 2; }

/* 3) Small leaf detail in the closing CTA only. */
.final-cta {
  position: relative;
  background: transparent !important;
}
.cta-card {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(32,43,38,.98), rgba(41,58,50,.96)),
    url("assets/leaf-sprig.svg") right -35px center / 270px 190px no-repeat !important;
}
.cta-card > * { position: relative; z-index: 2; }

/* Keep all other sections clean and editorial. */
.physician-partnership,
#why-join,
.engagement-card {
  background: rgba(255,253,248,.94) !important;
}
.physician-partnership .statement-card {
  background: linear-gradient(135deg, rgba(255,253,248,.98), rgba(238,243,232,.82)) !important;
}
.engagement-card {
  background: linear-gradient(135deg, #fffdf8, #e8eee0) !important;
}

@media (max-width: 900px) {
  .hero {
    background:
      linear-gradient(rgba(255,253,248,.94), rgba(255,253,248,.94)),
      url("assets/floral-bloom.svg") right -190px top 90px / 350px 350px no-repeat !important;
  }
  .eligibility {
    background:
      linear-gradient(rgba(237,242,230,.96), rgba(255,253,248,.96)),
      url("assets/botanical-corner.svg") left -195px bottom -120px / 330px 330px no-repeat !important;
  }
  .cta-card {
    background:
      linear-gradient(90deg, rgba(32,43,38,.99), rgba(41,58,50,.97)),
      url("assets/leaf-sprig.svg") right -105px center / 220px 155px no-repeat !important;
  }
}

@media (max-width: 640px) {
  .hero {
    background:
      linear-gradient(rgba(255,253,248,.965), rgba(255,253,248,.965)),
      url("assets/floral-bloom.svg") right -175px top 155px / 285px 285px no-repeat !important;
  }
  .eligibility {
    background:
      linear-gradient(rgba(237,242,230,.975), rgba(255,253,248,.975)),
      url("assets/botanical-corner.svg") left -220px bottom -100px / 300px 300px no-repeat !important;
  }
  .cta-card {
    background:
      linear-gradient(rgba(32,43,38,.985), rgba(32,43,38,.985)),
      url("assets/leaf-sprig.svg") right -125px bottom -18px / 205px 145px no-repeat !important;
  }
}


/* 2.6.0 — official logo + restrained flyer-inspired botanical identity
   Keeps homepage content, Pods fields, and mobile layout unchanged. */
:root {
  --nhc-forest-deep: #202b26;
  --nhc-forest-deeper: #17211d;
  --nhc-brand-sage: #aeb98a;
  --nhc-paper: #fbf8f0;
}

/* Dark branded header built around the complete transparent logo. */
.site-header {
  background: rgba(32,43,38,.97) !important;
  border-bottom: 1px solid rgba(174,185,138,.34) !important;
  box-shadow: 0 12px 34px rgba(15,25,21,.18) !important;
}
.header-inner {
  min-height: 108px !important;
}
.brand {
  min-width: 0 !important;
  width: 178px !important;
  height: 96px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: visible !important;
}
.brand-logo {
  display: block !important;
  width: 92px !important;
  height: 92px !important;
  max-width: none !important;
  max-height: none !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  object-fit: contain !important;
  mix-blend-mode: normal !important;
}
.brand-text { display: none !important; }
.main-nav { color: rgba(255,255,255,.86) !important; }
.main-nav a:hover { color: var(--nhc-brand-sage) !important; }
.header-cta {
  background: var(--nhc-brand-sage) !important;
  color: var(--nhc-forest-deep) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.18) !important;
}
.mobile-toggle span { background: #fff !important; }

/* Very light paper warmth and only three botanical moments. */
body {
  background:
    radial-gradient(circle at 8% 3%, rgba(174,185,138,.13), transparent 27rem),
    linear-gradient(180deg, #fffdf8 0%, var(--nhc-paper) 100%) !important;
}

/* Hero: one visible bloom at the far right, never behind the main copy. */
.hero {
  background:
    linear-gradient(90deg, rgba(255,253,248,.99) 0%, rgba(255,253,248,.97) 63%, rgba(255,253,248,.75) 100%),
    url("assets/floral-bloom.svg") right -38px top 30px / 430px 430px no-repeat !important;
}

/* Mid-page: one delicate botanical corner, matching the flyer line-art language. */
.eligibility {
  background:
    linear-gradient(90deg, rgba(237,242,230,.97), rgba(255,253,248,.96)),
    url("assets/botanical-corner.svg") left -112px bottom -112px / 370px 370px no-repeat !important;
}

/* Closing CTA: one small leaf sprig. */
.cta-card {
  background:
    linear-gradient(100deg, rgba(32,43,38,.99), rgba(42,58,51,.97)),
    url("assets/leaf-sprig.svg") right -22px center / 245px 174px no-repeat !important;
}

/* Footer uses the same official logo on the color it was designed for. */
.site-footer {
  background: var(--nhc-forest-deep) !important;
  color: rgba(255,255,255,.88) !important;
  border-top-color: rgba(174,185,138,.32) !important;
}
.footer-brand img {
  width: 118px !important;
  height: 118px !important;
  padding: 0 !important;
  object-fit: contain !important;
  mix-blend-mode: normal !important;
}
.footer-brand p,
.footer-col a,
.footer-col span,
.footer-bottom { color: rgba(255,255,255,.69) !important; }
.footer-col h4 { color: var(--nhc-brand-sage) !important; }
.footer-bottom { border-top-color: rgba(255,255,255,.12) !important; }

@media (max-width: 980px) {
  .header-inner { min-height: 92px !important; }
  .brand { width: 118px !important; height: 82px !important; }
  .brand-logo { width: 78px !important; height: 78px !important; }
  .main-nav {
    top: 92px !important;
    background: var(--nhc-forest-deep) !important;
    border-bottom-color: rgba(174,185,138,.28) !important;
  }
  .main-nav a { color: #fff !important; }
}

@media (max-width: 640px) {
  .header-inner { min-height: 82px !important; }
  .brand { width: 94px !important; height: 74px !important; }
  .brand-logo { width: 68px !important; height: 68px !important; }
  .main-nav { top: 82px !important; }
  .hero {
    background:
      linear-gradient(rgba(255,253,248,.965), rgba(255,253,248,.965)),
      url("assets/floral-bloom.svg") right -155px top 140px / 270px 270px no-repeat !important;
  }
  .eligibility {
    background:
      linear-gradient(rgba(237,242,230,.98), rgba(255,253,248,.98)),
      url("assets/botanical-corner.svg") left -205px bottom -95px / 290px 290px no-repeat !important;
  }
  .cta-card {
    background:
      linear-gradient(rgba(32,43,38,.985), rgba(32,43,38,.985)),
      url("assets/leaf-sprig.svg") right -118px bottom -18px / 195px 138px no-repeat !important;
  }
}


/* 1.1.0 restrained woman + botanical overlay
   Keeps the existing layout, Pods fields, copy, header, footer, buttons and mobile behavior.
   The artwork is decorative only and inspired by the client's supplied double-exposure references. */
body::before {
  content: "";
  position: fixed;
  z-index: -2;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,253,248,.98) 0%, rgba(255,253,248,.95) 55%, rgba(255,253,248,.72) 100%),
    url("assets/woman-floral-overlay.webp") right 8% center / min(46vw, 760px) auto no-repeat;
  opacity: .34;
  transform: translateZ(0);
}

/* Let the existing hero keep its structure while the woman-with-flowers artwork shows through. */
.hero {
  isolation: isolate;
}
.hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,253,248,.98) 0%, rgba(255,253,248,.94) 48%, rgba(255,253,248,.30) 100%),
    url("assets/woman-floral-overlay.webp") right 4% center / min(48vw, 780px) auto no-repeat;
  opacity: .74;
}

/* Preserve the support card but tone down the old abstract room so the new overlay becomes the visual focus. */
.hero-visual {
  background: rgba(246,248,240,.36) !important;
  box-shadow: none !important;
}
.hero-visual::before {
  background:
    linear-gradient(135deg, rgba(255,253,248,.54), rgba(232,238,224,.25)) !important;
  border: 1px solid rgba(32,43,38,.08);
}
.practice-room {
  display: none !important;
}

/* Keep text legible against the decorative background. */
.hero-content {
  position: relative;
  z-index: 2;
}
.hero-card {
  background: rgba(255,253,248,.94) !important;
  backdrop-filter: blur(14px);
}

/* One additional subtle botanical echo in the partnership section only. */
.physician-partnership::after {
  content: "";
  position: absolute;
  right: max(18px, calc((100vw - var(--nhc-max))/2));
  bottom: 18px;
  width: 180px;
  height: 180px;
  pointer-events: none;
  background: url("assets/woman-floral-overlay.webp") center / cover no-repeat;
  opacity: .07;
  border-radius: 50%;
  filter: saturate(.75);
}
.physician-partnership { position: relative; }

@media (max-width: 1100px) {
  body::before {
    background:
      linear-gradient(180deg, rgba(255,253,248,.98), rgba(255,253,248,.88)),
      url("assets/woman-floral-overlay.webp") right top / 78vw auto no-repeat;
    opacity: .22;
  }
  .hero::before {
    background:
      linear-gradient(180deg, rgba(255,253,248,.98) 0%, rgba(255,253,248,.90) 52%, rgba(255,253,248,.68) 100%),
      url("assets/woman-floral-overlay.webp") right top / 78vw auto no-repeat;
    opacity: .58;
  }
}

@media (max-width: 767px) {
  body::before {
    position: absolute;
    background:
      linear-gradient(180deg, rgba(255,253,248,.98), rgba(255,253,248,.94)),
      url("assets/woman-floral-overlay.webp") center top / 120vw auto no-repeat;
    opacity: .16;
  }
  .hero::before {
    background:
      linear-gradient(180deg, rgba(255,253,248,.96) 0%, rgba(255,253,248,.90) 58%, rgba(255,253,248,.78) 100%),
      url("assets/woman-floral-overlay.webp") center top / 122vw auto no-repeat;
    opacity: .42;
  }
  .hero-visual {
    background: transparent !important;
  }
  .physician-partnership::after {
    width: 110px;
    height: 110px;
    opacity: .05;
  }
}


/* 1.2.0 visible woman-with-flowers treatment
   This uses a real image element in the existing hero visual rather than a behind-the-page
   pseudo-element, so it cannot disappear behind opaque theme backgrounds. */
body::before,
.hero::before,
.physician-partnership::after {
  content: none !important;
  display: none !important;
}

.hero-visual {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #f7f5ed 0%, #edf1e7 100%) !important;
  box-shadow: 0 26px 70px rgba(32,43,38,.12) !important;
}

.hero-visual::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg,
    rgba(255,253,248,.12) 0%,
    rgba(255,253,248,.02) 46%,
    rgba(32,43,38,.05) 100%) !important;
  pointer-events: none !important;
}

.hero-woman-floral {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 56% center;
  opacity: 1;
  filter: saturate(.92) contrast(1.04);
}

.hero-card {
  z-index: 3 !important;
  background: rgba(255,253,248,.91) !important;
  border: 1px solid rgba(255,255,255,.88) !important;
  box-shadow: 0 30px 80px rgba(32,43,38,.20) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

/* A subtle fixed botanical echo behind the lower page, without changing any layout. */
.site-wrap::before {
  content: "";
  position: fixed;
  z-index: -1;
  right: -7vw;
  bottom: -10vh;
  width: min(42vw, 620px);
  aspect-ratio: 1;
  pointer-events: none;
  background: url("assets/woman-floral-overlay.webp") center / cover no-repeat;
  opacity: .055;
  filter: saturate(.65);
}

@media (max-width: 1100px) {
  .hero-woman-floral {
    object-position: 52% center;
  }
}

@media (max-width: 767px) {
  .hero-visual {
    min-height: 660px !important;
    padding: 300px 16px 18px !important;
  }

  .hero-woman-floral {
    height: 340px;
    object-fit: cover;
    object-position: 55% 34%;
    opacity: .96;
  }

  .hero-visual::before {
    background: linear-gradient(180deg,
      rgba(255,253,248,.04) 0%,
      rgba(255,253,248,.18) 64%,
      rgba(255,253,248,.92) 100%) !important;
  }

  .hero-card {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .site-wrap::before {
    display: none;
  }
}

/* 1.3.0 full-site parallax woman-and-flowers background
   Keeps the existing page layout, Pods fields, client copy and mobile structure.
   Uses a fixed background layer instead of background-attachment: fixed for better iPhone support. */
html,
body {
  min-height: 100%;
  background: #f7f4ec !important;
}

body {
  position: relative;
}

.nhc-parallax-background {
  position: fixed;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  pointer-events: none;
  background-image:
    linear-gradient(90deg, rgba(247,244,236,.94) 0%, rgba(247,244,236,.82) 42%, rgba(247,244,236,.42) 100%),
    url("assets/woman-floral-overlay.webp");
  background-repeat: no-repeat;
  background-position: center center, 78% center;
  background-size: cover, cover;
  filter: saturate(.9) contrast(1.02);
  transform: translateZ(0);
  will-change: transform;
}

.site-wrap {
  position: relative;
  z-index: 1;
  overflow: clip;
  background: transparent !important;
}

/* The full-site parallax image replaces the hero-only artwork. */
.hero-woman-floral {
  display: none !important;
}

.hero,
.statement,
#why-join,
.review-strip,
.process,
.dates-faq,
.final-cta,
section.container {
  position: relative;
  background: rgba(255,253,248,.72) !important;
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
}

.hero {
  background: linear-gradient(90deg, rgba(255,253,248,.94) 0%, rgba(255,253,248,.77) 58%, rgba(255,253,248,.48) 100%) !important;
}

.eligibility {
  background: linear-gradient(180deg, rgba(232,238,224,.82), rgba(255,253,248,.74)) !important;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}

.hero-visual {
  background: rgba(245,247,239,.58) !important;
  border: 1px solid rgba(32,43,38,.10);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.hero-visual::before {
  background: linear-gradient(135deg, rgba(255,253,248,.42), rgba(232,238,224,.24)) !important;
}

.statement-card,
.feature-card,
.fit-copy,
.eligibility-panel,
.review-card,
.process-step,
.engagement-card,
.timeline-item,
.faq-item,
.meta-pill {
  background-color: rgba(255,253,248,.90) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

/* Give the background image visible breathing room between major sections. */
.statement,
.review-strip,
.process,
.dates-faq {
  border-top: 1px solid rgba(32,43,38,.06);
  border-bottom: 1px solid rgba(32,43,38,.05);
}

.site-header,
.site-footer {
  position: relative;
  z-index: 5;
}

@media (max-width: 980px) {
  .nhc-parallax-background {
    background-image:
      linear-gradient(180deg, rgba(247,244,236,.88) 0%, rgba(247,244,236,.73) 48%, rgba(247,244,236,.82) 100%),
      url("assets/woman-floral-overlay.webp");
    background-position: center center, 62% center;
    background-size: cover, cover;
  }

  .hero {
    background: rgba(255,253,248,.78) !important;
  }
}

@media (max-width: 767px) {
  .nhc-parallax-background {
    position: fixed;
    height: 100svh;
    background-image:
      linear-gradient(180deg, rgba(247,244,236,.84) 0%, rgba(247,244,236,.70) 48%, rgba(247,244,236,.86) 100%),
      url("assets/woman-floral-overlay.webp");
    background-position: center center, 58% center;
    background-size: cover, auto 112%;
  }

  .hero,
  .statement,
  #why-join,
  .review-strip,
  .process,
  .dates-faq,
  .final-cta,
  section.container {
    background: rgba(255,253,248,.79) !important;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
  }

  .eligibility {
    background: rgba(239,242,231,.80) !important;
  }

  .hero-visual {
    padding-top: 18px !important;
    min-height: 0 !important;
    background: rgba(255,253,248,.50) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nhc-parallax-background {
    position: absolute;
    min-height: 100%;
  }
}

/* 1.4.0 visible full-site parallax correction
   The prior release hid the artwork beneath nearly opaque cream layers.
   This version leaves the background clearly visible while preserving text contrast. */
.nhc-parallax-background {
  z-index: 0 !important;
  opacity: 1 !important;
  background-image:
    linear-gradient(90deg,
      rgba(247,244,236,.58) 0%,
      rgba(247,244,236,.42) 40%,
      rgba(247,244,236,.12) 100%),
    url("assets/woman-floral-overlay.webp") !important;
  background-position: center center, 72% center !important;
  background-size: cover, cover !important;
  filter: saturate(.95) contrast(1.05) !important;
}

.site-wrap {
  background: transparent !important;
}

/* Keep major bands translucent so the fixed artwork remains visible throughout scrolling. */
.hero,
.statement,
#why-join,
.review-strip,
.process,
.dates-faq,
.final-cta,
section.container {
  background: rgba(255,253,248,.42) !important;
  -webkit-backdrop-filter: blur(1.5px) !important;
  backdrop-filter: blur(1.5px) !important;
}

.hero {
  background: linear-gradient(90deg,
    rgba(255,253,248,.78) 0%,
    rgba(255,253,248,.54) 54%,
    rgba(255,253,248,.20) 100%) !important;
}

.eligibility {
  background: rgba(232,238,224,.54) !important;
  -webkit-backdrop-filter: blur(2px) !important;
  backdrop-filter: blur(2px) !important;
}

/* Individual content cards remain readable and provide contrast. */
.statement-card,
.feature-card,
.fit-copy,
.eligibility-panel,
.review-card,
.process-step,
.engagement-card,
.timeline-item,
.faq-item,
.meta-pill,
.hero-card {
  background: rgba(255,253,248,.92) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  backdrop-filter: blur(8px) !important;
}

/* The old hero placeholder no longer needs an opaque fill. */
.hero-visual {
  background: rgba(255,253,248,.18) !important;
  border-color: rgba(32,43,38,.16) !important;
}
.hero-visual::before {
  background: linear-gradient(135deg, rgba(255,253,248,.18), rgba(232,238,224,.08)) !important;
}

/* Make the background visible between sections instead of covering every gap. */
.statement,
.review-strip,
.process,
.dates-faq {
  border-color: rgba(32,43,38,.08) !important;
}

@media (max-width: 980px) {
  .nhc-parallax-background {
    background-image:
      linear-gradient(180deg,
        rgba(247,244,236,.50) 0%,
        rgba(247,244,236,.30) 48%,
        rgba(247,244,236,.52) 100%),
      url("assets/woman-floral-overlay.webp") !important;
    background-position: center center, 60% center !important;
    background-size: cover, cover !important;
  }

  .hero,
  .statement,
  #why-join,
  .review-strip,
  .process,
  .dates-faq,
  .final-cta,
  section.container {
    background: rgba(255,253,248,.50) !important;
  }
}

@media (max-width: 767px) {
  .nhc-parallax-background {
    background-image:
      linear-gradient(180deg,
        rgba(247,244,236,.46) 0%,
        rgba(247,244,236,.28) 48%,
        rgba(247,244,236,.55) 100%),
      url("assets/woman-floral-overlay.webp") !important;
    background-position: center center, 56% center !important;
    background-size: cover, auto 115% !important;
  }

  .hero,
  .statement,
  #why-join,
  .review-strip,
  .process,
  .dates-faq,
  .final-cta,
  section.container {
    background: rgba(255,253,248,.54) !important;
  }

  .eligibility {
    background: rgba(239,242,231,.58) !important;
  }
}

/* 1.4.1 seamless parallax sections
   Removes visible divider lines and backdrop seams so the fixed artwork reads as one
   continuous background behind the full page. Existing Pods fields and layout are unchanged. */
.hero,
.statement,
#why-join,
.review-strip,
.process,
.dates-faq,
.final-cta,
section.container,
.eligibility {
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Section-level blur creates a hard horizontal edge in Safari/iPhone.
   Keep contrast on the content cards instead and let the page background flow continuously. */
.statement,
#why-join,
.review-strip,
.process,
.dates-faq,
.final-cta,
section.container {
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.eligibility {
  background: linear-gradient(180deg,
    rgba(232,238,224,.24) 0%,
    rgba(232,238,224,.16) 52%,
    rgba(232,238,224,0) 100%) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* Soften the hero transition rather than ending it on a visible horizontal edge. */
.hero {
  border: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 90%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 90%, transparent 100%);
  padding-bottom: 70px;
}

/* Prevent tiny 1px antialiasing gaps between consecutive page bands. */
.hero + .statement,
.statement + section,
section + section,
section + .review-strip,
.review-strip + .process,
.process + section,
.dates-faq + .final-cta {
  margin-top: -1px !important;
}

@media (max-width: 767px) {
  .hero,
  .statement,
  #why-join,
  .review-strip,
  .process,
  .dates-faq,
  .final-cta,
  section.container {
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  .eligibility {
    background: rgba(239,242,231,.18) !important;
  }

  .hero {
    -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 94%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 0%, #000 94%, transparent 100%);
  }
}


/* 1.6.0 muted lilac accent
   Adds a restrained #CDBDDC atmosphere to the existing full-site parallax without
   changing layout, Pods fields, content, buttons, or the seamless section treatment. */
:root {
  --nhc-lilac: #CDBDDC;
  --nhc-lilac-deep: #A895B7;
}

.nhc-parallax-background::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 82% 14%, rgba(205,189,220,.34) 0%, rgba(205,189,220,.16) 24%, rgba(205,189,220,0) 52%),
    radial-gradient(circle at 12% 68%, rgba(205,189,220,.20) 0%, rgba(205,189,220,.08) 25%, rgba(205,189,220,0) 50%);
  mix-blend-mode: multiply;
}

/* Small, controlled lilac details only. */
.eyebrow,
.section-head .eyebrow {
  text-shadow: 0 10px 28px rgba(205,189,220,.24);
}

.feature-card:nth-child(2),
.review-card:nth-child(2),
.timeline-item:nth-child(2) {
  box-shadow:
    0 18px 48px rgba(17,34,26,.07),
    0 0 0 1px rgba(205,189,220,.16) inset;
}

.btn-secondary:hover,
.faq-item:hover {
  border-color: rgba(168,149,183,.44) !important;
}

@media (max-width: 767px) {
  .nhc-parallax-background::after {
    background:
      radial-gradient(circle at 78% 10%, rgba(205,189,220,.25) 0%, rgba(205,189,220,.10) 28%, rgba(205,189,220,0) 55%),
      radial-gradient(circle at 18% 72%, rgba(205,189,220,.13) 0%, rgba(205,189,220,0) 50%);
  }
}

/* 1.7.0 flyer-inspired botanical color touches
   Adds restrained olive, blush, dusty rose, and warm ivory accents while preserving
   the current seamless parallax, page layout, Pods fields, and mobile behavior. */
:root {
  --nhc-olive: #A7A36F;
  --nhc-blush: #D9B7B2;
  --nhc-pale-rose: #E8D8D2;
  --nhc-warm-ivory: #F7F0E5;
}

/* Blend warmer flyer colors into the fixed background without recoloring content. */
.nhc-parallax-background::after {
  background:
    radial-gradient(circle at 82% 13%, rgba(205,189,220,.30) 0%, rgba(205,189,220,.12) 25%, transparent 52%),
    radial-gradient(circle at 88% 42%, rgba(217,183,178,.28) 0%, rgba(217,183,178,.10) 26%, transparent 52%),
    radial-gradient(circle at 17% 66%, rgba(232,216,210,.28) 0%, rgba(232,216,210,.10) 28%, transparent 52%),
    radial-gradient(circle at 34% 22%, rgba(167,163,111,.16) 0%, rgba(167,163,111,.06) 25%, transparent 50%);
  mix-blend-mode: multiply;
}

/* Warm selected surfaces so the page feels closer to the flyer. */
.statement-card,
.engagement-card,
.cta-card {
  border-color: rgba(167,163,111,.25) !important;
}

.statement-card,
.engagement-card {
  background:
    linear-gradient(135deg, rgba(255,253,248,.94), rgba(247,240,229,.92)) !important;
}

/* Gentle floral color accents only; core controls stay forest green. */
.eyebrow,
.section-head .eyebrow,
.footer-col h4 {
  color: #787748;
}

.feature-card:nth-child(1),
.timeline-item:nth-child(1) {
  box-shadow:
    0 18px 48px rgba(17,34,26,.07),
    0 0 0 1px rgba(167,163,111,.20) inset;
}

.feature-card:nth-child(2),
.review-card:nth-child(2),
.timeline-item:nth-child(2) {
  box-shadow:
    0 18px 48px rgba(17,34,26,.07),
    0 0 0 1px rgba(205,189,220,.20) inset;
}

.feature-card:nth-child(3),
.timeline-item:nth-child(3) {
  box-shadow:
    0 18px 48px rgba(17,34,26,.07),
    0 0 0 1px rgba(217,183,178,.22) inset;
}

.icon-circle {
  background: linear-gradient(145deg, rgba(237,242,230,.98), rgba(232,216,210,.42));
}

.faq-item:hover,
.btn-secondary:hover {
  border-color: rgba(167,163,111,.50) !important;
}

@media (max-width: 767px) {
  .nhc-parallax-background::after {
    background:
      radial-gradient(circle at 78% 9%, rgba(205,189,220,.22) 0%, rgba(205,189,220,.08) 28%, transparent 55%),
      radial-gradient(circle at 86% 44%, rgba(217,183,178,.20) 0%, rgba(217,183,178,.07) 28%, transparent 54%),
      radial-gradient(circle at 16% 72%, rgba(232,216,210,.18) 0%, transparent 48%);
  }
}


/* 1.7.1 hero support-card spacing correction
   Adds clear interior and exterior space around the participation date card so the
   glass card no longer appears to collide with its containing panel at narrow widths. */
.hero-card {
  padding-bottom: 38px !important;
}

.date-card {
  margin-top: 22px !important;
  margin-bottom: 2px !important;
}

@media (max-width: 1100px) {
  .hero-visual {
    padding-bottom: 34px !important;
  }

  .hero-card {
    padding-bottom: 34px !important;
  }
}

@media (max-width: 767px) {
  .hero-visual {
    padding: 20px 16px 36px !important;
    margin-bottom: 58px !important;
    overflow: visible !important;
  }

  .hero-card {
    padding: 26px 22px 34px !important;
    border-radius: 24px !important;
  }

  .date-card {
    margin-top: 24px !important;
    margin-bottom: 0 !important;
    padding: 18px !important;
  }

  .statement {
    padding-top: 28px !important;
  }
}

@media (max-width: 430px) {
  .hero-visual {
    padding: 16px 12px 34px !important;
    margin-bottom: 62px !important;
  }

  .hero-card {
    padding: 24px 20px 32px !important;
  }

  .date-card {
    padding: 16px !important;
  }
}

/* 1.8.0 sticky header and hero-card containment fix
   Preserves all Pods fields, copy, parallax treatment and mobile behavior. */
html {
  scroll-padding-top: 116px;
}

body {
  overflow-x: hidden;
}

/* A sticky element cannot behave reliably inside an overflow:hidden ancestor. */
.site-wrap {
  overflow: visible !important;
}

.site-header {
  position: sticky !important;
  top: 0;
  z-index: 9999 !important;
  width: 100%;
  transform: translateZ(0);
  isolation: isolate;
}

body.admin-bar .site-header {
  top: 32px !important;
}

/* Let the support card define the height of its decorative panel instead of floating
   outside a fixed-height wrapper. */
.hero-visual {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 54px 42px !important;
  overflow: hidden !important;
}

.hero-visual::before,
.hero-visual .practice-room {
  inset: 0 !important;
}

.hero-card {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  width: min(100%, 500px) !important;
  max-width: 500px !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 38px 38px 40px !important;
  overflow: visible !important;
}

.date-card {
  width: 100%;
  min-width: 0;
  margin: 24px 0 0 !important;
}

@media (max-width: 782px) {
  body.admin-bar .site-header {
    top: 46px !important;
  }
}

@media (max-width: 980px) {
  html { scroll-padding-top: 92px; }

  .hero-visual {
    padding: 24px 18px !important;
    margin-bottom: 0 !important;
    overflow: hidden !important;
  }

  .hero-card {
    width: 100% !important;
    max-width: 680px !important;
    padding: 30px 26px 34px !important;
  }
}

@media (max-width: 600px) {
  body.admin-bar .site-header {
    top: 0 !important;
  }

  .hero-visual {
    padding: 16px 12px !important;
  }

  .hero-card {
    padding: 26px 20px 30px !important;
  }
}


/* 1.9.0 What NHC Reviews physician layout
   Stacks both existing review cards in one left column and places the supplied
   female physician portrait on the right. All Pods field names remain unchanged. */
.review-with-physician {
  position: relative;
  overflow: hidden;
  padding-top: 72px;
  padding-bottom: 72px;
}

.review-with-physician .review-section-head {
  text-align: left;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

.review-physician-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.8fr);
  gap: clamp(34px, 5vw, 76px);
  align-items: stretch;
}

.review-card-column {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  align-content: center;
}

.review-card-column .review-card {
  grid-template-columns: 58px minmax(0, 1fr);
  min-height: 0;
  padding: 30px;
  background: rgba(255, 253, 248, 0.9);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.review-card-column .review-card h3 {
  margin-bottom: 7px;
}

.review-physician-image-wrap {
  position: relative;
  min-height: 470px;
  border-radius: 30px;
  overflow: hidden;
  border: 1px solid rgba(32, 43, 38, 0.12);
  box-shadow: 0 28px 70px rgba(32, 43, 38, 0.14);
  background: rgba(255, 253, 248, 0.72);
}

.review-physician-image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,253,248,.18), transparent 36%),
    linear-gradient(180deg, transparent 65%, rgba(32,43,38,.08));
}

.review-physician-image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 470px;
  object-fit: cover;
  object-position: 50% 32%;
}

@media (max-width: 980px) {
  .review-physician-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .review-card-column {
    order: 1;
  }

  .review-physician-image-wrap {
    order: 2;
    min-height: 420px;
  }

  .review-physician-image {
    min-height: 420px;
    object-position: 50% 26%;
  }
}

@media (max-width: 640px) {
  .review-with-physician {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .review-card-column .review-card {
    grid-template-columns: 44px minmax(0, 1fr);
    padding: 24px 20px;
  }

  .review-physician-image-wrap,
  .review-physician-image {
    min-height: 360px;
  }

  .review-physician-image-wrap {
    border-radius: 22px;
  }
}

/* 1.9.1 Review portrait sizing refinement
   Keeps the existing section structure and Pods fields while sizing the portrait
   to the stacked review cards instead of dominating the section. */
@media (min-width: 981px) {
  .review-with-physician {
    padding-top: 58px;
    padding-bottom: 58px;
  }

  .review-physician-grid {
    grid-template-columns: minmax(0, 1.16fr) minmax(300px, .68fr);
    gap: clamp(30px, 4vw, 58px);
    align-items: center;
  }

  .review-card-column {
    gap: 20px;
  }

  .review-card-column .review-card {
    padding: 28px 30px;
  }

  .review-physician-image-wrap {
    width: 100%;
    max-width: 430px;
    min-height: 0;
    height: 440px;
    justify-self: end;
    border-radius: 28px;
  }

  .review-physician-image {
    min-height: 0;
    height: 100%;
    object-position: 50% 24%;
  }
}

@media (min-width: 1180px) {
  .review-physician-image-wrap {
    height: 455px;
    max-width: 445px;
  }
}

@media (max-width: 980px) {
  .review-physician-image-wrap {
    width: min(100%, 560px);
    margin-inline: auto;
    min-height: 0;
    height: 420px;
  }

  .review-physician-image {
    min-height: 0;
    height: 100%;
  }
}

@media (max-width: 640px) {
  .review-physician-image-wrap {
    height: 360px;
  }
}
