@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/archive/montserrat-latin-700-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/archive/montserrat-latin-900-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/archive/inter-latin-500-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/archive/inter-latin-700-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/archive/inter-latin-900-normal.woff2") format("woff2");
}

:root {
  --tint-root: #7a31e0;
  --tint-signal: #02aef0;
  --tint-accent-pressed: #0087c9;
  --tint-backdrop: #0d0f10;
  --tint-card: #15181b;
  --tint-glyph: #ffffff;
  --tint-dim: #bfbcbc;
  --tint-border: #262b2f;
  --tint-line-strong: #3b444b;
  --tint-gradient-light: #70ddff;
  --tint-gradient-mid: #22c7ff;
  --tint-notice: #c1121f;

  --flow-1: 5px;
  --flow-2: 10px;
  --flow-3: 15px;
  --flow-4: 25px;
  --flow-5: 40px;
  --flow-6: 60px;
  --flow-7: 90px;
  --flow-8: 140px;

  --bend-1: 4px;
  --bend-2: 4px;
  --bend-3: 10px;
  --bend-4: 16px;
  --bend-5: 28px;
  --bend-6: 28px;
  --bend-7: 28px;
  --bend-8: 28px;
  --bend-stadium: 9999px;
  --bend-round-full: 50%;

  --cast-1: 0 1px 2px rgba(0, 0, 0, 0.05);
  --cast-2: 0 2px 4px rgba(0, 0, 0, 0.06);
  --cast-3: 0 4px 10px rgba(0, 0, 0, 0.08);
  --cast-4: 0 10px 28px rgba(0, 0, 0, 0.12);
  --cast-5: 0 20px 48px rgba(0, 0, 0, 0.16);
  --cast-6: 0 24px 56px rgba(0, 0, 0, 0.2);
  --cast-7: 0 28px 64px rgba(0, 0, 0, 0.24);
  --cast-8: 0 32px 72px rgba(0, 0, 0, 0.28);

  --family-lead: "Montserrat", "Trebuchet MS", sans-serif;
  --family-base: "Inter", "Segoe UI", sans-serif;

  --scale-h1: clamp(30px, 5.4vw, 56px);
  --scale-h2: clamp(24px, 3.4vw, 38px);
  --scale-sub: 24px;
  --scale-display-4: 18px;
  --scale-h5: 15px;
  --scale-h6: 13px;
  --scale-body: 16px;
  --scale-sm: 13px;
  --scale-xs: 11px;

  --rhythm-close: 1.08;
  --rhythm-normal: 1.4;
  --rhythm-airy: 1.6;

  --font-weight-plain: 500;
  --font-weight-demi: 700;
  --font-weight-heavy: 900;

  --letter-spacing-packed: -0.02em;
  --letter-spacing-even: 0.02em;
  --letter-spacing-spread: 0.1em;

  --dur-short: 92ms;
  --dur-mid: 180ms;
  --dur-calm: 295ms;

  --ease-out: cubic-bezier(0.33, 0.76, 0.42, 0.98);
  --ease-take-off: cubic-bezier(0.6, 0.01, 0.44, 0.96);
  --ease-even: cubic-bezier(0.6, 0.01, 0.44, 0.96);
  --ease-overshoot: cubic-bezier(0.42, 0.9, 0.57, 0.95);

  --bounds-site: 1000px;
  --bounds-inner: 1000px;
  --bounds-padding-desktop: 40px;
  --bounds-pad-md: 24px;
  --bounds-padding-mobile: 16px;

  --stroke-fine: 1px;
  --stroke-even: 2px;
  --stroke-thick: 3px;

  --bar-size-desktop: 70px;
  --bar-short: 64px;

  --edge: 540px;
  --sec-y: 46px;
  --shell-h: 70px;
  --pad-side: var(--bounds-padding-desktop);
}

@media (max-width: 879px) {
  :root {
    --scale-sub: 20px;
    --scale-display-4: 16px;
    --scale-h5: 14px;
    --scale-h6: 12px;
    --scale-body: 15px;
    --scale-sm: 12px;
    --scale-xs: 10px;
    --sec-y: 34px;
    --pad-side: var(--bounds-pad-md);
  }
}

@media (max-width: 539px) {
  :root {
    --pad-side: var(--bounds-padding-mobile);
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  overflow-x: clip;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--tint-backdrop);
  color: var(--tint-glyph);
  display: flex;
  flex-direction: column;
  font-family: var(--family-base);
  font-size: var(--scale-body);
  font-weight: var(--font-weight-plain);
  line-height: var(--rhythm-normal);
  margin: 0;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}

img {
  max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: anywhere;
}

h1 {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-size: var(--scale-h1);
  font-weight: var(--font-weight-heavy);
  letter-spacing: var(--letter-spacing-packed);
  line-height: var(--rhythm-close);
  margin: 0;
  text-transform: uppercase;
}

h2 {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-size: var(--scale-h2);
  font-weight: var(--font-weight-demi);
  letter-spacing: var(--letter-spacing-packed);
  line-height: var(--rhythm-close);
  margin: 0 0 var(--flow-3);
  text-transform: uppercase;
}

h3,
h4 {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-weight: var(--font-weight-demi);
  letter-spacing: var(--letter-spacing-even);
  line-height: var(--rhythm-normal);
  margin: 0 0 var(--flow-2);
}

h3 {
  font-size: var(--scale-sub);
}

h4 {
  font-size: var(--scale-display-4);
}

h5,
h6 {
  color: var(--tint-glyph);
  font-family: var(--family-base);
  font-weight: var(--font-weight-heavy);
  letter-spacing: var(--letter-spacing-spread);
  margin: 0 0 var(--flow-2);
  text-transform: uppercase;
}

h5 {
  font-size: var(--scale-h5);
}

h6 {
  font-size: var(--scale-h6);
}

p {
  margin: 0 0 var(--flow-3);
}

a {
  color: var(--tint-signal);
  transition: color var(--dur-mid) var(--ease-out);
}

main {
  display: block;
  flex: 1 0 auto;
  margin-block-start: var(--shell-h);
}

.sr-only {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.skip-hop {
  background: var(--tint-signal);
  color: var(--tint-backdrop);
  font-family: var(--family-lead);
  font-size: var(--scale-h6);
  font-weight: var(--font-weight-heavy);
  left: 12px;
  padding: 10px 18px;
  position: fixed;
  text-transform: uppercase;
  top: 12px;
  z-index: 200;
}

.skip-hop:not(:focus) {
  top: -200px !important;
}

[data-cue] {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity var(--dur-calm) var(--ease-out), transform var(--dur-calm) var(--ease-out);
}

[data-cue].has-entered {
  opacity: 1;
  transform: translateY(0);
}

/* ── header : HEAD-RIGHT ─────────────────────────────────────────── */

.i03 {
  background: var(--tint-backdrop);
  inset-block-start: 0;
  inset-inline: 0;
  position: fixed;
  transition: transform var(--dur-mid) var(--ease-out), box-shadow var(--dur-mid) var(--ease-out);
  z-index: 100;
}

.i03.is-cast {
  box-shadow: var(--cast-4);
}

.i03.is-hidden {
  transform: translateY(-100%);
}

.i03-band {
  align-items: center;
  display: flex;
  gap: var(--flow-3);
  height: 70px;
  margin-inline: auto;
  max-width: 1440px;
  padding-inline: var(--pad-side);
}

.i03-brand {
  align-items: center;
  background: var(--tint-card);
  border-radius: var(--bend-3);
  color: var(--tint-glyph);
  display: inline-flex;
  flex-shrink: 0;
  padding: 3px 12px;
  text-decoration: none;
}

.i03-figure {
  display: block;
  flex-shrink: 0;
  height: 56px;
  width: auto;
}

.i03-age {
  background: var(--tint-notice);
  border-radius: var(--bend-2);
  color: #ffffff;
  flex-shrink: 0;
  font-family: var(--family-lead);
  font-size: var(--scale-xs);
  font-weight: var(--font-weight-heavy);
  letter-spacing: var(--letter-spacing-even);
  padding: 4px 7px;
  text-decoration: none;
}

.i03-age:hover,
.i03-age:focus-visible {
  background: #8f0d17;
  color: #ffffff;
}

.i03-trigger {
  align-items: center;
  background: var(--tint-card);
  border: var(--stroke-fine) solid var(--tint-border);
  border-radius: var(--bend-3);
  color: var(--tint-glyph);
  cursor: pointer;
  display: none;
  gap: 4px;
  height: 44px;
  justify-content: center;
  margin-inline-start: auto;
  min-width: 48px;
  padding: 0 12px;
}

.i03-lines {
  background: var(--tint-glyph);
  border-radius: var(--bend-round-full);
  display: block;
  height: 4px;
  position: relative;
  width: 4px;
}

.i03-lines::before,
.i03-lines::after {
  background: var(--tint-glyph);
  border-radius: var(--bend-round-full);
  content: "";
  height: 4px;
  position: absolute;
  top: 0;
  width: 4px;
}

.i03-lines::before {
  left: -7px;
}

.i03-lines::after {
  left: 7px;
}

.i03-index {
  flex: 0 0 auto;
  margin-inline-start: auto;
}

.i03-set {
  align-items: center;
  display: flex;
  gap: var(--flow-2);
  list-style: none;
  margin: 0;
  padding: 0;
}

.i03-unit {
  display: block;
}

.i03-unit[hidden] {
  display: none;
}

.i03-anchor {
  border-bottom: var(--stroke-even) solid transparent;
  color: var(--tint-glyph);
  display: block;
  font-family: var(--family-base);
  font-size: 14px;
  font-weight: 400;
  padding: 12px 2px;
  text-decoration: none;
  white-space: nowrap;
}

.i03-anchor:hover,
.i03-anchor:focus-visible {
  border-bottom-color: var(--tint-signal);
  color: var(--tint-signal);
}

.i03-anchor[aria-current="page"] {
  color: var(--tint-glyph);
  font-weight: var(--font-weight-heavy);
}

.i03-more {
  position: relative;
}

.i03-more[hidden] {
  display: none;
}

.i03-more-trigger {
  background: none;
  border: 0;
  color: var(--tint-glyph);
  cursor: pointer;
  font-family: var(--family-base);
  font-size: 14px;
  font-weight: 400;
  padding: 12px 2px;
  white-space: nowrap;
}

.i03-more-trigger:hover,
.i03-more-trigger:focus-visible {
  color: var(--tint-signal);
}

.i03-more-menu {
  background: var(--tint-card);
  border: var(--stroke-fine) solid var(--tint-border);
  border-radius: var(--bend-3);
  box-shadow: var(--cast-5);
  display: none;
  inset-block-start: calc(100% + 6px);
  inset-inline-end: 0;
  list-style: none;
  margin: 0;
  max-height: 70vh;
  min-width: 220px;
  overflow-y: auto;
  padding: var(--flow-2);
  position: absolute;
  z-index: 120;
}

.i03-more-menu.is-open {
  display: block;
}

.i03-more-unit {
  display: block;
}

.i03-more-anchor {
  border-radius: var(--bend-2);
  color: var(--tint-glyph);
  display: block;
  font-size: 14px;
  padding: 9px 10px;
  text-decoration: none;
}

.i03-more-anchor:hover,
.i03-more-anchor:focus-visible {
  background: var(--tint-backdrop);
  color: var(--tint-signal);
}

.i03-buttons {
  display: flex;
  flex-shrink: 0;
  gap: var(--flow-3);
  margin-inline-start: var(--flow-2);
}

.i03-push {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
}

.i03-quiet {
  align-items: center;
  background: var(--tint-backdrop);
  border: var(--stroke-even) solid var(--tint-line-strong);
  border-radius: var(--bend-1);
  color: var(--tint-glyph);
  display: inline-flex;
  font-family: var(--family-lead);
  font-size: var(--scale-h6);
  font-weight: var(--font-weight-heavy);
  justify-content: center;
  letter-spacing: var(--letter-spacing-spread);
  min-height: 44px;
  padding: 0 var(--flow-4);
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.i03-quiet:hover,
.i03-quiet:focus-visible {
  background: var(--tint-glyph);
  color: var(--tint-backdrop);
}

.i03-slide {
  background: var(--tint-card);
  border-block-start: var(--stroke-fine) solid var(--tint-border);
  display: none;
  max-height: calc(100vh - 70px);
  overflow-y: auto;
  padding: var(--flow-3) var(--pad-side) var(--flow-4);
}

.i03-slide.is-open {
  display: block;
}

.i03-slide-set {
  list-style: none;
  margin: 0;
  padding: 0;
}

.i03-slide-unit {
  display: block;
}

.i03-slide-anchor {
  border-block-end: var(--stroke-fine) solid var(--tint-border);
  color: var(--tint-glyph);
  display: block;
  font-size: 15px;
  min-height: 44px;
  padding: 11px 0;
  text-decoration: none;
}

.i03-slide-anchor:hover,
.i03-slide-anchor:focus-visible {
  color: var(--tint-signal);
}

.i03-slide-anchor[aria-current="page"] {
  font-weight: var(--font-weight-heavy);
}

@media (max-width: 899px) {
  .i03-index {
    display: none;
  }

  .i03-trigger {
    display: inline-flex;
  }

  .i03-buttons {
    margin-inline-start: 0;
  }
}

@media (min-width: 900px) {
  .i03-slide {
    display: none;
  }
}

@media (max-width: 639px) {
  .i03-band {
    flex-wrap: wrap;
    height: auto;
    padding-block: var(--flow-2);
    row-gap: var(--flow-2);
  }

  .i03-brand {
    order: 1;
  }

  .i03-age {
    order: 2;
  }

  .i03-trigger {
    order: 3;
  }

  .i03-buttons {
    flex-basis: 100%;
    order: 4;
  }

  .i03-push {
    width: 100%;
  }

  .i03-figure {
    height: 42px;
  }
}

/* ── hero : HERO-08 magazine cover ───────────────────────────────── */

.r23 {
  align-items: center;
  background-color: var(--tint-backdrop);
  background-image: linear-gradient(0deg, rgba(4, 6, 7, 0.9) 0%, rgba(4, 6, 7, 0.46) 100%),
    url("/archive/headline.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: var(--tint-glyph);
  display: flex;
  min-height: clamp(480px, calc(100vh - 70px), 720px);
  position: relative;
}

.r23-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-block: var(--sec-y);
  padding-inline: var(--pad-side);
  width: 100%;
}

.r23-cover {
  display: block;
}

.r23-issue {
  color: var(--tint-gradient-light);
  display: inline-block;
  font-family: var(--family-lead);
  font-size: var(--scale-xs);
  font-weight: var(--font-weight-heavy);
  letter-spacing: var(--letter-spacing-spread);
  margin-block-end: var(--flow-3);
  text-transform: uppercase;
}

.r23-head {
  max-width: 900px;
}

.r23-deck {
  color: var(--tint-glyph);
  font-size: var(--scale-h5);
  line-height: var(--rhythm-airy);
  margin-block: var(--flow-3) var(--flow-4);
  max-width: var(--edge);
}

.r23-sub {
  align-items: center;
  color: var(--tint-dim);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--scale-sm);
  gap: var(--flow-3);
}

.r23-mark {
  align-items: center;
  display: inline-flex;
  gap: 7px;
}

.r23-mark + .r23-mark::before {
  background: var(--tint-line-strong);
  content: "";
  height: 14px;
  margin-inline-end: 7px;
  width: 1px;
}

.r23-hint {
  color: var(--tint-dim);
  font-family: var(--family-lead);
  font-size: var(--scale-xs);
  letter-spacing: var(--letter-spacing-spread);
  margin-block-start: var(--flow-5);
  text-transform: uppercase;
}

/* ── page-header : PHEAD-10 manifesto ────────────────────────────── */

.m49 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
  padding-block-end: var(--flow-4);
}

.m49-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
  text-align: center;
}

.m49-head {
  font-size: clamp(30px, 7vw, 72px);
  margin-inline: auto;
}

.m49-dot {
  color: var(--tint-signal);
  display: block;
  font-family: var(--family-lead);
  font-size: var(--scale-h2);
  line-height: 1;
  margin-block: var(--flow-2) 0;
}

.m49-sub {
  color: var(--tint-dim);
  font-size: var(--scale-display-4);
  font-style: italic;
  margin-inline: auto;
  max-width: var(--edge);
}

/* ── prose : PROSE-24 first word accent ──────────────────────────── */

.g33 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
}

.g33-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.g33-head {
  margin-block: 0 var(--flow-3);
}

.g33-lead {
  color: var(--tint-signal);
  font-weight: var(--font-weight-heavy);
}

.g33-note {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin-block: 0 var(--flow-3);
}

.g33-note strong {
  color: var(--tint-glyph);
}

.g33-note a,
.g33-set a {
  color: var(--tint-signal);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.g33-note a:hover,
.g33-set a:hover {
  color: var(--tint-gradient-light);
  text-decoration-thickness: 3px;
}

.g33-set {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin-block: 0 var(--flow-3);
  padding-inline-start: var(--flow-4);
}

.g33-set li {
  margin-block-end: var(--flow-1);
}

.g33-shot {
  background: var(--tint-card);
  border-radius: var(--bend-4);
  display: block;
  height: auto;
  margin: 0 auto var(--flow-4);
  max-width: 600px;
  width: 100%;
}

.g33-shot--wide {
  max-width: 880px;
}

/* ── items-grid : GRID-08 top-border accent ──────────────────────── */

.d67 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
}

.d67-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.d67-set {
  display: grid;
  gap: var(--flow-4);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.d67-tile {
  background: var(--tint-card);
  border-block-start: 4px solid var(--tint-signal);
  border-radius: 0 0 var(--bend-4) var(--bend-4);
  box-shadow: var(--cast-3);
  color: var(--tint-dim);
  display: flex;
  flex-direction: column;
  padding: var(--flow-4);
  transition: transform var(--dur-mid) var(--ease-out);
}

.d67-tile:hover {
  transform: translateY(-4px);
}

.d67-icon {
  align-items: center;
  background: var(--tint-backdrop);
  border: var(--stroke-fine) solid var(--tint-line-strong);
  border-radius: var(--bend-3);
  color: var(--tint-signal);
  display: inline-flex;
  flex-shrink: 0;
  height: 38px;
  justify-content: center;
  margin-block-end: var(--flow-3);
  width: 38px;
}

.d67-icon svg {
  height: 21px;
  width: 21px;
}

.d67-head {
  color: var(--tint-glyph);
  font-size: var(--scale-display-4);
}

.d67-note {
  color: var(--tint-dim);
  font-size: var(--scale-sm);
  line-height: var(--rhythm-airy);
  margin: 0;
}

.d67-plug {
  background: var(--tint-card);
  border-block-start: 4px solid var(--tint-root);
  border-radius: 0 0 var(--bend-4) var(--bend-4);
  color: var(--tint-glyph);
  display: flex;
  flex-direction: column;
  gap: var(--flow-3);
  justify-content: center;
  padding: var(--flow-4);
}

.d67-plug-lede {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-size: var(--scale-display-4);
  font-weight: var(--font-weight-demi);
  margin: 0;
}

@media (max-width: 879px) {
  .d67-set {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 539px) {
  .d67-set {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ── reviews : REV-03 carousel strip ─────────────────────────────── */

.n49 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
}

.n49-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.n49-rail {
  display: flex;
  gap: var(--flow-4);
  list-style: none;
  margin: 0;
  overflow-x: auto;
  padding: 0 0 var(--flow-3);
  scroll-snap-type: x mandatory;
}

.n49-tile {
  background: var(--tint-card);
  border: var(--stroke-fine) solid var(--tint-border);
  border-radius: var(--bend-4);
  color: var(--tint-dim);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: var(--flow-2);
  min-height: 240px;
  padding: var(--flow-4);
  scroll-snap-align: start;
  width: 360px;
}

.n49-top {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: var(--flow-2);
  justify-content: space-between;
}

.n49-who {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-size: var(--scale-display-4);
  font-weight: var(--font-weight-demi);
  margin: 0;
}

.n49-time {
  color: var(--tint-dim);
  font-size: var(--scale-xs);
  letter-spacing: var(--letter-spacing-even);
}

.n49-score {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-size: var(--scale-sm);
  font-weight: var(--font-weight-heavy);
  letter-spacing: var(--letter-spacing-even);
}

.n49-gauge {
  background: var(--tint-line-strong);
  border-radius: var(--bend-stadium);
  height: 4px;
  overflow: hidden;
  width: 60%;
}

.n49-fill {
  background: var(--tint-signal);
  display: block;
  height: 4px;
}

.n49-note {
  border: 0;
  color: var(--tint-dim);
  font-size: var(--scale-sm);
  line-height: var(--rhythm-airy);
  margin: 0;
  padding: 0;
}

.n49-dots {
  display: flex;
  gap: 7px;
  justify-content: center;
  margin-block-start: var(--flow-3);
}

.n49-dot {
  background: var(--tint-line-strong);
  border-radius: var(--bend-round-full);
  height: 8px;
  width: 8px;
}

.n49-dot.is-live {
  background: var(--tint-signal);
}

@media (max-width: 539px) {
  .n49-tile {
    width: 84vw;
  }
}

/* ── faq : FAQ-01 classic accordion ──────────────────────────────── */

.o06 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
}

.o06-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.o06-set {
  margin: 0;
}

.o06-unit {
  border-block-end: var(--stroke-fine) solid var(--tint-border);
  padding-block: var(--flow-3);
}

.o06-head {
  font-family: var(--family-base);
  font-size: var(--scale-h5);
  font-weight: var(--font-weight-heavy);
  margin: 0;
}

.o06-quiz {
  align-items: center;
  background: none;
  border: 0;
  color: var(--tint-glyph);
  cursor: pointer;
  display: flex;
  font: inherit;
  gap: var(--flow-3);
  justify-content: space-between;
  min-height: 44px;
  padding: 0;
  text-align: start;
  width: 100%;
}

.o06-quiz:hover,
.o06-quiz:focus-visible {
  color: var(--tint-signal);
}

.o06-mark {
  color: var(--tint-signal);
  flex-shrink: 0;
  font-size: 24px;
  line-height: 1;
  transform: rotate(0deg);
  transition: transform var(--dur-mid) var(--ease-out);
}

.o06-quiz[aria-expanded="true"] .o06-mark {
  transform: rotate(45deg);
}

[id] {
  scroll-margin-block-start: calc(var(--shell-h) + 18px);
}

.o06-reply {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin: 0;
  padding-block-start: var(--flow-3);
}

.o06-reply p {
  margin: 0;
}

/* ── data-table : TABLE-06 editorial with caption ────────────────── */

.t99 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
}

.t99-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.t99-cap {
  color: var(--tint-dim);
  font-family: var(--family-lead);
  font-size: var(--scale-display-4);
  font-style: italic;
  margin: 0 auto var(--flow-4);
  padding-block-end: var(--flow-3);
  text-align: center;
}

.t99-cap::before {
  background: var(--tint-signal);
  content: "";
  display: block;
  height: 2px;
  margin: 0 auto var(--flow-3);
  width: 40px;
}

.t99-scroll {
  overflow-x: auto;
}

.t99-sheet {
  border-collapse: collapse;
  min-width: 620px;
  width: 100%;
}

.t99-sheet th,
.t99-sheet td {
  border-block-end: var(--stroke-fine) solid var(--tint-border);
  padding: var(--flow-3) var(--flow-3) var(--flow-3) 0;
  text-align: start;
  vertical-align: top;
}

.t99-sheet th {
  background: var(--tint-backdrop);
  color: var(--tint-glyph);
  font-family: var(--family-base);
  font-size: var(--scale-h6);
  font-weight: var(--font-weight-heavy);
  letter-spacing: var(--letter-spacing-spread);
  text-transform: uppercase;
}

.t99-sheet td {
  background: var(--tint-backdrop);
  color: var(--tint-dim);
  font-size: var(--scale-sm);
  line-height: var(--rhythm-airy);
}

@media (max-width: 639px) {
  .t99-sheet {
    min-width: 520px;
  }

  .t99-sheet th {
    letter-spacing: var(--letter-spacing-even);
  }

  .t99-sheet th,
  .t99-sheet td {
    overflow-wrap: break-word;
    padding-inline-end: var(--flow-2);
  }
}

/* ── cta-block : CTA-10 magazine pull-quote ──────────────────────── */

.p44 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
  text-align: center;
}

.p44-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.p44-quote {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-size: var(--scale-h2);
  font-style: italic;
  font-weight: var(--font-weight-demi);
  line-height: var(--rhythm-close);
  margin: 0 auto var(--flow-4);
  max-width: 900px;
  position: relative;
}

.p44-quote::before {
  color: var(--tint-signal);
  content: "\201C";
  display: block;
  font-size: 64px;
  line-height: 0.7;
  margin-block-end: var(--flow-2);
}

.p44-quote p {
  margin: 0;
}

.p44-sub {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin: 0 auto var(--flow-4);
  max-width: var(--edge);
}

.p44-push {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
}

/* ── inline-cta : INLINE-CTA-05 quote banner ─────────────────────── */

.m04 {
  background: var(--tint-card);
  display: block;
  padding-block: var(--flow-5);
}

.m04-core {
  margin-inline: auto;
  max-width: var(--edge);
  padding-inline: var(--pad-side);
  text-align: center;
}

.m04-quote {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-size: var(--scale-sub);
  font-style: italic;
  line-height: var(--rhythm-normal);
  margin: 0 0 var(--flow-3);
}

.m04-push {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
}

/* ── author byline : BYLINE-07 expertise tags ────────────────────── */

.y21 {
  background: var(--tint-backdrop);
  display: block;
  padding-block: var(--flow-5);
}

.y21-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.y21-tile {
  background: var(--tint-card);
  border-radius: var(--bend-4);
  box-shadow: var(--cast-3);
  color: var(--tint-dim);
  padding: var(--flow-4);
}

.y21-top {
  align-items: center;
  display: flex;
  gap: var(--flow-3);
  margin-block-end: var(--flow-3);
}

.y21-shot {
  border-radius: var(--bend-round-full);
  flex-shrink: 0;
  height: 72px;
  object-fit: cover;
  object-position: center top;
  width: 72px;
}

.y21-who {
  color: var(--tint-glyph);
  font-family: var(--family-lead);
  font-size: var(--scale-display-4);
  font-weight: var(--font-weight-demi);
  margin: 0;
}

.y21-who a {
  color: var(--tint-glyph);
  text-decoration: none;
}

.y21-who a:hover {
  color: var(--tint-signal);
}

.y21-duty {
  color: var(--tint-dim);
  font-size: var(--scale-sm);
  margin: 4px 0 0;
}

.y21-time {
  color: var(--tint-dim);
  display: block;
  font-size: var(--scale-xs);
  letter-spacing: var(--letter-spacing-even);
  margin-block-start: 3px;
}

.y21-bio {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin: 0 0 var(--flow-3);
}

.y21-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--flow-2);
  margin-block-end: var(--flow-3);
}

.y21-tag {
  background: var(--tint-root);
  border-radius: var(--bend-stadium);
  color: #ffffff;
  font-size: var(--scale-xs);
  letter-spacing: var(--letter-spacing-even);
  padding: 5px 15px;
  text-transform: uppercase;
}

.y21-anchor {
  color: var(--tint-signal);
  font-family: var(--family-lead);
  font-size: var(--scale-h6);
  font-weight: var(--font-weight-demi);
  letter-spacing: var(--letter-spacing-even);
  text-decoration: underline;
  text-underline-offset: 4px;
}

.y21-anchor:hover {
  color: var(--tint-gradient-light);
}

/* ── author card : AUTH-07 quote with portrait ───────────────────── */

.p84 {
  background: var(--tint-backdrop);
  display: block;
  padding-block: var(--sec-y);
}

.p84-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.p84-tile {
  background: var(--tint-card);
  border-inline-start: 4px solid var(--tint-signal);
  border-radius: var(--bend-4);
  color: var(--tint-glyph);
  display: grid;
  gap: var(--flow-5);
  grid-template-columns: 100px minmax(0, 1fr);
  padding: var(--flow-6) var(--flow-5);
}

.p84-shot {
  border-radius: var(--bend-round-full);
  height: 100px;
  object-fit: cover;
  object-position: center top;
  width: 100px;
}

.p84-body {
  display: block;
}

.p84-mark {
  color: var(--tint-signal);
  display: block;
  font-family: var(--family-lead);
  font-size: 56px;
  line-height: 0.6;
}

.p84-quote {
  color: var(--tint-glyph);
  font-size: var(--scale-h5);
  font-style: italic;
  line-height: var(--rhythm-normal);
  margin: var(--flow-3) 0 var(--flow-3);
}

.p84-duty {
  color: var(--tint-dim);
  font-size: var(--scale-sm);
  letter-spacing: var(--letter-spacing-spread);
  margin: 0;
}

@media (max-width: 639px) {
  .p84-tile {
    gap: var(--flow-3);
    grid-template-columns: minmax(0, 1fr);
    padding: var(--flow-4);
  }
}

/* ── legal-section : LEGAL-01 continuous document ────────────────── */

.b08 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
}

.b08-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.b08-lede {
  color: var(--tint-glyph);
  font-size: var(--scale-h5);
  line-height: var(--rhythm-normal);
  margin: 0 0 var(--flow-5);
}

.b08-time {
  color: var(--tint-dim);
  display: block;
  font-size: var(--scale-xs);
  letter-spacing: var(--letter-spacing-spread);
  margin-block-end: var(--flow-6);
  text-transform: uppercase;
}

.b08-part {
  border-block-start: var(--stroke-fine) solid var(--tint-border);
  padding-block-start: var(--flow-5);
}

.b08-part:first-of-type {
  border-block-start: 0;
  padding-block-start: 0;
}

.b08-head {
  margin-block: 0 var(--flow-4);
}

.b08-note {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin: 0 0 var(--flow-4);
}

.b08-help {
  background: var(--tint-card);
  border-radius: var(--bend-4);
  margin-block-start: var(--flow-6);
  padding: var(--flow-5);
}

.b08-set {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin: 0;
  padding-inline-start: var(--flow-4);
}

.b08-set li {
  margin-block-end: var(--flow-2);
}

.b08-warn {
  background: #2a0d10;
  border-inline-start: 3px solid var(--tint-notice);
  border-radius: var(--bend-1);
  color: var(--tint-dim);
  font-size: var(--scale-sm);
  line-height: var(--rhythm-airy);
  margin-block-start: var(--flow-6);
  padding: var(--flow-4);
}

/* ── contact-form : FORM-08 asymmetric wide submit ───────────────── */

.u36 {
  background: var(--tint-backdrop);
  padding-block: var(--sec-y);
}

.u36-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
}

.u36-shell {
  background: var(--tint-card);
  border-radius: var(--bend-4);
  padding: var(--flow-6);
}

.u36-box {
  display: block;
  margin-block-end: var(--flow-4);
}

.u36-label {
  color: var(--tint-glyph);
  display: block;
  font-family: var(--family-base);
  font-size: var(--scale-h6);
  font-weight: var(--font-weight-heavy);
  letter-spacing: var(--letter-spacing-spread);
  margin-block-end: var(--flow-2);
  text-transform: uppercase;
}

.u36-box input,
.u36-box textarea {
  background: var(--tint-backdrop);
  border: var(--stroke-fine) solid var(--tint-line-strong);
  border-radius: var(--bend-4);
  color: var(--tint-glyph);
  font-family: var(--family-base);
  font-size: var(--scale-body);
  min-height: 48px;
  padding: var(--flow-3);
  width: 100%;
}

.u36-box textarea {
  min-height: 150px;
  resize: vertical;
}

.u36-send {
  background: var(--tint-signal);
  border: 0;
  border-radius: var(--bend-4);
  color: var(--tint-backdrop);
  cursor: pointer;
  font-family: var(--family-lead);
  font-size: var(--scale-display-4);
  font-weight: var(--font-weight-heavy);
  height: 72px;
  letter-spacing: var(--letter-spacing-spread);
  text-transform: uppercase;
  width: 100%;
}

.u36-send:hover,
.u36-send:focus-visible {
  background: var(--tint-accent-pressed);
  color: var(--tint-backdrop);
}

.u36-done {
  background: var(--tint-backdrop);
  border: var(--stroke-fine) solid var(--tint-signal);
  border-radius: var(--bend-4);
  color: var(--tint-glyph);
  margin-block-start: var(--flow-4);
  padding: var(--flow-4);
}

.u36-done[hidden] {
  display: none;
}

@media (max-width: 639px) {
  .u36-shell {
    padding: var(--flow-4);
  }
}

/* ── error-block : ERR-06 bordered card ──────────────────────────── */

.w64 {
  background: var(--tint-backdrop);
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
  justify-content: center;
  padding-block: var(--flow-7);
}

.w64-guts {
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding-inline: var(--pad-side);
  width: 100%;
}

.w64-tile {
  align-items: center;
  background: var(--tint-card);
  border: 2px solid var(--tint-signal);
  border-radius: var(--bend-5);
  box-shadow: var(--cast-4);
  display: flex;
  flex-direction: column;
  gap: var(--flow-4);
  margin-inline: auto;
  max-width: var(--edge);
  padding: var(--flow-6) var(--flow-5);
  text-align: center;
}

.w64-head {
  font-size: clamp(26px, 5vw, 42px);
}

.w64-note {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin: 0;
}

.w64-button {
  background: var(--tint-signal);
  border-radius: var(--bend-4);
  color: var(--tint-backdrop);
  display: inline-flex;
  font-family: var(--family-lead);
  font-size: var(--scale-h6);
  font-weight: var(--font-weight-heavy);
  letter-spacing: var(--letter-spacing-spread);
  min-height: 48px;
  padding: 14px var(--flow-4);
  text-decoration: none;
  text-transform: uppercase;
}

.w64-button:hover,
.w64-button:focus-visible {
  background: var(--tint-accent-pressed);
  color: var(--tint-backdrop);
}

/* ── cookie-banner : COOK-04 slide-up with backdrop ──────────────── */

.h43-veil {
  background: rgba(0, 0, 0, 0.4);
  inset: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  transition: opacity var(--dur-calm) var(--ease-out);
  visibility: hidden;
  z-index: 89;
}

.h43-veil.is-visible {
  opacity: 1;
  visibility: visible;
}

.h43 {
  background: var(--tint-backdrop);
  border-block-start: 4px solid var(--tint-signal);
  clip-path: inset(100% 0 0 0);
  inset-block-end: 0;
  inset-inline: 0;
  opacity: 0;
  position: fixed;
  transition: opacity var(--dur-calm) var(--ease-out), clip-path var(--dur-calm) var(--ease-out), visibility 0s linear var(--dur-calm);
  visibility: hidden;
  z-index: 90;
}

.h43.is-visible {
  clip-path: inset(0 0 0 0);
  opacity: 1;
  transition-delay: 0s;
  visibility: visible;
}

.h43-band {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: var(--flow-4);
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding: var(--flow-6) var(--pad-side);
  text-align: center;
}

.h43-head {
  font-family: var(--family-lead);
  font-size: var(--scale-display-4);
  margin: 0;
}

.h43-line {
  color: var(--tint-dim);
  line-height: var(--rhythm-airy);
  margin: 0;
  max-width: var(--edge);
}

.h43-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--flow-4);
  justify-content: center;
}

.h43-yes,
.h43-refuse {
  align-items: center;
  border-radius: var(--bend-4);
  cursor: pointer;
  display: inline-flex;
  font-family: var(--family-lead);
  font-size: var(--scale-h6);
  font-weight: var(--font-weight-heavy);
  justify-content: center;
  letter-spacing: var(--letter-spacing-spread);
  min-height: 48px;
  padding-inline: var(--flow-5);
  text-transform: uppercase;
}

.h43-yes {
  background: var(--tint-signal);
  border: 0;
  color: var(--tint-backdrop);
}

.h43-yes:hover,
.h43-yes:focus-visible {
  background: var(--tint-accent-pressed);
  color: var(--tint-backdrop);
}

.h43-refuse {
  background: var(--tint-backdrop);
  border: var(--stroke-even) solid var(--tint-line-strong);
  color: var(--tint-glyph);
}

.h43-refuse:hover,
.h43-refuse:focus-visible {
  background: var(--tint-glyph);
  color: var(--tint-backdrop);
}

@media (max-width: 720px) {
  .h43,
  .h43-band {
    font-size: 13px;
    gap: 8px;
    line-height: 1.35;
  }

  .h43-band {
    padding: 12px 14px;
  }

  .h43-head {
    display: none;
  }

  .h43-yes,
  .h43-refuse {
    font-size: 12px;
    min-height: 36px;
    padding-inline: 14px;
  }
}

@media (max-width: 430px) {
  .h43-buttons {
    flex-direction: column;
    width: 100%;
  }

  .h43-yes,
  .h43-refuse {
    white-space: normal;
    width: 100%;
  }
}

/* ── footer : FOOT-04 sticky mini ────────────────────────────────── */

.r69 {
  background: var(--tint-backdrop);
  border-block-start: var(--stroke-fine) solid var(--tint-border);
  flex-shrink: 0;
  position: relative;
}

.r69-band {
  align-items: center;
  display: flex;
  gap: var(--flow-4);
  justify-content: space-between;
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  min-height: 64px;
  padding-inline: var(--pad-side);
}

.r69-note {
  color: var(--tint-dim);
  font-size: var(--scale-xs);
}

.r69-index {
  display: block;
}

.r69-set {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.r69-unit {
  display: block;
}

.r69-unit + .r69-unit {
  border-inline-start: var(--stroke-fine) solid var(--tint-line-strong);
  margin-inline-start: var(--flow-3);
  padding-inline-start: var(--flow-3);
}

.r69-anchor {
  color: var(--tint-dim);
  font-size: var(--scale-xs);
  letter-spacing: var(--letter-spacing-spread);
  text-decoration: none;
  text-transform: uppercase;
}

.r69-anchor:hover,
.r69-anchor:focus-visible {
  color: var(--tint-glyph);
}

.r69-warn {
  background: var(--tint-backdrop);
  border-block-start: var(--stroke-fine) solid var(--tint-border);
  color: var(--tint-dim);
  font-size: var(--scale-xs);
  line-height: var(--rhythm-airy);
  margin-inline: auto;
  max-width: calc(var(--bounds-site) + 2 * var(--bounds-padding-desktop));
  padding: var(--flow-3) var(--pad-side) var(--flow-4);
  text-align: center;
}

.r69-warn a {
  color: var(--tint-dim);
  text-decoration: underline;
}

.r69-warn a:hover {
  color: var(--tint-glyph);
}

.r69-badge {
  background: var(--tint-notice);
  border-radius: var(--bend-2);
  color: #ffffff;
  display: inline-block;
  font-family: var(--family-lead);
  font-size: var(--scale-xs);
  font-weight: var(--font-weight-heavy);
  margin-inline-end: 6px;
  padding: 2px 6px;
}

@media (max-width: 879px) {
  .r69-band {
    align-items: flex-start;
    flex-direction: column;
    gap: var(--flow-2);
    min-height: 80px;
    padding-block: var(--flow-3);
  }
}

@media (max-width: 539px) {
  .r69-unit + .r69-unit {
    border-inline-start: 0;
    margin-inline-start: 0;
    padding-inline-start: 0;
  }

  .r69-set {
    gap: var(--flow-2);
  }
}

/* ── shared section furniture ────────────────────────────────────── */

.d67-lede,
.n49-lede,
.o06-lede,
.t99-lede {
  margin-block: 0 var(--flow-4);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    scroll-behavior: auto !important;
    transition: none !important;
  }

  [data-cue] {
    opacity: 1;
    transform: none;
  }
}

/* ── offer docks and their small print ───────────────────────────── */

.g33-dock,
.n49-dock {
  display: block;
  margin-block-start: var(--flow-4);
}

.g33-push,
.n49-push,
.d67-push {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
}

.g33-terms,
.n49-terms,
.p44-terms,
.m04-terms {
  color: var(--tint-dim);
  font-size: var(--scale-xs);
  letter-spacing: var(--letter-spacing-even);
  line-height: var(--rhythm-normal);
  margin: var(--flow-2) 0 0;
}

.p44-terms,
.m04-terms {
  margin-inline: auto;
  max-width: var(--edge);
}

.g33-badge,
.n49-badge,
.p44-badge,
.m04-badge {
  background: var(--tint-notice);
  border-radius: var(--bend-2);
  color: #ffffff;
  display: inline-block;
  font-family: var(--family-lead);
  font-size: var(--scale-xs);
  font-weight: var(--font-weight-heavy);
  margin-inline-end: 5px;
  padding: 2px 6px;
}

.g33-terms a,
.n49-terms a,
.p44-terms a,
.m04-terms a {
  color: var(--tint-dim);
  text-decoration: underline;
}

.g33-terms a:hover,
.n49-terms a:hover,
.p44-terms a:hover,
.m04-terms a:hover {
  color: var(--tint-glyph);
}

.m04-note {
  margin: var(--flow-3) 0 0;
}

.m04-anchor {
  color: var(--tint-signal);
  font-size: var(--scale-sm);
  letter-spacing: var(--letter-spacing-even);
}

.m04-anchor:hover {
  color: var(--tint-gradient-light);
}

.i03-slide-index {
  display: block;
}

.u36-form {
  display: block;
}

main:has(> .w64) {
  display: flex;
  flex-direction: column;
}

/* ── offer button skin ───────────────────────────────────────────── */

.vivilu-grab {
  align-items: center;
  animation: vivilu-pulse 1.28s var(--ease-even) infinite;
  background: #eab308;
  border-radius: var(--bend-4);
  color: #0d0f10;
  display: inline-flex;
  font-family: var(--family-lead);
  font-size: var(--scale-h6);
  font-weight: var(--font-weight-heavy);
  justify-content: center;
  letter-spacing: var(--letter-spacing-spread);
  min-height: 48px;
  padding: 14px var(--flow-4);
  text-decoration: none;
  text-transform: uppercase;
  transition: background var(--dur-calm) var(--ease-out);
}

.vivilu-grab.vivilu-grab {
  color: #0d0f10;
  text-decoration: none;
}

.vivilu-grab:hover {
  animation: none;
  background: #a16207;
  color: #ffffff;
}

.vivilu-grab.vivilu-grab:hover {
  color: #ffffff;
  text-decoration: none;
}

.vivilu-grab:active {
  background: #854d0e;
  color: #ffffff;
}

.vivilu-grab:focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 3px;
}

@keyframes vivilu-pulse {
  0% {
    transform: translateY(0);
  }

  32.813% {
    transform: translateY(-3px);
  }

  68.750%,
  100% {
    transform: translateY(0);
  }
}

.g33-push {
  animation-delay: -0.4s;
}

.n49-push {
  animation-delay: -0.72s;
}

.d67-push {
  animation-delay: -0.96s;
}

.m04-push {
  animation-delay: -0.24s;
}

@media (max-width: 430px) {
  .vivilu-grab {
    letter-spacing: var(--letter-spacing-even);
    max-width: 100%;
    padding-inline: var(--flow-3);
    text-align: center;
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vivilu-grab,
  .vivilu-grab::after {
    animation: none !important;
    transition: none !important;
  }
}

@media (min-width: 900px) and (max-width: 1279px) {
  .i03-buttons .i03-push {
    font-size: 11px;
    letter-spacing: var(--letter-spacing-even);
    padding-inline: var(--flow-3);
  }
}

@media (max-width: 910px) {
  .i03-index,
  .i03-set,
  .i03-anchor { display: none !important; }
  .i03-trigger { display: flex !important; }
}
