
  :root {
    --void: #050507; --ink: #0e0e11; --ink-2: #16161a; --ink-3: #1f1f24;
    --hairline: rgba(255,255,255,0.07); --hairline-strong: rgba(255,255,255,0.16);
    --bone: #f1f1f3; --bone-dim: #c5c5ca; --bone-mute: #84848c;
    --ember: #ff3a0e; --ember-glow: #ff5a1f; --ember-deep: #c92c0a;
    --type-display: 'Fraunces', Georgia, serif;
    --type-sans: 'Inter Tight', system-ui, sans-serif;
    --type-mono: 'JetBrains Mono', ui-monospace, Menlo, monospace;
  }
  * { box-sizing: border-box; margin: 0; padding: 0; }
  html, body { background: var(--void); color: var(--bone); font-family: var(--type-sans); -webkit-font-smoothing: antialiased; }
  body { font-size: 16px; line-height: 1.5; overflow-x: hidden; }
  a { color: inherit; text-decoration: none; }
  button { font: inherit; color: inherit; background: none; border: none; cursor: pointer; }
  ::selection { background: var(--ember); color: var(--void); }
  img, svg, video { display: block; max-width: 100%; }

  body::before {
    content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 1;
    background-image: radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px);
    background-size: 24px 24px; opacity: .4;
  }

  .display { font-family: var(--type-display); font-weight: 300; letter-spacing: -0.028em; line-height: 0.93; }
  .display em { font-style: italic; font-weight: 300; color: var(--ember); }
  .mono { font-family: var(--type-mono); letter-spacing: 0.18em; text-transform: uppercase; font-size: 11px; font-weight: 500; color: var(--bone-mute); }
  .lbl-row { display: flex; align-items: center; gap: 14px; margin-bottom: 32px; }
  .lbl-row::before { content: ""; flex: 0 0 8px; width: 8px; height: 8px; border-radius: 50%; background: var(--ember); box-shadow: 0 0 10px rgba(255,58,14,0.55); }
  .lbl-row .num { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; color: var(--ember); }
  .lbl-row .line { flex: 1; height: 1px; background: var(--hairline); }
  .lbl-row .lbl { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-mute); }

  /* ============ NAV (same as Home) ============ */
  .rs-top { position: fixed; top: 0; left: 0; right: 0; height: 64px; z-index: 50;
    display: flex; align-items: center; justify-content: space-between; padding: 0 32px;
    background: rgba(5,5,7,0.78); backdrop-filter: blur(20px);
    border-bottom: 1px solid var(--hairline); }
  .rs-brand { display: flex; align-items: center; gap: 12px; }
  .rs-brand-sym { width: 22px; height: 22px; }
  .rs-brand-name { font-family: var(--type-display); font-style: normal; font-weight: 400; font-size: 18px; color: var(--bone); letter-spacing: -0.01em; }
  .rs-brand-name em { font-style: italic; font-family: var(--type-display); font-weight: 300; font-size: 18px; letter-spacing: -0.01em; text-transform: none; color: var(--ember); margin-left: 0; }
  .rs-nav { display: flex; gap: 32px; align-items: center; }
  .rs-nav > a { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-dim); padding: 8px 0; }
  .rs-nav > a:hover { color: var(--bone); }
  .rs-nav > a.active { color: var(--ember); }
  .rs-nav > a .sup { font-size: 0.65em; vertical-align: top; opacity: 0.65; }
  .rs-cta { padding: 10px 18px; border: 1px solid var(--hairline-strong); color: var(--bone);
    font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase;
    display: inline-flex; align-items: center; gap: 10px; transition: border-color .2s, background .2s, color .2s; }
  .rs-cta:hover { border-color: var(--ember); background: rgba(255,58,14,0.08); color: var(--ember); }
  @media (max-width: 980px) { .rs-nav { display: none; } .rs-cta span { display: none; } }
  @media (max-width: 600px) { .rs-top { padding: 0 20px; } .rs-brand-sym { width: 20px; height: 20px; overflow: visible; } }

  /* ============ HERO ============ */
  .hero { position: relative; padding: 96px 32px 96px; overflow: hidden; margin-top: 64px; border-top: 1px solid var(--hairline); }
  .hero-inner { max-width: 1480px; margin: 0 auto; position: relative; z-index: 2; }
  .hero-eyebrow { display: flex; align-items: center; gap: 14px; color: var(--ember); margin-bottom: 80px; }
  .hero-eyebrow::before { content: ""; flex: 0 0 8px; width: 8px; height: 8px; border-radius: 50%; background: var(--ember); box-shadow: 0 0 10px rgba(255,58,14,0.55); }
  .hero-eyebrow .num { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; }
  .hero-eyebrow .line { flex: 0 0 64px; height: 1px; background: var(--ember); opacity: 0.6; }
  .hero-eyebrow .lbl { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-mute); }

  .cascade { margin-bottom: 80px; }
  .cascade .l { display: block; font-family: var(--type-display); font-weight: 300; letter-spacing: -0.035em; line-height: 0.95;
    font-size: clamp(64px, 8.4vw, 140px); color: var(--bone); }
  .cascade .l em { font-style: italic; color: var(--ember); font-weight: 300; }

  .hero-bottom { display: grid; grid-template-columns: 1fr auto; gap: 80px; align-items: end; padding-top: 40px; border-top: 1px solid var(--hairline); }
  .hero-bottom .sub { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: clamp(20px, 2.1vw, 26px); color: var(--bone-dim); line-height: 1.45; max-width: 760px; }
  .hero-bottom .sub strong { color: var(--bone); font-weight: 500; font-style: normal; font-family: var(--type-sans); }
  .hero-bottom .sub em { color: var(--ember); font-style: italic; }
  .hero-bottom .ctas-stack { display: flex; flex-direction: column; gap: 14px; align-items: stretch; min-width: 320px; }
  .cta-big { padding: 18px 24px; border: 1px solid var(--ember); background: var(--ember); color: var(--void);
    font-family: var(--type-mono); font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 600;
    display: inline-flex; align-items: center; justify-content: space-between; gap: 14px; transition: background .2s, color .2s; }
  .cta-big:hover { background: var(--ember-glow); }
  .cta-big.sec { background: transparent; color: var(--bone); border-color: var(--hairline-strong); }
  .cta-big.sec:hover { border-color: var(--ember); color: var(--ember); }
  @media (max-width: 880px) { .hero-bottom { grid-template-columns: 1fr; gap: 32px; } .hero-bottom .ctas-stack { min-width: 0; } }

  /* ============ VIDEO BAND (institutional) ============ */
  .vband { padding: 0; border-top: 1px solid var(--hairline); }
  .vband-inner { max-width: 1480px; margin: 0 auto; padding: 64px 32px; display: grid; grid-template-columns: 1fr; gap: 32px; }
  .vband .copy { display: flex; align-items: end; justify-content: space-between; gap: 48px; }
  .vband .copy p { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: clamp(22px, 2.4vw, 32px); color: var(--bone-dim); max-width: 740px; line-height: 1.35; }
  .vband .copy p em { color: var(--ember); }
  .vband .meta { font-family: var(--type-mono); font-size: 10.5px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-mute); text-align: right; white-space: nowrap; }
  .vband .frame { position: relative; aspect-ratio: 21/9; background: var(--ink); border: 1px solid var(--hairline); overflow: hidden; }
  .vband .frame::before { content: ""; position: absolute; inset: 0; background:
    radial-gradient(circle at 30% 40%, rgba(255,58,14,0.18) 0%, transparent 50%),
    radial-gradient(circle at 70% 70%, rgba(255,58,14,0.08) 0%, transparent 55%); }
  .vband .frame .corner { position: absolute; top: 24px; left: 24px; font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bone); padding: 8px 12px; border: 1px solid var(--hairline-strong); background: rgba(5,5,7,0.55); backdrop-filter: blur(8px); display: inline-flex; align-items: center; gap: 10px; }
  .vband .frame .corner::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--ember); box-shadow: 0 0 10px var(--ember); animation: lf-pulse 1.6s ease-in-out infinite; }
  .vband .frame .corner em { color: var(--ember); font-style: normal; }
  .vband .frame .timecode { position: absolute; bottom: 24px; right: 24px; font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.18em; color: var(--bone-mute); text-transform: uppercase; }
  .vband .frame .play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 88px; height: 88px; border-radius: 50%; border: 1px solid var(--hairline-strong); background: rgba(5,5,7,0.55); backdrop-filter: blur(8px); display: flex; align-items: center; justify-content: center; transition: border-color .2s, background .2s; cursor: pointer; }
  .vband .frame .play::after { content: ""; width: 0; height: 0; border-top: 14px solid transparent; border-bottom: 14px solid transparent; border-left: 22px solid var(--bone); margin-left: 6px; }
  .vband .frame:hover .play { border-color: var(--ember); background: rgba(255,58,14,0.1); }
  .vband .frame:hover .play::after { border-left-color: var(--ember); }
  @keyframes lf-pulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.4; transform: scale(0.85); } }

  /* ============ PREMISSA ============ */
  .premissa { padding: 110px 32px; border-top: 1px solid var(--hairline); }
  .premissa-inner { max-width: 1480px; margin: 0 auto; }
  .quote-pull { display: grid; grid-template-columns: 200px 1fr; gap: 64px; align-items: start; margin-bottom: 96px; }
  .quote-pull .who { display: flex; flex-direction: column; gap: 8px; padding-top: 8px; }
  .quote-pull .who .avatar { width: 96px; height: 96px; border-radius: 50%; background: var(--ink-2); border: 1px solid var(--hairline-strong); display: flex; align-items: center; justify-content: center; font-family: var(--type-display); font-size: 32px; color: var(--bone-mute); margin-bottom: 12px; overflow: hidden; }
  .quote-pull .who .name { font-family: var(--type-display); font-weight: 400; font-size: 22px; color: var(--bone); letter-spacing: -0.01em; }
  .quote-pull .who .role { font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-mute); margin-top: 4px; }
  .quote-pull blockquote { font-family: var(--type-display); font-weight: 300; font-style: italic; font-size: clamp(24px, 2.8vw, 38px); line-height: 1.3; color: var(--bone); position: relative; padding-left: 32px; border-left: 1px solid var(--ember); }
  .quote-pull blockquote em { color: var(--ember); }
  .quote-pull blockquote strong { color: var(--bone); font-weight: 500; font-style: normal; font-family: var(--type-sans); }
  @media (max-width: 880px) { .quote-pull { grid-template-columns: 1fr; gap: 32px; } .quote-pull blockquote { padding-left: 24px; } }

  .premissa h2 { font-size: clamp(40px, 5.5vw, 88px); max-width: 1100px; margin-bottom: 64px; line-height: 1.02; }
  .premissa h2 em { color: var(--ember); }

  .problem-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--hairline); border: 1px solid var(--hairline); margin-bottom: 64px; }
  .problem-cell { background: var(--void); padding: 40px 32px 36px; display: flex; flex-direction: column; gap: 14px; }
  .problem-cell .tag { font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ember); margin-bottom: 16px; display: inline-flex; align-items: center; gap: 10px; }
  .problem-cell .tag::before { content: ""; width: 6px; height: 6px; background: var(--ember); border-radius: 50%; }
  .problem-cell h3 { font-family: var(--type-display); font-weight: 400; font-size: 26px; letter-spacing: -0.01em; line-height: 1.15; color: var(--bone); margin-bottom: 8px; }
  .problem-cell p { font-size: 15px; line-height: 1.6; color: var(--bone-dim); }
  .problem-cell p strong { color: var(--bone); }
  @media (max-width: 880px) { .problem-grid { grid-template-columns: 1fr; } }

  .premissa-close { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: end; padding-top: 48px; border-top: 1px solid var(--hairline); }
  .premissa-close .lead { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: 18px; color: var(--bone-mute); margin-bottom: 12px; }
  .premissa-close .big { font-family: var(--type-display); font-weight: 300; font-size: clamp(36px, 4.5vw, 64px); letter-spacing: -0.025em; line-height: 1; color: var(--bone-mute); }
  .premissa-close .big .strike { position: relative; display: inline-block; }
  .premissa-close .big .strike::after { content: ""; position: absolute; left: -2%; right: -2%; top: 50%; height: 0.06em; background: var(--ember); transform: rotate(-3deg); }
  .premissa-close .desc { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: 22px; color: var(--bone-dim); line-height: 1.4; }
  .premissa-close .desc em { color: var(--ember); }
  @media (max-width: 880px) { .premissa-close { grid-template-columns: 1fr; gap: 24px; } }

  /* ============ DADOS · stats ============ */
  .dados { padding: 110px 32px; border-top: 1px solid var(--hairline); background: linear-gradient(180deg, var(--void) 0%, #07070a 100%); position: relative; overflow: hidden; }
  .dados::before { content: ""; position: absolute; inset: 0;
    background-image: radial-gradient(circle, rgba(255, 68, 0, 0.32) 1px, transparent 1.6px);
    background-size: 28px 28px; opacity: 0.4;
    mask-image: radial-gradient(ellipse 70% 70% at center, black 25%, transparent 85%);
    -webkit-mask-image: radial-gradient(ellipse 70% 70% at center, black 25%, transparent 85%);
    pointer-events: none; }
  .dados-inner { max-width: 1480px; margin: 0 auto; position: relative; z-index: 2; }
  .dados h2 { font-size: clamp(40px, 5.5vw, 88px); max-width: 1000px; margin-bottom: 64px; line-height: 1.02; }
  .dados h2 em { color: var(--ember); }
  .dados-sub { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: 20px; color: var(--bone-dim); margin-bottom: 56px; max-width: 760px; }

  .dados-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--hairline); border: 1px solid var(--hairline); margin-bottom: 32px; }
  .dados-cell { background: rgba(5,5,7,0.82); padding: 36px 24px 32px; backdrop-filter: blur(4px); }
  .dados-cell .tag { font-family: var(--type-mono); font-size: 9.5px; letter-spacing: 0.18em; color: var(--bone-mute); margin-bottom: 24px; display: block; }
  .dados-cell .big { font-family: var(--type-display); font-weight: 300; font-size: clamp(40px, 4.6vw, 64px); line-height: 1; letter-spacing: -0.025em; color: var(--bone-mute); margin-bottom: 14px; }
  .dados-cell .big .unit { font-family: var(--type-mono); font-size: 0.32em; color: var(--bone-mute); margin-left: 4px; letter-spacing: 0.06em; vertical-align: top; }
  .dados-cell .lab { font-size: 13px; color: var(--bone-dim); line-height: 1.4; }
  .dados-cell .src { font-family: var(--type-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bone-mute); margin-top: 12px; opacity: 0.7; }
  @media (max-width: 980px) { .dados-grid { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 580px) { .dados-grid { grid-template-columns: 1fr; } }

  .dados-flip {
    display: grid; grid-template-columns: auto 1fr; gap: 48px;
    padding: 56px 0; border-top: 1px solid var(--hairline); margin-top: 32px;
    align-items: center;
  }
  .dados-flip .arrow { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: 64px; color: var(--ember); line-height: 0.7; }
  .dados-flip .with { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: clamp(28px, 3.4vw, 44px); color: var(--bone); }
  .dados-flip .with em { color: var(--ember); }

  .dados-out { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--hairline); border: 1px solid var(--hairline); }
  .dados-out .cell { background: var(--void); padding: 40px 32px 36px; }
  .dados-out .cell .tag { font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.18em; color: var(--ember); margin-bottom: 24px; display: block; }
  .dados-out .cell .big { font-family: var(--type-display); font-weight: 300; font-size: clamp(56px, 6vw, 88px); line-height: 1; letter-spacing: -0.03em; color: var(--ember); margin-bottom: 14px; }
  .dados-out .cell .big .unit { font-family: var(--type-mono); font-size: 0.28em; color: var(--bone-mute); margin-left: 4px; letter-spacing: 0.06em; vertical-align: top; }
  .dados-out .cell .lab { font-size: 14px; color: var(--bone-dim); line-height: 1.5; }
  .dados-out .cell .lab strong { color: var(--bone); }
  @media (max-width: 880px) { .dados-out { grid-template-columns: 1fr; } }

  /* ============ 4 ATOS ============ */
  .atos { padding: 110px 32px; border-top: 1px solid var(--hairline); }
  .atos-inner { max-width: 1480px; margin: 0 auto; }
  .atos h2 { font-size: clamp(40px, 5.5vw, 88px); max-width: 1100px; margin-bottom: 80px; line-height: 1.02; }
  .atos h2 em { color: var(--ember); }
  .atos-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--hairline); border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); }
  .ato {
    background: var(--void); padding: 36px 28px 40px;
    display: flex; flex-direction: column; gap: 12px; min-height: 280px; position: relative;
  }
  .ato .tag { font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.2em; color: var(--ember); margin-bottom: 24px; display: inline-flex; align-items: center; gap: 10px; }
  .ato .tag::before { content: ""; width: 6px; height: 6px; background: var(--ember); border-radius: 50%; box-shadow: 0 0 8px rgba(255,58,14,0.55); }
  .ato h3 { font-family: var(--type-display); font-weight: 400; font-size: clamp(28px, 3vw, 38px); line-height: 1.05; letter-spacing: -0.02em; color: var(--bone); margin-bottom: 12px; }
  .ato h3 em { font-style: italic; font-weight: 300; color: var(--ember); }
  .ato p { font-size: 14px; line-height: 1.55; color: var(--bone-dim); }
  .ato p strong { color: var(--bone); }
  .ato + .ato::before {
    content: "→"; position: absolute; left: -8px; top: 36px;
    font-family: var(--type-mono); color: var(--ember); font-size: 14px;
    background: var(--void); padding: 0 4px;
  }
  @media (max-width: 980px) { .atos-grid { grid-template-columns: 1fr 1fr; } .ato + .ato::before { display: none; } }
  @media (max-width: 580px) { .atos-grid { grid-template-columns: 1fr; } }

  /* ============ FRAMEWORK ============ */
  .fw { padding: 110px 32px; border-top: 1px solid var(--hairline); background: linear-gradient(180deg, var(--void) 0%, #07070a 100%); }
  .fw-inner { max-width: 1480px; margin: 0 auto; }
  .fw h2 { font-size: clamp(40px, 5.5vw, 88px); margin-bottom: 32px; max-width: 1100px; line-height: 1.02; }
  .fw h2 em { color: var(--ember); }
  .fw-lead { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: clamp(20px, 2vw, 26px); color: var(--bone-dim); margin-bottom: 72px; max-width: 720px; line-height: 1.4; }
  .fw-lead em { color: var(--ember); }
  .fw-lead strong { color: var(--bone); font-weight: 500; font-style: normal; font-family: var(--type-sans); }

  .fw-pillars { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--hairline); border: 1px solid var(--hairline); margin-bottom: 96px; }
  .fw-pillar { background: var(--void); padding: 44px 32px 40px; display: flex; flex-direction: column; gap: 14px; min-height: 260px; }
  .fw-pillar .tag { font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bone-mute); margin-bottom: 24px; }
  .fw-pillar h3 { font-family: var(--type-display); font-weight: 400; font-style: italic; font-size: clamp(28px, 3.2vw, 42px); letter-spacing: -0.02em; line-height: 1.05; color: var(--ember); margin-bottom: 4px; }
  .fw-pillar .sub { font-family: var(--type-display); font-weight: 400; font-size: 18px; color: var(--bone); margin-bottom: 12px; }
  .fw-pillar p { font-size: 14px; line-height: 1.6; color: var(--bone-dim); }
  @media (max-width: 880px) { .fw-pillars { grid-template-columns: 1fr; } }

  /* Compare table */
  .compare { border: 1px solid var(--hairline); background: var(--hairline); display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-bottom: 96px; }
  .compare > div { background: var(--void); padding: 36px 36px 40px; }
  .compare .col-h { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bone-mute); padding-bottom: 24px; border-bottom: 1px solid var(--hairline); margin-bottom: 24px; display: flex; justify-content: space-between; }
  .compare .col-h.ember { color: var(--ember); }
  .compare ul { list-style: none; display: flex; flex-direction: column; gap: 14px; }
  .compare li { display: grid; grid-template-columns: 16px 1fr; gap: 14px; font-size: 14.5px; line-height: 1.5; color: var(--bone-dim); padding-bottom: 14px; border-bottom: 1px dashed var(--hairline); }
  .compare li:last-child { border-bottom: none; }
  .compare li.bad::before { content: "×"; color: var(--bone-mute); font-family: var(--type-mono); font-size: 18px; line-height: 1; }
  .compare li.ok { color: var(--bone); }
  .compare li.ok::before { content: "→"; color: var(--ember); font-family: var(--type-mono); font-size: 14px; line-height: 1.4; }
  .compare li.ok strong { color: var(--bone); font-weight: 500; }
  @media (max-width: 880px) { .compare { grid-template-columns: 1fr; } }

  /* Stack layers */
  .layers-h { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-mute); margin-bottom: 28px; }
  .layers-h em { color: var(--ember); font-style: normal; }
  .layers { display: flex; flex-direction: column; gap: 1px; background: var(--hairline); border: 1px solid var(--hairline); }
  .layer { background: var(--void); padding: 24px 32px; display: grid; grid-template-columns: 180px 1fr auto; gap: 32px; align-items: center; }
  .layer .lname { font-family: var(--type-display); font-weight: 400; font-size: 22px; letter-spacing: -0.01em; color: var(--bone); }
  .layer .lname sup { font-size: 0.45em; vertical-align: top; opacity: 0.65; }
  .layer .ldesc { font-size: 14.5px; color: var(--bone-dim); }
  .layer .ltag { font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ember); border: 1px solid rgba(255,58,14,0.4); padding: 6px 10px; white-space: nowrap; }
  @media (max-width: 720px) { .layer { grid-template-columns: 1fr; gap: 8px; padding: 20px 24px; } .layer .ltag { justify-self: start; } }

  .fw-operatedby {
    margin-top: 96px; padding: 56px 48px; border: 1px solid var(--hairline);
    display: grid; grid-template-columns: auto 1fr auto; gap: 48px; align-items: center;
    background: rgba(255,58,14,0.025);
  }
  .fw-operatedby .lab { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-mute); }
  .fw-operatedby .big { font-family: var(--type-display); font-weight: 300; font-size: clamp(28px, 3vw, 40px); letter-spacing: -0.02em; color: var(--bone); line-height: 1.1; }
  .fw-operatedby .big em { font-style: italic; color: var(--ember); }
  .fw-operatedby p { font-size: 14.5px; color: var(--bone-dim); line-height: 1.55; max-width: 540px; }
  .fw-operatedby p strong { color: var(--bone); }
  @media (max-width: 980px) { .fw-operatedby { grid-template-columns: 1fr; gap: 16px; padding: 36px 24px; } }

  /* ============ MÓDULOS · redesigned ============ */
  .mods { padding: 110px 32px; border-top: 1px solid var(--hairline); position: relative; overflow: hidden; }
  .mods::before { content: ""; position: absolute; inset: 0; pointer-events: none;
    background-image:
      linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: radial-gradient(ellipse 90% 70% at 50% 30%, black 0%, transparent 75%);
    -webkit-mask-image: radial-gradient(ellipse 90% 70% at 50% 30%, black 0%, transparent 75%);
  }
  .mods-inner { max-width: 1480px; margin: 0 auto; position: relative; z-index: 2; }
  .mods-head { display: grid; grid-template-columns: 1.2fr 1fr; gap: 64px; align-items: end; margin-bottom: 28px; }
  .mods h2 { font-size: clamp(40px, 5.5vw, 88px); max-width: 900px; line-height: 1.02; }
  .mods h2 em { color: var(--ember); }
  .mods-meta { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--hairline); border: 1px solid var(--hairline); align-self: end; }
  .mods-meta-cell { background: var(--void); padding: 16px 18px; display: flex; flex-direction: column; gap: 4px; min-height: 76px; justify-content: center; }
  .mods-meta-cell .lab { font-family: var(--type-mono); font-size: 9.5px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bone-mute); }
  .mods-meta-cell .val { font-family: var(--type-display); font-weight: 400; font-size: 22px; color: var(--bone); letter-spacing: -0.01em; }
  .mods-meta-cell .val em { color: var(--ember); font-style: italic; font-weight: 300; }
  .mods-lead { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: 20px; color: var(--bone-dim); margin-bottom: 64px; max-width: 760px; line-height: 1.4; }
  .mods-lead strong { color: var(--bone); font-weight: 500; font-style: normal; font-family: var(--type-sans); }
  @media (max-width: 980px) { .mods-head { grid-template-columns: 1fr; gap: 32px; } .mods-meta { grid-template-columns: 1fr 1fr; } }

  /* Lanes */
  .mods-lanes { display: flex; flex-direction: column; border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); background: var(--hairline); gap: 1px; }
  .mods-lane { display: grid; grid-template-columns: 240px 1fr; background: var(--void); position: relative; }
  .mods-lane-head { padding: 36px 28px 28px; border-right: 1px solid var(--hairline); display: flex; flex-direction: column; justify-content: space-between; gap: 32px; position: relative;
    background: linear-gradient(90deg, rgba(255,58,14,0.04) 0%, transparent 100%); }
  .mods-lane-head::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--ember); }
  .mods-lane-head .lane-num { font-family: var(--type-mono); font-size: 10.5px; letter-spacing: 0.22em; color: var(--ember); }
  .mods-lane-head .lane-name { font-family: var(--type-display); font-weight: 400; font-style: italic; font-size: clamp(28px, 3vw, 40px); letter-spacing: -0.02em; line-height: 1; color: var(--bone); margin-top: 6px; }
  .mods-lane-head .lane-meta { font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-mute); display: flex; flex-direction: column; gap: 6px; }
  .mods-lane-head .lane-meta b { color: var(--ember); font-weight: 500; }
  /* Lane body uses per-lane column count to avoid empty cells */
  .mods-lane-body { display: grid; gap: 1px; background: var(--hairline); border-left: none; }
  .mods-lane-body.cols-4 { grid-template-columns: repeat(4, 1fr); }
  .mods-lane-body.cols-3 { grid-template-columns: repeat(3, 1fr); }
  .mods-lane-body.cols-2 { grid-template-columns: repeat(2, 1fr); }

  .mod-card { background: var(--void); padding: 24px 22px 22px; display: flex; flex-direction: column; gap: 14px; min-height: 220px; position: relative; transition: background .25s ease; }
  .mod-card:hover { background: rgba(255,58,14,0.04); }
  .mod-card.empty { background: var(--void); }
  .mod-card.empty::before { content: ""; position: absolute; inset: 0;
    background-image: repeating-linear-gradient(135deg, transparent 0 8px, rgba(255,255,255,0.025) 8px 9px);
    pointer-events: none;
  }
  .mod-card .mc-head { display: flex; justify-content: space-between; align-items: flex-start; }
  .mod-card .mc-glyph { width: 36px; height: 36px; color: var(--ember); transition: transform .35s cubic-bezier(.22,1,.36,1); }
  .mod-card:hover .mc-glyph { transform: rotate(-4deg) scale(1.08); }
  .mod-card.empty .mc-glyph { color: var(--bone-mute); opacity: 0.3; }
  .mod-card .mc-idx { font-family: var(--type-mono); font-size: 9.5px; letter-spacing: 0.2em; color: var(--bone-mute); }
  .mod-card.empty .mc-idx { color: var(--bone-mute); opacity: 0.5; }
  .mod-card .mc-name { font-family: var(--type-display); font-weight: 400; font-size: 22px; letter-spacing: -0.01em; color: var(--bone); line-height: 1.05; }
  .mod-card .mc-name sup { font-size: 0.45em; vertical-align: top; opacity: 0.65; }
  .mod-card.empty .mc-name { color: var(--bone-mute); opacity: 0.5; font-style: italic; font-weight: 300; }
  .mod-card .mc-desc { font-size: 13px; line-height: 1.5; color: var(--bone-dim); flex: 1; }
  .mod-card.empty .mc-desc { color: var(--bone-mute); opacity: 0.5; }
  .mod-card .mc-foot { display: flex; justify-content: space-between; align-items: center; padding-top: 12px; border-top: 1px dashed var(--hairline); font-family: var(--type-mono); font-size: 9px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bone-mute); }
  .mod-card .mc-foot .mc-status { display: inline-flex; align-items: center; gap: 8px; color: var(--ember); }
  .mod-card .mc-foot .mc-status::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--ember); box-shadow: 0 0 8px var(--ember); }
  .mod-card.empty .mc-foot { opacity: 0.4; }
  .mod-card.empty .mc-foot .mc-status { color: var(--bone-mute); }
  .mod-card.empty .mc-foot .mc-status::before { background: var(--bone-mute); box-shadow: none; animation: none; }
  .mod-card .mc-foot .mc-status::before { animation: lf-pulse 1.6s ease-in-out infinite; }

  @media (max-width: 1100px) { .mods-lane-body.cols-4 { grid-template-columns: repeat(2, 1fr); } .mods-lane-body.cols-3 { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 880px) { .mods-lane { grid-template-columns: 1fr; } .mods-lane-head { border-right: none; border-bottom: 1px solid var(--hairline); flex-direction: row; align-items: center; justify-content: space-between; padding: 20px 24px; gap: 16px; } .mods-lane-head::before { width: 100%; height: 2px; bottom: auto; } .mods-lane-head .lane-meta { text-align: right; } }
  @media (max-width: 580px) { .mods-lane-body.cols-4, .mods-lane-body.cols-3, .mods-lane-body.cols-2 { grid-template-columns: 1fr; } }

  /* ============ PIPELINE ============ */
  .pipeline { padding: 110px 32px; border-top: 1px solid var(--hairline); background: linear-gradient(180deg, var(--void) 0%, #07070a 100%); position: relative; overflow: hidden; }
  .pipeline-inner { max-width: 1480px; margin: 0 auto; position: relative; z-index: 2; }
  .pipeline h2 { font-size: clamp(40px, 5.5vw, 88px); margin-bottom: 32px; max-width: 1100px; line-height: 1.02; }
  .pipeline h2 em { color: var(--ember); }
  .pipeline-lead { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: 20px; color: var(--bone-dim); margin-bottom: 64px; max-width: 760px; line-height: 1.4; }

  /* Pipeline stages with integrated animated rail at top */
  .pl-stages {
    display: grid; grid-template-columns: repeat(6, 1fr); gap: 1px;
    background: var(--hairline); border: 1px solid var(--hairline);
    margin-bottom: 0;
    position: relative;
    isolation: isolate;
  }
  .pl-rail { position: absolute; top: 0; left: 0; right: 0; height: 64px; pointer-events: none; z-index: 5; }
  .pl-rail-line {
    position: absolute; left: 8.33%; right: 8.33%; top: 28px; height: 1px;
    background: linear-gradient(90deg, var(--bone-mute) 0%, var(--hairline-strong) 50%, var(--bone-mute) 100%);
    opacity: 0.45;
  }
  .pl-rail-flow {
    position: absolute; left: 8.33%; right: 8.33%; top: 28px; height: 1px;
    background: linear-gradient(90deg, transparent 0%, var(--ember) 50%, transparent 100%);
    background-size: 30% 100%; background-repeat: no-repeat; background-position: -30% 0;
    animation: pl-line-flow 7s linear infinite;
    box-shadow: 0 0 14px rgba(255,58,14,0.6);
  }
  @keyframes pl-line-flow {
    0%   { background-position: -15% 0; }
    100% { background-position: 85% 0; }
  }
  .pl-rail-stops {
    position: absolute; inset: 0;
    display: grid; grid-template-columns: repeat(6, 1fr);
  }
  .pl-node {
    display: flex; align-items: center; justify-content: center; position: relative; height: 100%;
  }
  .pl-node::before {
    content: ""; width: 12px; height: 12px;
    border-radius: 50%;
    background: var(--void);
    border: 1px solid var(--bone-mute);
    margin-top: -8px; /* aligns with rail-line at top: 28px */
    transition: background .3s, border-color .3s, box-shadow .3s, transform .3s;
  }
  .pl-node:nth-child(1)::before { animation: pl-node-pulse 7s ease-in-out infinite 0s; }
  .pl-node:nth-child(2)::before { animation: pl-node-pulse 7s ease-in-out infinite 1.17s; }
  .pl-node:nth-child(3)::before { animation: pl-node-pulse 7s ease-in-out infinite 2.33s; }
  .pl-node:nth-child(4)::before { animation: pl-node-pulse 7s ease-in-out infinite 3.5s; }
  .pl-node:nth-child(5)::before { animation: pl-node-pulse 7s ease-in-out infinite 4.67s; }
  .pl-node:nth-child(6)::before { animation: pl-node-pulse 7s ease-in-out infinite 5.83s; }
  @keyframes pl-node-pulse {
    0%, 100% { background: var(--void); border-color: var(--bone-mute); box-shadow: none; transform: scale(1); }
    8%       { background: var(--ember); border-color: var(--ember); box-shadow: 0 0 14px var(--ember), 0 0 28px rgba(255,58,14,0.5); transform: scale(1.3); }
    18%      { background: var(--ember); border-color: var(--ember); box-shadow: 0 0 8px rgba(255,58,14,0.6); transform: scale(1); }
    32%, 99% { background: var(--void); border-color: var(--bone-mute); box-shadow: none; transform: scale(1); }
  }
  .pl-traveler {
    position: absolute; top: 28px; left: 8.33%;
    width: 10px; height: 10px; margin-top: -5px; margin-left: -5px;
    border-radius: 50%;
    background: var(--ember);
    box-shadow: 0 0 16px var(--ember), 0 0 32px rgba(255,58,14,0.6);
    animation: pl-traveler 7s linear infinite;
  }
  @keyframes pl-traveler {
    0%   { left: 8.33%; opacity: 0; }
    4%   { opacity: 1; }
    96%  { opacity: 1; }
    100% { left: 91.66%; opacity: 0; }
  }

  .pl-stage { background: var(--void); padding: 64px 18px 24px; display: flex; flex-direction: column; gap: 8px; min-height: 240px; position: relative; }
  .pl-stage .num { font-family: var(--type-mono); font-size: 10px; letter-spacing: 0.22em; color: var(--ember); }
  .pl-stage h4 { font-family: var(--type-display); font-weight: 400; font-size: 19px; letter-spacing: -0.01em; line-height: 1.15; color: var(--bone); margin-top: 8px; }
  .pl-stage .desc { font-size: 12.5px; color: var(--bone-dim); line-height: 1.45; margin-top: 6px; }
  .pl-stage .mod-tag { font-family: var(--type-mono); font-size: 9.5px; letter-spacing: 0.16em; color: var(--ember); border: 1px solid rgba(255,58,14,0.4); padding: 4px 6px; margin-top: auto; align-self: flex-start; }
  @media (max-width: 1100px) {
    .pl-stages { grid-template-columns: repeat(3, 1fr); }
    .pl-rail { display: none; }
    .pl-stage { padding-top: 24px; }
  }
  @media (max-width: 720px) { .pl-stages { grid-template-columns: 1fr; } }
  @media (prefers-reduced-motion: reduce) {
    .pl-rail-flow, .pl-traveler { animation: none; }
    .pl-node::before { animation: none; }
  }

  .pl-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--hairline); border-left: 1px solid var(--hairline); border-right: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); }
  .pl-stat { background: var(--void); padding: 32px 24px; display: flex; flex-direction: column; gap: 10px; }
  .pl-stat .big { font-family: var(--type-display); font-weight: 300; font-size: clamp(40px, 4.6vw, 64px); line-height: 1; letter-spacing: -0.03em; color: var(--ember); }
  .pl-stat .big .unit { font-family: var(--type-mono); font-size: 0.32em; color: var(--bone-mute); margin-left: 4px; letter-spacing: 0.06em; vertical-align: top; }
  .pl-stat .lab { font-size: 13px; color: var(--bone-dim); line-height: 1.45; }
  .pl-stat .lab strong { color: var(--bone); }
  @media (max-width: 880px) { .pl-stats { grid-template-columns: 1fr 1fr; } }

  /* ============ AUDIENCE · for who / not for ============ */
  .aud { padding: 110px 32px; border-top: 1px solid var(--hairline); }
  .aud-inner { max-width: 1480px; margin: 0 auto; }
  .aud h2 { font-size: clamp(36px, 4.8vw, 72px); margin-bottom: 64px; max-width: 1000px; line-height: 1.02; }
  .aud h2 em { color: var(--ember); }
  .aud-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--hairline); border: 1px solid var(--hairline); margin-bottom: 64px; }
  .aud-col { background: var(--void); padding: 40px 36px; }
  .aud-col .ah { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bone-mute); padding-bottom: 24px; border-bottom: 1px solid var(--hairline); margin-bottom: 24px; }
  .aud-col.yes .ah { color: var(--ember); }
  .aud-col ul { list-style: none; display: flex; flex-direction: column; gap: 14px; }
  .aud-col li { display: grid; grid-template-columns: 16px 1fr; gap: 12px; font-size: 15px; line-height: 1.5; color: var(--bone-dim); padding-bottom: 14px; border-bottom: 1px dashed var(--hairline); }
  .aud-col li:last-child { border-bottom: none; }
  .aud-col.yes li { color: var(--bone); }
  .aud-col.yes li::before { content: "→"; color: var(--ember); font-family: var(--type-mono); font-size: 14px; }
  .aud-col.no li::before { content: "×"; color: var(--bone-mute); font-family: var(--type-mono); font-size: 18px; line-height: 1; }
  .aud-cta { padding: 48px 0 0; display: flex; gap: 32px; justify-content: space-between; align-items: end; border-top: 1px solid var(--hairline); }
  .aud-cta p { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: clamp(22px, 2.4vw, 32px); color: var(--bone); max-width: 620px; line-height: 1.3; }
  .aud-cta p em { color: var(--ember); }
  @media (max-width: 880px) { .aud-grid { grid-template-columns: 1fr; } .aud-cta { flex-direction: column; align-items: stretch; gap: 24px; } }

  /* ============ PLANOS ============ */
  .planos { padding: 110px 32px; border-top: 1px solid var(--hairline); background: linear-gradient(180deg, var(--void) 0%, #07070a 100%); position: relative; overflow: hidden; }
  .planos::before { content: ""; position: absolute; inset: 0;
    background-image: radial-gradient(circle, rgba(255, 68, 0, 0.28) 1px, transparent 1.6px);
    background-size: 28px 28px; opacity: 0.4;
    mask-image: radial-gradient(ellipse 80% 70% at top, black 0%, transparent 75%);
    -webkit-mask-image: radial-gradient(ellipse 80% 70% at top, black 0%, transparent 75%);
    pointer-events: none; }
  .planos-inner { max-width: 1480px; margin: 0 auto; position: relative; z-index: 2; }
  .planos-head { display: grid; grid-template-columns: 1.2fr 1fr; gap: 80px; align-items: end; margin-bottom: 72px; }
  .planos-head h2 { font-size: clamp(40px, 5.5vw, 88px); line-height: 1.02; }
  .planos-head h2 em { color: var(--ember); }
  .planos-head p { font-size: 15px; line-height: 1.65; color: var(--bone-dim); max-width: 480px; justify-self: end; }
  .planos-head p strong { color: var(--bone); }
  @media (max-width: 980px) { .planos-head { grid-template-columns: 1fr; gap: 24px; } .planos-head p { justify-self: start; } }

  .plan-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--hairline); border: 1px solid var(--hairline); }
  .plan { background: var(--void); padding: 40px 32px 36px; display: flex; flex-direction: column; gap: 16px; position: relative; }
  .plan.featured { background: rgba(255,58,14,0.04); }
  .plan.featured::before { content: "Mais vendido"; position: absolute; top: -1px; left: -1px; right: -1px;
    background: var(--ember); color: var(--void); font-family: var(--type-mono); font-size: 10px;
    letter-spacing: 0.18em; text-transform: uppercase; font-weight: 600; padding: 8px 16px; text-align: center; }
  .plan.featured { padding-top: 56px; }
  .plan .pname { font-family: var(--type-display); font-weight: 400; font-size: 32px; letter-spacing: -0.015em; color: var(--bone); }
  .plan.featured .pname { color: var(--ember); }
  .plan .pbrief { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: 16px; color: var(--bone-dim); line-height: 1.45; min-height: 48px; }
  .plan .pprice { display: flex; flex-direction: column; gap: 6px; padding: 20px 0; border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); }
  .plan .pprice .main { font-family: var(--type-display); font-weight: 300; font-size: 36px; letter-spacing: -0.02em; line-height: 1; color: var(--bone); }
  .plan .pprice .main .per { font-family: var(--type-mono); font-size: 11px; color: var(--bone-mute); margin-left: 4px; vertical-align: middle; letter-spacing: 0.06em; }
  .plan .pprice .setup { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bone-mute); }
  .plan ul { list-style: none; display: flex; flex-direction: column; gap: 10px; font-size: 13.5px; line-height: 1.45; color: var(--bone-dim); }
  .plan ul li { display: grid; grid-template-columns: 14px 1fr; gap: 10px; }
  .plan ul li::before { content: "→"; color: var(--ember); font-family: var(--type-mono); font-size: 12px; }
  .plan ul li.bold { color: var(--bone); font-weight: 500; }
  .plan .padvisory { padding-top: 20px; border-top: 1px dashed var(--hairline); font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ember); }
  .plan .padvisory b { color: var(--bone); font-weight: 500; }
  .plan .pcta { margin-top: auto; padding-top: 20px; }
  .plan .pcta a { display: inline-flex; align-items: center; gap: 10px; padding: 14px 18px; border: 1px solid var(--hairline-strong); color: var(--bone); font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; transition: border-color .2s, background .2s, color .2s; width: 100%; justify-content: space-between; }
  .plan .pcta a:hover { border-color: var(--ember); color: var(--ember); background: rgba(255,58,14,0.06); }
  .plan.featured .pcta a { background: var(--ember); color: var(--void); border-color: var(--ember); }
  .plan.featured .pcta a:hover { background: var(--ember-glow); }
  @media (max-width: 980px) { .plan-grid { grid-template-columns: 1fr; } }

  .plan-foot { padding-top: 48px; margin-top: 48px; border-top: 1px solid var(--hairline); display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; }
  .plan-foot .note { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: 19px; color: var(--bone-dim); line-height: 1.4; }
  .plan-foot .addons-h { font-family: var(--type-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ember); margin-bottom: 18px; }
  .plan-foot .addons { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px; }
  .plan-foot .addons li { font-size: 13.5px; color: var(--bone-dim); padding: 8px 0; border-bottom: 1px dashed var(--hairline); padding-left: 16px; position: relative; }
  .plan-foot .addons li::before { content: "+"; position: absolute; left: 0; color: var(--ember); font-family: var(--type-mono); }
  @media (max-width: 980px) { .plan-foot { grid-template-columns: 1fr; gap: 32px; } .plan-foot .addons { grid-template-columns: 1fr; } }

  /* ============ CLIENTS marquee (reused) ============ */
  .clients { padding: 80px 0; border-top: 1px solid var(--hairline); background: var(--void); position: relative; overflow: hidden; }
  .clients-inner { max-width: 1480px; margin: 0 auto; padding: 0 32px; }
  .clients .lbl-row { margin-bottom: 32px; justify-content: center; }
  .clients .lbl-row .line { flex: 0 0 48px; }
  .clients-headline { font-size: clamp(40px, 5.4vw, 80px); line-height: 1.02; text-align: center; margin: 0 auto 64px; max-width: 1060px; }
  .clients-headline em { color: var(--ember); }
  .clients-track-wrap { position: relative; border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); overflow: hidden;
    mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%); }
  .clients-track { display: flex; gap: 0; animation: clients-scroll 48s linear infinite; width: max-content; }
  .clients-track:hover { animation-play-state: paused; }
  .client-cell { flex: 0 0 auto; min-width: 240px; min-height: 80px; padding: 24px 44px; border-right: 1px solid var(--hairline);
    display: flex; align-items: center; justify-content: center; }
  .client-cell .client-logo { height: 56px; width: auto; max-width: 220px; object-fit: contain; opacity: 0.55; transition: opacity .25s ease; }
  .client-cell:hover .client-logo { opacity: 1; }
  @keyframes clients-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
  @media (prefers-reduced-motion: reduce) { .clients-track { animation: none; } }

  /* ============ FAQ ============ */
  .faq { padding: 110px 32px; border-top: 1px solid var(--hairline); }
  .faq-inner { max-width: 1100px; margin: 0 auto; }
  .faq h2 { font-size: clamp(40px, 5.5vw, 88px); margin-bottom: 64px; line-height: 1.02; }
  .faq h2 em { color: var(--ember); }
  .faq-list { display: flex; flex-direction: column; border-top: 1px solid var(--hairline); }
  .faq-item { border-bottom: 1px solid var(--hairline); }
  .faq-q { width: 100%; text-align: left; padding: 28px 0; display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; font-family: var(--type-display); font-weight: 400; font-size: clamp(20px, 2vw, 26px); letter-spacing: -0.01em; color: var(--bone); transition: color .2s; cursor: pointer; }
  .faq-q:hover { color: var(--ember); }
  .faq-q .ico { font-family: var(--type-mono); font-size: 18px; color: var(--ember); transition: transform .3s ease; line-height: 1; }
  .faq-item.open .faq-q .ico { transform: rotate(45deg); }
  .faq-a { max-height: 0; overflow: hidden; transition: max-height .4s cubic-bezier(.65,0,.35,1); }
  .faq-item.open .faq-a { max-height: 600px; }
  .faq-a-inner { padding: 0 0 28px; font-size: 15.5px; line-height: 1.65; color: var(--bone-dim); max-width: 820px; }
  .faq-a-inner strong { color: var(--bone); }
  .faq-a-inner em { color: var(--ember); font-style: normal; }

  /* ============ CLOSE ============ */
  .close { position: relative; padding: 120px 32px 110px; border-top: 1px solid var(--hairline); overflow: hidden; }
  .close-bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
  .close-bg video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(1.1) brightness(0.55); opacity: 0.42; }
  .close-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, var(--void) 0%, rgba(5,5,7,0.65) 40%, var(--void) 100%); }
  .close-inner { max-width: 1480px; margin: 0 auto; position: relative; z-index: 2; }
  .close h2 { font-size: clamp(44px, 6vw, 104px); margin-bottom: 56px; line-height: 1.02; }
  .close h2 em { color: var(--ember); }
  .close h2 .neg { color: var(--bone-mute); display: block; }
  .close .sub { font-family: var(--type-display); font-style: italic; font-weight: 300; font-size: clamp(20px, 2.1vw, 26px); color: var(--bone-dim); max-width: 760px; margin-bottom: 64px; line-height: 1.45; }
  .close .sub em { color: var(--ember); }
  .close .cta-row { display: flex; gap: 14px; flex-wrap: wrap; }

  .site-footer { padding-top: 96px; }
