/* Shared shell tokens and top-nav header. Brand tokens switch on html[data-brand]; see docs/CONTEXT-V2.md. */
:root, html[data-brand="cc"] {
  /* Castle Connolly, captured from castleconnolly.com 2026-09-04 */
  --eh-blue: #1A6E2A;      /* accessible green: links, active states */
  --eh-link: #34A068;      /* header green */
  --eh-dark: #234053;      /* navy lead */
  --eh-navy: #102C3D;      /* deep navy */
  --eh-navy-2: #113B51;    /* dark blue */
  --eh-storm: #4F84A5;
  --eh-faded: #6C98B3;
  --eh-green-ui: #0D8721;
  --eh-green-light: #7CCC65;
  --eh-orange: #F08E48;
  --eh-tint: #E7F4EC;      /* green tint, derived */
  --eh-tint-2: #C6E5D1;    /* green tint border, derived */
  --eh-community: #F3F7F9; /* navy tint, derived */
  --eh-social: #F7F7F7;
  --eh-text: #333333;
  --eh-text-2: #626262;
  --eh-ink: #102C3D;
  --eh-rule: #E6E6E6;
  --eh-surface: #F7F7F7;
  --eh-sans: 'Figtree', 'Proxima Nova', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --eh-head: 'Figtree', 'Proxima Nova', 'Helvetica Neue', Arial, sans-serif;
  --eh-serif: 'Libre Baskerville', Georgia, 'Times New Roman', serif;
  --eh-cond: var(--eh-sans);
  --eh-container: 1200px;
  --band-bg: #102C3D;
  --band-bg-2: #234053;
  --band-shape: rgba(52, 160, 104, .42);
  --band-shape-2: rgba(124, 204, 101, .22);
}
html[data-brand="ehcare"] {
  /* Everyday Health-CARE, captured from everydayhealth.care 2026-09-04 */
  --eh-blue: #058574;
  --eh-link: #1085A9;
  --eh-dark: #006782;
  --eh-navy: #102734;
  --eh-navy-2: #006782;
  --eh-storm: #1085A9;
  --eh-faded: #5FA9BE;
  --eh-green-ui: #058574;
  --eh-green-light: #7BD1C4;
  --eh-orange: #F08E48;
  --eh-tint: #E3F3F1;
  --eh-tint-2: #BFE1DC;
  --eh-community: #F2F8F8;
  --eh-social: #F2F2F2;
  --eh-text: #333333;
  --eh-text-2: #626262;
  --eh-ink: #111111;
  --eh-rule: #E6E6E6;
  --eh-surface: #F2F2F2;
  --eh-sans: 'DM Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --eh-head: 'Lexend', 'DM Sans', sans-serif;
  --eh-serif: 'Lexend', 'DM Sans', sans-serif;
  --eh-cond: var(--eh-sans);
  --eh-container: 1200px;
  --band-bg: #102734;
  --band-bg-2: #006782;
  --band-shape: rgba(5, 133, 116, .45);
  --band-shape-2: rgba(16, 133, 169, .25);
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { font-family: var(--eh-sans); color: var(--eh-text); font-size: 14px; line-height: 20px; background: #fff; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; }
img { display: block; max-width: 100%; }
svg { display: block; }
.eh-container { max-width: var(--eh-container); margin: 0 auto; padding: 0 24px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* ---------- Header ---------- */
.eh-header { position: sticky; top: 0; z-index: 50; background: #fff; box-shadow: 0 0 6px 1px var(--eh-rule); }
.eh-header__bar { height: 40px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; }
.eh-header__left { display: flex; align-items: center; }
.eh-header__right { display: flex; align-items: center; justify-content: flex-end; gap: 28px; }
.eh-header__btn { display: inline-flex; align-items: center; gap: 8px; background: none; border: 0; padding: 0; font: 600 12px/20px var(--eh-sans); letter-spacing: 1.5px; text-transform: uppercase; color: var(--eh-text-2); }
.eh-header__btn svg { width: 22px; height: 17px; }
.eh-header__btn--search svg { width: 16px; height: 22px; }
.eh-header__burger { width: 18px; height: 12px; position: relative; display: inline-block; }
.eh-header__burger::before, .eh-header__burger::after, .eh-header__burger span { content: ''; position: absolute; left: 0; right: 0; height: 2px; background: var(--eh-blue); border-radius: 1px; }
.eh-header__burger::before { top: 0; } .eh-header__burger span { top: 5px; } .eh-header__burger::after { bottom: 0; }
.eh-header__logo { display: block; height: 20px; }
.eh-header__logo svg { width: 225px; height: 20px; }
.eh-header__nav { height: 40px; }
.eh-header__nav-items { height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 12px; list-style: none; margin: 0 auto; min-width: 0; }
.eh-header__nav-items li { min-width: 0; }
.eh-header__nav-link { display: inline-flex; align-items: center; gap: 6px; font: 600 14px/20px var(--eh-sans); color: var(--eh-text); white-space: nowrap; }
.eh-header__nav-link svg { width: 10px; height: 6px; color: var(--eh-text); }
.eh-header__nav-link:hover { color: var(--eh-blue); }


/* ---------- Search hero (replaces brag bar) ---------- */
.hero { background: var(--eh-tint); padding: 28px 0 26px; position: relative; z-index: 5; }
.hero__media { position: absolute; right: 0; top: 0; bottom: 0; width: clamp(260px, 34vw, 500px); overflow: hidden; pointer-events: none; }
.hero__video { width: 100%; height: 100%; object-fit: cover; display: block; }
.hero__inner { position: relative; z-index: 1; }
.hero__title { font: 500 28px/36px var(--eh-head); color: var(--eh-text); margin: 0 0 20px; display: flex; gap: 8px; align-items: flex-start; height: 36px; }
.hero__rotate { position: relative; display: block; min-width: 340px; height: 36px; overflow: hidden; }
.hero__rotate span { position: absolute; left: 0; top: 0; line-height: 36px; white-space: nowrap; font-weight: 700; color: var(--eh-blue); transition: transform .5s ease, opacity .4s ease; transform: translateY(36px); opacity: 0; }
.hero__rotate span.is-active { transform: translateY(0); opacity: 1; }
.hero__rotate span.is-leaving { transform: translateY(-36px); opacity: 0; }
.hero__search { position: relative; max-width: 820px; width: calc(100% - clamp(260px, 34vw, 500px) + 60px); }
.hero__shell { display: flex; align-items: center; background: #fff; border: 1px solid var(--eh-tint-2); border-radius: 16px; height: 64px; padding: 0 8px 0 20px; box-shadow: 0 6px 24px rgba(16, 44, 61, .10); transition: box-shadow .15s ease, border-color .15s ease; }
.hero__shell:focus-within { border-color: var(--eh-blue); box-shadow: 0 8px 28px rgba(16, 44, 61, .16); }
.hero__shell--open { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.hero__icon { width: 22px; height: 22px; color: var(--eh-blue); flex: none; }
.hero__icon svg { width: 22px; height: 22px; }
.hero__input-wrap { flex: 1; position: relative; height: 100%; display: flex; align-items: center; margin-left: 14px; }
.hero__input { width: 100%; border: 0; outline: 0; background: transparent; font: 400 18px/24px var(--eh-sans); color: var(--eh-text); padding: 0; }
.hero__input::placeholder { color: #8a8a8a; opacity: 1; transition: opacity .35s ease; }
.hero__input--ph-hidden::placeholder { opacity: 0; }
.hero__submit { flex: none; height: 48px; padding: 0 22px; border: 0; border-radius: 100px; background: var(--eh-blue); color: #fff; font: 600 16px/1 var(--eh-sans); display: inline-flex; align-items: center; gap: 8px; }
.hero__submit svg { width: 16px; height: 16px; flex: none; }
.hero__submit:hover { background: var(--eh-dark); }
.hero__submit:disabled { background: var(--eh-tint-2); cursor: default; }
.hero__pills { display: flex; flex-wrap: wrap; gap: 8px; margin: -6px 0 14px; }
.hero__pill { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 14px; border-radius: 100px; border: 1px solid var(--eh-tint-2); background: rgba(255,255,255,.85); font: 600 13px/1 var(--eh-sans); color: var(--eh-dark); transition: all .12s ease; }
.hero__pill svg { width: 14px; height: 14px; }
.hero__pill:hover { border-color: var(--eh-blue); background: #fff; }
.hero__pill--active { background: var(--eh-blue); border-color: var(--eh-blue); color: #fff; }
.hero__stats { display: flex; gap: 32px; margin-top: 18px; list-style: none; padding: 0; }
.hero__stat { display: inline-flex; align-items: center; gap: 8px; font: 400 14px/20px var(--eh-sans); color: var(--eh-text); }
.hero__stat svg { width: 20px; height: 20px; }
.hero__stat b { font: 600 18px/24px var(--eh-head); color: var(--eh-blue); }

/* Typeahead panel */
.ta { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border: 1px solid var(--eh-tint-2); border-top: 0; border-radius: 0 0 16px 16px; box-shadow: 0 16px 32px rgba(16, 44, 61, .14); z-index: 40; overflow: hidden; }
.ta__label { padding: 12px 20px 4px; font: 600 11px/16px var(--eh-sans); letter-spacing: 1.2px; text-transform: uppercase; color: var(--eh-text-2); }
.ta__item { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; padding: 10px 20px; border: 0; background: none; font: 400 15px/20px var(--eh-sans); color: var(--eh-text); }
.ta__item:hover { background: var(--eh-community); }
.ta__item--active { background: var(--eh-tint); }
.ta__item svg { width: 16px; height: 16px; color: var(--eh-text-2); flex: none; }
.ta__text { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ta__text b { font-weight: 600; color: var(--eh-ink); }
.ta__tag { flex: none; font: 600 10px/16px var(--eh-sans); letter-spacing: 1px; text-transform: uppercase; color: var(--eh-dark); background: var(--eh-tint); border-radius: 100px; padding: 1px 8px; }
.ta__foot { display: flex; align-items: center; gap: 8px; padding: 10px 20px 12px; border-top: 1px solid var(--eh-tint); font: 400 12px/16px var(--eh-sans); color: var(--eh-text-2); }
.ta__foot svg { width: 14px; height: 14px; color: var(--eh-blue); }
.ta__foot b { color: var(--eh-text); font-weight: 600; }

/* ---------- Sections ---------- */
.sec { padding: 64px 0; }
.sec--tight { padding-top: 64px; padding-bottom: 0; }
.sec-head { display: flex; align-items: flex-end; justify-content: space-between; border-bottom: 2px solid var(--eh-tint-2); padding-bottom: 8px; margin-bottom: 24px; }
.sec-head h2 { margin: 0; font: 600 30px/40px var(--eh-cond); text-transform: uppercase; color: var(--eh-blue); letter-spacing: .2px; }
.sec-head__right { display: flex; align-items: center; gap: 18px; font: 600 14px/20px var(--eh-sans); color: var(--eh-text); padding-bottom: 6px; }
.sec-link { font: 600 14px/20px var(--eh-sans); letter-spacing: 1.5px; text-transform: uppercase; color: var(--eh-blue); padding: 8px 0; }
.sec-link:hover { color: var(--eh-dark); }
.sec-desc { font: 400 16px/26px var(--eh-sans); color: var(--eh-text); margin: 0 0 24px; max-width: 880px; }
.eyebrow { font: 600 12px/16px var(--eh-sans); letter-spacing: .5px; text-transform: uppercase; color: var(--eh-dark); }
.byline { font: 400 12px/16px var(--eh-sans); color: var(--eh-text-2); display: flex; align-items: center; gap: 6px; }
.byline svg { width: 12px; height: 12px; color: #2e9e5b; }
.social-counts { display: flex; align-items: center; gap: 14px; }
.social-count { display: inline-flex; align-items: center; gap: 5px; font: 600 12px/16px var(--eh-sans); text-transform: uppercase; color: var(--eh-text); }
.social-count svg { width: 14px; height: 14px; color: var(--eh-text); }

/* News grid */
.sec--news .eh-container { padding: 0 48px; }
.news { display: grid; grid-template-columns: minmax(0, 644px) minmax(0, 420px); justify-content: space-between; gap: 40px; }
.lead { display: block; position: relative; }
.lead__img { width: 100%; aspect-ratio: 644 / 360; object-fit: cover; }
.lead__data { padding-top: 14px; display: grid; gap: 8px; }
.lead__headline { font: 700 30px/40px var(--eh-head); color: var(--eh-text); }
.lead:hover .lead__headline { color: var(--eh-blue); }
.stack { height: 502px; overflow-y: auto; padding-right: 6px; scrollbar-width: thin; scrollbar-color: var(--eh-tint-2) transparent; }
.stack::-webkit-scrollbar { width: 6px; } .stack::-webkit-scrollbar-thumb { background: var(--eh-tint-2); border-radius: 3px; }
.stack__item { display: grid; grid-template-columns: minmax(0, 1fr) minmax(140px, 210px); gap: 16px; padding: 0 0 20px; margin-bottom: 20px; border-bottom: 1px solid var(--eh-rule); }
.stack__item:last-child { border-bottom: 0; margin-bottom: 0; }
.stack__img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.stack__data { display: grid; gap: 8px; align-content: start; }
.stack__headline { font: 600 22px/30px var(--eh-head); color: var(--eh-text); }
.stack__item:hover .stack__headline { color: var(--eh-blue); }

/* Carousel of gateway cards */
.letters { display: flex; flex-wrap: wrap; gap: 4px; margin: 0 0 24px; }
.letters__label { font: 600 12px/16px var(--eh-sans); letter-spacing: .5px; text-transform: uppercase; color: var(--eh-text-2); margin: 0 0 10px; }
.letter { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--eh-tint-2); border-radius: 8px; background: #fff; font: 400 16px/28px var(--eh-sans); color: var(--eh-blue); }
.letter:hover { background: var(--eh-tint); }
.carousel { position: relative; }
.carousel__track { display: flex; gap: 20px; overflow: hidden; scroll-behavior: smooth; }
.carousel__track--scroll { overflow-x: auto; scrollbar-width: none; }
.carousel__track--scroll::-webkit-scrollbar { display: none; }
.gcard { flex: none; width: 208px; height: 260px; border: 2px solid var(--eh-tint); border-radius: 16px; background: #fff; overflow: hidden; display: flex; flex-direction: column; align-items: center; transition: box-shadow .15s ease, transform .15s ease; }
.gcard:hover { box-shadow: 4px 4px 0 0 var(--eh-tint-2); transform: translate(-1px, -1px); }
.gcard img { width: 204px; height: 204px; object-fit: cover; }
.gcard__label { flex: 1; display: flex; align-items: center; font: 400 16px/28px var(--eh-sans); color: var(--eh-blue); text-align: center; padding: 0 8px; }
.carousel__btn { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--eh-rule); background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,.12); display: flex; align-items: center; justify-content: center; color: var(--eh-blue); z-index: 2; }
.carousel__btn svg { width: 16px; height: 16px; }
.carousel__btn--prev { left: -20px; } .carousel__btn--next { right: -20px; }
.carousel__btn:disabled { opacity: .35; cursor: default; }

/* Video */
.video { display: grid; grid-template-columns: minmax(0, 724px) minmax(300px, 388px); justify-content: space-between; gap: 40px; }
.player { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #000; overflow: hidden; }
.player__details { padding: 16px 0 0; display: grid; gap: 8px; }
.player__details h3 { margin: 0; font: 600 22px/30px var(--eh-head); color: var(--eh-ink); }
.player__details div { font: 400 14px/20px var(--eh-sans); color: var(--eh-text); }
.player img { width: 100%; height: 100%; object-fit: cover; opacity: .92; }
.player__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,0) 35%, rgba(0,0,0,.6) 100%); }
.player__title { position: absolute; left: 24px; right: 24px; top: 20px; font: 600 22px/30px var(--eh-head); color: #fff; }
.player__play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 72px; height: 72px; border-radius: 50%; background: rgba(0,125,178,.92); border: 0; display: flex; align-items: center; justify-content: center; color: #fff; }
.player__play svg { width: 28px; height: 28px; margin-left: 4px; }
.player__bar { position: absolute; left: 0; right: 0; bottom: 0; padding: 14px 20px; display: flex; align-items: center; gap: 14px; color: #fff; font: 400 12px/16px var(--eh-sans); }
.player__progress { flex: 1; height: 4px; background: rgba(255,255,255,.35); border-radius: 2px; position: relative; }
.player__progress::after { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 18%; background: var(--eh-blue); border-radius: 2px; }
.playlist { height: 497px; overflow-y: auto; padding-right: 6px; scrollbar-width: thin; scrollbar-color: var(--eh-tint-2) transparent; }
.playlist__item { display: grid; grid-template-columns: minmax(120px, 186px) minmax(0, 1fr); gap: 14px; align-items: center; padding: 12px 8px; border: 0; background: none; text-align: left; width: 100%; border-radius: 8px; }
.playlist__item:hover { background: var(--eh-community); }
.playlist__item--active { background: var(--eh-tint); }
.playlist__thumb { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: #ddd; }
.playlist__thumb img { width: 100%; height: 100%; object-fit: cover; }
.playlist__thumb span { position: absolute; right: 6px; bottom: 6px; background: rgba(0,0,0,.75); color: #fff; font: 600 11px/14px var(--eh-sans); padding: 1px 5px; border-radius: 3px; }
.playlist__title { font: 600 18px/24px var(--eh-head); color: var(--eh-text); }
.playlist__now { font: 600 11px/16px var(--eh-sans); letter-spacing: 1.2px; text-transform: uppercase; color: var(--eh-blue); margin-top: 6px; }

/* Promo */
.promo { display: grid; grid-template-columns: minmax(0, 62%) minmax(0, 1fr); background: var(--eh-community); border: 2px solid var(--eh-tint); border-radius: 16px; overflow: hidden; }
.promo__img { width: 100%; height: 100%; min-height: 360px; object-fit: cover; }
.promo__body { padding: 40px; display: flex; flex-direction: column; justify-content: center; gap: 12px; }
.promo__title { font: 700 30px/40px var(--eh-head); color: var(--eh-ink); }
.promo__meta { font: 400 14px/20px var(--eh-sans); color: var(--eh-text-2); }
.promo__desc { font: 400 16px/26px var(--eh-sans); color: var(--eh-text); margin: 0; }
.btn-outline { display: inline-flex; align-items: center; justify-content: center; height: 44px; padding: 0 28px; border-radius: 100px; border: 2px solid var(--eh-blue); color: var(--eh-blue); font: 600 16px/22px var(--eh-sans); background: #fff; width: max-content; }
.btn-outline:hover { background: var(--eh-blue); color: #fff; }
.btn-primary { display: inline-flex; align-items: center; justify-content: center; height: 48px; padding: 0 28px; border-radius: 100px; border: 0; background: var(--eh-blue); color: #fff; font: 600 16px/22px var(--eh-sans); }
.btn-primary:hover { background: var(--eh-dark); }

/* Tools */
.tools { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; }
.tool { display: block; }
.tool img { width: 190px; height: 173px; object-fit: contain; margin-bottom: 16px; }
.tool__title { font: 600 18px/24px var(--eh-head); color: var(--eh-ink); margin-bottom: 8px; }
.tool:hover .tool__title { color: var(--eh-blue); }
.tool__desc { font: 400 14px/20px var(--eh-sans); color: var(--eh-text); }

/* Rounded tinted sections */
.sec--community { background: var(--eh-community); border-radius: 100px 0; }
.sec--social { background: var(--eh-social); border-radius: 100px 0; }
.chips { display: flex; flex-wrap: wrap; gap: 10px; }
.chip { display: inline-flex; align-items: center; height: 32px; padding: 8px 16px; border-radius: 100px; border: 1px solid var(--eh-rule); background: #fff; font: 600 12px/16px var(--eh-sans); text-transform: uppercase; color: var(--eh-text); }
.chip:hover { border-color: var(--eh-blue); color: var(--eh-blue); }
.irl { display: grid; grid-template-columns: minmax(0, 1fr) minmax(440px, 564px); gap: 24px; align-items: start; }
.irl__quote { background: #fff; border: 2px solid var(--eh-tint); border-radius: 16px; padding: 28px; }
.irl__quote p { margin: 0 0 12px; font: 400 18px/28px var(--eh-head); color: var(--eh-text); }
.irl__quote small { font: 400 13px/18px var(--eh-sans); color: var(--eh-text-2); }

/* Reviews */
.reviews { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.review { display: block; }
.review img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; margin-bottom: 12px; }
.review__title { font: 600 22px/30px var(--eh-head); color: var(--eh-text); margin-bottom: 8px; }
.review:hover .review__title { color: var(--eh-blue); }

/* Social */
.social-grid { display: grid; grid-template-columns: minmax(0, 690px) 288px; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.posts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-content: start; }
.social-video { position: relative; width: 288px; height: 476px; border-radius: 12px; overflow: hidden; background: #000; }
.social-video img { width: 100%; height: 100%; object-fit: cover; opacity: .9; }
.social-video__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,.7) 100%); }
.social-video__title { position: absolute; left: 16px; right: 16px; bottom: 16px; font: 600 18px/24px var(--eh-head); color: #fff; }
.player__play--sm { width: 56px; height: 56px; }
.irl-stack { position: relative; height: 398px; }
.irl-card { position: absolute; top: 0; left: 0; width: 420px; height: 398px; background: #fff; border: 2px solid var(--eh-tint); border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 8px 24px rgba(0,85,123,.08); transition: transform .2s ease; }
.irl-card img { width: 100%; height: 236px; object-fit: cover; }
.irl-card__body { padding: 16px 20px; display: grid; gap: 6px; }
.irl-card__desc { font: 400 15px/22px var(--eh-sans); color: var(--eh-text); }
.irl-card--1 { transform: translate(28px, 0) scale(.96); z-index: 3; opacity: .95; }
.irl-card--2 { transform: translate(56px, 0) scale(.92); z-index: 2; opacity: .9; }
.irl-card--3 { transform: translate(84px, 0) scale(.88); z-index: 1; opacity: .85; }
.irl-card--0 { z-index: 4; }
.irl-stack:hover .irl-card--0 { transform: translateY(-4px); }
.post { aspect-ratio: 1; overflow: hidden; background: #ddd; }
.post img { width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
.post:hover img { transform: scale(1.03); }
.followers { display: flex; justify-content: center; gap: 40px; }
.follower { display: inline-flex; align-items: center; gap: 8px; font: 600 16px/20px var(--eh-head); color: var(--eh-text); }
.follower svg { width: 20px; height: 20px; color: var(--eh-blue); }
.follower small { font: 400 12px/16px var(--eh-sans); color: var(--eh-text-2); text-transform: uppercase; letter-spacing: 1px; }

/* Newsletter */
.nl { display: grid; grid-template-columns: minmax(200px, 320px) minmax(0, 1fr); gap: 40px; align-items: center; padding: 8px 0 0; }
.nl img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 16px; }
.nl__title { font: 600 22px/30px var(--eh-head); color: var(--eh-text); margin-bottom: 16px; }
.nl__form { display: flex; gap: 12px; max-width: 560px; }
.nl__input { flex: 1; height: 48px; border: 1px solid var(--eh-rule); border-radius: 8px; padding: 0 16px; font: 400 16px/20px var(--eh-sans); color: var(--eh-text); }
.nl__legal { font: 400 12px/16px var(--eh-sans); color: var(--eh-text-2); margin-top: 10px; }
.nl__legal a { color: var(--eh-link); text-decoration: underline; }

/* About */
.about { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.about__card { background: var(--eh-community); border: 2px solid var(--eh-tint); border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; }
.about__card img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.about__body { padding: 24px; display: grid; gap: 10px; }
.about__title { font: 600 22px/30px var(--eh-head); color: var(--eh-ink); }
.about__desc { font: 400 14px/20px var(--eh-sans); color: var(--eh-text); margin: 0; }
.about__cta { font: 600 16px/22px var(--eh-sans); color: var(--eh-blue); margin-top: 6px; }

/* ---------- Footer ---------- */
.eh-footer { background: var(--eh-dark); color: #fff; padding: 48px 0 32px; margin-top: 24px; }
.eh-footer__top { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.2); }
.eh-footer__brand { display: flex; align-items: center; gap: 16px; }
.eh-footer__brand svg { width: 20px; height: 28px; }
.eh-footer__tagline { font: 600 18px/24px var(--eh-head); }
.eh-footer__social { display: flex; gap: 20px; margin-top: 16px; }
.eh-footer__social a { color: rgba(255,255,255,.7); width: 20px; height: 20px; display: flex; align-items: center; justify-content: center; }
.eh-footer__social a:hover { color: #fff; }
.eh-footer__social svg { max-width: 20px; max-height: 20px; }
.eh-footer__social svg * { fill: currentColor; }
.eh-footer__group { text-align: right; font: 600 11px/16px var(--eh-sans); letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,.75); }
.eh-footer__group svg { margin-top: 10px; margin-left: auto; width: 120px; height: 21px; }
.eh-footer__group svg * { fill: #fff !important; }
.eh-footer__mid { display: grid; grid-template-columns: 1fr 360px; gap: 64px; padding: 32px 0; }
.eh-footer__links { columns: 3; column-gap: 32px; list-style: none; margin: 0; padding: 0; }
.eh-footer__links li { break-inside: avoid; margin-bottom: 12px; }
.eh-footer__links a, .eh-footer__links span { font: 400 14px/20px var(--eh-sans); color: rgba(255,255,255,.92); display: inline-flex; align-items: center; gap: 6px; }
.eh-footer__links a:hover { text-decoration: underline; }
.eh-footer__links svg { width: 8px; height: 8px; }
.eh-footer__nl-type { display: flex; align-items: center; gap: 8px; font: 600 11px/16px var(--eh-sans); letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,.8); margin-bottom: 8px; }
.eh-footer__nl-type svg { width: 22px; height: 17px; }
.eh-footer__nl-type svg * { fill: #fff; }
.eh-footer__nl-title { font: 600 20px/28px var(--eh-head); margin-bottom: 14px; }
.eh-footer__nl-form { display: flex; gap: 8px; }
.eh-footer__nl-input { flex: 1; height: 44px; border: 1px solid rgba(255,255,255,.4); background: rgba(255,255,255,.08); border-radius: 8px; padding: 0 14px; color: #fff; font: 400 14px/20px var(--eh-sans); }
.eh-footer__nl-input::placeholder { color: rgba(255,255,255,.7); }
.eh-footer__nl-btn { height: 44px; padding: 0 22px; border-radius: 100px; border: 0; background: #fff; color: var(--eh-dark); font: 600 14px/20px var(--eh-sans); }
.eh-footer__nl-legal { font: 400 12px/16px var(--eh-sans); color: rgba(255,255,255,.7); margin-top: 8px; }
.eh-footer__nl-legal a { text-decoration: underline; }
.eh-footer__legal { border-top: 1px solid rgba(255,255,255,.2); padding-top: 24px; font: 400 12px/18px var(--eh-sans); color: rgba(255,255,255,.75); display: grid; gap: 10px; }
.eh-footer__legal a { text-decoration: underline; }

@media (max-width: 1280px) {
  .eh-header__nav-link { font-size: 13px; gap: 4px; }
  .hero__pills { gap: 6px; }
}
@media (max-width: 1100px) {
  .eh-header__nav-link svg { display: none; }
  .eh-header__nav-link { font-size: 12.5px; }
  .hero__media { display: none; }
  .hero__search { width: 100%; }
  .irl { grid-template-columns: 1fr; }
  .irl-stack { height: 420px; }
  .reviews { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tools { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .social-grid { grid-template-columns: 1fr; }
  .social-video { display: none; }
  .video { grid-template-columns: 1fr; }
  .playlist { height: auto; max-height: 420px; }
  .news { grid-template-columns: 1fr; }
  .stack { height: auto; }
  .promo { grid-template-columns: 1fr; }
  .about { grid-template-columns: 1fr; }
}


/* ---------- Castle Connolly-shaped site header (top-nav variant) ---------- */
.cc-header { position: relative; z-index: 50; background: #fff; box-shadow: 0 1px 0 var(--eh-rule); }
.cc-header__bar { height: 64px; display: flex; align-items: stretch; gap: 0; padding-left: 24px; }
.cc-header__logo { display: flex; align-items: center; flex: none; margin-right: 28px; }
.cc-header__logo img { height: 38px; width: auto; display: block; }
.cc-header__nav { flex: 1; min-width: 0; display: flex; align-items: stretch; }
.cc-header__nav-items { display: flex; align-items: stretch; gap: 0; list-style: none; margin: 0; padding: 0; min-width: 0; overflow-x: auto; scrollbar-width: none; }
.cc-header__nav-items::-webkit-scrollbar { display: none; }
.cc-header__nav-items li { display: flex; align-items: stretch; }
.cc-header__nav-link { display: inline-flex; align-items: center; gap: 7px; padding: 0 13px; font: 700 12.5px/1 var(--eh-sans); letter-spacing: 1.2px; text-transform: uppercase; color: var(--eh-blue); white-space: nowrap; border-bottom: 3px solid transparent; transition: color .15s ease, border-color .15s ease; }
.cc-header__nav-link svg { width: 10px; height: 6px; }
.cc-header__nav-link svg * { stroke: var(--eh-blue); fill: none; }
.cc-header__nav-link:hover { color: var(--eh-dark); border-bottom-color: var(--eh-link); }
.cc-header__right { display: flex; align-items: center; gap: 18px; padding-left: 12px; flex: none; }
.cc-header__search { width: 64px; height: 64px; border: 0; border-radius: 0; background: var(--eh-link); color: #fff; display: inline-flex; align-items: center; justify-content: center; transition: background .15s ease; }
.cc-header__search:hover { background: var(--eh-blue); }
.cc-header__search svg { width: 20px; height: 20px; }
.cc-header__search svg * { fill: #fff; stroke: #fff; }
.cc-header__nav-link.is-inert { cursor: default; pointer-events: none; }
.cc-header__nav-link.is-inert:hover { color: var(--eh-blue); border-bottom-color: transparent; }
@media (max-width: 1320px) { .cc-header__nav-link.is-inert { display: none; } .cc-header__nav-link { padding: 0 10px; letter-spacing: 1px; font-size: 12px; } .cc-header__logo { margin-right: 16px; } }
