/* Locale homepage zone layout. Copied from the EN homepage inline styles so
   landing/<locale>/index.html can ship Z1-Z8 without duplicating the rules.
   Keep this file aligned when the EN homepage CSS changes. */

    html {
      font-size: 16px;
      scroll-behavior: smooth;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }

    body {
      background: var(--bg);
      color: var(--text);
      font-family: 'Barlow', sans-serif;
      font-weight: 400;
      line-height: 1.6;
      min-height: 100vh; min-height: 100dvh;
      overflow-x: clip;
      position: relative;
    }

    body::before {
      content: '';
      position: fixed;
      inset: 0;
      opacity: 0.03;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
      background-repeat: repeat;
      background-size: 256px 256px;
      pointer-events: none;
      z-index: 1;
    }

    body::after {
      content: '';
      position: fixed;
      top: 24%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 900px;
      height: 640px;
      background: radial-gradient(ellipse, var(--arc-glow-subtle) 0%, transparent 70%);
      pointer-events: none;
      z-index: 0;
    }

    .page {
      position: relative;
      z-index: 2;
      max-width: 1080px;
      margin: 0 auto;
      padding: 0 24px;
      min-height: 100vh; min-height: 100dvh;
      display: flex;
      flex-direction: column;
    }

    .zone-prose { max-width: 760px; margin-left: auto; margin-right: auto; }

    a { color: var(--arc); text-decoration: none; }
    a:hover { color: var(--arc-hot); }

    #c5-nav { min-height: 76px; }

    .skip-link { position: absolute; left: 8px; top: -56px; z-index: 200; background: var(--arc); color: var(--bg); padding: 10px 16px; border-radius: 6px; font-family: 'Syne', sans-serif; font-weight: 700; transition: top 0.15s ease; }
    .skip-link:focus { top: 8px; color: var(--bg); }

    h1 {
      font-family: 'Syne', sans-serif;
      font-weight: 800;
      font-size: clamp(2rem, 5.2vw, 3.1rem);
      line-height: 1.3;
      letter-spacing: -0.02em;
      text-wrap: balance;
    }

    .hero {
      padding: 56px 0 40px;
      text-align: center;
    }

    .hero h1 {
      max-width: 820px;
      margin: 0 auto 16px;
      opacity: 0;
      animation: fadeIn 0.7s ease 0.05s forwards;
    }

    .hero__sub {
      color: var(--text-muted);
      font-size: 1.18rem;
      line-height: 1.7;
      max-width: 680px;
      margin: 0 auto 28px;
      opacity: 0;
      animation: fadeIn 0.8s ease 0.25s forwards;
    }

    .hero__sub strong { color: var(--text); font-weight: 600; }

    .hero__ctas {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      gap: 14px;
      margin-bottom: 12px;
      opacity: 0;
      animation: fadeIn 0.8s ease 0.4s forwards;
    }

    .cta-primary {
      display: inline-block;
      background: linear-gradient(135deg, var(--arc) 0%, var(--arc-hot) 100%);
      color: var(--bg);
      border: 1px solid rgba(255, 182, 39, 0.3);
      border-radius: 8px;
      padding: 16px 34px;
      min-height: 44px;
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1rem;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      cursor: pointer;
      transition: box-shadow 0.3s ease, transform 0.3s ease;
      box-shadow: 0 1px 2px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.1);
    }

    .cta-primary:hover {
      color: var(--bg);
      box-shadow: 0 0 36px var(--arc-glow-strong), 0 2px 8px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.15);
      transform: translateY(-2px);
    }

    .cta-primary::after {
      content: '\2192';
      display: inline-block;
      margin-left: 10px;
    }

    .cta-secondary {
      display: inline-block;
      background: transparent;
      color: var(--arc);
      border: 1px solid var(--arc);
      border-radius: 8px;
      padding: 15px 26px;
      min-height: 44px;
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 0.95rem;
      letter-spacing: 0.04em;
      cursor: pointer;
      transition: background 0.2s ease;
    }

    .cta-secondary:hover { background: rgba(255,182,39,0.08); color: var(--arc-hot); }

    .hero__cta-note {
      color: var(--text-muted);
      font-size: 0.9rem;
      margin-bottom: 36px;
      opacity: 0;
      animation: fadeIn 0.8s ease 0.5s forwards;
    }

    .poster {
      position: relative;
      container-type: inline-size;
      display: grid;
      grid-template-columns: 1.2fr 1fr 1.1fr;
      gap: 20px;
      align-items: stretch;
      text-align: left;
      padding: 28px 24px;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 12px;
      box-shadow: 0 0 60px rgba(255, 182, 39, 0.05);
      opacity: 0;
      animation: fadeIn 0.9s ease 0.55s forwards;
    }

    .poster__trace {
      position: absolute;
      left: 4%;
      right: 4%;
      top: 50%;
      height: 2px;
      background: linear-gradient(90deg, transparent 0%, var(--arc) 18%, var(--arc-hot) 50%, var(--arc) 82%, transparent 100%);
      background-size: 200% 100%;
      opacity: 0.35;
      z-index: 0;
      animation: traceFlow 4s linear infinite;
      pointer-events: none;
    }

    .poster::after {
      content: '';
      position: absolute;
      top: -1px;
      left: 0;
      width: 140px;
      height: 2px;
      border-radius: 2px;
      background: linear-gradient(90deg, transparent 0%, var(--arc) 45%, #FFE3A0 75%, transparent 100%);
      box-shadow: 0 0 12px var(--arc-glow-strong);
      z-index: 2;
      pointer-events: none;
      animation: cometRun 5s ease-in-out 1s infinite;
    }

    .poster__stage { animation: stageIn 0.5s ease both; }
    .poster__stage:nth-child(2) { animation-delay: 0.65s; }
    .poster__stage:nth-child(3) { animation-delay: 0.95s; }
    .poster__stage:nth-child(4) { animation-delay: 1.25s; }

    .poster__chips .chip { animation: chipIn 0.4s ease 1.0s both, chipGlow 5s ease 2.4s infinite; }
    .poster__chips .chip:nth-child(2) { animation-delay: 1.12s, 2.7s; }
    .poster__chips .chip:nth-child(3) { animation-delay: 1.24s, 3.0s; }
    .poster__chips .chip:nth-child(4) { animation-delay: 1.36s, 3.3s; }

    .chip { transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease; }
    .chip:hover { border-color: var(--arc); transform: translateY(-2px); box-shadow: 0 0 18px rgba(255,182,39,0.12); }

    .wps-doc__row { animation: chipIn 0.35s ease both; }
    .wps-doc__row:nth-of-type(1) { animation-delay: 1.3s; }
    .wps-doc__row:nth-of-type(2) { animation-delay: 1.4s; }
    .wps-doc__row:nth-of-type(3) { animation-delay: 1.5s; }
    .wps-doc__row:nth-of-type(4) { animation-delay: 1.6s; }

    .seal { animation: sealPop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) 1.75s both; }
    .seal__check { animation: sealGlow 5s ease 3.8s infinite; }

    .poster__stage {
      position: relative;
      z-index: 1;
      display: flex;
      flex-direction: column;
      gap: 12px;
      background: var(--surface-deep, #0C0C0F);
      border: 1px solid var(--border);
      border-radius: 10px;
      padding: 18px;
    }

    .poster__stage-label {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: var(--arc);
    }

    .poster__sketch { width: 100%; height: auto; display: block; }

    .poster__flag {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--bg);
      background: var(--arc);
      border-radius: 5px;
      padding: 6px 10px;
      line-height: 1.4;
      align-self: flex-start;
    }

    .poster__chips { display: flex; flex-direction: column; gap: 10px; justify-content: center; flex: 1; }

    .chip {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.85rem;
      line-height: 1.5;
      color: var(--text);
      background: rgba(255, 182, 39, 0.06);
      border: 1px solid var(--arc-glow-strong);
      border-radius: 6px;
      padding: 9px 12px;
    }

    .chip__ref { color: var(--arc); }

    .wps-doc {
      background: #0E0E12;
      border: 1px solid var(--border);
      border-radius: 8px;
      padding: 14px 16px;
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .wps-doc__title {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.85rem;
      color: var(--text);
      letter-spacing: 0.06em;
      border-bottom: 1px solid var(--border);
      padding-bottom: 8px;
    }

    .wps-doc__row {
      display: flex;
      justify-content: space-between;
      gap: 10px;
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--text-muted);
    }

    .wps-doc__row span:last-child { color: var(--text); text-align: right; }

    .wps-doc__sig {
      margin-top: auto;
      padding-top: 10px;
      border-top: 1px dashed var(--border);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }

    .wps-doc__sig-line {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--text-muted);
    }

    .seal {
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .seal__check {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--success, #34D399);
    }

    .poster__caption {
      text-align: center;
      color: var(--text-muted);
      font-size: 1rem;
      line-height: 1.6;
      max-width: 760px;
      margin: 16px auto 0;
      opacity: 0;
      animation: fadeIn 0.9s ease 0.7s forwards;
    }

    .poster__caption strong {
      display: block;
      font-family: 'Syne', sans-serif;
      font-weight: 800;
      font-size: clamp(1.5rem, 3.2vw, 2rem);
      color: var(--text);
      margin-bottom: 8px;
    }

    .poster__caption a { white-space: nowrap; }

    .lifearc {
      position: relative;
      container-type: inline-size;
      margin-top: 24px;
      text-align: left;
      padding: 26px 24px 28px;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 12px;
      box-shadow: 0 0 60px rgba(255, 182, 39, 0.05);
    }

    .lifearc__act { position: relative; }

    .lifearc__act-tag {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: var(--text-muted);
      margin-bottom: 12px;
    }

    .lifearc__act-tag--2 { color: var(--arc); }

    .lifearc__rail { position: relative; height: 22px; pointer-events: none; }

    .lifearc__rail::before {
      content: '';
      position: absolute;
      left: 0; right: 0; top: 50%;
      height: 2px;
      margin-top: -1px;
      background: linear-gradient(90deg, transparent 0%, var(--arc) 12%, var(--arc-hot) 50%, var(--arc) 88%, transparent 100%);
      opacity: 0.3;
    }

    .lifearc__rail--2::before { opacity: 0.45; }

    .lifearc__bead {
      position: absolute;
      top: 50%;
      left: 0;
      width: 90px;
      height: 2px;
      margin-top: -1px;
      border-radius: 2px;
      background: linear-gradient(90deg, transparent 0%, var(--arc) 45%, #FFE3A0 75%, transparent 100%);
      box-shadow: 0 0 12px var(--arc-glow-strong);
      opacity: 0;
    }

    .lifearc__row {
      list-style: none;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 14px;
      margin: 0;
      padding: 0;
    }

    .lifearc__row--2 { grid-template-columns: repeat(4, 1fr); }

    @media (min-width: 901px) {
      .lifearc__row--2 { grid-template-rows: auto auto; row-gap: 0; }
      .lifearc__row--2 .lifearc__stop { display: grid; grid-template-rows: subgrid; grid-row: span 2; }
    }

    .lifearc__stop { position: relative; text-align: center; padding-top: 10px; }

    .lifearc__dot {
      position: absolute;
      top: -16px;
      left: 50%;
      width: 10px;
      height: 10px;
      margin-left: -5px;
      border-radius: 50%;
      background: var(--arc);
      box-shadow: 0 0 10px var(--arc-glow-strong), 0 0 22px var(--arc-glow);
      animation: lifearcDotGlow 5s ease var(--d, 0s) infinite;
    }

    .lifearc__label {
      display: block;
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1rem;
      line-height: 1.4;
      color: var(--text);
    }

    .lifearc__row--1 .lifearc__label { color: var(--text-muted); }

    .lifearc__row--1 .lifearc__dot { box-shadow: 0 0 8px var(--arc-glow); }

    .lifearc__hinge {
      position: relative;
      text-align: center;
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: clamp(1.05rem, 2.4vw, 1.28rem);
      line-height: 1.55;
      color: var(--text);
      max-width: 640px;
      margin: 30px auto 32px;
      text-wrap: balance;
    }

    .lifearc__hinge-b { color: var(--arc); }

    .lifearc__ember {
      position: absolute;
      left: 50%;
      bottom: -12px;
      width: 70px;
      height: 2px;
      margin-left: -35px;
      border-radius: 2px;
      background: linear-gradient(90deg, transparent 0%, var(--arc-hot) 50%, transparent 100%);
      box-shadow: 0 0 10px var(--arc-glow-strong);
      opacity: 0;
      pointer-events: none;
    }

    .lifearc__card {
      margin-top: 10px;
      text-align: left;
      background: var(--surface-deep, #0C0C0F);
      border: 1px solid var(--arc-glow-strong);
      border-radius: 8px;
      padding: 12px;
      display: flex;
      flex-direction: column;
      gap: 6px;
      box-shadow: 0 0 18px rgba(255, 182, 39, 0.05);
    }

    .lifearc__cardrow {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      line-height: 1.5;
      color: var(--text-muted);
    }

    .lifearc__cardrow strong { color: var(--text); font-weight: 600; }

    .lifearc__ref { color: var(--arc); }

    .lifearc__stop--seal .lifearc__card {
      border-color: rgba(255, 227, 160, 0.55);
      box-shadow: 0 0 34px rgba(255, 182, 39, 0.16);
    }

    .lifearc__stop--seal .lifearc__dot {
      background: #FFE3A0;
      box-shadow: 0 0 14px var(--arc-glow-strong), 0 0 30px var(--arc-glow);
    }

    .lifearc__seal {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-top: 4px;
      padding-top: 10px;
      border-top: 1px dashed var(--border);
    }

    .lifearc__seal-check {
      display: block;
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--success, #34D399);
      animation: sealGlow 5s ease 0.6s infinite;
    }

    .lifearc__verify {
      display: block;
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--arc);
    }

    .lifearc__seal:hover .lifearc__verify { color: var(--arc-hot); }

    .lifearc__payoff { text-align: center; margin-top: 30px; }

    .lifearc__payoff-line {
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1.08rem;
      color: var(--text);
      margin-bottom: 14px;
    }

    .lifearc--gated .lifearc__seal,
    .lifearc--gated .lifearc__cta { pointer-events: none; }

    .lifearc--idle .lifearc__stop,
    .lifearc--idle .lifearc__hinge,
    .lifearc--idle .lifearc__payoff { opacity: 0; }

    .lifearc--idle .lifearc__dot,
    .lifearc--idle .lifearc__seal-check { animation: none; }

    .lifearc--run .lifearc__bead--1 { animation: lifearcBead1 2.4s linear 0.2s both; }
    .lifearc--run .lifearc__stop { animation: lifearcRise 0.5s ease var(--d, 0s) both; }
    .lifearc--run .lifearc__dot { animation: lifearcDotIn 0.45s ease var(--d, 0s) both, lifearcDotGlow 5s ease calc(var(--d, 0s) + 1.4s) infinite; }
    .lifearc--run .lifearc__hinge { animation: lifearcRise 0.7s ease 2.7s both; }
    .lifearc--run .lifearc__ember { animation: lifearcEmber 1.3s linear 3.1s both; }
    .lifearc--run .lifearc__bead--2 { animation: lifearcBead2 3.6s linear 4.1s both; }
    .lifearc--run .lifearc__seal-check { animation: lifearcRise 0.5s ease 7.5s both, sealGlow 5s ease 8.2s infinite; }
    .lifearc--run .lifearc__payoff { animation: lifearcRise 0.6s ease 7.9s both; }

    @supports not (width: 1cqw) {
      .lifearc__bead, .lifearc__ember { display: none; }
    }

    .taste {
      margin: 26px auto 0;
      max-width: 760px;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 10px;
      padding: 20px 22px;
      text-align: center;
    }

    .taste__title {
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1.05rem;
      color: var(--text);
      margin-bottom: 14px;
    }

    .taste__row {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      align-items: flex-end;
      justify-content: center;
    }

    .taste__field {
      display: flex;
      flex-direction: column;
      gap: 6px;
      font-size: 0.9rem;
      color: var(--text-muted);
      text-align: left;
    }

    .taste__field select {
      min-height: 44px;
      background: var(--surface);
      border: 1px solid var(--border);
      color: var(--text);
      border-radius: 6px;
      padding: 8px 10px;
      font-size: 1rem;
      font-family: 'Barlow', sans-serif;
    }

    .taste__btn {
      min-height: 44px;
      padding: 10px 18px;
      border-radius: 6px;
      border: 1px solid var(--arc);
      background: var(--arc);
      color: var(--bg);
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 0.92rem;
      cursor: pointer;
      transition: background 0.2s ease;
    }

    .taste__btn:hover { background: var(--arc-hot); border-color: var(--arc-hot); }

    .taste__result {
      margin: 14px auto 0;
      max-width: 560px;
      font-family: 'IBM Plex Mono', monospace;
      font-size: 1rem;
      line-height: 1.6;
      color: var(--text);
      background: rgba(255, 182, 39, 0.06);
      border: 1px solid var(--arc-glow-strong);
      border-radius: 8px;
      padding: 12px 14px;
    }

    .taste__ref { color: var(--arc); }

    .taste__note { margin-top: 12px; font-size: 0.9rem; color: var(--text-muted); }

    .demo-steps {
      max-width: 760px;
      margin: 22px auto 0;
      text-align: left;
      display: none;
    }

    .demo-steps.open { display: block; }

    .demo-step {
      display: flex;
      gap: 14px;
      align-items: baseline;
      padding: 12px 16px;
      border-left: 2px solid var(--arc-glow-strong);
      margin-bottom: 4px;
    }

    .demo-step__num {
      font-family: 'Syne', sans-serif;
      font-weight: 800;
      font-size: 0.95rem;
      color: var(--arc);
      min-width: 20px;
    }

    .demo-step__text { color: var(--text-muted); font-size: 1rem; line-height: 1.6; }
    .demo-step__text strong { color: var(--text); font-weight: 600; }
    .demo-step__cite { font-family: 'IBM Plex Mono', monospace; font-size: 0.82rem; color: var(--arc); display: block; margin-top: 2px; }

    .trust-strip {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      gap: 10px 18px;
      text-align: center;
      padding: 22px 26px;
      margin: 40px 0 0;
      background: rgba(255, 182, 39, 0.04);
      border: 1px solid var(--arc-glow-strong);
      border-radius: 10px;
    }

    .trust-strip__claim {
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1.15rem;
      color: var(--text);
    }

    .trust-strip__detail { color: var(--text-muted); font-size: 1rem; line-height: 1.6; }

    .trust-strip__link { font-weight: 600; white-space: nowrap; }

    .section {
      padding: 56px 0;
      opacity: 0;
      transform: translateY(24px);
      transition: opacity 0.7s ease, transform 0.7s ease;
    }

    .section.visible { opacity: 1; transform: translateY(0); }

    .section + .section { border-top: 1px solid var(--border-subtle); }

    .section .section__label {
      font-family: 'Syne', sans-serif;
      font-size: 0.82rem;
      font-weight: 700;
      color: var(--arc);
      letter-spacing: 0.18em;
      text-transform: uppercase;
      margin-bottom: 32px;
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .section__label::after {
      content: '';
      flex: 1;
      height: 1px;
      background: linear-gradient(90deg, var(--arc-glow-strong) 0%, transparent 80%);
    }

    .section__label .label-brand { letter-spacing: 0.02em; }

    .section h2 {
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1.5rem;
      letter-spacing: -0.01em;
      margin-bottom: 12px;
    }

    .section h3 {
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1.1rem;
      margin: 20px 0 6px;
    }

    .doors {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      align-items: stretch;
    }

    .door {
      display: flex;
      flex-direction: column;
      gap: 10px;
      padding: 26px 24px;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 10px;
      transition: border-color 0.3s ease, box-shadow 0.3s ease;
    }

    .door--live { border-color: var(--arc); box-shadow: 0 0 28px rgba(255, 182, 39, 0.08); }

    .door--live:hover { box-shadow: 0 0 44px rgba(255, 182, 39, 0.14); }

    .door__title {
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1.15rem;
      color: var(--text);
    }

    .door__auth {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--text-muted);
      letter-spacing: 0.02em;
    }

    .door__desc { color: var(--text-muted); font-size: 0.95rem; line-height: 1.6; flex: 1; }

    .door__action {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 44px;
      padding: 11px 18px;
      border-radius: 8px;
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 0.92rem;
      letter-spacing: 0.03em;
      cursor: pointer;
      border: 1px solid var(--arc);
      background: var(--arc);
      color: var(--bg);
      transition: background 0.2s ease, color 0.2s ease;
      text-align: center;
    }

    .door__action:hover { background: var(--arc-hot); border-color: var(--arc-hot); color: var(--bg); }

    .door--disabled .door__title,
    .door--disabled .door__auth,
    .door--disabled .door__desc { opacity: 0.75; }

    .door--disabled .door__action {
      background: transparent;
      color: var(--text-muted);
      border-color: var(--border);
      cursor: pointer;
    }

    .door--disabled .door__action:hover { background: rgba(255,182,39,0.06); color: var(--arc); border-color: var(--arc-glow-strong); }

    .door__status {
      display: inline-block;
      align-self: flex-start;
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--arc);
      background: rgba(255, 182, 39, 0.07);
      border: 1px solid var(--arc-glow-strong);
      border-radius: 4px;
      padding: 3px 9px;
      letter-spacing: 0.04em;
    }

    .door__notify { font-size: 0.9rem; }

    #early-access {
      margin: 0;
      padding: 36px 30px;
      border: 1px solid var(--arc);
      border-radius: 10px;
      background: rgba(255,182,39,0.03);
      text-align: center;
    }

    #early-access h2 {
      font-family: 'Syne', sans-serif;
      font-weight: 800;
      font-size: clamp(1.3rem, 3vw, 1.7rem);
      letter-spacing: -0.02em;
      margin-bottom: 8px;
    }

    #early-access .beta-sub {
      color: var(--text-muted);
      font-size: 1.02rem;
      margin-bottom: 24px;
    }

    .form-note {
      margin-top: 14px;
      font-size: 0.82rem;
      color: var(--text-muted);
      letter-spacing: 0.01em;
    }

    .beats {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      align-items: stretch;
    }

    .beat {
      display: flex;
      flex-direction: column;
      gap: 12px;
      padding: 26px 24px;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 10px;
      transition: border-color 0.3s ease, box-shadow 0.3s ease;
    }

    .beat:hover { border-color: var(--arc-glow-strong); box-shadow: 0 0 24px rgba(255, 182, 39, 0.06); }

    .beat__name {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--arc);
    }

    .beat__quote {
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1.12rem;
      line-height: 1.45;
      color: var(--text);
    }

    .beat__answer { color: var(--text-muted); font-size: 0.95rem; line-height: 1.65; flex: 1; }

    .beat__landing {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.82rem;
      color: var(--arc);
      border-top: 1px solid var(--border-subtle);
      padding-top: 12px;
      line-height: 1.5;
    }

    .flow-kicker-sub {
      text-align: center;
      max-width: 760px;
      margin: 56px auto 0;
      padding-top: 40px;
      border-top: 1px solid var(--border-subtle);
      font-size: 1.15rem;
      line-height: 1.7;
      color: var(--text-muted);
    }

    .proof-verify {
      display: flex;
      align-items: center;
      gap: 22px;
      padding: 22px 24px;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 10px;
      margin-bottom: 40px;
      flex-wrap: wrap;
    }

    .proof-verify__visual { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }

    .proof-verify__arrow { color: var(--text-muted); font-size: 1.1rem; }

    .proof-verify__text { flex: 1; min-width: 240px; color: var(--text-muted); font-size: 1rem; line-height: 1.65; }

    .proof-verify__text strong { color: var(--text); font-weight: 600; }

    .composer-heading { text-align: center; margin-bottom: 6px; }

    .composer-line {
      text-align: center;
      color: var(--text-muted);
      font-size: 1.05rem;
      margin-bottom: 24px;
    }

    .flux-chip { padding:10px 16px; min-height:44px; background:var(--surface); border:1px solid var(--border);
      border-radius:20px; color:var(--text-muted); font-family:'IBM Plex Mono',monospace; font-size:0.82rem;
      cursor:pointer; transition:border-color 0.15s,color 0.15s; }
    .flux-chip:hover { border-color:var(--arc); color:var(--arc); }
    .flux-chip:disabled { opacity:0.4; cursor:not-allowed; }

    .trust-row {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      gap: 8px;
      padding: 24px 0 8px;
      font-size: 0.95rem;
      color: var(--text-muted);
    }
    .trust-row__check { color: var(--arc); margin-right: 4px; }
    .trust-row__item + .trust-row__item::before { content: '\00B7'; margin-right: 8px; color: var(--text-dim); }

    .corpus-line {
      text-align: center;
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.9rem;
      color: var(--text-muted);
      margin-top: 8px;
    }

    .student-lane {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 18px;
      flex-wrap: wrap;
      padding: 22px 24px;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 10px;
      margin-bottom: 22px;
    }

    .student-lane__text { color: var(--text-muted); font-size: 1.02rem; line-height: 1.6; }
    .student-lane__text strong { color: var(--text); font-weight: 600; }
    .student-lane__link { font-weight: 600; white-space: nowrap; }

    .standards-list { display: flex; flex-wrap: wrap; gap: 8px; }

    .standard-tag {
      font-size: 0.82rem;
      color: var(--text-muted);
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 4px;
      padding: 6px 14px;
      letter-spacing: 0.04em;
      font-family: 'IBM Plex Mono', monospace;
      text-decoration: none;
      transition: border-color 0.2s ease, color 0.2s ease;
      min-height: 44px;
      min-width: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    .standard-tag:hover { border-color: var(--arc-glow-strong); color: var(--text); }

    .footer-lang-switch .standard-tag { min-height: 44px; }
    .breadcrumb a,
    .trust-strip__link,
    .student-lane__link,
    .proof-verify__text a,
    .page p a {
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      box-sizing: border-box;
    }

    #popular-tools .standard-tag,
    #popular-guides .standard-tag { min-height: 44px; }

    #flux-widget { min-height: 234px; }
    #waitlistForm { min-height: 50px; }


    .machine-block p { color: var(--text-muted); font-size: 1rem; line-height: 1.75; max-width: 760px; }

    .faq-list { display: flex; flex-direction: column; gap: 12px; margin-top: 28px; }

    .faq-item {
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 8px;
      padding: 24px 28px;
      transition: border-color 0.3s ease;
    }

    .faq-item:hover { border-color: var(--arc-glow-strong); }

    .faq-item__q {
      font-family: 'Syne', sans-serif;
      font-weight: 700;
      font-size: 1.05rem;
      margin-bottom: 8px;
      color: var(--text);
    }

    .faq-item__a { font-size: 1rem; color: var(--text-muted); line-height: 1.75; }

    .standards { padding: 32px 0 12px; }

    .standards-label {
      font-size: 0.82rem;
      color: var(--text-muted);
      letter-spacing: 0.15em;
      text-transform: uppercase;
      line-height: 2;
    }

    footer {
      padding: 40px 24px;
      border-top: 1px solid var(--border-subtle);
      font-size: 0.875rem;
      color: var(--text-dim);
      max-width: 1080px;
      margin: 0 auto;
    }

    footer a { color: var(--text-muted); text-decoration: none; transition: color 0.3s ease; }

    .success-overlay {
      display: none;
      position: fixed;
      inset: 0;
      background: rgba(8, 8, 10, 0.95);
      z-index: 100;
      justify-content: center;
      align-items: center;
      text-align: center;
      padding: 24px;
    }

    .success-overlay.visible { display: flex; }

    .success-content { position: relative; }

    .success-overlay__close {
      position: absolute;
      top: 8px;
      right: 8px;
      min-width: 44px;
      min-height: 44px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: none;
      border: none;
      color: var(--text-muted);
      font-size: 1.6rem;
      line-height: 1;
      cursor: pointer;
    }

    .success-overlay__close:hover { color: var(--arc); }

    .success-content h2 {
      font-family: 'Syne', sans-serif;
      font-weight: 800;
      font-size: 2rem;
      margin-bottom: 16px;
      color: var(--arc);
    }

    .success-content p { color: var(--text-muted); max-width: 400px; line-height: 1.7; }

    .success-content .check {
      width: 64px;
      height: 64px;
      border-radius: 50%;
      border: 2px solid var(--arc);
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto 24px;
      font-size: 1.6rem;
      color: var(--arc);
      box-shadow: 0 0 30px var(--arc-glow);
    }

    .sticky-cta {
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 50;
      background: var(--bg);
      border-top: 1px solid var(--border);
      padding: 10px 16px;
      display: none;
      align-items: center;
      gap: 8px;
    }
    .sticky-cta__btn {
      flex: 1;
      display: block;
      min-height: 48px;
      line-height: 48px;
      background: var(--arc);
      color: var(--bg);
      font-weight: 700;
      border-radius: var(--radius, 6px);
      text-align: center;
      text-decoration: none;
      font-family: 'Syne', sans-serif;
      font-size: 0.95rem;
    }
    .sticky-cta__btn:hover { color: var(--bg); }
    .sticky-cta__close {
      background: none;
      border: none;
      color: var(--text-dim);
      font-size: 1.4rem;
      cursor: pointer;
      min-width: 44px;
      min-height: 44px;
      display: flex;
      align-items: center;
      justify-content: center;
      line-height: 1;
    }

    @keyframes fadeIn {
      from { opacity: 0; }
      to { opacity: 1; }
    }

    @keyframes traceFlow {
      0% { background-position: 100% 0; }
      100% { background-position: -100% 0; }
    }

    @keyframes cometRun {
      0% { transform: translateX(-8cqw); opacity: 0; }
      8% { opacity: 1; }
      52% { opacity: 1; }
      60% { transform: translateX(104cqw); opacity: 0; }
      100% { transform: translateX(104cqw); opacity: 0; }
    }

    @keyframes chipGlow {
      0%, 14%, 100% { border-color: var(--arc-glow-strong); box-shadow: none; }
      7% { border-color: var(--arc); box-shadow: 0 0 16px rgba(255,182,39,0.22); }
    }

    @keyframes stageIn {
      from { opacity: 0; transform: translateY(14px); }
      to { opacity: 1; transform: translateY(0); }
    }

    @keyframes chipIn {
      from { opacity: 0; transform: translateX(-8px); }
      to { opacity: 1; transform: translateX(0); }
    }

    @keyframes sealPop {
      from { opacity: 0; transform: scale(0.6); }
      to { opacity: 1; transform: scale(1); }
    }

    @keyframes sealGlow {
      0%, 100% { text-shadow: none; }
      50% { text-shadow: 0 0 14px rgba(52, 211, 153, 0.8); }
    }

    @keyframes lifearcRise {
      from { opacity: 0; transform: translateY(10px); }
      to { opacity: 1; transform: translateY(0); }
    }

    @keyframes lifearcDotIn {
      0% { opacity: 0; }
      45% { opacity: 1; box-shadow: 0 0 16px var(--arc), 0 0 36px var(--arc-glow-strong); }
      100% { opacity: 1; }
    }

    @keyframes lifearcDotGlow {
      0%, 100% { box-shadow: 0 0 10px var(--arc-glow-strong), 0 0 22px var(--arc-glow); }
      50% { box-shadow: 0 0 14px var(--arc-glow-strong), 0 0 30px var(--arc-glow); }
    }

    @keyframes lifearcEmber {
      0% { transform: translateX(-32cqw); opacity: 0; }
      12% { opacity: 0.7; }
      88% { opacity: 0.7; }
      100% { transform: translateX(32cqw); opacity: 0; }
    }

    @keyframes lifearcBead1 {
      0% { transform: translateX(calc(0cqw - 90px)); opacity: 0; }
      8% { opacity: 1; }
      26% { transform: translateX(calc(25cqw - 45px)); }
      34% { transform: translateX(calc(25cqw - 45px)); }
      68% { transform: translateX(calc(75cqw - 45px)); }
      76% { transform: translateX(calc(75cqw - 45px)); }
      92% { opacity: 1; }
      100% { transform: translateX(calc(100cqw - 30px)); opacity: 0; }
    }

    @keyframes lifearcBead2 {
      0% { transform: translateX(calc(0cqw - 90px)); opacity: 0; }
      6% { opacity: 1; }
      16% { transform: translateX(calc(12.5cqw - 45px)); }
      23% { transform: translateX(calc(12.5cqw - 45px)); }
      40% { transform: translateX(calc(37.5cqw - 45px)); }
      47% { transform: translateX(calc(37.5cqw - 45px)); }
      64% { transform: translateX(calc(62.5cqw - 45px)); }
      71% { transform: translateX(calc(62.5cqw - 45px)); }
      88% { transform: translateX(calc(87.5cqw - 45px)); opacity: 1; }
      100% { transform: translateX(calc(87.5cqw - 45px)); opacity: 0; }
    }

    .door--live { animation: doorBreathe 5s ease-in-out infinite; }

    @keyframes doorBreathe {
      0%, 100% { box-shadow: 0 0 28px rgba(255, 182, 39, 0.08); }
      50% { box-shadow: 0 0 44px rgba(255, 182, 39, 0.16); }
    }

    .anim-paused, .anim-paused *, .anim-paused::before, .anim-paused::after { animation-play-state: paused !important; }

    :root[data-theme="light"] a,
    :root[data-theme="light"] .section .section__label,
    :root[data-theme="light"] .beat__name,
    :root[data-theme="light"] .beat__landing,
    :root[data-theme="light"] .demo-step__num,
    :root[data-theme="light"] .demo-step__cite,
    :root[data-theme="light"] .door__status,
    :root[data-theme="light"] .trust-row__check { color: #9A5A00; }
    :root[data-theme="light"] .taste__ref { color: #9A5A00; }
    :root[data-theme="light"] a:hover,
    :root[data-theme="light"] .cta-secondary:hover { color: #7A4600; }
    :root[data-theme="light"] .cta-secondary { color: #9A5A00; border-color: #9A5A00; }
    :root[data-theme="light"] .door__status { border-color: #C98A2E; background: rgba(154,90,0,0.08); }

    :root[data-theme="light"] .poster,
    :root[data-theme="light"] .lifearc {
      --bg: #15151A; --surface: #1B1B22; --surface-deep: #17171D;
      --text: #F0EDE8; --text-muted: #D0D0D4; --text-dim: #B0B0B6;
      --arc: #FFB627; --arc-hot: #FF8C00;
      --arc-glow: rgba(255,182,39,0.15); --arc-glow-strong: rgba(255,182,39,0.3); --arc-glow-subtle: rgba(255,182,39,0.10);
      --border: #3A3A44; --border-subtle: #26262E; --success: #34D399;
    }

    :root[data-theme="light"] .poster,
    :root[data-theme="light"] .lifearc {
      box-shadow: 0 12px 34px rgba(24, 20, 10, 0.22), 0 2px 8px rgba(24, 20, 10, 0.12);
    }

    :root[data-theme="light"] .wps-doc { background: #17171D; }

    @media (max-width: 900px) {
      .poster { grid-template-columns: 1fr; }
      .poster__trace { left: 50%; right: auto; top: 6%; bottom: 6%; height: auto; width: 2px;
        background: linear-gradient(180deg, transparent 0%, var(--arc) 18%, var(--arc-hot) 50%, var(--arc) 82%, transparent 100%);
        background-size: 100% 200%; animation: none; }
      .doors { grid-template-columns: 1fr; gap: 12px; }
      .beats { grid-template-columns: 1fr; gap: 12px; }
      .lifearc__rail, .lifearc__bead { display: none; }
      .lifearc__row, .lifearc__row--2 { grid-template-columns: 1fr; gap: 12px; }
      .lifearc__act::after { content: ''; position: absolute; left: 8px; top: 34px; bottom: 4px; width: 2px;
        background: linear-gradient(180deg, transparent 0%, var(--arc) 18%, var(--arc-hot) 50%, var(--arc) 82%, transparent 100%); opacity: 0.3; }
      .lifearc__act--2::after { opacity: 0.45; }
      .lifearc__stop { text-align: left; padding: 0 0 0 28px; }
      .lifearc__dot { top: 5px; left: 4px; margin-left: 0; }
      .lifearc__ember { bottom: -10px; }
    }

    @media (max-width: 600px) {
      .hero { padding: 36px 0 28px; }
      .hero h1 { font-size: 1.6rem; }
      .hero__sub { font-size: 1.05rem; }
      .hero__ctas { flex-direction: column; }
      .cta-primary, .cta-secondary { width: 100%; text-align: center; }
      .poster { padding: 18px 14px; }
      .lifearc { padding: 18px 14px 20px; }
      .lifearc__hinge { margin: 24px auto 26px; }
      .trust-strip { flex-direction: column; gap: 8px; padding: 20px 18px; }
      .section { padding: 40px 0; opacity: 1 !important; transform: none !important; }
      #early-access { padding-left: 16px !important; padding-right: 16px !important; }
      .proof-verify { flex-direction: column; align-items: flex-start; }
      .student-lane { flex-direction: column; align-items: flex-start; gap: 10px; }
      .standards-list { gap: 6px; }
      .standard-tag { font-size: 0.82rem; padding: 5px 10px; }
      .sticky-cta { display: flex; }
      footer .footer-bottom { flex-direction: column; text-align: center; }
      .page { padding-inline: 1.25rem; }
      body { font-size: 1.05rem; }
      #flux-widget { min-height: 311px; }
      #waitlistForm { min-height: 170px; }
    }

    @media (prefers-reduced-motion: reduce) {
      nav, .breadcrumb, .hero h1, .hero__sub, .hero__ctas, .hero__cta-note, .poster, .poster__caption, .section,
      .poster__stage, .poster__chips .chip, .wps-doc__row, .seal, .seal__check, .door--live,
      .lifearc__act-tag, .lifearc__stop, .lifearc__hinge, .lifearc__payoff, .lifearc__dot, .lifearc__seal-check { opacity: 1 !important; transform: none !important; animation: none !important; }
      .poster__trace, .poster::after { animation: none !important; }
      .poster__trace { opacity: 0.35; }
      .poster::after { opacity: 0 !important; }
      .lifearc__bead, .lifearc__ember { opacity: 0 !important; animation: none !important; }
      .lifearc__rail::before { animation: none !important; }
      html { scroll-behavior: auto; }
    }

html[lang="ar"] .page { font-family: "Noto Sans Arabic", "Barlow", sans-serif; }
html[lang="hi"] .page { font-family: "Noto Sans Devanagari", "Barlow", sans-serif; }
html[dir="rtl"] .poster,
html[dir="rtl"] .wps-doc,
html[dir="rtl"] .poster__chips { direction: ltr; }
