
.f-inv {
  position: relative;
  isolation: isolate;
  padding: var(--f-space-xl) 0;
  background: var(--f-inv-ground);
  --f-inv-object: var(--brand-bg, #fcfcfc);
  --f-inv-obj-ink: var(--brand-ink-strong, #1a1a1a);
  --f-inv-obj-body: var(--brand-ink, #333);
  --f-inv-obj-rule: color-mix(in oklab, var(--brand-ink, #333) 18%, transparent);
  --f-inv-stub-bg: var(--brand-ink-strong, #1a1a1a);
  --f-inv-stub-ink: var(--brand-bg, #fcfcfc);
}
.f-inv-inner {
  width: min(1200px, 100%);
  margin-inline: auto;
  padding-inline: clamp(16px, 4vw, 48px);
}
.f-inv-light,
.f-inv-page {
  color: var(--brand-ink, #333);
  --f-inv-ink: var(--brand-ink-strong, #1a1a1a);
  --f-inv-body: var(--brand-ink, #333);
  --f-inv-quiet: var(--f-quiet-ink);
  --f-inv-lift: 0 22px 48px -26px rgba(0, 0, 0, 0.55);
  --f-inv-edge: none;
}
.f-inv-light {
  --f-inv-ground: color-mix(in oklab, var(--brand-ink, #333) 6%, var(--brand-bg, #fcfcfc));
}
.f-inv-page {
  --f-inv-ground: var(--brand-bg, #fcfcfc);
}
.f-inv-dark {
  color: var(--brand-ink-on-dark, #fcfcfc);
  --f-inv-ink: var(--brand-ink-on-dark, #fcfcfc);
  --f-inv-body: color-mix(in oklab, var(--brand-ink-on-dark, #fcfcfc) 90%, var(--brand-surface-dark, #1a1a1a));
  --f-inv-quiet: color-mix(in oklab, var(--brand-ink-on-dark, #fcfcfc) 80%, var(--brand-surface-dark, #1a1a1a));
  --f-inv-ground: color-mix(in oklab, var(--brand-surface-dark, #1a1a1a), #000 14%);
  --f-inv-lift: 0 34px 76px -32px rgba(0, 0, 0, 0.85);
  --f-inv-edge: 1px solid color-mix(in oklab, var(--brand-ink-on-dark, #fcfcfc) 26%, transparent);
}
.f-inv-media {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
}
.f-inv-bg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 38%;
}
.f-inv-video {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 700ms cubic-bezier(0.16, 1, 0.3, 1);
}
.f-inv-video.f-inv-video-live { opacity: 1; }
.f-inv-bg-scrim {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to right,
      rgba(0, 0, 0, 0.62) 0%,
      rgba(0, 0, 0, 0.44) 46%,
      rgba(0, 0, 0, 0.30) 100%);
}
.f-inv-ask {
  margin: 0;
  max-width: 13em;
  font-size: var(--f-h1);
  line-height: var(--f-lh-h1);
  letter-spacing: var(--f-track-h1);
  color: var(--f-inv-ink);
  text-wrap: balance;
}
.f-inv-line {
  margin: var(--f-space-s) 0 0;
  max-width: var(--f-measure);
  font-size: var(--f-text-lead);
  line-height: var(--f-lh-body);
  color: var(--f-inv-body);
}
.f-inv-note {
  margin: var(--f-space-s) 0 0;
  max-width: var(--f-measure);
  font-size: var(--f-text-caption);
  line-height: var(--f-lh-small);
  color: var(--f-inv-quiet);
}
.f-inv-go { margin-top: var(--f-space-m); }
.f-inv-pair {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 430px;
  gap: clamp(32px, 5vw, 80px);
  align-items: center;
}
.f-inv-ticket {
  --f-inv-stub-w: clamp(54px, 6vw, 74px);
  position: relative;
  display: grid;
  grid-template-columns: var(--f-inv-stub-w) minmax(0, 1fr);
  width: 100%;
  aspect-ratio: 1.586;
  background: var(--f-inv-object);
  border-radius: 12px;
  box-shadow: var(--f-inv-lift);
  outline: var(--f-inv-edge);
}
.f-inv-stub {
  display: grid;
  place-items: center;
  background: var(--f-inv-stub-bg);
  color: var(--f-inv-stub-ink);
  border-radius: 12px 0 0 12px;
  border-inline-end: 2px dashed var(--f-inv-object);
}
.f-inv-stub-word {
  font-family: var(--brand-font-display, inherit);
  font-weight: 700;
  text-transform: uppercase;
  font-size: var(--f-h3);
  line-height: 1;
  letter-spacing: var(--f-track-h2);
  white-space: nowrap;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.f-inv-face {
  display: grid;
  align-content: center;
  padding: clamp(14px, 1.8vw, 20px) clamp(18px, 2.4vw, 26px);
}
.f-inv-terms {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
.f-inv-term {
  padding: 7px 0;
  border-bottom: 1px solid var(--f-inv-obj-rule);
  font-size: var(--f-text-caption);
  line-height: var(--f-lh-small);
  color: var(--f-inv-obj-body);
}
.f-inv-term:last-child { border-bottom: 0; }
.f-inv-v-glass .f-inv-copy {
  padding: clamp(24px, 3vw, 40px) clamp(24px, 3vw, 44px);
  border-radius: 14px;
  background: var(--brand-glass, rgba(26, 26, 26, 0.7));
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 24px 60px -30px rgba(0, 0, 0, 0.8);
}
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .f-inv-v-glass .f-inv-copy {
    -webkit-backdrop-filter: blur(var(--brand-glass-blur, 5px)) saturate(var(--brand-glass-saturate, 1.5));
    backdrop-filter: blur(var(--brand-glass-blur, 5px)) saturate(var(--brand-glass-saturate, 1.5));
  }
}
@media (max-width: 720px) {
  .f-inv-pair {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--f-space-l);
  }
  .f-inv-ticket {
    width: min(430px, 100%);
    align-self: start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .f-inv-video { display: none; }
}
@media print {
  .f-inv { padding: 24px 0; color: #000; }
  .f-inv-media { display: none; }
  .f-inv-copy { background: none; border: 0; box-shadow: none; padding: 0; }
  .f-inv-ticket {
    box-shadow: none;
    outline: 1px solid #000;
    aspect-ratio: auto;
    grid-template-columns: minmax(0, 1fr);
  }
}
