/*
 * Final typography bridge for current main.
 * This file is intentionally limited to font variables/families and does not alter layout geometry.
 * It is loaded after catalog-specific CSS so legacy Arial/Porsche Next fallbacks cannot override
 * the approved Germes Reference Sans used by the rest of the public site.
 */
:root{
  --_font-porsche-next-dynamic:var(--font);
  --p-font-porsche-next:var(--font);
  --p-font-sans:var(--p-font-porsche-next);
  --g-brand-font:var(--font);
  --p-font-weight-normal:400;
  --p-font-weight-semibold:600;
  --p-font-weight-bold:700;
  --p-leading-normal:calc(6px + 2.125ex);
  --p-typescale-2xs:.75rem;
  --p-typescale-xs:.875rem;
  --p-typescale-sm:1rem;
  --p-typescale-md:clamp(1.13rem,.21vw + 1.08rem,1.33rem);
  --p-typescale-lg:clamp(1.27rem,.51vw + 1.16rem,1.78rem);
  --p-typescale-xl:clamp(1.42rem,.94vw + 1.23rem,2.37rem);
  --p-typescale-2xl:clamp(1.6rem,1.56vw + 1.29rem,3.16rem);
  --p-typescale-3xl:clamp(1.8rem,2.41vw + 1.32rem,4.21rem);
  --p-typescale-4xl:clamp(2.03rem,3.58vw + 1.31rem,5.61rem);
  --p-typescale-5xl:clamp(2.28rem,5.2vw + 1.24rem,7.48rem);
}

/* Public-site default. Keep all existing sizes, line-heights, spacing and positioning. */
html body,
html body *{
  font-family:var(--font)!important;
}

/* Native controls/dialogs can otherwise fall back to the UA font. */
html body button,
html body input,
html body textarea,
html body select,
html body option,
html body optgroup,
html body dialog,
html body summary,
html body label{
  font-family:var(--font)!important;
}

/*
 * Catalog has multiple late stylesheets with explicit Arial/Porsche Next font shorthands,
 * including !important declarations. The #main selector intentionally raises specificity
 * only for font-family so product cards, filters, sorting and generated catalog content
 * all use the same approved font without touching their geometry.
 */
html body.catalog-mode #main [data-catalog-root],
html body.catalog-mode #main [data-catalog-root] *{
  font-family:var(--font)!important;
}

/* The floating catalog navigation/header is rendered outside the catalog content tree. */
html body.catalog-mode .catalog-shop-header,
html body.catalog-mode .catalog-shop-header *{
  font-family:var(--font)!important;
}

/* Keep the approved Porsche-like weight vocabulary consistent across the public UI. */
h1,h2,h3{font-weight:var(--p-font-weight-normal)}
.brand-copy b{font-weight:var(--p-font-weight-semibold)}
.main-nav a,.mobile-nav a{font-weight:var(--p-font-weight-normal)}
.section-index,.eyebrow{font-weight:var(--p-font-weight-semibold)}
.button,.header-search,.hero-search button,.search-submit,.file-button,.tool-button{font-weight:var(--p-font-weight-semibold)}
.faq-list summary{font-weight:var(--p-font-weight-normal)}
