:root {
            --melnik-cervena: #e30214;
            --melnik-zluta: #FFCF01;
            --text-seda: #3A3A3A;
            --text-hlavicka-seda: #434345;
            --pozadi-sloupec: #F2F2F2;
        }

        body { 
            font-family: 'Open Sans', sans-serif; 
            margin: 0;
            background-color: #fff;
            color: var(--text-seda);
            background-image: url("images/body_bgr.jpg");
            background-repeat: repeat-x;
        }

        .site-container {
            max-width: 1000px;
            margin: 0 auto;
            background-color: #fff;
        }

        /* Styl pro samotnou ikonu uvnitř odkazu s třídou .dokum */
.dokum .pdf-ico {
    font-size: 1.2rem;          /* Velikost ikony (můžete zkusit např. 20px, 1.5rem atd.) */
    color: var(--melnik-cervena); /* Nastaví ikonu do barvy vašeho webu (červená) */
    margin-right: 8px;          /* Mezera mezi ikonou a textem */
    vertical-align: middle;     /* Vyrovná ikonu na střed výšky textu */
}

/* Volitelné: Změna barvy ikony při najetí myší na odkaz */
.dokum:hover .pdf-ico {
    color: var(--text-seda);     /* Na mobilu nebo PC změní barvu stejně jako text */
}
        /* HLAVIČKA - OPRAVENÉ ZAROVNÁNÍ DOLŮ */
        .header-outer-wrapper {
            background-image: url("dokumenty/webmenu4940/hlavicka.jpg");
            background-position: 290px 0px;
            background-repeat: no-repeat;
            height: 250px;
            width: 100%;
        }

        .header-flex {
            display: flex;
            height: 250px;
            position: relative;
        }

        .logo-area {
            width: 265px;
            height: 250px;
            flex-shrink: 0;
            display: flex;
            align-items: flex-start;
        }
        
        .logo-area img {
            width: 100%;
            height: auto;
            padding-top: 10px;
        }

        /* Zarovnání textu na spodní hranu */
        .text-hlavicka {
            align-self: flex-end;
            margin-bottom: 25px;
            margin-left: 20px;
            color: var(--text-hlavicka-seda);
            font-size: 15px;
            font-weight: bold;
            line-height: 1.4;
            text-transform: uppercase;
        }

        .text-hlavicka a {
            color: var(--text-hlavicka-seda);
            text-decoration: none;
        }

        .gdpr-link {
            position: absolute;
            left: 280px;
            top: 20px;
            font-size: 14px;
            color: var(--text-hlavicka-seda);
            font-weight: bold;
        }

        /* MENU */
        #left_column {
            padding: 0;
        }

        .melnik {
            background-color: var(--pozadi-sloupec);
        }

        .vmenuHl {
            background-color: var(--melnik-zluta);
            margin-bottom: 1px;
            height: 40px;
            line-height: 40px;
        }

        .vmenuHl a {
            display: block;
            padding-left: 16px;
            color: var(--text-hlavicka-seda);
            text-decoration: none;
            font-size: 19px;
        }

        .vmenuHl a:hover {
            background-color: var(--melnik-cervena);
            color: #FFFFFF;
        }

        /* OBSAH A ŽLUTÉ NADPISY */
        .hnadpis{
            color: var(--melnik-cervena);
            background-color: var(--melnik-zluta);
            font-size: 18px;
            font-weight: bold;
            text-transform: uppercase;
            padding: 10px 15px;
            margin: 0;
            display: block;
            text-decoration: none;
        }

        a.odkazy {
            color: var(--melnik-cervena);
            text-decoration: none;
        }

        a.odkazy:hover {
            color: var(--text-seda);
            text-decoration: underline;
        }

        .h3nadpis {
            background-color: #fff;
            border-bottom: #ededed solid 14px;
            padding-left: 20px;
            width: 100%;
            margin-bottom: 15px;
        }

        /* Blokové čištění - sjednocený styl */
        .blokove-cisteni-link {
            text-align: right;
        }
        .blokove-cisteni-link a {
            display: inline-block;
            color: var(--melnik-cervena);
            background-color: var(--melnik-zluta);
            padding: 10px 15px;
            font-weight: bold;
            text-transform: uppercase;
            text-decoration: none;
        }

        .info-linka-val {
            color: green;
            font-size: 42px;
        }

        #pata {
            background-color: #e0e0e0;
            color: #808080;
            padding: 15px 20px;
            font-size: 12px;
            margin-top: 30px;
        }

        /* --- ROZBALOVACÍ MENU --- */

/* Kontejner pro rozbalovací prvek (musí mít výšku auto, aby se nezasekl) */
.vmenuHl.has-sub {
    height: auto !important;
    line-height: normal !important;
    position: relative;
}

/* Hlavní odkaz v rozbalovacím menu (vrátíme mu výšku line-height pro zachování designu) */
.vmenuHl.has-sub > a {
    height: 40px;
    line-height: 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: 15px;
}

/* Šipka vedle textu */
.vmenuHl .arrow {
    font-size: 11px;
    transition: transform 0.2s;
    color: var(--text-hlavicka-seda);
}

/* Samotný kontejner s podmenu - v základu schovaný */
.vmenuSub {
    display: none;
    background-color: #e6e6e6; /* O něco tmavší šedá než pozadí sloupce */
    padding: 0;
    margin: 0;
}

/* Jednotlivé odkazy v podmenu */
.vmenuSub a {
    display: block;
    padding: 8px 15px 8px 30px !important; /* Větší odsazení zleva, aby to dělalo strom */
    font-size: 14px !important;
    font-weight: normal !important;
    color: var(--text-seda) !important;
    border-bottom: 1px solid #dbdbdb;
    line-height: 1.3 !important;
}

/* Hover efekt pro položky v podmenu */
.vmenuSub a:hover {
    background-color: #dbdbdb !important;
    color: var(--melnik-cervena) !important;
    text-decoration: none;
}

/* AKCE: Při najetí myší na hlavní prvek se zobrazí podmenu */
.vmenuHl.has-sub:hover {
    background-color: var(--melnik-cervena);
}

.vmenuHl.has-sub:hover > a {
    color: #FFFFFF !important;
}

.vmenuHl.has-sub:hover .arrow {
    transform: rotate(180deg);
    color: #FFFFFF;
}

.vmenuHl.has-sub:hover .vmenuSub {
    display: block; /* Zobrazení podmenu */
}

/* --- STYLOVÁNÍ FOTOGALERIE --- */
.galerie-item {
    overflow: hidden;
    cursor: pointer;
    background-color: #f9f9f9;
    transition: transform 0.2s ease-in-out;
}

.galerie-item img {
    width: 100%;
    height: 120px; /* Pevná výška náhledu, aby mřížka lícovala */
    object-fit: cover; /* Ořízne obrázek, aby se nedeformoval */
    display: block;
}

.galerie-item:hover {
    transform: scale(1.04); /* Jemné zvětšení při najetí */
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}

/* --- ŽLUTÝ BOX PRO PŘÍSTAVNÍ MŮSTEK --- */
.mustek-box-zluty {
    background-color: var(--melnik-zluta);
    padding: 15px 20px;
    margin-top: 25px;
    margin-bottom: 25px;
    font-size: 14px;
    line-height: 1.5;
}
.beztecek {
    list-style-type: none;
    margin-left: -30px;
}

/* Odpady */

.odskok {
    margin-left: 20px;
    margin-top: 20px;
}

.fototext {
    text-align: center;
    font-weight: bold;
}

.kontaktbox {
    border: var(--text-hlavicka-seda) 1px solid;
    padding: 15px 20px;
    font-size: 14px;
    line-height: 1.5;
    background-color: #f8f8f8;
}

.podekovani {
    font-weight: bold;
    text-align: end;
}

/* --- AKTIVNÍ STAV PRO POLOŽKY MENU --- */

/* 1. Hlavní položka / Aktivní kategorie (Červené pozadí, bílý text) */
.vmenuHl.active-main {
    background-color: var(--melnik-cervena) !important;
}

.vmenuHl.active-main > a {
    color: #ffffff !important;
}

/* 2. Aktivní podpoložka uvnitř rozbaleného menu (Červený tučný text) */
.vmenuSub a.active-sub {
    color: var(--melnik-cervena) !important;
    font-weight: bold !important;
}

/* Výchozí stav podmenu, pokud není PHP skriptem aktivováno */
.vmenuSub {
    display: none;
}

/* Oprava specifických fotek, které se deformují nebo utíkají do stran */
.galerie-item-fix {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100%;
}

.galerie-item-fix img {
    width: auto !important;      /* Zruší stoprocentní roztahování do šířky */
    max-width: 100% !important;  /* Aby na mobilu fotka nepřetékala ze sloupce */
    height: auto !important;
}