/* Shared presentation for the static service, company and legal pages. */
:root { font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", ui-sans-serif, system-ui, sans-serif; background: #fff; color: #14161c; }
html { scroll-padding-top: 104px; }
body { background: #fff; -webkit-font-smoothing: antialiased; }
/* Match the app's scrollbar so shared layouts have the same usable width. */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(14,42,197,.18); border-radius: 99px; }
::-webkit-scrollbar-thumb:hover { background: rgba(14,42,197,.32); }
.page { width: min(1320px, calc(100% - 48px)); padding-top: 150px; }
body > main:not(.page) { width: min(1040px, calc(100% - 48px)); padding-top: 150px; }
.hero { align-items: center; gap: clamp(32px,5vw,76px); }
.eyebrow { color: #3659ac; font-size: 12px; font-weight: 650; letter-spacing: .1em; }
h1 { font-size: clamp(42px,4.7vw,68px); font-weight: 550; line-height: 1.1; letter-spacing: -.025em; }
h2, h3, .proof-heading h2, .services-section-heading h2, .services-next h2 { line-height: 1.14; letter-spacing: -.025em; }
.lead { margin-top: 24px; color: #586170; font-size: clamp(17px,1.5vw,20px); line-height: 1.65; }
.cta { gap: 8px; min-height: 52px; background: #2457eb; font-size: 14px; font-weight: 600; transition: background .2s; }
.cta:hover { background: #1646d0; }
.cta.ghost { background: #fff; color: #242a35; border-color: #dce1e9; }
.hero-card, .section-card, .faq-item { border-color: #e0e6ef; box-shadow: none; }
.hero-card, .section-card { border-radius: 22px; }
.hero-card strong { font-weight: 600; }
.hero-card li, .section-card p, .section-card li, .faq-item p { color: #586170; line-height: 1.7; }
.section-card h2, .faq h2, .faq-item h3 { font-weight: 600; }
.pill { box-shadow: none; font-weight: 500; }
.footer { color: #697386; font-size: 13px; font-weight: 400; line-height: 1.6; }
.footer a { font-weight: 550; }
body > main:not(.page) > article { border: 0; border-radius: 0; padding: 0; background: #fff; box-shadow: none; backdrop-filter: none; }
body > main:not(.page) > article h1 { font-size: clamp(40px,5vw,64px); line-height: 1.1; letter-spacing: -.025em; font-weight: 550; }
body > main:not(.page) > article a { font-weight: 600; }
@media (max-width: 767px) {
  html { scroll-padding-top: 88px; }
  .page, body > main:not(.page) { width: calc(100% - 40px); padding-top: 112px; }
  .hero { gap: 28px; }
  h1 { font-size: clamp(36px,9.5vw,54px); line-height: 1.12; letter-spacing: -.022em; }
  .lead { font-size: 16px; line-height: 1.65; }
  .actions { display: flex; gap: 10px; }
  .cta { width: auto; padding-inline: 18px; font-size: 13px; }
  .hero-card, .section-card { padding: 24px; }
}
@media (max-width: 359px) {
}
@media (prefers-reduced-motion: reduce) { .cta { transition: none; } }
