/*
 Theme Name:   praha5.cz
 Description:  Web Praha 5
 Author:       @Fresh
 Version:      1.0.0
 License:      Commercial
 Text Domain:  praha5
*/


/** OBSAH
 * 	1 - BASICS
 * 		1.1 - Font
 * 		1.2 - Text
 * 		1.3 - Form
 * 		1.4 - Image
 * 		1.5 - Table
 * 		1.6 - Section
 * 	2 - GRIDS
 * 		2.1 - Grid
 * 		2.2 - Flexbox
 * 		2.3 - Menu
 * 		2.4 - Breadcrumb
 * 		2.5 - Navigace
 * 		2.6 - Strankovani
 * 		2.7 - Slider
 * 		2.8 - Novinka
 * 		2.9 - Akce
 * 		2.10 - Vysledky 
 *      2.11 - Youtube iframe
 * 	3 - LAYOUTS
 * 		3.1 - Header
 * 		3.2 - Motiv
 * 		3.3 - Kontakt
 * 		3.4 - Weby
 * 		3.5 - Footer
 * 	4 - SECTIONS
 * 		4.1 - Uvod
 * 		4.2 - Dlazdice
 * 		4.3 - Vybirame
 * 		4.4 - Novinky
 * 		4.5 - Akce
 * 		4.6 - Zpravodajstvi
 * 		4.7 - Partnerska mesta
 * 	5 - STRANKY
 * 		5.1 - Homepage
 * 		5.2 - Struktura
 * 		5.3 - Rozcestnik
 * 		5.4 - Vychozi
 * 		5.5 - Vypisy
 * 		5.6 - Akce
 * 		5.7 - Interpelace
 * 		5.8 - Zamestnanec
 * 		5.9 - Organizacni struktura
 * 	6 - RESPONZIVA
 */

html,
body {
    -webkit-scroll-behavior: smooth;
    scroll-behavior: smooth;
    margin: 0!important;
    color: #5b626b;
}


/* 1 - BASICS */


/* 1.1 - Font */

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
input,
textarea {
    margin: 0;
    font-family: Arial, sans-serif!important;
}


/* 1.2 - Text */

h1 {
    margin-bottom: 45px;
    font-size: 30px;
    line-height: 36px;
    font-weight: bold;
    text-transform: uppercase;
    color: #0c4291;
}

h1:before {
    content: "";
    width: 5px;
    height: 15px;
    margin-right: 15px;
    display: inline-block;
    border-bottom: 5px solid #faa61a;
    border-left: 5px solid #faa61a;
}

.home h1:before {
    border-color: #af0126;
}

h2 {
    margin-bottom: 35px;
    font-size: 26px;
    line-height: 30px;
    font-weight: bold;
    color: #0c4291;
}

h3 {
    margin-bottom: 17px;
    font-size: 23px;
    line-height: 28px;
    font-weight: bold;
    color: #0c4291;
}

h4 {
    margin-bottom: 17px;
    font-size: 21px;
    line-height: 26px;
    font-weight: bold;
}

h5,
.akce h2,
.novinka h2,
.vyber h2,
.vysledky h2 {
    margin-bottom: 17px;
    font-size: 19px;
    line-height: 26px;
    font-weight: bold;
    text-decoration: underline;
}

h6,
#kontakt h3,
#struktura ul li,
.zamestnanec h3 {
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 27px;
    font-weight: bold;
}

div {
    font-size: 16px;
    line-height: 27px;
}

a,
p,
span,
li {
    line-height: 27px;
}

a {
    text-decoration: underline;
    color: #0c4291;
}


/* 1.3 - Form */

form {
    max-width: 70vw;
    margin-bottom: 30px;
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0px 5px 13.5px rgb(0 0 0 / 45%);
}

.em-search-form,
.archive-search {
    max-width: 100%;
    position: relative;
    top: -33px;
}

.em-search-main {
    width: 100%;
}

form fieldset {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: none;
}

form label {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    font-size: 14px;
    font-weight: bold;
}

form .wpcf7-list-item label {
    max-width: 60vw;
    margin: 0 auto;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

form.archive-search label,
label .screen-reader-text {
    display: none;
}

form.archive-search .input-wrapper:last-child {
    display: flex;
    flex-direction: row;
    align-items: center;
}

form.archive-search .input-wrapper:last-child div {
    margin-right: 10px;
    margin-bottom: 15px;
}

form input,
form textarea,
form select,
form button {
    max-width: 55vw;
    min-height: 35px;
    margin-bottom: 15px;
    padding: 10px;
    font-style: italic;
    color: #5b626b;
    border: 1px solid #5b626b;
    border-radius: 8px;
}

form select {
    width: 100%;
    min-height: 57px;
}

form input[type="submit"],
form button {
    width: 290px;
    height: 50px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    background-color: #0c4291;
    color: #ffffff;
    box-shadow: 0px 5px 13.5px rgb(0 0 0 / 45%);
    border: none;
    border-radius: 8px;
}

form button {
    width: 200px;
}

form .wpcf7-list-item label input {
    margin: 0 15px 0 0;
}

form.em-search-form input:not([type="submit"]) {
    width: calc(100% - 20px);
}

@media screen and (max-width: 767px) {
    form iframe {
        transform: scale(0.8);
    }
}


/* 1.4 - Image */

img {
    max-width: 100%;
}

.single main img {
    max-width: 100%;
    height: auto;
    margin-bottom: 5px;
    object-fit: cover;
}


/* 1.5 - Table */

table,
.table {
    width: 100%;
}

.table a {
    text-decoration: none;
}

table tr th,
.intpTableHeader .intpField {
    font-weight: bold;
}

main table tr td,
main table tr th,
.intpField {
    padding: 5px;
}

table tr td,
table tr th,
.intpField,
.intpField div {
    font-size: 10px;
    line-height: 16px;
}

main table tr:nth-child(even),
.table a:nth-child(even)>div {
    background-color: #f1f1f1;
}

main table th,
main thead td,
.intpTableHeader {
    background-color: #0c4291;
    color: #ffffff;
}


/* 1.6 - Section */

section {
    line-height: 0;
}


/* 2 - GRIDS */


/* 2.1 - Grid */

.grid {
    max-width: 1420px;
    margin: 0 auto;
    padding: 0 30px;
}

main .grid h1 {
    padding-top: 50px;
}


/* 2.2 - Flexbox */

.flex-grid,
.flex-col {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
}

.flex-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}


/* 2.3 - Menu */

#burger {
    -webkit-appearance: none;
    appearance: none;
    height: 10px;
    width: 30px;
    position: relative;
    top: -9px;
    background: transparent;
    border-top: 2px solid #0c4291;
    border-bottom: 2px solid #0c4291;
    border-left: none;
    border-right: none;
    cursor: pointer;
}

#burger:after {
    content: "";
    height: 7px;
    width: 30px;
    padding-top: 8px;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border-bottom: 2px solid #0c4291;
}

#close {
    -webkit-appearance: none;
    appearance: none;
    height: 10px;
    width: 30px;
    position: relative;
    top: -4px;
    background: transparent;
    border-top: 2px solid #0c4291;
    border-bottom: none;
    border-left: none;
    border-right: none;
    cursor: pointer;
    transform: rotate(45deg);
}

#close:after {
    content: "";
    height: 8px;
    width: 30px;
    display: block;
    position: absolute;
    top: -5px;
    left: -5px;
    border-bottom: 2px solid #0c4291;
    transform: rotate(-90deg);
}

.menu {
    margin: 0;
    padding: 0;
    list-style: none;
}

.menu a {
    text-decoration: none;
}

.sub-menu {
    display: none;
}

.menu li:hover>.sub-menu {
    height: auto;
    opacity: 1;
    pointer-events: auto;
}


/* 2.4 - Breadcrumb */

.breadcrumb {
    padding: 60px 0;
    text-align: right;
    background-image: url('./assets/img/motiv.png');
    background-color: #002b6b;
    background-size: cover;
    background-position: 50% 10%;
    background-blend-mode: soft-light;
    color: #ffffff;
}

.breadcrumb a {
    font-weight: normal;
    text-decoration: underline;
    color: #ffffff;
}

.breadcrumb span {
    padding: 0 15px;
    font-weight: normal;
    color: #faa61a;
}

.breadcrumb div,
.breadcrumb nav {
    font-size: 14px;
    line-height: 26px;
    font-weight: bold;
}


/* 2.5 - Navigace */

.navigace .parent-link {
    width: 230px;
    height: 50px;
    margin-top: 90px;
    padding: 20px 15px;
    justify-content: flex-start;
    align-items: center;
    font-weight: bold;
    background-color: #0c4291;
    color: #ffffff;
    box-shadow: 0px 5px 13.5px rgba(0, 0, 0, 0.45);
    border-radius: 8px;
    transition: background-color 0.2s linear;
}

.navigace .parent-link:hover {
    background-color: #af0126;
}

.navigace .parent-link:before {
    content: "";
    width: 16px;
    height: 28px;
    margin-right: 30px;
    display: block;
    background-image: url(./assets/img/arrow.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.navigace .navigace-menu {
    margin: 50px 0 0 0;
    padding: 0;
    list-style: none;
}

.navigace .navigace-menu ul {
    display: none;
}

.navigace .navigace-menu a {
    margin-bottom: 20px;
    display: block;
    font-weight: bold;
    transition: color 0.2s linear;
}

.navigace .navigace-menu a:hover {
    color: #0c4291;
}

.navigace #burger {
    margin-bottom: 30px;
    top: 0;
}


/* 2.6 - Strankovani */

.pagination,
.em-pagination {
    display: block;
    text-align: center;
}

.pagination .screen-reader-text {
    display: none;
}

.pagination .prev,
.pagination .next,
.em-pagination .prev,
.em-pagination .next {
    display: none;
}

.page-numbers {
    padding: 5px;
    font-weight: bold;
    color: #5b626b;
    transition: color 0.2s linear;
}

.page-numbers.current {
    text-decoration: underline;
    color: #0c4291;
}

.page-numbers:hover {
    text-decoration: none;
    color: #af0126;
}


/* 2.7 - Slider */

.flexslider {
    background-color: transparent!important;
    border: none!important;
}

.flexslider .flex-direction-nav a {
    opacity: 1!important;
}

.flexslider .flex-direction-nav .flex-prev,
.flexslider:hover .flex-direction-nav .flex-prev {
    left: -25px!important;
}

.flexslider .flex-direction-nav .flex-next,
.flexslider:hover .flex-direction-nav .flex-next {
    right: -25px!important;
}

.flexslider .flex-direction-nav a:before {
    font-family: monospace;
    color: #c0c0c0;
    transition: color 0.2s linear;
}

.flexslider .flex-direction-nav a:hover:before {
    color: #0c4291;
}

.flexslider .flex-direction-nav .flex-prev:before {
    content: "<";
}

.flexslider .flex-direction-nav .flex-next:before {
    content: ">";
}


/* 2.8 - Novinka */

.vypis-novinek {
    margin-left: -30px;
    margin-right: -30px;
}

.novinka,
.vypis-novinek {
    margin-bottom: 20px;
    text-decoration: none;
}

.novinka h2,
.novinka .datum,
.novinka div {
    color: #031e46;
}

.novinka .datum {
    margin-bottom: 20px;
    font-weight: bold;
}

.novinka .flex-col {
    margin: 0 30px 30px;
}

.novinka img {
    width: 100%;
    height: 150px;
    margin-bottom: 20px;
    display: block;
    object-fit: cover;
}


/* 2.9 - Akce */

.vypis-akci {
    margin: 0 -25px 45px -25px;
}

.akce {
    text-decoration: none;
}

.akce .flex-grid {
    margin: 0 25px 45px 25px;
}

.akce h2,
.akce div {
    color: #031e46;
}

.akce:hover h2 {
    text-decoration: none;
}

.akce .kategorie {
    width: 134px;
    height: 54px;
    margin-bottom: 15px;
    justify-content: center;
    white-space: nowrap;
    background-color: #031e46;
    color: #ffffff;
    border-radius: 8px;
    transition: background-color 0.2s linear, color 0.2s linear;
}

.akce:hover .kategorie {
    background-color: #faa61a;
    color: #031e46;
}

.akce .kategorie strong {
    display: block;
    font-size: 12px;
    line-height: 26px;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
}

.akce .datum {
    margin-right: 30px;
    justify-content: center;
    align-items: center;
    color: #031e46;
}

.akce .datum .den {
    font-size: 50px;
    line-height: 66px;
}

.akce .akce-info {
    display: flex;
    flex-direction: row;
}


/* 2.10 - Vysledky */

.vysledky,
.vypis-vysledku {
    margin-bottom: 20px;
    text-decoration: none;
}

.vysledky h2,
.vysledky div {
    color: #031e46;
}

.vysledky .flex-col {
    margin-bottom: 30px;
}

/* 2.11 - Youtube iframe */

.embed-container {
    max-width: 100%;
    height: auto;
    margin-bottom: 30px;
    padding-bottom: 56.25%;
    position: relative;
    overflow: hidden;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 8px;
}


/* 3 - LAYOUTS */


/* 3.1 - Header */

header {
    width: 100%;
    padding: 30px 0 20px;
    position: relative;
    background-color: #ffffff;
}

html:not([data-scroll='0']) header {
    position: fixed;
    top: 0;
    z-index: 99;
}

header .grid {
    max-width: 1750px;
    justify-content: space-between;
    align-items: center;
}

header .grid>.flex-row {
    align-items: center;
}

header .logo {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

header .logo img {
    width: auto;
    max-height: 32px;
    margin-right: 10px;
    transition: max-height 0.25s linear;
}

header .menu a {
    margin: 0 15px;
    font-weight: bold;
    color: #0c4291;
    transition: color 0.2s linear;
}

header .menu a:hover {
    color: #af0126;
}

header .menu .sub-menu {
    display: none!important;
}

header .vyhledavani form {
    width: calc(100% - 30px);
    max-width: 400px;
    margin: 0;
    padding: 0 15px 15px 15px;
    position: absolute;
    top: 80px;
    right: 0;
    background-color: #ffffff;
    box-shadow: 0px 12px 8px rgb(0 0 0 / 45%);
    border-radius: 0 0 8px 8px;
    z-index: 7;
}

header .vyhledavani form input {
    width: calc(100% - 20px);
    max-width: 100%;
    margin: 0;
    border: 2px solid #0c4291;
}

header .vyhledavani #lupa {
    margin-left: 10px;
}

header .vyhledavani #lupa,
header .vyhledavani form input#search-submit {
    content: "";
    width: 24px;
    height: 24px;
    display: block;
    background-color: transparent;
    background-image: url(./assets/img/lupa.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    border: none;
    box-shadow: none;
    font-size: 0;
    line-height: 0;
    cursor: pointer;
}

header .vyhledavani form input#search-submit {
    position: absolute;
    top: 12px;
    right: 30px;
}

header .vyhledavani #zavrit {
    -webkit-appearance: none;
    appearance: none;
    height: 10px;
    width: 30px;
    position: relative;
    top: -4px;
    background: transparent;
    border-top: 2px solid #0c4291;
    border-bottom: none;
    border-left: none;
    border-right: none;
    cursor: pointer;
    transform: rotate(45deg);
}
header .vyhledavani #zavrit:after {
    content: "";
    height: 8px;
    width: 30px;
    display: block;
    position: absolute;
    top: -5px;
    left: -5px;
    border-bottom: 2px solid #0c4291;
    transform: rotate(-90deg);
}

header #google_translate_element {
    position: relative;
}

header .goog-te-gadget,
header .goog-logo-link {
    font-size: 0!important;
}

header .goog-logo-link img {
    display: none;
}

header .goog-te-gadget {
    display: flex;
    flex-direction: row;
    align-items: center;
}

header .goog-te-gadget:after {
    content: "";
    width: 27px;
    height: 27px;
    margin-left: 10px;
    display: block;
    background-image: url(./assets/img/dokumenty.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

header .goog-te-gadget .goog-te-combo {
    -webkit-appearance: none;
    align-items: center;
    width: 100px;
    position: relative;
    font-size: 14px;
    font-weight: bold;
    text-decoration: underline;
    color: #0c4291;
    border: none;
    outline: none;
    cursor: pointer;
}

header .goog-te-gadget .goog-te-combo option {
    text-align: left;
}

header .goog-te-gadget .goog-te-combo option:first-child {
    text-align: right;
}

@media screen and (max-width: 1359px) {
    header .grid>.flex-row {
        width: 70%;
        justify-content: space-between;
    }
    header .menu-obsah {
        width: 100%;
        padding-bottom: 15px;
        position: absolute;
        top: 80px;
        left: 0;
        background-color: #ffffff;
        box-shadow: 0px 12px 8px rgb(0 0 0 / 45%);
        z-index: 9;
    }
}

@media screen and (max-width: 767px) {
    header .grid>.flex-row {
        width: 40%;
    }
}


/* 3.1.2. Fix Anchor */

.anchor {
    padding-top: 96px;
}


/* 3.2 - Motiv */

#motiv {
    height: 465px;
    position: relative;
    clear: both;
    background-size: cover;
    background-position: center;
}

#motiv:before {
    content: "";
    height: 100%;
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(to bottom, #ffffff, transparent, transparent);
}


/* 3.3 - Kontakt */

#kontakt {
    position: relative;
    overflow: hidden;
    color: #ffffff;
    background-color: #0c4291;
}

#kontakt h2 {
    text-transform: uppercase;
    color: #ffffff;
}

#kontakt h2:before {
    content: "";
    width: 4px;
    height: 13px;
    margin-right: 15px;
    display: inline-block;
    border-bottom: 4px solid #ffffff;
    border-left: 4px solid #ffffff;
}

#kontakt h3 {
    margin-bottom: 15px;
    color: #ffffff;
}

#kontakt a {
    color: #ffffff;
}

#kontakt a,
#kontakt p,
#kontakt td {
    font-size: 14px;
    line-height: 22px;
}

#kontakt .flex-grid {
    justify-content: space-between;
}

#kontakt .flex-col a {
    margin-top: 20px;
    text-decoration: none;
}

#kontakt .kontakt {
    padding: 30px 0;
}

#kontakt .kontakt a span {
    text-decoration: underline;
}

#kontakt .podrobny-kontakt {
    margin: 35px 0;
    font-weight: bold;
}

#kontakt .uredni-hodiny {
    margin-bottom: 15px;
}

#kontakt .socialni-site a {
    margin-right: 15px;
}

#kontakt .socialni-site .flex-row {
    align-items: center;
}

#kontakt .mapa {
    height: 480px;
}

#kontakt .mapa iframe {
    min-width: 100vw;
    height: 100%!important;
    position: relative;
    left: -30px;
}


/* 3.4 - Weby */

#weby {
    padding: 30px 0;
    background-color: #ffffff;
    border-bottom: 2px solid #b2b7bf;
}

#weby .flex-row {
    justify-content: center;
    align-items: center;
}

#weby .flex-col {
    margin: 25px 35px;
    align-items: center;
    text-decoration: none;
}

#weby .flex-col p {
    margin-top: 15px;
    font-weight: bold;
    text-align: center;
    color: #020202;
}


/* 3.5 - Footer */

footer {
    padding: 50px 0;
    background-color: #ffffff;
}

footer a {
    text-decoration: none;
    color: #5b626b;
}

footer .flex-row {
    justify-content: space-between;
    align-items: center;
}

footer .menu {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

footer .menu a {
    margin-right: 10px;
    text-decoration: underline;
}

footer .menu a:after {
    content: "";
    height: 15px;
    margin-left: 10px;
    display: inline-block;
    position: relative;
    bottom: -2px;
    border-right: 2px solid #5b626b;
}

footer .menu li:last-child a:after {
    display: none;
}


/* 4 - SECTIONS */


/* 4.1 - Uvod */

#uvod {
    position: relative;
    color: #ffffff;
}

#uvod h3 {
    margin-top: 40px;
    margin-bottom: 20px;
    color: #ffffff;
}

#uvod h3:before {
    content: "";
    width: 5px;
    height: 15px;
    margin-right: 35px;
    display: inline-block;
    border-bottom: 5px solid #faa61a;
    border-left: 5px solid #faa61a;
}

#uvod .slides {
    background-color: #dedede;
}

#uvod .slides li {
    min-height: 600px;
    background-position: 20% 50%;
    background-size: cover;
    background-repeat: no-repeat;
}

#uvod .upozorneni {
    max-width: 60vw;
    padding: 30px 36px;
    position: absolute;
    top: 60px;
    left: 30px;
    text-decoration: none;
    background-color: #af0126;
    color: #ffffff;
    border-radius: 8px;
    box-shadow: 0px 5px 13.5px rgba(0, 0, 0, 0.45);
    z-index: 2;
}

#uvod .upozorneni p {
    text-decoration: underline;
}

#uvod .upozorneni strong {
    margin-right: 30px;
}

#uvod .vyhledavani {
    width: calc(100% - 60px);
    height: 200px;
    padding: 0 30px;
    justify-content: center;
    align-items: flex-start;
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: #002b6b;
    opacity: 0.9;
    z-index: 2;
}

#uvod .vyhledavani form {
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    display: block;
    position: relative;
    box-shadow: none
}

#uvod .vyhledavani form input {
    width: 240px;
    max-width: auto;
    margin: 0;
    background-image: linear-gradient(19deg, #0b4191 0%, #002b6b 100%);
    color: #ffffff;
    box-shadow: 0px 5px 13.5px rgba(0, 0, 0, 0.45);
    border: 1px solid #ffffff;
}

#uvod .vyhledavani form input::placeholder {
    color: #ffffff;
}


/* #uvod .vyhledavani form:after { */

#uvod .vyhledavani form input#search-submit {
    content: "";
    width: 24px;
    height: 24px;
    display: block;
    position: absolute;
    top: 12px;
    right: 20px;
    background-color: transparent;
    background-image: url('./assets/img/lupa.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    border: none;
    box-shadow: none;
    font-size: 0;
    line-height: 0;
    filter: brightness(100);
    cursor: pointer;
}

#uvod .vyhledavani .vyhledavani-vyrazy {
    display: none;
}

#uvod .vyhledavani .vyhledavani-vyrazy a {
    margin-left: 45px;
    display: block;
    font-size: 14px;
    line-height: 36px;
    font-style: italic;
    color: #ffffff;
}


/* 4.2 - Dlazdice */

#dlazdice {
    position: relative;
    top: -33px;
    z-index: 2;
}

#dlazdice ul {
    margin-left: -23px;
    margin-right: -23px;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    list-style: none;
}

#dlazdice li {
    width: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
}

#dlazdice li a {
    height: 100%;
    min-height: 50px;
    margin: 0 23px 30px;
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    overflow: hidden;
    text-decoration: none;
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0px 5px 13.5px rgba(0, 0, 0, 0.45);
    transition: background-color 0.2s linear;
}

#dlazdice li:hover a {
    background-color: #af0126;
}

#dlazdice li a p {
    margin-left: 20px;
    position: relative;
    font-weight: bold;
    color: #0c4291;
    transition: color 0.2s linear;
}

#dlazdice li:hover a p {
    color: #ffffff;
}

#dlazdice .sub-menu {
    max-width: 55%;
    margin: 0;
    display: list-item;
    position: absolute;
    bottom: 40px;
    left: 117px;
    z-index: 5;
}

#dlazdice .sub-menu li {
    width: auto;
    display: none;
}

#dlazdice .sub-menu a {
    height: auto;
    margin: 0;
    padding: 0;
    display: inline;
    font-size: 14px;
    line-height: 16px;
    background-color: transparent!important;
    color: #5b626b;
    box-shadow: none;
    transition: color 0.2s linear;
}

#dlazdice li:hover .sub-menu a {
    color: #ffffff;
}

#dlazdice .sub-menu a:before {
    display: none!important;
}

#dlazdice .sub-menu a:hover {
    text-decoration: underline;
}

#dlazdice.podkategorie a {
    font-weight: bold;
    transition: color 0.2s linear;
}

#dlazdice.podkategorie a:hover {
    color: #ffffff;
}


/* 4.3 - Vybirame */

#vybirame .titulek {
    position: relative;
    background-size: cover;
    background-position: center;
    overflow: hidden;
}

#vybirame .titulek:before {
    content: "";
    width: 80vw;
    height: 400px;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #002b6b;
    border-radius: 0 0 100% 0;
    opacity: 0.9;
}

#vybirame .titulek h1 {
    margin: 0;
    padding-bottom: 100px;
    position: relative;
    color: #ffffff;
}

#vybirame .titulek h1:before {
    border-color: #faa61a;
}

#vybirame .vypis-vyberu {
    margin-top: -50px;
}

#vybirame .flex-viewport {
    margin-left: -5px;
    margin-right: -2px;
    padding-left: 5px;
    padding-right: 2px;
}

#vybirame .slides {
    display: flex;
}

#vybirame .slides li {
    margin-bottom: 30px;
    padding: 35px;
    position: relative;
    background-color: #ffffff;
    box-shadow: 0px 5px 8px rgba(0, 0, 0, 0.35);
    border-radius: 8px;
}

#vybirame .slides li h2 {
    color: #0c4291;
    transition: color 0.2s linear;
}

#vybirame .slides li:hover h2 {
    text-decoration: none;
    color: #af0126;
}

#vybirame .slides li a {
    text-decoration: none;
}

#vybirame .slides li .datum {
    padding: 4px 27px 2px;
    position: absolute;
    bottom: -10px;
    left: 35px;
    font-size: 12px;
    line-height: 26px;
    background-color: #0c4291;
    color: #ffffff;
    box-shadow: 0px 5px 13.5px rgba(0, 0, 0, 0.45);
    border-radius: 8px;
    transition: background-color 0.2s linear;
    z-index: 5;
}

#vybirame .slides li:hover .datum {
    background-color: #af0126;
}

#vybirame .slides li div {
    color: #5b626b;
}


/* 4.4 - Novinky */

#novinky {
    padding-bottom: 60px;
    background-color: #dedede;
}

#novinky h1 {
    color: #031e46;
}

#novinky ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#novinky ul li a {
    margin-right: 20px;
    margin-bottom: 10px;
    padding: 4px 20px 1px;
    display: inline-block;
    font-weight: bold;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none;
    color: #031e46;
    border: 1px solid #031e46;
    border-radius: 8px;
    transition: all 0.2s linear;
}

#novinky ul li a:hover {
    background-color: #031e46;
    color: #ffffff;
}


/* 4.5 - Akce */

#akce {
    background-color: #0c4291;
    background-size: cover;
    background-position: center;
    background-blend-mode: soft-light;
    color: #ffffff;
}

#akce h1,
#akce h2,
#akce div {
    color: #ffffff;
}

#akce h1:before {
    border-color: #faa61a;
}

#akce ul {
    margin: 0;
    padding: 45px 50px;
    align-items: center;
    background-color: #faa61a;
    list-style: none;
}

#akce ul li a {
    margin-right: 15px;
    margin-bottom: 10px;
    padding: 4px 20px 1px;
    display: inline-block;
    font-weight: bold;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none;
    color: #031e46;
    border: 1px solid #031e46;
    border-radius: 8px;
    transition: all 0.2s linear;
}

#akce ul li:first-child a {
    margin-right: 30px;
    padding: 11px 25px 8px;
}

#akce ul li a:hover {
    background-color: #031e46;
    color: #ffffff;
}

#akce .akce .datum {
    color: #ffffff;
}


/* 4.6 - Zpravodajstvi */

#zpravodajstvi {
    padding-bottom: 70px;
    background-color: #dedede;
}


/* 4.7 - Partnerska mesta */

#partnerska-mesta .flex-row {
    justify-content: space-between;
}

#partnerska-mesta .flex-col {
    margin: 0 15px 15px;
    text-decoration: none;
}

#partnerska-mesta .flex-col p {
    text-align: center;
    text-decoration: underline;
    color: #5b626b;
    transition: color 0.2s linear;
}

#partnerska-mesta .flex-col:hover p {
    font-weight: bold;
    text-decoration: none;
    color: #031e46;
}

#partnerska-mesta .flex-col img {
    max-width: 100px;
    max-height: 100px;
    object-fit: contain;
    filter: grayscale(1);
    transition: filter 0.2s linear;
}

#partnerska-mesta .flex-col:hover img {
    filter: grayscale(0);
}


/* 5 - STRANKY */


/* 5.1 - Homepage */

.page-template-homepage #dlazdice {
    top: -93px;
    margin-bottom: -53px;
}

.page-template-homepage #dlazdice li a:before {
    content: "";
    width: 192px;
    height: 192px;
    display: block;
    position: absolute;
    bottom: 0;
    left: -106px;
    background-color: #dedede;
    border-radius: 96px;
    transition: background-color 0.2s linear;
}

.page-template-homepage #dlazdice li:hover a:before {
    background-color: #89001d;
}

.page-template-homepage #dlazdice li a img {
    width: 30px;
    height: 30px;
    margin-right: 15px;
    position: relative;
    object-fit: contain;
    transition: filter 0.2s linear;
}

.page-template-homepage #dlazdice li:hover a img {
    filter: brightness(2);
}


/* 5.2 - Struktura */

.page-template-organizacni-struktura h1 {
    margin-top: 45px;
    color: #ffffff;
}

.page-template-organizacni-struktura .breadcrumb {
    margin-bottom: 70px;
}

.page-template-organizacni-struktura .breadcrumb .flex-row {
    justify-content: space-between;
    align-items: center;
}

.page-template-organizacni-struktura #struktura {
    margin-top: 70px;
}

.page-template-organizacni-struktura #struktura a {
    margin: 0 23px 30px 0;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    border-radius: 8px;
    transition: color 0.2s linear;
}

.page-template-organizacni-struktura #struktura a:hover {
    color: #af0126;
}

.page-template-organizacni-struktura #struktura ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.page-template-organizacni-struktura #struktura img {
    width: 200px;
    height: 300px;
    object-fit: cover;
    border-radius: 8px 8px 0 0;
    box-shadow: 0px 5px 13.5px rgb(0 0 0 / 45%);
}


/* 5.3 - Rozcestnik */

.page-template-rozcestnik h1 {
    margin-top: 45px;
    color: #ffffff;
}

.page-template-rozcestnik .breadcrumb .flex-row {
    justify-content: space-between;
    align-items: center;
}


/* 5.4 - Vychozi */

.page-template-default h2 {
    margin-bottom: 25px;
}

.page-template-default main p {
    margin-bottom: 15px;
}

.page-template-default #dlazdice {
    margin-bottom: 70px;
    top: 0;
}

.page-template-default #dlazdice li a p {
    margin-left: 0;
    margin-bottom: 0;
}


/* 5.5 - Vypisy */

.archive h1,
.search h1 {
    margin-top: 45px;
    color: #ffffff;
}

.archive .breadcrumb,
.search .breadcrumb {
    margin-bottom: 70px;
}

.archive.category .breadcrumb {
    margin-bottom: 0;
}

.archive .breadcrumb .flex-row,
.search .breadcrumb .flex-row {
    justify-content: space-between;
    align-items: center;
}

.archive .struktura,
.archive .vypis-novinek {
    margin-top: 70px;
}


/* 5.6 - Akce */

.single .datum,
.event-template-default .datum {
    margin-bottom: 30px;
    display: block;
    font-weight: bold;
    color: #0c4291;
}

.events-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.em-categories-list,
.em-locations-list {
    padding: 0;
    list-style: none;
}

.em-categories-list li a,
.em-locations-list li a {
    margin-bottom: 17px;
    display: block;
    font-size: 19px;
    line-height: 26px;
    font-weight: bold;
    text-decoration: underline;
    color: #031e46;
}

.em-locations-list ul {
    display: none;
}


/* 5.7 Interpelace */

.single-interpelace main section {
    margin-bottom: 70px;
}

.single-interpelace #informace .flex-row {
    width: 100%;
}

.single-interpelace #informace .flex-row strong {
    margin-right: 10px;
}

.single-interpelace #informace .flex-row .dokument {
    max-width: 50%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.intpTableHeader,
.intpTableRow {
    display: flex;
    flex-direction: row;
}

.intpTableHeader div,
.intpTableRow div {
    width: 100%;
    position: relative;
}

.intpTableHeader div {
    color: #ffffff;
}

.intpTableRow div {
    color: #5b626b;
}

.intpTableHeader div:nth-child(5),
.intpTableRow div:nth-child(5) {
    width: 250%;
}

.intpTableHeader div:nth-child(6),
.intpTableRow div:nth-child(6) {
    width: 50%;
}

@media screen and (max-width: 767px) {
    .intpTableHeader .intpField div {
        padding-left: 0!important;
        position: relative;
        top: 5px;
    }
}


/* 5.8 - Zamestnanec */

.single-p5-employee h1 span {
    text-transform: none;
}

.single-p5-employee h2,
.single-p5-employee h3 {
    margin-top: 20px;
    margin-bottom: 17px;
}

.single-p5-employee h2:nth-child(1) {
    margin-top: 0;
}

.single-p5-employee img {
    width: auto;
    max-height: 600px;
}

.employee-info {
    padding-left: 18px;
}


/* 5.9 - Organizacni struktura */

.tax-p5-organizational_structure .breadcrumb {
    margin-bottom: 0;
}

.tax-p5-organizational_structure .children .flex-col {
    margin-left: 30px;
    margin-bottom: 50px;
}

.tax-p5-organizational_structure #dlazdice {
    margin-bottom: -33px;
}

.tax-p5-organizational_structure #dlazdice a {
    font-weight: bold;
    transition: color 0.2s linear;
}

.tax-p5-organizational_structure #dlazdice li:hover a {
    color: #ffffff;
}

.tax-p5-organizational_structure .vypis-zamestnancu {
    overflow: auto;
}

.tax-p5-organizational_structure table,
.tax-p5-organizational_structure .struktura-popis,
.tax-p5-organizational_structure.term-odbory-a-oddeleni main {
    margin-top: 70px;
}

.tax-p5-organizational_structure .struktura-popis .zamestnanec {
    margin-bottom: 30px;
}


/* 6 - RESPONZIVA */

@media screen and (min-width: 768px) {
    h1 {
        font-size: 44px;
        line-height: 46px;
    }
    h1:before {
        width: 8px;
        height: 24px;
        margin-right: 35px;
        border-width: 8px;
    }
    h2 {
        font-size: 30px;
        line-height: 36px;
    }
    h3 {
        font-size: 26px;
        line-height: 30px;
    }
    form .em-date-range {
        display: flex;
        flex-direction: row;
    }
    form .em-date-range .input-wrapper:first-child input {
        width: auto;
        margin-right: 15px;
    }
    /* .single main img {
        margin-right: 30px;
        float: left;
    } */
    .galerie,
    .gallery-title,
    .gallery {
        clear: both;
    }
    main .grid h1 {
        padding-top: 100px;
    }
    .novinka {
        width: 50%;
    }
    .akce .kategorie,
    .akce .datum {
        margin-right: 50px;
    }
    .navigace .parent-link {
        width: 290px;
    }
    .navigace .parent-link,
    .navigace .navigace-menu {
        margin-right: 80px;
    }
    .navigace .navigace-menu {
        padding-left: 60px;
    }
    header .goog-te-gadget:after {
        margin-left: 15px;
    }
    #kontakt h2:before {
        width: 5px;
        height: 15px;
        margin-right: 35px;
        border-width: 5px;
    }
    #kontakt .kontakt>.flex-row>.flex-col {
        margin-right: 55px;
    }
    footer {
        padding: 100px 0;
    }
    #uvod .upozorneni {
        max-width: 40vw;
        flex-direction: row;
        flex-wrap: nowrap;
    }
    #uvod .upozorneni p {
        max-width: 30vw;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    #uvod .vyhledavani {
        width: 262px;
        height: 100%;
    }
    #uvod .vyhledavani .vyhledavani-vyrazy {
        display: block;
    }
    #dlazdice li {
        width: 50%;
    }
    #dlazdice li.menu-item-has-children p {
        top: -25px;
    }
    #dlazdice .sub-menu li:nth-child(1),
    #dlazdice .sub-menu li:nth-child(2) {
        display: inline;
    }
    #dlazdice .sub-menu li:nth-child(1):after {
        content: ',';
        transition: color 0.2s linear;
    }
    #dlazdice .sub-menu li:nth-child(2):after {
        content: '...';
        transition: color 0.2s linear;
    }
    #dlazdice li:hover .sub-menu li:after {
        color: #ffffff;
    }
    #vybirame .titulek:before {
        width: 60vw;
    }
    #novinky ul li a {
        padding: 11px 25px 8px;
    }
    #zpravodajstvi .videa-flex-2 {
        margin-left: -15px;
        margin-right: -15px;
        display: flex;
        flex-direction: row;
    }
    #zpravodajstvi .videa-flex-2 .embed-container {
        margin-left: 15px;
        margin-right: 15px;
    }
    #zpravodajstvi .videa .videa-sub {
        width: 50%;
    }
    .page-template-homepage #dlazdice li a:before {
        left: -96px;
    }
    .page-template-homepage #dlazdice li a img {
        margin-right: 25px;
    }
    .page-template-default h2 {
        font-size: 26px;
        line-height: 30px;
    }
    .page-template-default h3 {
        font-size: 24px;
        line-height: 28px;
    }
    .em-locations-list {
        columns: 2;
    }
    .em-locations-list li {
        display: block;
        break-inside: avoid;
    }
    .intpTableHeader .intpField a div {
        top: 5px!important;
    }
    .single-p5-employee main .flex-row {
        flex-wrap: nowrap;
    }
}

@media screen and (min-width: 1024px) {
    table tr td,
    table tr th,
    .intpField,
    .intpField div {
        font-size: 14px;
        line-height: 22px;
    }
    form.em-search-form,
    form.archive-search {
        max-width: fit-content!important;
        margin: 0 auto 30px;
    }
    form.archive-search fieldset {
        flex-direction: row;
    }
    form.archive-search fieldset input {
        margin: 0 15px 0 0;
    }
    form.archive-search .input-wrapper:last-child div {
        margin-left: 15px;
        margin-bottom: 0;
    }
    .flex-grid {
        flex-direction: row;
        flex-wrap: nowrap;
    }
    .akce .flex-grid {
        align-items: center;
    }
    .akce .kategorie {
        width: 54px;
        height: 134px;
        margin-bottom: 0;
    }
    .akce .kategorie strong {
        transform: rotate(-90deg);
    }
    header .logo img {
        max-height: 62px;
        margin-right: 15px;
    }
    html:not([data-scroll='0']) .logo img {
        max-height: 46px;
        margin-right: 31px;
    }
    #kontakt .flex-grid {
        align-items: center;
    }
    #kontakt .kontakt {
        max-width: 35%;
    }
    #kontakt .mapa iframe {
        min-width: 60vw;
        position: absolute;
        top: 0;
        left: auto;
        right: 0;
    }
    #uvod .slides li {
        background-position: top;
    }
    #uvod .vyhledavani {
        width: 360px;
    }
    #uvod .vyhledavani form input {
        width: 298px;
    }
    #vybirame .titulek:before {
        width: 50vw;
    }
    #akce ul li a {
        margin-right: 20px;
    }
    #akce ul li:first-child a {
        margin-right: 50px;
    }
    .single-interpelace #informace .flex-row {
        width: 50%;
    }
}

@media screen and (min-width: 1360px) {
    #burger {
        display: none!important;
    }
    .navigace-menu .content {
        display: block!important;
    }
    header .menu-obsah {
        display: block!important;
        position: relative;
        top: 0;
    }
    header .menu-obsah .menu {
        display: flex;
        flex-direction: row;
    }
    form.em-search-form fieldset,
    form.em-search-form .em-search-advanced {
        display: flex;
        flex-direction: row;
    }
    form.em-search-form input,
    form.em-search-form select {
        margin: 0 15px 0 0;
    }
    form.em-search-form input:not([type="submit"]),
    form.em-search-form select {
        width: auto;
    }
    form.em-search-form input[type="submit"] {
        height: 57px;
        margin-right: 0;
    }
    .novinka {
        width: 25%;
    }
    .akce {
        width: 50%;
    }
    #kontakt .uredni-hodiny {
        margin-bottom: 35px;
    }
    #weby .flex-col {
        margin: 25px 50px;
    }
    #uvod .upozorneni {
        left: 86px;
    }
    #dlazdice li {
        width: 25%;
    }
    #vybirame .titulek:before {
        width: 40vw;
    }
    #zpravodajstvi .videa {
        width: 50%;
    }
    #zpravodajstvi .videa-flex-1 {
        display: flex;
        flex-direction: row;
    }
    #zpravodajstvi .videa-main .embed-container {
        padding-top: 30px;
    }
    #zpravodajstvi .videa-flex-2 {
        margin: 0;
    }
    #zpravodajstvi .videa-flex-2 .embed-container {
        margin: 0 0 30px 30px;
    }
    .page-template-rozcestnik #rozcestnik a {
        width: 25%;
    }
}

@media screen and (min-width: 1500px) {
    header .vyhledavani form {
        padding: 0;
        display: block!important;
        position: relative;
        top: 0;
        box-shadow: none;
        border-radius: 0;
    }
    header .vyhledavani #lupa,
    header .vyhledavani #zavrit {
        display: none!important;
    }
    header .vyhledavani form input#search-submit {
        right: 10px;
    }
    .flexslider .flex-direction-nav .flex-prev,
    .flexslider:hover .flex-direction-nav .flex-prev {
        left: -35px!important;
    }
    .flexslider .flex-direction-nav .flex-next,
    .flexslider:hover .flex-direction-nav .flex-next {
        right: -35px!important;
    }
    .page-template-homepage #dlazdice:before {
        content: "";
        width: 311px;
        height: 554px;
        display: block;
        position: absolute;
        top: -247px;
        left: 74px;
        background-image: url(./assets/img/motiv-big.png);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        opacity: 0.5;
        filter: brightness(0.2);
    }
    .page-template-homepage #dlazdice li a img {
        margin-right: 45px;
    }
    .page-template-homepage #dlazdice .sub-menu {
        max-width: 50%;
        left: 138px;
    }
}

@media screen and (min-width: 1920px) {
    header .logo img {
        margin-right: 100px;
    }
    html:not([data-scroll='0']) .logo img {
        margin-right: 116px;
    }
    header .vyhledavani form,
    header .vyhledavani form input {
        width: 100%;
    }
    header .vyhledavani form input#search-submit {
        right: 0;
    }
    #akce {
        position: relative;
    }
    #akce:before {
        content: "";
        width: 203px;
        height: 363px;
        display: block;
        position: absolute;
        top: 119px;
        right: 0;
        background-image: url(./assets/img/motiv-small.png);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
    }
    .page-template-rozcestnik #dlazdice:after,
    .page-template-default #dlazdice:after {
        content: "";
        width: 158px;
        height: 282px;
        display: block;
        position: absolute;
        top: 0;
        right: -198px;
        background-image: url(./assets/img/motiv-podstranky.png);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        z-index: 5;
    }
    .page-template-rozcestnik #dlazdice:after {
        top: -38px;
        right: 42px;
        opacity: 0.5;
        filter: brightness(0.4);
    }
}