/*
=============================================================
  APOE4 INSIGHTS — GLOBAL ADDITIONAL CSS
  Appearance → Customize → Additional CSS
  Last updated: June 2026
=============================================================
*/

/* ── GOOGLE FONTS ── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,600&family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@300;400;500&display=swap');

/* ── DESIGN TOKENS ── */
:root {
  --apoe-deep-navy:  #0a0f1e;
  --apoe-navy:       #111827;
  --apoe-slate:      #1e2d45;
  --apoe-steel:      #2c3f5e;
  --apoe-gold:       #c8963e;
  --apoe-gold-light: #e6b86a;
  --apoe-gold-pale:  #f5e6c8;
  --apoe-cream:      #f9f4ec;
  --apoe-white:      #ffffff;
  --apoe-text-muted: #8a9ab5;
  --apoe-text-mid:   #b0bfd4;
}

/* ═══════════════════════════════════════════════════
   1. GLOBAL BODY & SITE BACKGROUND — DARK NAVY
═══════════════════════════════════════════════════ */

body {
  background-color: #0d1b2e !important;
  font-family: 'DM Sans', sans-serif !important;
}

.site-main,
.content-area,
.entry-content,
.site-content,
.wp-site-blocks {
  background-color: #0d1b2e !important;
}

/* ═══════════════════════════════════════════════════
   2. PAGES THAT USE CREAM/TAN BACKGROUND
   (scoped by page-slug body class)
═══════════════════════════════════════════════════ */

body.page-slug-understand-apoe4,
body.page-slug-caregiver-instructions,
body.page-slug-caregivers-where-to-get-help,
body.page-slug-research-updates-and-developments,
body.page-slug-symptomatic-lifestyle,
body.page-slug-symptomatic-treatment-options,
body.page-slug-testing-labs-imaging-and-more,
body.page-slug-the-informed-patient,
body.page-slug-register {
  background-color: #f8f5f0 !important;
}

/* ═══════════════════════════════════════════════════
   3. TYPOGRAPHY — GLOBAL
═══════════════════════════════════════════════════ */

h1, h2, h3, h4, h5, h6 {
  font-family: 'Cormorant Garamond', serif !important;
  color: #f0ece4 !important;
}

.entry-title {
  font-family: 'Cormorant Garamond', serif !important;
  font-weight: 600 !important;
  color: #f0ece4 !important;
}

.category-book-reviews .entry-title {
  font-style: italic !important;
  color: #c8963e !important;
}

.entry-content p {
  font-family: 'DM Sans', sans-serif !important;
  color: #b0aaa0 !important;
  font-size: 17px !important;
  line-height: 1.75 !important;
}

a { color: #2BB5A0 !important; text-decoration: none !important; }
a:hover { color: #c8963e !important; }

blockquote {
  border-left: 3px solid #c8963e !important;
  background: rgba(200,150,62,0.05) !important;
  padding: 16px 24px !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.2rem !important;
  font-style: italic !important;
  color: #d4cfc6 !important;
  margin: 28px 0 !important;
}

hr {
  border: none !important;
  border-top: 1px solid rgba(200,150,62,0.15) !important;
  margin: 44px 0 !important;
}

.entry-meta, .posted-on, .byline, .cat-links {
  font-family: 'DM Mono', monospace !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #7a7468 !important;
}

.page-title, .archive-title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 2.5rem !important;
  font-weight: 600 !important;
  color: #f0ece4 !important;
  border-bottom: 1px solid rgba(200,150,62,0.15) !important;
  padding-bottom: 16px !important;
  margin-bottom: 32px !important;
}

.category-book-reviews .page-title::before {
  content: "Clinical Book Reviews";
  display: block;
  font-family: 'DM Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #2BB5A0;
  margin-bottom: 8px;
}

/* ═══════════════════════════════════════════════════
   4. TABLES
═══════════════════════════════════════════════════ */

.entry-content table { width: 100% !important; border-collapse: collapse !important; font-size: 14px !important; }
.entry-content table th {
  background: #14273f !important; color: #7a7468 !important;
  font-family: 'DM Mono', monospace !important; font-size: 10px !important;
  letter-spacing: 0.12em !important; text-transform: uppercase !important;
  padding: 10px 14px !important; border-bottom: 1px solid rgba(200,150,62,0.15) !important;
  text-align: left !important;
}
.entry-content table td {
  padding: 12px 14px !important; border-bottom: 1px solid rgba(200,150,62,0.07) !important;
  color: #b0aaa0 !important; vertical-align: top !important;
}

/* ═══════════════════════════════════════════════════
   5. BUTTONS — GLOBAL
═══════════════════════════════════════════════════ */

.wp-block-button__link, .button, button[type="submit"] {
  background-color: #c8963e !important; color: #0d1b2e !important;
  font-family: 'DM Sans', sans-serif !important; font-weight: 600 !important;
  border: none !important; border-radius: 4px !important;
  padding: 12px 24px !important; letter-spacing: 0.05em !important;
}
.wp-block-button__link:hover, .button:hover {
  background-color: #dba84e !important; color: #0d1b2e !important;
}

/* ═══════════════════════════════════════════════════
   6. HEADER & NAVIGATION
═══════════════════════════════════════════════════ */

.main-navigation a[href*="register"],
.main-navigation a[href*="apoe4-insights-premium"] {
    background-color: #b8972e !important;
    color: #ffffff !important;
    padding: 8px 18px !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
}

.main-navigation a[href*="register"]:hover,
.main-navigation a[href*="apoe4-insights-premium"]:hover {
    background-color: #a07a20 !important;
    color: #ffffff !important;
}

/* Nav link colors */
.main-navigation .nav-menu > li > a,
header .main-navigation a {
    color: #e8e0cc !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
}

/* Nav link hover */
.main-navigation .nav-menu > li > a:hover {
    color: #b8972e !important;
}

/* Home Page — remove red color */
.main-navigation .nav-menu > li.current-menu-item > a,
.main-navigation .nav-menu > li.current_page_item > a {
    color: #e8e0cc !important;
}

/* Dropdown panel background */
.main-navigation .sub-menu {
    background-color: #0d1b2e !important;
    border: 1px solid #b8972e !important;
    border-radius: 8px !important;
    padding: 8px 0 !important;
    min-width: 220px !important;
}

/* Dropdown items */
.main-navigation .sub-menu a {
    color: #c8bfa8 !important;
    font-size: 13px !important;
    padding: 9px 18px !important;
    display: block !important;
}

/* Dropdown item hover */
.main-navigation .sub-menu a:hover {
    color: #b8972e !important;
    background-color: rgba(184,151,46,0.08) !important;
}

/* Become a Member — gold button */
.main-navigation .nav-menu > li > a[href*="register"] {
    background-color: #b8972e !important;
    color: #0d1b2e !important;
    padding: 8px 18px !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
}

.main-navigation .nav-menu > li > a[href*="register"]:hover {
    background-color: #a07a20 !important;
    color: #ffffff !important;
}

/* Dark navy navbar background */
.site-header,
header.site-header,
#masthead {
    background-color: #0d1b2e !important;
}

/* Fix Become a Member text to white */
.main-navigation .nav-menu > li > a[href*="register"] {
    color: #ffffff !important;
}

.main-navigation .nav-menu > li > a[href*="register"]:hover {
    color: #ffffff !important;
}

/* Increase navbar height and padding */
.kadence-header .header-main-inner-wrap,
.kadence-main-header-inner-wrap {
    min-height: 80px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

/* Fix the white gap — Kadence sticky placeholder */
.kadence-sticky-header-offset,
#kadence-sticky-placeholder,
.entry-hero-container-inner {
    display: none !important;
}

/* Also target the gap between header and content */
.site-header + .site-content,
.site-header + div,
#wrapper-navbar + div {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Ensure full width dark background across entire header */
#masthead,
.kadence-header,
.site-header,
header#masthead {
    background-color: #0d1b2e !important;
}

/* Nav link hover color */
.main-navigation a:hover,
.site-header a:hover,
header a:hover {
  color: #25c4a4 !important;
  transition: color 0.2s ease;
}

/* ═══════════════════════════════════════════════════
   7. POST CARDS — ARCHIVE / BLOG LOOP
═══════════════════════════════════════════════════ */

.entry-summary,
.loop-entry,
.loop-entry .entry-wrapper,
.loop-entry .content-bg,
.hentry .content-bg,
article.type-post.loop-entry,
.content-style-boxed .loop-entry,
.content-style-boxed .loop-entry .entry-wrapper,
.content-style-boxed .loop-entry .content-bg,
.kadence-blog-wrap .entry,
.kadence-blog-wrap article {
  background-color: #0d1b2e !important;
  border-radius: 8px !important;
}

.loop-entry .entry-title a,
.loop-entry .entry-title,
.kadence-blog-wrap .entry-title a,
.kadence-blog-wrap .entry-title { color: #2BB5A0 !important; }

.loop-entry .entry-summary p,
.loop-entry p,
.kadence-blog-wrap .entry-summary p { color: #ffffff !important; }

.loop-entry .entry-taxonomies a,
.kadence-blog-wrap .entry-taxonomies a,
.loop-entry .cat-links a,
.loop-entry .entry-meta,
.loop-entry .entry-meta a,
.kadence-blog-wrap .entry-meta,
.kadence-blog-wrap .entry-meta a { color: #c8963e !important; }

.loop-entry .more-link,
.kadence-blog-wrap .more-link { color: #2BB5A0 !important; }

/* ═══════════════════════════════════════════════════
   8. SINGLE POST / PAGE ELEMENTS
═══════════════════════════════════════════════════ */

.entry-hero, .post-thumbnail, .wp-post-image { display: none !important; }

.wp-block-kadence-rowlayout h2,
.kt-row-layout-inner h2,
section h2 { color: #ffffff !important; }

.entry-content > *:first-child,
.page-content > *:first-child { padding-top: 48px !important; }

/* ═══════════════════════════════════════════════════
   9. SIDEBAR, FOOTER, COMMENTS
═══════════════════════════════════════════════════ */

.widget-title {
  font-family: 'Cormorant Garamond', serif !important; color: #c8963e !important;
  font-size: 1.2rem !important; border-bottom: 1px solid rgba(200,150,62,0.15) !important;
  padding-bottom: 8px !important; margin-bottom: 16px !important;
}

.site-footer {
  background-color: #080e18 !important;
  border-top: 1px solid rgba(200,150,62,0.15) !important;
  color: #7a7468 !important;
}

.comment-content { color: #b0aaa0 !important; font-family: 'DM Sans', sans-serif !important; }
.comment-author { color: #f0ece4 !important; font-weight: 600 !important; }

/* ═══════════════════════════════════════════════════
   10. SIMILAR POSTS HEADING
═══════════════════════════════════════════════════ */

.entry-related h2, .entry-related .widget-title,
.related-posts h2, h2.entry-related-title {
  color: #0d1b2e !important; opacity: 1 !important;
}

/* ═══════════════════════════════════════════════════
   11. MAILPOET FORMS
═══════════════════════════════════════════════════ */

.mailpoet_form {
  background: #14273f !important; border: 1px solid rgba(200,150,62,0.15) !important;
  border-radius: 6px !important; padding: 24px !important;
}
.mailpoet_form input[type="email"],
.mailpoet_form input[type="text"] {
  background: #0d1b2e !important; border: 1px solid rgba(200,150,62,0.2) !important;
  color: #e8e4dc !important; border-radius: 4px !important;
}

/* Podcast page notify block */
#mailpoet_form_1 { background: transparent !important; border: none !important; padding: 0 !important; }
#mailpoet_form_1 .mailpoet_text,
#mailpoet_form_1 .mailpoet_email {
  background: rgba(255,255,255,.1) !important; border: 1px solid rgba(255,255,255,.2) !important;
  border-radius: 10px !important; padding: 11px 14px !important; font-size: .9rem !important;
  color: #ffffff !important; width: 100% !important; margin-bottom: 10px !important;
}
#mailpoet_form_1 .mailpoet_submit {
  background: #1a7f74 !important; color: #ffffff !important; border: none !important;
  border-radius: 10px !important; padding: 11px 20px !important; font-size: .9rem !important;
  font-weight: 600 !important; cursor: pointer !important; width: 100% !important;
}
#mailpoet_form_1 .mailpoet_submit:hover { background: #22a899 !important; }
#mailpoet_form_1 .mailpoet_message { color: #22a899 !important; font-weight: 500 !important; margin-top: 10px !important; }

/* ═══════════════════════════════════════════════════
   12. MEMBERPRESS GLOBAL FORM FIELDS
═══════════════════════════════════════════════════ */

.mp-form-row label {
  color: #b0aaa0 !important; font-family: 'DM Sans', sans-serif !important; font-size: 14px !important;
}
.mp-form-row input, .mp-form-row select {
  background: #14273f !important; border: 1px solid rgba(200,150,62,0.2) !important;
  color: #e8e4dc !important; border-radius: 4px !important; padding: 10px 14px !important;
}

/* ═══════════════════════════════════════════════════
   13. TOP-RIGHT PROFILE MENU
═══════════════════════════════════════════════════ */

.profile-menu__text span,
.profile-menu__text--small,
.profile-menu__button span {
  color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; opacity: 1 !important;
}
.profile-menu__arrow_down { fill: #ffffff !important; color: #ffffff !important; }
.profile-menu__avatar { border: 2px solid #c8963e !important; }

/* ═══════════════════════════════════════════════════
   14. MEMBERPRESS ACCOUNT PAGE (ID 13) — DARK NAVY
═══════════════════════════════════════════════════ */

body.page-id-13,
body.page-id-13 #page,
body.page-id-13 .site,
body.page-id-13 #content,
body.page-id-13 .site-content,
body.page-id-13 main#main,
body.page-id-13 .entry,
body.page-id-13 .entry-content,
body.page-id-13 #mepr-account-content,
body.page-id-13 .mepr-account-container,
body.page-id-13 .mepr-main-content,
body.page-id-13 .mepr-right-content,
body.page-id-13 .mepr-content-area,
body.page-id-13 .mepr-app-layout,
body.page-id-13 .mepr-pro-template,
body.page-id-13 div[class*="mepr-main"],
body.page-id-13 div[class*="mepr-content"],
body.page-id-13 div[class*="app-layout"] {
  background-color: #0d1b2e !important;
}

/* Account nav — ID-level to beat MemberPress inline !important */
#mepr-account-nav,
#mepr-account-nav.mepr-nav,
nav#mepr-account-nav[id="mepr-account-nav"] {
  background: #0d1b2e !important;
  background-color: #0d1b2e !important;
}

#mepr-account-content,
#mepr-account-content.mp_wrapper,
div#mepr-account-content[id="mepr-account-content"] {
  background-color: #0d1b2e !important;
}

#mepr-account-nav a,
#mepr-account-nav li a,
#mepr-account-nav .mepr-nav-item a { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; }
#mepr-account-nav a:hover { color: #c8963e !important; -webkit-text-fill-color: #c8963e !important; }
#mepr-account-nav .current a,
#mepr-account-nav .active a { color: #c8963e !important; -webkit-text-fill-color: #c8963e !important; }

body.page-id-13 h1, body.page-id-13 h2, body.page-id-13 h3, body.page-id-13 h4,
body.page-id-13 p, body.page-id-13 span, body.page-id-13 div, body.page-id-13 td,
body.page-id-13 label, body.page-id-13 li, body.page-id-13 small, body.page-id-13 strong {
  color: #f0ece4 !important; -webkit-text-fill-color: #f0ece4 !important; opacity: 1 !important;
}

body.page-id-13 .mepr-account-page-action,
body.page-id-13 input[type="submit"],
body.page-id-13 button.mepr-btn,
body.page-id-13 a.mepr-btn {
  background-color: transparent !important; border: 2px solid #c8963e !important;
  color: #c8963e !important; -webkit-text-fill-color: #c8963e !important;
  border-radius: 4px !important; font-weight: 600 !important;
}
body.page-id-13 .mepr-account-page-action:hover,
body.page-id-13 input[type="submit"]:hover,
body.page-id-13 button.mepr-btn:hover {
  background-color: #c8963e !important; color: #0d1b2e !important; -webkit-text-fill-color: #0d1b2e !important;
}

/* ═══════════════════════════════════════════════════
   15. MEMBERPRESS CHECKOUT PAGE (ID 190) — CREAM
═══════════════════════════════════════════════════ */

body.page-id-190,
body.page-id-190 #page,
body.page-id-190 .site,
body.page-id-190 #content,
body.page-id-190 .site-content,
body.page-id-190 main#main,
body.page-id-190 .entry,
body.page-id-190 .entry-content,
body.page-id-190 .mepr-checkout-page,
body.page-id-190 #mepr_checkout_form_container,
body.page-id-190 .mepr-purchase-form {
  background-color: #f5f0e8 !important;
}

html body.page-id-190 h1, html body.page-id-190 h2, html body.page-id-190 h3,
html body.page-id-190 h4, html body.page-id-190 p, html body.page-id-190 span,
html body.page-id-190 div, html body.page-id-190 td, html body.page-id-190 th,
html body.page-id-190 li, html body.page-id-190 label, html body.page-id-190 small,
html body.page-id-190 strong, html body.page-id-190 em {
  color: #1a1a1a !important; -webkit-text-fill-color: #1a1a1a !important; opacity: 1 !important;
}

body.page-id-190 input[type="text"], body.page-id-190 input[type="email"],
body.page-id-190 input[type="password"], body.page-id-190 input[type="tel"],
body.page-id-190 select, body.page-id-190 textarea {
  background-color: #ffffff !important; border: 1px solid #b5a48a !important;
  color: #1a1a1a !important; -webkit-text-fill-color: #1a1a1a !important;
}
body.page-id-190 input:focus, body.page-id-190 select:focus {
  border-color: #8b6914 !important; outline: none !important;
  box-shadow: 0 0 0 2px rgba(139,105,20,0.2) !important;
}

body.page-id-190 .mepr-submit,
body.page-id-190 input[type="submit"],
body.page-id-190 button[type="submit"],
body.page-id-190 #mepr_checkout_submit {
  background-color: #7a5c10 !important; color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important; border: none !important;
  border-radius: 4px !important; font-weight: 700 !important; opacity: 1 !important;
}
body.page-id-190 .mepr-submit:hover,
body.page-id-190 input[type="submit"]:hover { background-color: #4a3808 !important; }

body.page-id-190 .mepr-coupon-toggle,
body.page-id-190 .mepr-coupon-toggle a,
body.page-id-190 .mepr-have-coupon a {
  color: #7a5c10 !important; -webkit-text-fill-color: #7a5c10 !important;
}

body.page-id-190 hr { border-color: #c9b99a !important; }
body.page-id-190 .mepr-product-image,
body.page-id-190 .mepr-product-icon {
  background-color: #e8e0d0 !important; border: 1px solid #c9b99a !important;
}

/* ═══════════════════════════════════════════════════
   16. CONTACT PAGE (ID 460)
═══════════════════════════════════════════════════ */

body.page-id-460 .wp-block-heading,
body.page-id-460 h2, body.page-id-460 h3,
body.page-id-460 .entry-content > p,
body.page-id-460 .wp-block-paragraph {
  color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
}

body.page-id-460 label,
body.page-id-460 .forminator-label,
body.page-id-460 .forminator-field-label,
body.page-id-460 legend {
  color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
}

/* Labels inside form card — dark */
body.page-id-460 .forminator-custom-form .forminator-field label,
body.page-id-460 .forminator-custom-form .forminator-label,
body.page-id-460 .forminator-custom-form legend,
body.page-id-460 .forminator-row .forminator-label,
body.page-id-460 .forminator-ui label {
  color: #1a1a1a !important; -webkit-text-fill-color: #1a1a1a !important;
}

body.page-id-460 input[type="text"], body.page-id-460 input[type="email"],
body.page-id-460 select, body.page-id-460 textarea,
body.page-id-460 input::placeholder, body.page-id-460 textarea::placeholder {
  color: #1a1a1a !important; -webkit-text-fill-color: #1a1a1a !important;
  background-color: #ffffff !important;
}

body.page-id-460 .forminator-button,
body.page-id-460 .forminator-button-submit,
body.page-id-460 input[type="submit"],
body.page-id-460 button[type="submit"] {
  background-color: #7a5c10 !important; color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important; border: none !important; border-radius: 4px !important;
}
body.page-id-460 .forminator-button:hover { background-color: #4a3808 !important; }

body.page-id-460 .apoe4-star {
  color: transparent !important; -webkit-text-fill-color: transparent !important;
  -webkit-text-stroke: 1.5px #1a1a1a !important;
  font-size: 1.75rem !important; cursor: pointer !important; transition: color 0.15s !important;
}

/* ═══════════════════════════════════════════════════
   17. DONATE PAGE (ID 87)
═══════════════════════════════════════════════════ */

body.page-id-87 h1, body.page-id-87 h2, body.page-id-87 h3,
body.page-id-87 p, body.page-id-87 li, body.page-id-87 span, body.page-id-87 a {
  color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; opacity: 1 !important;
}
body.page-id-87 blockquote,
body.page-id-87 blockquote p { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; }
body.page-id-87 blockquote p:last-child { color: #c8963e !important; -webkit-text-fill-color: #c8963e !important; }
body.page-id-87 a[href*="mailto"] { color: #c8963e !important; -webkit-text-fill-color: #c8963e !important; }

/* ═══════════════════════════════════════════════════
   18. HOME PAGE LAYOUT FIXES
═══════════════════════════════════════════════════ */

.home .entry-content, .home .content-container,
.home .site-main, .home article.page {
  padding: 0 !important; margin: 0 !important; max-width: 100% !important;
}
.home .kadence-inner-column-inner,
.home .wp-block-group__inner-container { padding: 0 !important; }

/* ═══════════════════════════════════════════════════
   19. APOE4-PAGE DESIGN SYSTEM
   (Home page hero, mission, pillars, science,
    story, services, CTA, animations)
═══════════════════════════════════════════════════ */

.apoe4-page {
  font-family: 'DM Sans', sans-serif;
  color: var(--apoe-cream);
  overflow-x: hidden;
}

/* Hero */
.apoe4-hero {
  min-height: 100vh; display: grid; grid-template-columns: 1fr 1fr;
  background: var(--apoe-deep-navy); position: relative; overflow: hidden;
}
.apoe4-hero::before {
  content: ''; position: absolute; width: 700px; height: 700px; border-radius: 50%;
  background: radial-gradient(circle, rgba(200,150,62,0.12) 0%, transparent 70%);
  top: -150px; right: -100px; pointer-events: none;
}
.apoe4-hero::after {
  content: ''; position: absolute; width: 500px; height: 500px; border-radius: 50%;
  background: radial-gradient(circle, rgba(44,63,94,0.6) 0%, transparent 70%);
  bottom: -100px; left: 100px; pointer-events: none;
}
.apoe4-hero-left {
  display: flex; flex-direction: column; justify-content: center;
  padding: 8rem 4rem 8rem 6rem; position: relative; z-index: 2;
}
.apoe4-hero-right {
  display: flex; align-items: center; justify-content: center;
  padding: 6rem 5rem 6rem 2rem; position: relative; z-index: 2;
}

.apoe4-badge {
  display: inline-flex; align-items: center; gap: 0.6rem;
  font-family: 'DM Mono', monospace; font-size: 0.65rem; letter-spacing: 0.2em;
  text-transform: uppercase; color: var(--apoe-gold);
  border: 1px solid rgba(200,150,62,0.3); padding: 0.45rem 1rem;
  width: fit-content; margin-bottom: 2.5rem; animation: apoeSlideUp 1s ease both;
}
.apoe4-badge::before {
  content: ''; width: 6px; height: 6px; border-radius: 50%;
  background: var(--apoe-gold); animation: apoePulse 2s infinite;
}
@keyframes apoePulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } }

.apoe4-eyebrow {
  font-family: 'DM Mono', monospace; font-size: 0.7rem; letter-spacing: 0.3em;
  text-transform: uppercase; color: var(--apoe-text-muted);
  margin-bottom: 1.2rem; animation: apoeSlideUp 1s 0.1s ease both;
}

.apoe4-hero-name {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(3rem, 5vw, 5.5rem) !important; font-weight: 300 !important;
  line-height: 1.05 !important; color: var(--apoe-white) !important;
  margin-bottom: 0.5rem !important; animation: apoeSlideUp 1s 0.2s ease both;
}
.apoe4-hero-name em { font-style: italic; color: var(--apoe-gold-light); }

.apoe4-credentials {
  font-family: 'DM Mono', monospace; font-size: 0.72rem; letter-spacing: 0.18em;
  color: var(--apoe-gold); margin-bottom: 2.5rem; animation: apoeSlideUp 1s 0.3s ease both;
}

.apoe4-divider {
  width: 60px; height: 1px;
  background: linear-gradient(to right, var(--apoe-gold), transparent); margin-bottom: 2rem;
}

.apoe4-tagline {
  font-family: 'Cormorant Garamond', serif; font-size: clamp(1.2rem, 2vw, 1.65rem);
  font-weight: 300; font-style: italic; color: var(--apoe-text-mid);
  line-height: 1.55; max-width: 500px; margin-bottom: 3rem;
}
.apoe4-tagline strong { color: var(--apoe-cream); font-style: normal; font-weight: 400; }

.apoe4-hero-actions { display: flex; gap: 1.2rem; align-items: center; flex-wrap: wrap; }

/* Buttons */
.apoe4-btn-primary {
  background: var(--apoe-gold) !important; color: var(--apoe-deep-navy) !important;
  font-family: 'DM Sans', sans-serif !important; font-size: 0.75rem !important;
  letter-spacing: 0.12em !important; text-transform: uppercase !important;
  font-weight: 500 !important; padding: 1rem 2.2rem !important;
  text-decoration: none !important; border: none !important; border-radius: 0 !important;
  display: inline-block; transition: opacity 0.3s !important;
}
.apoe4-btn-primary:hover { opacity: 0.85 !important; color: var(--apoe-deep-navy) !important; }

.apoe4-btn-ghost {
  font-family: 'DM Sans', sans-serif !important; font-size: 0.75rem !important;
  letter-spacing: 0.12em !important; text-transform: uppercase !important;
  color: var(--apoe-text-mid) !important; text-decoration: none !important;
  display: inline-flex; align-items: center; gap: 0.5rem;
  transition: color 0.3s !important; background: none !important;
  border: none !important; padding: 0 !important;
}
.apoe4-btn-ghost::after { content: ' →'; }
.apoe4-btn-ghost:hover { color: var(--apoe-cream) !important; }

/* Portrait frame */
.apoe4-portrait-frame { position: relative; width: 360px; max-width: 100%; }
.apoe4-portrait-frame::before, .apoe4-portrait-frame::after {
  content: ''; position: absolute; width: 40px; height: 40px;
  border-color: var(--apoe-gold); border-style: solid; z-index: 3; pointer-events: none;
}
.apoe4-portrait-frame::before { top: -12px; left: -12px; border-width: 1px 0 0 1px; }
.apoe4-portrait-frame::after { bottom: -12px; right: -12px; border-width: 0 1px 1px 0; }
.apoe4-portrait-frame img { width: 100%; display: block; filter: grayscale(15%) contrast(1.05); }

.apoe4-portrait-tag {
  position: absolute; background: rgba(10,15,30,0.92);
  border: 1px solid rgba(200,150,62,0.25); padding: 0.7rem 1rem;
  font-family: 'DM Mono', monospace; font-size: 0.6rem; letter-spacing: 0.15em;
  color: var(--apoe-gold); text-transform: uppercase; white-space: nowrap;
  backdrop-filter: blur(4px); z-index: 4;
}
.apoe4-portrait-tag-1 { top: 8%; right: -100px; }
.apoe4-portrait-tag-2 { bottom: 22%; left: -110px; }
.apoe4-portrait-tag-3 { bottom: 8%; right: -90px; }

/* Mission band */
.apoe4-mission {
  background: linear-gradient(135deg, var(--apoe-slate) 0%, var(--apoe-navy) 100%);
  border-top: 1px solid rgba(200,150,62,0.15);
  border-bottom: 1px solid rgba(200,150,62,0.15);
  padding: 5rem 7rem; text-align: center;
}
.apoe4-section-label {
  font-family: 'DM Mono', monospace !important; font-size: 0.65rem !important;
  letter-spacing: 0.3em !important; text-transform: uppercase !important;
  color: var(--apoe-gold) !important; margin-bottom: 1.5rem !important; display: block;
}
.apoe4-mission-quote {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(1.5rem, 3vw, 2.6rem) !important; font-weight: 300 !important;
  line-height: 1.5 !important; color: var(--apoe-white) !important;
  margin-bottom: 1.5rem !important; max-width: 860px; margin-left: auto; margin-right: auto;
}
.apoe4-mission-quote em { color: var(--apoe-gold-light); }
.apoe4-mission-sub { font-size: 0.9rem; line-height: 1.85; color: var(--apoe-text-mid); max-width: 680px; margin: 0 auto; }

/* Sections */
.apoe4-section { padding: 7rem 6rem; }
.apoe4-section--dark { background: var(--apoe-deep-navy); }
.apoe4-section--mid  { background: var(--apoe-navy); border-top: 1px solid rgba(200,150,62,0.1); }
.apoe4-section--slate { background: var(--apoe-slate); border-top: 1px solid rgba(200,150,62,0.1); }

.apoe4-section-header {
  display: grid; grid-template-columns: 1fr auto;
  align-items: end; gap: 2rem; margin-bottom: 4rem;
}
.apoe4-section-title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(2rem, 3.5vw, 3.5rem) !important; font-weight: 300 !important;
  line-height: 1.15 !important; color: var(--apoe-white) !important; margin: 0 !important;
}
.apoe4-section-title em { color: var(--apoe-gold-light); font-style: italic; }
.apoe4-section-desc { font-size: 0.85rem; line-height: 1.8; color: var(--apoe-text-muted); max-width: 340px; text-align: right; }

/* Pillars grid */
.apoe4-pillars-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5px; background: rgba(200,150,62,0.1); }
.apoe4-pillar-card {
  background: var(--apoe-deep-navy); padding: 3rem 2.5rem;
  position: relative; overflow: hidden; transition: background 0.4s; cursor: default;
}
.apoe4-pillar-card::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px;
  background: var(--apoe-gold); transform: scaleX(0); transition: transform 0.4s; transform-origin: left;
}
.apoe4-pillar-card:hover { background: var(--apoe-slate); }
.apoe4-pillar-card:hover::after { transform: scaleX(1); }
.apoe4-pillar-number {
  font-family: 'Cormorant Garamond', serif; font-size: 3.5rem; font-weight: 300;
  color: rgba(200,150,62,0.12); line-height: 1; margin-bottom: 1.5rem; transition: color 0.4s;
}
.apoe4-pillar-card:hover .apoe4-pillar-number { color: rgba(200,150,62,0.28); }
.apoe4-pillar-icon { font-size: 1.5rem; margin-bottom: 1rem; }
.apoe4-pillar-title {
  font-family: 'Cormorant Garamond', serif !important; font-size: 1.4rem !important;
  font-weight: 400 !important; color: var(--apoe-white) !important;
  margin-bottom: 1rem !important; line-height: 1.2 !important;
}
.apoe4-pillar-body { font-size: 0.82rem; line-height: 1.8; color: var(--apoe-text-muted); }

/* Science / stats */
.apoe4-science-grid { display: grid; grid-template-columns: 1fr 1.2fr; gap: 5rem; align-items: center; }
.apoe4-stat-cluster { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; background: rgba(200,150,62,0.1); }
.apoe4-stat-box { background: var(--apoe-navy); padding: 2.5rem; transition: background 0.3s; }
.apoe4-stat-box:first-child { grid-column: 1 / -1; background: var(--apoe-slate); padding: 3rem; }
.apoe4-stat-value { font-family: 'Cormorant Garamond', serif; font-size: 3.5rem; font-weight: 300; color: var(--apoe-gold); line-height: 1; margin-bottom: 0.5rem; }
.apoe4-stat-unit { font-size: 1.2rem; color: var(--apoe-gold-light); }
.apoe4-stat-label { font-size: 0.78rem; line-height: 1.7; color: var(--apoe-text-muted); margin-top: 0.8rem; }
.apoe4-stat-label strong { color: var(--apoe-cream); }
.apoe4-stat-label em { color: var(--apoe-text-muted); font-style: italic; }
.apoe4-science-body { font-size: 0.88rem; line-height: 1.9; color: var(--apoe-text-mid); margin-bottom: 1.5rem; }
.apoe4-science-body strong { color: var(--apoe-cream); font-weight: 500; }
.apoe4-science-note { display: flex; gap: 1rem; padding: 1.5rem; border: 1px solid rgba(200,150,62,0.2); background: rgba(200,150,62,0.04); margin-top: 2rem; }
.apoe4-science-note-bar { width: 2px; background: var(--apoe-gold); flex-shrink: 0; }
.apoe4-science-note p { font-family: 'Cormorant Garamond', serif; font-size: 1.05rem; font-style: italic; color: var(--apoe-gold-pale); line-height: 1.6; margin: 0 !important; }

/* Story section */
.apoe4-story { background: var(--apoe-deep-navy); padding: 7rem 6rem; position: relative; overflow: hidden; }
.apoe4-story::before {
  content: '"'; position: absolute; top: 3rem; left: 4rem;
  font-family: 'Cormorant Garamond', serif; font-size: 18rem;
  color: rgba(200,150,62,0.04); line-height: 1; pointer-events: none; font-style: italic;
}
.apoe4-story-inner { max-width: 820px; position: relative; z-index: 1; }
.apoe4-story-pull {
  font-family: 'Cormorant Garamond', serif; font-size: clamp(1.3rem, 2.5vw, 2rem);
  font-weight: 300; font-style: italic; color: var(--apoe-white);
  line-height: 1.5; margin-bottom: 3rem; padding-left: 2rem; border-left: 2px solid var(--apoe-gold);
}
.apoe4-story-body { font-size: 0.88rem; line-height: 1.9; color: var(--apoe-text-mid); margin-bottom: 1.5rem; }
.apoe4-story-body strong { color: var(--apoe-cream); font-weight: 500; }
.apoe4-story-sig { display: flex; align-items: center; gap: 1.5rem; margin-top: 3rem; padding-top: 2rem; border-top: 1px solid rgba(200,150,62,0.15); }
.apoe4-sig-monogram { width: 56px; height: 56px; border: 1px solid rgba(200,150,62,0.4); display: flex; align-items: center; justify-content: center; font-family: 'Cormorant Garamond', serif; font-size: 1.4rem; color: var(--apoe-gold); flex-shrink: 0; }
.apoe4-sig-name { color: var(--apoe-cream); font-weight: 500; font-size: 0.88rem; margin-bottom: 0.3rem; }
.apoe4-sig-text { font-size: 0.78rem; color: var(--apoe-text-muted); line-height: 1.6; }

/* Services list */
.apoe4-services-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: rgba(200,150,62,0.1); margin-top: 4rem; }
.apoe4-service-item { background: var(--apoe-slate); padding: 3rem; display: flex; gap: 2rem; transition: background 0.3s; }
.apoe4-service-item:hover { background: var(--apoe-steel); }
.apoe4-service-num { font-family: 'DM Mono', monospace; font-size: 0.65rem; letter-spacing: 0.15em; color: var(--apoe-gold); padding-top: 0.3rem; flex-shrink: 0; }
.apoe4-service-title { font-family: 'Cormorant Garamond', serif !important; font-size: 1.3rem !important; font-weight: 400 !important; color: var(--apoe-white) !important; margin-bottom: 0.8rem !important; line-height: 1.2 !important; }
.apoe4-service-desc { font-size: 0.8rem; line-height: 1.8; color: var(--apoe-text-muted); margin: 0; }

/* CTA section */
.apoe4-cta { background: var(--apoe-deep-navy); padding: 9rem 6rem; text-align: center; position: relative; overflow: hidden; }
.apoe4-cta::before { content: ''; position: absolute; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(200,150,62,0.08) 0%, transparent 70%); top: 50%; left: 50%; transform: translate(-50%, -50%); pointer-events: none; }
.apoe4-cta-inner { position: relative; z-index: 1; max-width: 700px; margin: 0 auto; }
.apoe4-cta-headline { font-family: 'Cormorant Garamond', serif !important; font-size: clamp(2rem, 4vw, 4rem) !important; font-weight: 300 !important; line-height: 1.2 !important; color: var(--apoe-white) !important; margin-bottom: 1.5rem !important; }
.apoe4-cta-headline em { color: var(--apoe-gold-light); }
.apoe4-cta-body { font-size: 0.88rem; line-height: 1.8; color: var(--apoe-text-muted); margin-bottom: 3rem; }
.apoe4-cta-buttons { display: flex; justify-content: center; gap: 1.5rem; flex-wrap: wrap; }

/* Disclaimer footer bar */
.apoe4-disclaimer-bar { background: var(--apoe-navy); border-top: 1px solid rgba(200,150,62,0.1); padding: 2rem 6rem; text-align: center; }
.apoe4-disclaimer-bar p { font-family: 'DM Mono', monospace; font-size: 0.6rem; letter-spacing: 0.08em; color: var(--apoe-text-muted); line-height: 1.8; margin: 0; }

/* Scroll reveal animations */
.apoe4-reveal { opacity: 0; transform: translateY(36px); transition: opacity 0.8s ease, transform 0.8s ease; }
.apoe4-reveal.apoe4-visible { opacity: 1; transform: translateY(0); }
.apoe4-delay-1 { transition-delay: 0.1s; }
.apoe4-delay-2 { transition-delay: 0.22s; }
.apoe4-delay-3 { transition-delay: 0.34s; }
@keyframes apoeSlideUp { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: translateY(0); } }

/* ═══════════════════════════════════════════════════
   20. PODCAST PAGE STYLES (.apoe4-podcast)
═══════════════════════════════════════════════════ */

.apoe4-podcast *, .apoe4-podcast *::before, .apoe4-podcast *::after { box-sizing: border-box; margin: 0; padding: 0; }
.apoe4-podcast { font-family: 'DM Sans', system-ui, sans-serif; color: #1a2e42; line-height: 1.6; }

.apoe4-podcast .podcast-hero { background: #0d1b2a; position: relative; padding: 60px 24px 80px; overflow: hidden; border-radius: 12px; }
.apoe4-podcast .podcast-hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 60% 80% at 80% 50%, rgba(26,127,116,.25) 0%, transparent 70%), radial-gradient(ellipse 40% 60% at 20% 80%, rgba(201,168,76,.12) 0%, transparent 60%); pointer-events: none; }
.apoe4-podcast .hero-inner { max-width: 700px; margin: 0 auto; position: relative; z-index: 2; }
.apoe4-podcast .hero-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(26,127,116,.18); border: 1px solid rgba(26,200,185,.25); border-radius: 100px; padding: 6px 16px; font-size: .78rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #22a899; margin-bottom: 24px; }
.apoe4-podcast .hero-title { font-family: 'DM Serif Display', Georgia, serif; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.12; color: #ffffff; margin-bottom: 16px; }
.apoe4-podcast .hero-title em { font-style: italic; color: #e8c96a; }
.apoe4-podcast .hero-sub { font-size: 1rem; color: rgba(255,255,255,.72); font-weight: 300; max-width: 560px; margin-bottom: 28px; line-height: 1.75; }
.apoe4-podcast .hero-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 36px; }
.apoe4-podcast .pill { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.15); border-radius: 100px; padding: 5px 14px; font-size: .78rem; color: rgba(255,255,255,.7); }
.apoe4-podcast .notify-block { background: rgba(255,255,255,.06); border: 1px solid rgba(201,168,76,.3); border-radius: 16px; padding: 28px 24px; max-width: 500px; }
.apoe4-podcast .notify-label { font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #c9a84c; margin-bottom: 8px; }
.apoe4-podcast .notify-heading { font-family: 'DM Serif Display', Georgia, serif; font-size: 1.35rem; color: #ffffff; margin-bottom: 8px; }
.apoe4-podcast .notify-desc { font-size: .86rem; color: rgba(255,255,255,.6); margin-bottom: 16px; line-height: 1.6; }
.apoe4-podcast .notify-privacy { margin-top: 10px; font-size: .72rem; color: rgba(255,255,255,.35); }

.apoe4-podcast .about-wrap { background: #ffffff; border-top: 1px solid #ede8e0; border-bottom: 1px solid #ede8e0; }
.apoe4-podcast .a4-section { max-width: 860px; margin: 0 auto; padding: 64px 24px; }
.apoe4-podcast .section-eyebrow { font-size: .73rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #1a7f74; margin-bottom: 10px; }
.apoe4-podcast .section-title { font-family: 'DM Serif Display', Georgia, serif; font-size: clamp(1.7rem, 3vw, 2.4rem); line-height: 1.18; color: #0d1b2a; margin-bottom: 12px; }
.apoe4-podcast .section-title em { font-style: italic; color: #1a7f74; }
.apoe4-podcast .section-desc { font-size: .96rem; color: #5a7a8a; max-width: 600px; line-height: 1.75; margin-bottom: 40px; }

.apoe4-podcast .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.apoe4-podcast .about-host { background: #f7f4ef; border-radius: 18px; padding: 28px; border: 1px solid #ede8e0; text-align: center; }
.apoe4-podcast .host-avatar { width: 90px; height: 90px; border-radius: 50%; margin: 0 auto 14px; overflow: hidden; background: linear-gradient(135deg, #2c4a6e, #1a7f74); }
.apoe4-podcast .host-avatar img { width: 100%; height: 100%; object-fit: cover; }
.apoe4-podcast .host-name { font-family: 'DM Serif Display', Georgia, serif; font-size: 1.2rem; color: #0d1b2a; margin-bottom: 4px; }
.apoe4-podcast .host-title { font-size: .78rem; color: #5a7a8a; margin-bottom: 14px; }
.apoe4-podcast .host-tags { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; }
.apoe4-podcast .host-tag { background: rgba(26,127,116,.1); color: #1a7f74; border-radius: 100px; padding: 3px 10px; font-size: .72rem; font-weight: 600; }
.apoe4-podcast .about-text h3 { font-family: 'DM Serif Display', Georgia, serif; font-size: 1.4rem; color: #0d1b2a; margin-bottom: 12px; line-height: 1.25; }
.apoe4-podcast .about-text p { font-size: .93rem; color: #5a7a8a; line-height: 1.75; margin-bottom: 12px; }
.apoe4-podcast .about-text p strong { color: #1a2e42; }

.apoe4-podcast .format-wrap { background: #0d1b2a; }
.apoe4-podcast .format-wrap .section-eyebrow { color: #c9a84c; }
.apoe4-podcast .format-wrap .section-title { color: #ffffff; }
.apoe4-podcast .format-wrap .section-title em { color: #e8c96a; }
.apoe4-podcast .format-wrap .section-desc { color: rgba(255,255,255,.6); }
.apoe4-podcast .format-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; }
.apoe4-podcast .format-card { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); border-radius: 14px; padding: 24px 20px; }
.apoe4-podcast .format-card:hover { border-color: rgba(26,200,185,.4); }
.apoe4-podcast .format-icon { width: 40px; height: 40px; border-radius: 10px; background: rgba(26,127,116,.2); display: flex; align-items: center; justify-content: center; margin-bottom: 14px; font-size: 1.2rem; }
.apoe4-podcast .format-card h4 { font-family: 'DM Serif Display', Georgia, serif; font-size: 1rem; color: #ffffff; margin-bottom: 6px; }
.apoe4-podcast .format-card p { font-size: .83rem; color: rgba(255,255,255,.55); line-height: 1.6; }

.apoe4-podcast .episodes-wrap { background: #f7f4ef; }
.apoe4-podcast .episode-list { display: flex; flex-direction: column; gap: 14px; }
.apoe4-podcast .episode-card { background: #ffffff; border: 1px solid #ede8e0; border-radius: 14px; padding: 20px 24px; display: flex; gap: 18px; align-items: flex-start; transition: box-shadow .2s, border-color .2s; }
.apoe4-podcast .episode-card:hover { box-shadow: 0 6px 24px rgba(13,27,42,.07); border-color: #22a899; }
.apoe4-podcast .episode-num { width: 48px; height: 48px; border-radius: 12px; background: #0d1b2a; color: #c9a84c; font-family: 'DM Serif Display', Georgia, serif; font-size: 1.1rem; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.apoe4-podcast .episode-meta { flex: 1; }
.apoe4-podcast .episode-label { font-size: .71rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #1a7f74; margin-bottom: 5px; }
.apoe4-podcast .episode-title { font-family: 'DM Serif Display', Georgia, serif; font-size: 1.05rem; color: #0d1b2a; margin-bottom: 6px; line-height: 1.3; }
.apoe4-podcast .episode-desc { font-size: .83rem; color: #5a7a8a; line-height: 1.6; margin-bottom: 10px; }
.apoe4-podcast .episode-tags { display: flex; flex-wrap: wrap; gap: 5px; }
.apoe4-podcast .ep-tag { background: #f7f4ef; border: 1px solid #ede8e0; border-radius: 100px; padding: 2px 9px; font-size: .71rem; color: #5a7a8a; }
.apoe4-podcast .episode-status { flex-shrink: 0; display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.apoe4-podcast .status-badge { display: inline-flex; align-items: center; gap: 5px; border-radius: 100px; padding: 4px 10px; font-size: .71rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; background: rgba(201,168,76,.12); color: #c9a84c; border: 1px solid rgba(201,168,76,.3); }
.apoe4-podcast .status-dot { width: 5px; height: 5px; border-radius: 50%; background: currentColor; animation: a4pulse 1.8s ease-in-out infinite; }
@keyframes a4pulse { 0%, 100% { opacity: 1; } 50% { opacity: .3; } }
.apoe4-podcast .episode-duration { font-size: .76rem; color: #5a7a8a; }

.apoe4-podcast .platforms-wrap { background: #ffffff; border-top: 1px solid #ede8e0; }
.apoe4-podcast .platform-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 12px; margin-bottom: 24px; }
.apoe4-podcast .platform-card { border: 1.5px solid #ede8e0; border-radius: 12px; padding: 18px 14px; text-align: center; text-decoration: none; color: #1a2e42; background: #f7f4ef; opacity: .55; }
.apoe4-podcast .platform-icon { width: 44px; height: 44px; border-radius: 10px; margin: 0 auto 8px; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; }
.apoe4-podcast .platform-name { font-size: .8rem; font-weight: 600; color: #0d1b2a; margin-bottom: 2px; }
.apoe4-podcast .platform-sub { font-size: .7rem; color: #5a7a8a; }

.apoe4-podcast .cta-wrap { background: linear-gradient(135deg, #0d1b2a 0%, #1a2e42 100%); border-top: 1px solid rgba(201,168,76,.2); }
.apoe4-podcast .cta-inner { max-width: 580px; margin: 0 auto; padding: 64px 24px; text-align: center; }
.apoe4-podcast .cta-title { font-family: 'DM Serif Display', Georgia, serif; font-size: clamp(1.8rem, 3.5vw, 2.6rem); color: #ffffff; margin-bottom: 14px; line-height: 1.15; }
.apoe4-podcast .cta-title em { font-style: italic; color: #e8c96a; }
.apoe4-podcast .cta-desc { font-size: .95rem; color: rgba(255,255,255,.62); margin-bottom: 28px; line-height: 1.75; }
.apoe4-podcast .cta-privacy { font-size: .72rem; color: rgba(255,255,255,.35); margin-top: 12px; }
.apoe4-podcast .a4-footer-note { background: #0d1b2a; text-align: center; padding: 20px; font-size: .76rem; color: rgba(255,255,255,.3); }
.apoe4-podcast .a4-footer-note a { color: #22a899; text-decoration: none; }

/* ═══════════════════════════════════════════════════
   21. MOBILE RESPONSIVE
═══════════════════════════════════════════════════ */

@media (max-width: 1024px) {
  .apoe4-hero { grid-template-columns: 1fr; min-height: auto; }
  .apoe4-hero-left { padding: 8rem 3rem 4rem; }
  .apoe4-hero-right { display: none; }
  .apoe4-mission { padding: 4rem 3rem; }
  .apoe4-section { padding: 5rem 3rem; }
  .apoe4-pillars-grid { grid-template-columns: 1fr; }
  .apoe4-science-grid { grid-template-columns: 1fr; gap: 3rem; }
  .apoe4-services-list { grid-template-columns: 1fr; }
  .apoe4-section-header { grid-template-columns: 1fr; }
  .apoe4-section-desc { text-align: left; max-width: 100%; }
  .apoe4-story { padding: 5rem 3rem; }
  .apoe4-cta { padding: 6rem 3rem; }
  .apoe4-disclaimer-bar { padding: 2rem 3rem; }
  .apoe4-portrait-tag { display: none; }
}

@media (max-width: 768px) {
  .entry-title { font-size: 2rem !important; }
  .entry-content p { font-size: 16px !important; }
  .entry-content table { font-size: 13px !important; }
  .page-title, .archive-title { font-size: 1.8rem !important; }
  .apoe4-podcast .about-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .apoe4-hero-left { padding: 6rem 1.5rem 3rem; }
  .apoe4-hero-actions { flex-direction: column; align-items: flex-start; }
  .apoe4-cta-buttons { flex-direction: column; align-items: center; }
  .apoe4-mission { padding: 3rem 1.5rem; }
  .apoe4-stat-cluster { grid-template-columns: 1fr; }
  .apoe4-stat-box:first-child { grid-column: auto; }
  .apoe4-podcast .episode-card { flex-direction: column; gap: 14px; }
  .apoe4-podcast .episode-status { flex-direction: row; }
}