@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/montserrat-600-latin.woff2') format('woff2');
}

@font-face {
  font-family: 'SAFEREA Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/SAFEREADisplay-Regular.woff2?v=1') format('woff2');
}

/* Shared wordmarks: solid black brand, blue family, one unbroken name. */
.product-name {
  font-family: 'SAFEREA Display', 'Montserrat', Arial, sans-serif !important;
  font-weight: 600 !important;
  font-synthesis: none;
  font-kerning: normal;
  color: #090909 !important;
  white-space: nowrap;
}
.product-name,
.product-name-end,
.product-name-reference {
  /* Generic caption/span rules must not split a product name over three lines. */
  display: inline !important;
  font-size: inherit !important;
  margin: 0 !important;
  letter-spacing: inherit;
}
.product-reference-option,
.product-reference-select {
  font-family: 'SAFEREA Display', 'Montserrat', Arial, sans-serif !important;
  font-weight: 600;
  font-synthesis: none;
}
.product-name-end {
  color: #0068f4;
  /* Caption rules target every span; explicitly preserve the family wordmark. */
  font-family: 'SAFEREA Display', 'Montserrat', Arial, sans-serif !important;
  font-weight: 600 !important;
  font-synthesis: none;
}
.product-name-reference {
  color: #090909 !important;
  font-family: 'SAFEREA Display', 'Montserrat', Arial, sans-serif !important;
  font-weight: 600 !important;
  font-synthesis: none;
  text-transform: uppercase;
  padding: 0 !important;
}
/* Light selected tabs preserve the black/blue wordmark. */
:is(.presentation-tabs, .tools-tabs) button[aria-pressed="true"]:has(.product-name) {
  background: #e8f2ff;
  border-color: #0068f4;
  color: #090909;
}
:is(.presentation-tabs, .tools-tabs) button[aria-pressed="true"] .product-name,
:is(.presentation-tabs, .tools-tabs) button[aria-pressed="true"] .product-name-reference {
  color: #090909 !important;
}
:is(.presentation-tabs, .tools-tabs) button[aria-pressed="true"] .product-name-end {
  color: #0068f4;
}
main .product-title {
  font-family: 'Montserrat', Arial, sans-serif;
  font-weight: 600;
  letter-spacing: -.035em;
  line-height: 1.18;
  color: #071c4a;
  overflow-wrap: anywhere;
}
main .product-title .product-name { color: #090909; }
main .product-title .product-name-end {
  color: #0068f4;
  white-space: nowrap;
}
main .eyebrow.product-category {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: calc(var(--category-original-size, 10px) * 1.3);
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #0068f4;
}
.family-ranges .product-title { font-size: clamp(22px, 2.4vw, 32px); }
@media (max-width: 640px) {
  .range-card .product-title,
  .family-ranges .product-title { font-size: 24px; }
}

/* No artificial gap between brand and family, even in tracked category labels. */
.product-name,.product-name-end{text-transform:uppercase;letter-spacing:0}
.product-name-end{font-family:inherit;font-weight:inherit;padding:0!important}
@media(max-width:640px){main h1.product-title{font-size:clamp(22px,6vw,34px)}main h2.product-title{font-size:clamp(21px,5.8vw,28px)}}
