/* AI Layers text unification
   Matches the cleaner Story page font system without changing layout/background. */

.ai-layers-page main,
.ai-layers-page main *,
.ai-layers-page footer,
.ai-layers-page footer * {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* Main page title */
.ai-layers-page main h1,
.ai-layers-page main .hero-title,
.ai-layers-page main [class*="title"] {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.04 !important;
  text-transform: none !important;
  color: #ffffff !important;
}

/* If the title is written uppercase in HTML, keep it clean and less spaced */
.ai-layers-page main h1 {
  font-size: clamp(3.2rem, 5vw, 6rem) !important;
  margin-bottom: 2.5rem !important;
}

/* Card headings */
.ai-layers-page main h2,
.ai-layers-page main h3,
.ai-layers-page main h4,
.ai-layers-page main strong {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 650 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.16 !important;
  color: #ffffff !important;
  text-transform: none !important;
}

/* Engine card titles */
.ai-layers-page main h3,
.ai-layers-page main .engine-title,
.ai-layers-page main [class*="card"] h3 {
  font-size: clamp(1.15rem, 1.1vw, 1.45rem) !important;
}

/* Paragraphs match Story page readability */
.ai-layers-page main p,
.ai-layers-page main li,
.ai-layers-page main small,
.ai-layers-page main span {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.7 !important;
  color: rgba(226, 232, 240, 0.9) !important;
}

/* Card paragraph text */
.ai-layers-page main p {
  font-size: clamp(1.05rem, 0.75vw, 1.18rem) !important;
}

/* Number labels can stay technical but readable */
.ai-layers-page main .text-cyan-300,
.ai-layers-page main .text-cyan-400,
.ai-layers-page main [class*="cyan"],
.ai-layers-page main .kicker,
.ai-layers-page main .label {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

/* Buttons match Story page */
.ai-layers-page main a,
.ai-layers-page main button {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}

/* Footer readability consistent with Story */
.ai-layers-page .esther-global-footer,
.ai-layers-page .esther-global-footer * {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

.ai-layers-page .esther-footer-copy,
.ai-layers-page .esther-footer-col p,
.ai-layers-page .esther-footer-status {
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
}

.ai-layers-page .esther-footer-col h4,
.ai-layers-page .esther-footer-col a {
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
}

/* Mobile */
@media (max-width: 900px) {
  .ai-layers-page main h1 {
    font-size: clamp(2.8rem, 12vw, 4.8rem) !important;
  }

  .ai-layers-page main p {
    font-size: 1rem !important;
    line-height: 1.66 !important;
  }
}
