/* --- Typography scale & weights --- */
:root{
  --hu-1:8px; --hu-2:12px; --hu-3:16px; --hu-4:20px;
  --hu-5:24px; --hu-6:32px; --hu-7:40px; --hu-8:48px; --hu-9:64px;
  --hu-max:1200px;
}
html{font-size:100%}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.6;font-weight:400;font-size:19px}
h1{font-family:"Inter Display",Inter,sans-serif;font-weight:600;font-size:clamp(40px,5vw,48px);line-height:1.1;margin:0 0 var(--hu-5)}
h2{font-weight:600;font-size:clamp(28px,3.2vw,32px);line-height:1.2;margin:var(--hu-8) 0 var(--hu-4)}
h3{font-weight:500;font-size:clamp(20px,2.4vw,24px);line-height:1.3;margin:var(--hu-6) 0 var(--hu-3)}
p{margin:0 0 var(--hu-4);font-size:18px}
/* keep to three weights visually */
strong,b{font-weight:600}

/* --- Section rhythm & containers --- */
section,.section,[data-section]{padding-top:var(--hu-9);padding-bottom:var(--hu-9)}
@media (max-width:768px){
  section,.section,[data-section]{padding-top:var(--hu-7);padding-bottom:var(--hu-7)}
}
.container,.wrap,[data-container]{max-width:var(--hu-max);margin-inline:auto;padding-inline:var(--hu-6)}

/* Lists & grids (benefits/metrics/faq) */
ul,ol{margin:0 0 var(--hu-5);padding-left:1.1em}
li{margin:0 0 var(--hu-2)}
.metrics,.benefits,[data-list="benefits"]{display:grid;gap:var(--hu-5)}
@media (min-width:768px){.metrics,.benefits,[data-list="benefits"]{grid-template-columns:repeat(3,minmax(0,1fr))}}
.faq,[data-faq]{margin-top:var(--hu-8)}
.faq h3{margin-top:var(--hu-6)}
p, .framer-text { font-size: 19px !important; line-height: 1.6 !important; }
/* --- Restore heading sizes (override the broad .framer-text rule) --- */
h1, h1.framer-text { font-size: clamp(40px,5vw,48px) !important; font-weight: 600; line-height: 1.1; }
h2, h2.framer-text { font-size: clamp(28px,3.2vw,32px) !important; font-weight: 600; line-height: 1.2; }
h3, h3.framer-text { font-size: clamp(20px,2.4vw,24px) !important; font-weight: 500; line-height: 1.3; }

/* --- Increase body copy only --- */
p, p.framer-text, .framer-text p { font-size: 19px !important; line-height: 1.6 !important; }
/* --- Slightly enlarge section headings (h2) --- */
h2, h2.framer-text {
  font-size: 34px !important; /* was ~32px, +2px */
  font-weight: 600;
  line-height: 1.2;
}
