/* ============================================================
   DIGITAL SOUL V2 - COHERENT HOMEPAGE INTEGRATION
   Reframes the existing site in place. No content is duplicated.
   ============================================================ */

:root {
  --soul-ink: #080c0f;
  --soul-ink-soft: #11181d;
  --soul-panel: #151d22;
  --soul-cream: #f4eee3;
  --soul-paper: #fffaf0;
  --soul-paper-deep: #e9dfcf;
  --soul-text: #20272b;
  --soul-muted: #687177;
  --soul-cyan: #55d9e6;
  --soul-cyan-deep: #11aabd;
  --soul-violet: #9b84ee;
  --soul-magenta: #d77ac4;
  --soul-alert: #d85a54;
  --soul-line-dark: rgba(255, 255, 255, 0.14);
  --soul-line-light: rgba(18, 28, 33, 0.15);
  --soul-shadow: 0 28px 80px rgba(0, 0, 0, 0.24);
  /* One accent for text-on-paper (AA contrast on the cream surfaces). */
  --soul-teal-ink: #096c78;
  /* One type scale for every section heading. */
  --soul-display-hero: clamp(4.1rem, 6.5vw, 6.9rem);
  --soul-display-xl: clamp(3.4rem, 6vw, 6.2rem);
  --soul-display: clamp(3rem, 5vw, 5rem);
  /* One vertical rhythm for every section. */
  --soul-pad-top: clamp(80px, 9vw, 116px);
  --soul-pad-bottom: clamp(86px, 9.5vw, 126px);
}

.du-home {
  background: var(--soul-cream);
  color: var(--soul-text);
  overflow: clip;
}

.du-home .wrap {
  width: min(1180px, calc(100% - 48px));
  max-width: none;
}

.du-home > section {
  position: relative;
  isolation: isolate;
}

.du-home .section-head {
  max-width: 780px;
  margin-right: auto;
  margin-left: auto;
}

.du-home .section-head h2,
.du-home h1,
.du-home h2,
.du-home h3 {
  text-wrap: balance;
}

.du-home .section-head p,
.du-home p {
  text-wrap: pretty;
}

/* Recognition: one body, one contact point, one interior Digital Soul. */
.du-home .gem-hero {
  min-height: 820px;
  padding: clamp(112px, 12vw, 156px) 0 72px;
  display: flex;
  align-items: center;
  background: var(--soul-ink);
  color: var(--soul-cream);
}

.du-home .gem-hero .hero-backdrop {
  position: absolute;
  inset: 0;
  z-index: -3;
  background-image: url('../assets/images/digital-soul/hero-integrated-kitchen-v01.jpg');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  filter: none;
  transform: none;
  opacity: 1;
}

.du-home .gem-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(4, 7, 9, 0.94) 0%, rgba(4, 7, 9, 0.82) 34%, rgba(4, 7, 9, 0.2) 58%, rgba(4, 7, 9, 0.08) 100%),
    linear-gradient(0deg, rgba(4, 7, 9, 0.76) 0%, transparent 34%);
}

.du-home .gem-hero::after {
  content: '';
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(85, 217, 230, 0.7), rgba(155, 132, 238, 0.45), transparent);
}

.du-home .hero-data-rain {
  display: none;
}

.du-home .gem-hero .wrap,
.du-home .gem-hero .hero-grid {
  position: relative;
  z-index: 1;
}

.du-home .gem-hero .hero-grid {
  display: block;
  min-height: 610px;
}

.du-home .gem-hero .hero-grid > div:first-child {
  width: min(610px, 54vw);
  padding-top: 22px;
}

.du-home .hero-eyebrow {
  width: fit-content;
  padding: 9px 13px;
  border: 1px solid rgba(85, 217, 230, 0.38);
  border-radius: 999px;
  background: rgba(6, 12, 15, 0.54);
  backdrop-filter: blur(12px);
}

.du-home .hero-eyebrow .dot {
  box-shadow: 0 0 16px var(--soul-cyan);
}

.du-home .hero-eyebrow span {
  color: #e8ffff;
}

.du-home .gem-hero h1.t-display {
  max-width: 600px;
  margin-top: 26px;
  color: #fffaf0;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display-hero);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.055em;
  text-shadow: 0 12px 42px rgba(0, 0, 0, 0.48);
}

.du-home .gem-hero .hero-sub {
  max-width: 580px;
  margin-top: 25px;
  color: rgba(255, 250, 240, 0.82);
  font-size: clamp(1rem, 1.25vw, 1.2rem);
  line-height: 1.62;
}

.du-home .gem-microproof {
  max-width: 580px;
  margin-top: 25px;
  padding: 14px 0;
  border-top: 1px solid var(--soul-line-dark);
  border-bottom: 1px solid var(--soul-line-dark);
  gap: 10px 22px;
}

.du-home .gem-microproof span {
  color: rgba(255, 250, 240, 0.86);
}

.du-home .gem-microproof span::before {
  background: var(--soul-cyan);
  box-shadow: 0 0 10px rgba(85, 217, 230, 0.7);
}

.du-home .gem-hero .hero-ctas {
  justify-content: flex-start;
  margin-top: 25px;
}

.du-home .gem-hero .btn-primary {
  background: var(--soul-cyan);
  border-color: var(--soul-cyan);
  color: #031012;
  box-shadow: 0 13px 34px rgba(17, 170, 189, 0.23);
}

.du-home .gem-hero .btn-primary:hover {
  background: #83ecf3;
  border-color: #83ecf3;
  transform: translateY(-2px);
}

.du-home .gem-hero .btn-secondary {
  color: var(--soul-cream);
  border-color: rgba(255, 250, 240, 0.42);
  background: rgba(7, 12, 15, 0.44);
  backdrop-filter: blur(10px);
}

.du-home .gem-hero .hero-proof {
  max-width: 560px;
  margin-top: 24px;
  padding: 16px 18px;
  border: 1px solid var(--soul-line-dark);
  border-radius: 2px;
  background: rgba(7, 12, 15, 0.56);
  backdrop-filter: blur(14px);
}

.du-home .gem-hero .hero-proof-text,
.du-home .gem-hero .hero-proof-meta,
.du-home .gem-hero .hero-author {
  color: rgba(255, 250, 240, 0.78);
}

.du-home .gem-hero .hero-cover {
  position: absolute;
  right: clamp(4px, 2vw, 28px);
  bottom: -30px;
  width: clamp(105px, 10vw, 145px);
  margin: 0;
  transform: rotate(2deg);
  filter: drop-shadow(0 24px 38px rgba(0, 0, 0, 0.48));
}

.du-home .gem-hero .hero-cover img {
  width: 100%;
  height: auto;
  border: 1px solid rgba(255, 255, 255, 0.26);
}

.du-home .gem-hero .hero-book-glow {
  opacity: 0.35;
}

/* Proof strip and live signal. */
.du-home .trust-bar {
  padding: 0;
  background: var(--soul-ink);
  color: var(--soul-cream);
  border-bottom: 1px solid var(--soul-line-dark);
}

.du-home .trust-bar .gem-stat-grid {
  gap: 0;
  border-left: 1px solid var(--soul-line-dark);
}

.du-home .trust-bar article {
  min-height: 142px;
  padding: 28px 24px;
  border-right: 1px solid var(--soul-line-dark);
  background: transparent;
}

.du-home .trust-bar article h3 {
  color: var(--soul-cyan);
  font-family: 'JetBrains Mono', monospace;
  font-size: clamp(1.15rem, 2vw, 1.65rem);
  letter-spacing: -0.04em;
}

.du-home .trust-bar article p {
  color: rgba(255, 250, 240, 0.66);
  line-height: 1.45;
}

.du-home .breach-ticker {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  background: #10171b;
}

.du-home .breach-ticker::before {
  content: 'CURRENT SIGNAL';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 145px;
  padding: 0 16px;
  background: var(--soul-cyan);
  color: #041013;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.12em;
}

.du-home .breach-ticker-track {
  color: rgba(255, 250, 240, 0.8);
}

/* Mechanism: familiar life becomes legible evidence. */
.du-home .why-this-book {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background:
    radial-gradient(circle at 88% 10%, rgba(85, 217, 230, 0.1), transparent 27%),
    var(--soul-cream);
}

.du-home .why-this-book .section-head {
  margin-left: 0;
  text-align: left;
}

.du-home .why-this-book .section-head h2 {
  max-width: 660px;
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
  line-height: 0.96;
}

.du-home .why-this-book .section-head p {
  max-width: 650px;
  color: #5b6266;
}

.du-home .why-this-book .gem-excerpt-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1px;
  margin-top: 58px;
  background: var(--soul-line-light);
  border: 1px solid var(--soul-line-light);
}

.du-home .why-this-book .gem-excerpt-card {
  position: relative;
  grid-column: span 7;
  min-height: 310px;
  padding: 42px 38px 38px;
  border: 0;
  border-radius: 0;
  background: rgba(255, 250, 240, 0.94);
  box-shadow: none;
}

.du-home .why-this-book .gem-excerpt-card:nth-child(even) {
  grid-column: span 5;
  background: rgba(236, 227, 212, 0.9);
}

.du-home .why-this-book .gem-excerpt-card:nth-child(3),
.du-home .why-this-book .gem-excerpt-card:nth-child(6) {
  grid-column: span 5;
}

.du-home .why-this-book .gem-excerpt-card:nth-child(4),
.du-home .why-this-book .gem-excerpt-card:nth-child(5) {
  grid-column: span 7;
}

.du-home .why-this-book .gem-excerpt-card::before {
  position: absolute;
  right: 28px;
  top: 22px;
  color: rgba(11, 25, 30, 0.24);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem;
  letter-spacing: 0.12em;
}

.du-home .why-this-book .gem-excerpt-card:nth-child(1)::before { content: '01 / 06'; }
.du-home .why-this-book .gem-excerpt-card:nth-child(2)::before { content: '02 / 06'; }
.du-home .why-this-book .gem-excerpt-card:nth-child(3)::before { content: '03 / 06'; }
.du-home .why-this-book .gem-excerpt-card:nth-child(4)::before { content: '04 / 06'; }
.du-home .why-this-book .gem-excerpt-card:nth-child(5)::before { content: '05 / 06'; }
.du-home .why-this-book .gem-excerpt-card:nth-child(6)::before { content: '06 / 06'; }

.du-home .why-this-book .gem-excerpt-card h3 {
  max-width: 560px;
  margin-top: 18px;
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: clamp(1.65rem, 2.4vw, 2.5rem);
  font-weight: 500;
  line-height: 1.08;
}

.du-home .why-this-book .gem-excerpt-card p {
  color: #525b60;
  line-height: 1.7;
}

.du-home .why-this-book .t-label {
  color: var(--soul-teal-ink);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
}

/* Evidence: live receipts, not a decorative dashboard. */
.du-home .buzz-feed {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background:
    radial-gradient(circle at 75% 10%, rgba(155, 132, 238, 0.12), transparent 30%),
    var(--soul-ink);
  color: var(--soul-cream);
}

.du-home .buzz-feed-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 48px;
  align-items: start;
  padding-bottom: 38px;
  border-bottom: 1px solid var(--soul-line-dark);
}

.du-home .buzz-feed h2.t-display {
  color: #fffaf0;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display-xl);
  font-weight: 400;
  line-height: 0.94;
}

.du-home .buzz-feed-sub {
  max-width: 760px;
  color: rgba(255, 250, 240, 0.67);
  line-height: 1.75;
}

.du-home .buzz-feed-meta {
  padding: 20px;
  border: 1px solid rgba(85, 217, 230, 0.28);
  background: rgba(85, 217, 230, 0.06);
  color: rgba(255, 250, 240, 0.76);
}

.du-home .buzz-grid {
  gap: 1px;
  margin-top: 42px;
  padding: 1px;
  background: var(--soul-line-dark);
}

/* The feed renders .receipt-card; alias it so the panel treatment the
   v2 pass wrote for .buzz-card actually applies to the live cards. */
.du-home .buzz-card,
.du-home .receipt-card {
  border: 0;
  border-radius: 0;
  background: #11181d;
  box-shadow: none;
}

.du-home .buzz-card:hover,
.du-home .receipt-card:hover {
  border-color: transparent;
  background: #162127;
  transform: translateY(-3px);
}

.du-home .buzz-card-headline,
.du-home .buzz-card-chapter-title {
  color: #fffaf0;
}

.du-home .buzz-card-quote,
.du-home .buzz-card-chapter,
.du-home .buzz-card-chapter-excerpt,
.du-home .buzz-card-source,
.du-home .buzz-card-action-body {
  color: rgba(255, 250, 240, 0.66);
}

.du-home .buzz-feed-stats {
  margin-top: 1px;
  border: 0;
  background: var(--soul-line-dark);
  gap: 1px;
}

.du-home .buzz-feed-stat {
  border: 0;
  background: #0e1519;
}

/* Pattern: the grade archive becomes a searchable evidence wall. */
.du-home .platforms {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background: #0d1317;
  color: var(--soul-cream);
}

.du-home .platforms .section-head h2 {
  color: #fffaf0;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .platforms .section-head p {
  color: rgba(255, 250, 240, 0.62);
}

.du-home .platform-grid {
  gap: 1px;
  margin-top: 48px;
  padding: 1px;
  background: var(--soul-line-dark);
}

.du-home .p-card.du-pancake {
  border: 0;
  border-radius: 0;
  background: #141c21;
  color: var(--soul-cream);
  box-shadow: none;
}

.du-home .p-card.du-pancake summary {
  min-height: 116px;
  padding: 25px 24px;
}

.du-home .p-card-name {
  color: #fffaf0;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.35rem;
}

.du-home .p-card-tag,
.du-home .p-card-danger p {
  color: rgba(255, 250, 240, 0.62);
}

.du-home .p-card-danger {
  border-top-color: var(--soul-line-dark);
}

/* Translation: quieter paper, manuscript voice, lower signal noise. */
.du-home .excerpt {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background:
    linear-gradient(rgba(34, 42, 45, 0.035) 1px, transparent 1px),
    var(--soul-paper);
  background-size: 100% 34px;
}

.du-home .excerpt .section-head h2 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .excerpt .gem-excerpt-grid {
  gap: 24px;
  margin-top: 50px;
}

.du-home .excerpt .gem-excerpt-card {
  position: relative;
  min-height: 330px;
  padding: 42px 34px;
  border: 1px solid rgba(34, 42, 45, 0.16);
  border-radius: 0;
  background: rgba(255, 250, 240, 0.9);
  box-shadow: 0 20px 54px rgba(48, 39, 28, 0.08);
}

.du-home .excerpt .gem-excerpt-card::after {
  content: '';
  position: absolute;
  left: 34px;
  right: 34px;
  bottom: 24px;
  height: 1px;
  background: linear-gradient(90deg, var(--soul-cyan-deep), transparent);
}

.du-home .excerpt .gem-excerpt-card h3 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.15;
}

.du-home .excerpt .gem-excerpt-card p {
  color: #4c5559;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.06rem;
  line-height: 1.72;
}

/* Action: practical tools become tangible objects, not spectacle. */
.du-home .toolkits {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background: var(--soul-cream);
}

.du-home .toolkits .section-head h2 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .toolkits .gem-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 48px;
}

.du-home .toolkits .gem-feature-grid > article {
  min-height: 430px;
  padding: 34px;
  border: 1px solid var(--soul-line-light);
  border-radius: 0;
  background: rgba(255, 250, 240, 0.72);
  box-shadow: none;
}

.du-home .toolkits .gem-feature-grid > article:hover {
  border-color: rgba(17, 170, 189, 0.42);
  transform: translateY(-3px);
  box-shadow: 0 24px 60px rgba(46, 39, 30, 0.1);
}

.du-home .toolkit-feature-icon {
  color: var(--soul-teal-ink);
}

.du-home .toolkit-tag {
  color: var(--soul-teal-ink);
}

.du-home .toolkits h3 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.75rem;
  line-height: 1.13;
}

.du-home .toolkits p {
  color: #576066;
  line-height: 1.66;
}

.du-home .toolkit-gate-form {
  margin-top: auto;
  border-top: 1px solid var(--soul-line-light);
  padding-top: 20px;
}

.du-home .toolkit-gate-form input {
  background: #fffdf7;
  border-color: rgba(18, 28, 33, 0.22);
}

.du-home .toolkit-gate-form button {
  background: var(--soul-ink);
  color: var(--soul-cream);
}

/* The book arrives after the evidence and the tools. */
.du-home .pricing {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background:
    radial-gradient(circle at 50% 15%, rgba(85, 217, 230, 0.09), transparent 32%),
    var(--soul-ink);
  color: var(--soul-cream);
}

.du-home .pricing .section-head h2 {
  color: #fffaf0;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .pricing .section-head p {
  color: rgba(255, 250, 240, 0.62);
}

.du-home .pricing-grid {
  gap: 1px;
  margin-top: 50px;
  padding: 1px;
  background: var(--soul-line-dark);
}

.du-home .price-card,
.du-home .price-card.featured {
  min-height: 390px;
  padding: 40px 32px;
  border: 0;
  border-radius: 0;
  background: #131b20;
  color: var(--soul-cream);
  box-shadow: none;
  transform: none;
}

.du-home .price-card.featured {
  background: #18262b;
}

.du-home .price-format,
.du-home .price-amount {
  color: #fffaf0;
}

.du-home .price-amount {
  font-family: 'Source Serif 4', Georgia, serif;
  font-weight: 400;
}

.du-home .price-note {
  color: rgba(255, 250, 240, 0.58);
}

.du-home .price-card .btn-primary {
  background: var(--soul-cyan);
  border-color: var(--soul-cyan);
  color: #041013;
}

.du-home .dedication-band {
  padding: 96px 0;
  background: var(--soul-paper-deep);
  color: var(--soul-ink);
}

.du-home .dedication-quote {
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: clamp(2.5rem, 4.6vw, 4.8rem);
  font-weight: 400;
  line-height: 1.02;
}

.du-home .data-naked-rotator {
  padding: 110px 0 120px;
  background: var(--soul-paper);
}

.du-home .data-naked-rotator .section-head h2 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-weight: 400;
}

/* Agency: visual noise falls as the reader regains control. */
.du-home .three-things {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background: #edf2ed;
}

.du-home .three-things .section-head h2 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .three-things-grid {
  gap: 14px;
  margin-top: 48px;
}

.du-home .three-thing {
  border: 1px solid rgba(28, 46, 39, 0.16);
  border-radius: 0;
  background: rgba(255, 255, 255, 0.7);
  box-shadow: none;
}

.du-home .three-thing:hover,
.du-home .three-thing:focus-visible {
  border-color: rgba(17, 170, 189, 0.55);
  transform: translateY(-2px);
}

.du-home .lead-magnet {
  padding: 112px 0;
  background:
    radial-gradient(circle at 18% 50%, rgba(155, 132, 238, 0.14), transparent 30%),
    #0b1115;
  color: var(--soul-cream);
}

.du-home .lead-magnet-grid {
  gap: 0;
  border: 1px solid var(--soul-line-dark);
  background: #10181d;
  box-shadow: var(--soul-shadow);
}

.du-home .lead-magnet-art,
.du-home .lead-magnet-copy {
  padding: clamp(34px, 5vw, 64px);
}

.du-home .lead-magnet-art {
  border-right: 1px solid var(--soul-line-dark);
  background: linear-gradient(145deg, rgba(85, 217, 230, 0.08), rgba(155, 132, 238, 0.08));
}

.du-home .lead-magnet-copy h2,
.du-home .lead-magnet-art h3 {
  color: #fffaf0;
  font-family: 'Source Serif 4', Georgia, serif;
}

.du-home .lead-magnet-copy p,
.du-home .lead-magnet-art p {
  color: rgba(255, 250, 240, 0.68);
}

.du-home .lead-magnet-form input {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.22);
  color: #fffaf0;
}

.du-home .lead-magnet-form button {
  background: var(--soul-cyan);
  color: #041013;
}

/* Closure: author, community, questions, calm final action. */
.du-home .about-author {
  padding: 120px 0;
  background: var(--soul-cream);
}

.du-home .about-author-grid {
  gap: clamp(36px, 7vw, 92px);
  align-items: stretch;
}

.du-home .about-author-portrait {
  min-height: 520px;
  border-radius: 0;
  background:
    radial-gradient(circle at 50% 45%, rgba(85, 217, 230, 0.2), transparent 24%),
    linear-gradient(145deg, #10181d, #263239);
  box-shadow: var(--soul-shadow);
}

.du-home .about-author-portrait .monogram {
  color: rgba(255, 250, 240, 0.9);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: clamp(4rem, 8vw, 7rem);
  font-weight: 400;
}

.du-home .about-author-copy h2 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .about-author-copy .pull {
  border-left-color: var(--soul-cyan-deep);
  color: #253035;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.18rem;
}

.du-home .socials-strip {
  padding: 80px 0;
  background: var(--soul-paper-deep);
}

.du-home .socials-row {
  gap: 1px;
  padding: 1px;
  background: var(--soul-line-light);
}

.du-home .social-card {
  border: 0;
  border-radius: 0;
  background: var(--soul-paper);
}

.du-home .faq-section {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background: var(--soul-paper);
}

.du-home .faq-section > .wrap {
  max-width: 920px;
}

.du-home .faq-section h2.t-display {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .faq-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
  background: transparent;
}

.du-home .final-cta {
  min-height: 620px;
  padding: 130px 0;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 20%, rgba(85, 217, 230, 0.13), transparent 32%),
    var(--soul-ink);
  color: var(--soul-cream);
}

.du-home .final-cta-backdrop {
  opacity: 0.15;
}

.du-home .final-cta h2.t-display {
  max-width: 920px;
  margin-right: auto;
  margin-left: auto;
  color: #fffaf0;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display-xl);
  font-weight: 400;
  line-height: 0.95;
}

.du-home .final-cta p {
  color: rgba(255, 250, 240, 0.68);
}

.du-home .final-cta .btn-primary {
  background: var(--soul-cyan);
  border-color: var(--soul-cyan);
  color: #041013;
}

.du-home .final-cta .btn-secondary {
  color: #fffaf0;
  border-color: rgba(255, 250, 240, 0.38);
}

/* Braid harmonization: the living-book strand (lb-*) keeps its structure
   and copy, and adopts the Digital Soul type scale and accent system. */
.du-home .lb-living-book .lb-title,
.du-home .lb-campaign .lb-title {
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .lb-living-book .lb-kicker,
.du-home .lb-living-book .lb-step {
  color: var(--soul-cyan);
}

.du-home .lb-living-book .lb-link {
  color: var(--soul-cyan);
}

.du-home .lb-index a span {
  color: rgba(85, 217, 230, 0.6);
}

.du-home .lb-index a:hover,
.du-home .lb-index a:focus-visible,
.du-home .lb-index a[aria-current='step'] {
  background: rgba(85, 217, 230, 0.09);
}

.du-home .lb-chapter:hover,
.du-home .lb-chapter.is-active {
  border-color: rgba(85, 217, 230, 0.42);
}

.du-home .lb-campaign {
  background: var(--soul-paper-deep);
}

.du-home .lb-campaign .lb-kicker,
.du-home .lb-campaign .lb-link {
  color: var(--soul-teal-ink);
}

/* Reframed on-air funnel line in the hero. */
.du-home .hero-onair {
  margin-top: 14px;
  color: rgba(255, 250, 240, 0.55);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

/* Go-deeper strata: plain layer stays visible, depth expands on demand. */
.du-home .soul-deeper {
  max-width: 760px;
  margin-top: 18px;
  border: 1px solid var(--soul-line-light);
  background: rgba(255, 250, 240, 0.6);
}

.du-home .soul-deeper summary {
  padding: 12px 16px;
  cursor: pointer;
  list-style: none;
  color: var(--soul-teal-ink);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.du-home .soul-deeper summary::-webkit-details-marker {
  display: none;
}

.du-home .soul-deeper summary::before {
  content: '+';
  margin-right: 10px;
}

.du-home .soul-deeper[open] summary::before {
  content: '-';
}

.du-home .soul-deeper .soul-deeper-body {
  padding: 0 16px 16px;
}

.du-home .soul-deeper-dark {
  border-color: var(--soul-line-dark);
  background: rgba(255, 255, 255, 0.04);
}

.du-home .soul-deeper-dark summary {
  color: var(--soul-cyan);
}

.du-home .soul-deeper-dark .soul-deeper-body p {
  color: rgba(255, 250, 240, 0.72);
  line-height: 1.7;
}

/* Trilogy spine: the grid accepts three volumes; it renders what exists. */
.du-home .trilogy-spine {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background: var(--soul-cream);
}

.du-home .trilogy-spine .section-head h2 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .trilogy-spine .section-head p {
  color: #5b6266;
}

.du-home .trilogy-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1px;
  margin: 48px 0 0;
  padding: 1px;
  list-style: none;
  background: var(--soul-line-light);
  border: 1px solid var(--soul-line-light);
}

.du-home .trilogy-item {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 300px;
  padding: 36px 30px;
  background: rgba(255, 250, 240, 0.9);
  transition: background 0.28s ease;
}

.du-home .trilogy-item.is-live {
  background: #fffdf7;
  box-shadow: inset 0 3px 0 var(--soul-cyan-deep);
}

.du-home .trilogy-num {
  color: rgba(11, 25, 30, 0.3);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem;
  letter-spacing: 0.12em;
}

.du-home .trilogy-item h3 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.13;
}

.du-home .trilogy-status {
  color: var(--soul-teal-ink);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.du-home .trilogy-body {
  color: #525b60;
  line-height: 1.66;
}

.du-home .trilogy-cta {
  margin-top: auto;
  padding-top: 18px;
  color: var(--soul-teal-ink);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  border-top: 1px solid var(--soul-line-light);
}

.du-home .trilogy-cta:hover {
  color: var(--soul-cyan-deep);
}

/* Breach correlation engine: printed receipts between two dark rooms. */
.du-home .breach-correlations {
  padding: var(--soul-pad-top) 0 var(--soul-pad-bottom);
  background:
    linear-gradient(rgba(34, 42, 45, 0.035) 1px, transparent 1px),
    var(--soul-paper);
  background-size: 100% 34px;
}

.du-home .breach-correlations .section-head h2 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: var(--soul-display);
  font-weight: 400;
}

.du-home .breach-correlations .section-head p {
  color: #5b6266;
}

.du-home .bc-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 48px;
}

.du-home .bc-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 34px 30px 26px;
  border: 1px solid rgba(34, 42, 45, 0.16);
  background: rgba(255, 250, 240, 0.9);
  box-shadow: 0 20px 54px rgba(48, 39, 28, 0.08);
  transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.du-home .bc-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 26px 64px rgba(48, 39, 28, 0.12);
}

.du-home .bc-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  color: var(--soul-teal-ink);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.du-home .bc-grade {
  color: var(--soul-alert);
}

.du-home .bc-card h3 {
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.13;
}

.du-home .bc-what {
  color: #4c5559;
  line-height: 1.66;
}

.du-home .bc-reveal {
  border: 1px solid var(--soul-line-light);
  background: rgba(233, 223, 207, 0.4);
}

.du-home .bc-reveal summary {
  padding: 12px 16px;
  cursor: pointer;
  list-style: none;
  color: var(--soul-teal-ink);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.du-home .bc-reveal summary::-webkit-details-marker {
  display: none;
}

.du-home .bc-reveal summary::before {
  content: '+';
  margin-right: 10px;
}

.du-home .bc-reveal[open] summary::before {
  content: '-';
}

.du-home .bc-reveal-body {
  padding: 0 16px 16px;
}

.du-home .bc-reveal-body p {
  margin-top: 10px;
  color: #4c5559;
  line-height: 1.66;
}

.du-home .bc-payoff {
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.06rem;
}

.du-home .bc-correlation {
  color: var(--soul-teal-ink);
  font-size: 0.92rem;
}

.du-home .bc-source {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid var(--soul-line-light);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.68rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.du-home .bc-source a {
  color: #5b6266;
  text-decoration: none;
}

.du-home .bc-source a:hover {
  color: var(--soul-teal-ink);
}

.du-home .bc-identity {
  margin-top: 40px;
  color: var(--soul-ink);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.18rem;
  text-align: center;
}

.du-home .bc-cta {
  margin-top: 22px;
  text-align: center;
}

/* Quiet hover polish on the paper cards. */
.du-home .why-this-book .gem-excerpt-card,
.du-home .excerpt .gem-excerpt-card {
  transition: transform 0.28s ease, box-shadow 0.28s ease, background 0.28s ease;
}

.du-home .why-this-book .gem-excerpt-card:hover {
  background: #fffdf7;
}

.du-home .excerpt .gem-excerpt-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 26px 64px rgba(48, 39, 28, 0.12);
}

/* Visible keyboard focus across the page. */
.du-home a:focus-visible,
.du-home button:focus-visible,
.du-home summary:focus-visible,
.du-home input:focus-visible,
.du-home .three-thing:focus-visible {
  outline: 2px solid var(--soul-cyan-deep);
  outline-offset: 3px;
}

/* Tablet and phone keep the same story order as the document. */
@media (max-width: 900px) {
  .du-home .wrap {
    width: min(100% - 36px, 760px);
  }

  .du-home .gem-hero {
    min-height: 980px;
    padding: 480px 0 72px;
    align-items: flex-start;
  }

  .du-home .gem-hero .hero-backdrop {
    height: 520px;
    bottom: auto;
    background-size: auto 520px;
    background-position: 68% 0;
  }

  .du-home .gem-hero::before {
    background:
      linear-gradient(180deg, rgba(4, 7, 9, 0.04) 0%, rgba(4, 7, 9, 0.06) 35%, rgba(4, 7, 9, 0.98) 52%, #080c0f 100%),
      linear-gradient(90deg, rgba(4, 7, 9, 0.18), transparent 64%);
  }

  .du-home .gem-hero .hero-grid,
  .du-home .gem-hero .hero-grid > div:first-child {
    width: 100%;
    min-height: 0;
    padding-top: 0;
  }

  .du-home .gem-hero h1.t-display {
    max-width: 680px;
    font-size: clamp(3.7rem, 10vw, 5.5rem);
  }

  .du-home .gem-hero .hero-cover {
    display: none;
  }

  .du-home .why-this-book .gem-excerpt-card,
  .du-home .why-this-book .gem-excerpt-card:nth-child(n),
  .du-home .toolkits .gem-feature-grid > article {
    grid-column: 1 / -1;
  }

  .du-home .toolkits .gem-feature-grid {
    grid-template-columns: 1fr;
  }

  .du-home .buzz-feed-head {
    grid-template-columns: 1fr;
  }

  .du-home .bc-grid {
    grid-template-columns: 1fr;
  }

  .du-home .lead-magnet-art {
    border-right: 0;
    border-bottom: 1px solid var(--soul-line-dark);
  }
}

@media (max-width: 640px) {
  .du-home {
    display: block;
  }

  .du-home > * {
    order: initial;
  }

  .du-home .wrap {
    width: min(100% - 28px, 560px);
    padding-right: 0;
    padding-left: 0;
  }

  .du-home .gem-hero {
    min-height: 0;
    padding: 390px 0 58px;
  }

  .du-home .gem-hero .hero-backdrop {
    height: 430px;
    background-size: auto 430px;
    background-position: 67% 0;
  }

  .du-home .gem-hero::before {
    background: linear-gradient(180deg, transparent 0%, rgba(4, 7, 9, 0.08) 36%, rgba(4, 7, 9, 0.98) 49%, #080c0f 100%);
  }

  .du-home .gem-hero h1.t-display {
    margin-top: 22px;
    font-size: clamp(3.05rem, 15vw, 4.15rem);
    line-height: 0.92;
  }

  .du-home .gem-hero .hero-sub {
    font-size: 1rem;
  }

  .du-home .gem-microproof {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .du-home .gem-hero .hero-ctas,
  .du-home .final-cta .hero-ctas {
    display: grid;
    grid-template-columns: 1fr;
  }

  .du-home .gem-hero .btn-primary,
  .du-home .gem-hero .btn-secondary,
  .du-home .final-cta .btn-primary,
  .du-home .final-cta .btn-secondary {
    width: 100%;
    justify-content: center;
  }

  .du-home .trust-bar .gem-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .du-home .trust-bar article {
    min-height: 150px;
    padding: 24px 18px;
    border-bottom: 1px solid var(--soul-line-dark);
  }

  .du-home .breach-ticker::before {
    width: 112px;
    font-size: 0.59rem;
  }

  .du-home .breach-ticker-track {
    padding-left: 112px;
  }

  .du-home .why-this-book,
  .du-home .buzz-feed,
  .du-home .platforms,
  .du-home .excerpt,
  .du-home .toolkits,
  .du-home .pricing,
  .du-home .three-things,
  .du-home .about-author,
  .du-home .faq-section {
    padding-top: 80px;
    padding-bottom: 86px;
  }

  .du-home .why-this-book .section-head h2,
  .du-home .buzz-feed h2.t-display,
  .du-home .platforms .section-head h2,
  .du-home .excerpt .section-head h2,
  .du-home .toolkits .section-head h2,
  .du-home .pricing .section-head h2,
  .du-home .three-things .section-head h2,
  .du-home .about-author-copy h2,
  .du-home .breach-correlations .section-head h2,
  .du-home .trilogy-spine .section-head h2,
  .du-home .faq-section h2.t-display {
    font-size: clamp(2.55rem, 12vw, 3.65rem);
    line-height: 0.98;
  }

  .du-home .why-this-book .gem-excerpt-grid {
    display: block;
    border: 0;
    background: transparent;
  }

  .du-home .why-this-book .gem-excerpt-card,
  .du-home .why-this-book .gem-excerpt-card:nth-child(n) {
    min-height: 0;
    margin-bottom: 1px;
    padding: 34px 26px;
  }

  .du-home .why-this-book .gem-excerpt-card h3,
  .du-home .excerpt .gem-excerpt-card h3,
  .du-home .toolkits h3 {
    font-size: 1.55rem;
  }

  .du-home .buzz-grid,
  .du-home .platform-grid,
  .du-home .pricing-grid,
  .du-home .socials-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  .du-home .platform-grid {
    gap: 1px !important;
  }

  .du-home .p-card.du-pancake {
    padding: 0;
  }

  .du-home .toolkits .gem-feature-grid > article {
    min-height: 0;
    padding: 28px 24px;
  }

  .du-home .dedication-band {
    padding: 74px 0;
  }

  .du-home .dedication-quote {
    font-size: clamp(2.2rem, 10vw, 3.25rem);
  }

  .du-home .data-naked-rotator,
  .du-home .lead-magnet,
  .du-home .socials-strip {
    padding-top: 76px;
    padding-bottom: 80px;
  }

  .du-home .lead-magnet-art,
  .du-home .lead-magnet-copy {
    padding: 28px 22px;
  }

  .du-home .about-author-portrait {
    min-height: 280px;
  }

  .du-home .final-cta {
    min-height: 560px;
    padding: 96px 0;
  }

  .du-home .final-cta h2.t-display {
    font-size: clamp(3rem, 13vw, 4.3rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }

  .du-home *,
  .du-home *::before,
  .du-home *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ============================================================
   RENDER PASS: mobile and desktop legibility, 2026-08-11
   ============================================================
   Every rule below is a rendering fix. No copy, link, section,
   or feature is removed. Each block names the defect it repairs
   and the measured cause. ASCII only. No em dashes.
   ============================================================ */

/* R1. "Enter the Living Book" rendered black on black.
   Cause: du-redesign.css .lb-enter-cta (0,1,0) sets
   "color: var(--du-ink) !important" and a cream background, but
   .du-home .gem-hero .btn-secondary (0,3,0) in this file loads
   later and wins the background, leaving #0a0d10 text on
   rgba(7,12,15,0.44) over the dark hero. Measured ratio 1.01:1.
   Fix: match the specificity so the button owns both halves of
   its own pair. Measured after fix: #0a0d10 on #fffaf0 = 18.72:1. */
.du-home .gem-hero .btn-secondary.lb-enter-cta,
.du-home .final-cta .btn-secondary.lb-enter-cta {
  background: var(--soul-paper);
  border-color: var(--soul-paper);
  color: #0a0d10;
  font-weight: 600;
  backdrop-filter: none;
}

.du-home .gem-hero .btn-secondary.lb-enter-cta:hover,
.du-home .final-cta .btn-secondary.lb-enter-cta:hover {
  background: #ffffff;
  border-color: #ffffff;
  color: #0a0d10;
}

/* R2 lives in css/main.css: the fixed-header scroll offset is a
   sitewide rule, not a homepage rule. */

/* R3. CURRENT SIGNAL ticker: the first headline started under the
   145px absolute label, and the strip sliced the last word flat
   against the right edge ("...INVOLVE A HUMAN E").
   Fix: reserve the label lane so no headline hides behind it, and
   fade the trailing edge so the marquee reads as continuing text
   rather than as broken text. Every headline is kept. */
.du-home .breach-ticker {
  padding-left: 145px;
}

.du-home .breach-ticker-track {
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 40px, #000 calc(100% - 56px), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, #000 40px, #000 calc(100% - 56px), transparent 100%);
}

/* R4. On-air funnel line sat at 55 percent opacity over the hero
   photo. Fix: raise the ink and carry a shadow so the line holds
   its contrast over the brightest part of the image.
   Measured after fix: rgba(255,250,240,0.94) on rgb(8,12,15) = 18.87:1. */
.du-home .hero-onair {
  color: rgba(255, 250, 240, 0.94);
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.85);
}

@media (max-width: 768px) {
  /* R3b. The label lane is a third of a phone screen. Put the
     label on its own row above the headlines instead, so the
     strip keeps full width for the content. */
  .du-home .breach-ticker {
    padding-left: 0;
    padding-top: 34px;
  }

  .du-home .breach-ticker::before {
    right: 0;
    bottom: auto;
    width: auto;
    height: 26px;
    justify-content: flex-start;
    place-items: center start;
    padding: 0 16px;
  }

  /* R5. Dead band under the hero author credential. The hero kept
     58px of desktop tail padding above the first section bar. */
  .du-home .gem-hero {
    padding-bottom: 26px;
  }

  /* R6. Dead band between the closing call to action and the
     footer: 96px of section tail plus 60px of footer head. */
  .du-home .final-cta {
    min-height: 0;
    padding: 56px 0 40px;
  }

  /* R6b. Dedication band carried desktop-scale tail padding. */
  .du-home .dedication-band {
    padding-top: 44px;
    padding-bottom: 44px;
  }
}

/* ============================================================
   DIGITAL SOUL V2 - SUBPAGE EXTENSION (.du-sub)
   Extends the living-book visual idiom to interior pages.
   Each page wraps its own content in <main class="du-sub du-X">.
   No homepage content is duplicated. All rules stay scoped to
   .du-sub, with per-page hooks: .du-ask, .du-press, .du-universe,
   .du-news, .du-vault. ASCII only. (L-001, L-002, L-005)
   ============================================================ */

.du-sub {
  position: relative;
  overflow-x: clip;
}

/* -- Shared head band: the soul hairline under every page hero -- */
.du-sub .page-head,
.du-sub .press-hero,
.du-sub .blog-hero {
  position: relative;
  isolation: isolate;
}

.du-sub .page-head::after,
.du-sub .press-hero::after,
.du-sub .blog-hero::after {
  content: '';
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(85, 217, 230, 0.7), rgba(155, 132, 238, 0.45), transparent);
  pointer-events: none;
}

/* -- Typography: one display voice, balanced wrapping -- */
.du-sub h1,
.du-sub h2,
.du-sub h3,
.du-sub .section-head h2 {
  text-wrap: balance;
}

.du-sub p,
.du-sub .section-head p {
  text-wrap: pretty;
}

.du-sub h1.t-display,
.du-sub h2.t-display {
  letter-spacing: -0.02em;
}

.du-sub .t-label,
.du-sub .dedication-eyebrow {
  color: var(--soul-cyan);
  letter-spacing: 0.2em;
}

.du-sub .hero-eyebrow .dot {
  background: var(--soul-cyan);
  box-shadow: 0 0 12px rgba(85, 217, 230, 0.8);
}

/* -- Card idiom: panel surface, hairline border, cyan lift -- */
.du-sub .gem-excerpt-card,
.du-sub .gem-feature-grid article,
.du-sub .gem-stat-grid article,
.du-sub .bio-card,
.du-sub .u-card,
.du-sub .receipt-issue-card,
.du-sub .lead-magnet-art {
  background: var(--soul-ink-soft);
  border: 1px solid var(--soul-line-dark);
  border-radius: 14px;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.du-sub .gem-excerpt-card:hover,
.du-sub .gem-feature-grid article:hover,
.du-sub .gem-stat-grid article:hover,
.du-sub .u-card:hover,
.du-sub .receipt-issue-card:hover {
  transform: translateY(-3px);
  border-color: rgba(85, 217, 230, 0.45);
  box-shadow: var(--soul-shadow);
}

/* Keep static cards static. */
.du-sub .bio-card:hover,
.du-sub .lead-magnet-art:hover {
  transform: none;
}

/* -- Per-page accents (one hook each, ready for divergence) -- */
.du-ask .lead-magnet-art {
  border-color: rgba(85, 217, 230, 0.35);
}

.du-press .press-hero-cover img {
  border-radius: 10px;
  box-shadow: var(--soul-shadow);
}

.du-universe .u-card-cta,
.du-universe .u-stat-number {
  color: var(--soul-cyan);
}

.du-news .receipt-issue-card {
  border-radius: 14px;
}

.du-vault .gem-excerpt-card h3 {
  color: var(--soul-cyan);
}

/* -- Mobile: keep head bands clear of the fixed nav, single column -- */
@media (max-width: 640px) {
  .du-sub .page-head,
  .du-sub .press-hero,
  .du-sub .blog-hero {
    padding-top: 118px;
  }

  .du-sub .gem-feature-grid,
  .du-sub .gem-excerpt-grid,
  .du-sub .bio-grid {
    grid-template-columns: 1fr;
  }

  .du-sub h1.t-display {
    font-size: clamp(1.9rem, 8vw, 2.6rem);
  }
}
