.hp-page{--hp-accent:var(--vd-accent,#174e3a);--hp-text:var(--vd-ink,#172b22);--hp-surface:var(--vd-surface,#fff);--hp-line:var(--vd-line,#dedede);color:var(--hp-text);width:100%;padding-bottom:40px}
.hp-block{padding:36px 0;border-bottom:1px solid var(--hp-line);overflow-wrap:anywhere;scroll-margin-top:20px}
.hp-block h2{font-size:clamp(25px,3vw,36px);line-height:1.25;margin:0 0 22px}.hp-block h3{font-size:21px;line-height:1.4;margin:0 0 14px}
.hp-block .hp-copy{white-space:pre-line;font-size:17px;line-height:1.85;max-width:850px;margin:0 0 24px}.hp-tone--soft{background:color-mix(in srgb,var(--hp-accent) 7%,var(--hp-surface));padding-left:28px;padding-right:28px}.hp-tone--accent{background:var(--hp-accent);color:var(--vd-button-text,#fff);padding-left:28px;padding-right:28px}
.hp-page .hp-tone--accent :is(h2,h3,a){color:inherit!important}.hp-tone--accent .hp-card{color:var(--hp-text)}.hp-tone--accent .hp-button{border:1px solid currentColor}
.hp-spacing--compact{padding-top:20px;padding-bottom:20px}.hp-spacing--wide{padding-top:64px;padding-bottom:64px}
.hp-grid{display:grid;grid-template-columns:repeat(var(--hp-columns,2),minmax(0,1fr));gap:24px}.hp-grid>*{min-width:0}.hp-card{padding:24px;border:1px solid var(--hp-line);border-top:4px solid var(--hp-accent);background:var(--hp-surface);border-radius:var(--vd-radius,8px);display:flex;flex-direction:column;align-items:flex-start}
.hp-card :is(p,time){font-size:14px;line-height:1.75;margin:0 0 16px}.hp-card a{margin-top:auto;font-weight:600;font-size:14px;overflow-wrap:anywhere}.hp-card time{font-weight:600}
.hp-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:center}.hp-hero:has(>img){grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.hp-hero h2{font-size:clamp(34px,4vw,60px);font-weight:800;line-height:1.12;letter-spacing:-.035em;max-width:900px}.hp-eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin-bottom:20px}.hp-hero img{width:100%;max-height:450px;object-fit:cover;border-radius:var(--vd-radius,8px)}
.hp-page .hp-button{display:inline-flex;background:var(--hp-accent);color:var(--vd-button-text,#fff)!important;text-decoration:none;font-weight:700;padding:14px 22px;border-radius:var(--vd-radius,8px);margin-top:12px}.hp-more{display:inline-block;margin-top:24px;font-weight:600}
.hp-feature{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:32px;background:var(--hp-accent);color:var(--vd-button-text,#fff);margin:0 0 24px;border-radius:var(--vd-radius,8px)}.hp-page .hp-feature :is(h3,a){color:inherit!important}.hp-feature h3{font-size:28px}.hp-feature a{font-weight:700}.hp-feature p:last-child{margin:0}
.hp-variant--list,.hp-variant--calendar{display:flex;flex-direction:column}.hp-variant--list .hp-card,.hp-variant--calendar .hp-card{display:grid;grid-template-columns:150px minmax(0,1fr) 150px;gap:18px;align-items:center;border-top-width:1px;border-left:4px solid var(--hp-accent)}.hp-variant--list .hp-card p,.hp-variant--calendar .hp-card p{display:none}.hp-events h3.hp-month{margin:16px 0 0}
.hp-page figure{margin:0}.hp-image{width:100%;height:auto;max-height:600px;object-fit:cover;border-radius:var(--vd-radius,8px)}.hp-block--gallery .hp-image{aspect-ratio:4/3;object-fit:cover}.hp-page figcaption{font-size:14px;line-height:1.6;padding-top:10px}.hp-empty{padding:20px;border:1px dashed var(--hp-line);font-size:15px}.hp-edit{display:flex;justify-content:flex-end;font-size:13px;margin-bottom:12px}.hp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.hp-grid{grid-template-columns:repeat(min(var(--hp-columns),2),minmax(0,1fr))}.hp-hero:has(>img){grid-template-columns:1fr}.hp-feature{align-items:flex-start;flex-direction:column}.hp-variant--list .hp-card,.hp-variant--calendar .hp-card{display:flex;align-items:flex-start;gap:8px}}
@media(max-width:550px){.hp-grid{grid-template-columns:minmax(0,1fr)}.hp-block{padding-left:0;padding-right:0}.hp-tone--soft,.hp-tone--accent{padding-left:18px;padding-right:18px}.hp-spacing--wide{padding-top:38px;padding-bottom:38px}.hp-hero h2{font-size:36px}.hp-feature{padding:24px}}

/* Geordnetes Seitenraster: ganze, halbe oder gedrittelte Bausteine. */
.hp-page{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.hp-block{grid-column:span 12;min-width:0}.hp-width--half{grid-column:span 6}.hp-width--third{grid-column:span 4}
.hp-page>.hp-empty{grid-column:1/-1}.hp-width--half .hp-hero h2{font-size:40px}.hp-width--third .hp-hero h2{font-size:30px}
@media(max-width:800px){.hp-width--third{grid-column:span 6}}
@media(max-width:550px){.hp-width--half,.hp-width--third{grid-column:span 12}.hp-width--half .hp-hero h2{font-size:36px}}
/* Kleine geometrische Markenbausteine; die Wort-Bild-Marke bleibt unverändert. */
.hp-hero{position:relative;isolation:isolate}.hp-hero>div{position:relative;z-index:1}
.hp-hero:has(>.hp-brand-motif){padding-right:calc(var(--vd-motif-size,78px) + 54px)}
html[data-visual-style=modular] .hp-brand-motif.vd-motif {
    position:absolute;right:18px;top:28px;width:var(--vd-motif-size,78px);height:var(--vd-motif-size,78px);z-index:0;
}
html[data-visual-style=modular][data-visual-motif=ellipse] .hp-brand-motif.vd-motif {height:calc(var(--vd-motif-size,78px)/2)}
:is(.hp-width--half,.hp-width--third) .hp-hero:has(>.hp-brand-motif){padding-right:0}
:is(.hp-width--half,.hp-width--third) .hp-hero:has(>.hp-brand-motif) .hp-eyebrow{padding-right:70px}
html[data-visual-style=modular] :is(.hp-width--half,.hp-width--third) .hp-brand-motif.vd-motif{width:44px;height:44px;top:0;right:4px}
html[data-visual-style=modular][data-visual-motif=ellipse] :is(.hp-width--half,.hp-width--third) .hp-brand-motif.vd-motif{width:64px;height:32px}
@media(max-width:550px){
 .hp-hero:has(>.hp-brand-motif){padding-right:0}
 .hp-hero:has(>.hp-brand-motif) .hp-eyebrow{padding-right:70px}
 html[data-visual-style=modular] .hp-brand-motif.vd-motif{width:min(var(--vd-motif-size,78px),44px);height:min(var(--vd-motif-size,78px),44px);top:0;right:4px}
 html[data-visual-style=modular][data-visual-motif=ellipse] .hp-brand-motif.vd-motif{width:min(var(--vd-motif-size,78px),64px);height:calc(min(var(--vd-motif-size,78px),64px)/2)}
}
/* Einstellbares Titelbild und dekorativer, frei einfärbbarer Wellenabschluss. */
.hp-banner-block{position:relative;padding:0!important;overflow:hidden;border:0}.hp-banner-block .hp-hero,.hp-banner-block .hp-hero:has(>img){display:grid;grid-template-columns:1fr;min-height:510px;padding:60px 5% 100px;isolation:isolate;color:#fff}.hp-banner-block .hp-hero>img{position:absolute;inset:0;width:100%;height:100%;max-height:none;border-radius:0;object-fit:cover;object-position:center 55%;z-index:-2}.hp-banner-block .hp-hero:has(>img)::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#052314df,#05231455 65%,#05231415)}.hp-banner-block .hp-hero h2{font-family:Georgia,serif;font-style:italic;font-weight:500;max-width:850px;color:inherit!important}.hp-banner-block .hp-copy{max-width:720px}.hp-banner-block .hp-eyebrow{color:inherit}.hp-has-waves{position:relative;padding-bottom:100px}.hp-waves{position:absolute;bottom:-1px;left:0;width:100%;height:78px;display:block;pointer-events:none;z-index:2}.hp-banner-block .hp-button{color:var(--vd-button-text,#fff)!important}.homepage-blocks .page-layout:has(.hp-banner-block){padding-top:0}.hp-banner-block .hp-hero:not(:has(>img)){color:var(--hp-text)}
@media(max-width:550px){.hp-banner-block .hp-hero,.hp-banner-block .hp-hero:has(>img){min-height:440px;padding:40px 24px 90px}.hp-banner-block .hp-hero h2{font-size:38px}.hp-waves{height:58px}}
