/* Each setting applies only when the panel supplies a font or size for that area. */
html[data-sbn-type~="page-title-size"] #main .sbn-page-title {
  font-size: var(--sbn-type-page-title-size);
}
html[data-sbn-type~="page-title-font"] #main .sbn-page-title {
  font-family: var(--sbn-type-page-title-font);
}
html[data-sbn-type~="titles-size"] #main :is(h1,h2,h3,h4):not(.sbn-page-title, .sbn-rich-content *, .sbn-contact-card *):not(:where(.product-card .card-body > h3, .product-detail-info > h1)) {
  font-size: var(--sbn-type-titles-size);
}
html[data-sbn-type~="titles-font"] #main :is(h1,h2,h3,h4):not(.sbn-page-title, .sbn-rich-content *, .sbn-contact-card *):not(:where(.product-card .card-body > h3, .product-detail-info > h1)) {
  font-family: var(--sbn-type-titles-font);
}
html[data-sbn-type~="subtitles-size"] #main :is(.article-lead, .hero-copy > p, .page-heading > p:first-of-type) {
  font-size: var(--sbn-type-subtitles-size);
}
html[data-sbn-type~="subtitles-font"] #main :is(.article-lead, .hero-copy > p, .page-heading > p:first-of-type) {
  font-family: var(--sbn-type-subtitles-font);
}
html[data-sbn-type~="body-size"] #main .article-text {
  font-size: var(--sbn-type-body-size);
}
html[data-sbn-type~="body-font"] #main .article-text {
  font-family: var(--sbn-type-body-font);
}
html[data-sbn-type~="header-brand-size"] .site-header .header-logo > span:not(.brand-mark) {
  font-size: var(--sbn-type-header-brand-size);
}
html[data-sbn-type~="header-brand-font"] .site-header .header-logo > span:not(.brand-mark) {
  font-family: var(--sbn-type-header-brand-font);
}
html[data-sbn-type~="header-title-size"] .site-header .header-title {
  font-size: var(--sbn-type-header-title-size);
}
html[data-sbn-type~="header-title-font"] .site-header .header-title {
  font-family: var(--sbn-type-header-title-font);
}
html[data-sbn-type~="header-subtitle-size"] .site-header .header-subtitle {
  font-size: var(--sbn-type-header-subtitle-size);
}
html[data-sbn-type~="header-subtitle-font"] .site-header .header-subtitle {
  font-family: var(--sbn-type-header-subtitle-font);
}
html[data-sbn-type~="menu-size"] .site-header :is(.nav, .top-menu-bar, .menu-toggle, .nav-support, .managed-menu .submenu a) {
  font-size: var(--sbn-type-menu-size);
}
html[data-sbn-type~="menu-font"] .site-header :is(.nav, .top-menu-bar, .menu-toggle, .nav-support, .managed-menu .submenu a) {
  font-family: var(--sbn-type-menu-font);
}
html[data-sbn-type~="footer-brand-size"] body > footer .footer-brand > span:not(.brand-mark) {
  font-size: var(--sbn-type-footer-brand-size);
}
html[data-sbn-type~="footer-brand-font"] body > footer .footer-brand > span:not(.brand-mark) {
  font-family: var(--sbn-type-footer-brand-font);
}
html[data-sbn-type~="footer-phrase-size"] body > footer .footer-message {
  font-size: var(--sbn-type-footer-phrase-size);
}
html[data-sbn-type~="footer-phrase-font"] body > footer .footer-message {
  font-family: var(--sbn-type-footer-phrase-font);
}
html[data-sbn-type~="footer-text-size"] body > footer :is(.footer-grid p, .footer-grid strong, .footer-grid a:not(.brand), .menu-rodape, .footer-bottom, .footer-message span) {
  font-size: var(--sbn-type-footer-text-size);
}
html[data-sbn-type~="footer-text-font"] body > footer :is(.footer-grid p, .footer-grid strong, .footer-grid a:not(.brand), .menu-rodape, .footer-bottom, .footer-message span) {
  font-family: var(--sbn-type-footer-text-font);
}
html[data-sbn-type~="header-brand-font"] .site-header .header-logo > span:not(.brand-mark) small { font-family: inherit; }
html[data-sbn-type~="footer-brand-font"] body > footer .footer-brand > span:not(.brand-mark) small { font-family: inherit; }

html[data-sbn-type~="product-title-size"] #main :is(.product-card .card-body > h3, .product-detail-info > h1) {
  font-size: var(--sbn-type-product-title-size);
}
html[data-sbn-type~="product-title-font"] #main :is(.product-card .card-body > h3, .product-detail-info > h1) {
  font-family: var(--sbn-type-product-title-font);
}
html[data-sbn-type~="product-description-size"] #main :is(.product-summary, .product-full-description > p) {
  font-size: var(--sbn-type-product-description-size);
}
html[data-sbn-type~="product-description-font"] #main :is(.product-summary, .product-full-description > p) {
  font-family: var(--sbn-type-product-description-font);
}

@media (max-width: 760px) {
  html[data-sbn-type~="product-title-size"] #main :is(.product-card .card-body > h3, .product-detail-info > h1) {
    font-size: min(var(--sbn-type-product-title-size), calc(18px + 6vw));
  }
  html[data-sbn-type~="page-title-size"] #main .sbn-page-title {
    font-size: min(var(--sbn-type-page-title-size), calc(18px + 6vw));
    overflow-wrap: anywhere;
  }
  html[data-sbn-type~="titles-size"] #main :is(h1,h2,h3,h4):not(.sbn-page-title, .sbn-rich-content *, .sbn-contact-card *):not(:where(.product-card .card-body > h3, .product-detail-info > h1)) {
    font-size: min(var(--sbn-type-titles-size), calc(18px + 6vw));
    overflow-wrap: anywhere;
  }
}
