@font-face{font-family:system-ui;src:local(system-ui)}
:root{--bg:#12100d;--panel:#1b1712;--panel2:#231d15;--text:#f5eadb;--muted:#cbbba5;--line:rgba(255,255,255,.13);--gold:#d7aa62;--gold2:#ffdf9b;--red:#9b473b;--shadow:0 24px 80px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 0%,rgba(158,99,42,.32),transparent 34%),linear-gradient(180deg,#15110c,#0d0b09 50%,#15110d);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);line-height:1.6}a{color:var(--gold2)}img{max-width:100%;display:block}.site-hero{min-height:82vh;padding:24px clamp(18px,4vw,54px) 60px;background:linear-gradient(90deg,rgba(10,8,6,.96),rgba(24,18,12,.78)),radial-gradient(circle at 80% 25%,rgba(214,170,98,.18),transparent 30%);border-bottom:1px solid var(--line)}.topbar{position:sticky;top:0;z-index:9;display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:0 auto 48px;padding:10px;border:1px solid var(--line);background:rgba(18,16,13,.78);backdrop-filter:blur(12px);border-radius:999px;max-width:920px}.topbar a{text-decoration:none;color:var(--muted);padding:8px 13px;border-radius:999px}.topbar a:hover{background:rgba(255,255,255,.08);color:var(--text)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:42px;align-items:center;max-width:1180px;margin:auto}.eyebrow{margin:0 0 10px;color:var(--gold2);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:800}.hero-text h1{font-size:clamp(3rem,8vw,7.5rem);line-height:.92;margin:0 0 22px;letter-spacing:-.06em}.lead{font-size:clamp(1.1rem,2.4vw,1.55rem);max-width:760px;color:#ead9c2}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{background:var(--gold);color:#160e07;text-decoration:none;font-weight:800;padding:12px 18px;border-radius:999px}.button.secondary{background:transparent;color:var(--gold2);border:1px solid rgba(255,223,155,.45)}.hero-figure,.image-card,.gallery figure{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));padding:12px;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.hero-figure img{width:100%;max-height:650px;object-fit:cover;border-radius:18px;filter:saturate(.88) contrast(1.05)}figcaption{font-size:.86rem;color:var(--muted);margin-top:10px}main{max-width:1180px;margin:auto;padding:42px clamp(16px,4vw,34px)}section{margin:0 0 36px}.intro-panel,.content-grid,.obelisk-section{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}.intro-panel,.article-card{background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025));border:1px solid var(--line);border-radius:28px;padding:clamp(22px,3.6vw,36px);box-shadow:var(--shadow)}h2{font-size:clamp(1.8rem,4vw,3.1rem);line-height:1.05;margin:0 0 18px;letter-spacing:-.035em}h3{margin:0 0 12px;font-size:1.25rem}.fact-list{background:rgba(0,0,0,.2);border:1px solid var(--line);border-radius:24px;padding:24px}.fact-list dl{display:grid;grid-template-columns:120px 1fr;gap:10px 14px;margin:0}.fact-list dt{color:var(--gold2);font-weight:800}.fact-list dd{margin:0;color:var(--muted)}.wide{min-width:0}.image-card img{width:100%;height:100%;min-height:320px;object-fit:cover;border-radius:18px}.compact{background:linear-gradient(180deg,rgba(155,71,59,.18),rgba(255,255,255,.025))}.timeline-list{display:grid;gap:12px}.timeline-list div{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:15px;border-left:4px solid var(--gold);background:rgba(0,0,0,.18);border-radius:14px}.timeline-list strong{color:var(--gold2)}.timeline-list span{color:var(--muted)}.feature{background:linear-gradient(135deg,rgba(215,170,98,.16),rgba(255,255,255,.035));}.wide-image{min-height:360px}.obelisk-section{align-items:center;background:radial-gradient(circle at 88% 20%,rgba(215,170,98,.19),transparent 32%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid var(--line);border-radius:32px;padding:clamp(18px,3vw,28px);box-shadow:var(--shadow)}.obelisk-text{padding:12px clamp(8px,3vw,28px)}blockquote{font-family:Georgia,serif;font-size:clamp(1.15rem,2.6vw,1.65rem);line-height:1.45;margin:24px 0 0;padding:24px;border-left:5px solid var(--gold);background:rgba(0,0,0,.22);border-radius:18px;color:#fff1db}.obelisk-image img{max-height:650px;object-fit:cover}.columns{columns:2;column-gap:36px}.gallery{background:rgba(0,0,0,.18);border:1px solid var(--line);border-radius:28px;padding:28px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery figure{padding:10px;border-radius:20px;box-shadow:none}.gallery img{height:260px;width:100%;object-fit:cover;border-radius:14px}.license-note{color:var(--muted);font-size:.96rem}.sources{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid var(--line);border-radius:28px;padding:28px}.source-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.source-grid a{display:block;text-decoration:none;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(0,0,0,.18)}.source-grid strong{display:block;color:var(--gold2);margin-bottom:5px}.source-grid span{display:block;color:var(--muted);font-size:.95rem}.footer{max-width:1180px;margin:20px auto 50px;padding:24px clamp(16px,4vw,34px);display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);border-top:1px solid var(--line)}.footer a{text-decoration:none}.footer p{flex-basis:100%;margin:0;color:var(--muted)}
.legal main{max-width:900px}.legal-card{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid var(--line);border-radius:26px;padding:28px;margin:26px 0}.legal-card ul{color:var(--muted)}
@media(max-width:850px){.hero-grid,.intro-panel,.content-grid,.obelisk-section{grid-template-columns:1fr}.hero-figure img{max-height:520px}.fact-list dl,.timeline-list div{grid-template-columns:1fr}.columns{columns:1}.gallery-grid,.source-grid{grid-template-columns:1fr}.topbar{border-radius:22px}.gallery img{height:auto}.site-hero{min-height:auto}.hero-text h1{font-size:3.4rem}}


/* V2 Layout-Fix: Bildkasten und Kurzdaten */
.image-card--compact {
  align-self: start;
  max-width: 620px;
  margin-inline: auto;
}

.image-card--compact img {
  width: 100%;
  max-height: 520px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.image-card--compact figcaption {
  padding: 14px 18px 18px;
  font-size: 0.95rem;
  line-height: 1.45;
  color: rgba(245, 232, 207, 0.78);
}

.fact-card--wide-labels dl,
.fact-card--wide-labels .facts,
.quick-facts dl,
.quick-facts .facts {
  display: grid;
  grid-template-columns: minmax(210px, 260px) 1fr;
  column-gap: 44px;
  row-gap: 20px;
  align-items: start;
}

.fact-card--wide-labels dt,
.quick-facts dt {
  color: #ffe09a;
  font-weight: 800;
  white-space: nowrap;
}

.fact-card--wide-labels dd,
.quick-facts dd {
  margin: 0;
  line-height: 1.45;
}

@media (max-width: 760px) {
  .fact-card--wide-labels dl,
  .fact-card--wide-labels .facts,
  .quick-facts dl,
  .quick-facts .facts {
    grid-template-columns: 1fr;
    row-gap: 8px;
  }

  .fact-card--wide-labels dt,
  .quick-facts dt {
    margin-top: 12px;
  }
}


/* V3: Kurzdaten sauber setzen */
.fact-list {
  align-self: start;
  padding: 30px;
}

.fact-list h3 {
  margin-bottom: 22px;
}

.fact-list dl {
  grid-template-columns: minmax(185px, 240px) minmax(0, 1fr);
  column-gap: 46px;
  row-gap: 20px;
  align-items: start;
}

.fact-list dt {
  white-space: nowrap;
  font-size: 1.02rem;
}

.fact-list dd {
  line-height: 1.5;
  min-width: 0;
}

/* V3: Schweiz-Bezug ausbauen */
.swiss-section {
  border-color: rgba(255, 223, 155, .24);
  background:
    radial-gradient(circle at 94% 0%, rgba(255, 223, 155, .16), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.068), rgba(255,255,255,.025));
}

.swiss-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 22px;
}

.swiss-grid article {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(0,0,0,.18);
}

.swiss-grid h3 {
  color: var(--gold2);
}

.source-note {
  margin-top: 22px;
  padding: 16px 18px;
  border-left: 4px solid var(--gold);
  border-radius: 14px;
  background: rgba(0,0,0,.22);
  color: var(--text);
  font-weight: 700;
}

@media(max-width:850px) {
  .fact-list dl {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 8px;
  }

  .fact-list dt {
    margin-top: 12px;
  }

  .swiss-grid {
    grid-template-columns: 1fr;
  }
}


/* V4: Kurzdaten-Kasten wirklich sauber und kompakt */
.hero .fact-list,
.fact-list {
  width: min(100%, 560px);
  max-width: 560px;
  margin: 18px auto 0;
  padding: 24px 26px;
  box-sizing: border-box;
  align-self: start;
}

.fact-list h3 {
  margin: 0 0 18px;
  font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.fact-list dl {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  column-gap: 26px;
  row-gap: 15px;
  align-items: start;
}

.fact-list dt {
  color: #ffe09a;
  font-weight: 800;
  white-space: normal;
  line-height: 1.25;
  font-size: 1rem;
}

.fact-list dd {
  margin: 0;
  min-width: 0;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  line-height: 1.35;
  font-size: 1rem;
  color: rgba(245, 232, 207, 0.78);
}

.fact-list dd br {
  display: block;
}

/* Desktop etwas großzügiger, ohne dass die rechte Spalte zerfällt */
@media (min-width: 980px) {
  .fact-list dl {
    grid-template-columns: 170px minmax(260px, 1fr);
    column-gap: 32px;
  }
}

/* Auf schmalen Bildschirmen bleibt es zweispaltig, aber enger */
@media (max-width: 760px) {
  .fact-list {
    width: 100%;
    padding: 20px;
  }

  .fact-list dl {
    grid-template-columns: 130px minmax(0, 1fr);
    column-gap: 18px;
    row-gap: 13px;
  }

  .fact-list dt,
  .fact-list dd {
    font-size: .98rem;
  }
}

/* Sehr schmale Geräte: erst dann einspaltig */
@media (max-width: 430px) {
  .fact-list dl {
    grid-template-columns: 1fr;
    row-gap: 6px;
  }

  .fact-list dt {
    margin-top: 10px;
  }
}

/* Schweiz-Abschnitt: sauberere erste Absätze */
.swiss-section > p {
  max-width: 980px;
}


/* V6: SEO-/Teilen-Elemente und sauberer JS-Icon-Stil */
.name-variant {
  display: block;
  margin-top: .28em;
  font-size: clamp(1.05rem, 2.2vw, 1.7rem);
  color: rgba(245,232,207,.74);
  font-weight: 700;
}

.share-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.share-row a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(255, 224, 163, .32);
  background: rgba(255,255,255,.055);
  color: #ffe0a3;
  text-decoration: none;
  font-weight: 800;
}

.share-row a:hover {
  background: rgba(255, 224, 163, .12);
  border-color: rgba(255, 224, 163, .58);
}


/* V10: saubere Unterseiten */
.subpage {
  min-height: 100vh;
  background:
    radial-gradient(circle at 20% 0%, rgba(212, 160, 77, .18), transparent 34%),
    linear-gradient(180deg, #120b07, #2a190d 55%, #120b07);
  color: var(--text, #f5e8cf);
}

.legal-page {
  width: min(980px, calc(100% - 32px));
  margin: 0 auto;
  padding: 42px 0 70px;
}

.legal-page h1 {
  font-size: clamp(2.4rem, 5vw, 4.8rem);
  line-height: .95;
  margin: 22px 0 32px;
}

.back-link {
  display: inline-flex;
  align-items: center;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 224, 163, .32);
  color: #ffe0a3;
  text-decoration: none;
  font-weight: 800;
  background: rgba(255,255,255,.055);
}

.legal-page .article-card {
  margin: 18px 0;
}

.legal-page a {
  color: #ffe0a3;
}


/* V12: Mobile Feinschliff */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}

img, video, iframe {
  max-width: 100%;
}

@media (max-width: 820px) {
  .site-nav,
  header nav,
  .nav {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    scrollbar-width: none;
  }

  .site-nav::-webkit-scrollbar,
  header nav::-webkit-scrollbar,
  .nav::-webkit-scrollbar {
    display: none;
  }

  .hero,
  .hero-grid,
  .content-grid,
  .two-column,
  .split,
  .section-grid,
  .swiss-grid {
    grid-template-columns: 1fr !important;
  }

  .hero {
    padding-top: 88px;
  }

  h1 {
    font-size: clamp(2.25rem, 13vw, 4rem);
    line-height: .95;
  }

  h2 {
    font-size: clamp(1.8rem, 9vw, 3rem);
    line-height: 1;
  }

  .article-card,
  .image-card,
  .fact-list {
    border-radius: 24px;
  }

  .fact-list {
    width: min(100%, 520px);
    margin-inline: auto;
  }

  .image-card img {
    max-height: 420px;
    object-fit: cover;
  }
}

@media (max-width: 520px) {
  .hero,
  .article-card,
  .legal-page {
    width: min(100% - 24px, 100%);
  }

  .article-card,
  .fact-list {
    padding: 22px;
  }

  .fact-list dl {
    grid-template-columns: 1fr;
  }

  .fact-list dt {
    margin-top: 10px;
  }

  .fact-list dd {
    font-size: .98rem;
  }

  .hero .buttons,
  .button-row,
  .cta-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .hero .buttons a,
  .button-row a,
  .cta-row a {
    justify-content: center;
    text-align: center;
  }
}


/* V13: Schreibweisen-Hinweis */
.name-note {
  max-width: 820px;
  margin: 18px 0 0;
  padding: 14px 18px;
  border-left: 4px solid rgba(255, 224, 163, .75);
  border-radius: 14px;
  background: rgba(0,0,0,.20);
  color: rgba(245,232,207,.84);
  font-size: 1.02rem;
  line-height: 1.55;
}

.name-note strong {
  color: #ffe0a3;
}


/* V14: schematische Pfalz-Bayern-Erklärgrafik */
.explainer-card {
  margin-top: 24px;
}

.explainer-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 26px;
}

.step-card {
  position: relative;
  padding: 24px 22px 22px;
  border-radius: 22px;
  border: 1px solid rgba(255, 224, 163, .22);
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.02)),
    rgba(19, 12, 8, .72);
  box-shadow: 0 18px 45px rgba(0,0,0,.22);
}

.step-card h3 {
  margin: 10px 0 10px;
  font-size: 1.18rem;
  line-height: 1.2;
}

.step-card p {
  margin: 0;
}

.step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  font-weight: 800;
  color: #1f140c;
  background: #ffe0a3;
  box-shadow: 0 8px 20px rgba(0,0,0,.2);
}

.mini-map-card {
  margin-top: 24px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 16px;
  align-items: center;
  padding: 24px;
  border-radius: 26px;
  border: 1px solid rgba(255, 224, 163, .24);
  background:
    radial-gradient(circle at 12% 20%, rgba(212,160,77,.15), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015)),
    rgba(18, 12, 8, .76);
}

.mini-map-side {
  min-height: 126px;
  border-radius: 22px;
  padding: 20px 18px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border: 1px solid rgba(255,224,163,.22);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.02);
}

.mini-map-side--west {
  background: linear-gradient(180deg, rgba(131, 77, 34, .34), rgba(79, 47, 22, .34));
}

.mini-map-side--east {
  background: linear-gradient(180deg, rgba(84, 59, 121, .30), rgba(44, 33, 71, .30));
}

.mini-map-title {
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.05;
  color: #ffe7bb;
}

.mini-map-sub {
  margin-top: 8px;
  color: rgba(245,232,207,.82);
}

.mini-map-connector {
  text-align: center;
  min-width: 130px;
}

.mini-map-arrow {
  font-size: 2.6rem;
  line-height: 1;
  color: #ffe0a3;
}

.mini-map-label {
  margin-top: 8px;
  font-size: .96rem;
  font-weight: 700;
  color: rgba(245,232,207,.85);
}

.explainer-note {
  margin-top: 18px;
  color: rgba(245,232,207,.75);
  font-size: .98rem;
}

@media (max-width: 820px) {
  .explainer-steps {
    grid-template-columns: 1fr;
  }

  .mini-map-card {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .mini-map-connector {
    min-width: 0;
  }

  .mini-map-arrow {
    transform: rotate(90deg);
  }
}


/* V16: Deutsch-Englisch-Umschalter */
.lang-switch {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 10px;
  padding: 4px;
  border-radius: 999px;
  border: 1px solid rgba(255,224,163,.24);
  background: rgba(0,0,0,.20);
}

.lang-switch a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  color: rgba(245,232,207,.82);
  text-decoration: none;
  font-size: .88rem;
  font-weight: 800;
  letter-spacing: .05em;
}

.lang-switch a.active,
.lang-switch a[aria-current="page"] {
  background: #ffe0a3;
  color: #22140b;
}

.lang-switch a:hover {
  color: #fff4d8;
}

.lang-switch a.active:hover,
.lang-switch a[aria-current="page"]:hover {
  color: #22140b;
}

@media (max-width: 720px) {
  .lang-switch {
    margin-left: 0;
  }

  .lang-switch a {
    min-width: 34px;
    height: 28px;
    padding: 0 9px;
    font-size: .82rem;
  }
}
