/* ============================================================
   SkyRender — section layouts
   ============================================================ */

/* full-bleed photo hero (direction A) */
.hero-photo{ position:relative; overflow:hidden; }
.hero-photo-bg{
  position:absolute; inset:-2px; z-index:0;
  background-size:cover; background-position:center 40%;
  background-repeat:no-repeat; background-color:#04060a;
  transform:scale(1.04);
  filter:brightness(.74) saturate(1.06) contrast(1.03);
}
.hero-photo-scrim{
  position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(5,7,11,.70) 0%, rgba(5,7,11,.38) 26%, rgba(5,7,11,.58) 62%, var(--bg) 100%),
    radial-gradient(120% 78% at 50% 40%, transparent 26%, rgba(5,7,11,.60) 100%),
    linear-gradient(0deg, rgba(12,34,44,.22), rgba(20,18,40,.18));
}
.hero-photo .display{ text-shadow:0 2px 40px rgba(0,0,0,.55); }
.hero-photo .lede{ color:#dde4ec; text-shadow:0 1px 20px rgba(0,0,0,.6); }

/* hero switcher (temporary chooser — pinned) */
.hero-switch{
  position:fixed; right:18px; bottom:18px; z-index:60;
  display:flex; align-items:center; gap:6px;
  background:rgba(10,13,19,.85); backdrop-filter:blur(14px);
  border:1px solid var(--line-2); border-radius:999px; padding:6px 8px 6px 14px;
  box-shadow:0 20px 50px -20px rgba(0,0,0,.8);
}
.hs-label{ font-family:var(--font-m); font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-dim); margin-right:4px; }
.hs-btn{ width:30px; height:30px; border-radius:50%; border:1px solid var(--line-2); background:transparent; color:var(--ink-dim); font-family:var(--font-m); font-size:13px; font-weight:600; transition:all .2s; }
.hs-btn:hover{ color:var(--ink); border-color:rgba(255,255,255,.3); }
.hs-btn.on{ background:var(--cyan); color:#04201e; border-color:transparent; }

/* revenue thesis */
.rev-group{ font-family:'Space Grotesk','Inter',sans-serif; font-size:13px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:var(--cyan); margin:52px 0 18px; }
.rev-group:first-of-type{ margin-top:34px; }
.rev-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.rev-card{ padding:30px 28px 32px; display:flex; flex-direction:column; gap:14px; min-height:260px; }
.rev-card .num{ font-family:var(--font-m); font-size:13px; letter-spacing:.2em; color:var(--cyan); }
.rev-card h3{ font-size:23px; font-weight:500; letter-spacing:-0.02em; }
.rev-card p{ color:var(--ink-dim); font-size:14.5px; line-height:1.55; margin:0; }
.rev-card .tag{ margin-top:auto; font-family:var(--font-m); font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-faint); display:flex; align-items:center; gap:8px; }
.rev-card .tag b{ color:var(--green); font-weight:600; }
@media (max-width:880px){ .rev-grid{ grid-template-columns:1fr; } }

/* chapter row */
.chapter{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; padding:96px 0; }
.chapter.flip .chapter-media{ order:-1; }
.chapter-copy{ max-width:480px; }
.chapter-num{ font-family:var(--font-m); font-size:13px; letter-spacing:.24em; color:var(--ink-faint); }
.chapter-copy h2{ margin-top:14px; }
.chapter-copy .lede{ margin-top:18px; }
.chapter-bul{ list-style:none; padding:0; margin:26px 0 0; display:flex; flex-direction:column; gap:14px; }
.chapter-bul li{ display:flex; gap:12px; font-size:15px; color:var(--ink-2); line-height:1.5; }
.chapter-bul li .b{ color:var(--cyan); flex:none; margin-top:2px; }
.chapter-media{ display:flex; justify-content:center; position:relative; }
.chapter-media .mock-glow{ opacity:.7; }
.media-stack{ display:flex; gap:18px; align-items:flex-end; }
@media (max-width:900px){
  .chapter{ grid-template-columns:1fr; gap:40px; padding:64px 0; }
  .chapter.flip .chapter-media{ order:0; }
  .chapter-copy{ max-width:none; }
}

/* operator triptych */
.triptych{ display:flex; gap:22px; align-items:center; flex-wrap:wrap; justify-content:center; }

/* master-clock sync layout */
.sync-grid{ display:grid; grid-template-columns:1fr 1fr; gap:44px; align-items:start; }
@media (max-width:900px){ .sync-grid{ grid-template-columns:1fr; gap:52px; } }
.sync-col{ display:flex; flex-direction:column; }
.subhead{ font-family:var(--font-m); font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--cyan); margin-bottom:10px; }
.subhead.center{ color:var(--ink-dim); }
.sync-note{ color:var(--ink-dim); font-size:14.5px; line-height:1.55; margin:0 0 24px; max-width:460px; }

/* big CTA band */
.cta-band{ position:relative; overflow:hidden; border-radius:var(--r-xl); padding:72px 40px; text-align:center;
  border:1px solid var(--line-2);
  background:
    radial-gradient(120% 140% at 50% 0%, rgba(139,92,246,.18), transparent 60%),
    radial-gradient(120% 140% at 50% 120%, rgba(47,231,224,.16), transparent 60%),
    linear-gradient(180deg,#0a0e15,#080b11);
}
.cta-band::before{ content:""; position:absolute; inset:0; background:var(--grad); opacity:.06; }

/* founding partner band */
.partner-band{ display:grid; grid-template-columns:1.2fr 1fr; gap:40px; align-items:center;
  border:1px solid var(--line); border-radius:var(--r-xl); padding:48px;
  background:linear-gradient(120deg, rgba(47,231,224,.04), rgba(139,92,246,.04));
}
.spots{ display:flex; gap:6px; flex-wrap:wrap; }
.spot{ width:30px; height:30px; border-radius:8px; border:1px solid var(--line-2); display:flex; align-items:center; justify-content:center; font-family:var(--font-m); font-size:12px; color:var(--ink-faint); }
.spot.taken{ background:rgba(47,231,224,.12); border-color:rgba(47,231,224,.4); color:var(--cyan); }
@media (max-width:820px){ .partner-band{ grid-template-columns:1fr; padding:34px; } }

/* how-it-works mini steps */
.flow{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.flow-step{ padding:26px; }
.flow-step .n{ font-family:var(--font-m); font-size:12px; letter-spacing:.2em; color:var(--cyan); }
.flow-step h4{ font-size:18px; font-weight:500; margin:14px 0 8px; letter-spacing:-0.02em; }
.flow-step p{ color:var(--ink-dim); font-size:14px; line-height:1.5; margin:0; }
@media (max-width:820px){ .flow{ grid-template-columns:1fr; } }

/* section intro */
.sec-intro{ display:flex; justify-content:space-between; align-items:flex-end; gap:40px; flex-wrap:wrap; margin-bottom:54px; }
.sec-intro .lede{ max-width:420px; }
