*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#263746;background:#fff;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #f6b74b;outline-offset:3px}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:absolute;top:-80px;left:12px;z-index:20;background:white;padding:10px}.skip:focus{top:10px}.header{background:#fff;position:relative;z-index:10;box-shadow:0 2px 18px #1d4c6010}.head{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:90px}.logo{display:flex;align-items:center;gap:12px;flex-shrink:0}.logo strong{display:block;font-size:21px}.logo small{display:block;font-size:11px;color:#627581}.mark{display:none;color:#28658a;border-radius:15px;padding:8px 16px;font-size:28px}nav{display:flex;align-items:center;gap:18px;font-size:14px;font-weight:600}nav>a,summary{padding:14px 0}summary{cursor:pointer;list-style:none}summary:after{content:'⌄';margin-left:6px}details{position:relative}details[open] summary{color:#28658a}.submenu{position:absolute;right:0;top:100%;min-width:245px;background:white;border-radius:12px;box-shadow:0 12px 32px #17334425;padding:9px;max-height:70vh;overflow:auto}.submenu a{display:block;padding:9px 12px;border-radius:7px;font-weight:400}.submenu a:hover,.submenu a:focus{background:#eaf3f7}.menu-button{display:none;border:1px solid #bcd0d7;background:white;border-radius:10px;padding:9px 14px}.hero{background:#275a73}.slides{position:relative;height:480px;overflow:hidden}.slide{position:absolute;inset:0;background-image:linear-gradient(90deg,#123a56e8,#123a5680 55%,#123a5620),var(--bg);background-position:center;background-size:cover;opacity:0;visibility:hidden;transition:opacity 1.3s ease,visibility 1.3s}.slide.active{opacity:1;visibility:visible}.hero-content{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;color:white}.hero h1{font-size:clamp(34px,5vw,62px);line-height:1.12;max-width:690px;margin:14px 0}.hero p{font-size:20px;margin:0 0 27px}.overline{letter-spacing:.13em;font-size:12px;font-weight:800}.blue{color:#28658a}.btn{display:inline-block;background:#28658a;color:white;padding:12px 22px;border-radius:9px;font-weight:650}.btn.light{background:#fff;color:#245e80}.slide-controls{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:9px;align-items:center;color:white}.slide-controls button,.arrows button{border:1px solid #ffffff80;background:#ffffff30;color:white;border-radius:50%;width:38px;height:38px;font-size:23px}.slide-controls span{margin-left:10px;font-size:13px}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:-33px;position:relative;z-index:2}.tiles a{display:flex;align-items:center;flex-direction:column;background:white;border-radius:14px;padding:12px;box-shadow:0 7px 25px #1d45531c}.tiles a>span{font-size:30px;color:#69a99a}.tiles b{font-size:18px}.tiles small{color:#667b86}.section{padding-top:40px;padding-bottom:95px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:28px}h2{font-size:clamp(26px,3vw,36px);line-height:1.2;margin:9px 0 13px}.section-top p,.contact p{color:#687d87;margin:0}.arrows{display:flex;gap:8px}.arrows button{color:#28658a;border-color:#c5d7df;background:white}.carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:18px}.post{flex:0 0 calc((100% - 40px)/3);min-width:0;border-radius:15px;border:1px solid #e3edf1;overflow:hidden;scroll-snap-align:start}.post img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.post-text{padding:20px}.post-text small{color:#7b8991;float:right}.pill{font-size:11px;background:#e7f4ef;color:#286f60;padding:5px 10px;border-radius:20px;font-weight:700}.post h3{font-size:20px;line-height:1.3;margin:18px 0 8px}.post p{font-size:14px;color:#667985;min-height:48px}.muted{font-size:13px;color:#28658a;font-weight:700}.contact{background:#eaf3f7;padding:64px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.contact-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-links a{padding:19px;background:#fff;border-radius:12px;font-weight:700;color:#28658a;box-shadow:0 3px 14px #27566a0a}.page-hero{background:#eaf3f7;padding:10px 0}.page-hero a{color:#28658a}.page-hero .overline{display:block;margin-top:35px}.page-hero h1{font-size:clamp(32px,5vw,46px);margin:8px 0}.page-hero p{max-width:680px}.placeholder{border:1px solid #dfe9ed;border-radius:18px;padding:clamp(18px,3.5vw,45px);width:100%;max-width:none;min-width:0}.placeholder p{margin-bottom:28px}footer{background:rgb(9, 34, 49);color:#f0f5f6;padding:52px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-grid h2{font-size:24px}.footer-grid h3{margin:0 0 15px}.footer-grid p{color:#c3d1d7}.footer-grid a{display:block;margin-bottom:9px}.footer-bottom{border-top:1px solid #ffffff30;padding-top:20px;margin-top:35px;font-size:12px;color:#c3d1d7}@media(max-width:950px){.menu-button{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:12px 20px 24px;box-shadow:0 15px 25px #0002;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav>a,summary{display:block;padding:12px 4px;border-bottom:1px solid #edf2f4}.submenu{position:static;box-shadow:none;max-height:none;background:#f6fafb}.post{flex-basis:calc((100% - 20px)/2)}}@media(max-width:620px){.wrap{width:min(100% - 28px,1160px)}.head{min-height:76px}.logo strong{font-size:17px}.logo small{font-size:9px}.slides{height:480px}.hero p{font-size:17px}.tiles{grid-template-columns:1fr;gap:10px;margin-top:-20px}.tiles a{padding:13px}.section{padding:60px 0}.post{flex-basis:86%}.contact-grid,.footer-grid{grid-template-columns:1fr}.contact-links{gap:8px}.contact-links a{font-size:13px;padding:13px}.section-top{align-items:center}.arrows{flex-shrink:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.article-content{line-height:1.75;overflow-wrap:anywhere}.article-content h2,.article-content h3,.article-content h4{margin:1.3rem 0 .5rem}.article-content p,.article-content ul{margin:.8rem 0}.article-gallery{margin-top:2rem}.gallery-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1rem}.gallery-slider .gallery-items{display:block}.gallery-slider .gallery-item{max-width:850px;margin:auto}.gallery-item[hidden]{display:none!important}.gallery-item{margin:0}.gallery-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.gallery-slider .gallery-item img{aspect-ratio:16/9}.gallery-open{border:0;background:transparent;padding:0;width:100%;cursor:zoom-in}.gallery-item figcaption{padding:.5rem 0;color:#53636a}.gallery-controls{display:flex;gap:1rem;align-items:center;justify-content:center;margin:1rem}.gallery-controls button{padding:.5rem 1rem}#lightbox{border:0;border-radius:16px;background:#152531;color:#fff;max-width:min(95vw,1200px);max-height:95vh}#lightbox::backdrop{background:rgba(0,0,0,.85)}.lightbox-content{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem}.lightbox-content img{max-width:100%;max-height:72vh;object-fit:contain}.lightbox-content button{font-size:2rem;cursor:pointer}.lightbox-content [data-lightbox-close]{grid-column:1/-1;justify-self:end}.lightbox-content p{grid-column:1/-1;text-align:center}

/* Dynamische Schulmodule */
.module-entry{padding:1.2rem 0;border-bottom:1px solid #dce7e9}.module-entry h3,.module-entry h4{margin:.2rem 0}.module-entry p{margin:.4rem 0 1rem;white-space:normal}

/* Inhaltslinks bewusst sichtbar; Navigation und Buttons bleiben unverändert. */
.article-content a{color:#1d6486;text-decoration:underline;text-underline-offset:.16em;text-decoration-thickness:1.5px}
.article-content a:hover{text-decoration-thickness:2.5px}
.article-content .content-accordion{position:static;margin:1rem 0;border:1px solid #d5e4e9;border-radius:12px;overflow:hidden;background:#fff}
.article-content .content-accordion>summary{list-style:revert;display:list-item;cursor:pointer;font-weight:700;padding:1rem 1.2rem;background:#edf5f7;color:#214e65}
.article-content .content-accordion>summary::after{content:none}
.article-content .content-accordion[open]>summary{border-bottom:1px solid #d5e4e9}
.article-content .accordion-body{padding:1rem 1.2rem}
.article-content .accordion-body>:first-child{margin-top:0}

.page-figure{margin:1.5rem auto;max-width:920px}.page-figure img{max-width:100%;height:auto;border-radius:12px;display:block}.page-figure figcaption{color:#4d6676;font-size:.95rem;margin-top:.5rem}.hero-content:empty{display:none}

/* Ken-Burns-Animation nur auf dem Hintergrund, nicht auf Text/Buttons. */
.slide::before{content:"";position:absolute;inset:-1px;background-image:linear-gradient(90deg,#123a56e8,#123a5680 55%,#123a5620),var(--bg);background-position:center;background-size:cover;pointer-events:none;z-index:0}
.slide{background-image:none}
.slide .hero-content{position:relative;z-index:1}
.slide.active[data-ken-burns="zoom-in"]::before{animation:kb-zoom-in var(--kb-duration,8s) linear both}
.slide.active[data-ken-burns="zoom-out"]::before{animation:kb-zoom-out var(--kb-duration,8s) linear both}
.slide.active[data-ken-burns="pan-left"]::before{animation:kb-pan-left var(--kb-duration,8s) linear both}
.slide.active[data-ken-burns="pan-right"]::before{animation:kb-pan-right var(--kb-duration,8s) linear both}
@keyframes kb-zoom-in{from{transform:scale(1)}to{transform:scale(1.12)}}
@keyframes kb-zoom-out{from{transform:scale(1.12)}to{transform:scale(1)}}
@keyframes kb-pan-left{from{transform:scale(1.12) translateX(2.5%)}to{transform:scale(1.12) translateX(-2.5%)}}
@keyframes kb-pan-right{from{transform:scale(1.12) translateX(-2.5%)}to{transform:scale(1.12) translateX(2.5%)}}
@media(prefers-reduced-motion:reduce){.slide.active::before{animation:none!important;transform:none!important}}

.slides.kb-paused .slide::before{animation-play-state:paused!important}

/* v0.7.3: dezente, zentral abschaltbare Bewegungen */
@media (prefers-reduced-motion: no-preference) {
  .motion-enabled .post, .motion-enabled .tiles a, .motion-enabled .contact-links a {
    transition:transform .22s ease,box-shadow .22s ease;
  }
  @media (hover:hover) and (pointer:fine) {
    .motion-enabled .post:hover, .motion-enabled .post:focus-within,
    .motion-enabled .tiles a:hover, .motion-enabled .tiles a:focus-visible,
    .motion-enabled .contact-links a:hover, .motion-enabled .contact-links a:focus-visible {
      transform:translateY(-3px);box-shadow:0 12px 24px rgba(25,55,72,.12);
    }
    .motion-enabled .post img, .motion-enabled .gallery-item img,
    .motion-enabled .page-figure img {transition:transform .32s ease;}
    .motion-enabled .post:hover img, .motion-enabled .gallery-item:hover img,
    .motion-enabled .page-figure:hover img {transform:scale(1.035);}
  }
  .motion-enabled .post, .motion-enabled .gallery-open, .motion-enabled .page-figure {isolation:isolate;}
  .motion-enabled .post img, .motion-enabled .gallery-open img, .motion-enabled .page-figure img {object-fit:cover;}
  .motion-enabled .gallery-open {overflow:hidden;border-radius:12px;display:block;}
  .motion-enabled nav > a, .motion-enabled nav summary {position:relative;}
  .motion-enabled nav > a::after, .motion-enabled nav summary::before {
    content:'';position:absolute;bottom:7px;left:0;right:0;height:2px;
    background:#28658a;transform:scaleX(0);transform-origin:left;transition:transform .18s ease;
  }
  .motion-enabled nav > a:hover::after, .motion-enabled nav > a:focus-visible::after,
  .motion-enabled nav summary:hover::before, .motion-enabled nav summary:focus-visible::before {transform:scaleX(1);}
  .motion-enabled .article-content .content-accordion[open] > .accordion-body {animation:accordion-appear .22s ease-out both;}
  .motion-enabled .article-content .content-accordion > summary {transition:background-color .2s ease;}
  @keyframes accordion-appear {from{opacity:.45;transform:translateY(-5px)}to{opacity:1;transform:none}}
  .motion-enabled .motion-reveal {opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease;}
  .motion-enabled .motion-reveal.motion-visible {opacity:1;transform:none;}
}
@media (prefers-reduced-motion:reduce) {
  .motion-reveal {opacity:1!important;transform:none!important;}
}

/* v0.7.4 – zwei schwebende Startseitenfelder (2:1), eigenständige Slideshow */
.home-feature-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:22px;align-items:stretch}
.feature-panel{background:#fff;border:1px solid rgba(39,76,97,.12);border-radius:20px;box-shadow:0 12px 30px rgba(21,49,69,.10);padding:20px;min-width:0}
.feature-panel>h2{font-size:clamp(1.2rem,2vw,1.65rem);margin:0 0 16px}
.feature-slider{position:relative;overflow:hidden;border-radius:14px;background:#163b54}
.feature-frames{position:relative;min-height:330px;aspect-ratio:16/9}
.feature-frame{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s ease;overflow:hidden}
.feature-frame.active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.feature-frame img{width:100%;height:100%;object-fit:cover;display:block}
.feature-caption{position:absolute;bottom:0;left:0;right:0;padding:42px 18px 18px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.feature-caption h3{margin:0 0 5px;color:#fff}.feature-caption p{margin:0 0 6px;color:#fff}.feature-caption a{color:#fff;font-weight:700;text-decoration:underline}
.feature-controls{display:none;align-items:center;justify-content:center;gap:12px;padding:8px;background:#123d47;color:#fff}
.feature-controls button{border:1px solid #ffffff55;border-radius:8px;background:#ffffff20;color:#fff;font-size:1.25rem;min-width:38px;min-height:36px;cursor:pointer}
.feature-update{border-top:1px solid #dce6eb;padding:14px 0}.feature-update:first-of-type{border-top:0;padding-top:0}.feature-update h3{margin:0 0 6px;font-size:1.05rem}.feature-update p{margin:0 0 8px;white-space:normal;overflow-wrap:anywhere}.feature-update a{font-weight:650;overflow-wrap:anywhere}
.emergency-ticker{position:fixed;z-index:2000;bottom:0;left:0;right:0;display:flex;align-items:center;gap:14px;padding:10px 18px;background:#8a2e1b;color:white;box-shadow:0 -5px 22px #0003;font-weight:600}
.emergency-ticker.severity-info{background:#164c72}.emergency-ticker.severity-critical{background:#a31523}
.emergency-ticker strong{white-space:nowrap}.ticker-viewport{flex:1;min-width:0;overflow:hidden}.ticker-text{display:inline-block;margin:0;white-space:nowrap;padding-left:100%;animation:emergency-marquee 22s linear infinite}
.emergency-ticker:hover .ticker-text,.emergency-ticker:focus-within .ticker-text{animation-play-state:paused}
.emergency-ticker button{flex:none;border:1px solid #ffffff88;border-radius:6px;background:transparent;color:#fff;font-size:1.5rem;min-width:40px;min-height:40px;cursor:pointer}
@keyframes emergency-marquee{to{transform:translateX(-100%)}}
@media(max-width:760px){.home-feature-grid{grid-template-columns:1fr}.feature-frames{min-height:250px}.emergency-ticker{gap:8px;padding:7px 10px}.emergency-ticker strong{font-size:.78rem;max-width:80px;white-space:normal}.ticker-text{animation-duration:18s}}
@media(prefers-reduced-motion:reduce){.feature-frame{transition:none}.ticker-text{animation:none;white-space:normal;padding:0}.ticker-viewport{max-height:5em;overflow:auto}}

/* v0.7.5: Steuerung bleibt oberhalb aller Bilder und Animationsebenen. */
.slides .slide-controls{z-index:5;pointer-events:auto;display:none}
.slides .slide-controls button{position:relative;z-index:1;touch-action:manipulation}
/* Zweites Slideshowfenster: Bild separat animieren, Text/Links bleiben ruhig. */
.feature-frame img{transform-origin:center;will-change:auto}
@media (prefers-reduced-motion:no-preference){
.feature-frame.active[data-ken-burns="zoom-in"] img{animation:feature-kb-in var(--feature-kb-duration,8s) linear both}
.feature-frame.active[data-ken-burns="zoom-out"] img{animation:feature-kb-out var(--feature-kb-duration,8s) linear both}
.feature-frame.active[data-ken-burns="pan-left"] img{animation:feature-kb-left var(--feature-kb-duration,8s) linear both}
.feature-frame.active[data-ken-burns="pan-right"] img{animation:feature-kb-right var(--feature-kb-duration,8s) linear both}
}
@keyframes feature-kb-in{from{transform:scale(1)}to{transform:scale(1.12)}}
@keyframes feature-kb-out{from{transform:scale(1.12)}to{transform:scale(1)}}
@keyframes feature-kb-left{from{transform:scale(1.12) translateX(2.5%)}to{transform:scale(1.12) translateX(-2.5%)}}
@keyframes feature-kb-right{from{transform:scale(1.12) translateX(-2.5%)}to{transform:scale(1.12) translateX(2.5%)}}
.feature-slider.kb-paused .feature-frame img{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.feature-frame img{animation:none!important;transform:none!important}}

/* v0.7.6: Schnellzugriff auf jeder Seite oberhalb des Footers */
.quick-access{padding:44px 0 54px;background:#f3f8fa;border-top:1px solid #e1edf1}
.quick-access-heading{text-align:center;margin-bottom:25px}.quick-access-heading h2{margin:5px 0 0}
.quick-access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:16px}
.quick-access-card{min-height:80px;padding:19px 12px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:11px;text-align:center;background:white;border:1px solid #dfebef;border-radius:16px;box-shadow:0 6px 19px #173c4b13;color:#265c7a;font-weight:700;overflow:hidden}
.quick-access-card img{width:86px;height:86px;object-fit:contain;display:block}
.quick-access-title{font-size:14px;overflow-wrap:anywhere}.quick-access-symbol{font-size:36px;line-height:1;color:#639e91}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.motion-enabled .quick-access-card{transition:transform .22s ease,box-shadow .22s ease}.motion-enabled .quick-access-card:hover,.motion-enabled .quick-access-card:focus-visible{transform:translateY(-3px);box-shadow:0 12px 24px #173c4b20}}
@media(max-width:620px){.quick-access{padding:34px 0}.quick-access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-access-card{min-height:135px;padding:13px 8px}.quick-access-card img{width:70px;height:70px}}

/* v0.7.7: einzeln konfigurierbare, rein dekorative Abschnittstrenner */
.section-divider{display:block;width:100%;height:var(--divider-height,12px);background:var(--divider-color,#02b3a6);flex-shrink:0}

/* v0.7.8: DIN-A4-PDF-Vorschau, nebeneinander auf breiten Displays */
.meal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin:22px 0}
.meal-card{min-width:0;background:#fff;border:1px solid #dfe9ee;border-radius:16px;overflow:hidden;box-shadow:0 8px 28px rgba(20,55,75,.1)}
.meal-card-header{padding:18px 20px 12px}.meal-card-header h3{margin:8px 0 4px;font-size:1.08rem;overflow-wrap:anywhere}.meal-card-header p{margin:0;color:#526b7c;font-size:.9rem}
.meal-week-label{display:inline-block;padding:5px 11px;background:#e4f7f3;border-radius:100px;color:#175e57;font-size:.8rem;font-weight:700}
.meal-preview{position:relative;margin:0 14px 12px;aspect-ratio:210/297;background:#f5f7f8;border:1px solid #d9e4e8;overflow:hidden}
.meal-preview iframe{display:block;width:100%;height:100%;border:0;pointer-events:none}
.meal-preview-link{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;text-decoration:none;background:linear-gradient(transparent 80%,rgba(20,49,61,.72));color:#fff;padding:14px;text-align:center}
.meal-preview-link span{background:#fff;color:#185b72;border-radius:8px;padding:9px 14px;font-weight:700;box-shadow:0 2px 8px #0002}
.meal-preview-link:focus-visible{outline:4px solid #02b3a6;outline-offset:-4px}
.meal-fallback{padding:0 20px 15px;margin:0}.meal-note{color:#51697a;font-size:.9rem}
@media(max-width:750px){.meal-grid{grid-template-columns:1fr;max-width:520px;margin-inline:auto;gap:20px}}

/* v0.7.12: durchsuchbare Lehrkräfte-Adressliste */
.staff-directory{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin-top:18px}
.staff-directory label{font-weight:650}.staff-directory input,.staff-directory select{padding:10px;border:1px solid #b8ccd2;border-radius:8px;max-width:100%;background:#fff;color:#173a4b}
.staff-directory input{min-width:min(100%,260px);flex:1}.staff-count{width:100%;margin:4px 0;color:#4d6672}
.staff-table-wrap{width:100%;overflow-x:auto;border:1px solid #dce7eb;border-radius:12px}
.staff-table{border-collapse:collapse;width:100%;min-width:740px;background:#fff}
.staff-table th,.staff-table td{padding:12px 10px;border-bottom:1px solid #e1e9ed;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.staff-table th{background:#e8f5f3}.staff-table th button{font:inherit;font-weight:700;color:#174c55;background:none;border:0;cursor:pointer;text-align:left;padding:2px}
.staff-table tbody tr:nth-child(even){background:#f7fafb}.staff-table tbody tr:hover{background:#eaf8f5}.staff-table tbody tr[hidden]{display:none}
.staff-empty{width:100%;font-weight:600}

/* v0.7.16: Langeweile-Seite */
.boredom{max-width:900px;margin:auto}.boredom>h2{color:var(--bored-accent)}.bored-game{border:1px solid #d9e5e4;border-radius:18px;padding:1.25rem;margin:1.3rem 0;background:#fff}.bored-game button{border:1px solid var(--bored-accent);background:#fff;color:#173333;border-radius:10px;padding:.7rem 1rem;margin:.3rem;cursor:pointer}.bored-game button:hover,.bored-game button:focus-visible{background:#e9f8f6}.bored-game button:disabled{cursor:default;opacity:.65}.bored-game [data-quiz-options]{display:flex;flex-wrap:wrap;gap:.4rem}.bored-memory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;max-width:460px}.bored-memory-grid button{min-height:75px;margin:0;font-size:2rem}.bored-memory-grid button[aria-pressed="true"]{background:#d6f2ed}.bored-game input[type=number]{max-width:110px;padding:.6rem;border:1px solid #b7cbcb;border-radius:8px}@media(max-width:500px){.bored-memory-grid button{min-height:60px;padding:.25rem}}

/* v0.7.19 – Breite fuer redaktionelle Seiten: Container voll, Lesetext begrenzt. */
.placeholder .article-content{width:100%;max-width:none;min-width:0;overflow-x:auto;overflow-wrap:anywhere}
.placeholder .article-content > p,
.placeholder .article-content > ul,
.placeholder .article-content > ol,
.placeholder .article-content > blockquote,
.placeholder .article-content > h2,
.placeholder .article-content > h3,
.placeholder .article-content > h4{max-width:75ch}
/* Medien bleiben innerhalb der Seite, auch wenn die Quelle groesser ist. */
.placeholder .article-content img,
.placeholder .article-content video,
.placeholder .article-content iframe,
.placeholder .article-content figure{max-width:100%;height:auto}
/* Breite Tabellen scrollen innerhalb des Inhaltsbereichs statt das Layout aufzubrechen. */
.placeholder .article-content table{display:block;width:max-content;min-width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse}
.placeholder .article-content table th,
.placeholder .article-content table td{overflow-wrap:normal;word-break:normal}

/* v0.7.20: positionierbare Inhaltsbilder mit Textumfluss. */
.article-content .page-image-aligned{display:block;width:min(var(--page-image-width), 45%);max-width:100%;margin:0 0 1.2rem;}
.article-content .page-image-aligned img{display:block;width:100%;height:auto;border-radius:12px;}
.article-content .page-image-rechts{float:right;margin-left:1.5rem;}
.article-content .page-image-links{float:left;margin-right:1.5rem;}
.article-content .page-image-zentriert{float:none;clear:both;margin:1.5rem auto;}
.article-content .page-image-caption{display:block;font-size:.9rem;color:#4d6676;margin-top:.35rem;}
@media(max-width:600px){.article-content .page-image-aligned{width:min(var(--page-image-width), 100%);max-width:100%;float:none;clear:both;margin:1rem auto;}}

/* v0.7.21: datenschutzfreundliche, responsive FTP-Videos in Inhaltsseiten */
.article-content .page-video{display:block;clear:both;width:100%;max-width:960px;margin:1.5rem 0;}
.article-content .page-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#111;border-radius:12px;}

/* v0.7.22: optionale Infomodule rechts, mobil unter dem Artikel. */
.page-with-sidebar{display:block;min-width:0}
.page-with-sidebar.has-sidebar{display:grid;grid-template-columns:minmax(0,7fr) minmax(245px,3fr);gap:clamp(18px,3vw,36px);align-items:start}
.page-with-sidebar>.placeholder{min-width:0;width:100%;max-width:none}
.page-sidebar{min-width:0;display:grid;gap:16px}
.sidebar-card{border-radius:14px;padding:clamp(16px,2vw,24px);border:1px solid #dce9e9;overflow-wrap:anywhere}
.sidebar-card--mint{background:#e7f7f4}.sidebar-card--gray{background:#f2f5f6}.sidebar-card--white{background:#fff}.sidebar-card--blue{background:#eaf3fb}
.sidebar-card h2{font-size:1.18rem;line-height:1.3;margin:0 0 12px;display:none}.sidebar-card p{line-height:1.55;margin:10px 0}.sidebar-card a{font-weight:650;overflow-wrap:anywhere}
.sidebar-card-image{display:block;width:100%;height:auto;object-fit:contain;margin:0 0 12px;border-radius:8px}
@media(max-width:850px){.page-with-sidebar.has-sidebar{display:flex;flex-direction:column}.page-with-sidebar>.placeholder,.page-sidebar{width:100%}.page-sidebar{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}}

/* v0.7.26: mehrspaltiges, responsives Bilder-Carousel */
.gallery-carousel .gallery-items{display:flex;overflow-x:auto;gap:1rem;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;overscroll-behavior-inline:contain}
.gallery-carousel .gallery-item{flex:0 0 calc((100% - 2rem)/3);min-width:0;scroll-snap-align:start}
.gallery-carousel .gallery-item img{aspect-ratio:4/3}
@media(max-width:850px){.gallery-carousel .gallery-item{flex-basis:calc((100% - 1rem)/2)}}
@media(max-width:540px){.gallery-carousel .gallery-item{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.gallery-carousel .gallery-items{scroll-behavior:auto}}

/* v0.7.27: Bildschirmfüllende Galerie-Lightbox */
#lightbox[open]{position:fixed;inset:0;box-sizing:border-box;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:clamp(8px,2vw,24px);border:0;border-radius:0;background:#101820;color:#fff;overflow:hidden}
#lightbox .lightbox-content{height:100%;min-height:0;display:grid;grid-template-columns:minmax(36px,64px) minmax(0,1fr) minmax(36px,64px);grid-template-rows:auto minmax(0,1fr) auto;align-items:center;gap:clamp(4px,1vw,14px)}
#lightbox .lightbox-content [data-lightbox-close]{grid-column:1/-1;grid-row:1;justify-self:end;z-index:1;background:transparent;color:#fff;border:0}
#lightbox .lightbox-content [data-lightbox-prev]{grid-column:1;grid-row:2}
#lightbox .lightbox-content [data-lightbox-next]{grid-column:3;grid-row:2}
#lightbox .lightbox-content button{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:8px;min-height:44px;cursor:pointer}
#lightbox .lightbox-content img{grid-column:2;grid-row:2;justify-self:center;align-self:center;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;min-height:0}
#lightbox .lightbox-content p{grid-column:1/-1;grid-row:3;margin:0;text-align:center;max-height:4.5em;overflow:auto}
#lightbox::backdrop{background:rgba(0,0,0,.95)}
@media(max-width:520px){#lightbox[open]{padding:8px}#lightbox .lightbox-content{grid-template-columns:44px minmax(0,1fr) 44px}#lightbox .lightbox-content button{font-size:1.5rem}}

/* v0.7.27a: Dialog als echte bildschirmfüllende Ebene */
body > #lightbox[open]{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;border-radius:0!important;box-sizing:border-box!important;z-index:2147483647}
body > #lightbox .lightbox-content{height:100%;min-height:0}
body > #lightbox .lightbox-content img{max-height:100%;max-width:100%;object-fit:contain}

/* v0.7.27b: Großansicht skaliert das Bild auf den verfügbaren Viewport.
   Die alte Regel width:auto/height:auto hielt es auf seiner intrinsischen Größe. */
body > #lightbox[open] .lightbox-content #lightbox-image{
  grid-column:2;grid-row:2;display:block;
  width:100%;height:100%;max-width:100%;max-height:100%;
  min-width:0;min-height:0;object-fit:contain;aspect-ratio:auto;
  border-radius:0;
}

/* v0.7.28: Anleitungen mit barrierearmen Registerkarten */
.guide-tablist{display:flex;flex-wrap:wrap;gap:.55rem;border-bottom:2px solid #d9e6e8;padding-bottom:.75rem;margin:1.5rem 0}
.guide-tablist [role=tab]{appearance:none;border:1px solid #c5dadd;border-radius:10px;background:#f1f7f8;color:#173746;padding:.7rem 1rem;font:inherit;font-weight:650;cursor:pointer}
.guide-tablist [role=tab][aria-selected=true]{background:#027e78;color:#fff;border-color:#027e78}
.guide-tablist [role=tab]:focus-visible{outline:3px solid #f0b744;outline-offset:3px}
.guide-panel{min-width:0;padding:.6rem 0 1.2rem}
.guide-panel[hidden]{display:none!important}
@media(max-width:640px){.guide-tablist{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.guide-tablist [role=tab]{flex:none}}

/* v0.7.29: Impressionen-Hybrid-Slider */
.impressions{width:100%;max-width:none}.impressions-intro{max-width:75ch;margin:0 auto 1.4rem;text-align:center}
.impression-stage{position:relative;aspect-ratio:16/9;min-height:260px;max-height:min(78vh,900px);overflow:hidden;background:#0c1721;isolation:isolate;border-radius:14px}
.impression-frame{position:absolute;inset:0;display:none;overflow:hidden;background:#0c1721;transform-origin:center;backface-visibility:hidden}
.impression-frame.active{display:block}.impression-frame img{display:block;width:100%;height:100%;object-fit:contain}
.impression-frame figcaption{position:absolute;left:0;right:0;bottom:0;padding:2.2rem 1rem .7rem;color:white;background:linear-gradient(transparent,rgba(0,0,0,.78));text-align:center;pointer-events:none}
.impression-stage .impression-piece{position:absolute;z-index:4;background-repeat:no-repeat;pointer-events:none;transform-origin:center;transition:transform var(--speed) ease-in var(--delay),opacity var(--speed) ease-in var(--delay)}
.impression-piece.depart{transform:translateY(-30%) rotateY(75deg) scale(.7);opacity:0}
.impression-frame.impression-leave{animation:impression-fade-out var(--transition-speed) ease both}
.impression-frame.impression-leave[style*="--effect: slide"]{animation-name:impression-slide-out}
.impression-frame.impression-leave[style*="--effect: curtain"]{animation-name:impression-curtain-out}
.impression-frame.impression-leave[style*="--effect: flip"]{animation-name:impression-flip-out}
.impression-frame.impression-leave[style*="--effect: zoom"]{animation-name:impression-zoom-out}
.impression-frame.impression-enter{animation:impression-fade-in var(--transition-speed) ease both}
.impression-frame.impression-enter[style*="--effect: slide"]{animation-name:impression-slide-in}
.impression-frame.impression-enter[style*="--effect: curtain"]{animation-name:impression-curtain-in}
.impression-frame.impression-enter[style*="--effect: flip"]{animation-name:impression-flip-in}
.impression-frame.impression-enter[style*="--effect: zoom"]{animation-name:impression-zoom-in}
@keyframes impression-fade-out{to{opacity:0}}@keyframes impression-fade-in{from{opacity:0}to{opacity:1}}
@keyframes impression-slide-out{to{transform:translateX(-100%)}}@keyframes impression-slide-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
@keyframes impression-curtain-out{to{clip-path:inset(0 50% 0 50%)}}@keyframes impression-curtain-in{from{clip-path:inset(0 50% 0 50%)}to{clip-path:inset(0)}}
@keyframes impression-flip-out{to{transform:perspective(1000px) rotateY(90deg);opacity:0}}@keyframes impression-flip-in{from{transform:perspective(1000px) rotateY(-90deg);opacity:0}to{transform:perspective(1000px) rotateY(0);opacity:1}}
@keyframes impression-zoom-out{to{transform:scale(1.25);opacity:0}}@keyframes impression-zoom-in{from{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}
.impression-controls{display:flex;align-items:center;justify-content:center;gap:.7rem;margin:1rem 0}.impression-controls button{background:#193b4d;color:white;border:0;border-radius:9px;min-width:44px;min-height:44px;font-size:1.3rem;cursor:pointer}.impression-controls button:hover,.impression-controls button:focus-visible{background:#087e78}.impression-count{min-width:5em;text-align:center}
.impression-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(150px,29%),1fr));gap:.65rem}.impression-thumbs button{padding:0;border:3px solid transparent;border-radius:9px;overflow:hidden;cursor:pointer;background:transparent;aspect-ratio:4/3}.impression-thumbs button.active,.impression-thumbs button:focus-visible{border-color:#02b3a6}.impression-thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.impressions:fullscreen{background:#07121a;padding:1rem;overflow-y:auto}.impressions:fullscreen .impression-stage{max-height:76vh}
@media(max-width:650px){.impression-stage{min-height:200px;aspect-ratio:4/3}.impression-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.impression-frame,.impression-piece{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Sanfte Kamerabewegung auf dem jeweils sichtbaren Bild */
.impressions[data-ken-burns="1"] .impression-frame.active:not(.impression-leave) img{animation:impression-ken-burns 11s ease-in-out alternate infinite}
@keyframes impression-ken-burns{from{transform:scale(1)}to{transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.impressions .impression-frame img{animation:none!important}}

/* v0.7.29a: sanfter Schwebeeffekt für den Impressionen-Slider */
.impression-stage{box-shadow:0 14px 32px rgba(17,43,57,.22),0 3px 9px rgba(17,43,57,.12)}

/* v0.7.29c: responsiver Monatskalender */
.school-calendar{margin:1.25rem 0 2rem;background:#fff;border:1px solid #dbe7e9;border-radius:18px;box-shadow:0 8px 25px rgba(20,51,63,.09);overflow:hidden}
.calendar-toolbar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.7rem;padding:1rem;background:#f0f8f7}
.calendar-toolbar h3{margin:0;min-width:11rem;text-align:center;font-size:1.25rem}
.calendar-nav,.calendar-today{display:inline-flex;align-items:center;justify-content:center;border:1px solid #b7d4d0;border-radius:9px;padding:.3rem .75rem;min-height:42px;text-decoration:none;color:#164b50;background:#fff;font-weight:700}
.calendar-nav{font-size:1.5rem;min-width:42px}.calendar-today{font-size:.85rem}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#dce9e8}
.calendar-weekday{text-align:center;padding:.7rem .1rem;background:#e8f4f2;color:#24575b;font-weight:700}
.calendar-day,.calendar-empty{min-height:105px;padding:.45rem;background:#fff;min-width:0}
.calendar-day-number{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:50%;font-weight:700;font-size:.9rem}
.calendar-current .calendar-day-number{background:#087e78;color:#fff}
.calendar-has-events{background:#f5fbfa}.calendar-event{display:block;margin:.2rem 0;padding:.3rem .4rem;border-radius:6px;background:#d7efeb;color:#124d4c;font-size:.8rem;line-height:1.3;overflow-wrap:anywhere;text-decoration:none}
.calendar-event:hover,.calendar-event:focus-visible{background:#087e78;color:#fff}
.calendar-list-heading{margin-top:1.5rem}.module-entry[id^="termin-"]{scroll-margin-top:6rem}
@media(max-width:700px){.calendar-day,.calendar-empty{min-height:66px;padding:.2rem}.calendar-event{font-size:0;width:9px;height:9px;padding:0;border-radius:50%;margin:3px auto;background:#087e78}.calendar-day-number{width:25px;height:25px;font-size:.8rem}.calendar-toolbar h3{min-width:8rem;font-size:1rem}.calendar-weekday{font-size:.8rem}.calendar-grid{gap:1px}}

/* v0.7.29d: Beitragsarchive Grundschule / Werkrealschule */
.post-archive{margin:2rem 0}.post-archive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:1.3rem;margin-top:1.4rem}.post-archive-card{overflow:hidden;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(18,38,52,.11);display:flex;flex-direction:column}.post-archive-image{display:block;aspect-ratio:16/10;overflow:hidden}.post-archive-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.post-archive-image:hover img{transform:scale(1.035)}.post-archive-body{padding:1.2rem;flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}.post-archive-body h3{margin:0}.post-archive-body h3 a{color:inherit;text-decoration:none}.post-archive-body p{margin:0 0 .3rem}.post-archive-body>a:last-child{margin-top:auto}

/* v0.7.29e: kompakte, responsive Beitragskarten in den Aktuelles-Archiven */
.post-archive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;align-items:stretch}
.post-archive-card{min-width:0}
.post-archive-image{aspect-ratio:16/9}
.post-archive-body{padding:1rem;gap:.5rem}
.post-archive-body h3{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.35}
.post-archive-body p{font-size:.92rem;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.page-with-sidebar.has-sidebar .post-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.post-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.post-archive-grid,.page-with-sidebar.has-sidebar .post-archive-grid{grid-template-columns:minmax(0,1fr)}.post-archive-body h3{font-size:1.15rem}}

/* v0.7.30: Bedienungshilfen – bewusst ohne externe Abhängigkeiten */
.access-trigger{position:fixed;right:16px;bottom:16px;z-index:900;border:2px solid #fff;background:#145b65;color:#fff;padding:12px 16px;border-radius:40px;box-shadow:0 5px 20px #0005;font-weight:700;min-height:48px}
.access-panel[hidden]{display:none!important}.access-panel{position:fixed;right:16px;bottom:76px;z-index:901;width:min(410px,calc(100vw - 32px));max-height:calc(100dvh - 100px);overflow:auto;background:#fff;color:#182c35;border:2px solid #145b65;border-radius:16px;box-shadow:0 12px 38px #0005;padding:18px;font-size:1rem;line-height:1.5}
.access-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.access-head h2{font-size:1.35rem;margin:0}.access-head button,.access-font button,.access-reset{background:#e9f5f3;border:1px solid #739e9e;border-radius:8px;color:#153f47;min-width:42px;min-height:42px;padding:6px 10px}.access-panel p{font-size:.9rem;margin:.5rem 0 1rem}.access-panel label{display:flex;align-items:center;gap:12px;padding:10px 4px;border-top:1px solid #dbe5e7;cursor:pointer}.access-panel input{width:20px;height:20px;flex-shrink:0;accent-color:#145b65}.access-font{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.access-font span{flex:1 0 100%}.access-font output{min-width:65px;text-align:center}.access-reset{width:100%;margin-top:12px}
html.access-large{font-size:var(--access-font-size,100%)}html.access-large body{font-size:1rem}html.access-spacing body{letter-spacing:.07em;word-spacing:.12em;line-height:1.85}html.access-spacing p,html.access-spacing li{line-height:1.95}html.access-links a:not(.btn):not(.logo){text-decoration:underline;text-underline-offset:.18em}
html.access-gray body > :not(.access-trigger):not(.access-panel):not(script){filter:grayscale(1)}html.access-contrast body{background:#101010!important;color:#fff!important}html.access-contrast .header,html.access-contrast .placeholder,html.access-contrast .post,html.access-contrast .post-archive-card,html.access-contrast .calendar-day,html.access-contrast .calendar-toolbar,html.access-contrast .access-panel,html.access-contrast .tiles a,html.access-contrast .submenu,html.access-contrast .page-hero,html.access-contrast .contact{background:#101010!important;color:#fff!important;border-color:#fff!important}html.access-contrast a,html.access-contrast .muted,html.access-contrast p,html.access-contrast h1,html.access-contrast h2,html.access-contrast h3{color:inherit!important}html.access-contrast a{text-decoration:underline}html.access-contrast .access-panel button{background:#fff;color:#111}
html.access-motion *,html.access-motion *::before,html.access-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html.access-motion .motion-reveal{opacity:1!important;transform:none!important}html.access-motion .impression-frame img{animation:none!important}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #e5a500!important;outline-offset:3px}
@media(max-width:600px){.access-trigger span{display:none}.access-trigger{right:10px;bottom:10px}.access-panel{right:8px;bottom:70px;width:calc(100vw - 16px)}}

/* v0.7.31: keyboard focus, reflow and accessible landmarks */
:where(a,button,input,select,textarea,summary,[role="tab"],[tabindex]):focus-visible{outline:3px solid #bd6400!important;outline-offset:4px!important;box-shadow:0 0 0 2px #fff!important}
.skip:focus,.skip:focus-visible{position:fixed!important;top:10px!important;left:10px!important;z-index:999999!important;clip:auto!important;width:auto!important;height:auto!important;overflow:visible!important;background:#fff!important;color:#102c36!important;padding:12px 18px!important;border:3px solid #bd6400!important;border-radius:8px!important}
:where(.placeholder,.article-content,.guides-page,.impressions,main){min-width:0;overflow-wrap:break-word}
@media(max-width:600px){.impression-controls{flex-wrap:wrap}.guide-tablist{max-width:100%;overflow-x:auto}.calendar-grid{min-width:0}}
html.access-motion *,html.access-motion *::before,html.access-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}

/* Musikgruppen und Mediathek */
.music-group-grid,.music-media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:1.2rem;margin-top:1.5rem}
.music-group-card,.music-media-card{padding:clamp(1rem,2vw,1.6rem);border:1px solid #d6e2e5;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(18,43,53,.08);min-width:0}
.music-group-card h2,.music-media-card h2{font-size:clamp(1.15rem,2vw,1.5rem);margin-top:0}
.music-media-card audio,.music-media-card video{width:100%;max-width:100%;display:block;margin-top:1rem}
.music-detail>p:first-child{max-width:70ch}

/* Musikgruppen: kompakte Fotogalerie */
.music-gallery{margin-top:2.5rem}.music-gallery .gallery-items{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}.music-gallery .gallery-open:focus-visible{outline:3px solid #087c74;outline-offset:4px}

/* v0.7.33 – optionale, vollbreite Abschnittshintergründe */
.home-feature-section{position:relative;isolation:isolate}
.home-posts-section.has-section-background{background-image:linear-gradient(rgba(255,255,255,var(--section-overlay)),rgba(255,255,255,var(--section-overlay))),var(--section-bg);background-position:center;background-size:cover;background-repeat:no-repeat}
.home-posts-section.has-section-background.section-background-fixed{background-attachment:fixed}
.home-feature-section .home-feature-grid{position:relative;z-index:1}
@media(max-width:900px),(prefers-reduced-motion:reduce){.home-posts-section.has-section-background{background-attachment:scroll!important}}
body.motion-disabled .home-posts-section.has-section-background{background-attachment:scroll!important}

/* v0.7.33a – vollbreiter Hintergrund im Beitragsbereich */
.home-posts-section{position:relative;isolation:isolate}
.home-posts-section>.wrap{position:relative;z-index:1}

/* v0.7.33b – ruhige, leicht transparente Lesefläche über dem Schulalltag-Hintergrund */
.home-posts-section.has-section-background>.wrap{
  background:rgba(255,255,255,.92);
  border-radius:16px;
  padding:clamp(22px,3.5vw,44px) clamp(24px,4vw,54px);
}
@media(max-width:620px){
  .home-posts-section.has-section-background>.wrap{
    padding:24px 20px;
    border-radius:12px;
  }
}

/* Saisonale Dekoration: rein dekorativ, nie interaktiv */
.seasonal-snow{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:1000;opacity:.65;}
@media (prefers-reduced-motion:reduce),print{.seasonal-snow{display:none!important}}

/* Additional links in the homepage news panel */
.feature-update>a{display:block;width:fit-content;max-width:100%;margin-top:7px}
.feature-extra-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;gap:10px;align-items:end;margin:10px 0}
.feature-extra-row label{min-width:0}
.feature-extra-row input{width:100%;box-sizing:border-box}
@media(max-width:700px){.feature-extra-row{grid-template-columns:1fr}.feature-extra-row button{justify-self:start}.mark{display:none}}

/* Beitragskarussell: Karten immer sichtbar halten */
[data-carousel] .post {
    opacity: 1 !important;
    transform: none !important;
}