/* Shared inner-page layout — matches Features page treatment */

body.inner-page {
  --inner-max: 1080px;
  --inner-gutter: 28px;
}

body.inner-page .page-hero,
body.inner-page .section,
body.inner-page .cta-band,
body.inner-page .footer-grid,
body.inner-page .footer-copy {
  max-width: var(--inner-max);
  width: calc(100% - (var(--inner-gutter) * 2));
}

/* Centered heroes */
body.inner-page .page-hero {
  padding: 2.75rem 0 2.1rem;
  text-align: center;
}
body.inner-page .page-hero .crumb,
body.inner-page .page-hero .eyebrow,
body.inner-page .page-hero h1,
body.inner-page .page-hero .lead,
body.inner-page .page-hero .cta-row,
body.inner-page .page-hero .prose-mute {
  margin-left: auto;
  margin-right: auto;
}
body.inner-page .page-hero .crumb {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.35rem;
}
body.inner-page .page-hero .eyebrow { display: inline-flex; }
body.inner-page .page-hero h1 {
  font-size: clamp(2rem, 4vw, 2.85rem);
  max-width: 18ch;
}
body.inner-page .page-hero .lead { max-width: 36rem; }
body.inner-page .page-hero .cta-row { justify-content: center; }

/* Section titles */
body.inner-page .section {
  padding: 64px 0;
}
body.inner-page .section-head {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
body.inner-page .section-head p {
  margin-left: auto;
  margin-right: auto;
}

/* Centered content helpers */
body.inner-page .feature-prose {
  max-width: 40rem;
  margin: 0 auto;
  text-align: center;
}
body.inner-page .mode-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.55rem;
  margin: 1.25rem auto 0;
}
body.inner-page .feature-note,
body.inner-page .panel-note.feature-note {
  max-width: 40rem;
  margin: 1.35rem auto 0;
  text-align: left;
}
body.inner-page .step-ol {
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
}
body.inner-page .faq-list {
  max-width: 44rem;
  margin: 0 auto;
}
body.inner-page .check-list,
body.inner-page .bullet-soft {
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}
body.inner-page .bullet-soft {
  list-style: none;
  padding: 0;
  display: grid;
  gap: 0.55rem;
}
body.inner-page .bullet-soft > li {
  border-radius: 16px;
  border: 1px solid var(--panel-border, rgba(255,255,255,0.08));
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.018)),
    var(--surface, #0B111B);
  box-shadow: 0 10px 30px rgba(0,0,0,0.25);
  padding: 0.85rem 1rem;
  color: var(--mute, #8994A7);
  font-size: 0.92rem;
  transition: transform 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease;
}
body.inner-page .bullet-soft > li:hover {
  transform: translateY(-3px);
  border-color: rgba(74,163,255,0.35);
  box-shadow:
    0 18px 40px rgba(0,0,0,0.35),
    0 0 0 1px rgba(74,163,255,0.08),
    0 0 30px rgba(39,135,255,0.1);
}
body.inner-page #legal .prose-mute,
body.inner-page #disclaimer .cta-row {
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  justify-content: center;
}
body.inner-page #legal .prose-mute {
  margin-bottom: 1rem;
}
body.inner-page .ethics-head-spacer .section-head {
  margin-bottom: 1.5rem;
}
body.inner-page .fact-grid {
  max-width: 920px;
  margin: 0 auto;
}
body.inner-page .hash-slab {
  max-width: 44rem;
  margin-left: auto;
  margin-right: auto;
}
body.inner-page .timeline-list {
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
}

/* Feature / practice cards */
body.inner-page .feature-grid {
  gap: 1rem;
}
body.inner-page .feature-card {
  text-align: center;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}
body.inner-page .feature-card:hover {
  transform: translateY(-3px);
}

/* Trust hash card stays centered */
body.inner-page .viz--trust {
  max-width: 520px;
  margin: 0 auto;
}

@media (max-width: 900px) {
  body.inner-page { --inner-gutter: 18px; }
  body.inner-page .section { padding: 52px 0; }
}
