/* ==========================================================================
   Typografie: Barlow (Text, Bedienelemente) + Barlow Condensed (Überschriften)
   SIL Open Font License 1.1, lokal ausgeliefert.
   ========================================================================== */
@font-face { font-family: "Barlow"; font-weight: 400; font-display: swap; src: url("../fonts/barlow-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-weight: 500; font-display: swap; src: url("../fonts/barlow-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-weight: 600; font-display: swap; src: url("../fonts/barlow-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-weight: 700; font-display: swap; src: url("../fonts/barlow-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-weight: 600; font-display: swap; src: url("../fonts/barlow-condensed-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-weight: 700; font-display: swap; src: url("../fonts/barlow-condensed-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-weight: 800; font-display: swap; src: url("../fonts/barlow-condensed-latin-800-normal.woff2") format("woff2"); }

:root {
	--font: "Barlow", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--font-head: "Barlow Condensed", "Barlow", system-ui, sans-serif;
	--font-ui: "Barlow", system-ui, sans-serif;
	--head-scale: 1.15;
}

h1, h2, h3, h4,
.ogs-hero__title, .ogs-pagehead__title, .ogs-detail__title, .ogs-band__title,
.ogs-eyebrow, .ogs-card__title, .ogs-svc__title, .ogs-brand-tile__name,
.ogs-price__value, .ogs-keyfacts dt, .ogs-status, .ogs-muster, .ogs-footer__h, .ogs-steps li::before,
.ogs-specs caption, .ogs-card__meta, .ogs-facts li, .ogs-chips a, .ogs-inventory__count {
	font-family: var(--font-head);
}
.ogs-btn, .ogs-nav__list a, .ogs-keyfacts dd { font-family: var(--font-ui); }

h1, h2, h3, .ogs-card__title, .ogs-svc__title { font-weight: 700; letter-spacing: .005em; }
.ogs-hero__title, .ogs-pagehead__title, .ogs-detail__title { text-transform: uppercase; letter-spacing: .005em; font-weight: 800; }
.ogs-hero__title { font-size: calc(clamp(2.4rem, 5.6vw, 4.25rem) * var(--head-scale)); max-width: 16ch; }
.ogs-pagehead__title { font-size: calc(clamp(2rem, 4.6vw, 3.25rem) * var(--head-scale)); }
.ogs-detail__title { font-size: calc(clamp(1.875rem, 3.6vw, 2.75rem) * var(--head-scale)); }
.ogs-h2, .ogs-prose h2 { font-size: calc(clamp(1.625rem, 3.2vw, 2.375rem) * var(--head-scale)); }
.ogs-h3 { font-size: 1.5rem; }
.ogs-svc__title, .ogs-card__title { font-size: 1.3125rem; letter-spacing: .01em; }
.ogs-eyebrow, .ogs-footer__h, .ogs-keyfacts dt { letter-spacing: .16em; }

.ogs-draftbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px 16px; }
/* Lange deutsche Wörter in Versalien (z. B. ANTISCHLINGERKUPPLUNG) auf kleinen Bildschirmen trennen */
.ogs-hero__title, .ogs-pagehead__title, .ogs-detail__title, h1, h2 { hyphens: auto; -webkit-hyphens: auto; overflow-wrap: break-word; }
