/* Oesterreich-Fokus der oeffentlichen Seiten: Faktenleiste, Kopfzeile mit Anmelden und
   Angebot, Paketzeilen, Vertrauensbereich und die Seite fuer Gemeinden.

   Linie "Instrument": Haarlinien statt Kacheln, grosse ruhige Ziffern, Beschriftung in Versalien
   mit Sperrung, EIN Akzent (Buehnen-Orange) nur dort, wo er etwas markiert. Keine Verlaeufe,
   kein Glas, keine Leuchtpunkte. Alle Farben aus den Rollen von styles.css. */

/* ---------- Kopfzeile ---------- */
.lp-kopf-link {
  color: var(--stage-2nd); text-decoration: none; font-size: 13px; font-weight: 700;
  letter-spacing: .04em; text-transform: uppercase; padding: 9px 4px; white-space: nowrap;
  border-bottom: 1px solid transparent; transition: color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);
}
.lp-kopf-link:hover { color: var(--stage-ink); border-bottom-color: var(--orange-buehne); }
.lp-topbar .lp-kopf-link + .lp-cta { margin-left: 0; }
@media (max-width: 1100px) { .lp-topbar .lp-kopf-link { margin-left: auto; } }
@media (max-width: 560px) { .lp-topbar .lp-kopf-link { display: none; } .lp-topbar .lp-kopf-link + .lp-cta { margin-left: auto; } }

.lp-hero-weiter {
  display: inline-block; margin-left: 10px; color: var(--stage-ink); font-weight: 700; text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--orange-buehne) 70%, transparent); padding-bottom: 1px;
}
.lp-hero-weiter::after { content: " \2192"; }
.lp-hero-weiter:hover { border-bottom-color: var(--orange-buehne); }

/* ---------- Faktenleiste ---------- */
.at-fakten {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 56px 0 0;
  border-top: 1px solid color-mix(in srgb, var(--stage-ink) 18%, transparent);
}
.at-fakt { padding: 20px 22px 4px 0; display: grid; gap: 6px; align-content: start; }
.at-fakt + .at-fakt { padding-left: 22px; border-left: 1px solid color-mix(in srgb, var(--stage-ink) 12%, transparent); }
.at-fakt dt {
  font-size: 11px; font-weight: 800; letter-spacing: .24em; text-transform: uppercase; color: var(--stage-3rd);
}
.at-fakt dd { margin: 0; display: grid; gap: 8px; }
.at-fakt-wert {
  font-size: clamp(22px, 2.3vw, 32px); font-weight: 400; line-height: 1.05; letter-spacing: -.01em;
  color: var(--stage-ink); font-variant-numeric: tabular-nums;
}
.at-fakt:first-child .at-fakt-wert { color: var(--orange-buehne); }
.at-fakt-quelle {
  font-size: 12px; line-height: 1.4; color: var(--stage-3rd); text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--stage-3rd) 40%, transparent); justify-self: start;
}
.at-fakt-quelle:hover { color: var(--stage-ink); border-bottom-color: var(--orange-buehne); }
@media (max-width: 900px) {
  .at-fakten { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 40px; }
  .at-fakt:nth-child(3) { padding-left: 0; border-left: 0; }
  .at-fakt:nth-child(n + 3) { border-top: 1px solid color-mix(in srgb, var(--stage-ink) 12%, transparent); }
}
@media (max-width: 420px) {
  .at-fakten { grid-template-columns: minmax(0, 1fr); }
  .at-fakt, .at-fakt + .at-fakt { padding-left: 0; border-left: 0; }
  .at-fakt + .at-fakt { border-top: 1px solid color-mix(in srgb, var(--stage-ink) 12%, transparent); }
}

/* ---------- Paketzeilen ---------- */
.lp-pkg .lp-pkg-kind { margin: 0 0 6px; }
.lp-pkg-test {
  margin: 6px 0 0; font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: var(--orange);
}
.lp-pkg-test[hidden] { display: none; }

/* ---------- Vertrauen: Betrieb und Vertrag ---------- */
.at-vertrauen { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.at-vertrauen > div { padding: 22px 24px 22px 0; }
.at-vertrauen > div + div { padding-left: 24px; border-left: 1px solid var(--line); }
.at-vertrauen h3 { font-size: 11.5px; font-weight: 800; letter-spacing: .22em; text-transform: uppercase; color: var(--muted); margin: 0 0 10px; }
.at-vertrauen p { margin: 0; color: var(--head); line-height: 1.6; }
.at-vertrauen a { color: var(--pulse); }
@media (max-width: 900px) {
  .at-vertrauen { grid-template-columns: minmax(0, 1fr); }
  .at-vertrauen > div + div { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
}

/* ---------- Kostenlos-Leiste ---------- */
.at-gratis { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.at-gratis li { padding: 20px 22px 20px 0; display: grid; gap: 6px; align-content: start; }
.at-gratis li + li { padding-left: 22px; border-left: 1px solid var(--line); }
.at-gratis strong { font-size: 15px; color: var(--head); }
.at-gratis span { color: var(--muted); line-height: 1.55; font-size: 14px; }
.at-gratis a { color: var(--pulse); font-weight: 700; text-decoration: none; justify-self: start; border-bottom: 1px solid currentColor; }
.at-gratis-vier { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1180px) {
  .at-gratis-vier { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .at-gratis-vier li:nth-child(3) { padding-left: 0; border-left: 0; }
  .at-gratis-vier li:nth-child(n + 3) { border-top: 1px solid var(--line); }
}
@media (max-width: 900px) {
  .at-gratis, .at-gratis-vier { grid-template-columns: minmax(0, 1fr); }
  .at-gratis li + li { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
}

/* ---------- nis2.html, gemeinden.html, 404.html: Kopfzeile und Leiste auf der Buehne ---------- */
.n2-kopf-link { color: var(--stage-2nd); text-decoration: none; font-size: .9rem; font-weight: 700; white-space: nowrap; }
.n2-kopf-link:hover { color: var(--stage-ink); }
.n2-btn.n2-kopf-cta { padding: 9px 16px; font-size: .88rem; white-space: nowrap; }
.n2-nav a { white-space: nowrap; }
@media (max-width: 1180px) { .n2-top .n2-nav { display: none; } .n2-top .n2-kopf-link { margin-left: auto; } }
@media (max-width: 560px) { .n2-top .n2-kopf-link { display: none; } .n2-top .n2-kopf-cta { margin-left: auto; } }
.n2-fakten { margin-top: 36px; }

.at-fehlercode { font-size: clamp(64px, 12vw, 120px); font-weight: 400; line-height: 1; letter-spacing: -.03em; color: var(--orange); margin: 0 0 12px; font-variant-numeric: tabular-nums; }

.lp-nav a { white-space: nowrap; }
@media (max-width: 1280px) { .lp-nav a { padding: 9px 9px; } }

/* Die Startseite traegt seit dem Oesterreich-Fokus eine laengere H1. Kleiner gesetzt, damit
   Hero und Faktenleiste auf einem Laptop-Bildschirm gemeinsam sichtbar sind. */
.lp-hero:has(.at-fakten) { padding-top: 48px; padding-bottom: 56px; }
.lp-hero:has(.at-fakten) h1 { font-size: clamp(30px, 3.5vw, 44px); line-height: 1.1; }
.lp-hero:has(.at-fakten) .lp-hero-badge { margin-bottom: 18px; }
.lp-hero:has(.at-fakten) .lp-hero-sub { margin-top: 18px; font-size: clamp(15.5px, 1.4vw, 17.5px); }
.lp-hero:has(.at-fakten) .lp-hero-actions { margin-top: 26px; }
.lp-hero:has(.at-fakten) .lp-hero-note { margin-top: 18px; }
.lp-hero .at-fakten { margin-top: 36px; }
.n2-fakten + .n2-klein { margin-top: 22px; }
