.elementor-11645 .elementor-element.elementor-element-a51f784{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-11645 .elementor-element.elementor-element-a51f784.e-con{--flex-grow:0;--flex-shrink:0;}/* Start custom CSS *//* @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Poppins:wght@800;900&display=swap');
*/

/* ============================================================
   The Dental Medical Convergence - Book page global CSS
   Paste into Elementor -> Site Settings -> Custom CSS, OR load
   via your child theme. One file covers all 11 content blocks
   plus the sticky purchase bar and the structured-data block.
   Site header and footer rules are intentionally omitted -
   those are handled by the WordPress theme's global header and
   footer.
   ============================================================ */


/* ============================================================
   Defensive armor against hostile WP themes (Astra, Hello,
   Kadence, GeneratePress, etc.). Every page rule below is
   scoped under .dmc-book, so its specificity beats plain
   element body.elementor-page-11645s like  h1{}  or  ul{}  that themes set
   globally. These element-level resets protect the handful of
   unclassed nodes (generic list items, plain paragraphs) that
   the scoped class rules do not already cover. No !important
   was needed - pure specificity.
   ============================================================ */
.dmc-book h1,
.dmc-book h2,
.dmc-book h3,
.dmc-book h4,
.dmc-book h5,
.dmc-book h6 { font-family: inherit !important; }
.dmc-book a { text-decoration: none; }
.dmc-book ul,
.dmc-book ol { list-style: none; }
.dmc-book img,
.dmc-book svg,
.dmc-book video { max-width: 100%; }
.dmc-book button { font-family: inherit; }

/* Zero out Elementor's own HTML-widget wrappers so our sections
   keep full width and do not inherit container padding. */
.dmc-book .elementor-widget-html,
.dmc-book .elementor-widget-html > .elementor-widget-container { padding: 0; margin: 0; }
.dmc-book .elementor-widget-html > .elementor-widget-container > section,
.dmc-book .elementor-widget-html > .elementor-widget-container > div { margin: 0; }
.dmc-book .elementor-section,
.dmc-book .elementor-container { max-width: none; padding: 0; }
.dmc-book .elementor-column,
.dmc-book .elementor-widget-wrap { padding: 0; }

/* ---- Page CSS (from book.html <style>, scoped to .dmc-book) ---- */
    /* ============================================================
       CSS RESET + CUSTOM PROPERTIES
    ============================================================ */
    .dmc-book, .dmc-book *,
    .dmc-book *::before,
    .dmc-book *::after { box-sizing: border-box; margin: 0; padding: 0; }
    .dmc-book { scroll-behavior: smooth; font-size: 16px; }
    .dmc-book img,
    .dmc-book svg,
    .dmc-book video { display: block; max-width: 100%; }
    .dmc-book button { cursor: pointer; font-family: inherit; border: none; background: none; }
    .dmc-book a { text-decoration: none; color: inherit; }
    .dmc-book ul,
    .dmc-book ol { list-style: none; }
    .dmc-book details summary { cursor: pointer; list-style: none; }
    .dmc-book details summary::-webkit-details-marker { display: none; }

    :root {
      /* Backgrounds */
      --bg-page: #0A101C;
      --bg-card: #121A2A;
      --bg-elevated: #1B2540;

      /* Borders */
      --border: rgba(255,255,255,0.08);
      --border-hover: rgba(81,162,255,0.35);

      /* Text */
      --text: #FFFFFF;
      --text-muted: rgba(255,255,255,0.86);
      --text-subtle: rgba(255,255,255,0.60);

      /* Brand */
      --navy: #164991;
      --navy-deep: #0A2463;
      --blue: #3B82F6;
      --blue-soft: #51A2FF;
      --red: #E63946;
      --red-deep: #C10007;
      --amber: #F59E0B;
      --teal: #2EC4B6;
      --green: #10B981;
      --red-soft: #FF4757;

      /* Typography */
      --font-body: 'Inter', system-ui, -apple-system, sans-serif;
      --font-display: 'Poppins', 'Inter', sans-serif;
      --font-editorial: 'Georgia', 'Times New Roman', serif;

      /* Layout */
      --wrapper: 1240px;
      --wrapper-narrow: 880px;
      --pad-x: 32px;
      --radius-card: 20px;
      --radius-btn: 10px;
      --transition-fast: 100ms ease;
      --transition-base: 150ms ease;
    }

    /* ============================================================
       BASE
    ============================================================ */
    .dmc-book {
      background: var(--bg-page);
      color: var(--text);
      font-family: var(--font-body);
      font-size: 16px;
      line-height: 1.5;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      overflow-x: hidden;
    }

    .dmc-book .wrapper {
      max-width: var(--wrapper);
      padding: 0 var(--pad-x);
      margin: 0 auto;
    }

    .dmc-book .wrapper--narrow {
      max-width: var(--wrapper-narrow);
      padding: 0 var(--pad-x);
      margin: 0 auto;
    }

    .dmc-book section { padding: 56px 0; position: relative; }

    /* ============================================================
       TYPOGRAPHY
    ============================================================ */
    .dmc-book .hero-h1 {
      font-family: var(--font-display) !important;
      font-size: clamp(30px, 5.5vw, 76px); 
      font-weight: 900;
      line-height: 1.04;
      letter-spacing: -0.025em;
      text-wrap: balance;
      overflow-wrap: break-word;
      color: var(--text);
    }

    .dmc-book .section-h2 {
      font-family: var(--font-display) !important;
      font-size: clamp(32px, 4vw, 48px);
      font-weight: 900;
      line-height: 1.05;
      letter-spacing: -0.02em;
      text-wrap: balance;
      color: var(--text);
    }

    .dmc-book .eyebrow {
      font-family: var(--font-body);
      font-size: 24px;
      font-weight: 700;
      color: var(--red-soft);
      letter-spacing: 2.4px;
      text-transform: uppercase;
      margin-bottom: 16px;
    }

    .dmc-book .lede {
      font-size: 18px;
      line-height: 1.65;
      color: var(--text-muted);
    }

    /* ============================================================
       SECTION HEAD
    ============================================================ */
    .dmc-book .section-head {
      text-align: left;
      margin-bottom: 48px;
    }

    .dmc-book .section-head .accent-rules { justify-content: flex-start; }

    .dmc-book .section-head .section-h2 {
      margin-bottom: 16px;
    }

    .dmc-book .section-head .lede {
      max-width: 640px;
      margin: 0 0 20px;
    }

    .dmc-book .accent-rules {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      margin-top: 20px;
    }

    .dmc-book .accent-rules .b {
      display: block;
      width: 56px;
      height: 4px;
      background: var(--blue-soft);
      border-radius: 2px;
    }

    .dmc-book .accent-rules .r {
      display: block;
      width: 28px;
      height: 4px;
      background: var(--red);
      border-radius: 2px;
    }

    /* ============================================================
       BUTTONS
    ============================================================ */
    .dmc-book .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 14px 24px;
      font-size: 16px;
      font-weight: 700;
      font-family: var(--font-body);
      border-radius: var(--radius-btn);
      transition: transform var(--transition-fast), box-shadow var(--transition-base), background var(--transition-base), opacity var(--transition-base);
      white-space: nowrap;
      cursor: pointer;
      border: none;
      text-decoration: none;
      line-height: 1;
      white-space: normal;
    }

    .dmc-book .btn--donate {
      background: linear-gradient(180deg, #E7000B 0%, #C10007 100%);
      color: #fff;
      box-shadow: 0 4px 20px rgba(231,0,11,0.35);
    }

    .dmc-book .btn--donate:hover {
      box-shadow: 0 6px 28px rgba(231,0,11,0.5);
      opacity: 0.93;
    }

    .dmc-book .btn--primary {
      background: var(--blue);
      color: #fff;
      box-shadow: 0 4px 16px rgba(59,130,246,0.30);
    }

    .dmc-book .btn--primary:hover {
      background: var(--blue-soft);
      box-shadow: 0 6px 24px rgba(81,162,255,0.40);
    }

    .dmc-book .btn--outline {
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(255,255,255,0.18);
      color: #fff;
      backdrop-filter: blur(6px);
    }

    .dmc-book .btn--outline:hover {
      background: rgba(255,255,255,0.08);
      border-color: rgba(255,255,255,0.30);
    }

    .dmc-book .btn--lg {
      padding: 18px 30px;
      font-size: 18px;
      border-radius: 12px;
    }

    .dmc-book .btn:active {
      transform: translateY(1px);
    }

    .dmc-book .btn .arr {
      transition: transform var(--transition-base);
      display: inline-block;
    }

    .dmc-book .btn:hover .arr {
      transform: translateX(3px);
    }

    /* ============================================================
       BADGES
    ============================================================ */
    .dmc-book .badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      padding: 5px 12px;
      border-radius: 999px;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0.6px;
      text-transform: uppercase;
      text-align: center;
      white-space: normal;
    }

    .dmc-book .badge--navy {
      background: rgba(22,73,145,0.25);
      border: 1px solid rgba(22,73,145,0.6);
      color: var(--blue-soft);
    }

    .dmc-book .badge--amber {
      background: rgba(245,158,11,0.15);
      border: 1px solid rgba(245,158,11,0.40);
      color: var(--amber);
    }

    .dmc-book .badge--green {
      background: rgba(16,185,129,0.15);
      border: 1px solid rgba(16,185,129,0.40);
      color: var(--green);
    }

    .dmc-book .badge--red {
      background: rgba(230,57,70,0.15);
      border: 1px solid rgba(230,57,70,0.40);
      color: #FF6B75;
    }

    /* ============================================================
       CARDS
    ============================================================ */
    .dmc-book .card {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 20px;
      padding: 28px;
      transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
    }

    .dmc-book .card:hover {
      transform: translateY(-4px);
      border-color: var(--border-hover);
      box-shadow: 0 16px 40px rgba(0,0,0,0.4);
    }

    /* ============================================================
       SCROLL REVEAL
    ============================================================ */
    .dmc-book .reveal {
      opacity: 0;
      transform: translateY(20px);
      transition: opacity 700ms cubic-bezier(.2,.7,.2,1), transform 700ms cubic-bezier(.2,.7,.2,1);
    }

    .dmc-book .reveal.in {
      opacity: 1;
      transform: translateY(0);
    }

    .dmc-book .reveal-delay-1 { transition-delay: 80ms; }
    .dmc-book .reveal-delay-2 { transition-delay: 160ms; }
    .dmc-book .reveal-delay-3 { transition-delay: 240ms; }
    .dmc-book .reveal-delay-4 { transition-delay: 320ms; }
    .dmc-book .reveal-delay-5 { transition-delay: 400ms; }

    @media (prefers-reduced-motion: reduce) {
      .dmc-book .reveal {
        opacity: 1;
        transform: none;
        transition: none;
      }
    }

    /* ============================================================
       HERO
    ============================================================ */
    .dmc-book #hero {
      padding: 96px 0 80px;
      position: relative;
      overflow: hidden;
      background:
        radial-gradient(900px 500px at 85% -10%, rgba(81,162,255,0.18), transparent 60%),
        radial-gradient(700px 400px at -10% 110%, rgba(230,57,70,0.16), transparent 60%),
        linear-gradient(180deg, #0A101C 0%, #0C1426 100%);
    }

    .dmc-book #hero::before {
      content: '';
      position: absolute;
      top: -20%;
      right: -10%;
      width: 700px;
      height: 700px;
      background: radial-gradient(ellipse, rgba(22,73,145,0.18) 0%, transparent 70%);
      pointer-events: none;
    }

    .dmc-book #hero::after {
      content: '';
      position: absolute;
      right: -260px;
      top: -260px;
      width: 980px;
      height: 980px;
      border-radius: 50%;
      border: 1px solid rgba(255,255,255,0.06);
      box-shadow:
        inset 0 0 0 120px rgba(255,255,255,0.03),
        inset 0 0 0 240px rgba(255,255,255,0.04),
        inset 0 0 0 360px rgba(255,255,255,0.03);
      pointer-events: none;
    }

    .dmc-book .breadcrumbs {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 28px;
      font-size: 14px;
      font-weight: 600;
      color: #fff;
      letter-spacing: 0.2px;
      position: relative;
      z-index: 1;
    }
    .dmc-book .breadcrumbs a { color: #fff; text-decoration: none; opacity: 0.85; transition: opacity 120ms ease; }
    .dmc-book .breadcrumbs a:hover { opacity: 1; }
    .dmc-book .breadcrumbs svg { color: #E63946; flex-shrink: 0; }
    .dmc-book .breadcrumbs span[aria-current="page"] { color: #fff; }

    .dmc-book .hero-grid {
      display: grid;
      grid-template-columns: 480px 1fr;
      gap: 72px;
      align-items: center;
      position: relative;
      z-index: 1;
    }

    /* Book Cover Placeholder */
    .dmc-book .book-cover-wrap {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 22px;
    }

    .dmc-book .book-cover-glow {
      position: absolute;
      inset: -20%;
      background: radial-gradient(ellipse, rgba(59,130,246,0.22) 0%, transparent 65%);
      pointer-events: none;
    }

    .dmc-book .book-cover-link {
      display: block;
      position: relative;
      z-index: 1;
      width: 100%;
      max-width: 480px;
    }

    .dmc-book .book-cover {
      display: block;
      width: 100%;
      height: auto;
      filter: drop-shadow(0 30px 60px rgba(0,0,0,0.6));
    }

    .dmc-book .book-cover::before { content: none; }

    .dmc-book .book-cover-label {
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      color: rgba(255,255,255,0.5);
      border: 1px solid rgba(255,255,255,0.18);
      padding: 4px 10px;
      border-radius: 999px;
      text-align: center;
    }

    .dmc-book .book-cover-title {
      font-family: var(--font-display) !important;
      font-size: clamp(18px, 3vw, 26px);
      font-weight: 800;
      line-height: 1.15;
      text-align: center;
      color: #fff;
      letter-spacing: -0.02em;
    }

    .dmc-book .book-cover-title span {
      color: var(--red-soft);
    }

    .dmc-book .book-cover-divider {
      width: 40px;
      height: 2px;
      background: var(--blue-soft);
      border-radius: 1px;
    }

    .dmc-book .book-cover-author {
      text-align: center;
    }

    .dmc-book .book-cover-author-name {
      font-weight: 700;
      font-size: 14px;
      color: var(--text-muted);
    }

    .dmc-book .book-cover-author-cred {
      font-size: 14px;
      color: var(--text-subtle);
      margin-top: 3px;
      font-weight: 500;
    }

    .dmc-book .book-cover-badge-wrap {
      position: relative;
      z-index: 2;
      background: linear-gradient(135deg, var(--amber) 0%, #D97706 100%);
      color: #000;
      border-radius: 50%;
      width: 116px;
      height: 116px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      font-weight: 900;
      box-shadow: 0 8px 20px rgba(245,158,11,0.4);
      text-align: center;
      line-height: 1.1;
    }

    .dmc-book .book-cover-badge-wrap .line1 {
      font-size: 14px;
      letter-spacing: 0;
      text-transform: uppercase;
      font-weight: 700;
    }

    .dmc-book .book-cover-badge-wrap .line2 {
      font-size: 14px;
      font-weight: 900;
    }

    .dmc-book .book-placeholder-note {
      text-align: center;
      margin-top: 16px;
      font-size: 14px;
      color: var(--text-subtle);
      font-style: italic;
    }

    /* Hero Content */
    .dmc-book .hero-content {
      display: flex;
      flex-direction: column;
      gap: 24px;
    }

    .dmc-book .hero-meta {
      display: flex;
      align-items: center;
      gap: 12px;
      flex-wrap: wrap;
    }

    .dmc-book .star-row {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .dmc-book .stars {
      display: flex;
      gap: 3px;
    }

    .dmc-book .star {
      color: var(--amber);
      font-size: 17px;
      line-height: 1;
    }

    .dmc-book .star-count {
      font-size: 14px;
      color: var(--text-muted);
      font-weight: 500;
    }

    .dmc-book .hero-cta-group {
      display: flex;
      flex-direction: column;
      gap: 14px;
    }

    .dmc-book .hero-cta-buttons {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
    }

    .dmc-book .hero-trust {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 14px;
      color: var(--text-muted);
      font-weight: 500;
    }

    .dmc-book .hero-trust svg {
      flex-shrink: 0;
      color: var(--green);
    }

    /* ============================================================
       SOCIAL PROOF BAR
    ============================================================ */
    .dmc-book #proof-bar {
      padding: 0;
      border-top: 1px solid var(--border);
      border-bottom: 1px solid var(--border);
      background: rgba(18,26,42,0.6);
      backdrop-filter: blur(8px);
    }

    .dmc-book .proof-bar-inner {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      divide-x: 1px solid var(--border);
    }

    .dmc-book .proof-bar-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 4px;
      padding: 22px 16px;
      text-align: center;
      border-right: 1px solid var(--border);
    }

    .dmc-book .proof-bar-item:last-child {
      border-right: none;
    }

    .dmc-book .proof-bar-num {
      font-family: var(--font-display) !important;
      font-size: clamp(22px, 3vw, 30px);
      font-weight: 800;
      color: var(--blue-soft);
      line-height: 1;
    }

    .dmc-book .proof-bar-label {
      font-size: 14px;
      font-weight: 600;
      color: var(--text-muted);
      text-transform: uppercase;
      letter-spacing: 0.5px;
    }

    /* ============================================================
       PROBLEM SECTION
    ============================================================ */
    .dmc-book #problem {
      background: linear-gradient(180deg, transparent 0%, rgba(10,36,99,0.08) 50%, transparent 100%);
    }

    .dmc-book .problem-cards {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      margin-bottom: 48px;
    }

    .dmc-book .problem-card {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 20px;
      padding: 32px 28px;
      transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
      position: relative;
      overflow: hidden;
    }

    .dmc-book .problem-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 3px;
      border-radius: 20px 20px 0 0;
    }

    .dmc-book .problem-card.card-red::before { background: var(--red); }
    .dmc-book .problem-card.card-blue::before { background: var(--blue-soft); }
    .dmc-book .problem-card.card-amber::before { background: var(--amber); }

    .dmc-book .problem-card:hover {
      transform: translateY(-4px);
      border-color: var(--border-hover);
      box-shadow: 0 20px 50px rgba(0,0,0,0.4);
    }

    .dmc-book .problem-card-icon {
      width: 52px;
      height: 52px;
      border-radius: 14px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 20px;
      font-size: 24px;
    }

    .dmc-book .problem-card-icon.icon-red { background: rgba(230,57,70,0.15); }
    .dmc-book .problem-card-icon.icon-blue { background: rgba(81,162,255,0.12); }
    .dmc-book .problem-card-icon.icon-amber { background: rgba(245,158,11,0.12); }

    .dmc-book .problem-card-stat {
      font-family: var(--font-display) !important;
      font-size: clamp(26px, 3vw, 36px);
      font-weight: 800;
      line-height: 1;
      margin-bottom: 8px;
    }

    .dmc-book .stat-red { color: var(--red-soft); }
    .dmc-book .stat-blue { color: var(--blue-soft); }
    .dmc-book .stat-amber { color: var(--amber); }

    .dmc-book .problem-card-title {
      font-size: 16px;
      font-weight: 700;
      color: var(--text);
      margin-bottom: 10px;
    }

    .dmc-book .problem-card-body {
      font-size: 15px;
      line-height: 1.6;
      color: var(--text-muted);
    }

    .dmc-book .pull-quote {
      max-width: 680px;
      margin: 0 auto;
      text-align: center;
      font-family: var(--font-editorial);
      font-size: clamp(20px, 2.5vw, 28px);
      font-style: italic;
      line-height: 1.45;
      color: var(--amber);
      padding: 36px 32px;
      border: 1px solid rgba(245,158,11,0.18);
      border-radius: 20px;
      background: rgba(245,158,11,0.05);
      position: relative;
    }

    .dmc-book .pull-quote::before {
      content: '\201C';
      position: absolute;
      top: -24px;
      left: 50%;
      transform: translateX(-50%);
      font-size: 80px;
      color: rgba(245,158,11,0.30);
      line-height: 1;
      font-family: var(--font-editorial);
    }

    .dmc-book .pull-quote-attr {
      display: block;
      margin-top: 16px;
      font-family: var(--font-body);
      font-size: 14px;
      font-style: normal;
      font-weight: 700;
      color: var(--text-muted);
      letter-spacing: 0.5px;
    }

    /* ============================================================
       BOOK CONTENTS
    ============================================================ */
    .dmc-book .chapter-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
    }

    .dmc-book .chapter-card {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 24px;
      display: flex;
      gap: 18px;
      align-items: flex-start;
      transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
    }

    .dmc-book .chapter-card:hover {
      transform: translateY(-3px);
      border-color: var(--border-hover);
      box-shadow: 0 12px 30px rgba(0,0,0,0.35);
    }

    .dmc-book .chapter-num {
      flex-shrink: 0;
      width: 44px;
      height: 44px;
      background: linear-gradient(135deg, rgba(59,130,246,0.2) 0%, rgba(81,162,255,0.1) 100%);
      border: 1px solid rgba(59,130,246,0.25);
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-family: var(--font-display) !important;
      font-size: 15px;
      font-weight: 800;
      color: var(--blue-soft);
    }

    .dmc-book .chapter-info { flex: 1; }

    .dmc-book .chapter-title {
      font-size: 16px;
      font-weight: 700;
      color: var(--text);
      margin-bottom: 6px;
      line-height: 1.3;
    }

    .dmc-book .chapter-hook {
      font-size: 14px;
      color: var(--text-muted);
      line-height: 1.55;
    }

    /* ============================================================
       PATIENT STORIES
    ============================================================ */
    .dmc-book #stories {
      background: linear-gradient(180deg, transparent 0%, rgba(27,37,64,0.25) 50%, transparent 100%);
    }

    .dmc-book .stories-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }

    .dmc-book .story-card {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 20px;
      padding: 32px 28px;
      display: flex;
      flex-direction: column;
      gap: 20px;
      transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
      position: relative;
      overflow: hidden;
    }

    .dmc-book .story-card:hover {
      transform: translateY(-4px);
      border-color: var(--border-hover);
      box-shadow: 0 20px 50px rgba(0,0,0,0.4);
    }

    .dmc-book .story-card-header {
      display: flex;
      align-items: center;
      gap: 14px;
    }

    .dmc-book .story-avatar {
      width: 52px;
      height: 52px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 800;
      font-size: 18px;
      flex-shrink: 0;
    }

    .dmc-book .avatar-teal { background: rgba(46,196,182,0.2); color: var(--teal); }
    .dmc-book .avatar-blue { background: rgba(59,130,246,0.2); color: var(--blue-soft); }
    .dmc-book .avatar-amber { background: rgba(245,158,11,0.2); color: var(--amber); }

    .dmc-book .story-card-name {
      font-weight: 700;
      font-size: 16px;
      color: var(--text);
    }

    .dmc-book .story-card-cred {
      font-size: 14px;
      color: var(--text-muted);
    }

    .dmc-book .story-card-condition {
      padding: 4px 10px;
      border-radius: 999px;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0.5px;
    }

    .dmc-book .story-card-body {
      font-size: 15px;
      line-height: 1.65;
      color: var(--text-muted);
      flex: 1;
    }

    .dmc-book .story-card-outcome {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 15px;
      font-weight: 700;
      color: #5EE3B1;
      padding: 12px 14px;
      background: rgba(16,185,129,0.08);
      border: 1px solid rgba(16,185,129,0.2);
      border-radius: 10px;
    }

    /* ============================================================
       MID CTA SECTION
    ============================================================ */
    .dmc-book #mid-cta {
      background: transparent;
      text-align: center;
      padding: 40px 24px;
    }

    /* Contained, centered blue CTA panels (matches Mission/TEDx) */
    .dmc-book #mid-cta > .wrapper,
    .dmc-book #final-cta > .wrapper {
      background: linear-gradient(180deg, #0A2463 0%, #122a5e 100%);
      border-radius: 28px;
      padding: clamp(56px, 7vw, 88px) clamp(28px, 5vw, 64px);
      position: relative;
      overflow: hidden;
      box-shadow: 0 40px 80px -20px rgba(10,36,99,0.5);
    }

    .dmc-book #mid-cta > .wrapper::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 800px;
      height: 400px;
      background: radial-gradient(ellipse, rgba(59,130,246,0.12) 0%, transparent 70%);
      pointer-events: none;
    }

    .dmc-book .mid-cta-content {
      position: relative;
      z-index: 1;
    }

    .dmc-book .mid-cta-h2 {
      font-family: var(--font-display) !important;
      font-size: clamp(28px, 4vw, 48px);
      font-weight: 900;
      line-height: 1.1;
      letter-spacing: -0.02em;
      color: var(--text);
      margin-bottom: 16px;
      text-wrap: balance;
    }

    .dmc-book .mid-cta-sub {
      font-size: 18px;
      color: var(--text-muted);
      margin-bottom: 36px;
      max-width: 520px;
      margin-left: auto;
      margin-right: auto;
    }

    .dmc-book .mid-cta-buttons {
      display: flex;
      gap: 16px;
      justify-content: center;
      flex-wrap: wrap;
      margin-bottom: 20px;
    }

    .dmc-book .mid-cta-footnote {
      font-size: 14px;
      color: var(--text-subtle);
    }

    /* ============================================================
       AUTHOR
    ============================================================ */
    .dmc-book .author-grid {
      display: grid;
      grid-template-columns: 360px 1fr;
      gap: 64px;
      align-items: start;
    }

    .dmc-book .author-photo-wrap {
      position: relative;
    }

    .dmc-book .author-photo {
      width: 100%;
      aspect-ratio: 4/5;
      background: linear-gradient(180deg, #1a3a78 0%, #0A2463 100%);
      border: 1px solid var(--border);
      border-radius: 24px;
      position: relative;
      overflow: hidden;
      display: flex;
      align-items: flex-end;
      padding: 24px;
      color: #fff;
      box-shadow: 0 20px 60px rgba(0,0,0,0.4);
    }

    .dmc-book .author-chip {
      position: absolute;
      z-index: 2;
      top: 18px;
      left: 18px;
      background: var(--red);
      color: #fff;
      font-weight: 700;
      font-size: 14px;
      letter-spacing: 1.4px;
      text-transform: uppercase;
      padding: 5px 10px;
      border-radius: 999px;
    }

    .dmc-book .author-silhouette {
      position: absolute;
      left: 50%;
      bottom: 0;
      transform: translateX(-50%);
      width: 78%;
      height: 78%;
      background: linear-gradient(180deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0) 65%);
      -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 240'><circle cx='100' cy='75' r='42' fill='black'/><path d='M30 240 C 30 160, 60 130, 100 130 C 140 130, 170 160, 170 240 Z' fill='black'/></svg>") center / contain no-repeat;
              mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 240'><circle cx='100' cy='75' r='42' fill='black'/><path d='M30 240 C 30 160, 60 130, 100 130 C 140 130, 170 160, 170 240 Z' fill='black'/></svg>") center / contain no-repeat;
    }

    .dmc-book .author-caption { position: relative; z-index: 2; }
    .dmc-book .author-caption b { display: block; font-size: 18px; font-weight: 700; }
    .dmc-book .author-caption span { font-size: 14px; color: #fff; }

    .dmc-book .author-content { display: flex; flex-direction: column; gap: 24px; }

    .dmc-book .author-credentials {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .dmc-book .credential-item {
      display: flex;
      align-items: center;
      gap: 12px;
      font-size: 15px;
      color: #fff;
    }

    .dmc-book .credential-icon {
      width: 44px;
      height: 44px;
      border-radius: 10px;
      background: rgba(59,130,246,0.12);
      border: 1px solid rgba(59,130,246,0.2);
      color: var(--blue-soft);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      font-size: 14px;
      margin-top: 1px;
    }

    .dmc-book .credential-icon svg { width: 26px; height: 26px; }

    .dmc-book .credential-text { flex: 1; line-height: 1.5; }

    .dmc-book .author-quote {
      font-family: var(--font-editorial);
      font-style: italic;
      font-size: 17px;
      line-height: 1.65;
      color: #fff;
      border-left: 3px solid var(--blue-soft);
      padding-left: 20px;
    }

    .dmc-book .author-quote cite {
      display: block;
      margin-top: 10px;
      font-style: normal;
      font-family: var(--font-body);
      font-size: 14px;
      font-weight: 700;
      color: #fff;
    }

    /* ============================================================
       REVIEWS
    ============================================================ */
    .dmc-book .reviews-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }

    .dmc-book .review-card {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 20px;
      padding: 28px;
      display: flex;
      flex-direction: column;
      gap: 16px;
      transition: transform 300ms ease, border-color 300ms ease;
    }

    .dmc-book .review-card:hover {
      transform: translateY(-4px);
      border-color: var(--border-hover);
    }

    .dmc-book .review-stars {
      display: flex;
      gap: 3px;
    }

    .dmc-book .review-text {
      font-size: 15px;
      line-height: 1.65;
      color: var(--text-muted);
      font-style: italic;
      flex: 1;
    }

    .dmc-book .review-text::before { content: '201C'; }
    .dmc-book .review-text::after { content: '201D'; }

    .dmc-book .review-title {
      display: block;
      font-family: var(--font-body);
      font-style: normal;
      font-weight: 700;
      font-size: 15px;
      line-height: 1.4;
      color: var(--text);
      margin-bottom: 10px;
    }

    .dmc-book .review-footer {
      display: flex;
      align-items: center;
      gap: 10px;
      padding-top: 12px;
      border-top: 1px solid var(--border);
    }

    .dmc-book .review-avatar {
      width: 36px;
      height: 36px;
      border-radius: 50%;
      background: var(--bg-elevated);
      border: 1px solid var(--border);
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 700;
      font-size: 14px;
      color: var(--blue-soft);
      flex-shrink: 0;
    }

    .dmc-book .review-name {
      font-size: 14px;
      font-weight: 700;
      color: var(--text);
    }

    .dmc-book .review-cred {
      font-size: 14px;
      color: var(--text-muted);
    }

    .dmc-book .review-placeholder {
      font-size: 14px;
      font-style: italic;
      color: var(--text-subtle);
      margin-top: 4px;
    }

    /* ============================================================
       $25 PROMISE
    ============================================================ */
    .dmc-book #promise {
      background: linear-gradient(180deg, transparent 0%, rgba(18,26,42,0.4) 50%, transparent 100%);
    }

    .dmc-book .promise-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 48px;
      align-items: start;
    }

    .dmc-book .kit-breakdown {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 24px;
      padding: 32px;
    }

    .dmc-book .kit-breakdown-title {
      font-size: 14px;
      font-weight: 700;
      color: #fff;
      text-transform: uppercase;
      letter-spacing: 1px;
      margin-bottom: 24px;
    }

    .dmc-book .kit-items {
      display: flex;
      flex-direction: column;
      gap: 14px;
      margin-bottom: 24px;
    }

    .dmc-book .kit-item {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 12px 16px;
      background: rgba(255,255,255,0.03);
      border: 1px solid var(--border);
      border-radius: 10px;
    }

    .dmc-book .kit-item-left {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 15px;
      color: #fff;
    }

    .dmc-book .kit-item-icon { font-size: 18px; }

    .dmc-book .kit-item-price {
      font-size: 14px;
      font-weight: 600;
      color: #fff;
    }

    .dmc-book .kit-total {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 14px 16px;
      background: rgba(59,130,246,0.08);
      border: 1px solid rgba(59,130,246,0.22);
      border-radius: 10px;
    }

    .dmc-book .kit-total-label {
      font-size: 16px;
      font-weight: 700;
      color: #fff;
    }

    .dmc-book .kit-total-price {
      font-family: var(--font-display) !important;
      font-size: 22px;
      font-weight: 800;
      color: var(--blue-soft);
    }

    .dmc-book .promise-content {
      display: flex;
      flex-direction: column;
      gap: 24px;
    }

    .dmc-book .promise-vs {
      background: var(--bg-card);
      border: 1px solid rgba(230,57,70,0.25);
      border-radius: 20px;
      padding: 28px;
    }

    .dmc-book .promise-vs-label {
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 1px;
      text-transform: uppercase;
      color: var(--text-subtle);
      margin-bottom: 12px;
    }

    .dmc-book .promise-vs-amount {
      font-family: var(--font-display) !important;
      font-size: clamp(28px, 4vw, 42px);
      font-weight: 900;
      color: var(--red-soft);
      line-height: 1;
      margin-bottom: 8px;
    }

    .dmc-book .promise-vs-desc {
      font-size: 14px;
      color: var(--text-muted);
      line-height: 1.5;
    }

    /* ============================================================
       FAQ
    ============================================================ */
    .dmc-book .faq-container {
      max-width: 800px;
      margin: 0 auto;
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 24px;
      overflow: hidden;
    }

    .dmc-book .faq-item {
      border-bottom: 1px solid var(--border);
    }

    .dmc-book .faq-item:last-child { border-bottom: none; }

    .dmc-book .faq-item summary {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 22px 28px;
      font-size: 19px;
      font-weight: 700;
      color: var(--text);
      gap: 16px;
      transition: background var(--transition-base), color var(--transition-base);
      user-select: none;
    }

    .dmc-book .faq-item summary:hover {
      background: rgba(255,255,255,0.03);
    }

    .dmc-book .faq-item[open] summary {
      color: var(--text);
    }

    .dmc-book .faq-icon {
      flex-shrink: 0;
      width: 32px;
      height: 32px;
      border-radius: 50%;
      background: transparent;
      border: 1.5px solid rgba(255,255,255,0.3);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      font-weight: 400;
      line-height: 1;
      color: #fff;
      transition: transform 250ms ease, background var(--transition-base), color var(--transition-base);
    }

    .dmc-book .faq-item[open] .faq-icon {
      transform: rotate(45deg);
      background: var(--blue);
      color: #fff;
      border-color: var(--blue);
    }

    .dmc-book .faq-body {
      padding: 0 28px 22px;
      font-size: 15px;
      line-height: 1.7;
      color: var(--text-muted);
    }

    /* ============================================================
       FINAL CTA
    ============================================================ */
    /* Eyebrows on blue CTA panels use amber (matches Mission/TEDx convention) */
    .dmc-book #mid-cta .eyebrow,
    .dmc-book #final-cta .eyebrow { color: var(--amber); }

    .dmc-book #final-cta {
      background: transparent;
      text-align: center;
      padding: 40px 24px;
    }

    .dmc-book #final-cta > .wrapper::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 900px;
      height: 500px;
      background: radial-gradient(ellipse, rgba(59,130,246,0.15) 0%, transparent 65%);
      pointer-events: none;
    }

    .dmc-book .final-cta-content { position: relative; z-index: 1; }

    .dmc-book .final-cta-h2 {
      font-family: var(--font-display) !important;
      font-size: clamp(32px, 5vw, 64px);
      font-weight: 900;
      line-height: 1.05;
      letter-spacing: -0.025em;
      color: var(--text);
      margin-bottom: 20px;
      text-wrap: balance;
    }

    .dmc-book .final-cta-sub {
      font-size: 18px;
      line-height: 1.65;
      color: var(--text-muted);
      max-width: 600px;
      margin: 0 auto 40px;
    }

    .dmc-book .final-cta-buttons {
      display: flex;
      gap: 16px;
      justify-content: center;
      flex-wrap: wrap;
      margin-bottom: 24px;
    }

    .dmc-book .final-cta-footnote {
      font-size: 14px;
      color: var(--text-subtle);
    }

    /* ============================================================
       STICKY PURCHASE BAR
    ============================================================ */
    .dmc-book #sticky-bar {
      position: fixed;
      bottom: 20px;
      left: 50%;
      transform: translateX(-50%);
      z-index: 800;
      background: var(--bg-card);
      border: 1px solid rgba(255,255,255,0.14);
      border-radius: 12px;
      box-shadow: 0 24px 60px -10px rgba(0,0,0,0.7);
      padding: 12px 16px 12px 20px;
      display: flex;
      align-items: center;
      gap: 16px;
      max-width: 680px;
      width: calc(100% - 40px);
      opacity: 0;
      pointer-events: none;
      transition: opacity 300ms ease, transform 300ms ease;
      transform: translateX(-50%) translateY(10px);
    }

    .dmc-book #sticky-bar.visible {
      opacity: 1;
      pointer-events: auto;
      transform: translateX(-50%) translateY(0);
    }

    .dmc-book #sticky-bar.hidden { display: none; }

    /* Hide the floating purchase bar on mobile (covers content) */
    @media (max-width: 768px) { .dmc-book #sticky-bar { display: none !important; } }

    .dmc-book .sticky-bar-text {
      flex: 1;
      min-width: 0;
    }

    .dmc-book .sticky-bar-title {
      font-weight: 700;
      font-size: 14px;
      color: var(--text);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .dmc-book .sticky-bar-sub {
      font-size: 14px;
      color: var(--text-muted);
    }

    .dmc-book .sticky-bar-actions {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-shrink: 0;
    }

    .dmc-book .sticky-bar-dismiss {
      width: 32px;
      height: 32px;
      border-radius: 8px;
      background: rgba(255,255,255,0.05);
      border: 1px solid var(--border);
      color: var(--text-subtle);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 18px;
      cursor: pointer;
      transition: background var(--transition-base), color var(--transition-base);
      flex-shrink: 0;
    }

    .dmc-book .sticky-bar-dismiss:hover {
      background: rgba(255,255,255,0.10);
      color: var(--text);
    }

    /* ============================================================
       ANIMATION LAYER (from homepage / about page)
    ============================================================ */
    /* Section glow overlays */
    .dmc-book section.glow-blue::before,
    .dmc-book section.glow-red::before {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 0;
    }
    .dmc-book section.glow-blue::before {
      background: radial-gradient(900px 400px at 80% 0%, rgba(81,162,255,0.07), transparent 60%);
    }
    .dmc-book section.glow-red::before {
      background: radial-gradient(700px 400px at 10% 100%, rgba(230,57,70,0.07), transparent 60%);
    }
    .dmc-book section > .wrapper,
    .dmc-book section > .wrapper--narrow {
      position: relative;
      z-index: 1;
    }

    /* Hero text accents */
    .dmc-book .hero-h1 .accent { color: var(--blue-soft); }
    .dmc-book .hero-h1 .underline-red {
      position: relative;
      display: inline-block;
    }
    .dmc-book .hero-h1 .underline-red::after {
      content: "";
      position: absolute;
      left: 4%;
      right: 4%;
      bottom: 4px;
      height: 8px;
      background: var(--red);
      border-radius: 4px;
      opacity: 0.9;
      z-index: -1;
    }

    /* Story card top accent bars */
    .dmc-book .story-card::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 3px;
      z-index: 2;
    }
    .dmc-book .story-card.c1::before { background: linear-gradient(90deg, var(--red), transparent); }
    .dmc-book .story-card.c2::before { background: linear-gradient(90deg, var(--amber), transparent); }
    .dmc-book .story-card.c3::before { background: linear-gradient(90deg, var(--blue-soft), transparent); }

    /* Mid-CTA decorative ring */
    .dmc-book #mid-cta > .wrapper::after,
    .dmc-book #final-cta > .wrapper::after {
      content: "";
      position: absolute;
      right: -120px;
      top: -120px;
      width: 500px;
      height: 500px;
      border-radius: 50%;
      border: 1px solid rgba(255,255,255,0.06);
      box-shadow:
        inset 0 0 0 80px rgba(255,255,255,0.03),
        inset 0 0 0 160px rgba(255,255,255,0.04);
      pointer-events: none;
      z-index: 0;
    }

    /* Author portrait gradient overlay */
    /* Author portrait photo + caption scrim */
    .dmc-book .author-photo-img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center 20%;
      z-index: 0;
    }
    .dmc-book .author-photo::before {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: inherit;
      background: linear-gradient(180deg, rgba(10,16,28,0) 45%, rgba(10,16,28,0.55) 72%, rgba(10,16,28,0.9) 100%);
      pointer-events: none;
      z-index: 1;
    }
    .dmc-book .author-photo .author-chip,
    .dmc-book .author-photo .author-caption { z-index: 3; }


    /* Book cover hover lift */
    .dmc-book .book-cover { transition: transform 600ms cubic-bezier(.2,.8,.2,1); }
    .dmc-book .book-cover-link:hover .book-cover {
      transform: translateY(-8px) scale(1.03);
    }

    /* ============================================================
       RESPONSIVE
    ============================================================ */
    @media (max-width: 1100px) {
      .dmc-book .hero-grid { grid-template-columns: 420px 1fr; gap: 48px; }
    }

    @media (max-width: 1024px) {
      .dmc-book .author-grid { grid-template-columns: 300px 1fr; gap: 40px; }
      .dmc-book .proof-bar-inner { grid-template-columns: repeat(2, 1fr); }
      .dmc-book .proof-bar-item:nth-child(2) { border-right: none; }
    }

    @media (max-width: 920px) {
      :root { --pad-x: 24px; }
      .dmc-book section { padding: 32px 0; }
      .dmc-book #hero { padding: 64px 0 48px; }

      .dmc-book .hero-h1 { font-size: 30px; line-height: 1.12; }


      .dmc-book .hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
      }

      .dmc-book .book-cover-wrap { order: -1; }
      .dmc-book .book-cover { max-width: 280px; margin: 0 auto; }

      .dmc-book .problem-cards { grid-template-columns: 1fr; }
      .dmc-book .chapter-grid { grid-template-columns: 1fr; }
      .dmc-book .stories-grid { grid-template-columns: 1fr; }
      .dmc-book .reviews-grid { grid-template-columns: 1fr; }
      .dmc-book .author-grid { grid-template-columns: 1fr; }
      .dmc-book .author-photo { max-width: 300px; }
      .dmc-book .promise-grid { grid-template-columns: 1fr; }
      .dmc-book .proof-bar-inner { grid-template-columns: repeat(2, 1fr); }
    }

    @media (max-width: 600px) {
      :root { --pad-x: 20px; }

      .dmc-book .btn--lg { font-size: 16px; padding: 16px 22px; }
      .dmc-book .hero-cta-buttons { flex-direction: column; }
      .dmc-book .hero-cta-buttons .btn { width: 100%; justify-content: center; }
      .dmc-book .mid-cta-buttons .btn { width: 100%; justify-content: center; }
      .dmc-book .final-cta-buttons .btn { width: 100%; justify-content: center; }
      .dmc-book .mid-cta-buttons { flex-direction: column; align-items: stretch; }
      .dmc-book .final-cta-buttons { flex-direction: column; align-items: stretch; max-width: 320px; margin-left: auto; margin-right: auto; }
      .dmc-book .sticky-bar-title { font-size: 14px; }
      .dmc-book .proof-bar-inner { grid-template-columns: repeat(2, 1fr); }
    }

    /* ============================================================
       UTILITY
    ============================================================ */
    .dmc-book .text-center { text-align: center; }
    .dmc-book .mt-4 { margin-top: 16px; }
    .dmc-book .mt-6 { margin-top: 24px; }
    .dmc-book .mt-8 { margin-top: 32px; }
    .dmc-book .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }/* End custom CSS */