/*
Theme Name: Kościuszko – Originaldesign
Description: Divi-Child-Theme für die Übernahme der bestehenden Jimdo-Gestaltung.
Author: Marco Galantino
Template: Divi
Version: 0.1.12
*/
html { scroll-behavior: smooth; }
body { margin: 0; background: #fff; color: #222; }
.km-original { --headlineFontFamily: "KM Poppins"; --headlineNormalFontWeight: 600; --headlineBoldFontWeight: 700; --copyFontFamily: "KM Roboto"; --copyNormalFontWeight: 400; --copyBoldFontWeight: 700; }
.km-original img { max-width: 100%; }
.km-original [style*="translateY"] { transform: none !important; opacity: 1 !important; }
.km-original header li:hover > nav, .km-original header li:focus-within > nav { display: block !important; visibility: visible !important; opacity: 1 !important; pointer-events: auto !important; }
.km-original .km-mobile { display: none; }
.km-original .km-mobile summary { cursor: pointer; padding: 12px; font-family: "KM Roboto", sans-serif; }
.km-original .km-mobile nav { position: static; display: block; background: #fff; }
.km-original .km-mobile ul { display: block; list-style: none; margin: 0; padding: 0 18px; }
.km-original .km-mobile li { padding: 8px 0; }
.km-original .km-mobile a { color: #222; font: 16px "KM Roboto", sans-serif; text-decoration: none; }
.km-post-link { padding: 0 4.5% 28px; text-align: right; font: 16px "KM Roboto", sans-serif; }
.km-post-link a { color: #222; text-decoration: underline; }
.km-editor-post { padding: 48px max(4.5%, calc((100% - 1200px)/2)); }
.km-editor-post h1, .km-editor-post h2, .km-editor-post h3 { font-family: Poppins, sans-serif; }
.km-editor-post p, .km-editor-post li { font: 18px/1.6 "KM Roboto", sans-serif; }
.km-pagination { display:flex; flex-wrap:wrap; gap:12px; padding:32px 4.5%; font:16px "KM Roboto",sans-serif; }
.km-pagination a, .km-pagination span { padding:10px 16px; border:1px solid #ddd; color:#222; }
.km-empty { padding: 48px; font:18px "KM Roboto",sans-serif; }
.km-site-header { position:relative; z-index:50; background:#fff; color:#323335; font:16px/1.5 "KM Roboto",sans-serif; }
.km-header-inner { min-height:136px; padding:0 40px; display:flex; align-items:center; gap:24px; }
.km-brand { display:flex; align-items:center; gap:20px; flex:0 0 34%; }
.km-logo { display:block; flex:0 0 80px; }
.km-logo img { width:80px; height:80px; display:block; object-fit:contain; }
.km-brand-name { color:#323335; text-decoration:none; white-space:nowrap; }
.km-language-nav { display:flex; align-items:center; gap:32px; }
.km-language-group { display:flex; align-items:center; position:relative; }
.km-language-link { color:#323335; text-decoration:none; padding:8px 0; }
.km-current-language { text-decoration:underline; text-underline-offset:8px; }
.km-menu-toggle { color:#323335; background:none; border:0; padding:8px; font:inherit; cursor:pointer; }
.km-language-dropdown { display:none; position:absolute; top:100%; left:-16px; min-width:290px; margin:0; padding:8px 0; list-style:none; background:#fff; box-shadow:0 6px 18px #0002; }
.km-language-group:hover .km-language-dropdown, .km-language-group[data-open="true"] .km-language-dropdown { display:block; }
.km-language-dropdown li { padding:0; margin:0; }
.km-language-dropdown a { display:block; padding:10px 16px; color:#323335; text-decoration:none; line-height:1.5; }
.km-language-dropdown a:hover, .km-language-dropdown a:focus-visible { background:#f4f4f4; }
@media (max-width:1000px) {
  .km-header-inner { padding:20px 24px; flex-wrap:wrap; gap:12px 24px; }
  .km-brand { flex:1 0 100%; }
  .km-language-nav { gap:28px; }
  .km-language-dropdown { max-width:calc(100vw - 48px); min-width:260px; }
  .km-language-group:last-child .km-language-dropdown { left:auto; right:0; }
}
@media (max-width:500px) {
  .km-header-inner { padding:16px 20px; }
  .km-brand { gap:16px; }
  .km-logo, .km-logo img { width:64px; height:64px; flex-basis:64px; }
  .km-brand-name { white-space:normal; font-size:15px; }
  .km-language-nav { gap:20px; }
  .km-language-dropdown { min-width:220px; max-width:calc(100vw - 40px); }
}
@media (max-width: 900px) {
  .km-original header .kqI0W, .km-original header .G4Yk_, .km-original header .S7q2B { display: none !important; }
  .km-original .km-mobile { display: block; background: #fff; }
  .km-original header .VMnwf { flex-basis: auto !important; }
  .km-original header .DyyGf { display: flex; flex-wrap: wrap; }
}

.km-original .km-news { width:calc(100% - 80px); max-width:1280px; margin:0 auto; padding:64px 0; color:#25282a; font:16px/1.6 "KM Roboto",sans-serif; }
.km-news-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:28px; }
.km-original .km-news h1,.km-original .km-news-heading h2 { font:600 clamp(26px,3vw,40px)/1.2 "KM Poppins",sans-serif; color:#25282a; margin:0; padding:0; }
.km-news-eyebrow { font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#66727a; margin:0 0 10px; }
.km-year-filters { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 32px; }
.km-original a.km-year-filter { display:inline-block; padding:10px 18px; border:1px solid #dce0e3; border-radius:4px; color:#25282a; background:#fff; font-weight:600; text-decoration:none; }
.km-original a.km-filter-active,.km-original a.km-year-filter:hover { background:#ad2430; border-color:#ad2430; color:#fff; }
.km-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.km-news-card { min-width:0; display:flex; flex-direction:column; border:1px solid #dce0e3; border-radius:5px; overflow:hidden; background:#fff; }
.km-card-image { display:block; aspect-ratio:1.8; overflow:hidden; background:#f2f3f4; }
.km-card-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .2s; }
.km-card-image:hover img { transform:scale(1.03); }
.km-card-body { padding:24px; display:flex; flex-direction:column; flex:1; }
.km-card-date { font-size:14px; color:#66727a; margin:0 0 12px; }
.km-original .km-news-card h2 { font:600 21px/1.35 "KM Poppins",sans-serif; margin:0 0 14px; padding:0; color:#25282a; }
.km-original .km-news-card h2 a { color:inherit; text-decoration:none; }
.km-card-excerpt { color:#59666e; margin:0 0 24px; }
.km-original a.km-card-read { margin-top:auto; padding-top:12px; color:#25282a; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.km-original .km-article-detail { width:calc(100% - 80px); max-width:1200px; margin:40px auto; }
.km-news a:focus-visible { outline:3px solid #ad2430; outline-offset:4px; }
@media(max-width:1000px) { .km-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { .km-original .km-news,.km-original .km-article-detail { width:calc(100% - 40px); } .km-original .km-news { padding:40px 0; } .km-card-grid { grid-template-columns:1fr; } .km-news-heading { align-items:flex-start; flex-direction:column; } }

.km-news-heading-link { justify-content:flex-end; }

.km-original .km-current-posts { width:calc(100% - 80px); max-width:1200px; margin:0 auto; padding:24px 0 48px; }
.km-current-post + .km-current-post { margin-top:40px; }
.km-current-archive-link { padding:24px 0; text-align:right; }
@media(max-width:650px) { .km-original .km-current-posts { width:calc(100% - 40px); } }

@font-face { font-family:"KM Poppins"; font-style:normal; font-weight:600; font-display:swap; src:url("fonts/Poppins-SemiBold.ttf") format("truetype"); }
@font-face { font-family:"KM Poppins"; font-style:normal; font-weight:700; font-display:swap; src:url("fonts/Poppins-Bold.ttf") format("truetype"); }
@font-face { font-family:"KM Roboto"; font-style:normal; font-weight:100 900; font-display:swap; src:url("fonts/Roboto-Variable.ttf") format("truetype"); }
.km-original { --headlineFontFamily:"KM Poppins" !important; --copyFontFamily:"KM Roboto" !important; }
.km-hamburger { display:none; }
.km-footer-centered footer { text-align:center; }
.km-footer-centered footer > div { display:flex; flex-direction:column; align-items:center; justify-content:center; }
.km-footer-centered footer img { display:block; margin-left:auto; margin-right:auto; }
.km-footer-centered footer ul { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 24px; padding-left:0; list-style:none; }
.km-footer-centered footer nav { margin-left:auto; margin-right:auto; }
@media(max-width:1000px) {
 .km-site-header { position:sticky; top:0; transition:transform .22s ease; box-shadow:0 1px 8px #0001; }
 .km-site-header.km-header-hidden { transform:translateY(-110%); pointer-events:none; }
 .km-header-inner { min-height:88px; padding:12px 20px; flex-wrap:nowrap; gap:16px; }
 .km-brand { flex:1 1 auto; min-width:0; gap:12px; }
 .km-logo,.km-logo img { width:60px; height:60px; flex-basis:60px; }
 .km-brand-name { white-space:normal; font-size:14px; line-height:1.35; }
 .km-hamburger { display:flex; flex-direction:column; justify-content:center; gap:5px; width:44px; height:44px; flex:0 0 44px; background:transparent; border:0; padding:10px; cursor:pointer; }
 .km-hamburger span { width:24px; height:2px; background:#323335; display:block; }
 .km-site-header .km-language-nav { display:none; position:absolute; left:0; right:0; top:100%; background:white; padding:16px 24px; max-height:calc(100dvh - 88px); overflow:auto; box-shadow:0 8px 12px #0002; }
 .km-site-header.km-menu-open .km-language-nav { display:block; }
 .km-site-header .km-language-group { display:flex; flex-wrap:wrap; border-bottom:1px solid #eee; }
 .km-language-link { flex:1; padding:12px 0; }
 .km-site-header .km-language-dropdown { position:static; min-width:0; max-width:none; width:100%; box-shadow:none; padding:0 0 12px; }
 .km-language-group:hover .km-language-dropdown { display:none; }
 .km-language-group[data-open="true"] .km-language-dropdown { display:block; }
}
@media(prefers-reduced-motion:reduce) { .km-site-header { transition:none; } }

.km-footer-centered footer .qROFD { display:flex; justify-content:center; width:100%; }
.km-footer-centered footer .rMRyj,.km-footer-centered footer .zdVni { justify-content:center; text-align:center; }
.km-footer-centered footer .Ypjwe { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 24px; }
.km-contact-map { margin:0; width:100%; }
.km-contact-map img { display:block; width:100%; height:auto; }

@font-face { font-family:"Poppins"; font-style:normal; font-weight:600; font-display:swap; src:url("fonts/Poppins-SemiBold.ttf") format("truetype"); }
@font-face { font-family:"Poppins"; font-style:normal; font-weight:700; font-display:swap; src:url("fonts/Poppins-Bold.ttf") format("truetype"); }
@font-face { font-family:"Roboto"; font-style:normal; font-weight:100 900; font-display:swap; src:url("fonts/Roboto-Variable.ttf") format("truetype"); }

.km-back-row { width:calc(100% - 80px); max-width:1200px; margin:0 auto; padding:0 0 48px; }
.km-original a.km-back-overview { display:inline-block; background:#ad2430; color:white; padding:14px 24px; border-radius:4px; font:600 16px/1.5 "KM Roboto",sans-serif; text-decoration:none; }
.km-back-overview:hover { filter:brightness(.9); }
.km-lightbox-image { cursor:zoom-in; }
.km-lightbox { border:0; padding:56px 60px; width:100vw; max-width:none; height:100dvh; max-height:none; background:transparent; color:white; box-sizing:border-box; margin:0; }
.km-lightbox::backdrop { background:rgba(0,0,0,.72); }
.km-lightbox[open] { display:flex; align-items:center; justify-content:center; }
.km-lightbox figure { margin:0; display:flex; align-items:center; flex-direction:column; max-width:100%; pointer-events:none; }
.km-lightbox figure img { max-width:100%; max-height:calc(100dvh - 150px); width:auto; height:auto; object-fit:contain; pointer-events:auto; box-shadow:0 12px 48px #0005; }
.km-lightbox figcaption { padding:12px; font:15px/1.5 "KM Roboto",sans-serif; text-align:center; }
.km-lightbox button { position:absolute; border:0; background:#0005; color:white; border-radius:50%; width:44px; height:44px; font:32px/1 sans-serif; cursor:pointer; }
.km-lightbox button[hidden] { display:none; }
.km-lightbox-close { top:16px; right:16px; }
.km-lightbox-prev { left:10px; top:calc(50% - 22px); }
.km-lightbox-next { right:10px; top:calc(50% - 22px); }
.km-lightbox button:focus-visible,.km-back-overview:focus-visible { outline:3px solid #fff; outline-offset:3px; }
@media(max-width:650px) { .km-back-row { width:calc(100% - 40px); } .km-lightbox { padding:60px 10px; } .km-lightbox-prev,.km-lightbox-next { top:auto; bottom:16px; } }

.km-google-map { width:100%; min-width:0; }
.km-google-map iframe { display:block; width:100%; height:450px; border:0; }
@media(max-width:650px) { .km-google-map iframe { height:320px; } }

.km-privacy-list { max-width:1000px; margin:0 auto; padding:0 24px 56px; color:#323335; font:17px/1.7 "KM Roboto",sans-serif; }
.km-privacy-section { margin:0 0 36px; }
.km-original .km-privacy-section h2 { font:600 26px/1.35 "KM Poppins",sans-serif; color:#323335; margin:0 0 18px; padding:0; }
.km-privacy-section p { margin:0 0 16px; }
