/*
Theme Name: Eulenstadt Modern
Theme URI: https://eulenstadt.info
Author: Thorsten M.
Description: Modernes, responsives WordPress-Theme für ein regionales Service- und Suchportal für Peine.
Version: 1.9.2
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: eulenstadt-modern
*/

:root{--navy:#14283f;--navy-2:#203e5d;--gold:#d9a441;--cream:#f6f2e9;--paper:#fff;--ink:#17202a;--muted:#637083;--line:#dde3e9;--green:#2f765f;--shadow:0 18px 50px rgba(20,40,63,.10);--radius:22px;--container:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8fafb;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}img{max-width:100%;height:auto}a{color:var(--navy-2);text-decoration:none}a:hover{color:var(--gold)}.container{width:min(calc(100% - 36px),var(--container));margin-inline:auto}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}.skip-link:focus{clip:auto;width:auto;height:auto;top:8px;left:8px;padding:10px;background:#fff;z-index:9999}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,227,233,.85)}.header-inner{min-height:78px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;color:var(--navy);font-weight:850;letter-spacing:-.035em;font-size:1.25rem}.brand-mark{width:44px;height:44px;border-radius:15px;background:var(--navy);display:grid;place-items:center;color:var(--gold);box-shadow:0 8px 20px rgba(20,40,63,.2)}.brand small{display:block;color:var(--muted);font-size:.68rem;font-weight:650;letter-spacing:.02em}.site-nav{margin-left:auto}.site-nav ul{display:flex;align-items:center;gap:5px;list-style:none;margin:0;padding:0}.site-nav a{display:block;padding:10px 12px;border-radius:10px;color:var(--ink);font-size:.92rem;font-weight:700}.site-nav a:hover,.site-nav .current-menu-item>a{background:var(--cream);color:var(--navy)}.header-search{width:42px;height:42px;border:0;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;cursor:pointer}.menu-toggle{display:none;border:0;background:var(--cream);width:44px;height:44px;border-radius:12px;font-size:1.25rem}
.hero{position:relative;overflow:hidden;background:linear-gradient(125deg,var(--navy),#244c70);color:#fff;padding:78px 0 64px}.hero:before{content:"";position:absolute;width:520px;height:520px;border:110px solid rgba(217,164,65,.12);border-radius:50%;right:-190px;top:-250px}.hero:after{content:"";position:absolute;width:220px;height:220px;background:rgba(255,255,255,.045);border-radius:50%;left:5%;bottom:-120px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#ffe1a6;text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.76rem}.hero h1{font-size:clamp(2.7rem,6vw,5.2rem);line-height:.98;letter-spacing:-.065em;margin:18px 0 22px;max-width:780px}.hero p{font-size:clamp(1.02rem,2vw,1.25rem);color:#dce7f2;max-width:670px;margin:0 0 28px}.hero-search{display:flex;background:#fff;border-radius:17px;padding:6px;box-shadow:0 18px 45px rgba(0,0,0,.22);max-width:680px}.hero-search input{border:0;outline:0;flex:1;min-width:0;padding:13px 16px;font:inherit;color:var(--ink)}.hero-search button{border:0;background:var(--gold);color:#17202a;border-radius:12px;padding:0 21px;font-weight:850;cursor:pointer}.hero-trust{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px;color:#c9d8e7;font-size:.84rem}.hero-panel{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.15);border-radius:28px;padding:24px;backdrop-filter:blur(10px)}.hero-panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.hero-panel-title strong{font-size:1.15rem}.status-dot{width:9px;height:9px;border-radius:50%;background:#73e0a9;box-shadow:0 0 0 6px rgba(115,224,169,.12)}.info-stack{display:grid;gap:10px}.info-row{display:flex;gap:13px;align-items:flex-start;background:rgba(255,255,255,.08);padding:14px;border-radius:15px}.info-icon{width:36px;height:36px;flex:none;border-radius:11px;background:rgba(217,164,65,.18);display:grid;place-items:center;color:#ffe1a6}.info-row strong{display:block;font-size:.91rem}.info-row span{display:block;color:#cfdeeb;font-size:.8rem}
.section{padding:74px 0}.section-tight{padding:46px 0}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:28px}.section-head h2{font-size:clamp(1.8rem,4vw,2.65rem);letter-spacing:-.045em;line-height:1.08;margin:0}.section-head p{color:var(--muted);max-width:560px;margin:8px 0 0}.text-link{font-weight:800;white-space:nowrap}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.quick-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:190px;background:var(--paper);padding:22px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 7px 20px rgba(20,40,63,.04);transition:.22s ease;color:var(--ink)}.quick-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:transparent;color:var(--ink)}.quick-icon{width:50px;height:50px;border-radius:16px;background:var(--cream);color:var(--navy);display:grid;place-items:center;font-size:1.4rem}.quick-card h3{font-size:1.08rem;line-height:1.25;margin:19px 0 7px}.quick-card p{font-size:.88rem;color:var(--muted);margin:0}.quick-arrow{position:absolute;right:20px;bottom:18px;font-weight:900;color:var(--gold)}
.feature-band{background:var(--cream)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.feature-card{background:#fff;border-radius:26px;padding:28px;border:1px solid rgba(20,40,63,.08)}.feature-card.dark{background:var(--navy);color:#fff}.feature-card h3{font-size:1.45rem;letter-spacing:-.03em;margin:12px 0 10px}.feature-card p{margin:0;color:var(--muted)}.feature-card.dark p{color:#cddae6}.meta-label{font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;font-weight:850;color:var(--gold)}.hours{display:grid;gap:9px;margin-top:18px}.hour-row{display:flex;justify-content:space-between;gap:20px;padding-top:9px;border-top:1px solid rgba(99,112,131,.18);font-size:.9rem}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:11px 16px;background:var(--gold);color:#18212b;font-weight:850}.button.secondary{background:#eef2f5;color:var(--navy)}.button:hover{filter:brightness(.96);color:#18212b}
.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.2s ease}.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.post-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#dfe8ef,#f5ead5);overflow:hidden}.post-thumb img{width:100%;height:100%;object-fit:cover;transition:.35s}.post-card:hover .post-thumb img{transform:scale(1.035)}.post-body{padding:21px}.post-meta{font-size:.75rem;color:var(--gold);font-weight:850;text-transform:uppercase;letter-spacing:.08em}.post-card h3{font-size:1.18rem;line-height:1.28;margin:9px 0}.post-card p{color:var(--muted);font-size:.9rem;margin:0}.empty-card{grid-column:1/-1;background:#fff;border:1px dashed #b8c3ce;border-radius:var(--radius);padding:34px;text-align:center;color:var(--muted)}
.newsletter{background:var(--navy);border-radius:30px;padding:42px;color:#fff;display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.newsletter h2{margin:0;font-size:clamp(1.7rem,4vw,2.45rem);letter-spacing:-.04em}.newsletter p{color:#cbd9e5;margin:9px 0 0}.newsletter-form{display:flex;gap:8px;background:#fff;padding:6px;border-radius:14px}.newsletter-form input{border:0;outline:0;padding:11px 13px;min-width:230px}.newsletter-form button{border:0;border-radius:10px;background:var(--gold);font-weight:850;padding:10px 15px}
.site-footer{margin-top:72px;background:#0e1d2c;color:#dce5ee;padding:58px 0 24px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:55px}.footer-brand p{color:#9fb0c1;max-width:430px}.footer-title{color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;font-weight:850}.footer-links{list-style:none;margin:16px 0 0;padding:0}.footer-links li{margin:8px 0}.footer-links a{color:#b8c6d4}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:42px;padding-top:21px;display:flex;justify-content:space-between;gap:20px;color:#8497a9;font-size:.84rem}
.page-shell{padding:56px 0}.page-header{max-width:850px;margin-bottom:32px}.page-header h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 14px}.entry-content{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,5vw,50px);box-shadow:0 8px 24px rgba(20,40,63,.04)}.entry-content h2,.entry-content h3{color:var(--navy);letter-spacing:-.025em}.entry-content a{text-decoration:underline;text-decoration-color:rgba(217,164,65,.6);text-underline-offset:3px}.entry-content table{width:100%;border-collapse:collapse}.entry-content td,.entry-content th{border-bottom:1px solid var(--line);padding:11px;text-align:left}.pagination{margin-top:28px}.nav-links{display:flex;gap:8px;flex-wrap:wrap}.page-numbers{padding:9px 13px;background:#fff;border:1px solid var(--line);border-radius:10px}.page-numbers.current{background:var(--navy);color:#fff}
.search-overlay{position:fixed;inset:0;background:rgba(9,20,31,.75);z-index:999;display:none;align-items:flex-start;justify-content:center;padding-top:12vh}.search-overlay.is-open{display:flex}.search-box{width:min(680px,calc(100% - 30px));background:#fff;border-radius:22px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.35)}.search-box-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.search-close{border:0;background:#eef2f5;border-radius:9px;width:34px;height:34px;cursor:pointer}.search-box form{display:flex;gap:8px}.search-box input{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;padding:13px}.search-box button{border:0;background:var(--gold);font-weight:850;border-radius:12px;padding:0 18px}
@media(max-width:980px){.site-nav{position:absolute;top:78px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);display:none;padding:12px 18px}.site-nav.is-open{display:block}.site-nav ul{display:block}.site-nav a{padding:12px}.menu-toggle{display:block;margin-left:auto}.header-search{margin-left:0}.hero-grid{grid-template-columns:1fr}.hero-panel{display:none}.quick-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:repeat(2,1fr)}.newsletter{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:640px){.container{width:min(calc(100% - 24px),var(--container))}.brand small{display:none}.hero{padding:58px 0 50px}.hero h1{font-size:2.65rem}.hero-search button{padding:0 13px}.hero-trust{display:none}.section{padding:54px 0}.section-head{display:block}.text-link{display:inline-block;margin-top:13px}.quick-grid,.feature-grid,.content-grid{grid-template-columns:1fr}.quick-card{min-height:165px}.newsletter{padding:27px 21px}.newsletter-form{display:grid}.newsletter-form input{min-width:0}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}.entry-content{border-radius:17px}.header-inner{gap:10px}}


/* Eulenstadt Modern 1.1 – kompakte Portal-Navigation */
:root{--navy:#082748;--navy-deep:#061d36;--gold:#dfa82b;--surface:#f4f7fa}
.site-header{background:linear-gradient(90deg,var(--navy-deep),var(--navy));border:0;color:#fff;box-shadow:0 4px 18px rgba(2,20,38,.16)}
.header-inner{min-height:82px;gap:28px}.brand{color:#fff;min-width:330px}.brand:hover{color:#fff}.brand-mark{background:transparent;border:1px solid rgba(255,255,255,.55);border-radius:0;box-shadow:none;width:48px;height:54px;color:var(--gold)}.brand-copy strong{display:block;font-size:1.22rem;text-transform:uppercase;letter-spacing:.02em}.brand-copy strong::first-letter{color:var(--gold)}.brand small{color:#d7e2ed;font-weight:500;font-size:.7rem}.site-nav{margin-left:auto}.site-nav ul{gap:18px}.site-nav a{color:#fff;padding:28px 0 24px;border-radius:0;font-size:.88rem;position:relative}.site-nav a:hover,.site-nav .current-menu-item>a{background:none;color:#fff}.site-nav a:after{content:"";position:absolute;height:3px;left:0;right:100%;bottom:17px;background:var(--gold);transition:.2s}.site-nav a:hover:after,.site-nav .current-menu-item>a:after{right:0}.site-nav .sub-menu{position:absolute;display:none;background:#fff;min-width:220px;padding:10px;border-radius:12px;box-shadow:var(--shadow);gap:0}.site-nav li{position:relative}.site-nav li:hover>.sub-menu{display:block}.site-nav .sub-menu li{display:block}.site-nav .sub-menu a{color:var(--ink);padding:10px 12px}.site-nav .sub-menu a:after{display:none}.header-actions{display:flex;align-items:center;gap:10px}.header-search,.menu-toggle{background:transparent;color:#fff;border:0}.header-search{font-size:1.75rem}.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px}.menu-toggle span{display:block;width:25px;height:2px;background:#fff;transition:.2s}
.hero{min-height:405px;padding:62px 0 104px;background-image:url('assets/images/eulenstadt-hero-clean.jpg');background-size:cover;background-position:center;color:var(--navy);display:flex;align-items:center}.hero:before,.hero:after{display:none}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.72) 38%,rgba(255,255,255,.05) 72%)}.hero-content{position:relative;z-index:1}.eyebrow{color:var(--gold);font-size:.8rem}.hero h1{font-size:clamp(2.6rem,5vw,4.5rem);max-width:620px;color:var(--navy);margin:10px 0 12px}.hero p{color:var(--navy);max-width:570px;font-size:1.05rem;margin-bottom:25px}.hero-search{max-width:540px;border-radius:10px;padding:0;overflow:hidden;box-shadow:0 12px 35px rgba(8,39,72,.16)}.hero-search input{padding:16px 18px}.hero-search button{border-radius:0;width:58px;font-size:1.6rem;color:#fff}
.quick-access{position:relative;margin-top:-50px;z-index:5}.quick-strip{display:grid;grid-template-columns:repeat(6,1fr);background:#fff;border-radius:18px;box-shadow:0 14px 38px rgba(8,39,72,.13);overflow:hidden}.quick-item{display:flex;align-items:center;gap:12px;padding:22px 16px;color:var(--navy);border-right:1px solid var(--line);min-height:104px}.quick-item:last-child{border-right:0}.quick-item:hover{background:#faf7ef;color:var(--navy)}.quick-item .quick-icon{font-size:1.7rem;background:none;width:auto;height:auto}.quick-item strong,.quick-item small{display:block}.quick-item strong{font-size:.86rem}.quick-item small{font-size:.7rem;color:var(--muted);margin-top:3px;line-height:1.35}
.portal-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.9fr);gap:24px;align-items:start}.section{padding:56px 0}.section-head{margin-bottom:18px}.section-head h2{font-size:1.55rem}.content-grid{grid-template-columns:repeat(3,1fr);gap:18px}.post-card{border-radius:12px}.post-body{padding:16px}.post-card h3{font-size:1rem}.events-panel{background:#f2f5f8;border:1px solid var(--line);border-radius:14px;padding:22px}.topic-list{display:grid;gap:10px}.topic-list a{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #e5eaf0;border-radius:10px;padding:17px;color:var(--navy);font-weight:750}.topic-list b{color:var(--gold)}.info-bar{background:linear-gradient(90deg,var(--navy),#0b355f);color:#fff;border-radius:12px;padding:20px 26px;display:grid;grid-template-columns:repeat(4,1fr);gap:0}.info-bar>div{display:flex;align-items:center;gap:13px;padding:0 22px;border-right:1px solid rgba(255,255,255,.14)}.info-bar>div:first-child{padding-left:0}.info-bar>div:last-child{border:0}.info-bar span{font-size:1.65rem;color:var(--gold)}.info-bar p{margin:0;font-size:.78rem;color:#dbe6f0}.info-bar strong{display:block;color:#fff;font-size:.84rem}.site-footer{margin-top:36px}
@media(max-width:1120px){.brand{min-width:250px}.site-nav ul{gap:12px}.site-nav a{font-size:.8rem}.quick-strip{grid-template-columns:repeat(3,1fr)}.quick-item:nth-child(3){border-right:0}.quick-item:nth-child(-n+3){border-bottom:1px solid var(--line)}}
@media(max-width:980px){.header-inner{min-height:74px}.brand{min-width:0}.site-nav{top:74px;background:var(--navy);padding:15px 18px}.site-nav ul{display:block}.site-nav a{padding:12px}.site-nav a:after{display:none}.site-nav .sub-menu{position:static;display:block;background:rgba(255,255,255,.05);box-shadow:none}.site-nav .sub-menu a{color:#fff}.menu-toggle{display:flex}.portal-grid{grid-template-columns:1fr}.content-grid{grid-template-columns:repeat(2,1fr)}.info-bar{grid-template-columns:repeat(2,1fr)}.info-bar>div:nth-child(2){border-right:0}.info-bar>div:nth-child(-n+2){padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid rgba(255,255,255,.14)}}
@media(max-width:640px){.brand-copy strong{font-size:1rem}.brand small{display:block;font-size:.58rem}.brand-mark{width:39px;height:44px}.header-search{display:none}.hero{min-height:440px;padding:48px 0 100px;background-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.82) 70%,rgba(255,255,255,.35))}.hero h1{font-size:2.65rem}.quick-strip{grid-template-columns:1fr 1fr}.quick-item,.quick-item:nth-child(3){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.quick-item:nth-child(even){border-right:0}.content-grid{grid-template-columns:1fr}.info-bar{grid-template-columns:1fr}.info-bar>div{padding:13px 0!important;margin:0!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important}.info-bar>div:last-child{border-bottom:0!important}}


/* Eulenstadt Modern 1.2 – sauberes Hero-Bild und zentrale Rechteseite */
.hero{min-height:390px;padding:64px 0 96px;background-position:center center}
.hero-shade{background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.86) 32%,rgba(255,255,255,.25) 58%,rgba(255,255,255,.02) 78%)}
.hero h1{max-width:720px;font-size:clamp(2.5rem,4.6vw,4.15rem);line-height:1.03}
.quick-strip{grid-template-columns:repeat(7,1fr)}
.quick-item{padding:20px 13px}
.home-bottom-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.topics-card,.info-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 8px 24px rgba(8,39,72,.05)}.topics-card h3,.info-card h3{margin:0 0 13px;color:var(--navy)}.topic-pills{display:flex;flex-wrap:wrap;gap:9px}.topic-pills a{border:1px solid var(--line);border-radius:999px;padding:7px 12px;font-size:.8rem}.info-card p{margin:0 0 8px;color:var(--muted)}
.legal-content{display:grid;gap:28px}.legal-section{padding-bottom:28px;border-bottom:1px solid var(--line)}.legal-section:last-of-type{border-bottom:0}.legal-section h2{font-size:1.8rem;margin-top:0}.legal-section h3{font-size:1.08rem;margin-top:24px}.legal-note{background:#fff7df;border-left:4px solid var(--gold);padding:18px 20px;border-radius:8px;color:#5c4a1d}
@media(max-width:1120px){.quick-strip{grid-template-columns:repeat(4,1fr)}.quick-item:nth-child(3){border-right:1px solid var(--line)}.quick-item:nth-child(4){border-right:0}.quick-item:nth-child(-n+4){border-bottom:1px solid var(--line)}}
@media(max-width:820px){.home-bottom-grid{grid-template-columns:1fr}.hero-shade{background:linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.80) 68%,rgba(255,255,255,.2))}}
@media(max-width:640px){.quick-strip{grid-template-columns:1fr 1fr}.hero{background-position:62% center}.hero h1{font-size:2.45rem}.legal-content{padding:24px 20px}}


/* Cookie-Consent 1.3 */
.cookie-open{overflow:hidden}.cookie-consent[hidden]{display:none!important}.cookie-consent{position:fixed;inset:0;z-index:10000;background:rgba(8,26,43,.62);display:flex;align-items:flex-end;justify-content:center;padding:22px}.cookie-consent__panel{width:min(920px,100%);background:#fff;border-radius:20px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.28);border:1px solid var(--line)}.cookie-consent__intro{display:flex;gap:16px;align-items:flex-start}.cookie-consent__icon{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:14px;background:var(--navy);color:var(--gold);font-size:1.3rem}.cookie-consent h2{margin:0 0 6px;color:var(--navy);font-size:1.35rem}.cookie-consent p{margin:0;color:var(--muted);line-height:1.55}.cookie-consent__settings{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}.cookie-option{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:13px}.cookie-option strong,.cookie-option small{display:block}.cookie-option small{color:var(--muted);font-size:.76rem;margin-top:2px}.cookie-option input{width:20px;height:20px;accent-color:var(--gold)}.cookie-option.is-required{background:#f5f7f9}.cookie-consent__links{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:.86rem}.cookie-link-button{border:0;background:none;color:var(--navy);font:inherit;font-weight:750;text-decoration:underline;cursor:pointer}.cookie-consent__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:16px}.cookie-button{border:0;border-radius:11px;padding:11px 16px;font:inherit;font-weight:800;cursor:pointer}.cookie-button--primary{background:var(--gold);color:#17202a}.cookie-button--secondary{background:#edf1f4;color:var(--navy)}.cookie-reopen{position:fixed;z-index:9998;left:14px;bottom:14px;border:0;border-radius:999px;padding:9px 13px;background:var(--navy);color:#fff;font-weight:750;font-size:.76rem;box-shadow:0 8px 24px rgba(0,0,0,.18);cursor:pointer}@media(max-width:640px){.cookie-consent{padding:10px}.cookie-consent__panel{padding:18px;border-radius:16px;max-height:92vh;overflow:auto}.cookie-consent__settings{grid-template-columns:1fr}.cookie-consent__actions{display:grid}.cookie-button{width:100%}.cookie-consent__links{align-items:flex-start;flex-direction:column}.cookie-reopen{font-size:0;width:42px;height:42px;padding:0}.cookie-reopen:after{content:'Cookies';font-size:.62rem}}


/* Eulenstadt Modern 1.5 – zentrierte regionale Werbepartner */
.partner-block{margin-top:26px;padding-top:24px;border-top:1px solid var(--line);text-align:center}
.partner-block-head{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:16px;position:relative}
.partner-block-head h3{margin:0;color:var(--navy);font-size:1.08rem}
.partner-ad-label{font-size:.64rem;line-height:1;text-transform:uppercase;letter-spacing:.11em;font-weight:850;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 8px}
.partner-carousel{max-width:290px;margin:0 auto;overflow:hidden}
.partner-track{display:flex;transition:transform .35s ease;will-change:transform}
.partner-slide{flex:0 0 100%;padding:0 2px}
.partner-card{min-height:225px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1px solid #e2e8ee;border-radius:14px;padding:20px 16px;transition:.2s ease;overflow:hidden;color:var(--navy)}
.partner-card:hover{transform:translateY(-2px);border-color:rgba(223,168,43,.75);box-shadow:0 10px 26px rgba(8,39,72,.09);color:var(--navy)}
.partner-logo{width:150px;height:86px;display:flex;align-items:center;justify-content:center;margin-bottom:13px}
.partner-logo img{display:block;max-width:100%;max-height:82px;width:auto;height:auto;object-fit:contain}
.partner-logo-placeholder{width:70px;height:70px;display:grid;place-items:center;border-radius:18px;background:#f1f4f7;font-size:2rem;font-weight:900;color:var(--navy)}
.partner-card-name{font-weight:850;text-align:center;color:var(--navy);font-size:.96rem;line-height:1.3}
.partner-card-category{margin-top:5px;color:var(--muted);font-size:.76rem;line-height:1.35}
.partner-card-link{display:inline-flex;align-items:center;gap:6px;margin-top:13px;color:#b77b00;font-size:.76rem;font-weight:850}
.partner-controls{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:12px}
.partner-arrow{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);font-weight:850;cursor:pointer;transition:.2s ease}
.partner-arrow:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.partner-dots{display:flex;align-items:center;gap:6px}.partner-dot{width:6px;height:6px;border:0;border-radius:50%;background:#c5cdd5;padding:0}.partner-dot.is-active{width:18px;border-radius:999px;background:var(--gold)}
.partner-empty{background:#fff;border:1px dashed #b8c3ce;border-radius:10px;padding:18px;text-align:center;color:var(--muted);font-size:.82rem}
@media(max-width:980px){.partner-carousel{max-width:360px}}
@media(max-width:640px){.partner-block-head{flex-wrap:wrap}.partner-carousel{max-width:100%}.partner-card{min-height:210px}}



/* Eulenstadt Modern 1.6 – Wetter statt redundanter Schnellnavigation */
.weather-block{overflow:hidden;border-radius:16px;background:linear-gradient(145deg,#092b4b,#164f78);color:#fff;box-shadow:0 14px 34px rgba(8,39,72,.16)}
.weather-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 22px 17px}
.weather-kicker{display:block;color:#f6c45f;font-size:.7rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px}
.weather-top h2{margin:0;color:#fff;font-size:1.34rem;line-height:1.12;letter-spacing:-.025em}
.weather-icon{font-size:3.1rem;line-height:1;filter:drop-shadow(0 6px 10px rgba(0,0,0,.15))}
.weather-current{display:flex;align-items:flex-end;gap:14px;padding:0 22px 19px}
.weather-temp{font-size:3.45rem;font-weight:900;line-height:.88;letter-spacing:-.065em}
.weather-condition{padding-bottom:3px;color:#dceaf4;font-size:.86rem;line-height:1.35}
.weather-condition strong{display:block;color:#fff;font-size:.98rem}
.weather-facts{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
.weather-fact{padding:13px 16px;text-align:center;border-right:1px solid rgba(255,255,255,.13)}
.weather-fact:nth-child(even){border-right:0}.weather-fact:nth-child(n+3){border-top:1px solid rgba(255,255,255,.13)}
.weather-fact span{display:block;color:#a9c4d8;font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
.weather-fact strong{display:block;color:#fff;margin-top:2px;font-size:.86rem}
.weather-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 16px;color:#bcd1e1;font-size:.67rem}
.weather-footer a{color:#fff;font-weight:800}.weather-footer a:hover{color:#f6c45f}
.weather-unavailable{background:#fff;border:1px dashed #b8c3ce;border-radius:14px;padding:22px;text-align:center;color:var(--muted)}
.events-panel>.partner-block:first-child{margin-top:0;padding-top:0;border-top:0}
@media(max-width:640px){.weather-temp{font-size:3rem}.weather-top{padding:19px 18px 15px}.weather-current{padding-left:18px;padding-right:18px}.weather-footer{align-items:flex-start;flex-direction:column}}


/* Eulenstadt Modern 1.7 – Werbepartner vor kompaktem Wetter */
.sidebar-stack{display:grid;gap:18px}
.events-panel .partner-block{margin:0;padding:0;border-top:0}
.events-panel .partner-card{min-height:178px;padding:15px 13px}
.events-panel .partner-logo{width:135px;height:68px;margin-bottom:8px}
.events-panel .partner-logo img{max-height:64px}
.events-panel .partner-card-link{margin-top:9px}
.events-panel .partner-controls{margin-top:9px}
.events-panel .weather-block{border-radius:14px;box-shadow:0 10px 24px rgba(8,39,72,.13)}
.events-panel .weather-top{padding:15px 17px 8px;align-items:center}
.events-panel .weather-kicker{display:none}
.events-panel .weather-top h2{font-size:1.02rem}
.events-panel .weather-icon{font-size:2rem}
.events-panel .weather-current{padding:0 17px 12px;gap:11px;align-items:center}
.events-panel .weather-temp{font-size:2.65rem}
.events-panel .weather-condition{font-size:.74rem;padding:0}
.events-panel .weather-condition strong{font-size:.86rem}
.events-panel .weather-facts{grid-template-columns:repeat(4,1fr)}
.events-panel .weather-fact{padding:9px 5px;border-top:0!important;border-right:1px solid rgba(255,255,255,.13)!important}
.events-panel .weather-fact:last-child{border-right:0!important}
.events-panel .weather-fact span{font-size:.54rem;letter-spacing:.035em}
.events-panel .weather-fact strong{font-size:.73rem}
.events-panel .weather-footer{padding:9px 13px;font-size:.59rem}
@media(max-width:640px){
 .events-panel .weather-facts{grid-template-columns:repeat(2,1fr)}
 .events-panel .weather-fact:nth-child(2){border-right:0!important}
 .events-panel .weather-fact:nth-child(n+3){border-top:1px solid rgba(255,255,255,.13)!important}
}


/* Eulenstadt Modern 1.8 – weiße kompakte Wetterkarte */
.events-panel .weather-block{
  background:#fff;
  color:var(--navy);
  border:1px solid var(--line);
  box-shadow:0 8px 24px rgba(8,39,72,.06);
}
.events-panel .weather-top h2,
.events-panel .weather-temp,
.events-panel .weather-condition strong,
.events-panel .weather-fact strong{color:var(--navy)}
.events-panel .weather-condition{color:var(--muted)}
.events-panel .weather-icon{filter:none}
.events-panel .weather-facts{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.events-panel .weather-fact{border-right:1px solid var(--line)!important}
.events-panel .weather-fact:last-child{border-right:0!important}
.events-panel .weather-fact span{color:var(--muted)}
.events-panel .weather-footer{color:var(--muted)}
.events-panel .weather-footer a{color:var(--navy)}
.events-panel .weather-footer a:hover{color:var(--gold)}
@media(max-width:640px){
  .events-panel .weather-fact:nth-child(n+3){border-top:1px solid var(--line)!important}
}

/* Eulenstadt Modern 1.9 – authentisches Peine-Motiv */
.hero{
  min-height:430px;
  background-image:url('assets/images/peine-marktplatz-hero.jpg');
  background-position:center 48%;
  background-size:cover;
}
.hero-shade{
  background:linear-gradient(90deg,rgba(7,31,56,.82) 0%,rgba(7,31,56,.64) 31%,rgba(7,31,56,.18) 58%,rgba(7,31,56,.02) 79%);
}
.hero h1,.hero p{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.hero h1{max-width:720px}
@media(max-width:820px){
  .hero{background-position:59% center;min-height:460px}
  .hero-shade{background:linear-gradient(90deg,rgba(7,31,56,.90),rgba(7,31,56,.68) 72%,rgba(7,31,56,.22))}
}
@media(max-width:640px){
  .hero{background-position:67% center;min-height:480px}
  .hero-shade{background:linear-gradient(90deg,rgba(7,31,56,.94),rgba(7,31,56,.75) 76%,rgba(7,31,56,.30))}
}

/* Eulenstadt Modern 1.9.1 – fein abgestimmtes Peine-Herobild */
.hero{
  background-position:center 46%;
}
@media(max-width:820px){
  .hero{background-position:61% center}
}
@media(max-width:640px){
  .hero{background-position:69% center}
}
