body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}.aspect--9\:16,.responsive.ratio-916{padding-bottom:177.7777%}.aspect--1\:1,.responsive.ratio-11{padding-bottom:100%}
/* Stylesheet Amtsrichterverband */
html {
font-size: 16px;
}

body {
margin: 0;
background: #f7f5f0;
color: #292d32;
font-family: Arial, Helvetica, sans-serif;
line-height: 1.6;
}

#wrapper {
max-width: 1200px;
margin: 0 auto;
background: #ffffff;
}

#header {
background: #18343b;
color: #ffffff;
padding: 32px 50px;
}

#main {
padding: 50px;
}

#footer {
background: #18343b;
color: #ffffff;
padding: 30px 50px;
}

#footer a {
color: #ffffff;
} 

/* ========================================
   KOPFZEILE
   ======================================== */

#header {
    background: #173b3f;
    color: white;
    padding: 28px 50px 20px;
}

#header .inside {
    max-width: 1200px;
    margin: 0 auto;
}

/* Verbandsname */
#header .verband-name {
    font-size: 26px;
    font-weight: 600;
    margin: 0 0 6px;
}

/* Untertitel */
#header .verband-untertitel {
    font-size: 15px;
    margin: 0 0 25px;
    opacity: 0.9;
}


/* ========================================
   HAUPTNAVIGATION
   ======================================== */

#header nav ul {
    list-style: none;
    margin: 0;
    padding: 0;

    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 28px;
}

#header nav li {
    margin: 0;
    padding: 0;
}

#header nav a,
#header nav strong {
    display: block;
    color: white;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    padding: 8px 0;
}

#header nav a:hover {
    color: #d9c49a;
}

/* aktuell ausgewählte Seite */
#header nav strong {
    color: #d9c49a;
}


/* ========================================
   SMARTPHONE
   ======================================== */

@media (max-width: 768px) {

    #header {
        padding: 22px 24px;
    }

    #header nav ul {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
}

/* ========================================
VERBANDSKOPF
======================================== */

.verbandskopf {
margin-bottom: 18px;
}

.verbandsname {
font-size: 28px;
font-weight: 600;
line-height: 1.2;
margin-bottom: 6px;
letter-spacing: 0.2px;
}

.verbandsunterzeile {
font-size: 15px;
font-weight: 400;
line-height: 1.5;
opacity: 0.85;
max-width: 850px;
} 

/* Feine Trennlinie über der Hauptnavigation */
#header nav {
border-top: 1px solid rgba(255, 255, 255, 0.22);
padding-top: 14px;
}
/* Logo und Verbandsname in der Kopfzeile */
.verbandskopf {
    display: flex;
    align-items: center;
    gap: 24px;
}

.verbandslogo {
    width: 55px;
    height: auto;
    flex-shrink: 0;
}

.verbandskopf-text {
    display: flex;
    flex-direction: column;
}

.verbandsname {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.verbandsunterzeile {
    margin-top: 5px;
    font-size: 14px;
    line-height: 1.35;
}
/* ===== Kopfzeile wie in der Vorlage ===== */

/* Gesamte Kopfzeile zunächst hell */
#header {
    background: #f7f5ef;
    color: #173d4a;
}

/* Bereich mit Logo und Verbandsname */
#header .verbandskopf {
    max-width: 1200px;
    margin: 0 auto;
    padding: 24px 40px;
    display: flex;
    align-items: center;
    gap: 22px;
}

/* Säulenlogo */
#header .verbandslogo {
    width: 52px;
    height: auto;
    flex-shrink: 0;
}

/* Verbandsname */
#header .verbandsname {
    color: #173d4a;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    font-weight: 700;
    letter-spacing: 0.5px;
}

/* Unterzeile */
#header .verbandsunterzeile {
    color: #344b52;
    font-size: 13px;
    line-height: 1.4;
    margin-top: 4px;
}

/* Navigation: dunkelblauer Balken */
#header .mod_navigation {
    background: #173d4a;
}

/* Navigation horizontal */
#header .mod_navigation ul {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0;
    flex-wrap: wrap;
}

#header .mod_navigation li {
    margin: 0;
    padding: 0;
}

/* Navigationslinks */
#header .mod_navigation a,
#header .mod_navigation strong {
    display: block;
    padding: 17px 22px;
    color: #ffffff;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
}

/* Aktive Seite */
#header .mod_navigation strong {
    color: #d9bd78;
}

/* Maus über Menüpunkt */
#header .mod_navigation a:hover {
    color: #d9bd78;
}
/* Navigation kompakt in einer Zeile */

#header .mod_navigation ul {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 0;
}

#header .mod_navigation li {
    flex: 0 0 auto;
    white-space: nowrap;
}

#header .mod_navigation a,
#header .mod_navigation strong {
    display: block;
    padding: 14px 10px;
    font-size: 12px;
    line-height: 1.2;
}


/* ========================================
   HERO STARTSEITE
   ======================================== */

.hero {
    min-height: 410px;
    

    background-image:
        linear-gradient(
            90deg,
            rgba(247, 244, 237, 0.99) 0%,
            rgba(247, 244, 237, 0.97) 28%,
            rgba(247, 244, 237, 0.82) 43%,
            rgba(247, 244, 237, 0.30) 58%,
            rgba(247, 244, 237, 0.03) 72%
        ),
        url("/files/amtsrichterverband/amtsgericht_gebaeude.jpg");

    background-size: auto 110%;
    background-position: 65% center;
    background-repeat: no-repeat;
    background-color: #f7f4ed;
}

.hero .hero-text {
    width: 100%;
    max-width: 620px;
    margin: 0 auto;
    padding: 70px 40px;
}

.hero .hero-text h2 {
    max-width: 560px;
    margin: 0 0 20px;

    color: #173f4b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.08;
    margin-bottom: 22px
}

.hero .hero-text p {
    max-width: 560px;
    margin: 0;

    color: #314d55;
    font-size: 17px;
    line-height: 1.5;
    margin-bottom: 24px
}


/* Hero auf kleineren Bildschirmen */

@media (max-width: 768px) {

    .hero {
        min-height: 420px;

        background-image:
            linear-gradient(
                90deg,
                rgba(247, 244, 237, 0.96) 0%,
                rgba(247, 244, 237, 0.82) 65%,
                rgba(247, 244, 237, 0.40) 100%
            ),
            url("../../files/amtsrichterverband/amtsgericht-hero.jpg");
    }

    .hero .hero-text {
        padding: 50px 25px 10px 25px;
    }

    .hero .hero-text h2 {
        font-size: 36px;
    }

    .hero .hero-text p {
        font-size: 17px;
    }
}
/* Hero – Buttons */

.hero .hero-button {
    display: inline-block;
    margin-top: 10px;
    margin-right: 12px;
}

.hero .hero-text + .hero-button {
    margin-left: 25px;
}

.hero .hero-button a {
    display: inline-block;
    padding: 12px 20px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 2px;
    transition: all 0.2s ease;
}

/* Primärer Button: Aktuelles entdecken */
.hero .hero-button-primary a {
    background-color: #173f4b;
    color: #ffffff;
    border: 1px solid #173f4b;
}

.hero .hero-button-primary a:hover {
    background-color: #0f3039;
    border-color: #0f3039;
}

/* Sekundärer Button: Mitglied werden */
.hero .hero-button-secondary a {
    background-color: transparent;
    color: #173f4b;
    border: 1px solid #173f4b;
}

.hero .hero-button-secondary a:hover {
    background-color: #173f4b;
    color: #ffffff;
}
/* Hero – Text und Buttons sauber positionieren */

.hero {
    display: block;
    padding: 70px 40px;
    box-sizing: border-box;
}

.hero .hero-text {
    padding: 0;
    margin: 0;
}

.hero .hero-button {
    display: inline-block;
    margin-top: 28px;
    margin-right: 12px;
}

.hero .hero-text + .hero-button {
    margin-left: 0;
}
/* ========================================
   STARTSEITE – DAFÜR STEHEN WIR
   ======================================== */

.werte-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    margin-top: 30px;
    margin-bottom: 50px;
}

/* Einzelne Werte */
.werte-grid > * {
    text-align: center;
    padding: 10px 28px 20px;
    border-right: 1px solid #ddd8ce;
}

/* Beim letzten Element keine Trennlinie */
.werte-grid > *:last-child {
    border-right: none;
}

/* Icons */
.werte-grid img {
    display: block;
    width: 70px;
    height: 70px;
    object-fit: contain;
    margin: 0 auto 18px;
}

/* Überschriften */
.werte-grid h3 {
    margin: 0 0 12px;
    color: #173f4a;
    font-size: 20px;
    line-height: 1.25;
}

/* Beschreibungstext */
.werte-grid p {
    max-width: 240px;
    margin: 0 auto;
    color: #46545a;
    font-size: 15px;
    line-height: 1.55;
}

/* Tablet */
@media (max-width: 900px) {
    .werte-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 0;
    }

    .werte-grid > *:nth-child(2) {
        border-right: none;
    }
}

/* Smartphone */
@media (max-width: 600px) {
    .werte-grid {
        grid-template-columns: 1fr;
    }

    .werte-grid > * {
        border-right: none;
        border-bottom: 1px solid #ddd8ce;
        padding: 20px;
    }

    .werte-grid > *:last-child {
        border-bottom: none;
    }
}
/* ========================================
   DAFÜR STEHEN WIR – FEINSCHLIFF
   ======================================== */

/* Vier Werte kompakter */
.werte-grid > * {
    padding-top: 10px;
    padding-bottom: 25px;
}

/* Überschriften */
.werte-grid h3 {
    margin-top: 0;
    margin-bottom: 18px;
}

/* Icons */
.werte-grid figure {
    margin: 0 0 18px 0;
    text-align: center;
}

.werte-grid figure img {
    display: inline-block;
    width: 60px;
    height: 60px;
    object-fit: contain;
}

/* Beschreibungstexte */
.werte-grid p {
    margin: 0 auto;
    max-width: 280px;
    line-height: 1.5;
}

/* Gesamten Wertebereich etwas kompakter */
.werte-grid {
    margin-top: 25px;
    margin-bottom: 25px;
}
/* Dafür stehen wir – Abstände final */

.werte-grid > * {
    padding-top: 5px;
    padding-bottom: 15px;
}

.werte-grid h3 {
    margin-bottom: 14px;
}

.werte-grid figure {
    margin-bottom: 12px;
}

.werte-grid p {
    margin-top: 0;
}

.werte-grid {
    margin-top: 20px;
    margin-bottom: 10px;
}
/* =====================================
   STARTSEITE – AKTUELLES
   ===================================== */

.aktuelles-startseite {
    padding: 35px 0 45px;
}

/* Hauptüberschrift */
.aktuelles-startseite > h2,
.aktuelles-startseite .ce_headline h2 {
    margin: 0 0 30px;
    color: #173f4a;
    font-size: 32px;
    line-height: 1.2;
}

/* Einzelne Meldung */
.aktuelles-eintrag {
    position: relative;
    display: grid;
    grid-template-columns: 180px 1fr;
    column-gap: 28px;
    align-items: start;

    padding: 25px 0;
    border-bottom: 1px solid #ddd8ce;
}

/* Überschrift der Meldung */
.aktuelles-eintrag h3 {
    grid-column: 2;
    margin: 0 0 8px;
    color: #173f4a;
    font-size: 22px;
    line-height: 1.25;
}

/* Bild */
.aktuelles-eintrag figure {
    grid-column: 1;
    grid-row: 1 / span 3;
    margin: 0;
}

.aktuelles-eintrag figure img {
    display: block;
    width: 180px;
    height: 115px;
    object-fit: cover;
}

/* Beschreibung */
.aktuelles-eintrag p {
    grid-column: 2;
    margin: 0;
    max-width: 650px;
    line-height: 1.55;
}

/* Auf Smartphones untereinander */
@media (max-width: 700px) {

    .aktuelles-eintrag {
        grid-template-columns: 1fr;
        row-gap: 12px;
    }

    .aktuelles-eintrag h3,
    .aktuelles-eintrag figure,
    .aktuelles-eintrag p {
        grid-column: 1;
        grid-row: auto;
    }

    .aktuelles-eintrag figure img {
        width: 100%;
        height: auto;
        max-width: 320px;
    }
}
/* =====================================
   AKTUELLES – FEINSCHLIFF
   ===================================== */

/* Abstand nach "Dafür stehen wir" etwas reduzieren */
.aktuelles-startseite {
    padding-top: 25px;
    padding-bottom: 35px;
}

/* Überschrift Aktuelles */
.aktuelles-startseite > .ce_headline {
    margin-bottom: 20px;
}

/* Meldung kompakter */
.aktuelles-eintrag {
    grid-template-columns: 160px 1fr;
    column-gap: 25px;
    padding: 20px 0 24px;
}

/* Vorschaubild */
.aktuelles-eintrag figure img {
    width: 160px;
    height: 105px;
    object-fit: cover;
}

/* Meldungsüberschrift */
.aktuelles-eintrag h3 {
    margin: 2px 0 8px;
    font-size: 21px;
}

/* Beschreibung */
.aktuelles-eintrag p {
    margin: 0;
    line-height: 1.5;
}
/* =====================================
   AKTUELLES – ZWEISPALTIGES LAYOUT
   ===================================== */

.aktuelles-layout {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 55px;
    align-items: start;
}

.aktuelles-sidebar {
    border-right: 1px solid #ddd8ce;
    padding-right: 30px;
}

.aktuelles-content {
    min-width: 0;
}
/* =====================================
   AKTUELLES – HEADERBILD
   ===================================== */

.aktuelles-headerbild {
    width: 100%;
    margin-bottom: 30px;
}

.aktuelles-headerbild figure {
    width: 100%;
    margin: 0;
}

.aktuelles-headerbild img {
    display: block;
    width: 100%;
    height: 320px;
    object-fit: cover;
    object-position: center;
}
/* =====================================
   AKTUELLES – THEMENNAVIGATION
   ===================================== */

.aktuelles-themen {
    padding-right: 35px;
}

/* einzelne Links */
.aktuelles-themen a {
    display: block;
    padding: 12px 28px 12px 0;

    color: #173f4a;
    text-decoration: none;
    font-weight: 500;
    line-height: 1.4;

    border-bottom: 1px solid #ddd8ce;

    position: relative;
}

/* Pfeil rechts */
.aktuelles-themen a::after {
    content: "→";
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);

    color: #b6924b;
    font-size: 16px;
}

/* Maus darüber */
.aktuelles-themen a:hover {
    color: #b6924b;
}

/* erster Link */
.aktuelles-themen a:first-child {
    border-top: 1px solid #ddd8ce;
}
/* =====================================
   AKTUELLES – INHALTSBEREICH
   ===================================== */

/* Links im rechten Inhaltsbereich */
.aktuelles-inhalt a {
    color: #173f4a;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease;
}

/* dezente Unterstreichung */
.aktuelles-inhalt a {
    border-bottom: 1px solid #b6924b;
}

/* Hover */
.aktuelles-inhalt a:hover {
    color: #b6924b;
}
/* =====================================
   STARTSEITE – AKTUELLES
   ===================================== */

/* Liste der Meldungen */
.startseite-aktuelles-liste {
    max-width: 680px;
}

/* Einzelner Beitrag */
.startseite-aktuelles-beitrag {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 24px;
    align-items: start;

    padding: 22px 0;
    border-bottom: 1px solid #ddd8ce;
}

/* Erster Beitrag etwas näher an die Überschrift */
.startseite-aktuelles-beitrag:first-child {
    padding-top: 10px;
}

/* Bild */
.startseite-aktuelles-beitrag figure {
    margin: 0;
    width: 180px;
    height: 120px;
}

.startseite-aktuelles-beitrag figure img {
    display: block;
    width: 180px;
    height: 120px;
    object-fit: cover;
}

/* Textbereich */
.startseite-aktuelles-beitrag .text {
    margin: 0;
}

/* Absätze */
.startseite-aktuelles-beitrag p {
    margin: 0 0 7px;
    line-height: 1.4;
}

/* Responsive Darstellung */
@media (max-width: 700px) {
    .startseite-aktuelles-beitrag {
        grid-template-columns: 120px 1fr;
        gap: 16px;
    }

    .startseite-aktuelles-beitrag figure,
    .startseite-aktuelles-beitrag figure img {
        width: 120px;
        height: 90px;
    }
}
/* =====================================
   STARTSEITE – AKTUELLES TYPOGRAFIE
   ===================================== */

/* Kategorie "AKTUELLES" */
.startseite-aktuelles-beitrag .aktuelles-kategorie {
    margin: 0 0 5px 0;
    color: #b6924b;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

/* Überschrift des Beitrags */
.startseite-aktuelles-beitrag h3 {
    margin: 0 0 7px 0;
    color: #173f4a;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;
}

/* Beschreibung */
.startseite-aktuelles-beitrag .aktuelles-teaser {
    margin: 0 0 9px 0;
    color: #333333;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.4;
}

/* "Weiterlesen →" */
.startseite-aktuelles-beitrag .aktuelles-link {
    margin: 0;
    color: #173f4a;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
}

/* Pfeil und Text reagieren später schön auf Links */
.startseite-aktuelles-beitrag .aktuelles-link a {
    color: inherit;
    text-decoration: none;
}

.startseite-aktuelles-beitrag .aktuelles-link a:hover {
    color: #b6924b;
}
/* =====================================
   STARTSEITE – AKTUELLES FARBEN
   ===================================== */

/* Überschriften der Beiträge */
.startseite-aktuelles-beitrag h3 {
    color: #173f4a;
}

/* Beschreibungstext */
.startseite-aktuelles-beitrag .aktuelles-teaser {
    color: #173f4a;
}

/* Weiterlesen */
.startseite-aktuelles-beitrag .aktuelles-link {
    color: #173f4a;
}

/* Überschrift "Aktuelles" */
.startseite-aktuelles-ueberschrift {
    color: #173f4a;
    margin-bottom: 28px;
}

/* Goldener Strich unter "Aktuelles" */
.startseite-aktuelles-ueberschrift::after {
    content: "";
    display: block;
    width: 42px;
    height: 2px;
    background-color: #173f4a;
    margin-top: 10px;
}
/* =========================================
   STARTSEITE – RECHTE SPALTE AKTUELLES
   Unsere Themen + Termine
   ========================================= */


/* ---------- UNSERE THEMEN ---------- */

.aktuelles-themen-startseite {
    background: #f4f1ea;
    padding: 28px 32px 30px;
}

/* Überschrift */
.aktuelles-themen-startseite h2 {
    margin: 0 0 24px;
    color: #173f4a;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 27px;
    font-weight: 600;
    line-height: 1.2;
}

/* Goldener Strich */
.aktuelles-themen-startseite h2::after {
    content: "";
    display: block;
    width: 38px;
    height: 2px;
    margin-top: 9px;
    background: #b6924b;
}

/* Themenlinks */
.aktuelles-themen-startseite a {
    display: block;
    position: relative;
    padding: 8px 28px 8px 0;

    color: #173f4a;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.35;

    text-decoration: none;
    border-bottom: 1px solid #ddd8ce;
}

/* Pfeil rechts */
.aktuelles-themen-startseite a::after {
    content: "›";
    position: absolute;
    right: 2px;
    color: #b6924b;
    font-size: 20px;
    line-height: 1;
}

.aktuelles-themen-startseite a:hover {
    color: #b6924b;
}


/* ---------- TERMINE ---------- */

.aktuelles-termine {
    padding: 26px 32px 10px;
}

/* Überschrift Termine */
.aktuelles-termine h2 {
    margin: 0 0 22px;
    color: #173f4a;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 27px;
    font-weight: 600;
    line-height: 1.2;
}

/* Goldener Strich */
.aktuelles-termine h2::after {
    content: "";
    display: block;
    width: 38px;
    height: 2px;
    margin-top: 9px;
    background: #b6924b;
}


/* ---------- EINZELNER TERMIN ---------- */

.termin-zeile {
    display: flex;
    align-items: center;
    gap: 20px;

    padding: 15px 0;
    border-bottom: 1px solid #ddd8ce;
}

/* Datumskästchen */
.termin-datum {
    flex: 0 0 58px;
    width: 58px;
    min-height: 58px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    background: #f4f1ea;
    color: #173f4a;
}

/* Tag */
.termin-tag {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
    line-height: 1;
}

/* Monat */
.termin-monat {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
}

/* Text rechts vom Datum */
.termin-info {
    flex: 1;
}

/* Terminname */
.termin-titel {
    margin: 0 0 5px;
    color: #173f4a;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35;
}

/* Ort */
.termin-ort {
    margin: 0;
    color: #657076;
    font-size: 13px;
}
/* =====================================
   STARTSEITE – AKTUELLES GESAMTBEREICH
   ===================================== */

/* Zwei Spalten: Beiträge links / Themen + Termine rechts */
.aktuelles-gesamt {
    display: grid;
    grid-template-columns: 1.25fr 0.95fr;
    gap: 35px;
    align-items: start;
    margin-top: 30px;
    margin-bottom: 50px;
}

/* Linke Spalte */
.aktuelles-links {
    min-width: 0;
}

/* Rechte Spalte */
.aktuelles-rechts {
    min-width: 0;
    background: #f5f2eb;
    padding: 32px 36px;
}

/* Überschriften rechts */
.aktuelles-rechts h2 {
    color: #173f4a;
    margin-top: 0;
    margin-bottom: 25px;
}

/* Responsive: untereinander auf kleineren Bildschirmen */
@media (max-width: 900px) {
    .aktuelles-gesamt {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .aktuelles-rechts {
        padding: 25px;
    }
}
/* =====================================
   STARTSEITE – TERMINE WEISSER BEREICH
   ===================================== */

.aktuelles-termine {
    background: #ffffff;
    margin-left: -45px;
    margin-right: -45px;
    margin-bottom: -45px;
    padding: 30px 45px 35px;
}
/* =====================================
   STARTSEITE – TERMINE KOPFZEILE
   ===================================== */
/* =====================================
   STARTSEITE – TERMINE KOPFZEILE
   ===================================== */

.aktuelles-termine {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: start;
}

/* Überschrift */
.termine-ueberschrift {
    grid-column: 1;
    grid-row: 1;
}

/* Alle Termine */
.termine-alle {
    grid-column: 2;
    grid-row: 1;
    text-align: right;
    padding-top: 10px;
}

.termine-alle p {
    margin: 0;
}

/* Termine über die gesamte Breite */
.aktuelles-termine > :not(.termine-ueberschrift):not(.termine-alle) {
    grid-column: 1 / -1;
}

.termine-alle a {
    color: #173f4a;
    font-weight: 600;
    text-decoration: none;
}

.termine-alle a:hover {
    color: #b6924b;
}
/* =====================================
   STARTSEITE – UNSERE THEMEN FEINSCHLIFF
   ===================================== */

/* Themenbereich */
.aktuelle-themen {
    padding: 45px 55px 20px;
}

/* einzelne Themenlinks */
.aktuelle-themen a {
    display: block;
    position: relative;

    padding: 11px 30px 11px 0;

    color: #173f4a;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.35;
    text-decoration: none;

    border-bottom: 1px solid #ddd8ce;
}

/* goldener Pfeil rechts */
.aktuelle-themen a::after {
    content: "›";
    position: absolute;
    right: 3px;

    color: #b6924b;
    font-size: 21px;
}

/* Hover */
.aktuelle-themen a:hover {
    color: #b6924b;
}
/* =========================================
   STARTSEITE – RECHTE SPALTE WIE VORLAGE
   ========================================= */

/* Gesamter Aktuelles-Bereich bleibt weiß */
.aktuelles-gesamt {
    background: #ffffff;
}


/* -----------------------------------------
   UNSERE THEMEN – GRAU/BEIGE BOX
   ----------------------------------------- */

.aktuelle-themen {
    background: #f3f0e9;
    padding: 42px 48px 28px;
    box-sizing: border-box;
}

/* Themenüberschrift */
.aktuelle-themen h2 {
    margin-top: 0;
    margin-bottom: 28px;
}

/* Themenlinks etwas kompakter */
.aktuelle-themen a {
    padding-top: 10px;
    padding-bottom: 10px;
}


/* -----------------------------------------
   TERMINE – WEISSER BLOCK
   ----------------------------------------- */

.aktuelle-termine {
    position: relative;
    background: #ffffff;
    padding: 34px 48px 32px;
    box-sizing: border-box;
}

/* Überschrift Termine */
.aktuelle-termine h2 {
    margin-top: 0;
}

/* Grau/beiger Streifen rechts neben Termine */
.aktuelle-termine::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 28px;
    background: #f3f0e9;
}


/* -----------------------------------------
   ALLE TERMINE
   ----------------------------------------- */

.aktuelle-termine .termine-alle {
    padding-top: 7px;
}

.aktuelle-termine .termine-alle a {
    font-size: 15px;
    font-weight: 600;
    color: #173f4a;
    text-decoration: none;
}

.aktuelle-termine .termine-alle a:hover {
    color: #b6924b;
}


/* -----------------------------------------
   MOBIL
   ----------------------------------------- */

@media (max-width: 768px) {

    .aktuelle-themen,
    .aktuelle-termine {
        padding-left: 25px;
        padding-right: 25px;
    }

    .aktuelle-termine::after {
        display: none;
    }
}
/* =====================================
   TERMINE – BREITE AN VORLAGE ANPASSEN
   ===================================== */

.aktuelle-termine {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

/* Termine und Themen exakt bündig */
.aktuelle-themen,
.aktuelle-termine {
    box-sizing: border-box;
}
/* =========================================
   STARTSEITE – RECHTE SPALTE
   Unsere Themen + Termine
   ========================================= */


/* ---------- UNSERE THEMEN ---------- */

.aktuelle-themen {
    background: #f3f0e9;
    padding: 48px 42px 0;
    box-sizing: border-box;
}

/* Überschrift */
.aktuelle-themen h2 {
    margin: 0 0 38px 0;
    color: #173f4a;
}

/* kleiner goldener Strich */
.aktuelle-themen h2::after {
    content: "";
    display: block;
    width: 44px;
    height: 2px;
    margin-top: 12px;
    background: #b6924b;
}

/* Themenlinks */
.aktuelle-themen a {
    position: relative;
    display: block;
    padding: 10px 30px 10px 0;

    color: #173f4a;
    text-decoration: none;
    font-weight: 500;
    line-height: 1.35;

    border-bottom: 1px solid #ddd8ce;
}

/* goldener Pfeil ganz rechts */
.aktuelle-themen a::after {
    content: "›";
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%);

    color: #b6924b;
    font-size: 22px;
    line-height: 1;
}

.aktuelle-themen a:hover {
    color: #b6924b;
}


/* ---------- TERMINE ---------- */

.aktuelle-termine {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 34px 42px 38px;

    background: #ffffff;
    box-sizing: border-box;
}

/* Überschrift */
.aktuelle-termine h2 {
    margin: 0;
    color: #173f4a;
}

/* goldener Strich unter Termine */
.aktuelle-termine h2::after {
    content: "";
    display: block;
    width: 44px;
    height: 2px;
    margin-top: 12px;
    background: #b6924b;
}


/* ---------- KOPFZEILE TERMINE ---------- */

.termine-ueberschrift {
    display: inline-block;
    width: 58%;
    vertical-align: top;
}

.termine-alle {
    display: inline-block;
    width: 41%;
    padding-top: 10px;

    text-align: right;
    vertical-align: top;
    box-sizing: border-box;
}

.termine-alle p {
    margin: 0;
}

.termine-alle a {
    color: #173f4a;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid #ddd8ce;
    padding-bottom: 7px;
}

.termine-alle a:hover {
    color: #b6924b;
}


/* ---------- EINZELNE TERMINE ---------- */

.aktuelle-termine .termin-eintrag {
    padding: 20px 0;
    border-bottom: 1px solid #ddd8ce;
}


/* ---------- MOBIL ---------- */

@media (max-width: 768px) {

    .aktuelle-themen,
    .aktuelle-termine {
        padding-left: 25px;
        padding-right: 25px;
    }

    .termine-ueberschrift,
    .termine-alle {
        display: block;
        width: 100%;
    }

    .termine-alle {
        margin-top: 12px;
        text-align: left;
    }
}
/* =========================================
   TERMINE – FEINSCHLIFF NACH VORLAGE
   ========================================= */

.aktuelle-termine {
    position: relative;
    background: #ffffff;
    padding: 34px 42px 38px;
    box-sizing: border-box;

    /* rechts bleibt der beige Hintergrund sichtbar */
    width: calc(100% - 28px);
}

/* Überschrift */
.aktuelle-termine .termine-ueberschrift {
    display: block;
    margin: 0;
    padding: 0;
}

.aktuelle-termine h2 {
    margin: 0;
    color: #173f4a;
}

/* goldener Strich unter Termine */
.aktuelle-termine h2::after {
    content: "";
    display: block;
    width: 44px;
    height: 2px;
    margin-top: 12px;
    background: #b6924b;
}

/* Alle Termine oben rechts positionieren */
.aktuelle-termine .termine-alle {
    position: absolute;
    top: 39px;
    right: 38px;
    width: auto;
    padding: 0;
    margin: 0;
    text-align: right;
}

.aktuelle-termine .termine-alle p {
    margin: 0;
}

.aktuelle-termine .termine-alle a {
    display: inline-block;
    color: #173f4a;
    font-weight: 600;
    text-decoration: none;
    padding-bottom: 7px;
    border-bottom: 1px solid #ddd8ce;
}

.aktuelle-termine .termine-alle a:hover {
    color: #b6924b;
}
/* =========================================
   UNSERE THEMEN – KOMPAKTER NACH VORLAGE
   ========================================= */

/* Themenbereich insgesamt kompakter */
.aktuelle-themen {
    padding-top: 42px;
    padding-bottom: 26px;
}

/* Überschrift */
.aktuelle-themen h2 {
    margin-top: 0;
    margin-bottom: 0;
}

/* goldener Strich unter der Überschrift */
.aktuelle-themen h2::after {
    content: "";
    display: block;
    width: 44px;
    height: 2px;
    margin-top: 12px;
    background: #b6924b;
}

/* Abstand zwischen Überschrift und Themenlinks reduzieren */
.aktuelle-themen .themenlinks {
    margin-top: 30px;
}

/* einzelne Themenzeilen etwas kompakter */
.aktuelle-themen .themenlinks a {
    padding-top: 9px;
    padding-bottom: 9px;
    line-height: 1.3;
}
/* =====================================
   PREFOOTER – MITGLIED WERDEN
   ===================================== */

.prefooter-mitglied {
    background-color: #214b5d;
    min-height: 170px;
    padding: 35px 70px;

    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 60px;

    box-sizing: border-box;
}

/* Textbereich */
.prefooter-text {
    max-width: 620px;
    color: #ffffff;
}

.prefooter-text h2,
.prefooter-text h3 {
    color: #ffffff;
    margin: 0 0 12px 0;
    font-size: 24px;
    line-height: 1.2;
}

.prefooter-text p {
    color: #ffffff;
    margin: 0;
    font-size: 16px;
    line-height: 1.5;
}

/* Buttonbereich */
.mitglied-cta-button {
    margin: 0;
}

.mitglied-cta-button p {
    margin: 0;
}

.mitglied-cta-button a {
    display: inline-block;
    min-width: 220px;
    padding: 14px 24px;

    color: #ffffff;
    border: 1px solid rgba(255,255,255,0.8);
    text-decoration: none;
    text-align: center;
    font-weight: 500;

    box-sizing: border-box;
}

.mitglied-cta-button a:hover {
    background: #ffffff;
    color: #173f4a;
}
/* =====================================
   PREFOOTER – HINTERGRUNDBILD
   ===================================== */

.mitglied-cta {
    background-image:
        linear-gradient(
            90deg,
            rgba(31, 79, 94, 0.25) 0%,
            rgba(31, 79, 94, 0.75) 35%,
            rgba(31, 79, 94, 1) 65%
        ),
        url("../../files/amtsrichterverband/prefooter.jpg");

    background-size: cover;
    background-position: left center;
    background-repeat: no-repeat;
}
/* =====================================
   PREFOOTER – HINTERGRUNDBILD
   ===================================== */

/* =====================================
   PREFOOTER – WIE VORLAGE
   ===================================== */

.prefooter-mitglied {
    min-height: 170px;
    padding: 30px 70px;

    background-color: #214b5d;

    background-image:
        linear-gradient(
            90deg,
            rgba(31, 79, 94, 0) 0%,
            rgba(31, 79, 94, 0) 10%,
            rgba(31, 79, 94, 0.15) 13%,
            rgba(31, 79, 94, 0.40) 15%,
            rgba(31, 79, 94, 0.70) 17%,
            rgba(31, 79, 94, 0.90) 19%,
            rgba(31, 79, 94, 1) 21%
),

        url("../../files/amtsrichterverband/prefooter.jpg");

    background-size: auto 120%;
    background-position: left center;
    background-repeat: no-repeat;
    background-color: #1f4f5e;

    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 60px;

    box-sizing: border-box;
}

/* Textblock erst rechts vom Bild beginnen lassen */
.prefooter-text {
    margin-left: 27%;
    max-width: 520px;
}

/* Überschrift kompakter wie in der Vorlage */
.prefooter-text h2,
.prefooter-text h3 {
    font-size: 22px;
    line-height: 1.15;
    margin: 0 0 12px;
}

/* Beschreibung kleiner */
.prefooter-text p {
    font-size: 14px;
    line-height: 1.45;
    margin: 0;
    max-width: 500px;
}
/* =====================================
   FOOTER – UNTERE ZEILE
   ===================================== */

#footer {
    background: #173f4a;
}

#footer .footer-inner {
    min-height: 135px;
    padding: 30px 70px;

    display: grid;
    grid-template-columns: 250px 1fr auto;
    align-items: center;
    gap: 40px;

    box-sizing: border-box;
}

/* Logo + Verbandsname */
#footer .footer-brand {
    display: flex;
    align-items: center;
    gap: 14px;
}

#footer .footer-name {
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
}

/* Navigation */
#footer .footer-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
}

#footer .footer-nav a {
    color: #ffffff;
    font-size: 14px;
    font-weight: 400;
    text-decoration: none;
    padding: 0 18px;
    border-right: 1px solid rgba(255,255,255,0.25);
}

#footer .footer-nav a:last-child {
    border-right: none;
}

#footer .footer-nav a:hover {
    color: #d1b16a;
}

/* rechter Bereich */
#footer .footer-actions {
    display: flex;
    align-items: center;
    gap: 15px;
}

#footer .footer-top {
    width: 30px;
    height: 30px;
    border: 1px solid rgba(255,255,255,0.5);

    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;
    text-decoration: none;
    font-size: 17px;
}
/* =====================================
   FOOTER – FINALES DESIGN
   ===================================== */

#footer {
    background: #173f4a;
}

.footer-inner {
    min-height: 190px;
    padding: 45px 70px;

    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 70px;

    box-sizing: border-box;
}


/* Logo + Verbandsname */
.footer-brand {
    display: flex;
    align-items: center;
    gap: 22px;
    white-space: nowrap;
}

.footer-logo {
    width: 34px;
    height: auto;
    display: block;

    /* dunkelblaues Logo weiß darstellen */
    filter: brightness(0) invert(1);
}

.footer-brand span {
    color: #ffffff;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.2px;
}


/* Navigation */
.footer-nav {
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer-nav a {
    color: #ffffff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    padding: 0 24px;
    line-height: 32px;
    border-right: 1px solid rgba(255,255,255,0.28);
}

.footer-nav a:first-child {
    border-left: 1px solid rgba(255,255,255,0.28);
}

.footer-nav a:hover {
    color: #d8bd7a;
}


/* Nach-oben-Pfeil */
.footer-top {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 46px;
    height: 46px;

    border: 1px solid rgba(255,255,255,0.65);
    color: #ffffff;
    text-decoration: none;
    font-size: 25px;

    box-sizing: border-box;
}

.footer-top:hover {
    background: #ffffff;
    color: #173f4a;
}


/* Tablet / kleinere Bildschirme */
@media (max-width: 1100px) {

    .footer-inner {
        padding: 40px;
        gap: 35px;
    }

    .footer-nav a {
        padding: 0 14px;
        font-size: 15px;
    }
}


/* Smartphone */
@media (max-width: 800px) {

    .footer-inner {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        min-height: auto;
        padding: 40px 25px;
        gap: 30px;
    }

    .footer-nav {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 12px 20px;
    }

    .footer-nav a,
    .footer-nav a:first-child {
        padding: 0;
        border: none;
    }

    .footer-top {
        align-self: flex-end;
    }
}
/* =====================================
   FOOTER – FEINSCHLIFF
   ===================================== */

.footer-inner {
    min-height: 175px;
    padding: 40px 70px;
    gap: 55px;
}

/* Logo */
.footer-logo {
    width: 30px;
    height: auto;
}

/* Verbandsname */
.footer-brand span {
    font-size: 19px;
}

/* Links nicht umbrechen */
.footer-nav a {
    white-space: nowrap;
    padding: 0 20px;
}

/* Navigation soll genügend Platz bekommen */
.footer-nav {
    min-width: 0;
    flex-wrap: nowrap;
}
/* FOOTER – HÖHE KOMPAKTER */

#footer {
    min-height: 0;
}

.footer-inner {
    min-height: 140px;
    padding: 30px 70px;
}
/* =========================================
   FOOTER – FINALER FEINSCHLIFF
   ========================================= */

/* ---------- PREFOOTER ---------- */

#prefooter .prefooter-mitglied {
    min-height: 260px;
    padding: 45px 70px;

    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 60px;

    box-sizing: border-box;
}

/* Textbereich des Prefooters */
#prefooter .prefooter-text {
    margin-left: 360px;
    max-width: 760px;
}

#prefooter .prefooter-text h2 {
    margin-top: 0;
    margin-bottom: 18px;
}

#prefooter .prefooter-text p {
    margin: 0;
    max-width: 720px;
    line-height: 1.45;
}


/* =========================================
   UNTERER FOOTER
   ========================================= */

#footer {
    min-height: 140px;
}

#footer .footer-inner {
    min-height: 140px;
    padding: 30px 70px;

    display: grid;
    grid-template-columns: 360px 1fr auto;
    align-items: center;

    box-sizing: border-box;
}


/* ---------- LOGO + VERBAND ---------- */

.footer-brand {
    display: flex;
    align-items: center;
    gap: 18px;

    white-space: nowrap;
}

.footer-brand img {
    width: 38px;
    height: auto;
    display: block;
    filter: brightness(0) invert(1);
}

.footer-name {
    margin: 0;

    font-family: inherit;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;

    color: #ffffff;
}


/* ---------- NAVIGATION ---------- */

.footer-nav {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.footer-nav a {
    display: flex;
    align-items: center;

    min-height: 38px;
    padding: 0 28px;

    color: #ffffff;
    text-decoration: none;
    white-space: nowrap;

    border-left: 1px solid rgba(255,255,255,0.25);
}

/* Über uns beginnt an derselben Achse wie
   der Text im Prefooter */

.footer-nav a:first-child {
    padding-left: 0;
    border-left: none;
}


/* ---------- NACH-OBEN-BUTTON ---------- */

.footer-top {
    margin-left: 35px;
}
/* Der Verband – Wer wir sind */

.verband-intro {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(260px, 0.8fr);
    gap: 60px;
    align-items: start;
    margin-top: 25px;
    margin-bottom: 60px;
}

.verband-faktenbox {
    background: #f4f1e9;
    border-top: 3px solid #b6924b;
    padding: 35px 32px;
    margin-top: 55px
}

.verband-faktenbox p {
    margin: 0;
    line-height: 1.5;
}

.verband-faktenbox strong {
    display: block;
    margin-bottom: 10px;
    color: #173f4a;
    font-size: 32px;
    line-height: 1.1;
    font-weight: 600;
}

/* Mobil untereinander */
@media (max-width: 800px) {
    .verband-intro {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}
/* Der Verband – Werte */

.verband-werte {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 35px;
    margin-bottom: 70px;
}

.verband-wert {
    padding: 32px 40px 35px 0;
    border-top: 1px solid #ddd8ce;
}

.verband-wert:nth-child(odd) {
    padding-right: 55px;
    border-right: 1px solid #ddd8ce;
}

.verband-wert:nth-child(even) {
    padding-left: 55px;
}

.verband-wert h3 {
    margin: 0 0 14px;
    color: #173f4a;
    font-size: 22px;
}

.verband-wert h3::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 2px;
    margin-right: 12px;
    vertical-align: middle;
    background: #b6924b;
}

.verband-wert p {
    margin: 0;
    line-height: 1.55;
}

/* Mobil */
@media (max-width: 800px) {
    .verband-werte {
        grid-template-columns: 1fr;
    }

    .verband-wert,
    .verband-wert:nth-child(odd),
    .verband-wert:nth-child(even) {
        padding: 25px 0;
        border-right: none;
    }
}
/* Der Verband – Unsere Ziele */

.verband-ziele {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin-top: 35px;
    margin-bottom: 70px;
    counter-reset: ziel;
}

.verband-ziel {
    position: relative;
    padding: 38px 40px 40px;
    background: #f4f1e9;
    counter-increment: ziel;
}

.verband-ziel::before {
    content: "0" counter(ziel);
    display: block;
    margin-bottom: 18px;
    color: #b6924b;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.08em;
}

.verband-ziel h3 {
    margin: 0 0 14px;
    color: #173f4a;
    font-size: 22px;
}

.verband-ziel p {
    margin: 0;
    line-height: 1.55;
}

/* Mobil */
@media (max-width: 800px) {
    .verband-ziele {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .verband-ziel {
        padding: 30px 25px;
    }
}
/* Der Verband – Überblick */

.verband-ueberblick {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin-top: 35px;
    margin-bottom: 70px;
}

.verband-ueberblick-spalte {
    padding: 15px 55px 20px 0;
}

.verband-ueberblick-spalte + .verband-ueberblick-spalte {
    padding-left: 55px;
    padding-right: 0;
    border-left: 1px solid #ddd8ce;
}

.verband-ueberblick-spalte h3 {
    margin: 0 0 18px;
    color: #173f4a;
    font-size: 22px;
}

.verband-ueberblick-spalte p {
    margin-top: 0;
    line-height: 1.6;
}

/* Mobil */
@media (max-width: 800px) {
    .verband-ueberblick {
        grid-template-columns: 1fr;
    }

    .verband-ueberblick-spalte,
    .verband-ueberblick-spalte + .verband-ueberblick-spalte {
        padding: 25px 0;
        border-left: none;
    }

    .verband-ueberblick-spalte + .verband-ueberblick-spalte {
        border-top: 1px solid #ddd8ce;
    }
}
/* Der Verband – Überblick */

.verband-ueberblick-spalten {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin-top: 40px;
    margin-bottom: 60px;
}

.verband-ueberblick-links {
    padding-right: 70px;
}

.verband-ueberblick-rechts {
    padding-left: 70px;
    border-left: 1px solid #ddd8ce;
}
/* Der Verband – Jahreszahl */

.verband-jahreszahl {
    margin-bottom: 18px;
}

.verband-jahreszahl p {
    margin: 0;
    color: #b6924b;
    font-size: 34px;
    font-weight: 700;
    line-height: 1;
}

/* Der Verband – Weiterführende Links */

.verband-links {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin-top: 45px;
    margin-bottom: 70px;
}

.verband-links > .verband-linkkarte {
    background: #f4f1e9;
    border-top: 3px solid #b6924b;
    padding: 30px 24px;
    min-width: 0;
    transition: background 0.2s ease;
}

.verband-linkkarte:hover {
    background: #ece6d9;
}

.verband-linkkarte h3 {
    color: #173f4a;
    font-size: 22px;
    margin: 0 0 18px;
}

.verband-linkkarte p {
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
}

.verband-linkkarte a {
    color: #173f4a;
    text-decoration: none;
}

.verband-linkkarte a:hover {
    color: #b6924b;
}

@media (max-width: 1000px) {
    .verband-links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .verband-links {
        grid-template-columns: 1fr;
    }
}
/* Der Verband – weiterführende Links */

.verband-links-titel {
    margin-top: 45px;
    margin-bottom: 25px;
}

.verband-links-titel h2 {
    margin: 0;
}
/* Weiterführende Links – anklickbare Kacheln */


/* Weiterführende Links – anklickbare Kacheln */

.verband-kachel {
    position: relative;
    background-color: #f5f2ec;
    border-top: 3px solid #b6924b;
    padding: 30px;
    transition: background-color 0.2s ease;
}

/* Link innerhalb der Kachel */
.verband-kachel .verband-kachel-link {
    color: #173f4a;
    text-decoration: none;
}

.verband-kachel .verband-kachel-link:hover {
    color: #173f4a;
    text-decoration: none;
}

/* Gesamte Kachel anklickbar machen */
.verband-kachel .verband-kachel-link::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}

/* Beschreibung */
.verband-kachel-beschreibung {
    color: #173f4a;
    line-height: 1.6;
}

/* Pfeil unten rechts */
.verband-kachel-pfeil {
    position: absolute;
    right: 25px;
    bottom: 22px;
    color: #b6924b;
    font-size: 24px;
    line-height: 1;
}

/* Hover-Effekt */
.verband-kachel:hover {
    background-color: #ece6da;
}

/* Tastaturbedienung */
.verband-kachel:focus-within {
    outline: 2px solid #b6924b;
    outline-offset: 3px;
}

/* Kacheln – doppelte Pfeile vermeiden */
.verband-kachel > .verband-kachel-pfeil,
.verband-kachel > p > .verband-kachel-pfeil {
    display: none;
}

/* Einheitliche Überschriften */
.verband-kachel h3 {
    color: #173f4a;
    font-size: 26px;
    font-weight: 700;
}
/* Pfeile auf die Kacheln begrenzen */
.verband-kachel {
    position: relative;
}

.verband-kachel .verband-kachel-pfeil {
    position: absolute;
    right: 25px;
    bottom: 22px;
}
/* Pfeile innerhalb der vier Kacheln positionieren */
.verband-kachel .verband-kachel-pfeil {
    position: absolute;
    right: 25px;
    bottom: 22px;
}

/* Text-Link nicht als Positionierungsbezug verwenden */
.verband-kachel .verband-kachel-link {
    position: static;
}

/* =====================================
   UNTERSEITE ÜBER UNS
   ===================================== */

/* Hauptüberschrift */
body .mod_article h1 {
    color: #173f4a;
}

/* Textbereich */
.ueber-uns-text {
    max-width: 920px;
    margin-top: 35px;
    margin-bottom: 60px;
}

/* Abschnittsüberschrift */
.ueber-uns-text h2 {
    color: #173f4a;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 25px;
}

/* Fließtext */
.ueber-uns-text p {
    color: #30363a;
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 22px;
}

/* Darstellung auf Smartphones */
@media (max-width: 768px) {
    .ueber-uns-text {
        max-width: 100%;
        margin-top: 25px;
        margin-bottom: 40px;
    }

    .ueber-uns-text h2 {
        font-size: 24px;
    }

    .ueber-uns-text p {
        font-size: 16px;
        line-height: 1.7;
    }
}

/* Goldener Akzent unter der Seitenüberschrift */
.ueber-uns-titel {
    color: #173f4a;
    position: relative;
    padding-bottom: 22px;
    margin-bottom: 35px;
}

.ueber-uns-titel::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 65px;
    height: 3px;
    background-color: #b6924b;
}

/* ========================================
   ÜBER UNS – GESCHICHTE / ZEITLEISTE
   ======================================== */

/* Gesamter Geschichtsbereich */
.ueber-uns-geschichte {
    max-width: 920px;
    margin-top: 55px;
    margin-bottom: 70px;
}

/* Überschrift */
.ueber-uns-geschichte h2 {
    color: #173f4a;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 25px;
}

/* Einleitung */
.ueber-uns-geschichte > p {
    color: #30363a;
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 35px;
}

/* Zeitleiste */
.verband-timeline {
    position: relative;
    border-left: 2px solid #ddd8ce;
    margin: 35px 0 0 10px;
    padding-left: 35px;
}

/* Einzelner Meilenstein */
.verband-timeline-item {
    position: relative;
    margin-bottom: 35px;
}

/* Goldener Markierungspunkt */
.verband-timeline-item::before {
    content: "";
    position: absolute;
    left: -43px;
    top: 7px;
    width: 12px;
    height: 12px;
    background-color: #b6924b;
    border-radius: 50%;
}

/* Jahreszahl */
.verband-timeline-jahr {
    color: #b6924b;
    font-size: 21px;
    font-weight: 700;
    margin-bottom: 8px;
}

/* Titel des Meilensteins */
.verband-timeline-item h3 {
    color: #173f4a;
    font-size: 21px;
    margin: 0 0 12px;
}

/* Beschreibung */
.verband-timeline-item p {
    color: #30363a;
    font-size: 16px;
    line-height: 1.7;
    margin: 0;
}

/* Smartphone */
@media (max-width: 768px) {
    .ueber-uns-geschichte {
        max-width: 100%;
        margin-top: 40px;
    }

    .verband-timeline {
        padding-left: 25px;
    }

    .verband-timeline-item::before {
        left: -33px;
    }

    .verband-timeline-item h3 {
        font-size: 19px;
    }
}
/* Über uns – Unser Selbstverständnis */

.ueber-uns-selbstverstaendnis {
    background-color: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 35px 45px;
    margin-top: 50px;
    margin-bottom: 50px;
}

.ueber-uns-selbstverstaendnis h2 {
    color: #173f4a;
    margin-top: 0;
    margin-bottom: 25px;
}

.ueber-uns-selbstverstaendnis h3 {
    color: #173f4a;
    margin-top: 30px;
    margin-bottom: 12px;
    font-size: 21px;
}

.ueber-uns-selbstverstaendnis p {
    line-height: 1.8;
    margin-bottom: 20px;
}

/* Darstellung auf Smartphones */
@media (max-width: 768px) {
    .ueber-uns-selbstverstaendnis {
        padding: 25px 20px;
        margin-top: 30px;
        margin-bottom: 30px;
    }
}
/* Für Amtsrichter – Themenkacheln */

.amtsrichter-kacheln {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin-top: 40px;
    margin-bottom: 50px;
}

/* Einzelne Kachel */
.amtsrichter-kachel {
    background: #f5f2ec;
    border-top: 3px solid #b6924b;
    padding: 30px;
    min-height: 180px;
    box-sizing: border-box;
}

/* Ganze Kachel als Link */
.amtsrichter-kachel .verband-kachel-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    color: #173f4a;
    text-decoration: none;
}

/* Überschrift */
.amtsrichter-kachel .verband-kachel-link strong {
    display: block;
    font-size: 21px;
    margin-bottom: 16px;
    color: #173f4a;
}

/* Beschreibung */
.amtsrichter-kachel .verband-kachel-beschreibung {
    display: block;
    color: #4d5559;
    font-size: 16px;
    line-height: 1.6;
}

/* Goldener Pfeil */
.amtsrichter-kachel .verband-kachel-pfeil {
    display: block;
    margin-top: auto;
    padding-top: 20px;
    align-self: flex-end;
    color: #b6924b;
    font-size: 24px;
}

/* Standardabstand des Textabsatzes entfernen */
.amtsrichter-kachel p {
    margin: 0;
}

/* Smartphone */
@media (max-width: 768px) {
    .amtsrichter-kacheln {
        grid-template-columns: 1fr;
    }

    .amtsrichter-kachel {
        min-height: auto;
        padding: 25px;
    }
}
/* Pfeil innerhalb der Themenkachel positionieren */

.amtsrichter-kachel {
    position: relative;
}

.amtsrichter-kachel .verband-kachel-link {
    position: static;
}

.amtsrichter-kachel .verband-kachel-pfeil {
    position: absolute;
    right: 25px;
    bottom: 20px;
    top: auto;
    left: auto;
    transform: none;
    margin: 0;
    padding: 0;
    color: #b6924b;
    font-size: 24px;
}
/* Letzte Themenkachel über beide Spalten */

.amtsrichter-kacheln > .amtsrichter-kachel:last-child {
    grid-column: 1 / -1;
}
/* PEBB§Y – Informationsbox */

.pebbsy-infobox {
    background-color: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 28px 35px;
    margin: 35px 0 45px;
}

.pebbsy-infobox h3 {
    color: #173f4a;
    font-size: 22px;
    margin-top: 0;
    margin-bottom: 18px;
}

.pebbsy-infobox p {
    line-height: 1.7;
    margin-bottom: 15px;
}

.pebbsy-infobox p:last-child {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .pebbsy-infobox {
        padding: 22px 20px;
    }
}
/* PEBB§Y – Rechenbox */

.pebbsy-rechenbox {
    background: #f5f2ec;
    border-top: 4px solid #b6924b;
    padding: 35px 40px;
    margin: 30px 0 50px;
}

.pebbsy-rechenbox h3 {
    color: #173f4a;
    margin-top: 0;
}

.pebbsy-zahlen {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 30px 0;
}

.pebbsy-zahlen > div {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.pebbsy-zahlen strong {
    color: #173f4a;
    font-size: 30px;
}

.pebbsy-zahlen span {
    font-size: 15px;
}

.pebbsy-formel {
    border-top: 1px solid #ddd8ce;
    padding-top: 20px;
}

.pebbsy-ergebnis {
    color: #173f4a;
    font-size: 26px;
    font-weight: 700;
}

.pebbsy-hinweis {
    font-size: 14px;
    color: #62676b;
}

@media (max-width: 768px) {
    .pebbsy-rechenbox {
        padding: 25px 20px;
    }

    .pebbsy-zahlen {
        grid-template-columns: 1fr;
    }
}

/* PEBB§Y – Dokumentenübersicht */

.pebbsy-dokumentenliste {
    display: grid;
    gap: 18px;
    margin: 25px 0 55px;
}

.pebbsy-dokument {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 25px 30px;
}

.pebbsy-dokument h3 {
    color: #173f4a;
    font-size: 21px;
    margin: 0 0 12px;
}

.pebbsy-dokument p {
    line-height: 1.7;
    margin: 0 0 15px;
}

.pebbsy-dokument a {
    color: #173f4a;
    font-weight: 700;
    text-decoration: none;
}

.pebbsy-dokument a:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .pebbsy-dokument {
        padding: 22px 20px;
    }
}

/* PEBB§Y – Dokumentenkacheln einzeln darstellen */

.pebbsy-dokumentenliste {
    background: transparent;
    border: none;
    padding: 0;
}

.pebbsy-dokumentenliste .pebbsy-dokument {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 28px 35px;
    margin-bottom: 20px;
}

.pebbsy-dokumentenliste .pebbsy-dokument:last-child {
    margin-bottom: 0;
}

/* Eil- und Bereitschaftsdienst – Informationsbox */

.bereitschaft-infobox {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 30px 38px;
    margin: 35px 0 50px;
}

.bereitschaft-infobox h3 {
    color: #173f4a;
    font-size: 23px;
    margin-top: 0;
    margin-bottom: 20px;
}

.bereitschaft-infobox p {
    line-height: 1.7;
}

.bereitschaft-infobox ul {
    padding-left: 22px;
    margin-top: 20px;
}

.bereitschaft-infobox li {
    margin-bottom: 14px;
    line-height: 1.7;
}

.bereitschaft-infobox li::marker {
    color: #b6924b;
}

@media (max-width: 768px) {
    .bereitschaft-infobox {
        padding: 24px 20px;
    }
}

/* Bereitschaftsdienst – Rechtsgrundlagen */

.bereitschaft-dokumente {
    margin: 45px 0 60px;
}

/* Einleitung und Hauptüberschrift */
.bereitschaft-dokumente > h2,
.bereitschaft-dokumente .ce_text > h2 {
    margin-bottom: 22px;
}

/* Gesetzestitel als Kachelüberschrift */
.bereitschaft-dokumente h3 {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    color: #173f4a;
    padding: 25px 30px 8px;
    margin: 25px 0 0;
    font-size: 21px;
}

/* Beschreibung unter den Gesetzestiteln */
.bereitschaft-dokumente h3 + p {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 0 30px 25px;
    margin: 0;
    line-height: 1.7;
}

/* Verlinkte Überschriften */
.bereitschaft-dokumente h3 a {
    color: #173f4a;
    text-decoration: none;
}

.bereitschaft-dokumente h3 a:hover {
    color: #b6924b;
    text-decoration: underline;
}

/* Mobile Ansicht */
@media (max-width: 768px) {
    .bereitschaft-dokumente h3 {
        padding: 22px 20px 8px;
    }

    .bereitschaft-dokumente h3 + p {
        padding: 0 20px 22px;
    }
}

/* Rechtsgrundlagen – Link-Hervorhebung */

.bereitschaft-dokumente h3 a {
    color: #173f4a;
    text-decoration: none;
    transition: color 0.2s ease;
}

.bereitschaft-dokumente h3 a::after {
    content: " ↗";
    font-size: 17px;
    color: #b6924b;
}

.bereitschaft-dokumente h3 a:hover {
    color: #b6924b;
    text-decoration: underline;
}

/* Richterräte – Vergleichsbox */

.richterraete-vergleich {
    background-color: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 35px 40px;
    margin: 45px 0 55px;
}

.richterraete-vergleich h2 {
    color: #173f4a;
    margin-top: 0;
    margin-bottom: 28px;
}

.richterraete-vergleich h3 {
    color: #173f4a;
    font-size: 23px;
    margin-top: 25px;
    margin-bottom: 15px;
}

.richterraete-vergleich p {
    line-height: 1.75;
    margin-bottom: 14px;
}

.richterraete-vergleich hr {
    border: 0;
    border-top: 1px solid #d8d0c3;
    margin: 28px 0;
}

@media (max-width: 768px) {
    .richterraete-vergleich {
        padding: 25px 20px;
    }
}

/* Richterräte – Gesetzliche Grundlagen NRW */

/* Gesetzestitel als Beginn der Kachel */
.richterraete-rechtsgrundlagen h3 {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    color: #173f4a;
    padding: 26px 30px 12px;
    margin: 28px 0 0;
    font-size: 21px;
}

/* Beschreibung und Link innerhalb der Kachel */
.richterraete-rechtsgrundlagen h3 + p,
.richterraete-rechtsgrundlagen h3 + p + p {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 0 30px 16px;
    margin: 0;
    line-height: 1.7;
}

/* Unterer Abstand der Kachel */
.richterraete-rechtsgrundlagen h3 + p + p {
    padding-bottom: 28px;
}

/* Gesetzeslink */
.richterraete-rechtsgrundlagen a {
    color: #173f4a;
    font-weight: 700;
    text-decoration: none;
}

.richterraete-rechtsgrundlagen a:hover {
    color: #b6924b;
    text-decoration: underline;
}

/* Mobile Ansicht */
@media (max-width: 768px) {
    .richterraete-rechtsgrundlagen h3 {
        padding: 22px 20px 12px;
    }

    .richterraete-rechtsgrundlagen h3 + p,
    .richterraete-rechtsgrundlagen h3 + p + p {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* Besoldung – Rechtliche Grundlagen */

.besoldung-rechtsbox {
    background-color: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 30px 38px;
    margin: 40px 0 45px;
}

.besoldung-rechtsbox h2 {
    color: #173f4a;
    margin-top: 0;
    margin-bottom: 24px;
}

.besoldung-rechtsbox p {
    line-height: 1.7;
    margin-bottom: 18px;
}

.besoldung-rechtsbox strong {
    color: #173f4a;
}

@media (max-width: 768px) {
    .besoldung-rechtsbox {
        padding: 24px 20px;
    }
}

/* Rechtsschutz – Informationsbox */

.rechtsschutz-infobox {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 32px 38px;
    margin: 40px 0 50px;
}

.rechtsschutz-infobox h2 {
    color: #173f4a;
    margin-top: 0;
    margin-bottom: 24px;
}

.rechtsschutz-infobox h3 {
    color: #173f4a;
    font-size: 21px;
    margin-top: 25px;
    margin-bottom: 12px;
}

.rechtsschutz-infobox p {
    line-height: 1.75;
    margin-bottom: 16px;
}

.rechtsschutz-infobox p:last-child {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .rechtsschutz-infobox {
        padding: 24px 20px;
    }
}

/* Rechtsschutz – Links zu gesetzlichen Grundlagen */

.rechtsschutz-rechtsgrundlagen a {
    color: #173f4a;
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-color: #b6924b;
    transition: color 0.2s ease;
}

.rechtsschutz-rechtsgrundlagen a:hover,
.rechtsschutz-rechtsgrundlagen a:focus {
    color: #b6924b;
}

/* Stellungnahmen & Publikationen – Kacheln */

.publikationen-kacheln {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin: 35px 0 55px;
}

.publikationen-kachel {
    display: flex;
    flex-direction: column;
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 30px;
    text-decoration: none;
    color: #292d30;
    transition: transform 0.2s ease,
                box-shadow 0.2s ease;
}

.publikationen-kachel h2 {
    color: #173f4a;
    font-size: 24px;
    margin: 0 0 18px;
}

.publikationen-kachel p {
    line-height: 1.7;
    margin: 0 0 25px;
}

.publikationen-pfeil {
    margin-top: auto;
    color: #173f4a;
    font-weight: 600;
}

.publikationen-kachel:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.08);
}

.publikationen-kachel:hover .publikationen-pfeil {
    color: #b6924b;
}

@media (max-width: 900px) {
    .publikationen-kacheln {
        grid-template-columns: 1fr;
    }
}

/* Stellungnahmen – Dokumentenübersicht */

.stellungnahmen-liste {
    margin: 30px 0 55px;
}

.stellungnahmen-hinweis {
    background: #f5f2ec;
    border-left: 4px solid #b6924b;
    padding: 30px 38px;
}

.stellungnahmen-hinweis h3 {
    color: #173f4a;
    font-size: 23px;
    margin: 0 0 16px;
}

.stellungnahmen-hinweis p {
    line-height: 1.75;
    margin: 0;
}

@media (max-width: 768px) {
    .stellungnahmen-hinweis {
        padding: 24px 20px;
    }
}

