 
@layer pages {
:root { --scene-gap: clamp(2rem, 1.25rem + 2.4vw, 3.5rem); }
  .scene { margin-block-start: var(--scene-gap); }
  .chapter > .wrap { --m-ap-ground: var(--surface); }
.lead-in { display: grid; justify-items: start; margin-block-end: var(--scene-gap); }
  .lead-in__title { margin: 0; max-inline-size: 18em; font-family: var(--font-display); font-weight: 400; font-size: var(--step-7b); line-height: 1.04; letter-spacing: -0.02em; color: var(--fg); text-wrap: balance; }
  .lead-in__line { margin-block-start: 1rem; max-inline-size: 34em; font-size: var(--step-2); line-height: 1.6; color: var(--fg-2); text-wrap: pretty; }
  @media (min-width: 1024px) {
    .lead-in { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--grid-gap); align-items: end; }
    .lead-in__line { margin: 0; padding-block-end: 0.35rem; }
  }
.media-ctl { display: grid; place-items: center; inline-size: 38px; block-size: 38px; padding: 0; border: 1px solid rgb(244 236 216 / .5); border-radius: 50%;
    background: rgb(13 28 24 / .6); color: #f4ecd8; cursor: pointer; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
  .media-ctl[hidden] { display: none; }
  .media-ctl svg { inline-size: 13px; block-size: 13px; }
  .media-ctl__play, .is-stopped .media-ctl__pause { display: none; }
  .is-stopped .media-ctl__play { display: block; }
  @media (hover: hover) { .media-ctl:hover { border-color: var(--label-hi); } }
  .media-ctl:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.intro-chapter { padding-block: 0; }
.hero {
    position: relative; isolation: isolate; display: grid; align-items: end;
    block-size: auto; min-block-size: max(660px, min(100svh, 900px)); overflow: hidden; background: var(--surface-sunken); color: var(--fg);
  }
  .hero__media { position: absolute; inset: 0; z-index: -1; overflow: hidden; background: var(--surface-sunken); }
  .hero__poster, .hero__poster img, .hero__video {
    position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%;
  }
  .hero__poster img { display: block; }
  .hero__video { opacity: 0; transition: opacity var(--dur-4) var(--ease-reveal); pointer-events: none; }
  .hero[data-playing] .hero__video { opacity: 1; }
.hero__media::after {
    content: ""; position: absolute; inset: 0;
    background:
      linear-gradient(90deg, rgb(10 22 19 / .9) 0%, rgb(10 22 19 / .7) 30%, rgb(10 22 19 / .2) 58%, rgb(10 22 19 / 0) 74%),
      linear-gradient(0deg, rgb(10 22 19 / .78) 0%, rgb(10 22 19 / 0) 44%),
      linear-gradient(180deg, rgb(10 22 19 / .6) 0%, rgb(10 22 19 / 0) 18%);
  }
  .hero__inner { padding-block: calc(var(--header-h) + clamp(1.5rem, 4svh, 3rem)) clamp(3rem, 8svh, 5rem); }
.hero__copy { display: grid; justify-items: start; max-inline-size: 38rem; }
@media (orientation: landscape) and (min-width: 1024px) { .hero__copy { max-inline-size: min(38rem, calc(48.5vw - 24px - max(var(--gutter), (100vw - var(--content-max)) / 2))); } }
.hero__title { margin: 0; font-family: var(--font-display); font-weight: 400; font-size: clamp(2.75rem, 1.75rem + 2.6vw, 4rem); line-height: 1.02; letter-spacing: -0.02em; text-wrap: pretty; }
.chapter-label { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 0.25rem 0.875rem; margin: 0; font-size: 0.6875rem; letter-spacing: 0.18em; color: var(--fg-2); }
  .chapter-label::before { content: ""; flex: none; inline-size: 1.5rem; block-size: 1px; background: var(--accent); }
  .chapter-label__num { margin-inline-end: 0.625rem; color: var(--label-hi); font-weight: var(--weight-bold); letter-spacing: 0.08em; font-variant-numeric: tabular-nums lining-nums; }
  @media (min-width: 768px) { .chapter-label { font-size: 0.75rem; } }
  .hero__eyebrow { margin-block-end: clamp(1.25rem, 3svh, 2rem); }
  .hero__eyebrow .dot { margin-inline: 0.125rem; }
.hero__markets { --hm-gap: 0.75rem; --hm-cut: calc(1px + 2 * var(--hm-gap) - 4px); display: flex; flex-wrap: wrap; align-items: center; row-gap: 0.25rem; margin-block-start: clamp(1rem, 2.4svh, 1.5rem); margin-inline-start: calc(-1px - 2 * var(--hm-gap)); clip-path: inset(-0.5rem -0.5rem -0.5rem var(--hm-cut)); font-size: 0.75rem; font-weight: var(--weight-semibold); line-height: 1; letter-spacing: 0.12em; text-transform: uppercase; }
  [dir="rtl"] .hero__markets { clip-path: inset(-0.5rem var(--hm-cut) -0.5rem -0.5rem); }
  .hero__markets li { display: flex; align-items: center; }
  .hero__markets li::before { content: ""; inline-size: 1px; block-size: 0.875rem; margin-inline: var(--hm-gap); background: var(--accent); opacity: .7; }
  .hero__markets :is(a, .hero__market) { display: inline-flex; align-items: center; min-block-size: 32px; color: var(--fg); text-decoration: underline 1px transparent; text-underline-offset: 0.45em; }
  .hero__markets a:is(:hover, :focus-visible) { color: var(--label-hi); text-decoration-color: var(--accent); }
@media (min-width: 600px) and (max-width: 1279.98px) { .hero__markets { letter-spacing: 0.06em; --hm-gap: 0.45rem; } }
  .hero__points { display: flex; flex-wrap: wrap; gap: 0.75rem 1.75rem; inline-size: 100%; margin-block-start: clamp(1rem, 2.6svh, 1.625rem); padding-block-start: clamp(0.875rem, 2svh, 1.125rem); border-block-start: 1px solid var(--edge); }
  .hero__point { position: relative; display: flex; align-items: center; gap: 0.625rem; }
  .hero__point::before { content: ""; position: absolute; inset-block-start: calc(-1 * clamp(0.875rem, 2svh, 1.125rem) - 1px); inset-inline-start: 0; inline-size: 20px; block-size: 1px; background: var(--accent); }
  .hero__mark { flex: none; inline-size: 1.75rem; block-size: 1.75rem; color: var(--accent); }
  .hero__point-title { font-size: 0.875rem; font-weight: var(--weight-semibold); line-height: 1.3; letter-spacing: 0.005em; color: var(--fg); }
  .hero__cta { margin-block-start: clamp(1.25rem, 3svh, 1.75rem); }
.dot { color: var(--label); }
  .hero__note { margin-block-start: 0.75rem; font-size: var(--step--1); line-height: 1.5; color: var(--fg-3); }
  .hero__trust { inline-size: 100%; margin-block-start: 2rem; padding-block-start: 1rem; border-block-start: 1px solid var(--rule-soft); font-size: 0.8125rem; font-weight: var(--weight-semibold); line-height: 1.6; letter-spacing: 0.02em; color: var(--fg-2); }
@media (max-width: 599.98px) {
    .hero__copy > * { order: 2; }
    .hero__eyebrow { order: -1; }
    .hero__title { order: 0; }
    .hero__trust { order: 1; margin-block-start: 0.75rem; padding-block-start: 0.625rem; }
.hero__points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; }
    .hero__point { flex-direction: column; align-items: flex-start; gap: 0.375rem; }
    .hero__point-title { font-size: 0.8125rem; }
    .hero__markets { font-size: 0.6875rem; letter-spacing: 0.07em; --hm-gap: 0.45rem; }
    .hero__action .action__buttons > .btn--primary { inline-size: 100%; }
  }
  .hero__action .action__buttons { gap: 1.875rem; }
  .hero__action .btn--primary { min-block-size: 50px; padding-inline: 1.75rem; font-size: 0.875rem; letter-spacing: 0.02em; }
  .hero__watch {
    display: inline-flex; align-items: center; gap: 0.75rem; min-block-size: var(--target-touch); padding: 0; border: 0;
    background: none; color: var(--fg); font: inherit; font-size: 0.875rem; font-weight: var(--weight-semibold); line-height: 1; cursor: pointer;
  }
  .hero__ring { flex: none; inline-size: 34px; block-size: 34px; }
@media (orientation: landscape) and (min-width: 1024px) and (max-width: 1279.98px) {
    .hero__action { inline-size: max-content; max-inline-size: calc(100% + 2rem); }
    .hero__action .action__buttons { gap: var(--space-3) var(--space-5); }
    .hero__action .btn--primary { padding-inline: 1.125rem; }
    .hero__watch { gap: 0.625rem; }
  }
  .hero__ring circle { fill: none; stroke: var(--label); stroke-width: 1; }
  .hero__ring path { fill: var(--label-hi); }
  .hero__watch:hover span { text-decoration: underline 1px var(--label); text-underline-offset: 0.3em; }
@keyframes home-rise { from { opacity: 0; transform: translateY(14px); } }
  @keyframes home-curtain { from { translate: 0 105%; } }
  :root.mo .hero__title .m-li { animation: home-curtain .9s var(--ease-reveal) calc(.15s + var(--i, 0) * .12s) backwards; }
  :root.mo :is(.hero__eyebrow, .hero__markets, .hero__point, .hero__cta, .hero__note, .hero__trust) { animation: home-rise .8s var(--ease-reveal) backwards; }
  :root.mo .hero__eyebrow { animation-delay: .05s; }
  :root.mo .hero__markets { animation-delay: .45s; }
  :root.mo .hero__point { animation-delay: calc(.6s + var(--i, 0) * .07s); }
  :root.mo .hero__cta { animation-delay: .85s; }
  :root.mo .hero__note { animation-delay: 1.15s; }
  :root.mo .hero__trust { animation-delay: 1.2s; }
@media (orientation: portrait) {
    .hero { align-items: start; grid-template-rows: auto auto; block-size: auto; min-block-size: 0; }
    .hero__media { position: relative; grid-area: 1 / 1; inset: auto; block-size: min(56svh, 128vw); z-index: -1; }
    .hero__poster, .hero__poster img, .hero__video { object-position: 50% 46%; }
    .hero__media::after {
      background:
        linear-gradient(to top, var(--surface-sunken) 0%, rgb(13 28 24 / .96) 17%, rgb(13 28 24 / .62) 30%, rgb(13 28 24 / 0) 50%),
        linear-gradient(to bottom, rgb(13 28 24 / .6) 0%, rgb(13 28 24 / 0) 20%);
    }
    .hero__inner { grid-area: 2 / 1; margin-block-start: calc(-1 * clamp(3rem, 8svh, 4.5rem)); padding-block: 0 var(--space-8); }
    .hero__title { font-size: clamp(2.625rem, 10.5vw, 3.75rem); }
    .hero__cta { margin-block-start: var(--space-6); }
    .hero__action .action__buttons { gap: var(--space-4) var(--space-6); }
  }
  @media (max-width: 599.98px) { :root.mo .hero__trust { animation-delay: .5s; } }
@media (orientation: landscape) and (max-height: 559.98px) {
    .hero { block-size: auto; min-block-size: 100svh; }
    .hero__inner { padding-block: calc(var(--header-h) + var(--space-5)) var(--space-6); }
    .hero__title { font-size: clamp(2.25rem, 1.2rem + 3vw, 3rem); }
    .hero__cta { margin-block-start: var(--space-5); }
  }
.presenting .intro-chapter.is-active { padding-block: 0; }
  .presenting .hero { block-size: auto; min-block-size: calc(100dvh - var(--presenter-h) - env(safe-area-inset-bottom)); }
  .presenting .hero__inner { padding-block-start: var(--space-8); }
  @media (orientation: portrait) {
    .presenting .hero { min-block-size: 0; }
    .presenting .hero__inner { padding-block-start: 0; }
  }
#overview { position: relative; z-index: 1; margin-block-start: -1.75rem; overflow-x: clip; }
  #introduction .m-hand { display: none; }    
  #overview::before { content: ""; position: absolute; z-index: -1; inset: 0; border-radius: 1.75rem 1.75rem 0 0; background: var(--surface); box-shadow: 0 -1px 0 var(--edge); }
  #introduction + #overview > .wrap { padding-block-start: clamp(3rem, 2rem + 3vw, 5rem); border-block-start: 0; }
  @media (orientation: portrait) { #overview { margin-block-start: -1.25rem; } #overview::before { border-radius: 1.25rem 1.25rem 0 0; } }
  .presenting #overview { margin-block-start: 0; }
  .presenting #overview::before { border-radius: 0; }
.statement { display: grid; justify-items: center; padding-block: clamp(1.5rem, 0.5rem + 3vw, 3.5rem) clamp(0.5rem, 2vw, 2rem); text-align: center; }
  .statement__rule { inline-size: 3.5rem; block-size: 1px; margin-block-end: clamp(1.75rem, 1rem + 2vw, 2.75rem); background: var(--accent); }
  .statement__line { margin: 0; max-inline-size: 17em; font-family: var(--font-display); font-weight: 400; font-size: var(--step-7);
    line-height: 1.08; letter-spacing: -0.022em; color: var(--fg); text-wrap: balance; }
  .statement__line .t-line { display: block; }
  .statement__who { margin-block-start: clamp(1.25rem, 0.75rem + 1.6vw, 2rem); max-inline-size: 36em; font-size: var(--step-2); line-height: 1.6; color: var(--fg-2); text-wrap: balance; }
.ticks { display: grid; grid-template-columns: minmax(0, max-content); gap: 0.875rem 3rem; margin: clamp(1.75rem, 1rem + 2vw, 2.75rem) 0 0; padding: 0; list-style: none; text-align: start; }
  .ticks__row { display: flex; align-items: center; gap: 0.75rem; }
  .ticks__mark { flex: none; inline-size: 1.375rem; block-size: 1.375rem; color: var(--accent); }
  .ticks__item { font-size: var(--step-2); line-height: 1.4; color: var(--fg); }
  @media (min-width: 700px) {
    .ticks { grid-template-columns: repeat(2, max-content); grid-template-rows: repeat(var(--rows, 3), auto); grid-auto-flow: column; }
  }
  :root.mt[data-motion-ready] .statement[data-m]:not([data-in]) .statement__rule { transform: scaleX(0); }
  :root.mt .statement[data-m][data-in=""] .statement__rule { transition: transform 1.1s var(--ease-reveal) 120ms; }
.stage-chapter .mkt-track { --run: 76svh; margin-block-start: 0; }
.stage-chapter .mkt { border-block: 0; }
.mkt-track { margin-block-start: clamp(1rem, 0.5rem + 1.5vw, 2rem); }
.mkt { display: grid; row-gap: clamp(1.25rem, 1rem + 1vw, 1.75rem); padding-block: clamp(1.5rem, 1rem + 1.2vw, 2.25rem); border-block: 1px solid var(--rule-soft); background: var(--surface); }
  .mkt__list { display: grid; }
  .mkt__pick { position: relative; display: grid; justify-items: start; gap: 0.375rem; inline-size: 100%; padding: 0.875rem 0 1rem; border: 0; border-block-start: 1px solid var(--rule-soft); background: none; color: inherit; font: inherit; text-align: start; cursor: default; }
  .mkt__item:first-child .mkt__pick { border-block-start-color: transparent; padding-block-start: 0.25rem; }
  .mkt__pick:focus-visible { outline-offset: 4px; }
  .mkt__clock { position: absolute; inset-inline: 0; inset-block-start: -1px; block-size: 2px; background: var(--label-hi); transform: scaleX(0); transform-origin: 0 50%; }
  [dir="rtl"] .mkt__clock { transform-origin: 100% 50%; }
  .mkt__num { font-size: 0.75rem; font-weight: var(--weight-bold); line-height: 1; letter-spacing: 0.12em; color: var(--label-hi); font-variant-numeric: tabular-nums lining-nums; }
  .mkt__line { font-family: var(--font-display); font-weight: 400; font-size: clamp(1.625rem, 1.1rem + 1.1vw, 2.125rem); line-height: 1.08; letter-spacing: -0.015em; color: var(--fg); text-wrap: balance; }
  .mkt__item:last-child .mkt__line { color: var(--label-hi); }
  .mkt__cap { font-size: var(--step-1); line-height: 1.5; color: var(--fg-2); }
  .mkt__art { position: relative; order: -1; inline-size: 100%; aspect-ratio: 10 / 3; }
  .mkt__svg { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; overflow: visible; }
  .mkt__svg--line, .mkt__svg--ahead { color: var(--fg); opacity: .45; }
.mkt__svg--line { clip-path: inset(0 46% 0 0); }
  .mkt__svg--ahead { clip-path: inset(0 0 0 54%); }
  .mkt__svg--lit { color: var(--label-hi); clip-path: inset(0 0 0 54%); }
.mkt__svg--fan { color: var(--fg); opacity: .3; transform-origin: 54% 57.5%;
    -webkit-mask-image: linear-gradient(to right, #000 74%, transparent 99%); mask-image: linear-gradient(to right, #000 74%, transparent 99%); }
  .mkt__svg--react { color: var(--beat-react); opacity: .2; }
  :root { --beat-react: #C97A6B; }
  [data-theme="light"] { --beat-react: #A8503F; }
.mkt__rule { position: absolute; left: 54%; right: 0; block-size: 0; border-block-start: 1.5px solid var(--accent); transform-origin: 0 50%; }
  .mkt__rule--target { inset-block-start: 22%; border-block-start-style: dashed; }
  .mkt__rule--entry { inset-block-start: 53%; }
  .mkt__rule--stop { inset-block-start: 69%; border-block-start-style: dotted; border-block-start-width: 2px; }
  .mkt__tag { position: absolute; right: 0; inset-block-end: 0.375rem; font-size: 0.625rem; font-weight: var(--weight-bold); line-height: 1; letter-spacing: 0.12em; text-transform: uppercase; color: var(--label-hi); }
  .mkt__rule--stop .mkt__tag { inset-block: 0.5rem auto; }
  @media (max-width: 599.98px) { .mkt__pick { gap: 0.25rem; padding-block: 0.75rem 0.875rem; } }
  @media (min-width: 900px) {
    .mkt { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--grid-gap); align-items: center; }
    .mkt__art { order: 0; }
  }
  .mkt__mark, .mkt__float, .mkt__warn { position: absolute; left: var(--x); top: var(--y); opacity: .35; pointer-events: none; white-space: nowrap; line-height: 1; }
.mkt__warn { font-size: 0.625rem; font-weight: var(--weight-bold); letter-spacing: 0.16em; text-transform: uppercase; color: var(--beat-react); }
  .mkt__mark { translate: -50% calc(-100% - 0.625rem); padding: 0.3125rem 0.4375rem; border-radius: 2px; background: var(--beat-react); color: var(--surface); font-size: 0.625rem; font-weight: var(--weight-bold); letter-spacing: 0.12em; }
  .mkt__mark--sell { translate: -50% 0.625rem; }
  .mkt__float { padding: 0.3125rem 0.625rem; border: 1px solid var(--rule); border-radius: 999px; background: var(--surface); color: var(--fg-2); font-size: 0.6875rem; font-weight: var(--weight-semibold); }
  @media (max-width: 599.98px) {
    .mkt__mark { padding: 0.25rem 0.3125rem; font-size: 0.5625rem; }
.mkt__float { left: var(--xs, var(--x)); top: var(--ys, var(--y)); padding: 0.25rem 0.4375rem; font-size: 0.5625rem; }
    .mkt__warn { font-size: 0.5625rem; letter-spacing: 0.12em; }
  }
.cycles { --cy-h: clamp(15rem, 100svh - 26rem, 28rem); --cy-crash: #EA553D; overflow-x: clip; }
  [data-theme="light"] .cycles { --cy-crash: #BA321C; }
  @media (max-width: 767.98px) { .cycles { --cy-h: clamp(14rem, 55svh - 6rem, 19rem); } }
  .cycles .lead-in { margin-block-end: clamp(1.25rem, 0.75rem + 1.5vw, 2rem); }
  .cycles__plot { display: none; position: relative; block-size: var(--cy-h); overflow: hidden; touch-action: pan-y; outline: none; direction: ltr; }
  .cycles__story.is-drawn .cycles__plot { display: block; }
.cycles__entries { display: grid; gap: 1.25rem 2.5rem; margin-block-start: clamp(1.5rem, 1rem + 1.5vw, 2.25rem); }
  @media (min-width: 600px) { .cycles__entries { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (min-width: 1100px) { .cycles__entries { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
  .cycles[data-run] .cycles__entries { position: absolute; inline-size: 1px; block-size: 1px; padding: 0; margin: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .cycles__entry { display: grid; align-content: start; gap: 0.25rem; padding-block-start: 0.75rem; border-block-start: 1px solid var(--rule); }
  .cycles__fall { display: none; }
  .cycles__year { display: block; line-height: 1; }
  .cycles__name { font-family: var(--font-display); font-weight: 400; font-size: 1.5rem; line-height: 1.15; letter-spacing: -0.01em; }
  .cycles__text { font-size: 0.9375rem; line-height: 1.5; color: var(--fg-2); }
  .cycles__pct { color: var(--cy-crash); font-weight: var(--weight-semibold); }
  .cycles__facts { display: grid; gap: 0.125rem; margin: 0; font-size: 0.9375rem; line-height: 1.5; color: var(--fg-2); }
  .cycles__fact { display: flex; flex-wrap: wrap; gap: 0 0.375rem; }
  .cycles__fact dt { font: inherit; letter-spacing: 0; text-transform: none; color: inherit; }
  .cycles__fact dt::after { content: ":"; }
  .cycles__fact dd { margin: 0; color: var(--fg); }
  .cycles__fact--back dd { color: var(--label-hi); }
.cycles__now { margin-block-start: clamp(1.25rem, 0.75rem + 1.5vw, 2rem); }
  .cycles__end { max-inline-size: 24em; font-family: var(--font-display); font-size: clamp(1.75rem, 1.2rem + 1.8vw, 2.75rem); font-weight: 400; line-height: 1.1;
    letter-spacing: -0.01em; color: var(--fg); text-wrap: balance; }
.cycles__close { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 1.25rem clamp(1.25rem, 0.5rem + 2vw, 2.5rem);
    max-inline-size: 58rem; margin-block-start: clamp(2.5rem, 1.5rem + 3vw, 4rem); padding-block-start: clamp(1.5rem, 1rem + 1.5vw, 2.25rem);
    border-block-start: 1px solid var(--rule-strong); }
.cycles[data-run] .cycles__close { margin-block-start: clamp(0.5rem, 0.25rem + 0.8vw, 1.25rem); }
  .cycles__seal { inline-size: clamp(3.5rem, 2.75rem + 2vw, 5rem); block-size: clamp(3.5rem, 2.75rem + 2vw, 5rem); color: var(--accent); }
  .cycles__close-words { display: grid; gap: 0.75rem; }
  .cycles__close-lead { margin: 0; }
  .cycles__close-main { margin: 0; font-family: var(--font-display); font-size: var(--step-6); font-weight: 400; line-height: 1.12; letter-spacing: -0.01em;
    color: var(--fg); text-wrap: pretty; }
  .cycles__close-main em { font-style: normal; color: var(--label-hi); }
  @media (max-width: 599.98px) { .cycles__close { grid-template-columns: minmax(0, 1fr); } }
.cycles__src { margin-block-start: clamp(1.5rem, 1rem + 1.5vw, 2.5rem); font-size: 0.75rem; line-height: 1.5; color: var(--fg-3); }
.years { --yr-mark: 2.75rem; position: relative; display: grid; gap: 1.75rem; max-inline-size: 42rem; }
  .years::before { content: ""; position: absolute; inset-block: calc(var(--yr-mark) / 2) 1rem; inset-inline-start: calc(var(--yr-mark) / 2 - 0.5px);
    inline-size: 1px; background: linear-gradient(var(--rule-strong), var(--rule) 75%, transparent); transform-origin: 50% 0; }
  .years__item { position: relative; display: grid; grid-template-columns: var(--yr-mark) minmax(0, 1fr); column-gap: 1.25rem; row-gap: 0.25rem; align-content: start; }
  .years__item > :not(.years__mark) { grid-column: 2; }
  .years__mark { grid-row: 1 / span 3; inline-size: var(--yr-mark); block-size: var(--yr-mark); padding: 0.5rem; border-radius: 50%;
    color: var(--accent); background: var(--surface); box-shadow: inset 0 0 0 1px var(--rule-strong); }
  .years__item--crest .years__mark { padding: 0.4rem; }
  .years__year { font-family: var(--font-display); font-size: 1.5rem; font-weight: 400; line-height: 1.1; color: var(--fg); font-variant-numeric: lining-nums tabular-nums; }
  .years__title { font-size: var(--step-1); font-weight: var(--weight-semibold); line-height: 1.35; color: var(--fg); }
  .years__text { font-size: var(--step-1); line-height: 1.6; color: var(--fg-2); text-wrap: pretty; }
  @media (min-width: 1100px) {
    .years { --yr-mark: 3rem; --yr-rail: 4.5rem; grid-template-columns: repeat(9, minmax(0, 1fr)); grid-template-rows: auto var(--yr-rail) auto; gap: 0; max-inline-size: none; }
    .years::before { grid-column: 1 / -1; grid-row: 2 / 3; inset: calc(50% - 0.5px) 0 auto; inline-size: auto; block-size: 1px;
      background: linear-gradient(90deg, transparent, var(--rule-strong) 6%, var(--rule-strong) 94%, transparent); transform-origin: 0 50%; }
    [dir="rtl"] .years::before { transform-origin: 100% 50%; }
    .years__item { grid-column: var(--c) / span 2; display: flex; flex-direction: column; gap: 0.375rem; padding-inline-end: 1.75rem; }
    .years__item:nth-child(odd) { grid-row: 1; align-self: end; padding-block-end: 1.25rem; }
    .years__item:nth-child(even) { grid-row: 3; align-self: start; padding-block-start: 1.25rem; }
    .years__mark { position: absolute; inset-inline-start: 0; }
    .years__item:nth-child(odd) .years__mark { inset-block-end: calc(-1 * (var(--yr-rail) + var(--yr-mark)) / 2); }
    .years__item:nth-child(even) .years__mark { inset-block-start: calc(-1 * (var(--yr-rail) + var(--yr-mark)) / 2); }
    .years__year { font-size: 2rem; }
    .years__text { font-size: 0.9375rem; }
  }
.reach { display: grid; gap: clamp(1.5rem, 0.5rem + 3vw, 3.5rem); align-items: center; }
  .reach .lead-in { grid-template-columns: minmax(0, 1fr); margin: 0; }
  .reach .lead-in__line { margin-block-start: 1rem; padding: 0; }
@media (min-width: 900px) {
    .reach .lead-in { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: end; column-gap: clamp(2rem, 1rem + 3vw, 4.5rem); }
    .reach .lead-in__line { margin-block-start: 0; }
  }
  .reach__caption { margin-block-start: clamp(1rem, 0.75rem + 0.8vw, 1.5rem); }
  .reach__markets { display: flex; flex-wrap: wrap; justify-content: center; row-gap: 0.5rem; font-size: 0.75rem; font-weight: var(--weight-semibold);
                    line-height: 1; letter-spacing: 0.12em; text-transform: uppercase; color: var(--fg); }
  .reach__markets li { display: flex; align-items: center; min-block-size: 24px; }
  .reach__markets li + li::before { content: ""; inline-size: 1px; block-size: 0.875rem; margin-inline: clamp(0.6rem, 0.3rem + 0.8vw, 1.15rem);
                                    background: var(--accent); opacity: .7; }
  @media (max-width: 599.98px) { .reach__markets { font-size: 0.6875rem; letter-spacing: 0.08em; } }
  .reach__figure { margin: 0; inline-size: 100%; }
  .reach__frame { position: relative; display: block; overflow: hidden; padding: clamp(.25rem, .15rem + .35vw, .5rem); border: 1px solid var(--rule); border-radius: 4px; background: #0d1c18; box-shadow: 0 30px 80px -44px rgb(0 0 0 / .8); }
  .reach__frame img { display: block; inline-size: 100%; block-size: auto; border-radius: 2px; }
  .reach__zoom { position: absolute; inset-block-start: var(--space-4); inset-inline-end: var(--space-4); display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; border: 1px solid rgb(201 162 74 / .7); border-radius: 50%; background: rgb(13 28 24 / .82); color: #e9d8a6; }
  .reach__zoom .icon { inline-size: 1rem; block-size: 1rem; }
  @media (max-width: 599.98px) { .reach__zoom { inset-block-start: var(--space-2); inset-inline-end: var(--space-2); inline-size: 2.25rem; block-size: 2.25rem; } }
  :root.mo .reach__zoom { transition: transform 200ms var(--ease-ui), background-color 200ms var(--ease-ui); }
  .reach__frame:is(:hover, :focus-visible) .reach__zoom { transform: scale(1.08); background: rgb(13 28 24 / .95); }
  @media screen {
    :root.mt[data-motion-ready] .reach__figure[data-m]:not([data-in]) .reach__frame { opacity: 0; translate: 0 18px; }
    :root.mt .reach__figure[data-m][data-in=""] .reach__frame { transition: opacity 700ms var(--ease-reveal) 120ms, translate 900ms var(--ease-reveal) 120ms; }
  }
#stories { overflow-x: clip; }
  #stories .tcollage { grid-template-areas: "lead" "desk" "foot"; row-gap: clamp(1.5rem, 1rem + 2vw, 2.5rem); }
  #stories .tcollage__lead { grid-area: lead; }
  #stories .tcollage__desk { grid-area: desk; inline-size: min(100%, 52rem, calc((100svh - var(--header-h, 4rem) - 4rem) * 1.36)); }
  #stories .tcollage__foot { grid-area: foot; }
  #stories .lead-in { grid-template-columns: minmax(0, 1fr); margin: 0; }
  #stories .lead-in__line { margin-block-start: 1rem; padding: 0; }
  #stories .stories__fine { max-inline-size: 40ch; font-size: 0.875rem; line-height: 1.6; color: var(--fg-3); }
  #stories .stories__more { margin-block-start: var(--space-5); }
  @media (max-width: 767.98px) {
    #stories .tcollage__desk { inline-size: min(100%, 30rem, calc((100svh - var(--header-h, 4rem) - var(--action-bar-h, 0px) - 2rem) * .8)); }
  }
  @media (min-width: 1024px) {
    #stories .tcollage { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); grid-template-areas: "lead desk" "foot desk"; row-gap: var(--space-6); }
    #stories .tcollage__lead { align-self: end; }
    #stories .tcollage__foot { align-self: start; }
  }
.program__top { display: grid; gap: clamp(2rem, 1.25rem + 2.4vw, 3.5rem); }
  .ql { display: grid; justify-items: start; align-content: start; }
  .ql__label { margin: 0; color: var(--label-hi); }
  .ql__title { margin: 1rem 0 0; font-family: var(--font-display); font-weight: 400; font-size: clamp(2.5rem, 1.6rem + 2.6vw, 4rem); line-height: 1; letter-spacing: -0.025em; color: var(--fg); }
  .ql__line { margin-block-start: 1.25rem; max-inline-size: 30em; font-size: var(--step-2); line-height: 1.6; color: var(--fg-2); text-wrap: pretty; }
.steps-lead { max-inline-size: 40ch; font-size: 1.125rem; line-height: 1.6; color: var(--fg-2); text-wrap: pretty; }
  .steps-box { --c2: 7.75rem; --gap: 1.25rem; --seam-x: calc(var(--c2) + var(--gap) / 2); --old: var(--fg-2); }
  @supports (color: color-mix(in oklab, red, blue)) { .steps-box { --old: color-mix(in oklab, var(--fg-2) 70%, var(--stop-line)); } }
  .steps-box__stage { position: relative; isolation: isolate; padding-block: 0.25rem; }
  .steps-box__heads, .step { display: grid; grid-template-columns: var(--c2) minmax(0, 1fr); column-gap: var(--gap); }
  .steps-box__heads { padding-block-end: 0.5rem; font-size: 0.875rem; font-weight: var(--weight-semibold); line-height: 1.4; }
  .steps-box__h--before { color: var(--stop-line); }
  .steps-box__h--after { color: var(--label-hi); }
  .step { align-items: baseline; align-items: last baseline; padding-block: clamp(0.625rem, 0.25rem + 1.4vh, 1.125rem); }
  .step__head { grid-column: 2; display: flex; flex-wrap: wrap; column-gap: 0.5rem; font-size: 0.875rem; font-weight: var(--weight-semibold); line-height: 1.45; color: var(--fg-3); }
  .step__num { font-weight: 400; font-variant-numeric: tabular-nums lining-nums; }
  .step__turn { display: contents; }
  .step__from { grid-column: 1; grid-row: 2; position: relative; justify-self: start; font-size: 1rem; line-height: 1.3; color: var(--old); transform-origin: 0 60%; }
  .step:nth-child(1) { --tilt: -1.6deg; }
  .step:nth-child(2) { --tilt: 1.2deg; }
  .step:nth-child(3) { --tilt: -0.9deg; }
  .step:nth-child(4) { --tilt: 1.7deg; }
  .step__from > span { display: block; }
.step__from::after { content: ""; position: absolute; inset-inline: -0.125em; inset-block-start: 54%; block-size: max(1px, 0.06em); background: color-mix(in srgb, var(--stop-line) 80%, transparent); transform-origin: 0 50%; }
  [dir="rtl"] .step__from { transform-origin: 100% 60%; }
  [dir="rtl"] .step__from::after { transform-origin: 100% 50%; }
  .step__to { grid-column: 2; grid-row: 2; position: relative; font-family: var(--font-display); font-size: 2rem; line-height: 1.04; letter-spacing: -0.02em; color: var(--fg); text-wrap: balance; }
  .step__to > span { display: block; padding-block: 0.04em 0.16em; margin-block: -0.04em -0.16em; padding-inline-end: 0.08em; }
@supports ((background-clip: text) or (-webkit-background-clip: text)) {
    .step__to > span {
      background-image: linear-gradient(100deg, transparent 42%, color-mix(in srgb, var(--label-hi) 30%, #fff) 50%, transparent 58%),
                        linear-gradient(180deg, var(--fg) 16%, var(--label-hi) 106%);
      background-size: 300% 100%, 100% 100%; background-repeat: no-repeat; background-position: 0 0, 0 0;
      -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent;
      filter: drop-shadow(0 0 22px color-mix(in srgb, var(--label-hi) 24%, transparent));
    }
  }
  .step__to::before { content: ""; position: absolute; inset-inline-start: calc(var(--gap) / -2 - 5px); inset-block-start: 0.5em; inline-size: 10px; block-size: 10px;
    margin-block-start: -5px; rotate: 45deg; background: var(--label-hi);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent), 0 0 18px 2px color-mix(in srgb, var(--label-hi) 55%, transparent); }
  .steps-box__seam { position: absolute; inset-block: 0; inset-inline-start: var(--seam-x); inline-size: 1px; background: var(--accent); transform-origin: 50% 0; }
  .steps-box__nib { display: none; }
  .steps-box__glow { position: absolute; z-index: -1; inset: 0; pointer-events: none; }
.steps-box__glow::after { content: ""; position: absolute; inset-block: 0; inset-inline: var(--seam-x) 0; background: linear-gradient(transparent, var(--glow) 2.5rem calc(100% - 2.5rem), transparent);
    -webkit-mask-image: linear-gradient(to right, #000 40%, transparent 96%); mask-image: linear-gradient(to right, #000 40%, transparent 96%); }
  [dir="rtl"] .steps-box__glow::after { -webkit-mask-image: linear-gradient(to left, #000 40%, transparent 96%); mask-image: linear-gradient(to left, #000 40%, transparent 96%); }
  @media (min-width: 768px) {
    .steps-box { --c2: 15rem; --gap: 2rem; }
    .step__from { font-size: 1.5rem; }
    .step__to { font-size: 3.25rem; }
  }
  @media (min-width: 1024px) {
.program__top { justify-items: center; text-align: center; }
    .ql { justify-items: center; }
    .steps-lead { max-inline-size: 46ch; margin-block-start: calc(-1 * clamp(1rem, 0.5rem + 1.2vw, 2rem)); }
    .steps-box { justify-self: stretch; text-align: start; --c1: 11rem; --gap: clamp(1.5rem, 3vw, 3rem); --seam-x: calc(var(--c1) + var(--c2) + var(--gap) * 1.5); }
    .steps-box__heads, .step { grid-template-columns: var(--c1) var(--c2) minmax(0, 1fr); }
    .steps-box__heads::before { content: ""; }
    .step__head { grid-column: 1; grid-row: 1; display: grid; }
    .step__from { grid-column: 2; grid-row: 1; }
    .step__to { grid-column: 3; grid-row: 1; }
  }
.program__foot { margin-block-start: clamp(2rem, 1.25rem + 2.4vw, 3rem); }
  .program__ways { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4) var(--space-6); }
.inside__stage { position: relative; isolation: isolate; display: grid; inline-size: 100%; overflow: hidden; padding: 0; border: 0; background: var(--surface-sunken); color: var(--fg); font: inherit; text-align: start; cursor: pointer; }
  .inside__photo, .inside__stage::after, .inside__chip { grid-area: 1 / 1; }
  .inside__photo { z-index: -2; inline-size: 100%; block-size: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: 50% 45%; transition: scale var(--dur-4) var(--ease-reveal); }
  .inside__stage:is(:hover, :focus-visible) .inside__photo { scale: 1.03; }
  .inside__stage::after { content: ""; z-index: -1; background: linear-gradient(to top, rgb(13 28 24 / .55), rgb(13 28 24 / 0) 30%); }
  .inside__chip { z-index: 1; place-self: end; margin: var(--space-3); padding: 0.25rem 0.5rem; border: 1px solid rgb(220 182 64 / .55); border-radius: 2px; background: rgb(13 28 24 / .72); color: #f4ecd8; font-size: 0.75rem; font-weight: var(--weight-semibold); line-height: 1.2; letter-spacing: 0.06em; font-variant-numeric: tabular-nums lining-nums; }
  .inside__stage-copy { display: grid; justify-items: start; gap: var(--space-2); padding: var(--space-4) var(--space-4) var(--space-5); }
  .inside__stage-title { display: block; font-family: var(--font-display); font-weight: 400; font-size: clamp(1.25rem, 0.9rem + 1.1vw, 1.75rem); line-height: 1.15; letter-spacing: -0.01em; text-wrap: balance; }
  @media (min-width: 600px) {
    .inside__stage { aspect-ratio: 16 / 9; }
    .inside__stage > :not(.visually-hidden) { grid-area: 1 / 1; }
    .inside__photo { aspect-ratio: auto; }
    .inside__stage::after { background: linear-gradient(to top, rgb(13 28 24 / .92), rgb(13 28 24 / .72) 22%, rgb(13 28 24 / 0) 52%); }
    .inside__stage-copy { z-index: 1; align-self: end; padding: var(--space-6) 6.5rem var(--space-6) var(--space-6); }
    .inside__chip { margin: var(--space-6); }
  }
.presenting #inside.is-active { display: flex; flex-direction: column; padding-block-end: var(--space-6); }
  .presenting #inside.is-active > .wrap { display: flex; flex: 1 0 auto; flex-direction: column; container-type: inline-size; }
  .presenting #inside .section-head { margin-block-end: var(--space-5); }
  .presenting #inside .inside__stage { flex: 1 1 0; min-block-size: min-content; }
  .presenting #inside .inside__photo { position: absolute; inset: 0; aspect-ratio: auto; }
  @media (max-width: 1023.98px) {
    .presenting #inside .inside__stage-copy { padding-block-start: var(--space-7); background: linear-gradient(to top, rgb(13 28 24 / .9) 0%, var(--scrim-950) calc(100% - var(--space-7) + var(--space-2)), rgb(13 28 24 / 0) 100%); }
  }
  @media (min-width: 1024px) {
    .presenting #inside .inside__stage { max-block-size: calc(100cqi * 9 / 21); }
    .presenting #inside .inside__stage-copy { padding: var(--space-6); }
  }
.inside__play { grid-area: 1 / 1; z-index: 1; place-self: center; inline-size: clamp(4rem, 2.75rem + 4.5vw, 6.5rem); aspect-ratio: 1; pointer-events: none; }
  .inside__play svg { display: block; inline-size: 100%; block-size: 100%; filter: drop-shadow(0 6px 18px rgb(0 0 0 / .35)); }
  .inside__play circle:first-child { fill: rgb(13 28 24 / .55); stroke: #dcb640; stroke-width: 2; }
  .inside__play .inside__play-ring { fill: none; stroke: rgb(220 182 64 / .4); stroke-width: 1; }
  .inside__play path { fill: #e3c35a; }
  :root.mo .inside__play { transition: scale 300ms var(--ease-ui); }
  .inside__stage:is(:hover, :focus-visible) .inside__play { scale: 1.08; }
#inside .lead-in { grid-template-columns: minmax(0, 1fr); justify-items: center; text-align: center; }
  .inside__beat { max-inline-size: 60rem; margin-inline: auto; }
  .inside__stage { box-shadow: 0 0 0 1px var(--edge), var(--lift); }
  .inside__stage::before { content: ""; grid-area: 1 / 1; z-index: 1; margin: var(--space-3); border: 1px solid rgb(246 224 120 / .32); pointer-events: none; }
  .inside-chapter { overflow-x: clip; }
  .lstrip-wrap { --ls-w: clamp(13rem, 24vw, 26rem); --ls-gap: clamp(0.75rem, 0.5rem + 0.5vw, 1rem); position: relative; margin: var(--scene-gap) calc(50% - 50vw) 0; }
  .lstrip { overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .lstrip__track { display: flex; inline-size: max-content; }
  .lstrip__set { display: flex; gap: var(--ls-gap); padding-inline: var(--gutter); }
  .lstrip__set > li { flex: none; scroll-snap-align: center; }
  .lstrip__item { display: block; inline-size: var(--ls-w); aspect-ratio: 4 / 5; overflow: hidden; border-radius: 2px; background: var(--surface-sunken); }
  .lstrip__item img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.lstrip__item { position: relative; }
  .lstrip__item::after { content: ""; position: absolute; inset: var(--space-3); border: 1px solid rgb(246 224 120 / .3); pointer-events: none; }
  @media screen {
    :root.mt[data-motion-ready] .lstrip-wrap[data-m]:not([data-in]) .lstrip__set > li { opacity: 0; translate: 0 32px; }
    :root.mt .lstrip-wrap[data-m][data-in=""] .lstrip__set > li { transition: opacity 800ms var(--ease-reveal) var(--d, 0ms), translate 1000ms var(--ease-reveal) var(--d, 0ms); }
    .lstrip__set > li:nth-child(2) { --d: 90ms; } .lstrip__set > li:nth-child(3) { --d: 180ms; }
    .lstrip__set > li:nth-child(4) { --d: 270ms; } .lstrip__set > li:nth-child(n + 5) { --d: 360ms; }
  }
  .lstrip__item:focus-visible { outline-offset: -4px; }
  .lstrip__bar { position: absolute; inset-inline-end: max(var(--gutter), calc(50vw - var(--content-max) / 2)); inset-block-end: var(--space-4); z-index: 2; }
.booking { margin-block-start: var(--space-6); }
  .booking__note { font-size: var(--step--1); line-height: 1.5; color: var(--fg-3); }
.close-section { position: relative; overflow: hidden; overflow: clip; padding-block-end: 0; background: linear-gradient(to bottom, transparent 40%, var(--surface-sunken)); }
.close { display: grid; justify-items: center; gap: var(--space-4); max-inline-size: 46rem; margin-inline: auto; padding-block-end: clamp(3.5rem, 2rem + 5vw, 7rem); text-align: center; }
  .close__title { margin: 0; font-family: var(--font-display); font-weight: 400; font-size: var(--step-7b); line-height: 1.02; letter-spacing: -0.02em; color: var(--fg); text-wrap: balance; }
  .close__text { max-inline-size: 40em; font-size: var(--step-2); line-height: 1.6; color: var(--fg-2); text-wrap: pretty; }
.close__more { max-inline-size: 34em; margin-block-start: calc(-1 * var(--space-2)); font-size: var(--step-0); line-height: 1.6; color: var(--fg-3); text-wrap: pretty; }
  .close__action { margin-block-start: var(--space-2); }
  .close .action { align-items: center; }
  .close .action__buttons { justify-content: center; }
@media (max-width: 767.98px) {
    .steps-lead { font-size: 1rem; }
  }
}
