/* RokeLive launch correction layer — loaded after the production styles. */
:root {
  --roke-orange: #ff5500;
  --roke-blue: #55aaff;
  --roke-bg: #000;
  --roke-panel: #0d1117;
  --roke-line: rgba(255, 255, 255, 0.16);
  --roke-text: #f8f6f0;
  --roke-muted: #b6bcc4;
}

body {
  color: var(--roke-text);
  background: #000;
  font-size: 16px;
}

#workflow,
#continuity,
#trust,
#fit,
#faq,
#launch-list {
  scroll-margin-top: 82px;
}

.shell { width: min(calc(100% - 40px), 1180px); }

.site-header { height: 76px; background: rgba(0, 0, 0, 0.94); }
.header-inner { min-height: 76px; }
.brand { display: inline-flex; width: 112px; align-items: center; flex: 0 0 auto; }
.brand img { width: 100%; height: auto; }
.site-nav { gap: clamp(16px, 2.4vw, 30px); font-size: 13px; }
.site-nav > a:not(.button) { display: inline-flex; min-height: 44px; align-items: center; }
.menu-button { display: none; }

.hero-inner {
  max-width: 1180px;
  padding-top: 100px;
  padding-bottom: 48px;
}
.hero-copy { padding-top: 12px; }
.hero h1 {
  max-width: 13ch;
  text-transform: uppercase;
}
.hero h1 span { display: block; }
.hero-lede { color: #c8cbd0; }
.hero-microcopy { color: #9fa6af; font-size: 13px; line-height: 1.55; }

.section-shell { padding-block: clamp(72px, 9vw, 112px); }
.section-intro { max-width: 780px; margin-bottom: 40px; }
.section-intro h2,
.continuity-heading h2,
.trust-copy h2,
.access-fit-panel h2,
.faq-layout h2,
.cta-copy h2 {
  font-size: clamp(34px, 4.8vw, 58px);
  line-height: 1.03;
  letter-spacing: -0.045em;
}
.section-intro > p:last-child,
.continuity-heading > p,
.trust-copy > p,
.cta-copy > p {
  color: var(--roke-muted);
  font-size: 17px;
  line-height: 1.65;
}

.launch-workflow {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 34px;
  padding: 0;
  list-style: none;
}
.launch-workflow li {
  min-width: 0;
  min-height: 250px;
  border: 1px solid var(--roke-line);
  border-radius: 16px;
  padding: 22px;
  background: linear-gradient(160deg, rgba(19, 25, 32, 0.96), rgba(7, 10, 14, 0.96));
}
.launch-workflow li:nth-child(2) { border-color: rgba(85, 170, 255, 0.48); }
.launch-workflow li:nth-child(5) { border-color: rgba(255, 85, 0, 0.62); }
.launch-workflow span {
  display: block;
  margin-bottom: 36px;
  color: var(--roke-blue);
  font: 700 12px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: 0.14em;
}
.launch-workflow strong {
  display: block;
  margin-bottom: 13px;
  font-size: 20px;
  line-height: 1.15;
}
.launch-workflow p { margin: 0; color: var(--roke-muted); font-size: 14px; line-height: 1.58; }

.outcome-proof { margin-top: 0; }
.outcome-proof li { min-height: 36px; display: inline-flex; align-items: center; }

.continuity-card > div:last-child > p { color: var(--roke-blue); }
.continuity-return { font-size: 14px; }

.trust-grid article { min-height: 178px; }
.trust-grid h3 { font-size: 19px; }
.trust-grid p { font-size: 14px; line-height: 1.6; }

.plan-boundary {
  display: grid;
  grid-template-columns: minmax(210px, 0.45fr) minmax(0, 1.55fr);
  gap: 28px;
  align-items: start;
  margin-top: 32px;
  border: 1px solid rgba(85, 170, 255, 0.35);
  border-radius: 16px;
  padding: 26px 30px;
  background: rgba(20, 43, 72, 0.25);
}
.plan-boundary strong { font-size: 22px; line-height: 1.25; }
.plan-boundary p { margin: 0; color: var(--roke-muted); font-size: 14px; line-height: 1.65; }

.faq-section { border-top: 1px solid var(--roke-line); }
.faq-layout { display: grid; grid-template-columns: minmax(240px, 0.76fr) minmax(0, 1.24fr); gap: clamp(36px, 7vw, 90px); align-items: start; }
.faq-layout .section-intro { position: sticky; top: 110px; margin: 0; }
.faq-list { border-top: 1px solid var(--roke-line); }
.faq-list details { border-bottom: 1px solid var(--roke-line); }
.faq-list summary {
  position: relative;
  min-height: 72px;
  display: flex;
  align-items: center;
  padding: 20px 54px 20px 0;
  cursor: pointer;
  list-style: none;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
}
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after {
  content: "+";
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--roke-blue);
  font-size: 28px;
  font-weight: 400;
}
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { max-width: 66ch; margin: -5px 50px 24px 0; color: var(--roke-muted); font-size: 15px; line-height: 1.65; }

.company-credit,
.device-credit {
  width: min(calc(100% - 40px), 1180px);
  margin-inline: auto;
  color: #9098a2;
  font-size: 11px;
  line-height: 1.55;
}
.company-credit { padding-top: 14px; }
.device-credit { padding-top: 6px; }

.field-help,
.field-error,
.form-privacy {
  font-size: 12px;
}

@media (max-width: 1060px) {
  .launch-workflow { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .launch-workflow li:nth-child(4),
  .launch-workflow li:nth-child(5) { min-height: 220px; }
}

@media (max-width: 860px) {
  .site-header { height: 68px; }
  .header-inner { min-height: 68px; }
  .menu-button {
    display: inline-flex;
    min-width: 64px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--roke-line);
    border-radius: 10px;
    color: var(--roke-text);
    background: #0b0e12;
  }
  .site-nav {
    position: absolute;
    top: 67px;
    left: 0;
    right: 0;
    display: none;
    max-height: calc(100vh - 68px);
    overflow-y: auto;
    gap: 0;
    border-bottom: 1px solid var(--roke-line);
    padding: 12px 20px 20px;
    background: rgba(0, 0, 0, 0.98);
  }
  .site-nav.is-open { display: grid; }
  .site-nav > a:not(.button) { width: 100%; border-bottom: 1px solid rgba(255, 255, 255, 0.09); padding: 14px 2px; }
  .site-nav .button { width: 100%; margin-top: 16px; }
  .launch-workflow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .launch-workflow li:nth-child(5) { grid-column: 1 / -1; }
  .plan-boundary { grid-template-columns: 1fr; }
  .faq-layout { grid-template-columns: 1fr; }
  .faq-layout .section-intro { position: static; }
}

@media (max-width: 620px) {
  .shell { width: min(calc(100% - 28px), 560px); }
  .section-shell { padding-block: 64px; }
  .section-intro { margin-bottom: 28px; }
  .section-intro h2,
  .continuity-heading h2,
  .trust-copy h2,
  .access-fit-panel h2,
  .faq-layout h2,
  .cta-copy h2 { font-size: clamp(32px, 10vw, 42px); }
  .hero-inner { padding-top: 92px; }
  .hero-copy { padding-top: 0; }
  .hero h1 { font-size: clamp(40px, 12vw, 52px); }
  .hero-actions { align-items: stretch; flex-direction: column; }
  .hero-actions .button,
  .hero-actions .text-link { width: 100%; justify-content: center; }
  .launch-workflow { grid-template-columns: 1fr; }
  .launch-workflow li,
  .launch-workflow li:nth-child(4),
  .launch-workflow li:nth-child(5) { min-height: 0; }
  .launch-workflow li:nth-child(5) { grid-column: auto; }
  .launch-workflow span { margin-bottom: 24px; }
  .plan-boundary { padding: 22px; }
  .faq-list summary { font-size: 17px; }
  .company-credit,
  .device-credit { width: min(calc(100% - 28px), 560px); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
