/* Worker typography: public content only. Admin UI, navigation, icons and media controls excluded. */
/* CSS variables are set by Worker main.tpl.php from saved theme options.
   Do not redefine :root values here: doing so silently overrides admin settings. */
/* A readable default also covers legacy free text without paragraph tags. */
body :is(.ww_main_body,.ww_before_body,.ww_after_body) {font-size:var(--kg-type-body);line-height:var(--kg-type-leading);}
/* Normal body copy in the Worker content zones. */
body :is(.ww_main_body,.ww_before_body,.ww_after_body) :is(p,ul,ol,dl) {
  font-size:var(--kg-type-body);line-height:var(--kg-type-leading);
}
body :is(.ww_main_body,.ww_before_body,.ww_after_body) :is(li,dd) {
  line-height:var(--kg-type-leading);
}
body :is(.ww_main_body,.ww_before_body,.ww_after_body) :is(h1,h2,h3) {
  line-height:var(--kg-type-heading-leading);overflow-wrap:break-word;
}
body :is(.ww_main_body,.ww_before_body,.ww_after_body) h1 {font-size:var(--kg-type-h1);}
body :is(.ww_main_body,.ww_before_body,.ww_after_body) h2 {font-size:var(--kg-type-h2);}
body :is(.ww_main_body,.ww_before_body,.ww_after_body) h3 {font-size:var(--kg-type-h3);}
/* Widget heading wrappers often carry legacy Bootstrap font sizes. */
body :is(.ww_main_body,.ww_before_body,.ww_after_body) .icms-widget > .card-header :is(h2,h3,.title) {
  font-size:var(--kg-type-h2);line-height:var(--kg-type-heading-leading);
}
body :is(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.ww_faq):not(.ww_prices_item) .card-body :is(p,ul,ol) {
  font-size:var(--kg-type-card);line-height:var(--kg-type-leading);
}
body .ww_faqs .ww_faq .card-body :is(p,ul,ol){font-size:var(--kg-type-card);line-height:var(--kg-type-leading);}
/* Do not upscale navigational lists or text within controls. */
body :is(.ww_main_body,.ww_before_body,.ww_after_body) :is(.nav,.pagination,.dropdown-menu,.swiper-pagination,.btn) :is(p,ul,ol,li) {font-size:inherit;line-height:inherit;}
@media(max-width:767.98px){
  body :is(.ww_main_body,.ww_before_body,.ww_after_body){font-size:var(--kg-type-body-mobile);}
  body :is(.ww_main_body,.ww_before_body,.ww_after_body) :is(p,ul,ol,dl){font-size:var(--kg-type-body-mobile);}
  body :is(.ww_main_body,.ww_before_body,.ww_after_body) h1{font-size:var(--kg-type-h1-mobile);}
  body :is(.ww_main_body,.ww_before_body,.ww_after_body) h2{font-size:var(--kg-type-h2-mobile);}
  body :is(.ww_main_body,.ww_before_body,.ww_after_body) h3{font-size:var(--kg-type-h3-mobile);}
  body :is(.ww_main_body,.ww_before_body,.ww_after_body) .icms-widget > .card-header :is(h2,h3,.title){font-size:var(--kg-type-h2-mobile);}
}

/* Corporate content outside historical ww_* wrappers. Keep navigation/forms/media isolated. */
body.icms-frontpage :is(main,.icms-main) :is(.icms-widget,.content_item) :is(p,ul,ol,dl),
body .ww_main_body :is(.card-body,.card-text) > p,
body .ww_before_body :is(.card-body,.card-text) > p {
  font-size:var(--kg-type-body,18px);
  line-height:var(--kg-type-leading,165%);
}
/* Override old hardcoded widget/card typography without altering media/player controls. */
body .ww_main_body .icms-widget > .card-header :is(h2,h3,.title),
body .ww_before_body .icms-widget > .card-header :is(h2,h3,.title) {
  font-size:var(--kg-type-h2,38px) !important;
  line-height:var(--kg-type-heading-leading,125%);
}
body .ww_main_body .card:not(.kg-prices-card):not(.ww_faq) .card-body :is(p,ul,ol),
body .ww_before_body .card:not(.kg-prices-card):not(.ww_faq) .card-body :is(p,ul,ol) {
  font-size:var(--kg-type-card,17px) !important;
  line-height:var(--kg-type-leading,165%);
}
@media(max-width:767.98px) {
  body.icms-frontpage :is(main,.icms-main) :is(.icms-widget,.content_item) :is(p,ul,ol,dl) {
    font-size:var(--kg-type-body-mobile,16px);
  }
  body .ww_main_body .icms-widget > .card-header :is(h2,h3,.title),
  body .ww_before_body .icms-widget > .card-header :is(h2,h3,.title) {
    font-size:var(--kg-type-h2-mobile,28px) !important;
  }
}
