/* ==========================================================================
   ZŠ a MŠ Jestřebí – Demo2: doladění vzhledu šablony Kingster (verze 2)
   Barvy školy: písek #bc9c85, krémová #f5f0ed, oranžová tlačítka #e85132.
   Bez zaoblených rohů. Jednotná typografie a odsazení (viz „Typografie“).
   Soubor se načítá jako poslední – po schválení se přesune do assets/css/extra.css.
   ========================================================================== */
:root {
    --zs-sand: #bc9c85;
    --zs-sand-dark: #8c6f5b;      /* písek pro text – kontrast s bílou 4,6 : 1 */
    --zs-cream: #f5f0ed;
    --zs-ink: #2f2b28;
    --zs-text: #5a524c;
    --zs-orange: #e85132;
    --zs-orange-dark: #c93f22;
    --zs-line: #e8e0da;
    --zs-ease: cubic-bezier(.2, .7, .2, 1);

    /* typografická škála (základ 16 px) */
    --fs-body: 17px;      /* text stránek, novinek, akcí */
    --fs-table: 16px;     /* tabulky */
    --fs-perex: 15px;     /* perex ve výpisech a kartách */
    --fs-lead: 19px;      /* úvodní odstavec (perex) v detailu */
    --fs-meta: 13px;      /* datum, autor, drobečková navigace */
    --fs-item: 18px;      /* nadpis položky ve výpisu (Aktuality, Kalendář) */
    --fs-item-sm: 16px;   /* nadpis položky v úzkém sloupci (akce na úvodu, boční panel) */
    --fs-card: 19px;      /* nadpis karty novinky na úvodu */
    --fs-h1: 34px;
    --fs-h2: 25px;
    --fs-h3: 20px;
    --fs-section: 28px;   /* nadpisy sekcí na úvodu */
    --lh-text: 1.7;
    --lh-tight: 1.3;
    --gap: 24px;          /* základní svislá mezera */
}

/* ---------- Žádné zaoblené rohy ---------- */
.gdlr-core-button, .gdlr-core-event-item-thumbnail, .owl-carousel, .owl-carousel .item,
.gdlr-core-blog-thumbnail, .gdlr-core-recent-post-widget, .gdlr-core-recent-post-widget img,
.static-default img, .static-default table, .tooltiptext, .submenu-lists li > a,
.list-files__item, .kingster-top-search-wrap input, input, select, textarea, button {
    border-radius: 0 !important;
}

/* ==========================================================================
   Typografie – jedna škála pro celý web
   ========================================================================== */
.static-default p, .static-default li, .static-default td, .static-default th,
.gdlr-core-blog-content p, .gdlr-core-blog-content li {
    font-size: var(--fs-body);
    line-height: var(--lh-text);
    color: var(--zs-text);
}
.static-default p, .gdlr-core-blog-content p { margin: 0 0 1em; }
.static-default > p, .static-default > ul, .static-default > ol,
.gdlr-core-blog-content > p, .gdlr-core-blog-content > ul, .gdlr-core-blog-content > ol {
    max-width: 72ch;           /* řádek do ~75 znaků */
}
.static-default ul, .static-default ol { margin: 0 0 1.2em; padding-left: 1.3em; }
.static-default li { margin-bottom: .35em; }
.static-default strong, .static-default b { color: var(--zs-ink); font-weight: 600; }

/* nadpisy obsahu */
.static-default h1, h1.gdlr-core-blog-title, .gdlr-core-blog-full-head h1 {
    font-size: var(--fs-h1) !important;
    line-height: var(--lh-tight) !important;
    font-weight: 700;
    color: var(--zs-ink);
    letter-spacing: 0;
    margin: 0 0 var(--gap) !important;
}
.static-default h2, .gdlr-core-blog-content h2 {
    font-size: var(--fs-h2) !important;
    line-height: var(--lh-tight);
    color: var(--zs-ink);
    margin: 1.6em 0 .6em !important;
}
/* h2 v obsahu má pod sebou písečný proužek (šablona, 14 px pod textem) – odstup textu od proužku */
.static-default h2 { margin-bottom: 32px !important; }
.static-default h3, .gdlr-core-blog-content h3,
.gdlr-core-blog-content > h3 {
    font-size: var(--fs-h3) !important;
    line-height: var(--lh-tight);
    color: var(--zs-ink);
    margin: 1.5em 0 .6em !important;
}
/* nadpis stránky má pod sebou písečný proužek (šablona, 18 px pod textem) – místo pro něj */
.static-default h1 { margin-bottom: 46px !important; }
.static-default h4, .gdlr-core-blog-content h4 { font-size: 18px !important; line-height: var(--lh-tight); color: var(--zs-ink); margin: 1.3em 0 .5em !important; }
.static-default h5, .static-default h6, .gdlr-core-blog-content h5, .gdlr-core-blog-content h6 { font-size: var(--fs-body) !important; line-height: var(--lh-tight); font-weight: 700; color: var(--zs-ink); margin: 1.2em 0 .4em !important; }
.static-default > :first-child, .gdlr-core-blog-content > :first-child { margin-top: 0 !important; }

/* datum, autor, drobečky */
.gdlr-core-blog-info, .gdlr-core-blog-info a, .gdlr-core-recent-post-widget-info,
.gdlr-core-recent-post-widget-info a, .kingster-breadcrumbs, .kingster-breadcrumbs a,
.kingster-breadcrumbs span {
    font-size: var(--fs-meta) !important;
    letter-spacing: .02em;
}
.gdlr-core-blog-info, .gdlr-core-blog-info a,
.gdlr-core-recent-post-widget-info, .gdlr-core-recent-post-widget-info a { color: var(--zs-sand-dark) !important; font-weight: 600; }

/* perex: ve výpisech menší, v detailu jako úvodní odstavec */
body .gdlr-core-event-item-info-wrap, body .gdlr-core-event-item-info-wrap *,
body .gdlr-core-recent-post-widget-text, body .gdlr-core-recent-post-widget-text * {
    font-size: var(--fs-perex) !important;
    line-height: 1.6 !important;
    color: var(--zs-text) !important;
    font-weight: 400;
}
.gdlr-core-blog-content .perex, .gdlr-core-blog-content .perex * {
    font-size: var(--fs-lead) !important;
    line-height: 1.6 !important;
    font-weight: 500 !important;
    color: var(--zs-ink) !important;
}
.gdlr-core-blog-content .perex { max-width: 68ch; margin-bottom: 1.2em; }

/* odkazy v textu */
.static-default :is(p, li, td) a:not(.gdlr-core-button):not([class*="button"]) {
    color: var(--zs-sand-dark);
    text-decoration: underline;
    text-decoration-color: rgba(188, 156, 133, .5);
    text-underline-offset: 3px;
    transition: color .2s, text-decoration-color .2s;
}
.static-default :is(p, li, td) a:not(.gdlr-core-button):not([class*="button"]):hover {
    color: var(--zs-orange);
    text-decoration-color: currentColor;
}

/* ---------- Odsazení prvků v obsahu ---------- */
.static-default img, .gdlr-core-blog-content img { max-width: 100%; height: auto; }
.static-default p > img, .static-default > img, .static-default figure { margin: .4em 0 1.4em; }
.static-default iframe { display: block; max-width: 100%; margin: 0 0 1.4em; }
.gdlr-core-blog-full-head { margin: 28px 0 8px; }
.gdlr-core-blog-full-head .gdlr-core-blog-info-wrapper { margin-top: -12px; }
.gdlr-core-blog-thumbnail.gdlr-core-media-image { margin-bottom: 0; }

/* ==========================================================================
   Hlavička
   ========================================================================== */
/* plochý design: logo při najetí jen jemně zesvětlí (bez zvětšení a stínu) */
.kingster-logo-inner a img { transition: opacity .25s; }
.kingster-logo-inner a:hover img, .kingster-logo-inner a:focus-visible img { opacity: .72; }
.kingster-navigation .sf-menu > li > a { position: relative; transition: color .2s; }
.kingster-navigation .sf-menu > li > a::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 2px;
    background: var(--zs-sand);
    transform: scaleX(0); transform-origin: left;
    transition: transform .25s var(--zs-ease);
}
.kingster-navigation .sf-menu > li:hover > a { color: var(--zs-sand-dark); }
.kingster-navigation .sf-menu > li:hover > a::after { transform: scaleX(1); }
.kingster-navigation .sf-menu > li.current-menu-item > a::after { display: none; }
.sf-menu .sub-menu a { transition: background-color .2s, padding-left .2s, color .2s; }
.sf-menu .sub-menu a:hover { background: var(--zs-cream); padding-left: 26px !important; color: var(--zs-ink) !important; }
/* horní lišta: barevné ikony stejné velikosti, po najetí jen jemně ztmavnou (plochý efekt) */
.icons-quick-link > a { display: inline-grid; place-items: center; width: 34px; height: 34px; }
.icons-quick-link img.zs-qi { width: 26px !important; height: 26px !important; object-fit: contain; transition: filter .2s, opacity .2s; }
.icons-quick-link > a:hover img.zs-qi, .icons-quick-link > a:focus-visible img.zs-qi { filter: brightness(.85); }
.icons-quick-link .tooltip .tooltiptext { background: var(--zs-ink) !important; border-radius: 0 !important; font-size: 13px !important; }
.icons-quick-link .tooltip .tooltiptext::after { border-color: var(--zs-ink) transparent transparent transparent !important; }

/* drobečková navigace */
.kingster-breadcrumbs a { transition: color .2s; }
.kingster-breadcrumbs a:hover { color: var(--zs-orange); }

/* ==========================================================================
   Tlačítka
   ========================================================================== */
/* plochá tlačítka: jen tmavší barva a posun šipky */
.gdlr-core-button { transition: background-color .2s; box-shadow: none !important; transform: none !important; }
.gdlr-core-button:hover, .gdlr-core-button:focus-visible { background-color: var(--zs-orange-dark) !important; }
.gdlr-core-button i { transition: transform .2s var(--zs-ease); }
.gdlr-core-button:hover i { transform: translateX(4px); }

/* ==========================================================================
   Fotky bez odkazu (úvodní fotka novinky a akce, slider): žádné zvětšení
   – jen přejezd lesku, aby to nevypadalo jako odkaz
   ========================================================================== */
.gdlr-core-blog-full > .gdlr-core-blog-thumbnail,
.owl-carousel .item { position: relative; overflow: hidden; }
.gdlr-core-blog-full > .gdlr-core-blog-thumbnail img,
.gdlr-core-blog-full > .gdlr-core-blog-thumbnail:hover img,
.owl-carousel .item img, .owl-carousel:hover .item img {
    transform: none !important;
    opacity: 1 !important;
}
.gdlr-core-blog-full > .gdlr-core-blog-thumbnail::after,
.owl-carousel .item::after {
    content: "";
    position: absolute; top: 0; bottom: 0; left: -60%;
    width: 40%;
    background: linear-gradient(105deg, transparent 0%, rgba(255, 255, 255, .28) 50%, transparent 100%);
    transform: skewX(-12deg);
    pointer-events: none;
    opacity: 0;
}
.gdlr-core-blog-full > .gdlr-core-blog-thumbnail:hover::after,
.owl-carousel .item:hover::after {
    opacity: 1;
    left: 120%;
    transition: left .9s var(--zs-ease), opacity .2s;
}

/* slider na úvodu */
@media (min-width: 1000px) {
    .owl-carousel .item picture img, .owl-carousel .item > img { max-height: 560px; width: 100%; object-fit: cover; }
}
/* popisek a šipky slideru: stejná výška 48 px, přesně vedle sebe (dřív 46 / 48 px a překryv o zlomky px) */
.owl-carousel .item .gdlr-core-sticky-banner-arrows-left,
.owl-carousel .item .gdlr-core-sticky-banner-arrows-right,
.owl-carousel .item .gdlr-core-sticky-banner {
    box-sizing: border-box;
    height: 48px;
    line-height: 48px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    bottom: 0 !important;
}
.owl-carousel .item .gdlr-core-sticky-banner-arrows-left,
.owl-carousel .item .gdlr-core-sticky-banner-arrows-right {
    width: 48px;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center;
    box-shadow: inset -1px 0 0 rgba(47, 43, 40, .08);
}
.owl-carousel .item .gdlr-core-sticky-banner-arrows-left { left: 0 !important; }
.owl-carousel .item .gdlr-core-sticky-banner-arrows-right { left: 48px !important; }
.owl-carousel .item .gdlr-core-sticky-banner {
    left: 96px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    font-size: var(--fs-meta) !important;
    letter-spacing: .04em;
    white-space: nowrap;
}
.gdlr-core-sticky-banner-arrows-left, .gdlr-core-sticky-banner-arrows-right { cursor: pointer; transition: background-color .2s, color .2s; }
.gdlr-core-sticky-banner-arrows-left:hover, .gdlr-core-sticky-banner-arrows-right:hover { background: var(--zs-sand); color: #fff; }

/* ==========================================================================
   Úvod – nadpisy sekcí a karty novinek (celá karta je odkaz)
   ========================================================================== */
.gdlr-core-block-item-title { font-size: var(--fs-section) !important; line-height: var(--lh-tight); }
.gdlr-core-block-item-read-more { font-size: 14px; color: var(--zs-sand-dark); transition: color .2s; }
.gdlr-core-block-item-read-more:hover { color: var(--zs-orange); }

.gdlr-core-event-item-list {
    position: relative;
    margin-bottom: 64px;          /* řádky karet novinek víc od sebe (do stran beze změny) */
    padding-bottom: 18px;
    transition: transform .3s var(--zs-ease);
}
.gdlr-core-event-item-list .gdlr-core-event-item-thumbnail { overflow: hidden; margin-bottom: 18px; }
.gdlr-core-event-item-thumbnail img { transition: transform .5s var(--zs-ease); }
.gdlr-core-event-item-list .gdlr-core-type-start-date-month { margin-left: 16px; }
.gdlr-core-event-item-list .gdlr-core-event-item-content-wrap { padding-right: 16px; }
.gdlr-core-event-item-title { font-size: var(--fs-card) !important; line-height: var(--lh-tight) !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.gdlr-core-event-item-title a { transition: color .2s; }
.gdlr-core-event-item-title a::after { content: ""; position: absolute; top: 0; bottom: 0; left: 20px; right: 20px; z-index: 1; }  /* celá karta klikací */
.gdlr-core-event-item-info-wrap { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.gdlr-core-event-item-info-wrap p { margin: 0; }
/* pozadí a stín karty přes pseudoprvek – lícuje s fotkou (karta má po stranách 20px mezeru sloupce) */
.gdlr-core-event-item-list { z-index: 0; }
.gdlr-core-event-item-list::before {
    content: "";
    position: absolute;
    top: 0; bottom: 0; left: 20px; right: 20px;
    z-index: -1;
    background: transparent;
    transition: background-color .3s;
}
/* karta novinky: jen změna barvy (pozadí + nadpis), bez nadzvednutí a stínu */
.gdlr-core-event-item-list, .gdlr-core-event-item-list:hover { transform: none !important; box-shadow: none !important; }
.gdlr-core-event-item-list:hover::before { background: var(--zs-cream); }
.gdlr-core-event-item-list .gdlr-core-event-item-thumbnail img { transform: none !important; }
.gdlr-core-event-item-list:hover .gdlr-core-event-item-title a { color: var(--zs-orange); }
/* fotka karty po najetí: jemné ztmavení a oranžový proužek vyjede zleva po spodní hraně (plochý efekt, bez zvětšení) */
.gdlr-core-event-item-list .gdlr-core-event-item-thumbnail { position: relative; }
.gdlr-core-event-item-list .gdlr-core-event-item-thumbnail img { transition: filter .3s var(--zs-ease), opacity .3s; opacity: 1 !important; }
.gdlr-core-event-item-list .gdlr-core-event-item-thumbnail::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; z-index: 1;
    background: var(--zs-orange); transform: scaleX(0); transform-origin: left center; transition: transform .35s var(--zs-ease);
}
.gdlr-core-event-item-list:hover .gdlr-core-event-item-thumbnail img { filter: brightness(.86); }
.gdlr-core-event-item-list:hover .gdlr-core-event-item-thumbnail::after { transform: scaleX(1); }

/* ==========================================================================
   Seznamy akcí a novinek (úvod, Kalendář, Aktuality, panel) – celý řádek je odkaz
   ========================================================================== */
.gdlr-core-recent-post-widget {
    position: relative;
    display: flex; align-items: flex-start; gap: 16px;
    padding: 0 12px 0 0; margin: 0 0 14px;          /* zvýraznění lícuje s fotkou (bez přesahu doleva/nahoru) */
    transition: background-color .2s;
}
.gdlr-core-recent-post-widget:hover { background: var(--zs-cream); }
.gdlr-core-recent-post-widget-thumbnail { flex: 0 0 72px; width: 72px !important; max-width: none !important; margin: 0 !important; float: none !important; }
.gdlr-core-recent-post-widget-thumbnail img {
    display: block; width: 72px !important; height: 72px !important; max-width: none;
    object-fit: cover; padding: 0 !important; border: 0 !important; background: none;   /* bez rámečku */
}
.gdlr-core-recent-post-widget-content { padding: 6px 0; }
.gdlr-core-recent-post-widget-content { flex: 1; min-width: 0; overflow: visible !important; }
.gdlr-core-recent-post-widget-title { margin-bottom: 4px; }
.gdlr-core-recent-post-widget-title a {
    font-size: var(--fs-item-sm) !important; line-height: var(--lh-tight) !important; font-weight: 600;
    text-decoration: none !important; transition: color .2s;
}
.gdlr-core-recent-post-widget-title a::after { content: ""; position: absolute; inset: 0; }   /* celý řádek klikací */
.gdlr-core-recent-post-widget:hover .gdlr-core-recent-post-widget-title a { color: var(--zs-orange); }
.gdlr-core-recent-post-widget-info a { position: relative; z-index: 1; }

/* výpis Aktualit – větší fotka, perex na 3 řádky */
.static-default .gdlr-core-recent-post-widget { padding: 0 16px 0 0; margin: 0 0 20px; gap: 20px; }
.static-default .gdlr-core-recent-post-widget-thumbnail { flex-basis: 168px; width: 168px !important; }
.static-default .gdlr-core-recent-post-widget-thumbnail img { width: 168px !important; height: 112px !important; object-fit: cover; padding: 0; border: 0; }
.static-default .gdlr-core-recent-post-widget-title a { font-size: var(--fs-item) !important; }
.static-default .gdlr-core-recent-post-widget-text { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin: 2px 0 6px; }
.static-default .gdlr-core-recent-post-widget-text p { margin: 0; }
.zs-kalendar .gdlr-core-recent-post-widget-thumbnail img { object-fit: contain; background: #fff; }
@media (max-width: 600px) {
    .static-default .gdlr-core-recent-post-widget-thumbnail { flex-basis: 96px; width: 96px !important; }
    .static-default .gdlr-core-recent-post-widget-thumbnail img { width: 96px !important; height: 72px !important; }
}

/* ==========================================================================
   Boční panel
   ========================================================================== */
.submenu-lists h3 { font-size: var(--fs-h3) !important; margin-bottom: 12px; padding-bottom: 12px; border-bottom: 2px solid var(--zs-sand); }
.submenu-lists li > a {
    font-size: 15px !important;
    border-left: 3px solid transparent;
    transition: background-color .2s, border-color .2s, padding-left .2s, color .2s;
}
.submenu-lists li > a:hover { background: var(--zs-cream); border-left-color: var(--zs-sand); padding-left: 22px !important; }
.submenu-lists li.active > a { background: var(--zs-cream); border-left-color: var(--zs-orange); font-weight: 600; color: var(--zs-ink); }
.submenu-lists ul ul li > a { font-size: 14px !important; padding-top: 8px; padding-bottom: 8px; }
.kingster-sidebar-area .kingster-widget-title { font-size: 18px !important; }

/* ==========================================================================
   Tabulky, soubory, fotky u novinek
   ========================================================================== */
.static-default table {
    border-collapse: collapse; width: 100%;
    border: 1px solid var(--zs-line);
    margin: .4em 0 1.8em;
}
.static-default table td, .static-default table th {
    border: 0 !important; border-bottom: 1px solid var(--zs-line) !important;
    padding: 12px 16px; vertical-align: top; text-align: left;
    font-size: var(--fs-table) !important; line-height: 1.6;
}
.static-default table td p, .static-default table td strong, .static-default table td span { font-size: var(--fs-table) !important; }
.static-default table td p { margin: 0 0 4px; }
.static-default table tr:last-child td { border-bottom: 0 !important; }
.static-default table tr:nth-child(even) td { background: #fbf9f7; }
.static-default table tr { transition: background-color .15s; }
.static-default table tr:hover td { background: var(--zs-cream); }

/* soubory ke stažení (apply.py přestaví položky na .zs-file) */
.list-files { list-style: none; padding: 0 !important; margin: 0 0 28px !important; display: grid; gap: 8px; max-width: 720px; }
.list-files__item.zs-file { padding: 0 !important; margin: 0 !important; background: none !important; transform: none !important; }
.zs-file::before, .zs-file a::before { display: none !important; }
.zs-file { --k: var(--zs-sand-dark); }
.zs-file--pdf { --k: #c93f22; } .zs-file--doc { --k: #0a618e; } .zs-file--xls { --k: #168246; }
.zs-file--ppt { --k: #b85f0a; } .zs-file--img { --k: #762c85; } .zs-file--zip { --k: #5a524c; }
.zs-file a {
    margin: 0 !important;
    display: flex; align-items: center; gap: 16px; padding: 12px 12px 12px 14px;
    background: #fff; border: 1px solid var(--zs-line); color: var(--zs-ink) !important; text-decoration: none !important;
    transition: border-color .2s, background-color .2s;
}
.zs-file-ext {
    flex: none; position: relative; width: 42px; height: 52px; display: flex; align-items: flex-end; justify-content: center; padding-bottom: 8px;
    background: var(--k); color: #fff; font-size: 11px; font-weight: 700; letter-spacing: .06em; line-height: 1;
    clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%);
}
.zs-file-ext::after { content: ""; position: absolute; top: 0; right: 0; width: 12px; height: 12px; background: rgba(255, 255, 255, .45); clip-path: polygon(0 0, 100% 100%, 0 100%); }
.zs-file-txt { flex: 1; min-width: 0; }
.zs-file-txt strong { display: block; font-size: 16px; font-weight: 600; line-height: 1.35; color: var(--zs-ink); transition: color .2s; }
.zs-file-txt small { display: block; margin-top: 3px; font-size: var(--fs-meta); letter-spacing: .04em; color: var(--zs-sand-dark); }
.zs-file-dl { flex: none; width: 40px; height: 40px; display: grid; place-items: center; background: var(--zs-cream); color: var(--zs-sand-dark); transition: background-color .2s, color .2s; }
.zs-file-dl svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: square; transition: transform .25s var(--zs-ease); }
.zs-file a:hover, .zs-file a:focus-visible { border-color: var(--zs-sand); background: var(--zs-cream); }
.zs-file a:hover strong { color: var(--zs-orange-dark); }
.zs-file a:hover .zs-file-dl, .zs-file a:focus-visible .zs-file-dl { background: var(--zs-orange); color: #fff; }
.zs-file a:hover .zs-file-dl svg { transform: translateY(2px); }
/* seznam odkazů na soubory v textu: bez odrážky, štítek typu zarovnaný na levou hranu textu */
.static-default ul:has(> li > a:is([href$=".pdf" i], [href$=".doc" i], [href$=".docx" i], [href$=".xls" i], [href$=".xlsx" i])) { padding-left: 0 !important; }
.static-default li:has(> a:is([href$=".pdf" i], [href$=".doc" i], [href$=".docx" i], [href$=".xls" i], [href$=".xlsx" i])) { padding-left: 0 !important; margin-bottom: 10px; }
.static-default li:has(> a:is([href$=".pdf" i], [href$=".doc" i], [href$=".docx" i], [href$=".xls" i], [href$=".xlsx" i]))::before { display: none !important; }
/* odrážky v textu čtvercové (bez zaoblení) */
.static-default ul > li::before { border-radius: 0 !important; width: 6px !important; height: 6px !important; }
/* h3 v textu má pod sebou proužek (šablona, 12 px pod textem) – odstup obsahu */
.static-default h3 { margin-bottom: 30px !important; }
/* odkazy na soubory přímo v textu (tabulky dokumentů): štítek s typem */
.static-default a[href$=".pdf" i]::before, .static-default a[href$=".doc" i]::before, .static-default a[href$=".docx" i]::before,
.static-default a[href$=".xls" i]::before, .static-default a[href$=".xlsx" i]::before {
    display: inline-block; margin-right: 8px; padding: 3px 5px 2px; vertical-align: 2px;
    font-size: 10px; font-weight: 700; letter-spacing: .06em; line-height: 1.2; color: #fff; background: #c93f22; content: "PDF";
}
.static-default a[href$=".doc" i]::before, .static-default a[href$=".docx" i]::before { content: "DOC"; background: #0a618e; }
.static-default a[href$=".xls" i]::before, .static-default a[href$=".xlsx" i]::before { content: "XLS"; background: #168246; }

.static-foto-box .gdlr-core-blog-thumbnail { overflow: hidden; }
.static-foto-box .gdlr-core-blog-grid { margin-bottom: 20px !important; }
.static-foto-box .gdlr-core-blog-thumbnail img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .45s var(--zs-ease), filter .3s; }
/* fotky galerie jsou odkazy do lightboxu: ztmavení + ikona lupy = „lze zvětšit“ (hlavní foto má jen lesk) */
.static-foto-box .gdlr-core-blog-thumbnail, .static-foto-box .gdlr-core-blog-thumbnail:hover { opacity: 1 !important; }
.static-foto-box a { display: block; position: relative; overflow: hidden; cursor: zoom-in; }
.static-foto-box a::before {
    content: ""; position: absolute; inset: 0; z-index: 1;
    background: rgba(47, 43, 40, .45);
    opacity: 0; transition: opacity .3s var(--zs-ease);
}
.static-foto-box a::after {
    content: ""; position: absolute; z-index: 2; left: 50%; top: 50%;
    width: 48px; height: 48px; margin: -24px 0 0 -24px;
    background: var(--zs-orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='square'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5 21 21M10.5 7.5v6M7.5 10.5h6'/%3E%3C/svg%3E") center / 24px no-repeat;
    opacity: 0; transition: opacity .3s var(--zs-ease);
}
.static-foto-box a:hover img, .static-foto-box a:focus-visible img { transform: none !important; }
.static-foto-box a:hover::before, .static-foto-box a:focus-visible::before { opacity: 1; }
.static-foto-box a:hover::after, .static-foto-box a:focus-visible::after { opacity: 1; transform: none; }
.static-foto-box a:focus-visible { outline: 3px solid var(--zs-orange); outline-offset: 2px; }

/* ==========================================================================
   Partneři a patička
   – partneři stejně daleko od novinek i od patičky (dřív ~220 px nad a 20 px pod)
   ========================================================================== */
.gdlr-core-pbf-wrapper:has(.gdlr-core-event-item-holder) { padding-bottom: 0 !important; }
#div_1dd7_107 { padding-top: 0 !important; padding-bottom: 112px !important; }   /* kontaktní dlaždice patičky zasahují 48 px nahoru */

/* ==========================================================================
   ========================================================================== */
.partners .gdlr-core-gallery-item-holder { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 24px 56px; }
.partners .gdlr-core-gallery-item-holder > .gdlr-core-item-list { float: none; width: auto; margin: 0; }
.partners img { max-height: 64px; width: auto; transition: filter .3s, opacity .3s, transform .3s var(--zs-ease); }
.partners img:hover { filter: none !important; opacity: 1 !important; }

footer, footer p, footer a { font-size: 15px !important; line-height: 1.75 !important; }
footer .kingster-widget-title {
    font-size: 18px !important; display: block; position: relative;
    padding-bottom: 16px; margin-bottom: 8px !important; border-bottom: 0 !important;
}
/* jen krátký pískový proužek jako u nadpisů v textu (bez linky přes celou šířku) */
footer .kingster-widget-title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 48px; height: 4px; background: var(--zs-sand); }
/* odkazové sloupce v patičce: řádky se šipkou, oddělené linkou, hover posun + oranžová */
footer .gdlr-core-custom-menu-widget { list-style: none; margin: 0 !important; padding: 0 !important; }
footer .gdlr-core-custom-menu-widget li { margin: 0 !important; padding: 0 !important; border-bottom: 1px solid #e3d7ce; }
footer .gdlr-core-custom-menu-widget li::before { display: none !important; }
footer .gdlr-core-custom-menu-widget a {
    display: flex !important; align-items: center; gap: 12px; padding: 12px 0 !important;
    color: var(--zs-ink) !important; font-weight: 500; text-decoration: none;
    transition: color .2s, transform .25s var(--zs-ease);
}
footer .gdlr-core-custom-menu-widget a::before {
    content: ""; flex: none; width: 26px; height: 26px;
    background: var(--zs-sand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='square'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center / 14px no-repeat;
    transition: background-color .2s;
}
footer .gdlr-core-custom-menu-widget a[href^="http"]::after {
    content: ""; flex: none; width: 14px; height: 14px; margin-left: auto; opacity: .45;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f2b28' stroke-width='2.4' stroke-linecap='square'%3E%3Cpath d='M8 16 17 7M9 7h8v8'/%3E%3C/svg%3E") center / contain no-repeat;
    transition: opacity .2s;
}
footer .gdlr-core-custom-menu-widget a:hover, footer .gdlr-core-custom-menu-widget a:focus-visible { color: var(--zs-orange) !important; transform: translateX(4px); }
footer .gdlr-core-custom-menu-widget a:hover::before, footer .gdlr-core-custom-menu-widget a:focus-visible::before { background-color: var(--zs-orange); }
footer .gdlr-core-custom-menu-widget a:hover::after { opacity: .9; }
footer a { transition: color .2s; }
footer a:hover { color: var(--zs-orange) !important; }
.kingster-copyright-wrapper, .kingster-copyright-wrapper div, .kingster-copyright-wrapper a { font-size: var(--fs-meta) !important; }

/* ---------- Patička: kontaktní dlaždice v barvách loga, znak v pozadí, tmavá spodní lišta ---------- */
.kingster-footer-wrapper {
    position: relative; padding-top: 0 !important; padding-bottom: 40px !important;
    background: var(--zs-cream) url("../images/zs-znak.svg?v=2") no-repeat right -36px bottom -70px / 250px auto !important;
}
#kingster-page-wrapper { padding-bottom: 32px !important; }   /* místo pro dlaždice patičky (zasahují 48 px nahoru) */
.zs-foot-band { position: relative; z-index: 2; top: -48px; margin-bottom: 8px; }
.zs-foot-tiles {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 0 !important; margin: 0 20px; outline: 1px solid var(--zs-line);
}
.zs-tile {
    --c: var(--zs-sand); --cd: var(--zs-sand-dark);
    display: flex; align-items: center; gap: 16px; min-width: 0;
    padding: 22px 22px 22px 20px; background: #fff; border-top: 4px solid var(--c);
    color: var(--zs-ink) !important; text-decoration: none;
    transition: background-color .25s var(--zs-ease), border-color .25s;
}
.zs-tile + .zs-tile { border-left: 1px solid var(--zs-line); }
/* v klidu jednotně písková, barva loga až při najetí */
.zs-tile-tel  { --cd: #c93f22; }
.zs-tile-mail { --cd: #168246; }
.zs-tile-map  { --cd: #762c85; }
.zs-tile-ds   { --cd: #0a618e; }
.zs-tile-ico {
    flex: none; width: 48px; height: 48px; display: grid; place-items: center;
    background: var(--c); color: #fff; transition: background-color .25s, transform .3s var(--zs-ease);
}
.zs-tile-ico svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.zs-tile-txt { min-width: 0; }
.zs-tile small {
    display: block; font-size: 12px; line-height: 1.3; font-weight: 600; letter-spacing: .09em; text-transform: uppercase;
    color: var(--zs-sand-dark); margin-bottom: 3px; transition: color .25s;
}
.zs-tile strong {
    display: block; font-size: 17px; line-height: 1.35; font-weight: 600; color: var(--zs-ink);
    overflow-wrap: anywhere; transition: color .25s;
}
.zs-tile:is(a, button):hover, .zs-tile:is(a, button):focus-visible { background: var(--cd); border-top-color: var(--cd); }
.zs-tile:is(a, button):is(:hover, :focus-visible) :is(small, strong, .zs-tile-copy) { color: #fff; }
.zs-tile:is(a, button):is(:hover, :focus-visible) .zs-tile-ico { background: rgba(255, 255, 255, .16); }
.zs-tile:is(a, button):focus-visible { outline: 3px solid var(--zs-ink); outline-offset: 2px; }
/* dlaždice Datová schránka = tlačítko: klik zkopíruje ID (demo2.js) */
button.zs-tile {
    width: 100%; margin: 0; font: inherit; text-align: left; cursor: pointer; appearance: none;
    border: 0; border-top: 4px solid var(--c); border-radius: 0;
}
.zs-tile + button.zs-tile { border-left: 1px solid var(--zs-line); }
.zs-tile-copy { flex: none; margin-left: auto; width: 18px; height: 18px; color: var(--zs-sand-dark); opacity: .7; transition: color .25s, opacity .25s; }
.zs-tile-copy svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linejoin: round; }
.zs-tile-ds small { position: relative; }
.zs-tile-ds.is-copied small { color: transparent !important; }
.zs-tile-ds.is-copied small::after { content: "✓ " attr(data-copied); position: absolute; left: 0; top: 0; white-space: nowrap; color: var(--zs-sand-dark); }
.zs-tile-ds.is-copied:is(:hover, :focus-visible) small::after { color: #fff; }

/* první sloupec: logo, název, další telefony */
.kingster-footer-wrapper .zs-foot-logo { display: inline-block; }
.kingster-footer-wrapper .zs-foot-logo img { height: 56px !important; width: auto; display: block; transition: opacity .25s; }
.zs-foot-logo:hover img { opacity: .72; }
.zs-foot-name { margin: 16px 0 14px !important; color: var(--zs-text); }
.zs-foot-name span { color: var(--zs-sand-dark); font-size: var(--fs-meta); letter-spacing: .03em; }
.zs-foot-phones { list-style: none; margin: 0 !important; padding: 0 !important; border-top: 1px solid #e3d7ce; }
.zs-foot-phones li { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 0 !important; padding: 8px 0 !important; border-bottom: 1px solid #e3d7ce; color: var(--zs-text); }
.zs-foot-phones li::before { display: none !important; }
.zs-foot-phones a { color: var(--zs-ink) !important; font-weight: 600; white-space: nowrap; }

/* spodní lišta */
.kingster-copyright-wrapper { background: var(--zs-ink) !important; padding: 0 !important; border: 0 !important; }
.kingster-copyright-wrapper::before {
    content: ""; display: block; height: 5px;
    background: var(--zs-sand);
}
.kingster-copyright-container { padding-top: 18px !important; padding-bottom: 18px !important; }
.kingster-copyright-left { display: flex; flex-wrap: wrap; align-items: center; row-gap: 6px; color: rgba(255, 255, 255, .6) !important; line-height: 1.4 !important; padding-top: 7px; }
.kingster-copyright-left > * + * { margin-left: 12px; padding-left: 12px; border-left: 1px solid rgba(255, 255, 255, .2); }
.kingster-copyright-wrapper .kingster-copyright-left a { color: #e3cdbd !important; line-height: 1.4 !important; }
.kingster-copyright-wrapper .kingster-copyright-left a:hover { color: #fff !important; }
.kingster-copyright-wrapper .gdlr-core-social-network-item { padding: 0 !important; margin: 0 !important; }
.kingster-copyright-wrapper .gdlr-core-social-network-icon {
    display: inline-grid !important; place-items: center; width: 36px; height: 36px; margin: 0 !important;
    background: var(--zs-sand); color: #fff !important; font-size: 16px !important; transition: background-color .2s, transform .2s;
}
.kingster-copyright-wrapper .gdlr-core-social-network-icon:hover { background: #1877f2; color: #fff !important; }

@media (max-width: 999px) {
    .zs-foot-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .zs-tile:nth-child(3), button.zs-tile:nth-child(3) { border-left: 0; }
    .kingster-footer-wrapper { background-size: 150px auto !important; }
}
@media (max-width: 599px) {
    .zs-foot-band { top: -32px; margin-bottom: 0; }
    .zs-foot-tiles { grid-template-columns: 1fr; margin: 0 16px; }
    .zs-tile, .zs-tile:nth-child(n), .zs-tile + button.zs-tile { border-left: 0; padding: 16px; }
    .kingster-copyright-left > * + * { margin-left: 0; padding-left: 0; border-left: 0; }
    .kingster-copyright-left { flex-direction: column; align-items: flex-start; }
}
/* stránkování výpisů */
.gdlr-core-pagination a { font-size: 14px !important; transition: background-color .2s, color .2s; }
.gdlr-core-pagination a:hover { background: var(--zs-sand); color: #fff; }

/* ==========================================================================
   Mobil
   ========================================================================== */
@media (max-width: 767px) {
    :root { --fs-h1: 28px; --fs-h2: 22px; --fs-h3: 19px; --fs-section: 24px; --fs-card: 18px; --fs-lead: 18px; --fs-body: 16px; }
    .static-default table td, .static-default table th { padding: 8px 10px; font-size: 15px !important; }
}

/* ==========================================================================
   Přístupnost
   ========================================================================== */
a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid var(--zs-orange); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* ---------- Detail novinky / akce: předchozí, všechny, další ---------- */
.kingster-sidebar-center:has(.zs-pager) .gdlr-core-blog-full { margin-bottom: 0 !important; }
.kingster-sidebar-center:has(.zs-pager) .gdlr-core-blog-item { padding-bottom: 0 !important; }
.zs-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* plochá navigace: dvě poloviny oddělené linkou, bez rámečků a náhledů; pod nimi odkaz na celý výpis */
.zs-pager { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); margin: 0 20px 56px; padding: 0 !important; border-top: 1px solid var(--zs-line); }   /* okraj místo paddingu, ať linky končí s textem */
.zs-pager-prev, .zs-pager-next {
    display: flex; flex-direction: column; gap: 6px; min-width: 0;
    padding: 22px 28px 24px 0; border-bottom: 1px solid var(--zs-line);
    color: var(--zs-ink) !important; text-decoration: none !important;
}
.zs-pager-next { padding: 22px 0 24px 28px; border-left: 1px solid var(--zs-line); align-items: flex-end; text-align: right; }
.zs-pager-dir {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 12px; line-height: 1.3; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--zs-sand-dark);
    transition: color .2s;
}
.zs-pager-ico { display: inline-grid; place-items: center; transition: transform .25s var(--zs-ease); }
.zs-pager svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: square; }
.zs-pager-prev strong, .zs-pager-next strong {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    font-size: 18px; line-height: 1.35; font-weight: 600; transition: color .2s;
}
.zs-pager-date { font-size: var(--fs-meta); color: var(--zs-text); letter-spacing: .02em; }
.zs-pager-prev:is(:hover, :focus-visible) :is(strong, .zs-pager-dir),
.zs-pager-next:is(:hover, :focus-visible) :is(strong, .zs-pager-dir) { color: var(--zs-orange); }
.zs-pager-prev:hover .zs-pager-ico { transform: translateX(-4px); }
.zs-pager-next:hover .zs-pager-ico { transform: translateX(4px); }
.zs-pager .is-empty { visibility: visible; }
.zs-pager-all {
    grid-column: 1 / -1; justify-self: center; display: inline-flex; align-items: center; gap: 10px;
    margin-top: 18px; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
    color: var(--zs-sand-dark) !important; text-decoration: none !important; transition: color .2s;
}
.zs-pager-all svg { width: 14px; height: 14px; fill: currentColor; stroke: none; }
.zs-pager-all:hover, .zs-pager-all:focus-visible { color: var(--zs-orange) !important; }
.zs-pager a:focus-visible { outline: 3px solid var(--zs-orange); outline-offset: 2px; }
@media (max-width: 599px) {
    .zs-pager { grid-template-columns: 1fr; }
    .zs-pager-prev, .zs-pager-next { padding: 18px 0; }
    .zs-pager-next { border-left: 0; }
    .zs-pager .is-empty { display: none; }
    .zs-pager-prev strong, .zs-pager-next strong { font-size: 16px; }
}

/* ---------- Lightbox galerie (demo2.js, <dialog>) ---------- */
html.zs-lb-open { overflow: hidden; }
dialog.zs-lb {
    position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none;
    margin: 0; padding: 0; border: 0; border-radius: 0; color: #fff;
    background: rgba(28, 25, 23, .96);
    font-family: inherit;
}
dialog.zs-lb[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; animation: zs-lb-in .25s var(--zs-ease); }
dialog.zs-lb::backdrop { background: transparent; }
@keyframes zs-lb-in { from { opacity: 0; } }
.zs-lb button {
    display: inline-flex; align-items: center; justify-content: center;
    border: 0; border-radius: 0; padding: 0; margin: 0; cursor: pointer;
    background: rgba(255, 255, 255, .08); color: #fff;
    transition: background .2s, color .2s;
}
.zs-lb button:hover { background: var(--zs-orange); }
.zs-lb button:focus-visible { outline: 3px solid var(--zs-sand); outline-offset: 2px; }
.zs-lb svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: square; }
.zs-lb-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; }
.zs-lb-count {
    min-width: 72px; height: 48px; padding: 0 16px; display: inline-flex; align-items: center; justify-content: center;
    background: var(--zs-sand); color: #fff; font-size: 15px; font-weight: 600; letter-spacing: .04em; font-variant-numeric: tabular-nums;
}
.zs-lb-close { width: 48px; height: 48px; }
.zs-lb-stage { position: relative; display: flex; align-items: center; justify-content: center; padding: 0 88px; min-height: 0; touch-action: pan-y; }
.zs-lb-stage figure { margin: 0; max-width: 100%; max-height: 100%; display: flex; flex-direction: column; align-items: center; min-height: 0; }
.zs-lb-stage img {
    display: block; max-width: 100%; max-height: calc(100vh - 80px - 116px - 16px); max-height: calc(100dvh - 80px - 116px - 16px);
    width: auto; height: auto; object-fit: contain;
    transition: opacity .25s var(--zs-ease), transform .25s var(--zs-ease); user-select: none; -webkit-user-drag: none;
}
.zs-lb-stage img.is-loading { opacity: 0; }
.zs-lb-cap { margin-top: 10px; font-size: 14px; color: rgba(255, 255, 255, .75); text-align: center; }
.zs-lb-cap:empty { display: none; }
.zs-lb-prev, .zs-lb-next { position: absolute; top: 50%; width: 56px; height: 56px; margin-top: -28px; }
.zs-lb-prev { left: 20px; }
.zs-lb-next { right: 20px; }
.zs-lb-prev svg, .zs-lb-next svg { width: 28px; height: 28px; }
.zs-lb-strip {
    display: flex; gap: 8px; padding: 16px 20px 20px; overflow-x: auto; scrollbar-width: thin;
    justify-content: safe center; scroll-padding: 0 20px;
}
.zs-lb-strip button { flex: 0 0 auto; width: 96px; height: 72px; background: none; opacity: .5; outline-offset: -3px; position: relative; }
.zs-lb-strip button:hover { background: none; opacity: .85; }
.zs-lb-strip button[aria-current="true"] { opacity: 1; }
.zs-lb-strip button[aria-current="true"]::after { content: ""; position: absolute; inset: 0; border: 3px solid var(--zs-sand); }
.zs-lb-strip img { width: 100%; height: 100%; object-fit: cover; display: block; }
.zs-lb.is-single .zs-lb-prev, .zs-lb.is-single .zs-lb-next, .zs-lb.is-single .zs-lb-strip { display: none; }
@media (max-width: 767px) {
    .zs-lb-top { padding: 10px 12px; }
    .zs-lb-count, .zs-lb-close { height: 44px; }
    .zs-lb-close { width: 44px; }
    .zs-lb-stage { padding: 0 12px; }
    .zs-lb-prev, .zs-lb-next { width: 44px; height: 44px; margin-top: -22px; background: rgba(28, 25, 23, .6); }
    .zs-lb-prev { left: 12px; } .zs-lb-next { right: 12px; }
    .zs-lb-stage img { max-height: calc(100dvh - 64px - 96px - 12px); }
    .zs-lb-strip { padding: 12px; }
    .zs-lb-strip button { width: 72px; height: 54px; }
}
@media (prefers-reduced-motion: reduce) {
    dialog.zs-lb[open], .zs-lb-stage img { animation: none; transition: none; }
}

/* ---------- 3D vizualizace: odsazení od drobečkové lišty i patičky ---------- */
#kingster-page-wrapper.zs-3d { padding-top: 60px !important; padding-bottom: 108px !important; }   /* 48 px zasahují dlaždice patičky */
.zs-3d iframe { display: block; }

/* ---------- Úvod: sekce slideru v krémové jako na původním webu ---------- */
#div_1dd7_44 .gdlr-core-recent-post-widget:hover { background: none; }   /* na úvodu jen oranžový nadpis, bez podbarvení */
#gdlr-core-column-8 .gdlr-core-recent-post-widget-thumbnail img { object-fit: contain; }   /* loga akcí celá */
#div_1dd7_44 { background-color: var(--zs-cream) !important;  }
/* ---------- Úvod: slider a Nadcházející události – stejná výška, zarovnané hrany ---------- */
@media (min-width: 1000px) {
    .gdlr-core-pbf-wrapper-container:has(> #gdlr-core-column-8) { display: flex; align-items: stretch; }
    #gdlr-core-column-8 { display: flex; }
    #gdlr-core-column-8 > .gdlr-core-pbf-column-content-margin { display: flex; flex-direction: column; flex: 1; }
    #gdlr-core-column-8 .gdlr-core-pbf-column-content { display: flex; flex-direction: column; flex: 1; }
    #gdlr-core-column-8 .gdlr-core-pbf-column-content > .gdlr-core-pbf-element:last-child { margin-top: auto; }
}
/* 4 nejbližší akce (v šabloně CMS limit 4) */
#gdlr-core-column-8 .gdlr-core-recent-post-widget:nth-child(n+5) { display: none; }
/* náhledy akcí na stejné hraně jako nadpis a tlačítko */
#gdlr-core-column-8 .gdlr-core-recent-post-widget-wrap { padding: 0 20px; }
#gdlr-core-column-8 .gdlr-core-block-item-title-wrap { margin-bottom: 24px !important; }
/* sekce slideru: stejné odsazení nahoře i dole (60 px), sloupce bez vlastních okrajů; nadpis akcí v linii s horní hranou slideru */
#div_1dd7_44 { padding: var(--zs-hp-pad, 60px) 0 !important; }
#div_1dd7_44 #div_1dd7_45, #div_1dd7_44 #div_1dd7_48 { padding-top: 0 !important; padding-bottom: 0 !important; margin-bottom: 0 !important; }
@media (max-width: 999px) {
    #div_1dd7_44 { --zs-hp-pad: 32px; }
    #div_1dd7_44 #div_1dd7_48 { padding-top: 40px !important; }   /* mezera mezi sliderem a akcemi pod ním */
}
#div_1dd7_44 .gdlr-core-item-pdb, #div_1dd7_44 .gdlr-core-pbf-element { padding-bottom: 0 !important; margin-bottom: 0 !important; }
#div_1dd7_44 .gdlr-core-block-item-title-wrap { margin-top: -6px; }   /* horní hrana písma nadpisu = horní hrana fotky */
.zs-hide { display: none !important; }

/* ---------- Cookie lišta CMS (#ace-cookie-root) v plochém vzhledu webu ---------- */
#ace-cookie-root .ace-cookie-bar {
    border: 1px solid var(--zs-line); border-top: 4px solid var(--zs-sand); border-radius: 0; box-shadow: none;
    padding: 20px 24px; font-family: inherit; max-width: 960px;
}
#ace-cookie-root .ace-cookie-bar__text { font-size: 15px; line-height: 1.6; color: var(--zs-text); margin-bottom: 14px; }
#ace-cookie-root .ace-cookie-btn {
    border-radius: 0; font-family: inherit; font-size: 14px; font-weight: 600; padding: 10px 18px;
    background: #fff; color: var(--zs-ink); border: 1px solid var(--zs-sand); transition: background-color .2s, color .2s, border-color .2s;
}
#ace-cookie-root .ace-cookie-btn:hover { background: var(--zs-cream); }
#ace-cookie-root .ace-cookie-btn--primary { background: var(--zs-orange); border-color: var(--zs-orange); color: #fff; }
#ace-cookie-root .ace-cookie-btn--primary:hover { background: var(--zs-orange-dark); border-color: var(--zs-orange-dark); }
#ace-cookie-root .ace-cookie-btn--link { background: none; border: 0; padding: 0; font-weight: 500; font-size: inherit; color: var(--zs-sand-dark); text-decoration: underline; }
#ace-cookie-root .ace-cookie-btn--link:hover { background: none; color: var(--zs-orange); }
#ace-cookie-root .ace-cookie-btn:focus-visible, .ace-cookie-reopen:focus-visible { outline: 3px solid var(--zs-orange); outline-offset: 2px; }
#ace-cookie-root .ace-cookie-settings { border-top-color: var(--zs-line); }
#ace-cookie-root .ace-cookie-row { font-size: 14px; color: var(--zs-text); }
#ace-cookie-root input[type="checkbox"] { accent-color: var(--zs-orange); width: 16px; height: 16px; vertical-align: -3px; margin-right: 6px; }
.ace-cookie-reopen {
    border-radius: 0 !important; border: 1px solid var(--zs-line) !important; border-top: 3px solid var(--zs-sand) !important;
    font-family: inherit !important; font-size: 13px !important; font-weight: 600; color: var(--zs-sand-dark) !important; background: #fff !important;
    box-shadow: none !important; transition: color .2s;
}
.ace-cookie-reopen:hover { color: var(--zs-orange) !important; }
