/* Shared reading scale. Keep dense product illustrations at their designed size. */
:root { --reading-body:1.125rem; --reading-lead:1.25rem; }
body main :is(p,li,dd):not(:where([class*="-visual"],[class*="-art"],[class*="-drawing"],[class*="-paper"],[class*="-mock"],[class*="-demo"],[class*="-workspace"],[class*="-diagram"],[class*="-scene"],[class*="-screen"],[class*="-preview"],[class*="-code"],[class*="-contract"]) *) {
  font-size:var(--reading-body)!important;
  line-height:1.7!important;
}
body main :is(.hp-hero-copy>p,.idp-hero-grid>div>p,.ap-hero-copy>p,.sol-hero p,.res-hero p,.product-hero p,.pricing-hero p,.hero-copy>p,.hero-sub,.lead,.subtitle,[class$="-intro"],.hp-section-head>p,.idp-heading>p,.hp-centered>p,.section-header>p) {
  font-size:var(--reading-lead)!important;
  line-height:1.65!important;
}
body main :is(summary,form label) { font-size:1.125rem!important; line-height:1.5!important; }
body main :is(input,select,textarea,.hp-button,.hp-text-link) { font-size:1rem!important; }
body main :is(.hp-eyebrow,.idp-kicker,.section-label,.ap-eyebrow) { font-size:.875rem!important; line-height:1.5!important; }
body .ac-footer-group a,body .ac-footer-group h3 { font-size:.9375rem; }
body .ac-footer-bottom { font-size:.875rem; }
body .ac-link small { font-size:.9375rem; line-height:1.6; }
body .hp-hero h1,body .hp-hero h1.hp-hero-title-three-lines {
  font-size:clamp(3.75rem,5.2vw,4.75rem);line-height:1.08;letter-spacing:-.05em;
}
body .hp-hero-copy>p { max-width:38rem; }
body .hp-hero-foot { font-size:.875rem;line-height:1.6; }
@media(min-width:801px) and (max-width:1100px) {
  body .hp-hero h1,body .hp-hero h1.hp-hero-title-three-lines { font-size:3rem; }
}
@media(max-width:800px) {
  :root { --reading-lead:1.125rem; }
  body .hp-hero h1,body .hp-hero h1.hp-hero-title-three-lines { font-size:clamp(2.75rem,7.5vw,3.75rem);line-height:1.1; }
  body .hp-hero-title-three-lines span { white-space:normal; }
  body main summary { font-size:1.0625rem!important; }
}
