/* Typography modeled on AGINE AI's public font stack; own sizing and layout for AI Operations. */
:root {
  --font-display: "PT Sans", "Arial Narrow", Arial, sans-serif;
  --font-body: "DM Sans", Arial, sans-serif;
  --font-mono: "JetBrains Mono", Consolas, monospace;
  --copy-strong: #f2f7f4;
  --copy-secondary: #a9bcb1;
  --copy-muted: #8ea69a;
}
body {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.55;
  color: var(--copy-strong);
}
h1, h2, h3, .logo, .calc-result strong {
  font-family: var(--font-display);
  font-weight: 700;
  font-synthesis: none;
}
.hero h1 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(63px, 7.15vw, 110px);
  line-height: .99;
  letter-spacing: -.047em;
  max-width: 1010px;
  text-wrap: balance;
}
.hero h1 span {
  font-weight: 700;
  color: #a5bdb1;
}
.section h2, .closing h2 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(46px, 5.1vw, 80px);
  line-height: 1.065;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.section h2 em, .system-strip h3 em {
  font-weight: 700;
  color: #a5bdb1;
}
h3, .system-strip h3, .problem-card h3, .step h3, .deliver-grid h3 {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.16;
}
.lead, .hero .lead {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: clamp(16px,1.28vw,18px);
  line-height: 1.64;
  color: #b7c8bd;
  letter-spacing: -.012em;
}
.section-copy {
  font-family: var(--font-body);
  color: var(--copy-secondary);
  font-size: 16px;
  line-height: 1.68;
  letter-spacing: -.006em;
}
.problem-card p, .step p, .deliver-grid p, .faq-list details p,
.comparison-row p, .system-strip p, .featurelist small {
  font-family: var(--font-body);
  letter-spacing: 0;
  line-height: 1.65;
}
.problem-card p, .system-strip p, .faq-list details p {
  font-size: 14px;
  color: var(--copy-secondary);
}
.eyebrow, .kicker, .hero-facts, .hero-foot, .problem-index, .card-micro,
.step > span, .credibility > span, .preview-bar span:last-child,
.small-note, .endnote, .metricline strong {
  font-family: var(--font-mono);
  font-weight: 500;
}
.eyebrow, .kicker {
  font-size: 10px;
  line-height: 1.6;
  letter-spacing: .085em;
  text-transform: uppercase;
}
.hero-facts, .hero-foot, .card-micro, .problem-index {
  letter-spacing: .035em;
}
.nav nav, .navbtn, .button-primary, .button-ghost,
.tabs button, .brief-form label, .faq-list summary {
  font-family: var(--font-body);
}
.nav nav {font-size: 14px; font-weight: 500;}
.navbtn, .button-primary, .button-ghost {font-size: 14px; font-weight: 700; letter-spacing: -.01em;}
.logo {font-weight: 700;letter-spacing: -.025em;}
.problem-card h3 {font-size: clamp(23px,2.3vw,32px);}
.faq-list summary {font-size: 17px;}
.calc-result strong {letter-spacing: -.045em;line-height: 1.05;}
.credibility p, .form-note, .disclaimer, .small-note {
  color: var(--copy-muted);
}
@media (max-width: 1100px) {
  .hero h1 {font-size: clamp(56px, 8.2vw, 87px);}
}
@media (max-width: 700px) {
  .hero h1 {
    font-size: clamp(32px, 9.55vw, 55px);
    line-height: 1.04;
    letter-spacing: -.047em;
    max-width: 100%;
  }
  .section h2, .closing h2 {
    font-size: clamp(37px, 10vw, 57px);
    line-height: 1.07;
    letter-spacing: -.035em;
  }
  .hero .lead, .lead {
    font-size: 15px;
    line-height: 1.65;
  }
  .section-copy {
    font-size: 15px;
    line-height: 1.7;
  }
  .problem-card h3{font-size: 26px;}
  .problem-card p,.faq-list details p,.system-strip p,.step p,.deliver-grid p {font-size: 14px;}
  .comparison-row p{font-size: 12px;}
  .faq-list summary{font-size: 16px;}
  .eyebrow, .kicker{font-size: 10px;line-height: 1.5;letter-spacing: .04em;}
  .hero-facts{font-size: 9px;line-height: 1.4;}
  .button-primary,.button-ghost{font-size: 14px;}
}
@media (max-width: 360px) {
  .hero h1{font-size: 9.25vw;}
  .section h2,.closing h2{font-size: 36px;}
}