/* ==========================================================================
   Vaia × Red Ventures — Visual polish pass (generic only)
   NOTE: German-deck slide-id-specific rules were removed. This deck reuses
   numeric ids (10/12/15/17), so id-scoped rules from the original collided
   (e.g. forcing drench slides to a light "stone" background). Keep this file
   free of .slide[id="N"] rules.
   ========================================================================== */

:root {
  --projector-copy: #4f4f4f;
  --safe-bottom: 72px;
}

/* 1. Quieter canvas and stronger presentation typography ----------------- */
.slide {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='52' height='52'><path d='M0 0.5H52M0.5 0V52' stroke='rgba(19,0,255,0.024)' fill='none'/></svg>");
}
.slide.s-blue {
  background-image:
    radial-gradient(120% 130% at 82% -10%, rgba(10,0,168,0) 40%, rgba(10,0,168,0.75) 100%),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='52' height='52'><path d='M0 0.5H52M0.5 0V52' stroke='rgba(255,255,255,0.05)' fill='none'/></svg>");
  background-size: auto, 52px 52px;
}

.slide-inner {
  max-width: 1280px;
  padding-top: 72px;
  padding-bottom: var(--safe-bottom);
}

.h-2 { font-size: clamp(34px, 3.25vw, 50px); line-height: 1.02; }
.prod-body { font-size: clamp(16px, 1.34vw, 19px); line-height: 1.48; color: var(--projector-copy); }
.prod-stats span { font-size: 13.5px; line-height: 1.3; color: #5f5f70; }
.rail { color: #626274; font-size: 13.5px; }
.sfoot { color: #666678; font-size: 13px; margin-top: 10px; }
.sfoot:empty { display: none; }
.s-blue .rail,
.s-blue .prod-body { color: rgba(255,255,255,.82); }
.s-blue .rail b,
.s-blue .sfoot .tick { color: rgba(255,255,255,.78); }

/* Registration corners stay, but stop competing with the content. */
.slide.s-white::after { opacity: 0.42; }

/* 2. Quieter, auto-hiding controls --------------------------------------- */
.deck-meta { transition: opacity 240ms ease, transform 240ms var(--ease); }
body.chrome-idle .deck-meta { opacity: 0; transform: translateY(-8px); pointer-events: none; }
body.chrome-idle .deck-meta:focus-within { opacity: 1; transform: none; pointer-events: auto; }
body.chrome-idle .brand { opacity: 0.72; }
.brand { transition: opacity 240ms ease; }

/* Give instructional hints a consistent, visible treatment. */
.rail .rail-hint { font-family: var(--f-body); font-size: 13px; letter-spacing: 0; color: var(--blue); opacity: 1; }
.s-blue .rail .rail-hint { color: rgba(255,255,255,.72); }

/* 3. Compact safe-zone rules --------------------------------------------- */
@media (max-height: 790px) {
  .slide-inner { padding-top: 64px; }
  .shead { margin-bottom: 14px; }
  .sfoot { margin-top: 6px; }
}
@media (prefers-reduced-motion: reduce) { .deck-meta { transition: none; } }
@media print { body { zoom: 1 !important; } }
