/* Shared public scale. Preserve compact labels, prices, mockups and native controls. */
:root {
  --type-hero:clamp(36px,3.3vw,44px);
  --type-section:28px;
  --type-feature:26px;
  --type-cta:clamp(26px,2.2vw,28px);
  --type-subtitle:clamp(20px,1.8vw,24px);
  --type-card:18px;
}
#main-content h1 { font-size:var(--type-hero); font-weight:650; line-height:1.25; letter-spacing:-.6px; }
#main-content :is(.section-head,.product-heading,.em-heading,.sw-heading,.pv-heading) h2 {
  font-size:var(--type-section); font-weight:650; line-height:1.4; letter-spacing:-.4px;
}
#main-content :is(.section-head,.product-heading,.em-heading,.sw-heading,.pv-heading) > p {
  font-size:14px; line-height:1.8;
}
#main-content :is(.product-card,.home-product-card,.service-content,.home-service-copy,.remaining-service-card,.industry-card,.em-values,.em-use-grid,.sw-card,.web-plan,.about-values-grid) h3 {
  font-size:var(--type-card); font-weight:600; line-height:1.45;
}
#main-content :is(.product-card,.home-product-card,.service-content,.home-service-copy,.remaining-service-card,.em-values,.em-use-grid) p {
  font-size:14px; line-height:1.8;
}
#main-content :is(.btn,.action-link) { font-size:14px; font-weight:600; }
#main-content :is(.about-heading,.solution-heading,.geo-heading,.bg-heading,.mr-heading,.sw-cap-intro,.iot-twin-content,.web-device-copy,.about-profile-brand,.account-panel-head) h2 {
  font-size:var(--type-section); font-weight:650; line-height:1.4; letter-spacing:-.4px;
}
#main-content :is(.about-profile-text,.mr-content,.bs-co-main,.bs-price-result,.bs-ssl-offer,.home-solutions) h3 {
  font-size:var(--type-subtitle); font-weight:600; line-height:1.5;
}
#main-content :is(.refine-case-heading,.case-section-title,.mp-cta,.remaining-device-overview) h2 { font-size:var(--type-section); font-weight:650; line-height:1.4; }
#main-content .local-flow-benefits h3 { font-size:var(--type-card); font-weight:600; line-height:1.45; }
/* Older centered-card rules explicitly lock these sizes with !important. */
#main-content .home-product-card .module-card-heading h3 { font-size:var(--type-card)!important; font-weight:600; }
#main-content .home-product-card>p { font-size:14px!important; line-height:1.8!important; }
#main-content .home-product-card .btn { font-size:14px!important; font-weight:600; }
@media(min-width:901px) {
  .site-header .nav-links,.site-header .nav-links>a,.site-header .dropdown-head { font-size:15px; font-weight:600; }
}
@media(min-width:901px) {
  #main-content .home-business .hero h1,#main-content .marketing-banner .marketing-banner-copy h1 { font-size:44px; font-weight:650; line-height:1.25; letter-spacing:-.6px; }
  #main-content .home-business .section { padding-block:56px; }
  #main-content .home-business .section-head { margin-bottom:28px; }
  #main-content .home-business #business-services .home-service-copy h3 { font-size:18px; font-weight:600; }
  #main-content .home-business #business-services .home-service-copy p { font-size:14px; }
  #main-content .home-business #business-services .home-service-grid>article { padding:24px; }
  #main-content .home-business .home-product-card { --product-padding:24px; }
  #main-content .home-business .home-business-board strong { font-size:21px; font-weight:600; }
  #main-content .home-business :is(.btn,.action-link) { min-height:40px; padding:9px 16px; }
  #main-content .home-business .home-service-tag { font-size:12px; font-weight:500; }
  #main-content :is(.em-value,.em-use) { padding-block:56px; }
  #main-content .em-brand h3 { font-size:28px; font-weight:600; }
  #main-content :is(.section-head,.product-heading,.em-heading,.sw-heading,.pv-heading) { margin-bottom:28px; }
}
@media(max-width:900px) {
  :root { --type-hero:clamp(30px,5vw,38px); --type-section:26px; --type-feature:25px; --type-cta:26px; --type-subtitle:22px; --type-card:18px; }
}
@media(max-width:620px) {
  :root { --type-hero:clamp(28px,7.8vw,32px); --type-section:24px; --type-feature:24px; --type-cta:24px; --type-subtitle:20px; --type-card:17px; }
  #main-content .marketing-banner .marketing-banner-copy h1,#main-content .home-business .hero h1 { font-size:var(--type-hero); font-weight:650; line-height:1.28; letter-spacing:-.4px; }
  #main-content :is(.section-head,.product-heading,.em-heading,.sw-heading,.pv-heading)>p { font-size:14px; }
  #main-content .home-business #business-services .home-service-copy h3 { font-size:17px; font-weight:600; }
  #main-content :is(.btn,.action-link) { min-height:44px; }
}

/* Match the shared FAQ's important rules without altering disclosure behavior. */
#main-content .site-faq.site-faq { gap:12px!important; }
#main-content .site-faq.site-faq>details>summary {
  font-size:15px!important;
  font-weight:500!important;
  line-height:1.65!important;
  min-height:62px!important;
  padding:15px 20px!important;
  grid-template-columns:22px minmax(0,1fr) 26px!important;
  gap:12px!important;
}
#main-content .site-faq.site-faq>details>summary:before { font-size:12px!important; font-weight:500!important; }
#main-content .site-faq.site-faq>details>summary:after { width:26px!important; height:26px!important; font-size:18px!important; }
#main-content .site-faq.site-faq>details>p,
#main-content .site-faq.site-faq>details>div { padding:0 54px 18px!important; font-size:14px!important; font-weight:400!important; line-height:1.85!important; }
@media(max-width:760px) {
  #main-content .site-faq.site-faq>details>summary { padding:14px 16px!important; min-height:60px!important; gap:10px!important; grid-template-columns:20px minmax(0,1fr) 24px!important; }
  #main-content .site-faq.site-faq>details>p,
  #main-content .site-faq.site-faq>details>div { padding:0 16px 18px!important; }
}
