/* Public-site typography tokens. Keep sizes, line heights, spacing and layout
   in their existing component stylesheets. */
body.frog-public-site {
  font-family: Inter, Arial, sans-serif !important;
  --frog-font-weight-regular: 400;
  --frog-font-weight-medium: 500;
  --frog-font-weight-semibold: 600;
  --frog-font-weight-bold: 700;
  --frog-font-weight-heavy: 800;
}

body.frog-public-site :not(i):not(svg):not(path):not(script):not(style):not([class*="icon"]):not([class*="Icon"]):not([class~="fa"]):not([class^="fa-"]):not([class*=" fa-"]):not(.fa) {
  font-family: Inter, Arial, sans-serif !important;
}

/* Map non-standard component weights onto the loaded Inter faces only. */
body.frog-public-commerce .frog-catalog-shell__catalog,
body.frog-public-commerce .frog-catalog-shell__catalog span,
body.frog-public-catalog--section.frog-category-page--enhanced .frog-category-filter .bx_filter_parameters_box_title,
body.frog-public-catalog--section.frog-category-page--enhanced .frog-category-filter button,
body.frog-public-basket .basket-item-info-name-link,
body.frog-public-basket .basket-item-info-name-link span,
body.frog-public-order .frog-checkout-lead__back,
body.frog-public-order .bx-soa-section[data-frog-checkout-step] .bx-soa-editstep,
body.frog-public-order .bx-soa-pp-company-smalltitle,
body.frog-public-order .frog-checkout-delivery-cost__label,
body.frog-public-order .bx-soa-item-title,
body.frog-public-order #bx-soa-paysystem .frog-checkout-payment-card .bx-soa-pp-company-smalltitle,
body.frog-public-order #bx-soa-paysystem-hidden .frog-checkout-payment-card .bx-soa-pp-company-smalltitle,
body.frog-public-order #bx-soa-paysystem .frog-checkout-payment-status,
body.frog-public-order #bx-soa-paysystem-hidden .frog-checkout-payment-status,
body.frog-public-account .sale-order-title,
body.frog-public-account .sale-order-detail-title-element,
body.frog-public-account .frog-order-number,
body.frog-public-site .frog-auth-switch a,
body.frog-public-site .frog-auth-footer a,
body.frog-public-product .right_info .cost.prices .price_measure {
  font-weight: var(--frog-font-weight-bold) !important;
}

body.frog-public-commerce h1#pagetitle,
body.frog-public-catalog .catalog_item .price,
body.frog-public-catalog .catalog_item .price_value,
body.frog-public-product .right_info .cost.prices,
body.frog-public-product .right_info .price,
body.frog-public-product .right_info .price_value,
body.frog-public-product .right_info .cost.prices .price,
body.frog-public-product .right_info .cost.prices .price_value,
body.frog-public-product .right_info .price_value_block,
body.frog-public-basket .basket-coupon-block-total-price-current,
body.frog-public-site .frog-info__price {
  font-weight: var(--frog-font-weight-heavy) !important;
}

body.frog-public-order .bx-soa-custom-label,
body.frog-public-order .form-group label {
  font-weight: var(--frog-font-weight-semibold) !important;
}

/* Keep the shared public header typographically identical on every route. */
body.frog-public-site .frog-catalog-shell__notice,
body.frog-public-site .frog-catalog-shell__notice .frog-catalog-shell__shell,
body.frog-public-site .frog-catalog-shell__notice span,
body.frog-public-site .frog-catalog-shell__notice b,
body.frog-public-site .frog-catalog-shell__notice a {
  font-family: Inter, Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 16px !important;
  letter-spacing: normal !important;
}

body.frog-public-site .frog-catalog-shell__notice span {
  font-weight: var(--frog-font-weight-regular) !important;
}

body.frog-public-site .frog-catalog-shell__notice b,
body.frog-public-site .frog-catalog-shell__notice a {
  font-weight: var(--frog-font-weight-bold) !important;
}

body.frog-public-site .frog-catalog-shell__catalog {
  font-family: Inter, Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: var(--frog-font-weight-bold) !important;
}

body.frog-public-site .frog-catalog-shell__catalog span {
  font-family: Inter, Arial, sans-serif !important;
  font-weight: var(--frog-font-weight-bold) !important;
}

body.frog-public-site .frog-catalog-shell__nav a {
  font-family: Inter, Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: var(--frog-font-weight-semibold) !important;
}

body.frog-public-site .frog-catalog-shell__nav span {
  font-family: Inter, Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: var(--frog-font-weight-regular) !important;
}

/* Both homepage and commerce headers use the same text metrics.
   Component geometry and pictogram sizes remain in their own stylesheets. */
html body.frog-public-site .frog-public__header,
html body.frog-public-site .frog-catalog-shell__header {
  font-size: 14px;
  font-weight: var(--frog-font-weight-regular);
  line-height: 1.4;
  letter-spacing: normal;
}
html body.frog-public-site .frog-public__notice,
html body.frog-public-site .frog-public__notice .frog-public__shell,
html body.frog-public-site .frog-public__notice span,
html body.frog-public-site .frog-public__notice b,
html body.frog-public-site .frog-public__notice a,
html body.frog-public-site .frog-catalog-shell__notice,
html body.frog-public-site .frog-catalog-shell__notice .frog-catalog-shell__shell,
html body.frog-public-site .frog-catalog-shell__notice span,
html body.frog-public-site .frog-catalog-shell__notice b,
html body.frog-public-site .frog-catalog-shell__notice a {
  font-size: 13px !important;
  line-height: 16px !important;
  letter-spacing: normal !important;
}
html body.frog-public-site .frog-public__notice span,
html body.frog-public-site .frog-catalog-shell__notice span {
  font-weight: var(--frog-font-weight-regular) !important;
}
html body.frog-public-site .frog-public__notice b,
html body.frog-public-site .frog-public__notice a,
html body.frog-public-site .frog-catalog-shell__notice b,
html body.frog-public-site .frog-catalog-shell__notice a,
html body.frog-public-site .frog-public__catalog,
html body.frog-public-site .frog-catalog-shell__catalog {
  font-weight: var(--frog-font-weight-bold) !important;
}
html body.frog-public-site .frog-public__catalog,
html body.frog-public-site .frog-catalog-shell__catalog {
  font-size: 14px !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
}
html body.frog-public-site .frog-public__nav a,
html body.frog-public-site .frog-catalog-shell__nav a {
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: var(--frog-font-weight-semibold) !important;
  letter-spacing: normal !important;
}
html body.frog-public-site .frog-public__nav span,
html body.frog-public-site .frog-catalog-shell__nav span {
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: var(--frog-font-weight-regular) !important;
}
html body.frog-public-site .frog-public__actions small,
html body.frog-public-site .frog-catalog-shell__actions small {
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: var(--frog-font-weight-regular) !important;
}
html body.frog-public-site .frog-public__actions > a:last-child,
html body.frog-public-site .frog-catalog-shell__actions > a:last-child {
  box-sizing: border-box !important;
  flex: 0 0 44px !important;
  width: 44px !important;
  min-width: 44px !important;
  justify-items: center !important;
}
html body.frog-public-site .frog-public__actions > a:last-child > span,
html body.frog-public-site .frog-catalog-shell__actions > a:last-child > span {
  justify-self: center !important;
  text-align: center !important;
}
html body.frog-public .frog-public__actions > a:last-child small,
html body.frog-public-site .frog-public__actions > a:last-child small,
html body.frog-public-site .frog-catalog-shell__actions > a:last-child small {
  justify-self: center !important;
  text-align: center !important;
}
@media (max-width: 560px) {
  html body.frog-public-site .frog-public__notice b,
  html body.frog-public-site .frog-catalog-shell__notice b {
    font-size: 11px !important;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  html body.frog-public-site .frog-public__notice a,
  html body.frog-public-site .frog-catalog-shell__notice a {
    font-size: 12px !important;
    flex-shrink: 0;
    white-space: nowrap;
  }
  html body.frog-public-site .frog-public__actions small,
  html body.frog-public-site .frog-catalog-shell__actions small {
    font-size: 10px !important;
  }
}

/* The price title carries icons_fa, so the generic icon-safe font rule skips it. */
body.frog-public-catalog .bx_filter .bx_filter_parameters_box_title.frog-price-filter-title {
  font-family: Inter, Arial, sans-serif !important;
}

/* Price inputs use regular proportional digits, including their placeholders. */
body.frog-public-catalog .bx_filter input.min-price,
body.frog-public-catalog .bx_filter input.max-price,
body.frog-public-catalog .bx_filter input.min-price::placeholder,
body.frog-public-catalog .bx_filter input.max-price::placeholder {
  font-variant-numeric: proportional-nums !important;
}
