/* ========== WARM LAYER (features draft, 2026-11-02). Hero (#top) is untouched; everything is scoped to .night. ========== */
:root {
  --w-navy: #0B2A55;  --w-indigo: #1E2A6B;  --w-deep: #071C3A;  --w-plum: #2A2350;
  --w-amber: #FFB547; --w-cream: #FBF4E4;   --w-cream-2: #F5EAD2; --w-ink: #0B2340;
  --w-text: rgba(255,255,255,0.86); --w-text-2: rgba(255,255,255,0.74);
}
.night { --text-dim: var(--w-text); --text-faint: rgba(255,255,255,0.66);
  background:
    radial-gradient(60% 40% at 85% 6%, rgba(255,181,71,0.16), transparent 70%),
    radial-gradient(50% 30% at 10% 30%, rgba(120,110,255,0.14), transparent 70%),
    radial-gradient(55% 30% at 90% 58%, rgba(245,193,74,0.12), transparent 70%),
    radial-gradient(50% 30% at 8% 82%, rgba(255,160,90,0.10), transparent 70%),
    linear-gradient(180deg, var(--w-deep) 0%, var(--w-navy) 18%, var(--w-indigo) 36%, var(--w-navy) 52%, var(--w-plum) 68%, var(--w-navy) 84%, var(--w-deep) 100%) !important;
}
.night .lead, .night .muted { color: var(--w-text); }
.night .h2 { color: #fff; text-shadow: 0 0 40px rgba(245,193,74,0.10); }
.night .section.reputation, .night .section.spike, .night .section.agents { background: transparent; }
.night .section, .night .feature { position: relative; }

/* Slow lighthouse sweep: small GPU layer, transform+opacity only (no full-section repaint). */
.night [data-beam] { position: relative; }
.night [data-beam]:not(.band-cream)::after {
  content: "";
  position: absolute;
  top: -8%; right: -12%;
  width: min(640px, 65%);
  height: min(720px, 85%);
  z-index: -1;
  pointer-events: none;
  border-radius: 50% 0 40% 50%;
  background: radial-gradient(ellipse 70% 90% at 100% 0%, rgba(255,196,90,0.18), rgba(255,196,90,0.05) 42%, transparent 70%);
  transform-origin: 100% 0%;
  transform: translateZ(0) rotate(-6deg);
  opacity: 0.55;
  will-change: transform, opacity;
  contain: layout style;
  backface-visibility: hidden;
  animation: w-sweep 18s ease-in-out infinite alternate;
}
@keyframes w-sweep {
  from { transform: translateZ(0) rotate(-6deg); opacity: 0.4; }
  to { transform: translateZ(0) rotate(10deg); opacity: 0.85; }
}

/* Kickers / eyebrows in gold with glow */
.night .eyebrow, .night .w-kicker, .night .label { color: var(--gold) !important; text-shadow: 0 0 18px rgba(245,193,74,0.35); }

/* Gold line-icon tiles */
.w-ic { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; margin-bottom: 4px;
  color: var(--gold);
  background: radial-gradient(100% 100% at 30% 20%, rgba(245,193,74,0.28), rgba(245,193,74,0.06) 70%);
  border: 1px solid rgba(245,193,74,0.35);
  box-shadow: 0 0 24px rgba(245,193,74,0.18), inset 0 1px 0 rgba(255,255,255,0.12); }
.w-ic svg { width: 22px; height: 22px; }
.bento-copy .w-ic { margin-bottom: 12px; }

/* Lifted card surfaces + gold hover glow */
.night .feat-card, .night .rep-card, .night .agent-card, .night .bento-tile, .night .price-card, .night .who-lead, .night .who-compact, .night .problem-item {
  position: relative;
  background: linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025)), rgba(14,34,78,0.55);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 1px 0 rgba(255,255,255,0.08) inset, 0 18px 40px -20px rgba(0,0,0,0.45);
  transition: border-color .35s ease, box-shadow .35s ease, transform .35s cubic-bezier(.2,.7,.2,1);
}
.night .feat-card::before, .night .rep-card::before, .night .agent-card::before, .night .bento-tile::before, .night .price-card::before {
  content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity .35s ease;
  background: radial-gradient(320px circle at var(--mx,50%) var(--my,0%), rgba(245,193,74,0.16), transparent 60%);
}
.night .feat-card:hover, .night .rep-card:hover, .night .agent-card:hover, .night .bento-tile:hover, .night .price-card:hover, .night .who-lead:hover, .night .who-compact:hover {
  border-color: rgba(245,193,74,0.55);
  box-shadow: 0 0 0 1px rgba(245,193,74,0.18), 0 24px 60px -24px rgba(245,193,74,0.35);
  transform: translateY(-3px);
}
.night .feat-card:hover::before, .night .rep-card:hover::before, .night .agent-card:hover::before, .night .bento-tile:hover::before, .night .price-card:hover::before { opacity: 1; }
.night .feat-card-accent, .night .rep-card-accent, .night .agent-card-accent { border-color: rgba(245,193,74,0.38);
  background: radial-gradient(120% 100% at 0% 0%, rgba(245,193,74,0.18), transparent 60%), linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.03)), rgba(14,34,78,0.6); }
.night .feat-card p, .night .rep-card p, .night .agent-card p, .night .bento-tile p { color: var(--w-text-2); }

/* Product UI with glow frames */
.night .ui-shot, .glow-frame { position: relative; border-radius: 16px;
  box-shadow: 0 0 0 1px rgba(245,193,74,0.28), 0 30px 80px -30px rgba(245,193,74,0.45), 0 20px 60px -20px rgba(30,42,107,0.9); }

/* Agents: app icons */
.agent-mark { background: radial-gradient(100% 100% at 30% 20%, rgba(245,193,74,0.25), rgba(245,193,74,0.05) 70%) !important; border: 1px solid rgba(245,193,74,0.35); box-shadow: 0 0 22px rgba(245,193,74,0.18); }
.agent-mark img.agent-app-icon { width: 28px; height: 28px; border-radius: 7px; }

/* ===== Cream bands ===== */
.night .band-cream { color: var(--w-ink); --text-dim: #3D4B5E; --text-faint: #5B6675;
  background:
    radial-gradient(60% 60% at 100% 0%, rgba(245,193,74,0.22), transparent 60%),
    radial-gradient(50% 50% at 0% 100%, rgba(255,181,71,0.14), transparent 60%),
    linear-gradient(180deg, var(--w-cream), var(--w-cream-2)) !important; }
.night .band-cream .h2, .night .band-cream h3, .night .band-cream .feat-group-title { color: var(--w-ink) !important; text-shadow: none; }
.night .band-cream .lead, .night .band-cream .muted, .night .band-cream p { color: #3D4B5E !important; }
.night .band-cream .eyebrow, .night .band-cream .w-kicker, .night .band-cream .label { color: var(--gold-ink) !important; text-shadow: none; }
.night .band-cream .eyebrow::before { background: var(--gold-ink); }
.night .band-cream .feat-card, .night .band-cream .rep-card {
  background: #fff; border: 1px solid #EADFC6; box-shadow: 0 1px 0 #fff inset, 0 12px 30px -18px rgba(11,35,64,0.25); }
.night .band-cream .feat-card-accent, .night .band-cream .rep-card-accent { background: linear-gradient(180deg, #FFF8E6, #fff); border-color: rgba(200,150,40,0.45); }
.night .band-cream .feat-card:hover, .night .band-cream .rep-card:hover { border-color: rgba(200,150,40,0.7); box-shadow: 0 22px 50px -24px rgba(200,140,30,0.45); }
.night .band-cream .w-ic { color: #A97410; background: radial-gradient(100% 100% at 30% 20%, rgba(245,193,74,0.35), rgba(245,193,74,0.10) 70%); border-color: rgba(200,150,40,0.45); box-shadow: 0 6px 18px -6px rgba(200,140,30,0.4); }
.night .band-cream .caption { color: #5B6675; }

/* Reputation: head left, product UI right, cards below */
.section.reputation > .wrap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 32px 56px; align-items: center; }
.section.reputation .section-head { max-width: none; }
.section.reputation .rep-visual { margin: 0; }
.section.reputation .rep-grid { grid-column: 1 / -1; margin-top: 16px; }
@media (max-width: 900px) { .section.reputation > .wrap { grid-template-columns: 1fr; } }

/* ===== Spike live widget ===== */
.spike-live { padding: 20px; border-radius: 18px; color: #fff;
  background: radial-gradient(120% 80% at 100% 0%, rgba(245,193,74,0.20), transparent 60%), linear-gradient(180deg, #13306A, #0D2350); }
.sl-head { display: flex; align-items: center; gap: 10px; font-size: var(--fs-label); font-weight: 600; }
.sl-title { flex: 1; }
.sl-chip { font-size: var(--fs-label); padding: 2px 10px; border-radius: 999px; background: rgba(245,193,74,0.18); color: var(--gold); border: 1px solid rgba(245,193,74,0.4); }
.sl-pulse { width: 10px; height: 10px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 0 rgba(245,193,74,0.6); animation: w-pulse 1.8s ease-out infinite; }
@keyframes w-pulse { to { box-shadow: 0 0 0 12px rgba(245,193,74,0); } }
.sl-metric { display: flex; align-items: baseline; gap: 8px; margin: 14px 0 4px; }
.sl-num { font-family: "V7 Fraunces", Georgia, serif; font-size: 48px; line-height: 1; font-weight: 600; color: var(--gold); font-variant-numeric: tabular-nums; text-shadow: 0 0 30px rgba(245,193,74,0.45); }
.sl-x { color: rgba(255,255,255,0.8); font-size: var(--fs-label); }
.sl-chart { width: 100%; height: 90px; display: block; margin: 6px 0 14px; }
.sl-line { stroke-dasharray: 1; stroke-dashoffset: 1; filter: drop-shadow(0 0 6px rgba(245,193,74,0.7)); }
.sl-area { opacity: 0; }
.spike-live.w-in .sl-line { stroke-dashoffset: 0; transition: stroke-dashoffset 1.8s cubic-bezier(.4,.1,.2,1); }
.spike-live.w-in .sl-area { opacity: 1; transition: opacity 1s ease .9s; }
.sl-feed { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.sl-feed li { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 12px;
  background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.10); font-size: var(--fs-label); line-height: 20px; }
.sl-src { font-size: var(--fs-label); font-weight: 600; color: var(--gold); min-width: 58px; }
.sl-txt { color: rgba(255,255,255,0.9); min-width: 0; }
.sl-sent { font-size: var(--fs-label); padding: 2px 8px; border-radius: 999px; white-space: nowrap; }
.sl-sent.pos { background: rgba(80,200,140,0.18); color: #8BE3B5; }
.sl-sent.neg { background: rgba(255,120,110,0.18); color: #FFA79F; }
.sl-sent.neu { background: rgba(255,255,255,0.12); color: #E6E9F0; }
.sl-feed li { transition: opacity .45s ease, transform .45s cubic-bezier(.2,.7,.2,1); }
.sl-feed li.sl-new { opacity: 0; transform: translateY(-10px) scale(.98); }
.sl-feed li.w-up { /* feed uses its own enter; never hide via reveal */ opacity: 1; transform: none; }
@media (max-width: 600px) { .sl-feed li { grid-template-columns: 1fr auto; } .sl-src { grid-column: 1 / -1; } .sl-num { font-size: 40px; } }

/* ===== Reveal + stagger =====
   Visible by default (no-JS). JS adds html.w-motion then .w-up; only pending cards hide.
   Once .w-in is set it never toggles back. Opacity + transform only; will-change while pending. */
.w-up { opacity: 1; transform: none; }
html.w-motion .w-up:not(.w-in) {
  opacity: 0;
  transform: translate3d(0, 18px, 0);
  will-change: opacity, transform;
}
.w-up.w-in {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1);
  transition-delay: calc(var(--i, 0) * 70ms), calc(var(--i, 0) * 70ms);
  will-change: auto;
}

/* Brighter type on dark */
.night .feature-bullets li, .night .spike-points li { color: var(--w-text); }
.night .caption { color: rgba(255,255,255,0.66); }

@media (prefers-reduced-motion: reduce) {
  .night [data-beam]::after, .sl-pulse { animation: none !important; }
  .w-up { opacity: 1 !important; transform: none !important; transition: none !important; }
  .sl-line { stroke-dashoffset: 0 !important; transition: none !important; } .sl-area { opacity: 1 !important; }
  .night .feat-card, .night .rep-card, .night .agent-card, .night .bento-tile, .night .price-card { transition: none !important; transform: none !important; }
}
html.shot .w-up { opacity: 1 !important; transform: none !important; }
html.shot .sl-line { stroke-dashoffset: 0 !important; } html.shot .sl-area { opacity: 1 !important; }
.agent-mark { width: 44px !important; height: 44px !important; }
.agent-mark img[src*="mcp"], .agent-mark img[src*="api"], .agent-mark img[src*="webhook"], .agent-mark img[src*="email"] {
  filter: brightness(0) saturate(100%) invert(80%) sepia(45%) saturate(800%) hue-rotate(345deg) brightness(102%); }
.night .band-cream .feat-group { background: linear-gradient(180deg, rgba(255,255,255,0.65), rgba(255,250,238,0.55)) !important;
  border: 1px solid #EADFC6 !important; box-shadow: 0 20px 50px -30px rgba(11,35,64,0.25) !important; }
.night .band-cream .feat-group-title { color: var(--w-ink) !important; }
.night .band-cream .feat-group-kicker { color: var(--gold-ink) !important; }
.bento { grid-template-rows: auto auto auto !important; }
.bento .bento-reputation { grid-column: 1 / -1; }

/* ===== Remaining sections (2026-11-02 pass 2) ===== */
/* Problem: cards with icon, not bare rows */
.night .problem-list { display: grid; gap: 16px; }
.night .problem-item { padding: 24px 28px !important; border-radius: 18px; border-top: 1px solid rgba(255,255,255,0.12) !important; gap: 0; }
.night .problem-item .point { display: none; }
.night .problem-item h3 { color: #fff; margin-top: 10px; }
.night .problem-item p, .night .step p { color: var(--w-text-2); }
.night .problem-item:hover { border-color: rgba(245,193,74,0.5); transform: translateY(-3px); }
/* How: gold icon stops on the lit rail */
.night .steps::before { top: 22px; } .night .steps::after { top: 22px; }
.night .step { padding: 0; }
.night .step .w-ic { width: 48px; height: 48px; margin-bottom: 24px; background: radial-gradient(100% 100% at 30% 20%, rgba(245,193,74,0.35), rgba(30,42,107,0.95) 75%); }
.night .step h3 { color: #fff; }
/* Who cream band */
.night .band-cream .who-lead, .night .band-cream .who-compact { background: #fff; border: 1px solid #EADFC6; box-shadow: 0 16px 40px -24px rgba(11,35,64,0.3); color: var(--w-ink); }
.night .band-cream .who-lead { background: linear-gradient(160deg, #FFF6DD, #fff 60%); border-color: rgba(200,150,40,0.45); }
.night .band-cream .who-lead:hover, .night .band-cream .who-compact:hover { border-color: rgba(200,150,40,0.75); box-shadow: 0 24px 50px -24px rgba(200,140,30,0.45); }
.night .section.who.band-cream { padding-top: 96px; padding-bottom: 96px; }
/* Pricing: premium, Beam glows */
.night .pricing { background: radial-gradient(60% 50% at 50% 40%, rgba(245,193,74,0.14), transparent 70%); }
.night .price-card { background: linear-gradient(180deg, rgba(255,255,255,0.09), rgba(255,255,255,0.03)), rgba(16,38,86,0.7); }
.night .price-card .amount { color: #fff; }
.night .price-card li { color: var(--w-text); }
.night .price-card.featured { border: 1px solid rgba(245,193,74,0.75) !important;
  background: radial-gradient(120% 70% at 50% 0%, rgba(245,193,74,0.28), transparent 60%), linear-gradient(180deg, #1B3A7A, #12285A) !important;
  box-shadow: 0 0 0 1px rgba(245,193,74,0.3), 0 0 60px -10px rgba(245,193,74,0.55), 0 30px 80px -30px rgba(245,193,74,0.5) !important;
  transform: translateY(-8px); }
.night .price-card.featured:hover { transform: translateY(-11px); }
.night .price-card.featured .amount { color: var(--gold); text-shadow: 0 0 28px rgba(245,193,74,0.45); }
@media (max-width: 1100px) { .night .price-card.featured { transform: none; } }
/* FAQ (cream, outside .night): warmer, brighter */
.faq { background: radial-gradient(50% 60% at 100% 0%, rgba(245,193,74,0.20), transparent 60%), linear-gradient(180deg, #FBF4E4, #F5EAD2) !important; }
.faq details { background: #fff; border-radius: 14px; border: 1px solid #EADFC6; transition: border-color .3s, box-shadow .3s, transform .3s; }
.faq details:hover { transform: translateY(-2px); box-shadow: 0 14px 30px -18px rgba(200,140,30,0.45); }
.faq summary { color: #0B2340; }
.faq .a { color: #3D4B5E; }
/* Final CTA: warm dawn instead of black */
.final { background:
    radial-gradient(70% 60% at 50% 100%, rgba(255,181,71,0.30), transparent 65%),
    radial-gradient(50% 40% at 85% 10%, rgba(245,193,74,0.18), transparent 70%),
    linear-gradient(180deg, #0B2A55 0%, #1E2A6B 55%, #2A2350 100%) !important; }
.final-horizon { background: radial-gradient(ellipse 90% 60% at 50% 100%, rgba(255,190,90,0.25), transparent 65%) !important; }
.final .lead { color: rgba(255,255,255,0.86) !important; }
.final .h2, .final h2 { text-shadow: 0 0 40px rgba(245,193,74,0.25); }
.final-land .pill { animation: w-glow 3.2s ease-in-out infinite; }
@keyframes w-glow { 50% { box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 0 0 1px rgba(245,193,74,.6), 0 0 60px rgba(245,193,74,.6), 0 10px 28px rgba(245,193,74,.35); } }
/* Agents: full-colour brand logos on light tiles */
.agent-mark.brand-logo { width: 64px !important; height: 64px !important; border-radius: 16px; background: #fff !important; border: 1px solid rgba(245,193,74,0.5); box-shadow: 0 8px 24px -8px rgba(245,193,74,0.45); }
.agent-mark.brand-logo img { width: 36px; height: 36px; }
.agent-mark.brand-logo img.agent-app-icon { width: 64px; height: 64px; border-radius: 16px; }
/* Spike label */
.sl-num { font-size: 34px; }
@media (prefers-reduced-motion: reduce) { .final-land .pill { animation: none !important; } .faq details:hover { transform: none; } }
.night .steps { list-style: none; padding-left: 0; } .night .step::marker { content: ""; }
.night .price-table, .night .price-table th, .night .price-table td { background-color: rgba(18,40,90,0.55) !important; color: rgba(255,255,255,0.86) !important; border-color: rgba(255,255,255,0.10) !important; }
.night .price-table { border-radius: 16px; overflow: hidden; box-shadow: 0 0 0 1px rgba(245,193,74,0.22), 0 30px 70px -40px rgba(245,193,74,0.35); }
.night .price-table tr:hover td { background-color: rgba(245,193,74,0.08) !important; }
.faq .crest-night { fill: #0B2A55; }
.who-visual { margin: 20px 0 0; } .who-visual .ui-shot { box-shadow: 0 0 0 1px rgba(200,150,40,0.4), 0 24px 50px -24px rgba(200,140,30,0.5); border-radius: 12px; overflow: hidden; }
.who-lead .crowd-dots, .who-lead > .dots { display: none; }
.who-visual .ui-shot { aspect-ratio: 16 / 7; } .who-visual img { width: 100%; height: 100%; object-fit: cover; object-position: top left; }
.who-lead .w-ic + .label, .who-lead { align-content: start; }
.night .band-cream .who-compact { display: flex; flex-direction: column; justify-content: center; }
.who-visual .ui-shot { aspect-ratio: 1560 / 1060; max-height: none; } .who-visual img { object-fit: contain; }
.who-bullets { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 8px; }
.who-bullets li { position: relative; padding-left: 26px; font-size: var(--fs-body); line-height: 22px; color: #22344D; }
.who-bullets li::before { content: ""; position: absolute; left: 0; top: 3px; width: 16px; height: 16px; border-radius: 50%;
  background: rgba(245,193,74,0.25) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A97410' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 10px no-repeat; }
.night .band-cream .who-compact { justify-content: center; padding: 28px !important; }
.who-visual .ui-shot { aspect-ratio: 16 / 9 !important; } .who-visual img { object-fit: cover !important; object-position: top left; }
@media (max-width: 1024px) { .night .steps::before, .night .steps::after { display: none; } .night .steps { padding-left: 0; } .night .step .w-ic { margin-bottom: 16px; } }
.night .h2, .faq .h2, .final h2 { text-wrap: balance; }
.night .crowd-chip { border: 1px solid rgba(245,193,74,0.45) !important; background: radial-gradient(100% 100% at 30% 20%, rgba(245,193,74,0.22), rgba(20,44,96,0.9) 70%) !important; box-shadow: 0 0 26px rgba(245,193,74,0.22) !important; }
.night .crowd-mark span:last-child { color: rgba(255,255,255,0.85); }
.night .multi { background: radial-gradient(50% 70% at 85% 40%, rgba(245,193,74,0.16), transparent 70%); }
.night .said { border: 1px solid rgba(245,193,74,0.35) !important; background: linear-gradient(180deg, rgba(255,255,255,0.09), rgba(255,255,255,0.03)), rgba(16,38,86,0.7) !important; box-shadow: 0 20px 50px -24px rgba(245,193,74,0.4) !important; }
.who-visual .ui-shot { overflow: hidden; } .who-visual img { width: 103% !important; max-width: none; }
.nw { white-space: nowrap; }

/* Mobile sticky nav: solid backing so hero text does not show through */
@media (max-width: 767px) {
  .nav-solid {
    background: var(--w-navy);
    background: rgba(11, 42, 85, 0.88);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }
}

/* ===== AUDIT WIDGET LAYOUT (Derek port, preview only) ===== */
.check-section[data-check-layout="progress"] .check-inner,
.check-section[data-check-layout="result"] .check-inner,
.check-section[data-check-layout="low-mentions"] .check-inner { max-width: 1080px; }

.check-section[data-check-layout="progress"] .check-widget-wrap,
.check-section[data-check-layout="result"] .check-widget-wrap,
.check-section[data-check-layout="low-mentions"] .check-widget-wrap { max-width: 1080px; }

.check-section[data-check-layout="progress"] .check-pill,
.check-section[data-check-layout="progress"] .check-on,
.check-section[data-check-layout="progress"] .check-sub,
.check-section[data-check-layout="progress"] .h-check,
.check-section[data-check-layout="result"] .check-pill,
.check-section[data-check-layout="result"] .check-on,
.check-section[data-check-layout="result"] .check-sub,
.check-section[data-check-layout="result"] .h-check,
.check-section[data-check-layout="low-mentions"] .check-pill,
.check-section[data-check-layout="low-mentions"] .check-on,
.check-section[data-check-layout="low-mentions"] .check-sub,
.check-section[data-check-layout="low-mentions"] .h-check { display: none; }

/* ========== P0v2 subpage warmth ========== */
.page-warm .brand-word {
  font-family: var(--sans, "Sora", system-ui, sans-serif);
  font-weight: 600;
  font-size: 18px;
  letter-spacing: -0.02em;
  text-transform: lowercase;
  color: var(--foam, #F7F4EE);
}
.page-warm.night {
  /* Keep subpages on navy with soft gold wash; avoid full homepage multi-stop paint if too strong */
  background:
    radial-gradient(55% 35% at 90% 0%, rgba(255,196,90,0.14), transparent 70%),
    radial-gradient(40% 30% at 8% 20%, rgba(120,110,255,0.08), transparent 70%),
    #001A2E !important;
}
.page-warm .pg-hero[data-beam] { position: relative; overflow: hidden; }
.page-warm .pg-card {
  background: #0A2238;
  border: 1px solid rgba(245, 193, 74, 0.18);
  box-shadow: 0 12px 32px -16px rgba(0,0,0,0.55), inset 0 1px 0 rgba(255,255,255,0.04);
  position: relative;
}
.page-warm .pg-card:hover {
  border-color: rgba(245, 193, 74, 0.4);
}
.page-warm .pg-card .w-ic {
  display: inline-flex;
  width: 28px; height: 28px;
  color: #F5C14A;
  margin-bottom: 12px;
}
.page-warm .pg-card .w-ic svg { width: 28px; height: 28px; }
.page-warm .band-cream {
  background: linear-gradient(180deg, #FBF4E4 0%, #F5EAD2 100%);
  color: #0B2340;
}
.page-warm .band-cream h2,
.page-warm .band-cream .pg-intro,
.page-warm .band-cream .pg-body,
.page-warm .band-cream p,
.page-warm .band-cream li { color: #0B2340; }
.page-warm .band-cream a { color: #0B2340; }
.page-warm .band-cream .pg-card {
  background: #fff;
  border-color: rgba(11,35,64,0.12);
  color: #0B2340;
}
.page-warm .band-cream .pg-card h3 { color: #0B2340; }
.page-warm .band-cream a.pg-card h3 { color: #8A5A00; }
.page-warm .btn-gold {
  background: #F5C14A;
  color: #001A2E;
  border: none;
}
.page-warm .btn-gold:hover { background: #e0ad3a; }
.page-warm .w-up { opacity: 0; transform: translateY(12px); transition: opacity .55s ease, transform .55s ease; transition-delay: calc(var(--i, 0) * 45ms); }
.page-warm .w-up.w-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .page-warm .w-up { opacity: 1; transform: none; transition: none; }
  .page-warm .pg-hero[data-beam]::after { animation: none !important; }
}

/* P0v3: readable bold on cream; mono line icons (no gold discs) on feature cards */
.band-cream .pg-body strong,
.page-warm .band-cream .pg-body strong,
.night .band-cream .pg-body strong { color: #0B2340; }
.page-warm.night .band-cream .pg-card .w-ic,
.page-warm .band-cream .pg-card .w-ic {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  width: 28px;
  height: 28px;
  border-radius: 0;
  color: #A97410;
  padding: 0;
}
.page-warm.night .band-cream .pg-card .w-ic svg { width: 28px; height: 28px; }
