
/* --- PDF vocabulary: solid ink rules, plum labels, green as filled highlight ---
   Selectors are scoped per-theme at section level so they outrank theme-*.css. */

/* LIGHT sections (bone ground) */
body.theme-a .hero, body.theme-a .sec:not(.cta-section),
body.theme-b .sec:not(.cta-section):not(.sec--ink),
body.theme-c .hero, body.theme-c .sec { --pdf: 1; }

body.theme-a .hero .sec-head .sec-line,
body.theme-a .sec:not(.cta-section) .sec-head .sec-line,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .sec-head .sec-line,
body.theme-c .hero .sec-head .sec-line,
body.theme-c .sec .sec-head .sec-line { height: 2px; opacity: 1; background: var(--ink); }

body.theme-a .hero .sec-head .sec-idx,
body.theme-a .sec:not(.cta-section) .sec-head .sec-idx,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .sec-head .sec-idx,
body.theme-c .hero .sec-head .sec-idx,
body.theme-c .sec .sec-head .sec-idx { color: var(--ink); font-size: 13px; font-weight: 700; }

body.theme-a .hero .sec-head .sec-label,
body.theme-a .sec:not(.cta-section) .sec-head .sec-label,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .sec-head .sec-label,
body.theme-c .sec .sec-head .sec-label { letter-spacing: 0.24em; }

/* one green highlight block, ink text on solid green */
body.theme-a .sec:not(.cta-section) .start-lead,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .start-lead,
body.theme-c .sec .start-lead { display: inline-block; background: var(--green); color: var(--ink);
  padding: 14px 20px; border-left: none; font-size: clamp(14px, 1.6vw, 18px); font-weight: 600; }

/* engagement cards: heavy ink top rule, plum number, ink serif label */
body.theme-a .sec:not(.cta-section) .stage-card,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .stage-card,
body.theme-c .sec .stage-card { background: none; border-top: 2px solid var(--ink); padding-top: clamp(18px,2vw,24px); }
body.theme-a .sec:not(.cta-section) .stage-card .fc,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .stage-card .fc,
body.theme-c .sec .stage-card .fc { display: none; }
body.theme-a .sec:not(.cta-section) .stage-num,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .stage-num,
body.theme-c .sec .stage-num { color: var(--plum); font-weight: 700; letter-spacing: 0.2em; }
body.theme-a .sec:not(.cta-section) .stage-label,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .stage-label,
body.theme-c .sec .stage-label { color: var(--ink); }
body.theme-a .sec:not(.cta-section) .stage-for,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .stage-for,
body.theme-c .sec .stage-for { font-style: italic; border-bottom: 1px solid rgba(36,32,32,0.2); }
body.theme-a .sec:not(.cta-section) .stage-opts li::before,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .stage-opts li::before,
body.theme-c .sec .stage-opts li::before { color: var(--plum); }

/* pull-quote: plum serif italic, as in the PDF callout */
body.theme-a .sec:not(.cta-section) .brackets-copy strong,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .brackets-copy strong,
body.theme-c .sec .brackets-copy strong { display: block; font-family: var(--serif); font-size: clamp(19px,2.2vw,27px);
  font-weight: 400; line-height: 1.25; color: var(--plum); margin: 6px 0; }
body.theme-a .sec:not(.cta-section) .brackets-tail,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .brackets-tail,
body.theme-c .sec .brackets-tail { border-top: 1px solid rgba(36,32,32,0.2); }

/* DARK blocks — hero in theme B, and every theme's CTA band */
body.theme-b .hero .sec-head .sec-line,
body[class*="theme-"] .cta-section .sec-head .sec-line { height: 2px; opacity: 1; background: rgba(232,227,220,0.85); }
body[class*="theme-"] .cta-section .sec-head .sec-idx { color: var(--plum-lift); font-size: 13px; font-weight: 700; }
body.theme-b .hero .sec-head .sec-idx { color: var(--green); font-size: 13px; font-weight: 700; }


/* bracketed CTA on light grounds: deeper green for contrast */
body.theme-a .hero .btn-green, body.theme-a .sec:not(.cta-section) .btn-green,
body.theme-c .hero .btn-green, body.theme-c .sec .btn-green,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .btn-green { color: var(--green-deep); }
body.theme-a .hero .btn-green::before, body.theme-a .hero .btn-green::after,
body.theme-a .sec:not(.cta-section) .btn-green::before, body.theme-a .sec:not(.cta-section) .btn-green::after,
body.theme-c .hero .btn-green::before, body.theme-c .hero .btn-green::after,
body.theme-c .sec .btn-green::before, body.theme-c .sec .btn-green::after,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .btn-green::before,
body.theme-b .sec:not(.cta-section):not(.sec--ink) .btn-green::after { color: var(--green-deep); }
