/* TAIKUNDA website candidate — single-screen card layout.
   Loaded after site.css. The seven-beat scroll is preserved in
   _previous/index.seven-beats.2026-09-03.html; this file turns the same
   atoms into one full-screen panel. Alpha - not for release.

   Heights of the two fixed bars are measured at runtime by site.js into
   --tk-chrome-h and --tk-foot-h, so nothing is ever buried under them at
   any width or zoom level. */

.is-card,
.is-card body { height: 100%; }

.is-card body {
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
}

/* ── the panel ─────────────────────────────────────────────────────────── */
.card {
  position: relative;
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  min-height: 100svh;
  padding:
    calc(var(--tk-chrome-h, 64px) + clamp(24px, 5vh, 64px))
    var(--tk-gutter)
    calc(var(--tk-foot-h, 120px) + clamp(24px, 5vh, 64px));
  isolation: isolate;
}

.card__inner {
  position: relative;
  z-index: 2;
  max-width: 46rem;
}

.card__title {
  margin: clamp(14px, 2vh, 22px) 0 0;
  font-family: var(--font-im-fell-english);
  font-weight: 400;
  font-size: clamp(38px, 7vw, 86px);
  line-height: 1.02;
  letter-spacing: -.012em;
  color: #F7F3E3;
  text-wrap: balance;
}

.card__lede {
  margin: clamp(16px, 2.4vh, 26px) 0 0;
  max-width: 44ch;
  font-family: var(--font-schibsted-grotesk);
  font-size: clamp(15px, 1.5vw, 19px);
  line-height: 1.62;
  color: rgba(247, 243, 227, .82);
  text-wrap: pretty;
}

.card__actions {
  margin-top: clamp(24px, 3.4vh, 38px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 18px;
}

.card__note {
  margin: 0;
  font-size: max(var(--tk-min-mono), 11.5px);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(247, 243, 227, .62);
}

/* ── the one solid control ─────────────────────────────────────────────── */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 12px 20px;
  border-radius: 10px;
  border: 1px solid transparent;
  font-family: var(--font-schibsted-grotesk);
  font-size: max(var(--tk-min-control), 15px);
  font-weight: 500;
  text-decoration: none;
  transition: transform .25s ease, background-color .25s ease;
}
.btn svg { width: 18px; height: 18px; flex: none; }
.btn__arrow { width: 15px; height: 11px; }

.btn--brass {
  background: var(--tk-capture-line);
  color: #1A1712;
}
.btn--brass:hover { transform: translateY(-2px); background: #E4C67F; }

/* ── fixed chrome at the foot ──────────────────────────────────────────── */
.chrome-foot {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 8;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px clamp(14px, 3vw, 28px);
  padding: clamp(10px, 1.6vh, 16px) var(--tk-gutter);
  background: rgba(14, 12, 9, .82);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(247, 243, 227, .12);
}

.chrome-foot .follow {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.chrome-foot__fine {
  margin: 0;
  flex: 1 1 22rem;
  font-family: var(--font-schibsted-grotesk);
  font-size: max(var(--tk-min-body), 12.5px);
  line-height: 1.5;
  color: rgba(247, 243, 227, .58);
}
.chrome-foot__fine .closing__link { color: rgba(247, 243, 227, .82); }

/* The provenance label and the play control both sit above the fixed foot. */
.is-card .film__label { bottom: calc(var(--tk-foot-h, 120px) + 16px); }
.is-card .film__toggle {
  top: auto;
  bottom: calc(var(--tk-foot-h, 120px) + 16px);
  right: var(--tk-gutter);
  left: auto;
}

/* Rotation: one capture visible at a time, crossfaded. */
.is-card .film__media {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1.1s ease;
}
.is-card .film__media[data-active="true"] { opacity: 1; }

@media (prefers-reduced-motion: reduce) {
  .is-card .film__media { transition: none; }
  .btn--brass:hover { transform: none; }
}

@media (max-width: 720px) {
  .card { align-items: flex-end; }
  .chrome-foot { gap: 8px 14px; }
  /* Narrow enough that the provenance label runs the full width, so the play
     control sits above it rather than across it. */
  .is-card .film__toggle { bottom: calc(var(--tk-foot-h, 120px) + 62px); }
  .is-card .film__label { right: var(--tk-gutter); }
}

/* The supplied mark is wider than it is tall; hold its ratio in the bar. */
.chrome__mark { width: auto; height: 26px; object-fit: contain; }
