@font-face {
    font-family: "Roboto";
    src: url("assets/fonts/Roboto-Regular.ttf") format('truetype');
    font-weight: 400;
    font-style:normal;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("assets/fonts/Roboto-Italic.ttf") format('truetype');
    font-weight: 400;
    font-style:italic;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("assets/fonts/Roboto-Medium.ttf") format('truetype');
    font-weight: 500;
    font-style:normal;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("assets/fonts/Roboto-Bold.ttf") format('truetype');
    font-weight: 700;
    font-style:normal;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("assets/fonts/Roboto-BoldItalic.ttf") format('truetype');
    font-weight: 700;
    font-style:italic;
    font-display: swap;
}

:root {
    --fontcolor: #4a4a4a;
    --green: #96bf0d;
    --gray: #f8f8f8;
}

html
{
    overflow-x:hidden ;
}

body
{
    font-family:"Roboto", sans-serif;
    font-size: 14px;
    line-height: 1.4em;
    color: var(--fontcolor);
    overflow-x:hidden;
    background: #ffffff;
}

@media(min-width:1480px) {
    .container {
        max-width: 1420px;
    }
}

h2, h1
{
    text-align: left;
    margin-bottom:19px;
    font-size: 50px;
    font-weight: 400;
    line-height:55px;
}

h2 em, h1 em
{
   font-style: normal;
    color: var(--green);
}

h3
{
    font-size:22px;
    font-weight:500;
    margin-top:28px;
    margin-bottom: 25px;
    color:black;
}

h4
{
    font-size:18px;
    font-weight:600;
    color: var(--green);
    margin-bottom: 10px;
    line-height: 25px;
}

h3 strong, h4 strong
{
    color:black;
    font-weight: 700;
}

.main-content h3
{
    margin-top: 30px;
}

p
{
    margin-bottom:25px;
}

p.large-text
{
    font-size:18px;
    line-height:26px;
    padding-top:10px;
}

.subtitle
{
    color: #9b9b9b;
    text-transform: uppercase;
    margin-bottom:15px;
}

#introCarousel, #introCarousel .carousel-item img
{
    object-fit: cover;
    display: block;
    border-radius: 5px;
}

#introCarousel
{
    margin-top: 20px;
    position: relative;
    z-index: 1;
}

#header-carousel
{
    margin-bottom:100px;
}

@media(max-width: 1200px)
{
    #header-carousel .header-pages
    {
        position: relative!important;
        left:0;
    }
}

@media (max-width: 768px)
{
    #introCarousel, #introCarousel .carousel-item img
    {
        height:auto;
        min-height:300px;
    }
}

.carousel-control-next, .carousel-control-prev
{
    opacity:1;
}

.carousel-control-next-icon, .carousel-control-prev-icon
{
    width:37px;
    height:69px;
    background-size: 200%;
}

.carousel-control-prev:hover .carousel-control-prev-icon
{
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2396bf0d'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e");
}

.carousel-control-next:hover .carousel-control-next-icon
{
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2396bf0d'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e");
}


#header-title
{
    top:0;
    left:0;
    right:0;
    bottom:0;
    z-index: 5;
    color:white;
}

#header-title .subtitle, .title-in-carousel .subtitle
{
    font-size:34px;
    line-height:40px;
    font-style: italic;
    color:white;
}

.content
{
    margin-bottom: 70px;
}

.moved
{
    transform: translateY(150px);
    transition: all 0.5s ease-in-out;
}

.moved.moved-done
{
    transform: translateY(0px);
}

@media(max-width:768px)
{
    h2
    {
        font-size:35px;
        line-height:45px;
        margin-bottom:20px;
        margin-top:20px;
    }

    h3
    {
        font-size: 25px;
        line-height: 32px;
    }
}

ul
{
    padding-left:15px;
}

a
{
    color: #000000;
    transition:color 0.2s ease-in-out;
}

a:hover
{
    color:#000000;
}

.max-100
{
    max-width:100%;
}

.full-width
{
    width:100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    /*padding-left:15px;
    padding-right:15px;*/
    padding-left:5px;
    padding-right:5px;
}

@media (max-width: 768px)
{
    h1 
    {
          font-size: 30px;
          line-height: 35px;
          margin-bottom: 20px;
          margin-top: 20px;
    }

    h2
    {
        font-size:24px;
        line-height:30px;
    }

    h2.like-h1
    {
        font-size:30px;
        line-height:35px;
    }

    #header-title .subtitle
    {
        font-size: 30px;
        line-height: 35px;
    }

    h3
    {
        font-size:21px;
        line-height:26px;
    }


}

header
{
    z-index:20;
    transition:all 0.3s ease-in-out;
    position: fixed;
    top:0;
    left:0;
    right: 0;
}

header .custom-logo-link {
    z-index: 5;
    position: relative;
}

header .custom-logo
{
    transition: all 0.3s ease-in-out;
}

header.scrolled #header-top
{
    max-height: 0;
}

/*@media(max-width: 500px)
{

    header #header-fixed .custom-logo
    {
        height:80px;
        width:auto;
    }
}*/

#header-spacer
{
    height:137px;
}

#header-fixed
{
    padding-top:20px;
    padding-bottom:20px;
    transition: all 0.3s ease-in-out;
    background: white;
}

header.scrolled #header-fixed
{
    background:white;
    padding:10px 0;
    box-shadow: -1px 1px 17px -3px rgba(150,191,13,0.75);
    -webkit-box-shadow: -1px 1px 17px -3px rgba(150,191,13,0.75);
    -moz-box-shadow: -1px 1px 17px -3px rgba(150,191,13,0.75);
}

.social-menu li a:hover img, .partners-loga img:hover
{
    filter: brightness(0);

}

ul.main-menu
{
    display:flex;
    justify-content: end;
    align-items: center;
}

ul.main-menu li
{
    padding:0 25px;
}

ul.main-menu li:last-child
{
    padding-right: 0;
}

ul.main-menu li a
{
    color: #000000;
    font-size: 16px;
    line-height:24px;
    transition:color 0.2s ease-in-out;
    position:relative;
    padding:0;
}

@media(max-width: 1600px)
{
    ul.main-menu li
    {
        padding:0 15px;
    }
}

@media(max-width: 1400px)
{

    ul.main-menu li
    {
        padding:0 15px;
    }
}

@media(max-width: 1200px)
{
    ul.main-menu li
    {
        padding:0 10px;
    }
}

ul.main-menu li a:hover
{
    color: var(--green);
}

ul.main-menu li a:hover, ul.main-menu li.current-menu-item a, ul.main-menu li .nav-link:focus,
#expanded-menu ul li a:hover, #expanded-menu ul li.current-menu-item a, ul.expanded-menu li .nav-link:focus
{
    color:var(--green);
}

ul.main-menu li a img
{
    margin-top:-5px;
}

ul.main-menu li.button a
{
    padding: 14px 27px 14px 27px;
    border-radius: 5px;
    background-color: var(--green);
    color:white;
    font-weight: 700;
}

ul.main-menu li.button a:hover
{
    background-color: var(--fontcolor);
}



body:not(.page-2) #site-header:not(.scrolled) ul.main-menu li a:hover
{
    color:var(--green);
}

@media(max-width:1200px)
{
    ul.main-menu li a
    {
        padding:8px;
    }
}


header #logo
{
    z-index:1000;
    position:relative;
}

@media(max-width: 1200px)
{
    header #logo img
    {
        height:50px;
    }
}

#main-menu-toggler
{
    display:block;
    width:33px;
    height:29px;
    margin-right:0;
    margin-left:auto;
    cursor:pointer;
    z-index:1000;
    position:relative;
    margin-top:10px;
}

#main-menu-toggler span
{
    display:block;
    height:3px;
    background: #000;
    border-radius:3px;
    width:33px;
    margin-top:10px;
    transition:all 0.2s ease-in-out; 
}

#main-menu-toggler span:first-child
{
    margin-top:0px;
}

#main-menu-toggler.active-menu span:nth-child(2)
{
    display:none;
}

#main-menu-toggler.active-menu span:first-child
{
    transform:rotate(45deg);
    margin-top:25px;
}

#main-menu-toggler.active-menu span:last-child
{
    transform:rotate(-45deg);
    margin-top:-3px;
}

#expanded-menu
{
    position:fixed;
    display: block;
    width: 100%;
    background: #ffffff;
    border-radius: 0;
    z-index: 2;
    justify-content: center;
    transition: all 0.3s ease-in-out;
    overflow: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    max-height:0;
}

.scrolled #expanded-menu {
    background: #ffffff;
}

#expanded-menu.active-menu
{
    max-height:100vh;
    height: auto;
}

#expanded-menu ul
{
    display: block;
    padding:0;
    margin:150px 0 20px 0;
}

#expanded-menu ul li
{
    padding:15px 0;
}

#expanded-menu ul li a
{
    font-size:18px;
    line-height:25px;
    color:#000000;
    padding:0;
}

#expanded-menu ul li
{
    text-align:center;
}


.rotating-boxes .box-content
{
    border-radius: 5px;
    padding: 40px;
    background: var(--gray);
    color:#000000;
    position: relative;
    font-weight:700;
}

.rotating-boxes img
{
    object-fit: scale-down;
    height:52px;
    width:52px;
}

.rotating-boxes .box-content .wp-block-group
{
    background: var(--green);
    color:white;
    font-weight: 700;
    padding:30px;
    opacity:0;
    transition: opacity 0.3s ease-in-out;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    overflow:auto;
    display: flex;
    align-items: center;
}

.rotating-boxes .box-content .wp-block-group p
{
    margin-bottom: 0;
}

.rotating-boxes .box-content:hover .wp-block-group
{
    opacity: 1;
}

.large-number
{
    font-size:72px;
    line-height:90px;
    color:#000000;
}


.btn.btn-primary, button.btn-primary
{
    padding: 14px 27px 14px 27px;
    border-radius: 5px;
    background-color: var(--green);
    color:white;
    font-weight: 700;
    border:1px solid var(--green);
    transition: all 0.3s ease-in-out;
}

.btn.btn-primary:hover, button.btn-primary:hover
{
    background-color: var(--fontcolor);
    border-color: var(--fontcolor);
}

.card
{
    background-color: #f8f8f8;
    overflow:hidden;
    border: 0;
    border-radius:0;
    padding:46px 24px 19px 24px;
    text-align:center;
}

.card:hover img
{
    animation: hopsi 1s 3 linear;
}

@keyframes hopsi {
    10% {
        margin-top:0px;
        margin-bottom:0px;
        transform: rotateZ(0deg);
    }
    25%{
        transform: rotateZ(5deg);
    }
    50% {
        margin-top:-7px;
        margin-bottom:7px;
    }
    75%{
        transform: rotateZ(-5deg);
    }
    90% {
        margin-top:0px;
        margin-bottom:0px;
        transform: rotateZ(0deg);
    }
}

.card img
{
    height:52px;
    width:52px;
    object-fit: scale-down;
}

.card-body
{
    padding:26px 30px;
    color:white;
    font-size: 13px;
}

.card h3
{
    color: #ffffff;
    transition: all 0.3s ease-in-out;
    font-size:23px;
}

span.read-more
{
    font-weight:600;
    color:white;
    text-decoration:underline;
    position: relative;
    display: inline-block;
}

span.read-more:after
{
    content: url("assets/images/icons/arrow.svg");
    transform: rotateZ(-45deg) scale(90%);
    position: relative;
    right:-10px;
    display: inline-block;
}

.card
{
    border-radius: 0;
}

.card .spaceholder, .spaceholder-square, .swiper-aktuality .spaceholder, .boxes .spaceholder
{
    height:0;
    padding-bottom: 60%;
    position: relative;
    overflow:hidden;
}

.card .spaceholder-square
{
    padding-bottom: 100%;
}



.swiper-slide .spaceholder img
{
    position: absolute;
    left:0;
    top:0;
    right:0;
    bottom: 0;
    height: 100%;
    width:100%;
    object-fit: cover;
    transition: all 0.6s ease-in-out;
}

.swiper-aktuality .swiper-slide .text-wrapper
{
    background:transparent;
    padding:0;
    margin-left:auto;
    margin-right:0;
}

.swiper-aktuality h3, .boxes h3
{
    color:black;
    font-weight:700;
    margin-top:40px;
}

@media(max-width: 768px)
{
    .swiper-aktuality .swiper-slide
    {
        width:250px;
    }
}

figure.w-100>a, figure.w-100>a>img
{
    width:100%;
}

#ajax-load-more
{
    padding:0;
    margin-top:0!important;
}

.icon-text-left-margin img
{
    margin-left:15px;
}

.wp-block-button
{
    padding:20px 60px 20px 0;
}



#breadcrumbs span.breadcumb-separator
{
   width: 30px;
   display: inline-block;
   position:relative;
   text-align:center;
}

#breadcrumbs span.breadcumb-separator:before
{
    content:url('assets/images/icons/bread_arrow.svg');
    display:block;
    position:absolute;
    left:12px;
    bottom:-7px;
}

#breadcrumbs a
{
    font-size: 12px;
    font-weight: 400;
    text-decoration:underline;
    color:#7f7f7f;
}

#breadcrumbs a:hover
{
    color: #000000;
    text-decoration: underline;
}

#breadcrumbs span.breadcrumb_last
{
    font-size: 12px;
    color:#000000;
    font-weight: 600;
}

  


/********************* content *********************/


/*.main-content.front-page
{
    padding-top:90px;
    padding-bottom:90px;
}*/

.main-content
{
    padding-bottom:0px;
}

/*.single-page article .wp-block-image img
{
    margin-bottom:50px;
    margin-top:50px;
}*/

.single-page article div>.wp-block-image:first-child img
{
    margin-top: 0;
}


article ol, article ul
{
    margin-bottom:25px;
}

article ol li, article ul li
{
    margin-bottom:15px;
}

article ol ul
{   
    margin-bottom:15px;
}

article ol ul li, article ul li
{
    margin-top:15px;
}

.boxes>div
{
    margin-bottom:22px;
}

.boxes .box {
    border-radius: 5px;
    width: 100%;
    overflow: hidden;
    aspect-ratio: 1.04;
}

.boxes .box img
{
    width:100%;
    height:100%;
    object-fit: cover;
    transition: all 0.3s ease-in-out;
}

.boxes .box-content
{
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 31%, #000);
    color:white;
    height:100%;
    width:100%;
    position: absolute;
    left:0;
    bottom: 0;
    right: 0;
    top: 0;
    display: flex;
    flex-flow: column;
    padding:24px 30px;
    justify-content: end;
}

.boxes .box-content h3
{
    color:white;
    font-size:20px;
    line-height:29px;
    font-weight: 400;
    margin-top: 0;
}

.boxes .box:hover img
{
    width: calc(100% + 40px);
    height: calc(100% + 40px);
    margin: -20px;
}




.single-page img.attachment-post-thumbnail
{
    max-width:100%;
    height:auto!important;
}

.ratio .wp-block-embed__wrapper iframe
{
    height:100%;
    width:100%;
}

@media (min-width: 600px)
{
    .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image) {
        width: calc(16.66667% - 7px * 0.83333);
        flex-grow:0;
    }
}

.kontakt-block
{
    font-size:16px;
}

.wp-block-pb-accordion-item
{
    border-bottom: 2px solid #f8f8f8;
    padding-bottom:14px;
    counter-increment: accordionCounter;
}

.wp-block-pb-accordion-item h3.c-accordion__title, .wp-block-pb-accordion-item h2.c-accordion__title
{
    color:black;
    font-size:16px;
    margin:0;
    padding-top:39px;
    padding-bottom:25px;
    font-weight: 500;
}

.wp-block-pb-accordion-item.is-open h3.c-accordion__title, .wp-block-pb-accordion-item.is-open h2.c-accordion__title
{
    color:var(--green);
}

.wp-block-pb-accordion-item .c-accordion__title:after
{
    color:var(--green);
    background-color: white;
    border: solid 2.5px #f8f8f8;
    text-align: center;
    height:56px;
    width:56px;
    border-radius: 56px;
    align-content: center;
    font-size: 35px;
    margin-top: 10px;
    transition: all 0.2s ease-in-out;
    padding-bottom: 5px;
}

.wp-block-pb-accordion-item .c-accordion__title:hover:after, .wp-block-pb-accordion-item.is-open .c-accordion__title:after
{
    background-color:var(--green);
    color: white;
}

.wp-block-pb-accordion-item:last-of-type
{
    margin-bottom:80px;
}

@media(min-width:1200px)
{
    .c-accordion__content
    {
        width:50%;
    }
}

.full-size-link
{
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    opacity: 0;
    z-index: 2;
}

.wpcf7-form label
{
    width:100%;
}

.wpcf7-form .wpcf7-form-control-wrap input[type='text'], .wpcf7-form .wpcf7-form-control-wrap input[type='email'],
.wpcf7-form .wpcf7-form-control-wrap input[type='tel'], .wpcf7-form .wpcf7-form-control-wrap textarea,
.wpcf7-form .wpcf7-form-control-wrap select
{
    width:100%;
    background: transparent;
    border: 1px solid #e4e4e4;
    padding:18px 12px;
    font-size:14px;
    line-height: 19px;
    color:#828282;
    margin-top:11px;
    border-radius: 3px;
    margin-bottom:13px;
}

input:focus
{
    outline-color: var(--green);
    border-color: var(--green);
    box-shadow: 0 0 3px rgba(150, 191, 13, 0.5);
}

.wpcf7-form .wpcf7-form-control-wrap textarea
{
    height:276px;
    margin-bottom:0;
}

.wpcf7-form .wpcf7-acceptance
{
    font-size:12px;
}

.wpcf7-spinner
{
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.contact-block
{
    padding: 60px 50px 0px 52px;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 20px 60px 0 rgba(62, 62, 62, 0.16);
    background-color: #fff;
    font-size:14px;
    z-index:3;
    position:relative;
    margin-bottom:50px;
}

@media(min-width: 999px)
{
    .contact-block {
        margin-bottom: -170px;
    }

}

.map-title
{
    display: inline-block;
    background-color: var(--gray);
    color:black;
    padding:17px 22px;
    position: absolute;
    top:0;
    right:0;
    font-size:12px;
    font-weight: 700;
}



.ajax-load-more-wrap button.alm-load-more-btn:before
{
    height:50px;
    width:50px;
    display: block;
    border-radius:50px;
    content:url("assets/images/plus.svg");
    background: transparent;
    border:1px solid var(--green);
    padding-top: 14px;
    position: absolute;
    left: 50%;
    margin-left:-25px;
    top:0;
    transition: all 0.3s ease-in-out;
    visibility: visible;
    opacity:1;
}

.ajax-load-more-wrap button.alm-load-more-btn
{
    border:0;
    padding-top:10px;
    background:transparent;
    color:var(--green);
    height:130px;
    font-weight: 700;
    box-shadow: none;
    margin-top: 40px;
    font-size:14px;
}

.alm-load-more-btn.done
{
    display: none!important;
}

.ajax-load-more-wrap button.alm-load-more-btn:hover
{
    color:var(--green);
}

.ajax-load-more-wrap button.alm-load-more-btn:hover:before
{
   transform: rotateZ(180deg);
}

.ajax-load-more-wrap button.alm-load-more-btn:hover
{
    background: transparent;
    border:0;
}

.alm-listing
{
    margin-left:calc(-.5 * var(--bs-gutter-x))!important;
    margin-right:calc(-.5 * var(--bs-gutter-x))!important;
}

.loader {
    border: 6px solid #a3a3a3;
    border-top: 6px solid #c32e1b;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    animation: spin 1s linear infinite;
    margin: 20px auto; /* vycentrování */
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

#reference
{
    background-color: var(--gray);
    padding-top:58px;
    padding-bottom:100px;
    margin-top:80px;
    margin-bottom:150px;
}

.swiper-slide
{
    background: white;
    padding:30px 30px;
}

.swiper-slide h3
{
    margin-top:0;
    font-size:16px;
    margin-bottom:15px;
}

.swiper-controls-reference
{
    border:1px solid var(--gray);
    border-radius: 4px;
    background-color: white;
    width: 123px;
    height: 60px;
    position: relative;
}

.swiper-controls-reference:after
{
    width: 2px;
    height: 40px;
    background-color: var(--gray);
    content: '';
    position: absolute;
    left:60px;
    transform: rotate(20deg);
    top:10px;
}

.swiper-button-next.swiper-reference-button-next, .swiper-button-prev.swiper-reference-button-prev
{
    color:var(--fontcolor);
}

.swiper-button-next.swiper-reference-button-next:after, .swiper-button-prev.swiper-reference-button-prev:after
{
    font-size: 30px!important;
}

.swiper-button-next.swiper-reference-button-next:hover, .swiper-button-prev.swiper-reference-button-prev:hover
{
    color:var(--green);
}

.header-pages
{
    z-index:10;
    color:white;
    border-radius:5px;
    overflow: hidden;
    left:12px;
    right:12px;
}

.header-pages h2
{
    color:white;
    font-size:22px;
    line-height:29px;
}

.header-pages img
{
    height:60px;
    width: 60px;
    object-fit: scale-down;
    margin-bottom:12px;
    transition: all 0.3s ease-in-out;
}

.page-box
{
    padding: 45px 40px 15px 40px;
    background:rgba(0,0,0,0.5);
    transition: background-color 0.3s ease-in-out;
    font-size: 17px;
    line-height: 23px;
}

.page-box:hover, .page-box.active
{
    background: rgba(150,191,13,1);
}

.page-box:hover img,.page-box.active img
{
    filter: brightness(0) invert(1);
}

.wp-block-file
{
    background: var(--gray);
    height: 100%;
    padding:25px;
    position: relative;
    min-height: 160px;
    text-align: center;
    font-size: 14px;
    transition: all 0.3s ease-in-out;
    border-radius: 5px;
}

.wp-block-file:hover
{
    background-color: var(--fontcolor);
}

.wp-block-file:hover a
{
    color: white;
}

.wp-block-file a
{
    color:#4a4a4a;
    font-size: 14px!important;
}

.wp-block-file__button, .wp-block-file__button:hover
{
    opacity:0;
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin-left: 0;
}

.wp-block-file > a:first-child:before {
    content: '';
    display: block;
    width: 27px;
    height: 36px;
    background-size: contain;
    background-repeat: no-repeat;
    margin:0 auto 16px auto;
}

.wp-block-file > a:before {
    background-image: url('assets/images/files/ico_file.svg');
}

/* PDF soubor */
.wp-block-file > a[href$=".pdf"]:before {
    background-image: url('assets/images/files/ico_file_pdf.svg');
}

/* DOC/DOCX */
.wp-block-file > a[href$=".doc"]:before,
.wp-block-file > a[href$=".docx"]:before {
    background-image: url('assets/images/files/ico_file_doc.svg');
}

/* XLS/XLSX */
.wp-block-file > a[href$=".xls"]:before,
.wp-block-file > a[href$=".xlsx"]:before {
    background-image: url('assets/images/files/ico_file_xls.svg');
}

@media (min-width: 1400px) {
    .col-xxl-20 {
        flex: 0 0 auto;
        width: 20%;
    }
}

@media(min-width: 998px) {
    .dotted-separator-after-image:after {
        border-top: 2px dotted var(--green);
        display: inline-block;
        content: '';
        width: calc(100% - 75px);
        height: 15px;
        margin-left: 32px;
    }
}

.kontakt-boxy .gray-box
{
    background-color: var(--gray);
    padding:25px;
    border-radius: 5px;
    height:100%;
    margin-bottom:20px;
}

.kontakt-boxy .gray-box h3
{
    font-size:21px;
    color:black;
    font-weight: 700;
    margin-top:10px;
}

.kontakt-boxy .gray-box h3:after
{
    display: block;
    width:70px;
    height: 2px;
    background: var(--green);
    content: '';
    margin-top:5px;
}

/********************* footer **********************/


footer
{
    padding-top:120px;
    color:#000000;
    position:relative;
    font-size:13px;
}

footer:after
{
    width:100%;
    display:block;
    content:'';
    z-index:-1;
    left:0;
    right:0;
    top:-120px;
    bottom:0;
    position: absolute;
    background-image: linear-gradient(to bottom, rgba(248, 248, 248, 0), #f8f8f8);
}

footer>*
{
    z-index:1;
}

footer p:empty {
    display: none;
}

footer h2
{
    font-size: 16px;
    font-weight: 500;
    line-height:21px;
    padding-bottom: 12px;
    margin-bottom:6px;
    margin-top:30px;
    border-bottom:1px solid var(--green);
    display: inline-block;

}

footer .footer-kontakty
{
    font-size:22px;
}

footer .footer-kontakty img
{
    margin-right:5px;
}

footer .footer-menus  ul.social-menu
{
    display: flex;
    margin:-8px -8px 0 -8px;
}

footer li.only-head
{
    display: none;
}


footer a, footer li a.nav-link
{
    color:#000000;
    text-decoration:none;
}

footer a:hover, footer li a.nav-link:hover
{
    color:#000000;
    text-decoration:underline;
}

.footer-menus ul
{
    list-style-type:none;
    margin-left:0;
    padding-left:0;
    margin-top:20px;
    display: block;
}

@media(min-width: 400px)
{
    .footer-menus #menu-informace
    {
        column-count: 2;
    }
}

.footer-menus li.hide-in-footer
{
    display: none;
}

.footer-menus li
{
    padding:0px 0;
    display:block;
}

.footer-menus li a
{
    font-size:13px;
    padding:8px 0;
    line-height:19px;
    transition: all 0.3s ease-in-out;
}

.footer-menus ul.footer-menu li a:hover
{
    color:#000000;
    text-decoration: underline;
}

#footer-copy
{
    font-size: 12px;
    color: #666666;
    margin-top: 90px;
    padding-top:55px;
    padding-bottom:45px;
}

#footer-copy li a.nav-link
{
    padding:0;
}

#footer-copy a
{
    color: #666666;
}

#copy
{
    margin-bottom:20px;
}

hr.wp-block-separator, hr
{
    opacity: 1;
    border-top: 1px solid #000000;
}




#referenceCarousel .carousel-item
{
    display: block!important;
    opacity:0;
    transition: all 0.5s ease-in-out, opacity 0ms;
}

#referenceCarousel .carousel-item.carousel-item-next
{
    margin-right:-100%;
    margin-left:100%;
    transition:none;
}

#referenceCarousel .carousel-item.active, #referenceCarousel .carousel-item.carousel-item-next
{
    opacity:1;
}

body:not(.lang-cs) .only-cs, body:not(.lang-en) .only-en
{
    display: none;
}

#back-to-top
{
    margin-top:20px;
    display: block;
}

#back-to-top span
{
    opacity: 0.7;
}

#back-to-top:before
{
    content:url("assets/images/ico_arrow_top.svg");
    display: block;
    text-align: center;
    margin: 10px auto 15px auto;
    transition: transform 0.3s ease;
}

#back-to-top:hover:before
{
    animation: arrow-bounce 1s ease-in-out infinite;
}

@keyframes arrow-bounce {
    0%, 100% {
        transform: translateY(0);
    }
    70% {
        transform: translateY(-10px);
    }
}

.gdpr-menu
{
    margin-left:-10px;
    margin-right:-10px;
}

.gdpr-menu li
{
    padding-left:10px;
    padding-right:10px;
}

[id] {
    scroll-margin-top: 150px;
}













