@font-face{font-family:"Changa One";src:url("../brand/changa-one.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Anton";src:url("../brand/anton.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
:root{--kg-red:#e13122;--kg-red-dark:#b92318;--kg-green:#075600;--kg-ink:#171514;--kg-cream:#fffaf5;--kg-muted:#675e58;--kg-line:#eaded5;--kg-head:"Changa One",Impact,sans-serif;--kg-data:"Anton",Impact,sans-serif;--kg-body:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;--kg-max:1220px}
*{box-sizing:border-box}html{overflow-x:hidden;scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;overflow-x:hidden;background:var(--kg-cream);color:var(--kg-ink);font-family:var(--kg-body);line-height:1.62}.skip-link{position:absolute;left:-999px;top:auto}.skip-link:focus{left:16px;top:16px;z-index:9999;padding:10px 14px;background:#fff;color:var(--kg-red)}
a{color:var(--kg-red);text-decoration-thickness:2px;text-underline-offset:3px}a:hover{color:var(--kg-green)}img{max-width:100%;height:auto}
h1,h2,h3,h4,.kg-kicker,.site-footer__claim{font-family:var(--kg-head);font-weight:400;text-transform:uppercase;letter-spacing:.02em;text-shadow:none}.kg-data,.site-nav a,.site-nav button,.site-footer__bottom,.kg-button,.wp-block-button__link{font-family:var(--kg-data);text-transform:uppercase}

.site-header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:4px solid var(--kg-red)}
.site-header *,.site-footer *{box-sizing:border-box}.site-header__inner{position:relative;max-width:1380px;height:92px;margin:auto;padding:0 24px;display:flex;align-items:center;gap:24px}.site-brand{display:flex;align-items:center;gap:12px;margin-right:auto;color:var(--kg-ink);font-weight:950;font-size:1.25rem;line-height:.9;text-decoration:none;text-transform:uppercase}.site-brand-logo,.site-brand .custom-logo{width:58px;height:66px;object-fit:contain;filter:drop-shadow(0 3px 4px rgba(0,0,0,.14))}.site-brand-copy{font-family:var(--kg-head)}.site-brand-copy span{display:block;margin-top:7px;color:var(--kg-red);font-family:var(--kg-data);font-size:.6rem;letter-spacing:.1em}
.site-nav{display:flex;align-items:center;gap:4px}.site-nav>a,.site-nav__toggle{padding:.72em .62em;border:0;background:transparent;color:var(--kg-ink);font-size:.76rem;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer}.site-nav>a:hover,.site-nav__toggle:hover,.site-nav__item.open>.site-nav__toggle{background:var(--kg-red);color:#fff}.site-nav__item{position:relative}.site-nav__toggle:after{content:" +";color:var(--kg-red)}.site-nav__item.open>.site-nav__toggle:after{content:" -";color:inherit}
.site-nav__panel{position:fixed;z-index:1200;top:92px;left:50%;width:min(900px,calc(100vw - 40px));display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:26px;background:var(--kg-green);color:#fff;border-top:7px solid var(--kg-red);border-radius:0 0 28px 28px;transform:translateX(-50%);box-shadow:0 18px 32px rgba(0,0,0,.22)}.site-nav__item.open>.site-nav__panel{display:grid}.site-nav__group strong{display:block;margin-bottom:10px;color:#fff;font-family:var(--kg-head);font-size:1.15rem;text-transform:uppercase}.site-nav__group a{display:block;padding:6px 0;color:rgba(255,255,255,.82);font-size:.8rem;text-decoration:none;text-transform:none;font-family:var(--kg-body)}.site-nav__group a:hover{color:#fff;text-decoration:underline}.site-nav .site-cta{margin-left:5px;padding:.85em 1.15em .72em;background:var(--kg-red);color:#fff;border-radius:0 0 22px 22px}.site-nav .site-cta:hover{background:var(--kg-green)}
.site-menu-button{display:none;position:relative;width:50px;height:50px;border:0;background:var(--kg-green);color:#fff;font-size:0;box-shadow:4px 4px 0 var(--kg-red)}.site-menu-button:before,.site-menu-button:after,.site-menu-button span{content:"";position:absolute;left:12px;width:26px;height:4px;background:#fff;transition:.2s}.site-menu-button:before{top:14px}.site-menu-button span{top:23px}.site-menu-button:after{top:32px}.site-menu-button[aria-expanded=true]:before{top:23px;transform:rotate(45deg)}.site-menu-button[aria-expanded=true] span{opacity:0}.site-menu-button[aria-expanded=true]:after{top:23px;transform:rotate(-45deg)}

.kg-hero{position:relative;isolation:isolate;min-height:calc(100svh - 92px);overflow:hidden;background:var(--kg-red);color:#fff}.kg-hero__bg{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.32)),var(--kg-hero-image, url("../uploads/IMG_5395.JPG")) center bottom/cover no-repeat}.kg-hero__cut{position:absolute;z-index:1;left:0;right:0;bottom:0;height:30%;background:var(--kg-red);clip-path:polygon(0 18%,100% 0,100% 100%,0 100%)}.kg-hero__cut:after,.kg-red-pattern:before{content:"";position:absolute;inset:0;opacity:.2;background-image:repeating-linear-gradient(0deg,transparent 0 28px,rgba(255,255,255,.16) 28px 30px)}.kg-hero__inner{position:relative;z-index:3;max-width:1340px;min-height:calc(100svh - 92px);margin:auto;padding:0 30px 54px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);align-items:end;gap:24px}.kg-hero__title{margin:0;color:#fff;font-family:var(--kg-head);font-size:clamp(2.8rem,5vw,5.2rem);line-height:.8;letter-spacing:-.035em;-webkit-text-stroke:7px var(--kg-red);paint-order:stroke fill}.kg-hero__banner{display:table;width:fit-content;max-width:100%;margin-top:-.18em;padding:.26em .55em .2em;background:var(--kg-green);color:#fff;font-family:var(--kg-data);font-size:clamp(1rem,1.7vw,1.45rem);line-height:1;text-transform:uppercase;white-space:nowrap}.kg-hero__buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 8px}.kg-button,.wp-block-button__link{display:inline-flex!important;align-items:center;justify-content:center;border:0!important;border-radius:0 0 22px 22px!important;background:var(--kg-red)!important;color:#fff!important;padding:.82em 1.25em .7em!important;text-decoration:none!important;box-shadow:none!important;transition:transform .18s,background .18s}.kg-button:hover,.wp-block-button__link:hover{background:var(--kg-green)!important;transform:translateY(-3px)}

.kg-section{position:relative;padding:82px 22px;background:var(--kg-cream)}.kg-section--red{background:var(--kg-red);color:#fff}.kg-section__inner{max-width:var(--kg-max);margin:auto}.kg-section__head{margin-bottom:34px}.kg-kicker{display:table;margin:0 0 4px;padding:.18em .48em .12em;background:var(--kg-green);color:#fff;font-family:var(--kg-data);font-size:clamp(.9rem,1.5vw,1.15rem);transform:rotate(-1deg)}.kg-title{margin:0;color:var(--kg-red);font-size:clamp(2.6rem,7vw,6.4rem);line-height:.82;letter-spacing:-.025em}.kg-section--red .kg-title{color:#fff;-webkit-text-stroke:5px var(--kg-red);paint-order:stroke fill}.kg-subline{display:table;margin:-.05em 0 0;padding:.24em .55em .18em;background:var(--kg-green);color:#fff;font-family:var(--kg-data);font-size:clamp(1rem,2.2vw,1.65rem);line-height:1;text-transform:uppercase}.kg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.kg-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.kg-card{overflow:hidden;background:#fff;color:var(--kg-ink);border-top:7px solid var(--kg-red);border-radius:0 0 24px 24px;transition:transform .25s}.kg-card:hover{transform:translateY(-5px)}.kg-card:nth-child(even){border-top-color:var(--kg-green)}.kg-card img{display:block;width:100%;height:245px;object-fit:cover;border:0}.kg-card__body{padding:22px}.kg-card h3{margin:0 0 10px;color:var(--kg-red);font-size:clamp(1.6rem,3vw,2.35rem);line-height:.95}.kg-card p{margin:0 0 18px;color:var(--kg-muted)}.kg-lead{max-width:900px;padding:24px 27px;background:var(--kg-green);color:#fff;border-radius:0 0 24px 24px;font-size:1.08rem}.kg-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.kg-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.kg-feature{padding:24px;background:#fff;border-top:7px solid var(--kg-red);border-radius:0 0 22px 22px}.kg-feature img{width:58px;height:58px;object-fit:contain;margin-bottom:14px}.kg-feature h3{margin:0 0 8px;color:var(--kg-red);font-size:1.7rem;line-height:1}.kg-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.kg-media-grid img,.page-content img{border:3px solid var(--kg-red);border-radius:0 0 26px 26px;box-shadow:9px 11px 0 rgba(225,49,34,.2)}

.page-hero{position:relative;isolation:isolate;overflow:hidden;min-height:430px;padding:108px 22px 94px;background:linear-gradient(108deg,var(--kg-red) 0 72%,var(--kg-red-dark) 72%);color:#fff}.page-hero__inner{max-width:var(--kg-max);margin:auto}.page-kicker{display:table;color:#fff;font-family:var(--kg-data);font-size:clamp(.85rem,1.5vw,1.15rem);text-transform:uppercase}.page-hero h1{max-width:1050px;margin:.04em 0 0;color:#fff;font-size:clamp(3.8rem,8.4vw,8rem);line-height:.81;letter-spacing:-.025em;-webkit-text-stroke:6px var(--kg-red);paint-order:stroke fill}.page-hero p{display:table;max-width:760px;margin:-.02em 0 0;padding:.32em .65em .28em;background:var(--kg-green);color:#fff;font-family:var(--kg-data);font-size:clamp(1.1rem,2.4vw,2rem);line-height:1;text-transform:uppercase;transform:rotate(-1deg)}
.page-main{max-width:var(--kg-max);margin:auto;padding:78px 22px 110px}.page-content{max-width:1040px;margin:auto}.page-content h2{display:table;margin:62px 0 24px;padding:.12em .35em .07em;background:var(--kg-green);color:#fff;font-family:var(--kg-head);font-size:clamp(2rem,5vw,4rem);line-height:.94;text-transform:uppercase;transform:rotate(-.5deg)}.page-content h3{display:table;margin:38px 0 14px;padding:.15em .4em .1em;background:var(--kg-red);color:#fff;font-family:var(--kg-head);font-size:clamp(1.35rem,3vw,2rem);line-height:1;text-transform:uppercase}.page-content p,.page-content li{font-size:1.05rem}.page-content>p:first-of-type{padding:24px 27px;background:var(--kg-green);color:#fff;border-radius:0 0 24px 24px}.page-content table{display:block;width:100%;margin:30px 0;padding:8px 24px 12px;background:#fff;border-top:7px solid var(--kg-red);border-radius:0 0 24px 24px}.page-content tbody{display:grid}.page-content tr{display:grid;grid-template-columns:minmax(150px,.35fr) 1fr;border-bottom:2px solid var(--kg-line)}.page-content tr:last-child{border-bottom:0}.page-content td{padding:15px 10px}.page-content td:first-child{color:var(--kg-red);font-family:var(--kg-data);font-size:1.2rem;text-transform:uppercase}.page-actions{display:flex;gap:12px;flex-wrap:wrap;margin:42px 0}.page-actions a{display:inline-flex;align-items:center;justify-content:center;padding:.82em 1.4em .7em;border-radius:0 0 22px 22px;background:var(--kg-red);color:#fff;font-family:var(--kg-data);text-transform:uppercase;text-decoration:none}.page-actions a:nth-child(even){background:var(--kg-green)}

.department-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.department-card{display:flex;min-height:100%;overflow:hidden;flex-direction:column;background:#fff;border-top:7px solid var(--kg-red);border-radius:0 0 24px 24px;color:var(--kg-ink)!important;text-decoration:none!important;transition:transform .25s}.department-card:hover{transform:translateY(-6px)}.department-card__visual{display:grid;place-items:center;aspect-ratio:4/3;background:#f3eae3;overflow:hidden}.department-card__visual img{width:100%;height:100%;object-fit:cover;margin:0}.department-card__body{display:flex;flex:1;flex-direction:column;padding:20px 22px 23px}.department-card__type{margin-bottom:7px;color:var(--kg-green);font-family:var(--kg-data);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase}.department-card h2{margin:0 0 12px;color:var(--kg-red);font-size:clamp(1.65rem,2.7vw,2.3rem);line-height:.95}.department-card p{margin:0 0 18px;color:var(--kg-muted)}.department-card__link{margin-top:auto;color:var(--kg-red);font-family:var(--kg-data);text-transform:uppercase}

.site-footer{position:relative;overflow:hidden;background:var(--kg-green);color:#fff;border-top:9px solid var(--kg-red)}.site-footer__inner{position:relative;z-index:1;max-width:1240px;margin:auto;padding:70px 22px 28px}.site-footer__claim{max-width:900px;margin:0 0 46px;color:#fff;font-size:clamp(3rem,7vw,6.8rem);line-height:.82}.site-footer__claim span{display:inline-block;margin-top:-.08em;padding:.2em .45em .14em;background:var(--kg-red);font-size:.43em;transform:rotate(-1deg)}.site-footer__top{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:40px}.site-footer h4{margin:0 0 15px;color:#fff;font-family:var(--kg-head);font-size:1.25rem;text-transform:uppercase}.site-footer p{margin:0;color:rgba(255,255,255,.8)}.site-footer ul{margin:0;padding:0;list-style:none;columns:2;column-gap:22px}.site-footer li{break-inside:avoid;margin-bottom:7px}.site-footer a{color:rgba(255,255,255,.82);font-size:.84rem;text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.site-footer__bottom{margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.25);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}

@media(prefers-reduced-motion:no-preference){.kg-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.kg-reveal.is-visible{opacity:1;transform:none}}
@media(max-width:1120px){.site-header__inner{height:78px}.site-brand-logo,.site-brand .custom-logo{width:48px;height:57px}.site-menu-button{display:block}.site-nav{position:fixed;z-index:1100;top:78px;left:0;right:0;max-height:calc(100svh - 78px);display:none;overflow:auto;padding:16px;background:var(--kg-red);flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.site-nav>a,.site-nav__toggle{width:100%;padding:14px 5px;color:#fff;text-align:left;border-bottom:1px solid rgba(255,255,255,.25)}.site-nav__toggle:after{float:right;color:#fff}.site-nav .site-cta{margin:15px 0 0;background:var(--kg-green);text-align:center}.site-nav__panel{position:static;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:18px;background:var(--kg-green);border:0;border-radius:0 0 24px 24px;transform:none;box-shadow:none}.kg-hero__inner{min-height:calc(100svh - 78px);grid-template-columns:minmax(0,1fr) minmax(0,450px)}}
@media(max-width:820px){.kg-grid,.kg-grid--2,.department-grid,.kg-feature-grid,.kg-media-grid{grid-template-columns:1fr}.site-footer__top{grid-template-columns:1fr}.site-footer ul{columns:1}.kg-hero__inner{grid-template-columns:1fr 132px;gap:10px;padding:0 12px 56px}.kg-hero__title{font-size:clamp(2.65rem,12vw,4rem);-webkit-text-stroke:3px var(--kg-red)}.kg-hero__banner{font-size:clamp(1rem,5.35vw,1.28rem)}.kg-hero__buttons{grid-template-columns:1fr;width:132px}.kg-hero__buttons .kg-button{min-height:31px;font-size:.58rem;padding:.48em .18em .4em!important;border-radius:0 0 14px 14px!important}.page-hero{min-height:340px;padding:70px 14px 72px}.page-hero h1{font-size:clamp(3rem,16vw,4.7rem);-webkit-text-stroke:3px var(--kg-red)}.page-main,.kg-section{padding-left:14px;padding-right:14px}.page-content tr{grid-template-columns:1fr}.page-content td+td{padding-top:0}}
@media(max-width:520px){.site-header__inner{height:70px;padding:0 14px}.site-brand-logo,.site-brand .custom-logo{width:43px;height:51px}.site-brand{font-size:1rem}.site-brand-copy span{font-size:.54rem}.site-menu-button{width:46px;height:46px}.site-nav{top:70px;max-height:calc(100svh - 70px)}.site-nav__panel{grid-template-columns:1fr}.kg-title{font-size:clamp(2.3rem,13vw,4rem)}.site-footer__inner{padding:55px 14px 24px}}

.kg-button,.wp-block-button__link,.page-actions a,.site-nav .site-cta{border-radius:9px!important;background:var(--kg-red)!important;color:#fff!important}.kg-button:hover,.wp-block-button__link:hover,.page-actions a:hover,.page-actions a:nth-child(even):hover,.site-nav .site-cta:hover{background:var(--kg-red-dark)!important;color:#fff!important}.kg-hero__buttons .kg-button{border-radius:9px!important}.kg-person-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:34px 0}.kg-person-card{overflow:hidden;background:#fff;border-top:7px solid var(--kg-red);border-radius:0 0 24px 24px}.kg-person-card__image{aspect-ratio:3/4;background:#f3eae3}.kg-person-card__image img{display:block;width:100%;height:100%;object-fit:cover;border:0;border-radius:0;box-shadow:none}.kg-person-card__image--empty{background:linear-gradient(135deg,var(--kg-red),var(--kg-red-dark))}.kg-person-card__body{padding:18px 20px}.kg-person-card h3{display:block;margin:0 0 8px;padding:0;background:transparent;color:var(--kg-red);font-size:1.75rem;transform:none}.kg-person-card p{margin:0;color:var(--kg-muted)}.kg-wp-gallery{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kg-wp-gallery .wp-block-image{width:100%!important;margin:0!important}.kg-wp-gallery img{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}.kg-form-note{margin:40px 0;padding:24px 27px;background:#fff;border-top:7px solid var(--kg-red);border-radius:0 0 24px 24px}.kg-form-note h2{margin-top:0}@media(max-width:900px){.kg-person-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kg-wp-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.kg-person-grid,.kg-wp-gallery{grid-template-columns:1fr}}

.kg-lead,.page-content>p:first-of-type{max-width:none!important;padding:0!important;background:transparent!important;color:var(--kg-ink)!important;border-radius:0!important}.kg-kicker{display:block!important;margin:0 0 3px!important;padding:0!important;background:transparent!important;color:var(--kg-red)!important;font-family:var(--kg-data)!important;transform:none!important}.kg-section--red .kg-kicker{color:#fff!important}.kg-section__head{margin-bottom:42px!important}.kg-title,.page-hero h1{position:relative;z-index:1}.kg-subline,.page-hero p{position:relative;z-index:2;display:table!important;margin:-.16em 0 0!important;padding:.25em .58em .2em!important;background:var(--kg-green)!important;color:#fff!important;border-radius:9px!important;transform:rotate(-1deg)!important}.kg-hero .kg-button,.kg-section--red .kg-button,.kg-section--red .wp-block-button__link,.kg-section--red .page-actions a{background:var(--kg-green)!important;color:#fff!important}.kg-hero .kg-button:hover,.kg-section--red .kg-button:hover,.kg-section--red .wp-block-button__link:hover,.kg-section--red .page-actions a:hover{background:#053d00!important;color:#fff!important}.kg-section--red .kg-card .kg-button{background:var(--kg-red)!important}.kg-section--red .kg-card .kg-button:hover{background:var(--kg-red-dark)!important}.kg-section--red .kg-title{-webkit-text-stroke:0!important;text-shadow:none!important}.page-content h2{background:transparent!important;color:var(--kg-red)!important;padding:0!important;transform:none!important}.page-content h3{border-radius:9px!important}

.kg-hero__buttons{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;width:auto!important;gap:10px!important}.kg-hero__buttons .kg-button{flex:0 0 auto!important;min-height:0!important;font-size:.82rem!important;padding:.82em 1.25em .7em!important;white-space:nowrap!important}.kg-subline,.page-hero p,.site-footer__claim span{border-radius:0!important}.site-footer__claim span{display:table!important;margin-top:-.2em!important;margin-bottom:-.04em!important;position:relative!important;z-index:2!important}.page-content p.has-background,.page-content .wp-block-paragraph.has-background,.page-content .has-background:not(.wp-block-button__link):not(.kg-card):not(.department-card):not(.kg-person-card):not(.kg-form-note){background:transparent!important;color:var(--kg-ink)!important;padding-left:0!important;padding-right:0!important}.page-content .wp-block-group.has-background{padding:0!important}.page-content .kg-kicker,.page-content .kg-subline{background:transparent!important;color:var(--kg-red)!important;padding:0!important;margin:0 0 12px!important;transform:none!important}@media(max-width:1120px){.kg-hero__buttons{justify-content:flex-start!important}}@media(max-width:820px){.kg-hero__inner{grid-template-columns:1fr!important}.kg-hero__buttons{width:auto!important;justify-content:flex-start!important}.kg-hero__buttons .kg-button{font-size:.72rem!important}}

.kg-booking-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}.kg-booking-item{display:flex;min-height:112px;flex-direction:column;justify-content:space-between;padding:20px 22px;background:#fff;color:var(--kg-ink)!important;border-top:7px solid var(--kg-red);border-radius:0 0 24px 24px;text-decoration:none!important;transition:transform .2s,box-shadow .2s}.kg-booking-item:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(225,49,34,.12)}.kg-booking-item span{color:var(--kg-red);font-family:var(--kg-head);font-size:clamp(1.45rem,2.5vw,2rem);line-height:.95;text-transform:uppercase}.kg-booking-item em{color:var(--kg-muted);font-style:normal}@media(max-width:820px){.kg-booking-list{grid-template-columns:1fr}}

/* Startseite: clearer section rhythm and the three requested principles. */
.kg-section--home-news{background:#fff}
.kg-section--principles{background:#eef6ea;border-top:1px solid rgba(7,86,0,.1);border-bottom:1px solid rgba(7,86,0,.1)}
.kg-section--verein{background:#fff8f2}
.kg-section--verleih{background:#e8f0ec}
.kg-section--booking{background:#fff}
.kg-section--principles .kg-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.kg-section--principles .kg-feature{display:flex;min-height:100%;flex-direction:column;background:#fff;border-top-color:var(--kg-green);box-shadow:0 12px 28px rgba(7,86,0,.08)}
.kg-section--principles .kg-feature:nth-child(2){border-top-color:var(--kg-red)}
.kg-section--principles .kg-feature h3{font-size:clamp(1.55rem,2.6vw,2.15rem)}
.kg-section--principles .kg-feature p{font-size:1rem;line-height:1.58}
@media(max-width:900px){.kg-section--principles .kg-feature-grid{grid-template-columns:1fr}}

.kg-imported-content{max-width:100%;overflow-wrap:break-word}.kg-imported-content *{max-width:100%}.kg-imported-content iframe,.page-content iframe{display:block;width:100%;max-width:100%;min-height:320px;border:0}.kg-imported-content table,.page-content table{overflow-x:auto}.kg-imported-content img{height:auto}.kg-imported-content ul,.kg-imported-content ol{padding-left:1.25rem}.kg-imported-content section,.kg-imported-content article{display:block;margin:0 0 34px}.kg-imported-content a{overflow-wrap:anywhere}.kg-imported-content figure{max-width:100%;margin:24px 0}.page-content .wp-block-gallery,.page-content .wp-block-gallery.has-nested-images{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.page-content .wp-block-gallery .wp-block-image{width:100%!important;margin:0!important}.page-content .wp-block-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.page-content pre{white-space:pre-wrap;overflow-wrap:anywhere}.page-content h1,.page-content h2,.page-content h3{overflow-wrap:break-word}.page-content h2 h2,.page-content h1 h1{font-size:inherit;margin:0;padding:0;background:transparent;color:inherit;display:inline;transform:none}.page-content h2:empty,.page-content h3:empty,.kg-imported-content div:empty,.kg-imported-content p:empty{display:none}@media(max-width:820px){.page-content .wp-block-gallery,.page-content .wp-block-gallery.has-nested-images{grid-template-columns:repeat(2,minmax(0,1fr))}.kg-imported-content iframe,.page-content iframe{min-height:260px}}@media(max-width:560px){.page-content .wp-block-gallery,.page-content .wp-block-gallery.has-nested-images{grid-template-columns:1fr}.page-content table{padding-left:12px;padding-right:12px}.page-content h2{font-size:clamp(1.9rem,11vw,3rem)}}

/* Final responsive hardening for imported pages and galleries. */
.site-brand{gap:0;min-width:72px}
.site-brand-copy{display:none!important}
.site-brand-logo,.site-brand .custom-logo{width:66px;height:76px}
.page-content{width:100%}
.page-content img{display:block;max-width:100%;height:auto}
.page-content>figure:not(.wp-block-gallery),.page-content .wp-block-image:not(.kg-wp-gallery .wp-block-image){max-width:min(100%,760px);margin:28px auto}
.page-content>figure:not(.wp-block-gallery) img,.page-content .wp-block-image:not(.kg-wp-gallery .wp-block-image) img{width:100%;max-height:460px;object-fit:contain;background:#f3eae3}
.kg-media-grid img,.department-card__visual img,.kg-card img,.kg-person-card img,.page-content .wp-block-gallery img{border:0!important;border-radius:0!important;box-shadow:none!important}
.department-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))}
.department-card{border-radius:0 0 18px 18px}
.department-card__visual{height:auto;aspect-ratio:4/3}
.department-card__visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.department-card__visual--placeholder img{object-fit:contain;padding:28px;background:var(--kg-green)}
.page-content .wp-block-gallery,.page-content .wp-block-gallery.has-nested-images,.kg-wp-gallery{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important;gap:14px!important;align-items:stretch!important}
.page-content .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image),.page-content .wp-block-gallery .wp-block-image,.kg-wp-gallery .wp-block-image{display:block!important;width:100%!important;max-width:none!important;margin:0!important;flex:0 0 auto!important}
.page-content .wp-block-gallery a,.kg-wp-gallery a{display:block;width:100%;height:100%}
.page-content .wp-block-gallery img,.kg-wp-gallery img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;aspect-ratio:4/3!important;object-fit:cover!important;background:#f3eae3}
@media(max-width:1120px){.site-brand-logo,.site-brand .custom-logo{width:58px;height:68px}}
@media(max-width:700px){.page-content .wp-block-gallery,.page-content .wp-block-gallery.has-nested-images,.kg-wp-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.page-content>figure:not(.wp-block-gallery) img,.page-content .wp-block-image:not(.kg-wp-gallery .wp-block-image) img{max-height:360px}.site-brand{min-width:52px}.site-brand-logo,.site-brand .custom-logo{width:48px;height:56px}}
@media(max-width:430px){.page-content .wp-block-gallery,.page-content .wp-block-gallery.has-nested-images,.kg-wp-gallery{grid-template-columns:1fr!important}}

.kg-group-page{max-width:980px;margin:0;text-align:left}
.kg-group-page__name{display:block!important;margin:0 0 24px!important;padding:0!important;background:transparent!important;color:var(--kg-red)!important;font-family:var(--kg-head)!important;font-size:clamp(2.35rem,5vw,4.8rem)!important;line-height:.9!important;text-align:left!important;text-transform:uppercase!important;transform:none!important}
.kg-group-page__images{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;margin:0 0 32px}
.kg-group-page__images figure{display:block;width:100%;margin:0!important}
.kg-group-page__images img{display:block!important;width:100%!important;height:auto!important;max-height:430px!important;aspect-ratio:4/3!important;margin:0!important;border:3px solid var(--kg-red)!important;border-radius:0 0 24px 24px!important;box-shadow:8px 9px 0 rgba(225,49,34,.18)!important;object-fit:contain!important;object-position:center!important;background:#f3eae3!important}
.kg-group-page__text{max-width:840px;margin:0 0 30px;text-align:left}
.kg-group-page__text p{margin:0 0 18px!important;padding:0!important;background:transparent!important;color:var(--kg-ink)!important;text-align:left!important}
.kg-group-page__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;max-width:900px;margin:0;padding:0;text-align:left}
.kg-group-page__facts div{min-width:0;padding:18px 20px;background:#fff;border-top:6px solid var(--kg-green);border-radius:0 0 20px 20px}
.kg-group-page__facts dt{margin:0 0 6px;color:var(--kg-red);font-family:var(--kg-data);font-size:.88rem;letter-spacing:.08em;text-transform:uppercase}
.kg-group-page__facts dd{margin:0;color:var(--kg-ink);font-size:1rem;line-height:1.45}
@media(max-width:700px){.kg-group-page__images{grid-template-columns:1fr}.kg-group-page__images img{max-height:340px!important}.kg-group-page__facts{grid-template-columns:1fr}}

.site-footer__claim{max-width:620px!important;margin-bottom:30px!important;font-size:clamp(1.7rem,3.4vw,3.25rem)!important;line-height:.9!important}
.site-footer__claim span{font-size:.36em!important;padding:.2em .42em .15em!important}
.kg-person-card__placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:220px;padding:20px;background:#f3eae3;color:var(--kg-red);font-family:var(--kg-data);font-size:1.05rem;text-align:center;text-transform:uppercase}
.kg-info-page{max-width:1080px;margin:0;text-align:left}
.kg-info-page__lead{max-width:860px;margin:0 0 30px!important;padding:0!important;background:transparent!important;color:var(--kg-ink)!important;text-align:left}
.kg-person-card__image img{object-position:center top}
@media(max-width:700px){.site-footer__claim{font-size:clamp(1.45rem,8vw,2.3rem)!important}}

.kg-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.page-content>.kg-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.kg-news-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;background:#fff;border-top:7px solid var(--kg-red);border-radius:0 0 24px 24px;color:var(--kg-ink)}
.kg-news-card:nth-child(even){border-top-color:var(--kg-green)}
.kg-news-card__image{position:relative;display:block;overflow:hidden;aspect-ratio:16/10;background:var(--kg-red)}
.kg-news-card__image img{display:block;width:100%;height:100%;object-fit:cover;border:0!important;border-radius:0!important;box-shadow:none!important}
.kg-news-card__image span{position:absolute;z-index:2;top:14px;left:14px;padding:.42em .8em .34em;background:var(--kg-green);color:#fff;font-family:var(--kg-data);font-size:.78rem;text-transform:uppercase}
.kg-news-card__body{display:flex;flex:1;flex-direction:column;padding:22px}
.kg-news-card h3{display:block!important;margin:0 0 10px!important;padding:0!important;background:transparent!important;color:var(--kg-red)!important;font-size:clamp(1.45rem,2.8vw,2.1rem)!important;line-height:.98!important;transform:none!important}
.kg-news-card h3 a{text-decoration:none}
.kg-news-card p{margin:0 0 18px!important;padding:0!important;background:transparent!important;color:var(--kg-muted)!important}
.kg-news-card__more{margin-top:auto;color:var(--kg-green);font-family:var(--kg-data);font-size:.85rem;text-transform:uppercase;text-decoration:none}
.kg-news-card__more:hover{color:var(--kg-red)}
.kg-news-card--empty{grid-column:1/-1}
@media(max-width:900px){.kg-news-grid,.page-content>.kg-news-grid{grid-template-columns:1fr}}

/* Responsive safety layer: keep headings, labels and images inside their frames. */
.kg-hero__inner,
.page-hero__inner,
.kg-section__inner,
.page-content,
.kg-card,
.department-card,
.kg-news-card,
.kg-group-page,
.kg-imported-content,
.kg-imported-content--local{
  min-width:0;
}

.kg-hero__title,
.page-hero h1,
.kg-title,
.page-content h1,
.page-content h2,
.page-content h3,
.kg-card h3,
.department-card h2,
.kg-feature h3,
.kg-booking-item span,
.kg-news-card h3,
.kg-group-page__name,
.kg-imported-content--local .kg-group-page__name,
.site-footer__claim{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto;
  letter-spacing:0!important;
  text-wrap:balance;
}

.kg-hero__title{
  font-size:5rem!important;
  line-height:.9!important;
  -webkit-text-stroke:4px var(--kg-red)!important;
}

.page-hero{
  min-height:auto!important;
  padding:96px 22px 82px!important;
}

.page-hero h1{
  font-size:5.4rem!important;
  line-height:.9!important;
  -webkit-text-stroke:4px var(--kg-red)!important;
}

.kg-title{
  font-size:5.4rem!important;
  line-height:.9!important;
}

.page-content h1{
  font-size:4rem!important;
  line-height:.95!important;
}

.page-content h2,
.kg-imported-content--local .chapter h2,
.kg-imported-content--local .intro h2,
.kg-imported-content--local .timeline > h2{
  display:block!important;
  width:fit-content;
  max-width:100%!important;
  font-size:3.2rem!important;
  line-height:.96!important;
  transform:none!important;
}

.page-content h3,
.kg-imported-content--local .chapter h3{
  display:block!important;
  width:fit-content;
  max-width:100%!important;
  font-size:1.85rem!important;
  line-height:1.04!important;
  transform:none!important;
}

.kg-subline,
.page-hero p,
.kg-hero__banner,
.kg-button,
.wp-block-button__link,
.page-actions a,
.site-nav .site-cta,
.kg-news-card__image span{
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  text-align:center;
}

.kg-subline,
.page-hero p,
.kg-hero__banner{
  width:fit-content;
  margin-top:10px!important;
  line-height:1.08!important;
  transform:none!important;
}

.kg-hero__buttons{
  align-items:stretch!important;
}

.kg-hero__buttons .kg-button{
  min-width:0!important;
}

.kg-card img,
.department-card__visual,
.kg-news-card__image,
.kg-group-page__images img,
.kg-imported-content--local .kg-group-page__images img,
.page-content .content-image-grid img{
  max-width:100%!important;
}

.kg-card img,
.department-card__visual img,
.kg-news-card__image img{
  height:100%!important;
  object-position:center!important;
}

.department-card__visual,
.kg-news-card__image{
  aspect-ratio:4/3!important;
}

.kg-card h3,
.department-card h2,
.kg-news-card h3{
  font-size:1.85rem!important;
  line-height:1.02!important;
}

.kg-feature h3{
  font-size:1.75rem!important;
  line-height:1.04!important;
}

.fit-headline{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

@media(max-width:1120px){
  .kg-hero__title,
  .page-hero h1,
  .kg-title{
    font-size:4.2rem!important;
    -webkit-text-stroke:3px var(--kg-red)!important;
  }

  .page-content h1{
    font-size:3.4rem!important;
  }

  .page-content h2,
  .kg-imported-content--local .chapter h2,
  .kg-imported-content--local .intro h2,
  .kg-imported-content--local .timeline > h2{
    font-size:2.75rem!important;
  }
}

@media(max-width:820px){
  .kg-hero,
  .kg-hero__inner{
    min-height:auto!important;
  }

  .kg-hero__inner{
    padding:82px 14px 54px!important;
  }

  .kg-hero__title,
  .page-hero h1,
  .kg-title{
    font-size:3.15rem!important;
    line-height:.94!important;
    -webkit-text-stroke:2px var(--kg-red)!important;
  }

  .page-hero{
    padding:64px 14px 58px!important;
  }

  .page-content h1{
    font-size:2.75rem!important;
  }

  .page-content h2,
  .kg-imported-content--local .chapter h2,
  .kg-imported-content--local .intro h2,
  .kg-imported-content--local .timeline > h2{
    font-size:2.35rem!important;
  }

  .page-content h3,
  .kg-imported-content--local .chapter h3,
  .kg-card h3,
  .department-card h2,
  .kg-news-card h3{
    font-size:1.6rem!important;
  }

  .kg-hero__buttons{
    justify-content:flex-start!important;
  }
}

@media(max-width:520px){
  .kg-hero__inner{
    padding:58px 14px 46px!important;
  }

  .kg-hero__title,
  .page-hero h1,
  .kg-title{
    font-size:2.45rem!important;
    line-height:.98!important;
    -webkit-text-stroke:0!important;
  }

  .page-hero{
    padding:46px 14px 46px!important;
  }

  .page-content h1{
    font-size:2.25rem!important;
  }

  .page-content h2,
  .kg-imported-content--local .chapter h2,
  .kg-imported-content--local .intro h2,
  .kg-imported-content--local .timeline > h2,
  .kg-group-page__name,
  .kg-imported-content--local .kg-group-page__name{
    font-size:2rem!important;
    line-height:1!important;
  }

  .page-content h3,
  .kg-imported-content--local .chapter h3{
    font-size:1.42rem!important;
  }

  .kg-subline,
  .page-hero p,
  .kg-hero__banner{
    font-size:1rem!important;
  }

  .kg-button,
  .wp-block-button__link,
  .page-actions a{
    width:100%;
  }

  .kg-card__body,
  .department-card__body,
  .kg-news-card__body{
    padding:18px!important;
  }
}

/* v2026.07.26.23: conservative mobile reset after the earlier oversized hero pass. */
.page-main,
.page-content{
  position:relative!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}

.department-grid,
.kg-news-grid,
.kg-person-grid,
.kg-feature-grid,
.kg-booking-list{
  visibility:visible!important;
  opacity:1!important;
}

.department-card,
.kg-news-card,
.kg-person-card,
.kg-feature,
.kg-booking-item{
  visibility:visible!important;
  opacity:1!important;
}

@media(max-width:820px){
  .kg-hero{
    min-height:auto!important;
    overflow:visible!important;
  }

  .kg-hero__inner{
    min-height:auto!important;
    display:block!important;
    padding:54px 14px 42px!important;
  }

  .kg-hero__title{
    display:block!important;
    margin:0 0 14px!important;
    color:#fff!important;
    font-size:2.65rem!important;
    line-height:1!important;
    letter-spacing:0!important;
    -webkit-text-stroke:0!important;
    text-shadow:none!important;
  }

  .kg-hero__banner,
  .kg-subline,
  .page-hero p{
    display:block!important;
    width:fit-content!important;
    max-width:100%!important;
    margin:8px 0 0!important;
    padding:.35em .55em .28em!important;
    font-size:1rem!important;
    line-height:1.15!important;
    white-space:normal!important;
    transform:none!important;
  }

  .kg-hero__buttons{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
    margin-top:22px!important;
    justify-content:stretch!important;
  }

  .kg-hero__buttons .kg-button{
    width:100%!important;
    min-height:44px!important;
    padding:.72em .55em!important;
    font-size:.74rem!important;
    line-height:1.1!important;
    white-space:normal!important;
  }

  .page-hero{
    min-height:auto!important;
    overflow:visible!important;
    padding:42px 14px 38px!important;
  }

  .page-hero h1{
    display:block!important;
    margin:6px 0 0!important;
    color:#fff!important;
    font-size:2.35rem!important;
    line-height:1!important;
    letter-spacing:0!important;
    -webkit-text-stroke:0!important;
    text-shadow:none!important;
    overflow-wrap:anywhere!important;
  }

  .page-kicker{
    color:#fff!important;
    font-size:.9rem!important;
    line-height:1.15!important;
  }

  .page-main{
    padding:34px 14px 64px!important;
  }

  .page-content{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }

  .department-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .department-card{
    display:flex!important;
    min-width:0!important;
    overflow:hidden!important;
    background:#fff!important;
    color:var(--kg-ink)!important;
  }
}

@media(max-width:430px){
  .kg-hero__title,
  .page-hero h1{
    font-size:2.05rem!important;
  }

  .kg-hero__buttons{
    grid-template-columns:1fr!important;
  }
}

/* v2026.08.19.1: Startseitenhinweis zu Altweiber und Rosenmontag. */
.kg-events-highlight{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:44px;
}

.kg-section--events-highlight .kg-title{
  max-width:950px;
}

.kg-events-highlight__text p{
  max-width:900px;
  margin:24px 0 0;
  color:#fff;
  font-size:1.08rem;
  line-height:1.65;
}

.kg-events-highlight__action{
  justify-content:flex-end;
  margin-top:0;
}

.kg-section--events-highlight .kg-button{
  min-width:205px;
  background:var(--kg-green)!important;
}

.kg-section--events-highlight .kg-button:hover,
.kg-section--events-highlight .kg-button:focus-visible{
  background:#053d00!important;
}

@media(max-width:900px){
  .kg-events-highlight{
    grid-template-columns:1fr;
    gap:26px;
  }

  .kg-events-highlight__action{
    justify-content:flex-start;
  }
}

/* v2026.08.19.1: Hinweisstreifen und Informationsseite zum Rosenmontagszug. */
.site-announcement{
  position:relative;
  display:flex;
  min-height:44px;
  padding:10px 18px 15px;
  align-items:center;
  justify-content:center;
  gap:18px;
  background:var(--kg-green)!important;
  border-bottom:0;
  color:#fff!important;
  font-family:var(--kg-data);
  font-size:clamp(.78rem,1.5vw,.98rem);
  line-height:1.2;
  text-align:center;
  text-decoration:none!important;
  text-transform:uppercase;
  box-shadow:0 5px 14px rgba(7,86,0,.16);
  transition:background .2s ease;
}

.site-announcement::after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:5px;
  background-image:repeating-linear-gradient(
    90deg,
    #fff 0 5px,
    transparent 5px 13px
  );
  pointer-events:none;
}

.site-announcement strong{
  flex:0 0 auto;
  padding:.3em .55em .24em;
  background:#fff;
  color:var(--kg-green);
  font-weight:400;
}

.site-announcement:hover,
.site-announcement:focus-visible{
  background:#064900!important;
}

.site-announcement:focus-visible{
  outline:3px solid #fff;
  outline-offset:-5px;
}

.kg-registration-page{
  display:grid;
  gap:28px;
}

.kg-registration-page section{
  margin:0!important;
  padding:30px 32px;
  background:#fff;
  border-top:7px solid var(--kg-red);
  border-radius:0 0 22px 22px;
}

.kg-registration-page .kg-registration-requirements{
  border-top-color:var(--kg-green);
}

.kg-registration-page h2{
  margin:0 0 20px!important;
}

.kg-registration-page p:last-child{
  margin-bottom:0;
}

.kg-registration-page li{
  margin-bottom:9px;
}

.kg-registration-note{
  margin-top:26px;
  padding:0;
  background:transparent;
  border-left:0;
}

.kg-registration-action{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  margin-top:4px;
}

.kg-registration-button{
  display:inline-flex;
  min-height:48px;
  padding:.82em 1.4em .7em;
  align-items:center;
  justify-content:center;
  border-radius:9px;
  background:#a7a7a7;
  color:#f4f4f4;
  cursor:not-allowed;
  font-family:var(--kg-data);
  line-height:1;
  text-transform:uppercase;
  box-shadow:none;
  opacity:.78;
}

.kg-registration-action small{
  color:var(--kg-muted);
  font-size:.82rem;
}

@media(max-width:620px){
  .kg-section--home-news .kg-news-card:nth-child(n+2){
    display:none;
  }

  .site-announcement{
    align-items:stretch;
    flex-direction:column;
    gap:6px;
  }

  .site-announcement strong{
    align-self:center;
  }

  .kg-registration-page section{
    padding:24px 20px;
  }
}

@media(min-width:621px) and (max-width:900px){
  .kg-section--home-news .kg-news-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
  }
}

/* v2026.08.15.1: editierbares Sessionmotto und Geschichts-Hinweis. */
.kg-section--history-cta{
  padding:52px 22px!important;
  background:var(--kg-red)!important;
}

.kg-history-cta__inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
}

.kg-history-cta__inner h2{
  max-width:900px;
  margin:0;
  color:#fff!important;
  font-size:clamp(2rem,4.5vw,4.25rem);
  line-height:.92;
}

.kg-history-cta__inner .kg-button--history{
  min-width:180px;
  background:var(--kg-green)!important;
  box-shadow:0 9px 20px rgba(7,86,0,.22)!important;
}

.kg-history-cta__inner .kg-button--history:hover,
.kg-history-cta__inner .kg-button--history:focus-visible{
  background:#064900!important;
  box-shadow:0 12px 25px rgba(7,86,0,.3)!important;
}

@media(max-width:700px){
  .kg-history-cta__inner{
    grid-template-columns:1fr;
  }

  .kg-history-cta__inner .kg-button--history{
    width:fit-content!important;
  }
}

/* v2026.08.14.1: vollständige Abteilungsbilder und scrollende Geschichtsstrahlen. */
.department-card__visual img,
.kg-imported-content--local .department-card__visual img{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#f3eae3!important;
}

.kg-person-card__image .kg-person-card__logo{
  padding:34px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:var(--kg-green)!important;
}

.kg-imported-content--local .timeline .items{
  --timeline-progress:0%;
  isolation:isolate;
}

.kg-imported-content--local .timeline .items::before,
.kg-imported-content--local .timeline .items::after{
  z-index:0;
  pointer-events:none;
}

.kg-imported-content--local .timeline .items::after{
  content:"";
  position:absolute;
  left:10px;
  top:0;
  width:5px;
  height:var(--timeline-progress);
  border-radius:5px;
  background:linear-gradient(180deg,var(--kg-red) 0%,var(--kg-green) 75%,#0a7900 100%);
  box-shadow:0 0 12px rgba(7,86,0,.38);
  transition:height .1s linear;
}

.kg-imported-content--local .timeline .item{
  z-index:1;
  transition:border-color .28s ease,transform .28s ease,box-shadow .28s ease;
}

.kg-imported-content--local .timeline .item::before{
  z-index:2;
  background:#d9cec6;
  transition:background .25s ease,transform .25s ease,box-shadow .25s ease;
}

.kg-imported-content--local .timeline .item.is-reached{
  border-top-color:var(--kg-green)!important;
  box-shadow:0 12px 28px rgba(7,86,0,.08);
}

.kg-imported-content--local .timeline .item.is-reached::before{
  background:var(--kg-green);
  box-shadow:0 0 0 5px rgba(7,86,0,.12);
  transform:scale(1.12);
}

.kg-imported-content--local .history-timeline{
  margin:0 0 68px;
  padding:0;
}

.kg-history-image,
.kg-imported-content--local .kg-history-image{
  margin:24px 0 0!important;
  overflow:hidden;
  background:#f3eae3;
  border:0!important;
  border-radius:0 0 18px 18px;
}

.kg-history-image img,
.kg-imported-content--local .kg-history-image img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:620px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#f3eae3!important;
}

.kg-history-image figcaption,
.kg-imported-content--local .kg-history-image figcaption{
  padding:11px 14px 12px;
  background:var(--kg-green);
  color:#fff;
  font-size:.88rem;
  line-height:1.35;
}

.kg-history-image-grid,
.kg-imported-content--local .kg-history-image-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

@media(max-width:700px){
  .kg-imported-content--local .timeline .items::after{
    left:5px;
  }

  .kg-history-image-grid,
  .kg-imported-content--local .kg-history-image-grid{
    grid-template-columns:1fr;
  }
}

@media(prefers-reduced-motion:reduce){
  .kg-imported-content--local .timeline .items::after,
  .kg-imported-content--local .timeline .item,
  .kg-imported-content--local .timeline .item::before{
    transition:none;
  }
}

/* v2026.08.19.5: final responsive photo hero with IMG_5395.JPG. */
.kg-hero{
  height:clamp(520px,78svh,720px)!important;
  min-height:0!important;
  overflow:hidden!important;
  background:#140705!important;
  color:#fff!important;
}

.kg-hero__bg{
  inset:0!important;
  background-image:
    linear-gradient(90deg,rgba(20,7,5,.78) 0%,rgba(20,7,5,.46) 30%,rgba(20,7,5,.10) 60%),
    linear-gradient(180deg,rgba(20,7,5,.08) 0%,rgba(20,7,5,.06) 48%,rgba(20,7,5,.56) 100%),
    var(--kg-hero-image, url("../uploads/IMG_5395.JPG"))!important;
  background-size:cover!important;
  background-position:center 46%!important;
  background-repeat:no-repeat!important;
}

.kg-hero__cut{
  display:none!important;
}

.kg-hero__inner{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(250px,430px)!important;
  align-items:end!important;
  gap:24px!important;
  padding:clamp(38px,6vw,72px) 24px 46px!important;
}

.kg-hero__title{
  display:block!important;
  max-width:100%!important;
  margin:0!important;
  font-size:clamp(3.2rem,5.7vw,5.95rem)!important;
  line-height:.86!important;
  letter-spacing:0!important;
  color:#fff!important;
  -webkit-text-stroke:3px var(--kg-red)!important;
  text-shadow:0 5px 22px rgba(0,0,0,.34)!important;
  overflow-wrap:normal!important;
}

.kg-hero__banner{
  display:table!important;
  width:fit-content!important;
  max-width:100%!important;
  margin:8px 0 0!important;
  padding:.34em .58em .26em!important;
  background:var(--kg-green)!important;
  color:#fff!important;
  font-size:clamp(1rem,1.65vw,1.38rem)!important;
  line-height:1!important;
  white-space:normal!important;
  transform:none!important;
}

.kg-hero__buttons{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  margin:0 0 4px!important;
  justify-content:stretch!important;
  align-self:end!important;
}

.kg-hero__buttons .kg-button{
  width:100%!important;
  min-height:46px!important;
  padding:.78em .78em .68em!important;
  font-size:.8rem!important;
  line-height:1.08!important;
  white-space:normal!important;
  text-align:center!important;
}

@media(max-width:1020px){
  .kg-hero{
    height:clamp(500px,76svh,660px)!important;
  }

  .kg-hero__inner{
    grid-template-columns:minmax(0,1fr)!important;
    align-content:end!important;
    gap:18px!important;
    padding:46px 20px 38px!important;
  }

  .kg-hero__buttons{
    max-width:520px!important;
  }
}

@media(max-width:720px){
  .kg-hero{
    height:590px!important;
    min-height:590px!important;
  }

  .kg-hero__bg{
    background-image:
      linear-gradient(180deg,rgba(20,7,5,.14) 0%,rgba(20,7,5,.06) 40%,rgba(20,7,5,.52) 100%),
      var(--kg-hero-image, url("../uploads/IMG_5395.JPG"))!important;
    background-position:56% bottom!important;
  }

  .kg-hero__inner{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:stretch!important;
    padding:42px 14px 30px!important;
  }

  .kg-hero__title{
    font-size:2.72rem!important;
    line-height:.92!important;
    -webkit-text-stroke:2px var(--kg-red)!important;
  }

  .kg-hero__banner{
    margin-top:6px!important;
    font-size:1.04rem!important;
  }

  .kg-hero__buttons{
    grid-template-columns:1fr 1fr!important;
    max-width:none!important;
    margin-top:4px!important;
  }
}

@media(max-width:430px){
  .kg-hero{
    height:575px!important;
    min-height:575px!important;
  }

  .kg-hero__title{
    font-size:2.28rem!important;
  }

  .kg-hero__buttons .kg-button{
    min-height:42px!important;
    font-size:.72rem!important;
    padding:.68em .48em .58em!important;
  }
}

/* v2026.08.14.2: mehr Tiefe für die Schnellzugriffe im Hero. */
.kg-hero__buttons .kg-button{
  box-shadow:0 8px 18px rgba(20,7,5,.28),0 2px 5px rgba(20,7,5,.22)!important;
}

.kg-hero__buttons .kg-button:hover,
.kg-hero__buttons .kg-button:focus-visible{
  box-shadow:0 11px 24px rgba(20,7,5,.34),0 3px 7px rgba(20,7,5,.26)!important;
}

.kg-section--motto .kg-motto-note span,
.kg-section--motto .kg-motto-note strong{
  display:block;
  color:inherit!important;
  font-family:inherit!important;
}

.kg-section--motto .kg-motto-note span{
  margin-bottom:8px;
  font-size:.62em;
  opacity:.78;
}

.kg-section--motto .kg-motto-note strong{
  font-size:1.08em;
  font-weight:400;
}

@media(max-width:360px){
  .kg-hero__buttons{
    grid-template-columns:1fr!important;
  }
}

/* v2026.07.26.25: restore the poster-style diagonal bar and make the hero image load as real media. */
.kg-hero{
  height:clamp(560px,82svh,760px)!important;
  min-height:0!important;
  overflow:hidden!important;
  background:var(--kg-red)!important;
}

.kg-hero__bg{
  z-index:0!important;
  inset:0!important;
  overflow:hidden!important;
  background:
    linear-gradient(180deg,rgba(18,7,5,.02) 0%,rgba(18,7,5,.03) 48%,rgba(18,7,5,.34) 100%),
    var(--kg-hero-image, url("../uploads/IMG_5395.JPG")) center 45%/cover no-repeat!important;
}

.kg-hero__image{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center bottom!important;
  transform:translateY(-5%) scale(1.1)!important;
  transform-origin:center bottom!important;
  z-index:0!important;
}

.kg-hero__bg:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  z-index:1!important;
  background:linear-gradient(180deg,rgba(18,7,5,.04) 0%,rgba(18,7,5,.02) 48%,rgba(18,7,5,.36) 100%)!important;
}

.kg-hero__cut{
  display:block!important;
  position:absolute!important;
  z-index:1!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:31%!important;
  background:var(--kg-red)!important;
  clip-path:polygon(0 28%,100% 0,100% 100%,0 100%)!important;
}

.kg-hero__cut:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  opacity:.2!important;
  background-image:repeating-linear-gradient(0deg,transparent 0 28px,rgba(255,255,255,.16) 28px 30px)!important;
}

.kg-hero__inner{
  z-index:3!important;
  height:100%!important;
  min-height:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(250px,430px)!important;
  align-items:end!important;
  padding:clamp(38px,6vw,72px) 24px 44px!important;
}

@media(max-width:1020px){
  .kg-hero{
    height:clamp(540px,80svh,700px)!important;
  }
}

@media(max-width:720px){
  .kg-hero{
    height:610px!important;
    min-height:610px!important;
  }

  .kg-hero__bg{
    background:
      linear-gradient(180deg,rgba(18,7,5,.02) 0%,rgba(18,7,5,.02) 46%,rgba(18,7,5,.28) 100%),
      var(--kg-hero-image, url("../uploads/IMG_5395.JPG")) 55% bottom/cover no-repeat!important;
  }

  .kg-hero__image{
    object-position:52% bottom!important;
    transform:translateY(-4%) scale(1.06)!important;
  }

  .kg-hero__cut{
    height:38%!important;
    clip-path:polygon(0 18%,100% 0,100% 100%,0 100%)!important;
  }

  .kg-hero__inner{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:stretch!important;
    padding:42px 14px 28px!important;
  }

  .kg-hero__inner > div{
    width:100%!important;
    min-width:0!important;
  }

  .kg-hero__title{
    width:100%!important;
    max-width:100%!important;
  }

  .kg-hero__banner{
    white-space:nowrap!important;
  }
}

@media(max-width:430px){
  .kg-hero{
    height:590px!important;
    min-height:590px!important;
  }
}

/* v2026.08.13.1: requested final tuning, keeping the existing visual design. */
.kg-hero__cut{
  height:36%!important;
  clip-path:polygon(0 34%,100% 8%,100% 100%,0 100%)!important;
}

.kg-hero__title{
  position:relative!important;
  z-index:4!important;
}

.kg-hero__banner{
  position:relative!important;
  z-index:5!important;
  margin-top:-.18em!important;
  transform:rotate(-2deg)!important;
  box-shadow:5px 5px 0 rgba(0,0,0,.16)!important;
}

.kg-section--motto{
  padding:34px 22px!important;
  text-align:center!important;
}

.kg-section--motto .kg-motto-note{
  max-width:980px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  color:#fff!important;
  font-family:var(--kg-data)!important;
  font-size:clamp(1.15rem,2.2vw,1.85rem)!important;
  line-height:1.12!important;
  letter-spacing:0!important;
  text-transform:uppercase!important;
}

.site-footer__claim{
  max-width:760px!important;
}

.site-footer__claim{
  font-size:clamp(1.55rem,3.2vw,2.75rem)!important;
  line-height:.95!important;
  letter-spacing:0!important;
}

.site-footer__claim span{
  font-size:clamp(.78rem,1.25vw,1rem)!important;
  line-height:1!important;
}

@media(max-width:720px){
  .kg-hero__cut{
    height:42%!important;
    clip-path:polygon(0 24%,100% 8%,100% 100%,0 100%)!important;
  }

  .kg-hero__banner{
    white-space:normal!important;
  }

  .kg-section--motto{
    padding:28px 14px!important;
  }

  .site-footer__claim{
    max-width:360px!important;
    font-size:clamp(1.3rem,7.8vw,2rem)!important;
    line-height:.98!important;
  }
}

/* v2026.08.13.2: galleries, legal pages, hero polish and consistent subline labels. */
.kg-hero__cut:after{
  display:none!important;
  background:none!important;
}

.kg-red-pattern:before{
  display:none!important;
}

.kg-subline,
.page-hero p,
.page-content .kg-subline,
.kg-section__head .kg-subline,
.kg-imported-content .kg-subline{
  position:relative!important;
  z-index:5!important;
  display:table!important;
  width:fit-content!important;
  max-width:100%!important;
  margin:-.18em 0 0!important;
  padding:.28em .58em .22em!important;
  background:var(--kg-green)!important;
  color:#fff!important;
  font-family:var(--kg-data)!important;
  line-height:1!important;
  text-transform:uppercase!important;
  transform:rotate(-1.4deg)!important;
  border-radius:0!important;
}

.kg-section--red .kg-subline,
.kg-section--red .page-hero p{
  background:var(--kg-green)!important;
  color:#fff!important;
}

.page-content .kg-kicker{
  color:var(--kg-red)!important;
}

.kg-gallery-page,
.page-content .wp-block-gallery,
.page-content .wp-block-gallery.has-nested-images,
.page-content .kg-wp-gallery,
.page-content .gallery,
.page-content .ngg-galleryoverview,
.kg-imported-content .wp-block-gallery,
.kg-imported-content .wp-block-gallery.has-nested-images,
.kg-imported-content .kg-wp-gallery,
.kg-imported-content .gallery,
.kg-imported-content .ngg-galleryoverview,
.kg-imported-content .fusion-gallery,
.kg-imported-content .fusion-image-carousel,
.kg-imported-content .fusion-imageframe{
  max-width:100%!important;
}

.page-content .wp-block-gallery,
.page-content .wp-block-gallery.has-nested-images,
.page-content .kg-wp-gallery,
.page-content .gallery,
.page-content .ngg-galleryoverview,
.kg-imported-content .wp-block-gallery,
.kg-imported-content .wp-block-gallery.has-nested-images,
.kg-imported-content .kg-wp-gallery,
.kg-imported-content .gallery,
.kg-imported-content .ngg-galleryoverview,
.kg-imported-content .fusion-gallery{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
  margin:28px 0!important;
  padding:0!important;
}

.page-content .wp-block-gallery > *,
.page-content .kg-wp-gallery > *,
.page-content .gallery > *,
.page-content .ngg-galleryoverview > *,
.kg-imported-content .wp-block-gallery > *,
.kg-imported-content .kg-wp-gallery > *,
.kg-imported-content .gallery > *,
.kg-imported-content .ngg-galleryoverview > *,
.kg-imported-content .fusion-gallery > *{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}

.page-content .wp-block-gallery a,
.page-content .kg-wp-gallery a,
.page-content .gallery a,
.page-content .ngg-galleryoverview a,
.kg-imported-content .wp-block-gallery a,
.kg-imported-content .kg-wp-gallery a,
.kg-imported-content .gallery a,
.kg-imported-content .ngg-galleryoverview a,
.kg-imported-content .fusion-gallery a{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
}

.page-content .wp-block-gallery img,
.page-content .kg-wp-gallery img,
.page-content .gallery img,
.page-content .ngg-galleryoverview img,
.kg-imported-content .wp-block-gallery img,
.kg-imported-content .kg-wp-gallery img,
.kg-imported-content .gallery img,
.kg-imported-content .ngg-galleryoverview img,
.kg-imported-content .fusion-gallery img,
.kg-imported-content .fusion-image-carousel img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:4/3!important;
  margin:0!important;
  border:0!important;
  border-radius:0 0 18px 18px!important;
  box-shadow:none!important;
  object-fit:cover!important;
  object-position:center!important;
  background:#f3eae3!important;
}

.kg-legal-page h2{
  display:table!important;
  margin:38px 0 14px!important;
  padding:.14em .42em .1em!important;
  background:var(--kg-green)!important;
  color:#fff!important;
  transform:rotate(-.6deg)!important;
}

@media(max-width:700px){
  .page-content .wp-block-gallery,
  .page-content .wp-block-gallery.has-nested-images,
  .page-content .kg-wp-gallery,
  .page-content .gallery,
  .page-content .ngg-galleryoverview,
  .kg-imported-content .wp-block-gallery,
  .kg-imported-content .wp-block-gallery.has-nested-images,
  .kg-imported-content .kg-wp-gallery,
  .kg-imported-content .gallery,
  .kg-imported-content .ngg-galleryoverview,
  .kg-imported-content .fusion-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  .kg-subline,
  .page-hero p{
    white-space:normal!important;
  }
}

@media(max-width:430px){
  .page-content .wp-block-gallery,
  .page-content .wp-block-gallery.has-nested-images,
  .page-content .kg-wp-gallery,
  .page-content .gallery,
  .page-content .ngg-galleryoverview,
  .kg-imported-content .wp-block-gallery,
  .kg-imported-content .wp-block-gallery.has-nested-images,
  .kg-imported-content .kg-wp-gallery,
  .kg-imported-content .gallery,
  .kg-imported-content .ngg-galleryoverview,
  .kg-imported-content .fusion-gallery{
    grid-template-columns:1fr!important;
  }
}
