/*
Theme Name: PKI Teplotechna
Author: startujemeweby.cz
Author URI: https://startujemeweby.cz/
Version: 1.0
*/

:focus:not(:focus-visible) {
    outline: none;
}

html {
    scroll-behavior: smooth;
}

body
{
    font-size: 16px;
    line-height: 27px;
    color: #959595;
    font-family: 'Saira', sans-serif;
}

p, ul, figure
{
    margin: 0;
}

/* FORM */
.form-group
{
    margin: 0;
}

.form-group + .form-group
{
    margin-top: 12px;
}

.form-group > label
{
    margin: 0;
    padding: 0 0 3px;
    font-size: 16px;
    line-height: 27px;
    color: #959595;
    font-weight: 400;
}

.form-group .form-control
{
    height: 40px;
    padding: 0 10px;
    line-height: 40px;
    border: 0;
    font-size: 14px;
    border-radius: 0;
    box-shadow: none;
    color: #FFFFFF;
    border: 1px solid #6b6b6b;
    background: #292929;
}

.form-group textarea.form-control
{
    height: 123px;
    padding: 7px 10px;
    line-height: 20px;
}

.checkbox
{
    margin: 0;
}

.checkbox > label
{
    margin: 0;
    padding: 0;
    position: relative;
    padding-left: 22px;
}

.checkbox > label > input
{
    position: absolute;
    top: 0;
    left: 0;
}

.checkbox > label > span
{
    position: relative;
    top: -3px;
    display: block;
    font-size: 14px;
    line-height: 20px;
    color: #959595;
    font-weight: 400;
}

.checkbox > label > span > a
{
    color: #FF0000;
    text-decoration: underline;
}

.checkbox > label > span > a:hover
{
    text-decoration: none;
}

/* SLICK */
.slick-slider .slick-arrow
{
    position: absolute;
    display: block;
    top: 50%;
    margin-top: -25px;
    left: 0;
    width: 50px;
    height: 50px;
    line-height: 50px;
    color: #E00000;
    padding: 0;
    border: 0;
    font-size: 16px;
    text-align: center;
    transition: color 0.3s ease, background 0.3s ease;
    background: #FFFFFF;
    z-index: 99;
}

.slick-slider .slick-arrow ~ .slick-arrow
{
    left: auto;
    right: 0;
}

.slick-slider .slick-arrow:hover
{
    color: #FFFFFF;
    background: #E00000;
}

/* BUTTON */
.btn,
.btn:focus,
.btn:active
{
    position: relative;
    margin-right: 48px;
    border: 0;
    border-radius: 0;
    font-size: 16px;
    line-height: 26px;
    font-weight: bold;
    padding: 11px 30px;
    text-align: left;
    box-shadow: none !important;
    text-transform: uppercase;
}

.btn.btn-block
{
    width: calc(100% - 48px);
}

.btn.btn-primary,
.btn.btn-primary:focus,
.btn.btn-primary:active
{
    color: #FFFFFF;
    border: 1px solid #E00000 !important;
    background: #E00000 !important;
}

.btn.btn-primary::after,
.btn.btn-primary::before
{
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    content: "\f054";
    top: -1px;
    left: 100%;
    width: 48px;
    height: 100%;
    height: calc(100% + 2px);
    color: #FFFFFF;
    font-size: 16px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    border: 1px solid #E00000;
    background: transparent;
    transition: color 0.3s ease;
}

.btn.btn-primary::before
{
    content: "";
    width: 0;
    background: #E00000;
    transition: width 0.3s ease;
}

.btn.btn-primary:hover::before
{
    width: 48px;
}

.btn.btn-default,
.btn.btn-default:focus,
.btn.btn-default:active
{
    color: #FFFFFF;
    border: 1px solid #E00000 !important;
    background: #E00000 !important;
    line-height: 1.6;
    padding: 11px 50px;      
    margin-right: 0;    
}

/* NAV PILLS */
.nav-pills + .item-banner
{
    margin-top: 110px;
}

.nav-pills .nav-link
{
    position: relative;
    display: flex;
    justify-content: left;
    align-items: center;
    height: 61px;
    padding: 0 20px;
    padding-right: 81px;
    font-size: 16px;
    line-height: 20px;
    font-weight: bold;
    color: #FFFFFF;
    letter-spacing: -0.5px;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-top: 1px solid #E00000;
    border-bottom: 1px solid #E00000;
}

.nav-pills .nav-link::after,
.nav-pills .nav-link::before
{
    position: absolute;
    width: 61px;
    height: 61px;
    line-height: 59px;
    content: "\f054";
    right: 0;
    height: 100%;
    text-align: center;
    color: #FFFFFF;
    font-size: 16px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    opacity: 0;
    visibility: visible;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.nav-pills .nav-link:hover::after
{
    opacity: 1;
    visibility: visible;
}

.nav-pills .nav-link + .nav-link
{
    margin-top: -1px;
}

.nav-pills .nav-link.active
{
    background: #E00000;
}

.nav-pills .nav-link.active::after
{
    opacity: 1;
    visibility: visible;
    border-right: 1px solid #E00000;
    background: #000000;
}

/* HEADER */
header
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 150px;
    z-index: 99;
    padding: 60px 0 0;
}

@media (min-width: 992px)
{
    header #logo
    {
        display: block;
        position: relative;
        top: 10px;
    }
}

header .container
{
    position: relative;
}

header #top
{
    padding: 12px 0;
    margin: -60px 0 10px;
    height: 50px;
    background: rgba(31, 20, 22, 0.7);
}

header #top + .row > div
{
    position: static;
}

header .-contact
{
    padding: 0 15px;
    /* místo pro absolutně umístěný přepínač jazyků, --languages = počet jazyků (header.php) */
    padding-right: calc(15px + 95px * min(1, var(--languages, 0)) + 45px * var(--languages, 0));
}

header .list-contact
{
    font-size: 0;
    line-height: 0;
    text-align: right;
}

header .list-contact > li
{
    display: inline-block;
}

header .list-contact > li + li
{
    margin-left: 30px;
}

header .list-contact > li > a
{
    display: block;
    font-size: 12px;
    line-height: 26px;
    font-weight: 400;
    color: #FFFFFF;
}

header .list-contact > li > a > i
{
    color: #E00000;
    margin-right: 10px;
}

header .-language
{
    position: absolute;
    top: 0;
    padding: 10px 0;
    right: 15px;
    margin-right: 5px;
}

header .list-language
{
    font-size: 0;
    line-height: 0;
}

header .list-language > li
{
    display: inline-block;
}

header .list-language > li:not(.-current) + li:not(.-current)
{
    border-left: 1px solid #505050;
}

header .list-language > li > a
{
    display: block;
    padding: 0 12px;
    font-size: 16px;
    line-height: 30px;
    color: #bdbdbd;
    text-transform: uppercase;
    text-decoration: none !important;
    transition: color 0.3s ease;
}

header .list-language > li > a:hover
{
    color: #FFFFFF;
}

header .list-language > li.-current > a
{
    font-weight: bold;
    color: #FFFFFF;
    background: #E00000;
}

header .list-menu
{
    font-size: 0;
    line-height: 0;
}

header .list-menu > li
{
    position: relative;
    display: inline-block;
}

header .list-menu > li + li
{
    margin-left: 4px;
}

header .list-menu > li > a
{
    position: relative;
    display: block;
    padding: 0 28px;
    font-size: 16px;
    line-height: 50px;
    font-weight: bold;
    color: #FFFFFF;
    text-decoration: none !important;
    text-transform: uppercase;
}

@media (max-width: 1199px) and (min-width: 992px)
{
    header .list-menu > li > a
    {
        padding: 0 19px;
    }
}

header .list-menu > li > a::before,
header .list-menu > li > a::after
{
    position: absolute;
    display: block;
    content: "";
    top: 100%;
    left: 50%;
    width: 0;
    border-bottom: 1px solid #E00000;
    transition: width 0.3s ease;
}

header .list-menu > li > a::after
{
    left: auto;
    right: 50%;
}

header .list-menu > li[class*="current"] > a::before,
header .list-menu > li[class*="current"] > a::after,
header .list-menu > li:hover > a::before,
header .list-menu > li:hover > a::after
{
    width: 50%;
}

header .list-menu > li > ul
{
    display: block;
    position: absolute;
    min-width: 240px;
    left: 0;
    top: 100%;
    margin-top: 1px;
    padding: 0;
    list-style: none;
}

@media (min-width: 992px)
{
    header .list-menu > li > ul
    {   
        max-height: 0;
        overflow: hidden;

        -webkit-transform: rotate3d(1,0,0,-90deg);
        -webkit-transform-origin: 50% 0;
        -webkit-transition: 150ms;
        -moz-transition: 150ms;
        -o-transition: 150ms;
        -ms-transition: 150ms;
        -moz-transform: rotate3d(1,0,0,-90deg);
        -moz-transform-origin: 50% 0;
        -ms-transform: rotate3d(1,0,0,-90deg);
        -ms-transform-origin: 50% 0;
        transition: 150ms;
        transform-style: preserve-3d;
        visibility: hidden;
    }

    header .list-menu > li:hover > ul,
    header .list-menu > li:focus-within > ul,
    header .list-menu > li.-open > ul
    {
        visibility: visible;
        max-height: 1000px;
        -webkit-transform: rotate3d(0,0,0,0);
        -moz-transform: rotate3d(0,0,0,0);
        -ms-transform: rotate3d(0,0,0,0);
    }
}

header .list-menu > li > ul > li
{
    display: block;
}

header .list-menu > li > ul > li > a
{
    position: relative;
    display: flex;
    height: 50px;
    align-items: center;
    padding: 0 28px;
    padding-right: 66px;
    font-weight: bold;
    font-size: 16px;
    line-height: 22px;
    color: #FFFFFF;
    white-space: nowrap;
    text-transform: uppercase;
    text-decoration: none !important;
    border-bottom: 1px solid #656460;
    background: rgba(62, 62, 62, 0.9);
}

header .list-menu > li > ul > li > a::after
{
    position: absolute;
    display: flex;
    align-items: center;
    content: "\f054";
    text-align: center;
    justify-content: center;
    top: 0;
    width: 56px;
    right: 0;
    height: 100%;
    line-height: 100%;
    color: #FFFFFF;
    font-size: 16px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

header .list-menu > li > ul > li > a:hover::after
{
    opacity: 1;
    visibility: visible;
}

/* FOOTER */
footer
{
    position: relative;
    overflow: hidden;
    padding: 110px 0 100px;
    background: #000000;
}

footer p
{
    font-size: 14px;
    line-height: 22px;
    color: #959595;
}

footer .-col-logo
{
    padding-right: 80px !important;
}

footer .-col-contact
{
    padding-left: 80px !important;
}

footer .-col-link
{
    padding-left: 60px !important;
}

footer .-col-logo::after
{
    position: absolute;
    display: block;
    content: "";
    top: 5px;
    right: 0;
    height: 100vw;
    border-right: 1px solid #E00000;
}

footer .-col-logo > a
{
    display: block;
    width: 130px;
}

footer .text-copyright
{
    font-size: 14px;
    color: #FFFFFF;
}

footer .list-contact
{
    margin: 25px 0;
    font-size: 0;
    line-height: 0;
}

footer .list-contact > li + li
{
    margin-top: 5px;
}

footer .list-contact > li > a
{
    position: relative;
    display: inline-block;
    color: #FFFFFF;
    font-size: 14px;
    line-height: 22px;
    padding-left: 25px;
}

footer .list-contact > li > a > i
{
    position: absolute;
    top: 0;
    line-height: 22px;
    left: 0;
    color: #E00000;
    height: 0;
}

/* odkazy z menu Patička ve dvou sloupcích */
footer .-col-link > .list-link
{
    columns: 2;
    column-gap: 60px;
}

footer .list-link > li
{
    margin-bottom: 5px;
    break-inside: avoid;
}

footer .list-link > li > a
{
    display: inline-block;
    font-size: 14px;
    line-height: 20px;
    color: #959595;
    text-decoration: underline;
    transition: color 0.3s ease;
}

footer .list-link > li > a:hover
{
    color: #E00000;
    text-decoration: none;
}

footer .item-copyright
{
    position: absolute;
    right: 0;
    bottom: 0;
    white-space: nowrap;
}

footer .item-copyright > ul
{
    font-size: 0;
    line-height: 0;
}

footer .item-copyright > ul > li
{
    display: inline-block;
    padding-right: 20px;
    height: 29px;
}

footer .item-copyright > ul > li + li
{
    padding-left: 20px;
    padding-right: 0;
    border-left: 1px solid #E00000;
}

footer .text-burdadesign
{
    position: relative;
    display: block;
    top: -3px;
    text-align: right;
    text-decoration: none !important;
}

footer .text-burdadesign > span
{
    position: relative;
    bottom: -1px;
    display: block;
    width: 77px;
    height: 11px;
    font-size: 0;
    text-indent: -999px;
    mask: url(./image/burdadesign_logo.svg) no-repeat;
    mask-size: contain;
    -webkit-mask-image: url(./image/burdadesign_logo.svg);
    -webkit-mask-size: contain;
    background: #5c5c5c;
    transition: background 0.3s ease;
}

footer .text-burdadesign:hover > span
{
    background: #FFFFFF;
}

footer .text-burdadesign > strong
{
    position: relative;
    display: block;
    font-size: 11px;
    color: #8a8a8a;
    line-height: 11px;
    font-weight: 400;
    margin-bottom: 9px;
    white-space: nowrap;
}

footer .text-startujemeweby
{
    position: relative;
    display: block;
    top: -3px;
    text-align: left;
    text-decoration: none !important;
}

footer .text-startujemeweby > span
{
    position: relative;
    bottom: -3px;
    display: block;
    width: 125px;
    height: 9px;
    font-size: 0;
    text-indent: -999px;
    mask: url(./image/startujemeweby_logo.svg) no-repeat;
    mask-size: contain;
    -webkit-mask-image: url(./image/startujemeweby_logo.svg);
    -webkit-mask-size: contain;
    background: #5c5c5c;
    transition: background 0.3s ease;
}

footer .text-startujemeweby:hover > span
{
    background: #FFFFFF;
}

footer .text-startujemeweby > strong
{
    position: relative;
    display: block;
    font-size: 11px;
    color: #8a8a8a;
    line-height: 11px;
    font-weight: 400;
    margin-bottom: 9px;
    white-space: nowrap;
}

/* ITEM: HISTORY */
.item-history
{
    position: relative;
    padding: 0 15px;
}

.item-history .-year
{
    position: relative;
    overflow: hidden;
    margin: -9px 0 20px;
    padding: 0;
    position: relative;
    font-size: 55px;
    line-height: 60px;
    color: #000000;
    font-weight: 100;
}

.item-history .-year > span
{
    position: relative;
    display: inline-block;
    padding-right: 20px;
}

.item-history .-year > span::after
{
    display: block;
    position: absolute;
    content: "";
    bottom: 12px;
    left: 100%;
    width: 100%;
    border-bottom: 1px solid #E00000;
}

.item-history .-title
{
    margin: 0 0 10px;
    padding: 0;
    font-size: 17px;
    line-height: 22.8px;
    font-weight: bold;
    color: #000000;
}

.item-history img
{
    width: calc(100% - 25px);
    margin-right: 25px;
    margin-bottom: 30px;
}

.item-history.-inverted img
{
    margin-top: 30px;
    margin-bottom: 0;
}

.item-history p
{
    font-size: 14px;
    line-height: 22.8px;
    color: #6b6b6b;
}

/* ITEM: BENEFIT */
.item-benefit
{
    position: relative;
    text-align: center;
    padding: 115px 0 0;
}

.item-benefit > img
{
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.item-benefit .-title
{
    position: relative;
    margin: 0 0 10px;
    font-size: 17px;
    line-height: 22px;
    font-weight: bold;
    color: #000000;
}

.item-benefit .-title::before
{
    position: absolute;
    display: block;
    content: "";
    top: -32px;
    left: 50%;
    width: 70px;
    margin-left: -35px;
    border-top: 1px solid #E00000;
}

.item-benefit p
{
    font-size: 14px;
    line-height: 22px;
    color: #6b6b6b;
}

/* ITEM: BANNER */
.item-banner
{
    position: relative;
    height: 430px;
    z-index: 99;
    padding: 30px;
    display: flex;
    align-items: end;
    flex-direction: column-reverse;
}

.item-banner > .background
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.item-banner > .background > img
{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.item-banner .-content > img
{
    position: absolute;
    top: 30px;
    left: 30px;
}

.item-banner .-title
{
    margin: 0 0 25px;
    padding: 0;
    font-size: 30px;
    line-height: 38.8px;
    font-weight: 100;
    color: #FFFFFF;
}

.item-banner .btn
{
    display: flex;
    justify-content: left;
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
    height: 72px;
    font-size: 16px;
    line-height: 18.8px;
}

/*.item-banner .btn::after
{
    background: #000000;
}*/

/* ITEM: SERVICE */
.item-service
{
    padding: 45px 0;
    border-top: 2px solid #f2f2f2;
}

.item-service .-col-text
{
    padding-left: 30px;
    padding-right: 30px;
}

.item-service .-col-button
{
    max-width: 277.5px;
    flex: 0 0 277.5px;
    padding: 30px;
    background: #f2f2f2;
}

.item-service .-col-button .btn.btn-primary::after
{
    content: "\f078";
    color: #E00000;
}

.item-service .-col-button .btn.btn-primary:hover::after
{
    color: #FFFFFF;
}

.item-service .-col-button .btn.btn-primary.-close
{
    background: transparent !important;
    color: #E00000 !important;
    border-right: 0 !important;
}

.item-service .-col-button .btn.btn-primary.-close:hover
{
    text-decoration: underline;
}

.item-service .-col-button .btn.btn-primary.-close::before
{
    display: none !important;
}

.item-service .-col-button .btn.btn-primary.-close::after
{
    content: "\f00d";
    color: #E00000;
    border-left: 0;
}

.item-service .-title
{
    margin: 0;
    font-size: 40px;
    line-height: 44.8px;
    font-weight: bold;
    color: #000000;
}

.item-service p
{
    font-size: 16px;
    line-height: 25px;
    color: #6b6b6b;
}

.item-service p + p
{
    margin-top: 25px;
}

.item-service .-subtitle
{
    margin: 45px 0 23px;
    font-size: 22px;
    line-height: 32px;
    font-weight: bold;
    color: #FFFFFF;
}

.item-service .-sidetitle
{
    margin: -59px -30px 20px;
    padding: 50px 30px 0;
    font-size: 30px;
    line-height: 38.8px;
    font-weight: 100;
    color: #1a1a1a;
    background: #d9f3f3;
}

.item-service div[id^="collapseItem"]
{
    padding-top: 50px;
    -webkit-transition: none;
    transition: none;
}

.item-service div[id^="collapseItem"] .slick-slider
{
    margin: -55px -30px 0;
    margin-left: -31px;
}

.item-service div[id^="collapseItem"] .slick-slider .slick-slide > a
{
    position: relative;
    display: block;
    padding-top: 75%;
    border-left: 1px solid #FFFFFF;
}

.item-service div[id^="collapseItem"] .slick-slider .slick-slide > a > img
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.item-service div[id^="collapseItem"] > .row > div:first-child
{
    padding: 55px 30px 70px;
    font-size: 16px;
    font-weight: 300;
    line-height: 27px;
    color: #999999;
    background: #1a1a1a;
}

.item-service div[id^="collapseItem"] > .row > div:first-child
{
    position: relative;
    overflow: hidden;
    padding: 45px 30px 60px;
}

.item-service div[id^="collapseItem"] > .row > div + div
{
    padding: 0 30px;
    background: #d9f3f3;
}

.item-service div[id^="collapseItem"] > .row > div + div p
{
    color: #666666;
}

.item-service div[id^="collapseItem"] > .row > div + div .list-contact
{
    margin-top: 20px;
}

.item-service div[id^="collapseItem"] > .row > div + div .list-contact > li > a
{
    position: relative;
    display: block;
    padding-left: 28px;
    font-size: 14px;
    line-height: 22.8px;
    color: #666666;
}

.item-service div[id^="collapseItem"] > .row > div + div .list-contact > li > a > i
{
    position: absolute;
    top: 0;
    left: 0;
    line-height: 22.8px;
    color: #E00000;
}

.item-service div[id^="collapseItem"] > .row > div:first-child ul
{
    list-style: none;
    margin: 20px 0;
    padding: 0;
    border-top: 1px solid #464646;
}

.item-service div[id^="collapseItem"] > .row > div:first-child ul > li
{
    position: relative;
    padding: 15px 15px;
    padding-right: 30px;
    font-size: 16px;
    line-height: 24px;
    color: #959595;
    font-weight: 300;
    border-bottom: 1px solid #464646;
}

.item-service div[id^="collapseItem"] > .row > div:first-child ul > li::before
{
    position: absolute;
    display: block;
    content: "";
    top: 23px;
    left: 0;
    width: 4px;
    height: 8px;
    background: #E00000;
}

.item-service div[id^="collapseItem"] > .row > div:first-child ul > li > ul 
{
    border: 0;
    margin: 16px 0 0;
    margin-right: -30px;
}

.item-service div[id^="collapseItem"] > .row > div:first-child ul > li > ul > li
{
    border: 0;
    font-size: 14px;
    line-height: 22px;
    padding-left: 26px;
    padding-right: 30px;
    background: #383838;
}

.item-service div[id^="collapseItem"] > .row > div:first-child ul > li > ul > li::before
{
    width: 3px;
    height: 3px;
    left: 16px;
    top: 24.5px;
    background: #959595;
}

.item-service div[id^="collapseItem"] > .row > div:first-child ul > li > ul > li + li
{
    margin-top: 2px;
}

.item-service div[id^="collapseItem"] > .row > div:first-child *:last-child
{
    margin-bottom: 0 !important;
}

/* ITEM: PEOPLE */
.item-people .row
{
    margin-top: -20px;
}

.item-people .row > div
{
    margin-top: 20px;
}

.item-people .row > div + div
{
    margin-top: 20px;
}

.item-people img
{
    width: 90px;
}

@media (min-width: 992px)
{
    .row.-count-2 .item-people img
    {
        width: 130px;
    }
}

.item-people .-name
{
    font-size: 18px;
    line-height: 22.8px;
    font-weight: bold;
    color: #1a1a1a;
    /*text-transform: uppercase;*/
}

.item-people .-position
{
    font-size: 14px;
    line-height: 22.8px;
    color: #E00000;
}

.item-people .list-contact
{
    margin-top: 17px;
}

.item-people .list-contact > li + li
{
    margin-top: 4px;
}

.item-people .list-contact > li > a
{
    position: relative;
    display: block;
    font-size: 14px;
    line-height: 16.8px;
    color: #6b6b6b;
    padding-left: 26px;
}

.item-people .list-contact > li > a > i
{
    position: absolute;
    left: 0;
    top: 0;
    height: 0;
    line-height: 16.8px;
    color: #E00000;
}

/* ITEM: LOCATION */
.item-location
{
    position: relative;
    height: 100%;
    padding: 35px 30px;
    font-size: 14px;
    line-height: 22px;
    color: #959595;
    letter-spacing: -0.5px;
    background: #f2f2f2;
}

.item-location .-title
{
    margin: 0 0 10px;
    padding: 0;
    font-weight: bold;
    font-size: 17px;
    line-height: 23px;
    color: #000000;
}

.item-location .-title > img
{
    position: relative;
    top: -1px;
    margin-left: 10px;
}

.item-location p + p
{
    margin-top: 22px;
}

.item-location a
{
    color: inherit;
    text-decoration: none;
}

.item-location a:hover
{
    text-decoration: underline;
}

/* ITEM: SIGNATURE */
.item-signature
{
    margin-top: 15px;
}

.item-signature p
{
    margin: 10px 0 -7px;
    text-align: center;
    font-size: 16px !important;
    font-weight: bold;
    line-height: 26px !important;
    color: #FFFFFF !important;
    text-transform: uppercase;
}

/* ITEM: MAP */
.item-map
{
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    width: 50vw;
    width: 50vw;
}

/* SECTION */
section.-with-bg
{
    position: relative;
}

section.-with-bg > .background
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

section.-with-bg > .background > img
{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

section .section-title
{
    margin: 0 0 55px;
    padding: 0;
    text-align: center;
    font-size: 30px;
    line-height: 41px;
    font-weight: bold;
    color: #000000;
}

section .section-title > span
{
    display: inline-block;
    padding: 27px 50px;
    background: #FFFFFF;
}

section .section-title-line
{
    position: relative;
    overflow: hidden;
    margin: 0 0 35px;
    margin-right: 40px;
    padding: 0;
    font-size: 40px;
    line-height: 50px;
    font-weight: bold;
    color: #FFFFFF;
}

section .section-title-line > span
{
    position: relative;
    display: inline-block;
    padding-right: 30px;
}

section .section-title-line > span::after
{
    display: block;
    position: absolute;
    content: "";
    bottom: 10px;
    left: 100%;
    width: 100%;
    max-width: 125px;
    border-bottom: 1px solid #E00000;
}

section .section-title-simple
{
    margin: 0 0 30px;
    padding: 0;
    font-size: 30px;
    line-height: 40px;
    color: #FFFFFF;
    font-weight: bold;
}

/* SECTION: INTRO HOME */
section.intro-home
{
    padding: 260px 0 110px;
}

section.intro-home h1
{
    margin: 0;
    padding: 0;
    font-size: 80px;
    line-height: 80px;
    font-weight: bold;
    text-align: center;
    color: #FFFFFF;
}

section.intro-home p
{
    margin: 40px 0 0;
    text-align: center;
    font-size: 30px;
    line-height: 42px;
    color: #FFFFFF;
    font-weight: 100;
    text-transform: uppercase;
    letter-spacing: 20px;
}

section.intro-home .list-link
{
    margin: 70px 0 0;
    text-align: center;
    line-height: 0;
    font-size: 0;
}

section.intro-home .list-link > li
{
    display: inline-block;
}

section.intro-home .list-link > li + li
{
    margin-left: 5px;
}

section.intro-home .list-link > li > a
{
    display: block;
    padding: 9px 20px;
    line-height: 22px;
    font-size: 14px;
    font-weight: bold;
    color: #FFFFFF;
    text-transform: uppercase;
    text-decoration: none !important;
    background: rgba(0, 0, 0, 0.2);
    transition: background 0.3s ease;
}

section.intro-home .list-link > li > a:hover
{
    background: rgba(0, 0, 0, 0.5);
}

/* SECTION: INTRO SUB */
section.intro-sub
{
    padding: 270px 0 110px;
}

section.intro-sub.-error
{
    background: #292929;
}

section.intro-sub h1
{
    margin: 0;
    padding: 0;
    font-size: 65px;
    line-height: 66px;
    text-align: center;
    font-weight: bold;
    color: #FFFFFF;
}

section.intro-sub .list-breadcrumb
{
    margin: 30px 0 0;
    font-size: 0;
    line-height: 0;
    text-align: center;
}

section.intro-sub .list-breadcrumb > li
{
    position: relative;
    display: inline-block;
}

section.intro-sub .list-breadcrumb > li + li
{
    margin-left: 40px;
}

section.intro-sub .list-breadcrumb > li + li::before
{
    position: absolute;
    display: block;
    content: "\f105";
    top: 0;
    left: -40px;
    width: 40px;
    font-size: 13px;
    color: #E00000;
    line-height: 27px;
    font-weight: 300;
    font-family: "Font Awesome 5 Pro";
    text-align: center;
}

section.intro-sub .list-breadcrumb > li > *
{
    display: block;
    font-size: 13px;
    line-height: 27px;
    color: #959595;
    text-transform: uppercase;
}

section.intro-sub .list-breadcrumb > li > a
{
    text-decoration: underline;
}

section.intro-sub .list-breadcrumb > li > a:hover
{
    text-decoration: none;
}

/* SECTION: BENEFITS */
section.benefits
{
    padding: 80px 0 130px;
    background: #f2f2f2;
}

section.benefits .row
{
    margin: 0 -25px;
}

section.benefits .row > div
{
    padding: 0 25px;
}

/* SECTION: TEXT IMAGE */
section.text-image
{
    position: relative;
    overflow: hidden;
    padding: 120px 0;
    background: #000000;
}

section.text-image .container > .row:not(.-normal)
{
    margin: 0 -37.5px;
}

section.text-image .container > .row:not(.-normal) > div
{
    padding: 0 37.5px;
}

section.text-image .-col-image:not(.-with-gallery) > .-image
{
    position: absolute;
    top: 0;
    left: 37.5px;
    width: calc(100% - 75px);
    height: 100%;
}

section.text-image .-col-image:not(.-with-gallery) > .-image > img
{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

section.text-image .-col-image.-with-gallery > .row
{
    margin: 10px -5px;
}

section.text-image .-col-image.-with-gallery > .row > div
{
    padding: 0 5px;
}

section.text-image .-col-image.-with-gallery > .row > div > img + img
{
    margin-top: 10px;
}

section.text-image .section-title-line
{
    margin-top: -9px;
}

/* nadpisy z WYSIWYG textu (dřív se jim třída doplňovala přes str_replace v PHP) */
section.text-image .-col-content > :is(h2, h3, h4):not(.section-title-line)
{
    margin: 45px 0 12px;
    font-size: 22px;
    line-height: 32px;
    font-weight: bold;
    color: #FFFFFF;
}

section.text-image p
{
    font-size: 16px;
    line-height: 27px;
    color: #959595;
    letter-spacing: -0.5px;
}

section.text-image p:last-child
{
    margin-bottom: -7px;
}

/* content list */
.-col-content ul:not(.list-unstyled):not(.slick-dots)
{
    list-style: none;
    margin: 20px 0;
    padding: 0;
    border-top: 1px solid #464646;
}

.-col-content ul:not(.list-unstyled):not(.slick-dots) > li
{
    position: relative;
    padding: 15px 15px;
    padding-right: 30px;
    font-size: 16px;
    line-height: 24px;
    color: #959595;
    font-weight: 300;
    border-bottom: 1px solid #464646;
}

.-col-content ul:not(.list-unstyled) > li::before
{
    position: absolute;
    display: block;
    content: "";
    top: 23px;
    left: 0;
    width: 4px;
    height: 8px;
    background: #E00000;
}

/* SECTION: MAP */
section.map
{
    
}

section.map > .background
{
    position: relative;
}

section.map > .background > img
{
    position: relative;
}

section.map > .container
{
    position: absolute;
    top: 0;
    left: 50%;
    padding: 60px 30px 0;
    transform: translateX(-50%);
}

section.map .section-title
{
    padding: 35px 0;
    background: #292929;
}

section.map .section-title > span
{
    color: #FFFFFF;
    background: #000000;
}

/* SECTION: CONTACT */
section.contact
{
    position: relative;
    overflow: hidden;
    background: #000000;
}

section.contact .-col-content
{
    padding: 95px 0 100px;
    padding-right: 100px;
}

section.contact p
{
    font-size: 16px;
    line-height: 27px;
    color: #959595;
    letter-spacing: -0.5px;
}

section.contact p > small
{
    font-size: 13px;
    line-height: 25px;
    letter-spacing: -0.25px;
}

section.contact .list-contact
{
    margin: 40px 0;
}

section.contact .list-contact > li > a
{
    position: relative;
    display: block;
    padding-left: 55px;
    font-size: 30px;
    line-height: 44.8px;
    font-weight: 300;
    color: #FFFFFF;
}

section.contact .list-contact > li > a > i
{
    position: absolute;
    top: 0;
    left: 0;
    color: #E00000;
    line-height: 44.8px;
}

/* SECTION: LISTING LOCATION */
section.listing-location
{
    padding: 85px 0 80px;
}

section.listing-location .row
{
    margin-top: -30px;
}

section.listing-location .row > div
{
    padding-top: 30px;
}

/* SECTION: LISTING PEOPLE */
section.listing-people
{
    padding: 110px 0 150px;
    background: #f2f2f2;
}

section.listing-people + section.listing-people
{
    margin-top: -60px;
    padding-top: 100px;
}

section.listing-people + section.listing-people > .container
{
    position: relative;
}

section.listing-people + section.listing-people > .container::before
{
    position: absolute;
    display: block;
    content: "";
    top: -100px;
    left: 15px;
    width: calc(100% - 30px);
    border-top: 1px solid #dbdbdb;
}

section.listing-people .container > .row
{
    margin-top: -60px;
}

section.listing-people .container > .row > div
{
    padding-top: 60px;
}

/* SECTION: FORM CONTACT */
section.form-contact
{
    padding: 95px 0 150px;
    border-bottom: 1px solid #FFFFFF;
    background: #000000;
}

section.form-contact .checkbox
{
    margin-bottom: -6px;
}

section.form-contact .btn
{
    margin-top: 31px;
}

/* SECTION: LISTING LOGO */
section.listing-logo
{
    padding: 80px 0 110px;
    background: #f2f2f2;
}

section.listing-logo .row
{
    margin-top: -35px;
}

section.listing-logo .row > div
{
    padding-top: 35px;
    filter: grayscale(100%);
}

/* SECTION: CAROUSEL */
section.carousel
{
    padding: 130px 0 120px;
    background: #f2f2f2;
}

section.carousel .section-title-simple
{
    font-size: 22px;
    line-height: 32px;
    color: #000000;
    margin-bottom: 50px;
    text-align: center;
}

section.carousel .slick-slider
{
    margin-left: -1px;
    padding: 0 80px;
    padding-left: 81px;
}

section.carousel .slick-slide > a
{
    position: relative;
    display: block;
    padding-top: 75%;
    border-left: 1px solid #f2f2f2;
}

section.carousel .slick-slide > a > img
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

/* SECTION: CONTENT IMAGE FULLWIDTH */
section.content-image-fw
{
    position: relative;
    overflow: hidden;
    background: #000000;
}

section.content-image-fw .section-title-simple
{
    font-size: 22px;
    line-height: 32px;
    margin-bottom: 25px;
}

section.content-image-fw .-col-content
{
    padding: 100px 60px 105px;
}

section.content-image-fw .-col-content .slick-text
{
    padding: 0 70px;
}

section.content-image-fw .-col-content .slick-text.-without-button
{
    padding-bottom: 80px;
}

section.content-image-fw .-col-content .slick-text .slick-dots
{
    position: absolute;
    right: 70px;
    bottom: 0;
    font-size: 0;
    line-height: 0;
}

section.content-image-fw .-col-content .slick-text .slick-dots button
{
    font-size: 0;
    line-height: 0;
}

section.content-image-fw .-col-content .slick-text.-without-button .slick-dots
{
    left: 0;
    width: 100%;
    text-align: center;
}

section.content-image-fw .-col-content .slick-text .slick-dots > li
{
    display: inline-block;
    border: none;
    padding: 0;
}

section.content-image-fw .-col-content .slick-text .slick-dots > li + li
{
    margin-left: 10px;
}

section.content-image-fw .-col-content .slick-text .slick-dots > li > button
{
    display: block;
    width: 28px;
    height: 5px;
    padding: 0;
    border: 0;
    background: #7f7f7f;
    transition: background 0.3s ease;
}

section.content-image-fw .-col-content ul:not(.list-unstyled) > li::before
{
    display: none;
}

section.content-image-fw .-col-content .slick-text .slick-dots > li > button:hover,
section.content-image-fw .-col-content .slick-text .slick-dots > li.slick-active > button
{
    background: #E00000;
}

section.content-image-fw .-col-content .slick-text .slick-arrow
{
    left: -60px;
}

section.content-image-fw .-col-content .slick-text .slick-arrow ~ .slick-arrow
{
    left: auto;
    right: -60px;
}

section.content-image-fw .-col-content .slick-text .section-title-simple
{
    font-size: 30px;
    line-height: 41px;
}

section.content-image-fw .image,
section.content-image-fw .slick-text-image
{
    position: absolute;
    width: 100%;
    height: 100%;
}

section.content-image-fw .image > img
{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

section.content-image-fw .slick-text-image .slick-list,
section.content-image-fw .slick-text-image .slick-list .slick-track,
section.content-image-fw .slick-text-image .slick-list .slick-track .slick-slide,
section.content-image-fw .slick-text-image .image
{
    position: relative;
    height: 100%;
}

section.content-image-fw p
{
    font-size: 16px;
    line-height: 27px;
    color: #959595;
    letter-spacing: -0.5px;
}

section.content-image-fw p + .btn
{
    margin-top: 30px;
}

section.content-image-fw.-service
{
    background: #1a1a1a;
}

section.content-image-fw.-service .-col-content
{
    padding: 55px 60px 95px;
    padding-right: 110px;
}

section.content-image-fw.-service .-title
{
    margin: 0 0 20px;
    padding: 0;
    font-size: 22px;
    line-height: 32px;
    font-weight: bold;
    color: #FFFFFF;
}

section.content-image-fw.-service .-subtitle
{
    margin: 30px 0 12px;
    padding: 0;
    font-size: 18px;
    line-height: 27px;
    font-weight: bold;
    color: #FFFFFF;
}

section.content-image-fw.-service ul
{
    list-style: none;
    margin: 20px 0;
    padding: 0;
    /*border-top: 1px solid #464646;*/
}

section.content-image-fw.-service ul > li
{
    position: relative;
    padding: 11px 15px;
    padding-right: 30px;
    font-size: 16px;
    line-height: 24px;
    color: #959595;
    font-weight: 300;
    border-bottom: 1px solid #464646;
}

section.content-image-fw.-service ul > li::before
{
    position: absolute;
    display: block;
    content: "";
    top: 19px;
    left: 0;
    width: 4px;
    height: 8px;
    background: #E00000;
}

/* SECTION: HISTORY */
section.history
{
    position: relative;
    overflow: hidden;
    padding: 80px 0 110px;
    background: #f2f2f2;
}

section.history .slick-slider
{
    position: static;
    margin: 0 -15px;
}

section.history .slick-slider .slick-arrow
{
    top: 80px;
    margin: 0;
    left: 90px;
}

section.history .slick-slider .slick-arrow ~ .slick-arrow
{
    left: auto;
    right: 90px;
}

section.history .slick-slider > .slick-list
{
    overflow: visible;
}

section.history .slick-slider .slick-slide
{
    opacity: 0.2;
    transition: opacity 0.3s ease;
}

section.history .slick-slider .slick-slide.slick-active
{
    opacity: 1;
}

/* SECTION: BOX CONTACT */
section.box-contact
{
    padding: 110px 0;
}

section.box-contact .section-title-simple
{
    font-size: 60px;
    line-height: 72.8px;
    font-weight: 100;
    color: #FFFFFF;
    margin: -20px 0;
}

section.box-contact .item-people img
{
    width: 130px;
}

section.box-contact .item-people .-name
{
    margin-top: -6px;
    color: #FFFFFF;
}

section.box-contact .item-people .list-contact > li > a
{
    color: #FFFFFF;
}

section.box-contact .item-people .btn
{
    margin-top: 33px;
}

/* SECTION: LISTING SERVICE */
section.listing-service
{
    padding: 100px 0;
}

/* Detailový výpis a Nadpis s textem za sebou = jeden seznam, bez dvojitého odsazení mezi sekcemi */
section.listing-service + section.listing-service
{
    padding-top: 0;
}

section.listing-service:has(+ section.listing-service)
{
    padding-bottom: 0;
}

/* SECTION: PRODUCT */
section.product
{
    padding: 120px 0;
    background: #000000;
}

section.product .-row-content
{
    position: relative;
    overflow: hidden;
    margin: 45px 0 0;
}

section.product .-row-content > div
{
    padding: 0 5px;
}

section.product .-row-content .-image
{
    position: relative;
    left: -5px;
    width: calc(100% + 5px);
    padding-top: 75%;
    margin-bottom: 10px
}

section.product .-row-content > div + div > .-image
{
    left: auto;
}

section.product .-row-content .-image > img
{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center center;
}

section.product .-row-content.-single .-image
{
    width: calc(100% + 10px);
    height: 300px;
    padding-top: 0;
}

section.product .-row-content .-col-content
{
    padding: 45px 40px 50px;
    background: #1a1a1a;
}

section.product .-row-content:not(.-single) .-col-content
{
    padding-right: 20px;
}

section.product .-row-content .-col-content + .-col-content
{
    padding-left: 20px;
    padding-right: 40px;
}

section.product .-row-content .-col-content + .-col-content > *:first-child
{
    margin-top: 0 !important;
}

section.product .-row-content .-col-content + .-col-content > *:last-child
{
    margin-bottom: 0 !important;
}

section.product .-row-content .-col-content .-subtitle
{
    margin: 0 0 20px;
    font-size: 22px;
    line-height: 32px;
    font-weight: bold;
    color: #FFFFFF;
}

section.product .-row-content .-col-content p
{
    font-size: 16px;
    line-height: 25px;
    font-weight: 300;
    color: #959595;
}
/*
section.product .-row-content .-col-content ul
{
    list-style: none;
    margin: 20px 0;
    padding: 0;
    border-top: 1px solid #464646;
}

section.product .-row-content .-col-content ul > li
{
    position: relative;
    padding: 15px 15px;
    padding-right: 30px;
    font-size: 16px;
    line-height: 24px;
    color: #959595;
    font-weight: 300;
    border-bottom: 1px solid #464646;
}

section.product .-row-content .-col-content ul > li::before
{
    position: absolute;
    display: block;
    content: "";
    top: 23px;
    left: 0;
    width: 4px;
    height: 8px;
    background: #E00000;
}
*/
/* sekce career */
section.intro-sub.career-intro
{
    padding: 200px 0 40px;
}
section.career-info{
    background: #000;
    position: relative;
} 
.career-info_content{
    margin: 110px 0;
}
.career-info_content h1{
    color: #FFF;
    font-size: 40px;
    font-weight: bold;
}
.career-info_perex{
    margin: 32px 0;
}
.career-image{
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 50%; 
}
.career-image img{
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.career-dots{
    position: relative;
    padding-left: 35px;
    margin-bottom: 16px;
}
.career-icon{
    position: absolute;
    display: inline-block;
    height: 24px;
    width: 24px;
    top: 0;
    left: 0;
    -o-object-fit: contain;
       object-fit: contain;
}
.career-icon.-pracovni_pomer{ background-image: url(image/forma.svg); }
.career-icon.-misto_pracoviste{ background-image: url(image/lokalita.svg); }
.career-icon.-plat{ background-image: url(image/plat.svg); }
.career-icon.-mozny_nastup{ background-image: url(image/nastup.svg); }
.career-link{
    margin-top: 46px;
}
.career-content{
    padding-top: 90px;
    padding-bottom: 96px;
}
.career-content_item:first-of-type{
    border-top: 2px solid #f2f2f2;
}
.career-content_item{
    padding-top: 62px;
    padding-bottom: 62px;
    border-bottom: 2px solid #f2f2f2; 
}
.career-content_item h2{
    color: #000;
    font-weight: bold;
    line-height: 1.12;      
}
.career-content_item ul{
    padding: 0;
    margin: 0;
}
.career-content_item ul li{
    font-size: 16px;
    line-height: 1.688;    
    border-top: 1px solid #f2f2f2;  
    list-style: none;
    padding: 12px 0 12px 16px;
    position: relative;
}
.career-content_item ul li:last-of-type{  
    border-bottom: 1px solid #f2f2f2;  
}
.career-content_item ul li::before{
    position: absolute;
    content: '';
    top: 22px;
    left: 0;
    height: 8px;
    width: 4px;
    background: #E00000;
}
.career-block{
    padding: 136px 0 140px 0;
}
.career-block_container{
    border-top: 1px solid #f2f2f2;  
    border-bottom: 1px solid #f2f2f2;  
}
.career-block_item{
    padding-top: 60px;
    padding-bottom: 60px;
    border-bottom: 1px solid #f2f2f2;  
}
.career-block_item:last-of-type{
    border: 0;
}
.career-block_item--title{
    color: #000;
    font-weight: bold;
    font-size: 40px;
}
.career-block_item--perex{
    margin-bottom: 40px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;  
    overflow: hidden;
}
.career-block_item--info{
    position: relative;
}
.career-block_item--items{
    background-color: #f2f2f2;
    width: 75%;
    padding: 40px 36px;
    padding-right: 20%;
    height: 100%;
}
.career-block_item--items .career-dots{
    margin-bottom: 12px;
}
.career-block_item--image{
    position: absolute;
    right: 0;
    top: 30px;
    width: 45%;
    height: calc(100% - 60px);
}
.career-block_item--image img{
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
/* CF7 */
.wpcf7-response-output{
    border: none !important;
    text-align: center;
    color: #FFF;
}
.accept-checkbox label{
    display: flex;
    flex-direction: row;
    padding-left: 0;
}
.accept-checkbox .wpcf7-list-item{
    margin: 0;
}
.accept-checkbox .accept-form{
    margin-right: 8px;
}
form.wpcf7-form.sent .wpcf7-response-output{
    border: 1px solid #424242 !important;
    padding-top: 50px;
    padding-bottom: 50px;
    font-size: 20px;
    line-height: 1.5;
    color: #cecece;
    margin-left: 0;
    margin-right: 0;
}
form.wpcf7-form.sent .wpcf7-response-output::before{
    content: '';
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M464 64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM48 96h416c8.8 0 16 7.2 16 16v41.4c-21.9 18.5-53.2 44-150.6 121.3-16.9 13.4-50.2 45.7-73.4 45.3-23.2.4-56.6-31.9-73.4-45.3C85.2 197.4 53.9 171.9 32 153.4V112c0-8.8 7.2-16 16-16zm416 320H48c-8.8 0-16-7.2-16-16V195c22.8 18.7 58.8 47.6 130.7 104.7 20.5 16.4 56.7 52.5 93.3 52.3 36.4.3 72.3-35.5 93.3-52.3 71.9-57.1 107.9-86 130.7-104.7v205c0 8.8-7.2 16-16 16z" fill="%2346b450"/></svg>');
    background-size: contain;
    width: 40px;
    height: 30px;
    display: inline-block;
    background-repeat: no-repeat;
    margin-bottom: -8px;
    margin-right: 10px;
}

/* RESPONSIVE */
@media (min-width: 1755px)
{
    section.product > .container
    {
        position: relative;
    }

    section.product > .container > .row > div:first-child
    {
        position: absolute;
        right: 100%;
        top: 0;
        max-width: 295px;
        flex: 0 0 295px;
    }

    section.product > .container > .row > div + div
    {
        max-width: 100%;
        flex: 0 0 100%;
    }
}

@media (max-width: 1599px)
{
    section.content-image-fw.-service .-col-content
    {
        padding-right: 60px;
    }
}

@media (max-width: 1199px)
{
    .container,
    .container-fluid
    {
        padding: 0 30px;
    }

    header .-language
    {
        right: 30px;
    }

    footer
    {
        padding: 60px 0 35px;
    }

    footer .-col-link
    {
        padding-bottom: 55px;
    }

    footer .text-copyright
    {
        position: relative;
        bottom: -5px;
        text-align: left;
    }

    footer .-col-copyright
    {
        position: relative;
        top: -28px;
    }

    section .section-title.-with-outline
    {
        padding: 0;
        background: none;
    }

    section .section-title.-with-outline > span
    {
        padding: 30px 20px;
    }

    .item-signature
    {
        margin-top: 20px;
    }

    .item-signature p
    {
        text-align: left;
    }

    .item-signature .btn
    {
        margin-top: 45px;
    }

    section.benefits
    {
        padding-bottom: 65px;
    }

    section.benefits .container
    {
        max-width: 100%;
    }

    section.benefits .row
    {
        margin: 0 -30px;
        padding: 0 65px;
    }
    
    section.benefits .row > div
    {
        padding: 0;
    }
    
    section.benefits .slick-slide
    {
        padding: 0 25px !important;
    }

    section.map > .container
    {
        padding-top: 50px;
    }

    section.intro-sub
    {
        padding: 220px 0 60px;
    }

    section.history .slick-slider .slick-arrow
    {
        left: 0;
    }

    section.history .slick-slider .slick-arrow ~ .slick-arrow
    {
        left: auto;
        right: 0;
    }

    section.content-image-fw .-col-content,
    section.content-image-fw.-service .-col-content
    {
        padding: 55px 40px 70px;
    }

    section.content-image-fw p + .btn
    {
        margin-bottom: 8px;
    }

    section.content-image-fw .item-carousel p + .btn
    {
        margin-bottom: 0;
    }

    section.carousel
    {
        padding: 60px 0 70px;
        background: #f2f2f2;
    }

    section.carousel .container
    {
        max-width: 100%;
    }

    section.carousel .slick-slider
    {
        margin: 0 -30px;
    }

    section.content-image-fw .-col-content .slick-text
    {
        padding: 0 40px;
    }

    section.content-image-fw .-col-content .slick-text .slick-arrow
    {
        left: -40px;
    }

    section.content-image-fw .-col-content .slick-text .slick-arrow ~ .slick-arrow
    {
        left: auto;
        right: -40px;
    }

    section.content-image-fw .-col-content .slick-text
    {
        padding: 0 50px;
    }

    section.content-image-fw .-col-content .slick-text .slick-arrow
    {
        left: -40px;
    }

    section.content-image-fw .-col-content .slick-text .slick-arrow ~ .slick-arrow
    {
        left: auto;
        right: -40px;
    }

    section.form-contact
    {
        padding: 35px 0 65px;
    }

    section.form-contact .container > .row > div + div
    {
        padding-top: 12px;
    }

    section.form-contact .btn
    {
        display: block;
        width: calc(100% - 48px);
    }

    section.listing-people
    {
        padding: 80px 0;
    }

    section.listing-people + section.listing-people
    {
        margin-top: -25px;
        padding: 55px 0 80px;
    }

    section.listing-people + section.listing-people > .container::before
    {
        top: -55px;
    }

    section.listing-people .container > .row
    {
        margin-top: -30px;
    }

    section.listing-people .container > .row > div
    {
        padding-top: 30px;
    }

    section.contact .-col-content
    {
        padding: 70px 0;
    }

    section.content-image-fw .-col-content .slick-text.-without-button
    {
        padding-bottom: 30px;
    }

    section.box-contact
    {
        padding: 60px 0 70px;
    }

    section.box-contact .container
    {
        text-align: center;
    }

    section.box-contact .section-title-simple
    {
        margin: 0 0 45px;
        font-size: 35px;
        line-height: 42px;
    }

    section.box-contact .item-people
    {
        display: inline-block;
        text-align: left;
    }

    section.box-contact .item-people img
    {
        width: 70px;
    }

    section.box-contact .item-people .btn
    {
        display: block;
        width: calc(100% + 100px - 48px);
        margin-top: 30px;
        margin-left: -100px;
    }

    .item-people .list-contact
    {
        margin-top: 22px;
    }

    section.content-image-fw .row.-two-cols > div + div
    {
        padding-top: 30px;
    }

    section.listing-service
    {
        padding: 5px 0 70px;
    }

    .item-service
    {
        position: relative;
        padding: 65px 0 30px;
        border: 0;
        border-bottom: 2px solid #f2f2f2;
    }

    .item-service .-title
    {
        margin: 0 0 15px;
        font-size: 30px;
        line-height: 41px;
    }

    .item-service .-col-text
    {
        padding: 0 0 25px;
    }

    .item-service .-col-button
    {
        position: static;
        padding: 0;
        max-width: 100%;
        flex: 0 0 100%;
        background: none;
    }

    .item-service .-col-button > .btn
    {
        width: 160px;
    }

    .item-service .-col-button > .btn.-close
    {
        position: absolute;
        bottom: 30px;
        left: 0;
        z-index: 99;
    }

    .item-service div[id^="collapseItem"]
    {
        position: relative;
        padding: 0 0 75px;
    }

    .item-service div[id^="collapseItem"] > .row > div:first-child
    {
        padding: 60px 30px 30px;
    }

    .item-service div[id^="collapseItem"] > .row > div:first-child::before
    {
        position: absolute;
        display: block;
        content: "";
        top: 0;
        left: 50%;
        margin-left: -16px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 16px 16px 0 16px;
        border-color: #FFFFFF transparent transparent transparent;
        z-index: 99;
    }

    .item-service div[id^="collapseItem"] > .row > div + div
    {
        padding: 25px 0 0;
        background: #FFFFFF;
    }

    .item-service .-sidetitle
    {
        margin: 0 0 20px;
        padding: 0;
        font-size: 30px;
        line-height: 41px;
        background: none;
    }

    .item-service div[id^="collapseItem"] .slick-slider
    {
        margin: -60px -30px 0;
        margin-left: -31px;
    }

    section.product
    {
        padding: 55px 0 70px;
    }

    section.product .-row-content .-col-content
    {
        padding: 55px 40px 70px;
    }

    section.product .-row-content .-image
    {
        padding: 0;
        height: 290px;
    }
    
    section.map
    {
        height: 415px;
    }
}

@media (max-width: 991px)
{
    header
    {
        position: relative;
        height: 90px;
        padding: 0;
        background: #000000;
    }

    header .container,
    header .row
    {
        height: 100%;
    }

    header .btn-menu
    {
        padding: 0 !important;
        height: 90px;
        width: 90px;
        text-align: center !important;
        color: #FFFFFF !important;
        font-size: 34px !important;
        margin-right: -30px !important;
        background: #000000;
        transition: background 0.3s ease;
    }

    header .btn-menu:hover,
    body.menuToggle header .btn-menu
    {
        background: #292929;
    }

    header #logo
    {
        position: relative;
        top: -4px;
    }

    header #heading-menu
    {
        display: block;
        position: absolute;
        top: 100%;
        right: 0;
        width: 330px;
        max-width: calc(100vw - 30px);
        padding-left: 30px;
        background: #292929;

        max-height:0 ;
        overflow: hidden;
        -webkit-transform: rotate3d(1,0,0,-90deg);
        -webkit-transform-origin: 50% 0;
        -webkit-transition: 350ms;
        -moz-transition: 350ms;
        -o-transition: 350ms;
        -ms-transition: 350ms;
        -moz-transform: rotate3d(1,0,0,-90deg);
        -moz-transform-origin: 50% 0;
        -ms-transform: rotate3d(1,0,0,-90deg);
        -ms-transform-origin: 50% 0;
        transition: 350ms;
        transform-style: preserve-3d;
        visibility: hidden;
    }

    body.menuToggle header #heading-menu
    {
        visibility: visible;
        max-height:1000px;
        -webkit-transform: rotate3d(0,0,0,0);
        -moz-transform: rotate3d(0,0,0,0);
        -ms-transform: rotate3d(0,0,0,0);
    }

    header .list-menu
    {
        margin: 0 0 30px;
    }

    header .list-menu > li
    {
        display: block;
        margin: 0 !important;
        border-bottom: 1px solid #424242;
    }

    header .list-menu > li > a
    {
        position: relative;
        display: flex;
        padding: 2px 0 0;
        font-size: 18px;
        line-height: 26px;
        font-weight: bold;
        height: 59px;
        text-decoration: none !important;
        align-items: center;
    }

    header .list-menu > li.menu-item-has-children > a
    {
        padding-right: 66px;
    }

    header .list-menu > li.menu-item-has-children > a::after
    {
        position: absolute;
        display: flex !important;
        content: "\f078";
        align-items: center;
        justify-content: center;
        top: 0;
        right: 0;
        width: 56px;
        text-align: center;
        height: 59px;
        font-size: 16px;
        font-weight: 300;
        border: 0;
        font-family: "Font Awesome 5 Pro";
        color: #FFFFFF;
        transform: rotate(0);
        transition: transform 0.3s ease;
    }

    header .list-menu > li.menu-item-has-children[class*="current"] > a::after,
    header .list-menu > li.menu-item-has-children.expanded > a::after
    {
        transform: rotate(180deg);
    }

    header .list-menu > li.menu-item-has-children.notexpanded > a::after
    {
        transform: rotate(0);
    }

    header .list-menu > li:not([class*="current"]) > a:hover
    {
        text-decoration: underline !important;
    }

    header .list-menu > li > a::before,
    header .list-menu > li > a::after
    {
        display: none !important;
    }

    header .list-menu > li[class*="current"] > a
    {
        margin-left: -30px;
        padding-left: 30px;
        background: #E00000;
    }

    header .list-menu > li > ul
    {
        position: static;
        display: none;
        padding: 10px 0;
        padding-left: 40px;
        margin-left: -30px;
        margin-bottom: -1px;
        background: #3e3e3e;
    }

    header .list-menu > li[class*="current"] > ul
    {
        display: block;
    }

    header .list-menu > li > ul > li
    {
        border: 0;
    }

    header .list-menu > li > ul > li + li
    {
        border-top: 1px solid #656460;
    }

    header .list-menu > li > ul > li > a
    {
        display: flex;
        height: 48px;
        font-size: 14px;
        padding: 0 20px;
        font-weight: 400;
        color: #FFFFFF;
        border: 0;
        text-transform: uppercase;
        background: #3e3e3e !important;
        transition: background 0.3s ease;
    }

    header .list-menu > li > ul > li > a::after
    {
        display: none;
    }

    header .list-menu > li > ul > li > a:hover,
    header .list-menu > li > ul > li[class*="current"] > a
    {
        background: #E00000 !important;
    }

    header .-language
    {
        position: relative;
        right: auto;
        padding: 0;
    }

    header .list-language > li > a
    {
        height: 50px;
        width: 50px;
        padding: 0;
        text-align: center;
        line-height: 46px;
        border-top: 4px solid #292929;
    }

    header .list-language > li.-current > a
    {
        border-top-color: #E00000;
        background: #3e3e3e;
    }

    footer .row
    {
        display: block;
        text-align: center;
    }

    footer .row > div
    {
        padding-left: 0 !important;
    }

    footer .-col-logo
    {
        padding-right: 0 !important;
        border-bottom: 1px solid #E00000;
    }

    footer .-col-logo::after
    {
        display: none;
    }

    footer .-col-logo > a
    {
        margin: 0 auto 65px;
    }

    footer .-col-contact
    {
        padding-top: 35px;
        padding-bottom: 45px;
        text-align: center;
        border-bottom: 1px solid #E00000;
    }

    footer .-col-link,
    footer .-col-link + .-col-link
    {
        display: inline-block;
        text-align: left;
        padding: 40px 15px !important;
    }

    footer .-col-link + .-col-link
    {
        padding-right: 0 !important;
    }

    footer .-col-copyright
    {
        border-top: 1px solid #E00000;
        top: auto;
        padding-top: 55px;
    }

    footer .list-link > li
    {
        margin-bottom: 15px;
    }

    footer .-col-link > .list-link
    {
        column-gap: 30px;
    }

    section .section-title-line
    {
        font-size: 30px;
        line-height: 40px;
        margin-bottom: 20px;
    }

    section .section-title
    {
        font-size: 22px;
        line-height: 31px;
        margin-bottom: 50px;
    }

    section .section-title > span
    {
        padding: 15px 20px;
    }

    section .section-title.-with-outline
    {
        font-size: 22px;
        line-height: 31px;
    }

    section.intro-home
    {
        padding: 35px 0 70px;
    }

    section.intro-home h1
    {
        font-size: 40px;
        line-height: 45px;
    }

    section.intro-home p
    {
        margin-top: 20px;
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 8px;
    }

    section.intro-home .list-link
    {
        margin-top: 45px;
    }

    section.text-image
    {
        padding: 55px 0 70px;
    }

    section.text-image .-col-image
    {
        margin-top: 50px;
    }

    section.text-image .-col-image > .-image,
    section.text-image .-col-image:not(.-with-gallery) > .-image
    {
        position: relative;
        height: 290px;
        left: 0;
        width: 100%;
    }

    section.text-image .-col-image > .-image > img,
    section.text-image .-col-image:not(.-with-gallery) > .-image > img
    {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }

    section.benefits
    {
        padding-top: 50px;
    }

    section.intro-sub
    {
        padding: 65px 0 40px;
    }

    section.intro-sub h1
    {
        font-size: 45px;
        line-height: 48px;
    }

    section.history
    {
        padding: 45px 0 70px;
    }

    section.history .section-title
    {
        margin-bottom: 30px;
    }

    section.history .slick-slider .slick-arrow
    {
        top: 45px;
    }

    section.content-image-fw .-col-content
    {
        padding-left: 30px;
        padding-right: 30px;
    }

    section.content-image-fw .image,
    section.content-image-fw .slick-text-image
    {
        position: relative;
        height: 290px;
    }

    section.listing-location
    {
        padding: 50px 0;
    }
    
    section.listing-people
    {
        padding: 50px 0;
    }

    section.listing-people + section.listing-people
    {
        margin-top: 0;
        padding: 50px 0;
    }

    section.listing-people + section.listing-people > .container::before
    {
        top: -50px;
    }

    section.contact
    {
        position: relative;
        padding-bottom: 290px;
    }

    section.contact .row > div + div
    {
        position: static;
    }

    section.contact .-col-content
    {
        padding: 40px 0;
        padding-right: 0;
    }

    section.contact .list-contact
    {
        margin: 25px 0 15px;
    }

    section.contact .list-contact > li > a
    {
        font-size: 20px;
        line-height: 34px;
        padding-left: 35px;
    }
    
    section.contact .list-contact > li > a > i
    {
        top: -5px;
    }

    .item-map
    {
        position: absolute;
        height: 290px;
        width: 100vw;
        top: auto;
        left: 0;
        bottom: 0;
    }

    section.content-image-fw .-col-content .slick-text .slick-arrow
    {
        left: -30px;
    }

    section.content-image-fw .-col-content .slick-text .slick-arrow ~ .slick-arrow
    {
        left: auto;
        right: -30px;
    }

    section.listing-logo
    {
        padding: 45px 0 80px;
    }

    section.content-image-fw .row.-two-cols > div + div
    {
        padding-top: 0;
    }

    section.listing-service .container
    {
        max-width: 100%;
    }

    .item-service div[id^="collapseItem"]
    {
        margin-left: -30px;
        margin-right: -30px;
        width: calc(100% + 60px);
    }

    .item-service div[id^="collapseItem"] > .row > div + div
    {
        padding-left: 30px;
        padding-right: 30px;
    }

    section.product .container
    {
        max-width: 100%;
    }

    section.product .-row-content
    {
        margin-left: -30px;
        margin-right: -30px;
    }

    section.product .-row-content.-two-cols > div:nth-child(2)
    {
        margin-top: 70px;
    }

    section.product .-row-content:not(.-single) .-col-content
    {
        padding-right: 40px;
    }

    section.product .-row-content .-col-content + .-col-content
    {
        padding-left: 40px;
        padding-right: 40px;
    }

    section.career-intro{
        display: none;
    }

    .career-image{
        position: relative;
        height: 230px;
        width: 100%; 
    }

    .career-info_content{
        margin: 50px 0 80px 0;
    }

    .career-content{
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .career-content_item:first-of-type{
        border-top: 0;
        padding-top: 0;
    }
    .career-content_item{
        padding-top: 80px;
        padding-bottom: 0px;
        border-bottom: 0; 
    }
    .career-content_item h2{
        font-size: 22px;
        margin-bottom: 10px;
    }
    .career-info_content h1{
        font-size: 30px;
    }
    .career-block{
        padding: 80px 0;
    }
    .career-block_item{
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .career-block_item--title{
        font-size: 22px;
    }
    .career-block_item--info{
        margin-top: 40px;
    }
    .career-block_item--items{
        width: 100%;
        padding: 40px 36px;
    }
    .career-block_item--image{
        position: relative;
        right: 0;
        top: 0;
        width: 100%;
        height: 200px;
    }
}

@media (max-width: 767px)
{
    section.intro-home .container
    {
        text-align: center;
    }

    section.intro-home .list-link
    {
        display: inline-block;
        margin-left: auto;
        margin-right: auto;
    }

    section.intro-home .list-link > li
    {
        display: block;
    }

    section.intro-home .list-link > li + li
    {
        margin: 10px 0 0;
    }

    section.intro-home .list-link > li > a
    {
        padding-left: 30px;
        padding-right: 30px;
        background: rgba(255, 255, 255, 0.15);
    }

    section.intro-home .list-link > li > a:hover
    {
        background: rgba(255, 255, 255, 0.5);
    }

    section.carousel
    {
        padding: 70px 0 85px;
    }

    section.carousel .section-title-simple
    {
        margin-bottom: 30px;
    }

    section.content-image-fw .-col-content .slick-text
    {
        padding-bottom: 35px;
    }

    section.content-image-fw .-col-content .slick-text .slick-dots
    {
        position: absolute;
        left: 0;
        right: auto;
        width: 100%;
        bottom: 0;
        font-size: 0;
        line-height: 0;
        padding: 0 50px;
        text-align: left;
    }
    
    section.form-contact .checkbox
    {
        margin-top: 25px;
    }
    
    section.form-contact .checkbox > label > input
    {
        top: 2px;
    }

    section.listing-logo .row
    {
        margin-left: -25px;
        margin-right: -25px;
    }

    section.listing-logo .row > div
    {
        padding-left: 25px;
        padding-right: 25px;
    }

    section.content-image-fw .row.-two-cols > div + div
    {
        padding-top: 20px;
    }

    section.content-image-fw .-col-content, section.content-image-fw.-service .-col-content
    {
        padding: 55px 30px 70px;
    }

    .item-service .-title,
    .item-service .-sidetitle
    {
        font-size: 22px;
        line-height: 28px;
    }

    section.product .-row-content .-col-content
    {
        padding: 55px 30px 70px !important;
    }
}


@media (max-width: 575px)
{
    /* 2 výhody vedle sebe i na telefonu: menší okraje, ať má text rozumnou šířku */
    section.benefits .row
    {
        margin: 0 -15px;
        padding: 0 35px;
    }

    section.benefits .slick-slide
    {
        padding: 0 10px !important;
    }

    footer .row,
    footer .-col-contact
    {
        text-align: left;
    }

    footer .-col-copyright
    {
        padding-top: 40px;
    }

    footer .list-link > li > a
    {
        font-size: 12px;
        line-height: 18px;
    }

    footer .item-copyright
    {
        position: relative;
        text-align: left;
        margin-top: 40px;
    }

    section.text-image .-col-image > .-image
    {
        height: 190px;
    }

    section.history .section-title > span
    {
        display: block;
        margin: 0 35px;
    }

    section.history .slick-slider
    {
        position: relative;
        margin: 0 -30px;
        padding: 0 65px;
    }

    section.history .slick-slider .slick-arrow
    {
        top: 50%;
        margin-top: -25px;
    }

    section.history .slick-slider > .slick-list
    {
        overflow: hidden;
    }

    .item-history
    {
        position: relative;
        padding: 0 0 225px;
    }

    .item-history .-image
    {
        position: absolute;
        bottom: 0;
        left: 0;
        height: 200px;
        width: 100%;
    }

    .item-history .-image > img
    {
        position: absolute;
        margin: 0 !important;
        width: 100%;
        height: 100%;
        max-width: none;
        object-fit: cover;
        object-position: center;
    }

    section.carousel .slick-slider
    {
        padding: 0 65px;
    }

    section.content-image-fw .image,
    section.content-image-fw .slick-text-image
    {
        height: 190px;
    }

    section.content-image-fw .-col-content .slick-text
    {
        padding-left: 35px;
        padding-right: 35px;
    }

    section.content-image-fw .-col-content .slick-text .slick-dots
    {
        padding: 0 35px;
    }
}

@media (max-width: 399px)
{
    .item-history
    {
        padding-bottom: 170px;
    }

    .item-history .-image
    {
        height: 145px;
    }
}

/* SECTION: GALERIE */
section.gallery
{
    overflow: hidden;
    padding: 105px 0 120px;
    background: #1a1a1a;
}

/* více galerií pod sebou: 5px černá mezera */
section.gallery + section.gallery
{
    border-top: 5px solid #000000;
}

section.gallery .section-title-simple
{
    margin: 0 0 60px;
    line-height: 1;
    text-align: center;
}

/* bez JS (nebo před inicializací slicku) aspoň vodorovně posuvný pás */
.slick-gallery:not(.slick-initialized)
{
    display: flex;
    overflow-x: auto;
}

.slick-gallery .-item
{
    flex: 0 0 auto;
    width: 292px;
    margin: 0 10px;
}

.slick-gallery .-item > a
{
    display: block;
    aspect-ratio: 3 / 4;
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

.slick-gallery .-item > a:hover,
.slick-gallery .-item > a:focus-visible
{
    opacity: 1;
}

.slick-gallery .-item > a > img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 991px)
{
    section.gallery
    {
        padding: 65px 0 70px;
    }

    section.gallery .section-title-simple
    {
        margin-bottom: 35px;
        font-size: 24px;
        line-height: 1.2;
    }
}

@media (max-width: 767px)
{
    .slick-gallery .-item
    {
        width: 200px;
        margin: 0 5px;
    }
}

/* LIGHTBOX (GLightbox) – tmavý popisek a počítadlo v barvách webu */
.glightbox-clean .gslide-description
{
    background: #1a1a1a;
}

.glightbox-clean .gslide-desc
{
    font-family: 'Saira', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #FFFFFF;
}

/* šipky a zavírání podle návrhu: bílé šipky s červenou, červené zavírání; GLightbox šipky pod 769 px schovává (top: -100%) → zobrazíme je všude */
.glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gprev:hover,
.glightbox-clean .gnext:hover
{
    top: 45%;
    background-color: #FFFFFF;
    border-radius: 0;
}

.glightbox-clean .gprev path,
.glightbox-clean .gnext path
{
    fill: #E00000;
}

.glightbox-clean .gclose,
.glightbox-clean .gclose:hover
{
    background-color: #E00000;
    border-radius: 0;
    opacity: 1;
}

@media (max-width: 768px)
{
    .glightbox-clean .gprev { left: 10px; }
    .glightbox-clean .gnext { right: 10px; }
}

.glightbox-container .gcounter
{
    position: absolute;
    top: 15px;
    left: 20px;
    z-index: 99999;
    font-family: 'Saira', sans-serif;
    font-size: 16px;
    color: #FFFFFF;
}

/* SECTION: VIDEO */
section.video
{
    padding: 105px 0 120px;
    background: #000000;
}

section.video .section-title-simple
{
    margin: 0 0 60px;
    font-size: 40px;
    line-height: 1;
    text-align: center;
}

.item-video
{
    position: relative;
    max-width: 920px;
    margin: 0 auto;
    aspect-ratio: 16 / 9;
    background: #1a1a1a;
}

.item-video > .-play,
.item-video > iframe
{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.item-video > .-play > img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.item-video > .-play > .-icon
{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 68px;
    height: 48px;
    transform: translate(-50%, -50%);
}

.item-video > .-play > .-icon > .-bg
{
    fill: #212121;
    fill-opacity: 0.8;
    transition: fill 0.2s ease, fill-opacity 0.2s ease;
}

.item-video > .-play > .-icon > .-arrow
{
    fill: #FFFFFF;
}

.item-video > .-play:hover > .-icon > .-bg,
.item-video > .-play:focus-visible > .-icon > .-bg
{
    fill: #FF0000;
    fill-opacity: 1;
}

@media (max-width: 991px)
{
    section.video
    {
        padding: 65px 0 70px;
    }

    section.video .section-title-simple
    {
        margin-bottom: 35px;
        font-size: 30px;
    }
}

/* PŘÍSTUPNOST A DROBNÉ OPRAVY */

/* sjednoceno s rozměry z wp_get_attachment_image (atributy width/height) */
img
{
    height: auto;
}

/* v rozbaleném detailu je tmavé pozadí, tam zůstává světlejší šedá */
.item-service div[id^="collapseItem"] > .row > div:first-child p
{
    color: #959595;
}

.career-content
{
    color: #6b6b6b;
}

/* focus jen pro klávesnici; Bootstrap a .btn ho jinak mažou */
.btn:focus-visible,
.form-control:focus-visible,
a:focus-visible,
button:focus-visible
{
    outline: 2px solid #E00000 !important;
    outline-offset: 2px;
}

/* text ve formuláři bílý, i bez obalu .form-group a při automatickém vyplnění prohlížečem */
.form-contact .form-control,
.form-contact .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-acceptance)
{
    color: #FFFFFF;
}

.form-contact .form-control::placeholder,
.form-contact .wpcf7-form-control::placeholder
{
    color: #959595;
    opacity: 1;
}

.form-contact input:-webkit-autofill,
.form-contact textarea:-webkit-autofill
{
    -webkit-text-fill-color: #FFFFFF;
    box-shadow: 0 0 0 1000px #292929 inset;
    caret-color: #FFFFFF;
}

.form-group .form-control:focus
{
    color: #FFFFFF;
    border-color: #FFFFFF;
    background: #292929;
}

.skip-link.sr-only-focusable:focus
{
    position: fixed;
    top: 10px;
    left: 10px;
    z-index: 10000;
    padding: 10px 20px;
    color: #FFFFFF;
    background: #000000;
}

/* dlouhá česká slova v nadpisech nesmí rozbít mobil; bez dělení slov (přání klienta), zalomí se jen slovo, které se nevejde */
h1, h2, h3,
.section-title,
.section-title-simple,
.section-title-line
{
    overflow-wrap: break-word;
}

section.contact .list-contact a
{
    overflow-wrap: anywhere;
}

/* mapa bez API klíče = odkaz na Google Maps */
.item-map.-link
{
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    background: #1a1a1a;
}

@media (prefers-reduced-motion: reduce)
{
    html
    {
        scroll-behavior: auto;
    }

    *, *::before, *::after
    {
        transition: none !important;
        animation: none !important;
    }
}
