:root {
  --healphy-forest: #315f55;
  --healphy-forest-deep: #24483f;
  --healphy-sage: #91ad85;
  --healphy-sage-soft: #e3eadf;
  --healphy-ivory: #f7f3e9;
  --healphy-ivory-warm: #efe7d8;
  --healphy-white: #fffdfa;
  --healphy-charcoal: #293432;
  --healphy-muted: #68736f;
  --healphy-line: #d8ded7;
  --healphy-sponsored: #86633d;
  --healphy-radius: 16px;
  --healphy-shadow: 0 14px 36px rgba(41, 52, 50, .09);
  --healphy-shell: 1180px;
}

.healphy-home,
.healphy-archive,
.healphy-article {
  color: var(--healphy-charcoal);
  background: var(--healphy-white);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
}

.healphy-shell { width: min(calc(100% - 48px), var(--healphy-shell)); margin-inline: auto; }

/* GeneratePress integration is scoped to requests where the design layer is enabled. */
.healphy-design-v3 .main-navigation { color: var(--healphy-charcoal); background: var(--healphy-white); border-bottom: 1px solid var(--healphy-line); }
.healphy-design-v3 .navigation-branding .main-title a {
  display: block;
  width: 176px;
  height: 40px;
  overflow: hidden;
  color: transparent;
  background: url("healphy-wordmark-v2.svg") no-repeat left center / contain;
  font-size: 0;
  white-space: nowrap;
}
.healphy-design-v3 .main-navigation .main-nav ul li a { color: var(--healphy-charcoal); font-size: 14px; font-weight: 650; letter-spacing: -.01em; }
.healphy-design-v3 .main-navigation .main-nav ul li:hover > a,
.healphy-design-v3 .main-navigation .main-nav ul li:focus-within > a,
.healphy-design-v3 .main-navigation .main-nav ul li.current-menu-item > a { color: var(--healphy-forest-deep); background: var(--healphy-sage-soft); }
.healphy-design-v3 .main-navigation .main-nav ul.sub-menu { border: 1px solid var(--healphy-line); background: var(--healphy-white); box-shadow: var(--healphy-shadow); }
.healphy-design-v3 .main-navigation .main-nav ul.sub-menu a { color: var(--healphy-charcoal); background: var(--healphy-white); }
.healphy-design-v3 .main-navigation .main-nav ul.sub-menu li:hover > a,
.healphy-design-v3 .main-navigation .main-nav ul.sub-menu li:focus-within > a,
.healphy-design-v3 .main-navigation .main-nav ul.sub-menu li.current-menu-item > a { color: var(--healphy-forest-deep); background: var(--healphy-sage-soft); }
.healphy-design-v3 .main-navigation .main-nav a,
.healphy-design-v3 .main-navigation .menu-bar-item > a { min-height: 44px; }
.healphy-design-v3 .main-navigation .menu-toggle { min-height: 44px; color: var(--healphy-charcoal); }

.home:not(.paged) .site-content { max-width: none; padding: 0; }
.home:not(.paged) .content-area { width: 100%; }
.home:not(.paged) .site-main { margin: 0; }

.healphy-hero { position: relative; overflow: hidden; padding: clamp(68px, 7vw, 104px) 0 76px; color: var(--healphy-white); background: radial-gradient(circle at 76% 12%, rgba(181, 207, 178, .16), transparent 25rem), linear-gradient(135deg, #102f29 0%, var(--healphy-forest-deep) 58%, #163f36 100%); }
.healphy-hero::after { position: absolute; right: -8rem; bottom: -13rem; width: 34rem; height: 34rem; border: 1px solid rgba(255, 255, 255, .08); border-radius: 50%; content: ""; pointer-events: none; }
.healphy-hero__inner { position: relative; z-index: 1; display: grid; max-width: var(--healphy-shell); grid-template-columns: minmax(0, 1.25fr) minmax(290px, .75fr); gap: clamp(40px, 7vw, 88px); align-items: center; }
.healphy-hero__copy { min-width: 0; }
.healphy-hero h2 { max-width: 790px; margin: 10px 0 20px; color: var(--healphy-white); font-size: clamp(2.6rem, 3.75vw, 3.75rem); line-height: 1.07; letter-spacing: -.045em; }
.healphy-hero h2 span { display: block; }
.healphy-hero__lede { max-width: 660px; margin: 0; color: #dfe8e1; font-size: 1.08rem; line-height: 1.75; }
.healphy-hero__principles { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; padding: 0; list-style: none; }
.healphy-hero__principles li { padding: 7px 12px; border: 1px solid rgba(226, 240, 224, .22); border-radius: 999px; color: #e8f1e8; background: rgba(255, 255, 255, .06); font-size: .78rem; font-weight: 700; letter-spacing: .02em; }
.healphy-hero__search-panel { max-width: 660px; margin-top: 30px; padding-top: 19px; border-top: 1px solid rgba(226, 240, 224, .18); }
.healphy-hero__search-panel > p { margin: 0 0 10px; color: #c9d8cc; font-size: .88rem; font-weight: 700; }
.healphy-eyebrow { margin: 0 0 8px; color: var(--healphy-forest); font-size: .78rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.healphy-hero .healphy-eyebrow { color: #b9cfb2; }

.healphy-hero__identity { display: grid; min-height: 370px; place-items: center; }
.healphy-hero__orbit { position: relative; display: grid; width: min(100%, 370px); aspect-ratio: 1; place-items: center; border: 1px solid rgba(226, 240, 224, .18); border-radius: 50%; background: radial-gradient(circle, rgba(199, 220, 196, .18) 0 23%, transparent 24%), radial-gradient(circle, transparent 0 49%, rgba(255, 255, 255, .07) 50% 50.5%, transparent 51%); box-shadow: inset 0 0 80px rgba(255, 255, 255, .035); }
.healphy-hero__orbit::before, .healphy-hero__orbit::after { position: absolute; border: 1px solid rgba(226, 240, 224, .13); border-radius: 50%; content: ""; }
.healphy-hero__orbit::before { inset: 12%; }
.healphy-hero__orbit::after { inset: 29%; }
.healphy-hero__core { position: relative; z-index: 2; display: grid; width: 116px; height: 116px; padding: 21px; place-items: center; border: 1px solid rgba(255, 255, 255, .22); border-radius: 50%; background: rgba(8, 45, 37, .82); box-shadow: 0 20px 48px rgba(5, 29, 24, .25); }
.healphy-hero__core-logo { display: block; width: 100%; height: auto; filter: brightness(0) invert(1); }
.healphy-hero__note { position: absolute; z-index: 3; padding: 8px 12px; border: 1px solid rgba(255, 255, 255, .17); border-radius: 999px; color: #ecf4ec; background: rgba(10, 51, 42, .84); box-shadow: 0 10px 30px rgba(4, 25, 21, .18); font-size: .75rem; font-weight: 750; backdrop-filter: blur(6px); }
.healphy-hero__note--one { top: 11%; left: 5%; }
.healphy-hero__note--two { top: 29%; right: -2%; }
.healphy-hero__note--three { right: 9%; bottom: 10%; }

.healphy-search { max-width: 720px; }
.healphy-search form { display: flex; gap: 8px; padding: 6px; border: 1px solid rgba(49, 95, 85, .12); border-radius: 13px; background: var(--healphy-white); box-shadow: 0 12px 34px rgba(6, 32, 26, .18); }
.healphy-search label { flex: 1 1 auto; }
.healphy-search input[type="search"] { width: 100%; min-height: 44px; padding: 0 14px; border: 0; color: var(--healphy-charcoal); background: transparent; font: inherit; }
.healphy-search input[type="submit"] { min-height: 44px; padding: 0 21px; border: 0; border-radius: 9px; color: var(--healphy-white); background: var(--healphy-forest); font: inherit; font-weight: 750; cursor: pointer; }
.healphy-design-v3 .healphy-search button[type="submit"],
.healphy-design-v3 .healphy-search button.search-submit { min-width: 52px; min-height: 44px; padding: 0 18px; border: 0; border-radius: 9px; color: var(--healphy-white); background: var(--healphy-forest); cursor: pointer; }
.healphy-search input[type="submit"]:hover,
.healphy-design-v3 .healphy-search button[type="submit"]:hover,
.healphy-design-v3 .healphy-search button.search-submit:hover { background: var(--healphy-forest-deep); }
.healphy-search input:focus-visible,
.healphy-card__link:focus-visible,
.healphy-axis a:focus-visible { outline: 3px solid var(--healphy-sage); outline-offset: 3px; }

.healphy-section { padding-block: clamp(56px, 7vw, 88px); }
.healphy-section--tint, .healphy-hub { background: var(--healphy-ivory); }
.healphy-section__head { max-width: 680px; margin-bottom: 28px; }
.healphy-section__head h2, .healphy-archive__header h1 { margin: 0; color: var(--healphy-charcoal); font-size: clamp(1.8rem, 3vw, 2.5rem); line-height: 1.2; letter-spacing: -.025em; }

.healphy-hub__axes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.healphy-axis { height: 100%; padding: clamp(22px, 3vw, 36px); border: 1px solid var(--healphy-line); border-radius: var(--healphy-radius); background: var(--healphy-white); }
.healphy-axis h3 { margin: 0 0 4px; color: var(--healphy-charcoal); font-size: 1.4rem; }
.healphy-axis > p { margin: 0 0 22px; color: var(--healphy-muted); }
.healphy-axis__list { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.healphy-axis__list a { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; padding: 8px 13px; border: 1px solid var(--healphy-line); border-radius: 999px; color: var(--healphy-charcoal); text-decoration: none; }
.healphy-axis__list a:hover { border-color: var(--healphy-forest); color: var(--healphy-forest-deep); background: var(--healphy-sage-soft); }
.healphy-axis__list span { color: var(--healphy-muted); font-size: .75rem; }

.healphy-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.healphy-card { min-width: 0; border: 1px solid var(--healphy-line); border-radius: var(--healphy-radius); background: var(--healphy-white); box-shadow: 0 1px 0 rgba(41, 52, 50, .04); }
.healphy-card__link { display: flex; min-height: 100%; flex-direction: column; padding: 26px; color: inherit; text-decoration: none; }
.healphy-card__type, .healphy-content-type { width: fit-content; margin: 0 0 14px; padding: 5px 9px; border-radius: 999px; color: var(--healphy-forest-deep); background: var(--healphy-sage-soft); font-size: .72rem; font-weight: 800; letter-spacing: .04em; }
.healphy-card h2, .healphy-card h3 { margin: 0 0 12px; color: var(--healphy-charcoal); font-size: 1.25rem; line-height: 1.35; letter-spacing: -.015em; word-break: keep-all; overflow-wrap: break-word; }
.healphy-card p { margin: 0 0 20px; color: var(--healphy-muted); }
.healphy-card time, .healphy-card__more { margin-top: auto; color: var(--healphy-forest); font-size: .8rem; font-weight: 700; }
.healphy-card:hover { border-color: #afc2b6; box-shadow: var(--healphy-shadow); }

.healphy-archive { padding-block: clamp(52px, 7vw, 84px); }
.healphy-archive__header { max-width: 760px; margin-bottom: 40px; }
.healphy-archive__description { color: var(--healphy-muted); }
.healphy-card--featured { grid-column: 1 / -1; border-color: transparent; color: var(--healphy-white); background: var(--healphy-forest-deep); }
.healphy-card--featured .healphy-card__link { padding: clamp(28px, 4vw, 48px); }
.healphy-card--featured h2, .healphy-card--featured h3 { max-width: 780px; color: var(--healphy-white); font-size: clamp(1.8rem, 3.5vw, 2.7rem); }
.healphy-card--featured p { max-width: 760px; color: #dfe8e1; }
.healphy-card--featured time, .healphy-card--featured .healphy-card__more { color: #d5e2d2; }
.healphy-pagination { margin-top: 44px; }
.healphy-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; }
.healphy-pagination .page-numbers { min-width: 44px; min-height: 44px; padding: 8px 12px; border: 1px solid var(--healphy-line); border-radius: 8px; color: var(--healphy-charcoal); text-align: center; text-decoration: none; }
.healphy-pagination .current { color: var(--healphy-white); border-color: var(--healphy-forest); background: var(--healphy-forest); }

.healphy-article { padding: clamp(46px, 6vw, 80px) 24px; }
.healphy-article__measure { max-width: 770px; margin-inline: auto; }
.healphy-article__header { margin-bottom: 32px; }
.healphy-article__header h1 { margin: 0 0 22px; color: var(--healphy-charcoal); font-size: clamp(2.1rem, 4.5vw, 3.4rem); line-height: 1.14; letter-spacing: -.035em; }
.healphy-content-type--health { color: var(--healphy-forest-deep); background: var(--healphy-sage-soft); }
.healphy-content-type--sponsored { color: var(--healphy-sponsored); background: #f2e6d4; }
.healphy-key-answer { padding: 22px 24px; border: 1px solid var(--healphy-line); border-left: 4px solid var(--healphy-forest); border-radius: 0 14px 14px 0; background: linear-gradient(135deg, var(--healphy-ivory), var(--healphy-white)); box-shadow: 0 8px 24px rgba(41, 52, 50, .06); font-size: 1.04rem; }
.healphy-key-answer strong { display: inline-flex; margin-bottom: 9px; align-items: center; color: var(--healphy-forest-deep); font-size: .76rem; font-weight: 800; letter-spacing: .07em; }
.healphy-key-answer strong::before { width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: var(--healphy-sage); content: ""; }
.healphy-key-answer p { margin: 0; color: var(--healphy-charcoal); line-height: 1.68; }
.healphy-design-v3.single-post .healphy-key-answer .healphy-key-answer__link { display: inline-flex; min-height: 44px; margin-top: 10px; align-items: center; gap: 5px; color: var(--healphy-forest-deep); font-size: .86rem; font-weight: 750; text-decoration: none; }
.healphy-design-v3.single-post .healphy-key-answer .healphy-key-answer__link:hover { color: var(--healphy-charcoal); text-decoration: underline; text-underline-offset: .18em; }
.healphy-scroll-anchor { position: relative; top: -96px; }
.healphy-article__measure > img,
.healphy-article__measure figure { max-width: 100%; margin: 30px 0; border-radius: 14px; }
.healphy-article__measure > p { margin: 0 0 1.4em; }

.single-post .site-content { display: block; }
.single-post .content-area { width: 100%; }
.single-post .healphy-article__header,
.single-post .site-main { max-width: 770px; margin-inline: auto; }
.single-post .healphy-article__header { padding: clamp(46px, 6vw, 80px) 24px 0; }
.single-post .site-main .inside-article { padding: 0 24px 68px; background: var(--healphy-white); }
.single-post .entry-content { color: var(--healphy-charcoal); font-size: 1.06rem; line-height: 1.78; }
.healphy-design-v3.single-post .entry-content h2 { margin-top: 2.35em; padding: .48em .7em; border-left: 4px solid var(--healphy-forest); border-radius: 0 10px 10px 0; color: var(--healphy-charcoal); background: linear-gradient(90deg, var(--healphy-sage-soft), rgba(227, 234, 223, .38)); font-size: clamp(1.5rem, 3vw, 1.9rem); line-height: 1.32; }
.healphy-design-v3.single-post .entry-content h3 { margin-top: 1.9em; color: var(--healphy-charcoal); line-height: 1.38; }
.healphy-design-v3.single-post .entry-content > p { margin-bottom: 1.45em; }
.healphy-design-v3.single-post .entry-content a { color: var(--healphy-forest-deep); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .16em; }
.healphy-design-v3.single-post .ez-toc-container a { color: var(--healphy-charcoal); text-decoration: none; }
.healphy-design-v3.single-post #ez-toc-container { width: 100%; margin: 32px 0; padding: 18px 20px; border: 1px solid var(--healphy-line); border-radius: 14px; background: #fbfaf6; box-shadow: 0 6px 20px rgba(41, 52, 50, .05); }
.healphy-design-v3.single-post #ez-toc-container .ez-toc-title { color: var(--healphy-charcoal); font-size: 1rem; font-weight: 800; }
.healphy-design-v3.single-post #ez-toc-container a { color: var(--healphy-charcoal); line-height: 1.5; text-decoration: none; }
.healphy-design-v3.single-post #ez-toc-container a:hover { color: var(--healphy-forest-deep); text-decoration: underline; text-underline-offset: .16em; }
.healphy-design-v3.search .page-header .page-title,
.healphy-design-v3.search .entry-title a,
.healphy-design-v3.error404 .entry-title { color: var(--healphy-charcoal); }
.healphy-design-v3.search .entry-summary { color: var(--healphy-muted); }
.healphy-design-v3.search .page-numbers { color: var(--healphy-forest-deep); }
.single-post .post-image img,
.single-post .entry-content img { height: auto; border-radius: 14px; }
.single-post .entry-content figure { overflow: hidden; border: 1px solid var(--healphy-line); box-shadow: 0 10px 28px rgba(41, 52, 50, .07); }
.healphy-empty { padding: 28px; border-radius: 12px; background: var(--healphy-ivory); }
.healphy-design-v3 .body-map__intro h2 { color: var(--healphy-charcoal); font-size: clamp(2rem, 4vw, 3.5rem); }
.healphy-design-v3 div[id^="aswift_"][id$="_host"],
.healphy-design-v3 .google-aiuf { max-width: 100vw !important; overflow: hidden !important; }

@media (min-width: 980px) {
  .healphy-design-v3 .main-navigation .inside-navigation { display: flex; min-height: 72px; flex-wrap: nowrap; align-items: center; gap: 14px; }
  .healphy-design-v3 .navigation-branding { flex: 0 0 176px; margin-right: 4px; }
  .healphy-design-v3 .main-navigation .main-nav { min-width: 0; flex: 1 1 auto; }
  .healphy-design-v3 .main-navigation .main-nav > ul { display: flex; flex-wrap: nowrap; align-items: center; }
  .healphy-design-v3 .main-navigation .main-nav ul li a { padding-right: 9px; padding-left: 9px; white-space: nowrap; }
  .healphy-hero h2 span { white-space: nowrap; }
  .healphy-design-v3 .main-navigation .menu-bar-items { margin-left: auto; flex: 0 0 auto; align-self: center; }
  .healphy-design-v3 .main-navigation .menu-toggle,
  .healphy-design-v3 .main-navigation .mobile-menu-control-wrapper { display: none; }
}

@media (min-width: 1024px) {
  .healphy-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .healphy-hub__axes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 979px) {
  .healphy-design-v3 .main-navigation .inside-navigation { position: relative; min-height: 64px; flex-wrap: nowrap; align-items: center; }
  .healphy-design-v3 .navigation-branding { min-width: 0; flex: 0 1 158px; }
  .healphy-design-v3 .navigation-branding .main-title a { width: 150px; height: 34px; }
  .healphy-design-v3 .main-navigation .main-nav { position: absolute; z-index: 100; top: 100%; right: 0; left: 0; display: none; width: 100%; background: var(--healphy-white); box-shadow: var(--healphy-shadow); }
  .healphy-design-v3 .main-navigation.toggled .main-nav { display: block; background: var(--healphy-ivory); }
  .healphy-design-v3 .main-navigation.toggled .main-nav ul { background: var(--healphy-ivory); }
  .healphy-design-v3 .main-navigation.toggled .main-nav a { color: var(--healphy-charcoal); background: transparent; }
  .healphy-design-v3 .main-navigation.toggled .main-nav a:hover,
  .healphy-design-v3 .main-navigation.toggled .main-nav a:focus,
  .healphy-design-v3 .main-navigation.toggled .main-nav .current-menu-item > a { color: var(--healphy-forest); background: var(--healphy-sage-soft); }
  .healphy-design-v3 .main-navigation .menu-bar-items { display: none; }
  .healphy-design-v3 .main-navigation .menu-toggle { display: flex; width: auto; margin-left: auto; padding-inline: 14px; align-items: center; flex: 0 0 auto; }
  .healphy-shell { width: min(calc(100% - 24px), var(--healphy-shell)); }
  .healphy-hero { padding-block: 48px; }
  .healphy-hero__inner { grid-template-columns: minmax(0, 1fr); }
  .healphy-hero__identity { display: none; }
  .healphy-hero h2 { font-size: 2rem; line-height: 1.16; }
  .healphy-hero__search-panel { max-width: 680px; }
  .healphy-search form { flex-direction: row; flex-wrap: nowrap; gap: 6px; padding: 6px; }
  .healphy-search label { min-width: 0; flex: 1 1 auto; }
  .healphy-search input[type="search"] { min-width: 0; padding-inline: 10px; }
  .healphy-search input[type="submit"] { width: auto; flex: 0 0 auto; padding-inline: 16px; }
  .healphy-design-v3 .healphy-search button[type="submit"],
  .healphy-design-v3 .healphy-search button.search-submit { width: 52px; padding: 0; flex: 0 0 52px; }
  .healphy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .healphy-card__link { padding: 20px; }
  .healphy-card--featured { grid-column: 1 / -1; }
  .healphy-section { padding-block: 48px; }
}

@media (max-width: 600px) {
  .healphy-hero { padding-block: 40px; }
  .healphy-hero__lede { margin-bottom: 22px; font-size: 1rem; }
  .healphy-search input[type="submit"] { padding-inline: 12px; }
  .healphy-hub__axes, .healphy-grid { grid-template-columns: 1fr; }
  .healphy-card--featured { grid-column: auto; }
  .healphy-axis { padding: 20px; }
  .healphy-article { padding-inline: 16px; }
  .single-post .healphy-article__header { padding-inline: 16px; }
  .single-post .site-main .inside-article { padding-inline: 16px; }
  .healphy-key-answer { padding: 18px; }
  .healphy-key-answer p { font-size: 1rem; }
}
