*{box-sizing:border-box}:root{--blue:#253267;--blue-dark:#18204a;--gold:#e9a71d;--ink:#1e2430;--muted:#657080;--paper:#fff;--soft:#f3f5f9;--line:#dfe4ec;--shadow:0 18px 45px rgba(20,29,63,.12)}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}.container{width:min(1180px,calc(100% - 32px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;color:var(--ink);min-width:0}.brand:hover{text-decoration:none}.brand-logo{width:58px;height:58px;object-fit:contain;flex:0 0 auto}.brand-text{min-width:0}.brand strong,.brand small{display:block}.brand strong{line-height:1.2}.brand small{color:var(--muted);font-size:.78rem}.main-nav{display:flex;gap:8px;align-items:center}.main-nav a{padding:10px 12px;border-radius:10px;color:var(--ink);font-weight:650}.main-nav a.active,.main-nav a:hover{background:var(--soft);color:var(--blue);text-decoration:none}.nav-toggle{display:none;border:1px solid var(--line);background:#fff;padding:10px 14px;border-radius:10px;font-weight:700}.home-hero,.page-hero{background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:#fff}.home-hero{padding:18px 0}.home-hero-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;align-items:center}.home-hero-copy{min-width:0}.shooting-evening-block{min-width:0}.shooting-evening-button{white-space:nowrap;text-align:center}.home-hero h1{font-size:clamp(1.55rem,2.8vw,2.45rem);line-height:1.08;margin:0}.page-hero h1{font-size:clamp(2.4rem,6vw,5rem);line-height:1.02;margin:.2em 0}.lead{font-size:1rem;max-width:760px;margin:.25rem 0 .65rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:800;color:var(--gold)}.highlight-card{background:rgba(255,255,255,.1);padding:13px 15px;border:1px solid rgba(255,255,255,.2);border-radius:16px;box-shadow:var(--shadow);min-width:0}.highlight-card span,.highlight-card strong{display:block}.shooting-evening-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.home-hero .eyebrow{margin:0 0 2px}.home-hero .button-row{margin-top:0}.home-hero .button-secondary{padding:8px 13px;border-radius:9px;font-size:.88rem}.highlight-card strong{font-size:1.02rem;line-height:1.35;margin-top:3px}.button-row{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;padding:12px 18px;border-radius:12px;background:var(--gold);color:#1f2430;font-weight:800;border:0}.button-small{padding:7px 11px;border-radius:9px;font-size:.84rem}.button:hover{text-decoration:none;filter:brightness(.97)}.button-secondary{background:#fff;color:var(--blue)}.button.large{padding:16px 24px;font-size:1.1rem}.button.full{width:100%}.section{padding:72px 0}.section-muted{background:var(--soft)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-heading h2{margin:0;font-size:2rem}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card,.feature-card,.result-card,.list-card,.detail-box{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 25px rgba(20,29,63,.05)}.card{padding:24px}.card h3{margin:.2rem 0}.card-year{display:inline-flex;background:#edf0fb;color:var(--blue);padding:5px 10px;border-radius:999px;font-weight:800}.feature-card{display:grid;grid-template-columns:minmax(240px,.8fr) 1.2fr;overflow:hidden}.feature-card>img{width:100%;height:100%;object-fit:cover;min-height:340px}.feature-card>div{padding:38px}.page-hero{padding:72px 0;background-size:cover;background-position:center}.page-hero-simple{background:linear-gradient(135deg,var(--blue-dark),var(--blue))}.page-hero p{font-size:1.1rem;max-width:760px}.prose{max-width:900px}.prose h2,.prose h3{color:var(--blue);margin-top:1.7em}.prose img{border-radius:16px}.compact-prose{max-width:920px}.list-stack{display:grid;gap:14px}.list-card{padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.list-card h3{margin:.2rem 0}.event-card{overflow:hidden;padding:0 0 22px}.event-card>*:not(img){margin-left:22px;margin-right:22px}.event-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.event-detail-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:36px;align-items:start}.detail-box{padding:24px;position:sticky;top:104px}.detail-box dl{display:grid;gap:8px}.detail-box dt{font-weight:800;color:var(--blue)}.detail-box dd{margin:0 0 14px}.poster-preview{max-width:780px;margin:auto;border-radius:16px;box-shadow:var(--shadow)}.year-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.year-filter a{padding:8px 13px;border:1px solid var(--line);border-radius:999px}.year-filter a.active{background:var(--blue);color:#fff}.result-card{display:grid;grid-template-columns:100px 1fr;gap:24px;padding:26px}.result-year{font-size:1.5rem;font-weight:900;color:var(--blue)}.document-links{display:flex;gap:10px;flex-wrap:wrap}.document-links a{padding:9px 12px;background:var(--soft);border-radius:10px;font-weight:700}.empty-state{padding:26px;border:1px dashed #b9c2d0;border-radius:16px;color:var(--muted);background:#fff}.narrow{max-width:720px}.center{text-align:center}.site-footer{background:#151b38;color:#fff;padding:38px 0}.footer-grid{display:flex;justify-content:space-between;gap:24px}.site-footer a{color:#fff;margin-left:18px}.flash-wrap{padding-top:14px}.flash{padding:12px 16px;border-radius:12px;margin-bottom:8px}.flash-success{background:#e7f7ed}.flash-warning{background:#fff5d8}.flash-error{background:#fde7e7}.flash-info{background:#eaf0ff}.event-popup[hidden]{display:none}.popup-open{overflow:hidden}.event-popup{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}.event-popup-backdrop{position:absolute;inset:0;background:rgba(5,9,25,.78);backdrop-filter:blur(4px)}.event-popup-dialog{position:relative;width:min(980px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 28px 90px rgba(0,0,0,.35)}.event-popup-close{position:absolute;right:12px;top:10px;z-index:2;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.92);font-size:1.8rem;cursor:pointer}.event-popup-content{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.event-popup-image,.event-popup-pdf{width:100%;height:min(82vh,850px);object-fit:contain;background:#eef0f4}.event-popup-pdf{border:0}.event-popup-text{padding:42px;align-self:center}.event-popup-text h2{font-size:2rem;line-height:1.15;color:var(--blue)}@media(max-width:860px){.nav-toggle{display:block}.main-nav{display:none;position:absolute;left:16px;right:16px;top:70px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.home-hero-grid,.feature-card,.event-detail-grid,.event-popup-content{grid-template-columns:1fr}.card-grid{grid-template-columns:1fr 1fr}.detail-box{position:static}.event-popup-image,.event-popup-pdf{height:auto;max-height:60vh}.event-popup-text{padding:28px}}@media(max-width:600px){.brand-logo{width:48px;height:48px}.brand small{display:none}.shooting-evening-card{grid-template-columns:1fr;align-items:start}.shooting-evening-button{width:auto;justify-self:start}.home-hero{padding:15px 0}.section,.page-hero{padding:48px 0}.card-grid{grid-template-columns:1fr}.section-heading,.footer-grid{align-items:flex-start;flex-direction:column}.site-footer a{margin:0 16px 0 0}.result-card{grid-template-columns:1fr}.event-popup{padding:8px}.event-popup-dialog{max-height:96vh;border-radius:14px}.event-popup-text{padding:22px}.event-popup-text h2{font-size:1.55rem}}

/* Startseiten-Kärtchen */
.home-hero-grid{grid-template-columns:minmax(250px,.8fr) minmax(0,2.2fr);gap:16px}
.home-hero-grid-no-cards{grid-template-columns:1fr}
.homepage-card-grid{display:grid;gap:10px;min-width:0;align-items:stretch;justify-content:end}
.homepage-card-grid-count-1{grid-template-columns:minmax(260px,340px)}
.homepage-card-grid-count-2{grid-template-columns:repeat(2,minmax(240px,320px))}
.homepage-card-grid-count-3{grid-template-columns:repeat(3,minmax(210px,280px))}
.homepage-info-card{display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:12px;box-shadow:none;min-height:0}
.homepage-info-card-title{display:block;color:var(--gold);font-size:.74rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;line-height:1.2}
.homepage-info-card-content{font-size:.88rem;line-height:1.3;margin-top:4px;overflow-wrap:anywhere}
.homepage-info-card-content p,.homepage-info-card-content ul,.homepage-info-card-content ol{margin:.18em 0}
.homepage-info-card-content ul,.homepage-info-card-content ol{padding-left:1.2rem}
.homepage-info-card-content h1,.homepage-info-card-content h2,.homepage-info-card-content h3,.homepage-info-card-content h4,.homepage-info-card-content h5,.homepage-info-card-content h6{font-size:.96rem;line-height:1.25;margin:.2em 0}
.homepage-info-card-content strong{display:inline;font-size:inherit;line-height:inherit;margin:0}
.homepage-info-card-content a{color:#fff;text-decoration:underline}
.homepage-info-card-button{align-self:flex-start;padding:5px 9px;border-radius:8px;font-size:.77rem;line-height:1.2;white-space:nowrap}
@media(max-width:1000px){.home-hero-grid{grid-template-columns:minmax(230px,.7fr) minmax(0,2.3fr)}}
@media(max-width:860px){.home-hero-grid{grid-template-columns:1fr}.homepage-card-grid{justify-content:start}.homepage-card-grid-count-1{grid-template-columns:minmax(260px,340px)}.homepage-card-grid-count-2{grid-template-columns:repeat(2,minmax(240px,320px))}.homepage-card-grid-count-3{grid-template-columns:repeat(3,minmax(200px,280px))}}
@media(max-width:720px){.homepage-card-grid-count-2,.homepage-card-grid-count-3{grid-template-columns:repeat(2,minmax(220px,1fr))}}
@media(max-width:600px){.homepage-card-grid{justify-content:stretch}.homepage-card-grid-count-1,.homepage-card-grid-count-2,.homepage-card-grid-count-3{grid-template-columns:minmax(0,1fr)}.homepage-info-card{padding:10px 12px}}

/* Einheitlicher, kompakter blauer Titelbalken */
:root{--public-hero-height:164px}
.brand strong{white-space:nowrap}
.home-hero,.page-hero{
    height:var(--public-hero-height);
    min-height:var(--public-hero-height);
    padding:0;
    display:flex;
    align-items:center;
    overflow:hidden;
}
.home-hero>.container,.page-hero>.container{width:min(1180px,calc(100% - 32px))}
.home-hero-grid{
    height:100%;
    grid-template-columns:minmax(310px,.9fr) minmax(0,2.1fr);
    align-items:center;
    gap:16px;
}
.home-hero-grid-no-cards{grid-template-columns:1fr}
.home-hero-copy{min-width:0}
.home-hero h1,.page-hero h1{
    margin:0;
    font-size:clamp(1.35rem,2vw,1.75rem);
    line-height:1.08;
    white-space:nowrap;
}
.home-hero .eyebrow{margin:0 0 2px}
.home-hero .lead,.page-hero p{
    margin:.25rem 0 .55rem;
    font-size:.94rem;
    line-height:1.35;
}
.page-hero p{
    max-width:760px;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
}
.home-hero .button-row{margin-top:0}
.home-hero .button-secondary{padding:7px 12px;font-size:.84rem}

@media(max-width:900px){
    .home-hero{
        height:auto;
        min-height:var(--public-hero-height);
        padding:16px 0;
        overflow:visible;
    }
    .home-hero-grid{
        height:auto;
        grid-template-columns:1fr;
    }
    .homepage-card-grid{justify-content:start}
}

@media(max-width:600px){
    :root{--public-hero-height:136px}
    .page-hero{height:var(--public-hero-height);min-height:var(--public-hero-height);padding:0}
    .home-hero{height:auto;min-height:var(--public-hero-height);padding:14px 0}
    .home-hero h1,.page-hero h1{font-size:1.35rem;white-space:nowrap}
    .home-hero .lead,.page-hero p{font-size:.88rem}
}

/* Startseiten-Kärtchen: feste Breite wie bei einer Zweier-Anordnung */
:root{--homepage-card-width:300px}
.homepage-card-grid,
.homepage-card-grid-count-1,
.homepage-card-grid-count-2,
.homepage-card-grid-count-3{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:var(--homepage-card-width);
    grid-template-columns:none;
    justify-content:end;
    gap:10px;
    min-width:0;
    overflow-x:auto;
    scrollbar-width:thin;
    padding-bottom:2px;
}
.homepage-info-card{width:var(--homepage-card-width);min-width:var(--homepage-card-width);max-width:var(--homepage-card-width)}
.homepage-info-card-button{border:0;cursor:pointer;font-family:inherit}

/* Detail-Modal der Startseiten-Kärtchen */
.homepage-card-modal[hidden]{display:none}
.homepage-card-modal-open{overflow:hidden}
.homepage-card-modal{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:20px}
.homepage-card-modal-backdrop{position:absolute;inset:0;background:rgba(5,9,25,.76);backdrop-filter:blur(4px)}
.homepage-card-modal-dialog{position:relative;width:min(760px,94vw);max-height:88vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 28px 90px rgba(0,0,0,.35);outline:none}
.homepage-card-modal-close{position:absolute;right:14px;top:12px;width:40px;height:40px;border:0;border-radius:50%;background:#f0f2f7;color:var(--blue);font-size:1.7rem;line-height:1;cursor:pointer}
.homepage-card-modal-header{padding:30px 68px 16px 30px;border-bottom:1px solid var(--line)}
.homepage-card-modal-header h2{margin:2px 0 0;color:var(--blue);font-size:1.7rem}
.homepage-card-modal-content{padding:26px 30px 32px;max-width:none}
.homepage-card-modal-content>:first-child{margin-top:0}
.homepage-card-modal-content>:last-child{margin-bottom:0}

@media(max-width:900px){
    .homepage-card-grid,
    .homepage-card-grid-count-1,
    .homepage-card-grid-count-2,
    .homepage-card-grid-count-3{justify-content:start;max-width:100%}
}
@media(max-width:600px){
    :root{--homepage-card-width:min(300px,calc(100vw - 32px))}
    .homepage-card-modal{padding:8px}
    .homepage-card-modal-dialog{width:100%;max-height:96vh;border-radius:14px}
    .homepage-card-modal-header{padding:24px 58px 14px 20px}
    .homepage-card-modal-header h2{font-size:1.4rem}
    .homepage-card-modal-content{padding:20px}
}

/* Korrektur: Startseiten-Kärtchen liegen unterhalb des festen blauen Titelbalkens. */
.home-hero-grid,
.home-hero-grid-no-cards{
    grid-template-columns:minmax(0,1fr);
}

.homepage-cards-section{
    position:relative;
    z-index:1;
    background:var(--soft);
    border-bottom:1px solid var(--line);
}

.homepage-cards-section .homepage-card-grid,
.homepage-cards-section .homepage-card-grid-count-1,
.homepage-cards-section .homepage-card-grid-count-2,
.homepage-cards-section .homepage-card-grid-count-3{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:stretch;
    gap:18px;
    width:100%;
    overflow:visible;
    padding:20px 0 24px;
}

.homepage-cards-section .homepage-info-card{
    flex:0 0 300px;
    width:300px;
    min-width:300px;
    max-width:300px;
    min-height:150px;
    background:#fff;
    color:var(--ink);
    border:1px solid var(--line);
    box-shadow:0 8px 24px rgba(20,29,63,.08);
}

.homepage-cards-section .homepage-info-card-title{
    color:var(--blue);
}

.homepage-cards-section .homepage-info-card-content a{
    color:var(--blue);
}

@media(max-width:680px){
    .homepage-cards-section .homepage-card-grid,
    .homepage-cards-section .homepage-card-grid-count-1,
    .homepage-cards-section .homepage-card-grid-count-2,
    .homepage-cards-section .homepage-card-grid-count-3{
        justify-content:center;
        padding:16px 0 20px;
    }

    .homepage-cards-section .homepage-info-card{
        flex-basis:min(300px,100%);
        width:min(300px,100%);
        min-width:0;
        max-width:300px;
    }
}

/* Startseite: zentrierter Titelbalken mit Logo */
.home-hero-welcome{
    min-height:var(--public-hero-height);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    text-align:center;
}
.home-hero-logo{
    width:74px;
    height:74px;
    object-fit:contain;
    flex:0 0 auto;
}
.home-hero-copy{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}
.home-hero h1{
    white-space:nowrap;
    text-align:center;
}
.home-hero .lead{
    max-width:760px;
    margin:.25rem 0 0;
    text-align:center;
}
.home-hero .lead p{margin:0}

/* Bis zu fünf Kärtchen, weiterhin mit fixer Zweier-Breite */
.homepage-cards-container{
    width:min(1640px,calc(100% - 32px));
    margin-inline:auto;
}
.homepage-cards-section .homepage-card-grid,
.homepage-cards-section .homepage-card-grid-count-1,
.homepage-cards-section .homepage-card-grid-count-2,
.homepage-cards-section .homepage-card-grid-count-3,
.homepage-cards-section .homepage-card-grid-count-4,
.homepage-cards-section .homepage-card-grid-count-5{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:stretch;
    gap:18px;
    width:100%;
    overflow:visible;
    padding:20px 0 24px;
}
.homepage-cards-section .homepage-info-card{
    flex:0 0 300px;
    width:300px;
    min-width:300px;
    max-width:300px;
}

/* Wechselnde Startseiten-Bilder */
.homepage-slider-section{
    padding:34px 0 20px;
    background:#fff;
}
.homepage-slider-container{max-width:1380px}
.homepage-slider{
    position:relative;
    overflow:hidden;
    border-radius:20px;
    background:#dfe4ec;
    box-shadow:0 16px 44px rgba(20,29,63,.14);
}
.homepage-slider-viewport{
    position:relative;
    height:var(--homepage-slider-height,300px);
    min-height:180px;
    max-height:700px;
}
.homepage-slide{
    position:absolute;
    inset:0;
    margin:0;
    opacity:0;
    visibility:hidden;
    transition:opacity .75s ease,visibility .75s ease;
}
.homepage-slide.is-active{
    opacity:1;
    visibility:visible;
    z-index:1;
}
.homepage-slide img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    background:#eef1f6;
}
.homepage-slide-caption{
    position:absolute;
    z-index:2;
    left:0;
    right:0;
    bottom:0;
    padding:54px 28px 22px;
    color:#fff;
    background:linear-gradient(transparent,rgba(9,14,36,.82));
    display:grid;
    gap:3px;
}
.homepage-slide-caption strong{font-size:1.35rem}
.homepage-slide-caption span{font-size:.96rem}
.homepage-slider-control{
    position:absolute;
    z-index:3;
    top:50%;
    transform:translateY(-50%);
    width:44px;
    height:44px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.88);
    color:var(--blue);
    font:700 2rem/1 Arial,sans-serif;
    cursor:pointer;
    box-shadow:0 5px 18px rgba(0,0,0,.2);
}
.homepage-slider-prev{left:16px}
.homepage-slider-next{right:16px}
.homepage-slider-dots{
    position:absolute;
    z-index:4;
    left:50%;
    bottom:13px;
    transform:translateX(-50%);
    display:flex;
    gap:8px;
}
.homepage-slider-dot{
    width:10px;
    height:10px;
    padding:0;
    border:1px solid rgba(255,255,255,.9);
    border-radius:50%;
    background:rgba(255,255,255,.35);
    cursor:pointer;
}
.homepage-slider-dot.is-active{background:#fff}

@media(max-width:760px){
    .home-hero-welcome{gap:12px}
    .home-hero-logo{width:52px;height:52px}
    .home-hero h1{font-size:clamp(1.1rem,5.2vw,1.45rem)}
    .home-hero .lead{font-size:.84rem}
    .homepage-slider-section{padding:22px 0 12px}
    .homepage-slider{border-radius:14px}
    .homepage-slider-viewport{height:min(var(--homepage-slider-height,300px),58vh);min-height:180px}
    .homepage-slide-caption{padding:42px 18px 16px}
    .homepage-slide-caption strong{font-size:1.05rem}
    .homepage-slider-control{width:38px;height:38px;font-size:1.7rem}
    .homepage-slider-prev{left:9px}
    .homepage-slider-next{right:9px}
}

@media(max-width:430px){
    .home-hero-welcome{gap:8px}
    .home-hero-logo{width:42px;height:42px}
    .home-hero h1{font-size:1.05rem}
    .home-hero .eyebrow{font-size:.66rem}
    .home-hero .lead{font-size:.78rem}
}

@media(prefers-reduced-motion:reduce){
    .homepage-slide{transition:none}
}

/* Der blaue Balken bleibt auf Startseite und Unterseiten exakt gleich hoch. */
.home-hero{
    height:var(--public-hero-height);
    min-height:var(--public-hero-height);
    padding:0;
    overflow:hidden;
}
.home-hero-welcome{
    height:var(--public-hero-height);
    min-height:0;
}
@media(max-width:900px){
    .home-hero{
        height:var(--public-hero-height);
        min-height:var(--public-hero-height);
        padding:0;
        overflow:hidden;
    }
    .home-hero-welcome{height:var(--public-hero-height);min-height:0}
}

/* Update: automatische Sliderhöhe, Kartenbilder und höher positionierte Modals */
.homepage-slider-viewport{
    transition:height .2s ease;
}

.homepage-info-card.has-image{
    padding:0;
    overflow:hidden;
}
.homepage-info-card-image{
    width:100%;
    height:150px;
    object-fit:cover;
    object-position:center;
    border-bottom:1px solid var(--line);
}
.homepage-info-card.has-image .homepage-info-card-copy{
    padding:14px 15px 8px;
}
.homepage-info-card.has-image .homepage-info-card-button{
    margin:0 15px 15px;
}

.homepage-card-modal{
    place-items:start center;
    padding:clamp(58px,7vh,90px) 20px 20px;
}
.homepage-card-modal-dialog{
    max-height:calc(100vh - clamp(78px,10vh,120px));
}
.homepage-card-modal-image{
    display:block;
    width:100%;
    max-height:58vh;
    object-fit:contain;
    object-position:center;
    background:#eef1f6;
    border-bottom:1px solid var(--line);
}
.homepage-card-modal-image + .homepage-card-modal-content{
    padding-top:22px;
}

.prose [align="center"],
.homepage-info-card-content [align="center"],
.homepage-card-modal-content [align="center"]{
    text-align:center;
}
.prose [align="right"],
.homepage-info-card-content [align="right"],
.homepage-card-modal-content [align="right"]{
    text-align:right;
}
.prose [align="justify"],
.homepage-info-card-content [align="justify"],
.homepage-card-modal-content [align="justify"]{
    text-align:justify;
}

@media(max-width:600px){
    .homepage-card-modal{
        padding:18px 8px 8px;
    }
    .homepage-card-modal-dialog{
        max-height:calc(100vh - 26px);
    }
    .homepage-card-modal-image{
        max-height:48vh;
    }
}


/* Getrennte Logos: weißer Kopfbereich und blauer Startseitenbalken */
:root{
    --header-logo-size:75px;
    --hero-logo-size:135px;
}
.brand-logo{
    width:var(--header-logo-size);
    height:var(--header-logo-size);
    object-fit:contain;
}
.home-hero-logo{
    width:var(--hero-logo-size);
    height:var(--hero-logo-size);
    object-fit:contain;
}
@media(max-width:600px){
    :root{
        --header-logo-size:44px;
        --hero-logo-size:58px;
    }
}

/* Veranstaltungsdetailseite: Plakat links, Daten und Text rechts */
.event-detail-section{
    padding:42px 0 68px;
    background:var(--soft);
}
.event-detail-layout{
    display:grid;
    grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr);
    gap:34px;
    align-items:start;
}
.event-poster-column{
    position:sticky;
    top:98px;
}
.event-poster-card,
.event-data-panel,
.event-text-panel{
    background:#fff;
    border:1px solid var(--line);
    border-radius:20px;
    box-shadow:0 10px 30px rgba(20,29,63,.08);
}
.event-poster-card{
    overflow:hidden;
}
.event-poster-link{
    display:block;
    background:#eef1f6;
}
.event-poster-image{
    display:block;
    width:100%;
    max-height:calc(100vh - 190px);
    min-height:340px;
    object-fit:contain;
    object-position:center top;
    background:#eef1f6;
}
.event-poster-empty{
    min-height:420px;
    display:grid;
    place-items:center;
    padding:32px;
    text-align:center;
    color:var(--muted);
    background:#eef1f6;
}
.event-pdf-button{
    width:calc(100% - 32px);
    margin:16px;
}
.event-content-column{
    min-width:0;
}
.event-data-panel,
.event-text-panel{
    padding:28px 30px;
}
.event-text-panel{
    margin-top:24px;
    border-top:5px solid var(--gold);
}
.event-panel-heading{
    margin-bottom:18px;
}
.event-panel-heading .eyebrow{
    margin:0 0 3px;
}
.event-panel-heading h2{
    margin:0;
    color:var(--blue);
    font-size:1.65rem;
    line-height:1.2;
}
.event-data-list{
    margin:0;
}
.event-data-row{
    display:grid;
    grid-template-columns:118px minmax(0,1fr);
    gap:18px;
    padding:14px 0;
    border-top:1px solid var(--line);
}
.event-data-row:first-child{
    border-top:0;
    padding-top:2px;
}
.event-data-row:last-child{
    padding-bottom:2px;
}
.event-data-row dt{
    font-weight:800;
    color:var(--blue);
}
.event-data-row dd{
    margin:0;
    font-weight:650;
    overflow-wrap:anywhere;
}
.event-intro{
    margin:0 0 22px;
    padding:16px 18px;
    border-left:4px solid var(--gold);
    border-radius:0 12px 12px 0;
    background:#fff8e8;
    font-size:1.04rem;
    font-weight:650;
    line-height:1.55;
}
.event-description{
    max-width:none;
}
.event-description>:first-child{
    margin-top:0;
}
.event-description>:last-child{
    margin-bottom:0;
}

@media(max-width:900px){
    .event-detail-layout{
        grid-template-columns:1fr;
    }
    .event-poster-column{
        position:static;
    }
    .event-poster-card{
        max-width:680px;
        margin-inline:auto;
    }
    .event-poster-image{
        max-height:72vh;
        min-height:0;
    }
}

@media(max-width:600px){
    .event-detail-section{
        padding:24px 0 42px;
    }
    .event-detail-layout{
        gap:20px;
    }
    .event-data-panel,
    .event-text-panel{
        padding:22px 20px;
        border-radius:16px;
    }
    .event-text-panel{
        margin-top:20px;
    }
    .event-data-row{
        grid-template-columns:1fr;
        gap:3px;
        padding:12px 0;
    }
    .event-panel-heading h2{
        font-size:1.4rem;
    }
    .event-intro{
        font-size:.98rem;
    }
}
