/* Preise in Karten und Detailansichten: Manrope, große Ganzzahl, kleine Nachkommastellen und Währung.
 * Die Größen je Ansicht stehen in den Variablen --hwx-price-int und --hwx-price-sub.
 * !important nur für Schrift und Zeilenhöhe: Die Preise liegen in Ansichten mit ID-Selektoren. */
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url("../../fonts/Manrope/manrope-latin-wght-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* :where ohne Spezifität, damit die Größen je Ansicht unten immer greifen. */
:where(.hwx-lmdb-price-container, .hwx-product-card__price, .hwx-estate-card__fact--price dd, .business-price strong) {
  --hwx-price-int: 1.75rem;
  --hwx-price-sub: 1rem;
}

:is(.hwx-lmdb-price-container, .hwx-product-card__price, .hwx-estate-card__fact--price dd, .business-price strong) {
  font-family: "Manrope", system-ui, sans-serif !important;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.03em;
  line-height: 1 !important;
}

:is(.hwx-lmdb-price-container, .hwx-product-card__price, .hwx-estate-card__fact--price dd, .business-price strong) * {
  font-family: inherit !important;
  line-height: 1 !important;
}

/* Die Laufweite steht hier, weil em sonst an der Schriftgröße des Elternelements bemessen würde. */
.hwx-price__int,
.hwx-price__sub {
  letter-spacing: -.03em;
}

.hwx-price__int {
  font-size: var(--hwx-price-int);
  font-weight: 800;
}

.hwx-price__sub {
  font-size: var(--hwx-price-sub);
  font-weight: 700;
}

/* Die Währung steht auf der Grundlinie; die Produktdetailseite hob sie bisher hoch. */
.hwx-lmdb-price-container .hwx-eu {
  position: static !important;
  margin-inline-start: .15em;
}

/* Größen je Ansicht */
#hwx-lmdb-product-detail .hwx-lmdb-price-container {
  --hwx-price-int: clamp(2.75rem, 1.5rem + 4vw, 3.5rem);
  --hwx-price-sub: 1.5rem;
}

/* Paketkarten auf „Mitmachen“; .business-price span setzt sonst die Größe der Zusatzangabe. */
.business-price strong {
  --hwx-price-int: clamp(3.5rem, 2.75rem + 2vw, 4.5rem);
  --hwx-price-sub: clamp(1.5rem, 1.25rem + .5vw, 2rem);
  display: inline-block;
}

.business-price strong .hwx-price__int {
  font-size: var(--hwx-price-int);
}

.business-price strong .hwx-price__sub {
  font-size: var(--hwx-price-sub);
}

.hwx-product-card__price {
  --hwx-price-int: 1.25rem;
  --hwx-price-sub: .8125rem;
}

.hwx-estate-card__fact--price dd {
  --hwx-price-int: 1.625rem;
  --hwx-price-sub: 1rem;
}

/* Freitext wie „auf Anfrage“ ist kein Betrag und bleibt klein. */
.hwx-estate-card__fact--price dd:has(> .hwx-price__sub:empty) .hwx-price__int,
.hwx-estate-card__fact--price dd > .hwx-price__int:only-child {
  font-size: 1.125rem;
  font-weight: 700;
}

/* Immobilien-Detail: Miettabelle ohne Gliederung, Beträge in einer Zeile mit dem Bezeichner. */
.hwx-lmdb-detail-item-rentblock > div > div:is(:nth-child(2), :nth-child(4)) {
  font-family: "Manrope", system-ui, sans-serif !important;
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  letter-spacing: -.03em;
}
