/* Studio heat — whole-theme energy (3.0). Still black / white / gold. */

::selection {
  background: var(--tbt-gold);
  color: #111;
}

.tbt-site {
  --tbt-gold: #e0b12f;
  --tbt-gold-2: #f6d06a;
  --tbt-ember: #f08a1e;
}

body.tbt-light.tbt-site,
html.tbt-light body.tbt-site {
  --tbt-bg: #f4ead6;
  --tbt-surface: #fff8ea;
}

/* Gold masthead — reads as a live strip, not a whisper */
.tbt-promo {
  background: var(--tbt-gold);
  color: #16130e;
  border-bottom: 0;
  letter-spacing: 0.2em;
  animation: tbt-promo-flash 8s ease-in-out infinite;
}
.tbt-promo a { color: #16130e; text-decoration: underline; text-underline-offset: 3px; }
.tbt-promo a:hover { color: #000; }

@keyframes tbt-promo-flash {
  0%, 88%, 100% { filter: none; }
  92% { filter: brightness(1.08); }
}

/* Buttons actually move */
.tbt-btn {
  transition: background 0.2s ease, color 0.2s ease, transform 0.25s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.25s ease;
}
.tbt-btn--gold {
  box-shadow: 0 8px 24px rgba(212, 166, 42, 0.18);
}
.tbt-btn--gold:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(212, 166, 42, 0.32);
}
.tbt-text-link {
  background-image: linear-gradient(var(--tbt-gold), var(--tbt-gold));
  background-size: 0 1px;
  background-position: 0 100%;
  background-repeat: no-repeat;
  transition: background-size 0.35s ease, color 0.2s ease;
}
.tbt-text-link:hover {
  color: var(--tbt-gold);
  background-size: 100% 1px;
}

/* Type: kickers louder, titles more magazine */
.tbt-kicker {
  font-size: 12px;
  letter-spacing: 0.28em;
}
.tbt-h2 {
  font-size: clamp(1.95rem, 4.4vw, 3.35rem);
}
.tbt-page .tbt-page-hero .tbt-h2 {
  font-size: clamp(2.4rem, 6.2vw, 4.6rem);
  line-height: 0.98;
  max-width: 14ch;
}

/* Sections: not the same beige strip forever */
.tbt-home .tbt-block:nth-of-type(odd),
.tbt-page .tbt-block:nth-of-type(odd) {
  background: rgba(212, 166, 42, 0.035);
}
.tbt-home .tbt-block--quote,
.tbt-home .tbt-block--film {
  background:
    radial-gradient(ellipse 70% 80% at 8% 20%, rgba(212, 166, 42, 0.12), transparent 55%),
    #0a0908;
}
body.tbt-light .tbt-home .tbt-block--quote,
body.tbt-light .tbt-home .tbt-block--film {
  background:
    radial-gradient(ellipse 70% 80% at 8% 20%, rgba(212, 166, 42, 0.18), transparent 55%),
    #efe3cc;
}
.tbt-block { padding: 5.75rem 1.25rem; }

/* Index: giant reel numbers */
.tbt-index a,
.tbt-row {
  position: relative;
  padding: 1.45rem 0 1.45rem 0.15rem;
  overflow: hidden;
}
.tbt-index a:hover,
.tbt-row:hover {
  padding-left: 0.7rem;
  background: linear-gradient(90deg, rgba(212, 166, 42, 0.08), transparent 42%);
}
.tbt-index__n,
.tbt-row__n {
  font-size: 1.05rem;
  letter-spacing: 0.06em;
}
.tbt-index strong,
.tbt-row strong { font-size: 1.45rem; }

/* Quote: wall-sized mark */
.tbt-quote--xl .tbt-quote__mark {
  font-size: clamp(7rem, 16vw, 12rem);
  color: rgba(212, 166, 42, 0.28);
  line-height: 0.4;
}
.tbt-quote--xl .tbt-h2 {
  font-size: clamp(2.4rem, 5.4vw, 4.2rem);
}

/* Closing band: gold field */
.tbt-band--title {
  background: var(--tbt-gold);
  color: #16130e;
  border-top: 0;
  padding: 6.5rem 1.25rem;
}
.tbt-band--title .tbt-kicker,
.tbt-band--title .tbt-h2,
.tbt-band--title .tbt-lead { color: #16130e; }
.tbt-band--title .tbt-lead { opacity: 0.78; }
.tbt-band--title .tbt-btn--gold {
  background: #16130e;
  color: var(--tbt-gold);
  box-shadow: none;
}
.tbt-band--title .tbt-btn--gold:hover {
  background: #000;
  color: #f6d06a;
}
.tbt-band--title .tbt-text-link {
  color: #16130e;
  background-image: linear-gradient(#16130e, #16130e);
}

/* Footer: end-title card */
.tbt-foot {
  position: relative;
  overflow: hidden;
  padding-top: 4.5rem;
  background:
    linear-gradient(180deg, rgba(212, 166, 42, 0.12), transparent 38%),
    #070605;
}
.tbt-foot__stamp {
  position: absolute;
  right: -4%;
  bottom: -12%;
  margin: 0;
  font-family: var(--tbt-serif);
  font-style: italic;
  font-size: clamp(8rem, 22vw, 18rem);
  line-height: 0.75;
  color: rgba(212, 166, 42, 0.09);
  pointer-events: none;
  user-select: none;
  letter-spacing: -0.04em;
}

/* Nav hover: gold underline instead of a whisper */
.tbt-menu__list > li > a:hover {
  color: var(--tbt-gold);
}

/* Doors / shots / cards: more bite */
.tbt-door:hover { transform: translateY(-6px) rotate(-0.4deg); }
.tbt-ai-card:hover { transform: translateY(-4px); }
.tbt-segment-chip:hover { transform: translateY(-3px); }
.tbt-tenet:hover { background: rgba(212, 166, 42, 0.07); }

/* Filmstrip: slightly overlap, more cinema */
.tbt-filmstrip { gap: 0; }
.tbt-slate { margin-right: -1px; }
.tbt-slate:hover { z-index: 2; }

/* Marquee bigger */
.tbt-marquee {
  background: #16130e;
  padding: 1.15rem 0;
}
body.tbt-light .tbt-marquee,
html.tbt-light .tbt-marquee { background: #1c1812; }
.tbt-marquee__track span {
  font-size: clamp(1.45rem, 3.2vw, 2.2rem);
  letter-spacing: 0.22em;
}

@media (max-width: 800px) {
  .tbt-page .tbt-page-hero .tbt-h2 { max-width: none; }
  .tbt-foot__stamp { font-size: 7rem; right: -8%; }
  .tbt-btn--gold:hover { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .tbt-promo { animation: none; }
  .tbt-btn--gold:hover,
  .tbt-door:hover,
  .tbt-ai-card:hover,
  .tbt-segment-chip:hover { transform: none; }
}
