:root {
    --c-primary: #0961ca;
    --c-secondary: #054089;
    --c-dark: #444;
    --c-white: #eef9fa;

    --topbar-base: #0961ca;
    --topbar-height: 40px;
    --topbar-offset: -40px;

    --motdbar-base: #ffa300;
    --motdbar-height: 40px;
    --motdbar-offset: -40px;

    --default-font: "Roboto",  system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --heading-font: "Raleway",  sans-serif;
    --nav-font: "Poppins",  sans-serif;
}

/* upravuje maximalni sirku celeho webu */
@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        /*max-width: 1320px;*/
    }
}

/*--------------------------------------------------------------
# Top Bar
--------------------------------------------------------------*/
#top-bar {
    background-color: var(--background-color);
    height: var(--topbar-height);
    padding: 0;
    font-size: 14px;
    transition: all 0.5s;
    overflow: hidden;
    color: var(--c-white);
    z-index: 996;

}

#top-bar.topbar-scrolled {
    top: var(--topbar-offset);
}

#top-bar .contact-info a {
    line-height: 0;
    color: var(--c-white);
    transition: 0.3s;
}

#top-bar .contact-info a:hover {
    text-decoration: underline;
}

#top-bar .contact-info i {
    color: var(--c-white);
    font-weight: bold;
    line-height: 0;
    margin-right: 5px;
}

#top-bar .contact-info .phone-icon {
    margin-left: 15px;
}

#top-bar .cta {
    background: transparent;
}

#top-bar .cta a {
    color: #fff;
    background: var(--c-primary);
    padding: 6px 24px 8px 24px;
    display: inline-block;
    transition: 0.3s;
    border-radius: 50px;
}

#top-bar .cta a:hover {
    background: var(--c-primary);
}

#top-bar .locale-flags {

}

#top-bar a {
    margin: 5px;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

#top-bar a.active {
    opacity: 1;
    -webkit-filter: none;
    filter: none;
}

#top-bar img.img-flag {
    height: 28px;
}

#top-bar img.topbar_logo {
    height: 50px;
    margin-right: 50px;
}


/*--------------------------------------------------------------
# MOTD
--------------------------------------------------------------*/
#motd-bar {
    background-color: var(--motdbar-base);
    height: var(--motdbar-height);
    padding: 0;
    font-size: 14px;
    transition: all 0.5s;
    overflow: hidden;
    color: var(--c-dark);
    z-index: 996;

}

#motd-bar.motdbar-scrolled {
    motd: var(--motdbar-offset);
}

#motd-bar .contact-info a {
    line-height: 0;
    color: var(--c-white);
    transition: 0.3s;
}

#motd-bar .contact-info a:hover {
    text-decoration: underline;
}

#motd-bar .contact-info i {
    color: var(--c-white);
    font-weight: bold;
    line-height: 0;
    margin-right: 5px;
}

#motd-bar .contact-info .phone-icon {
    margin-left: 15px;
}

#motd-bar .cta {
    background: transparent;
}

#motd-bar .cta a {
    color: #fff;
    background: var(--c-primary);
    padding: 6px 24px 8px 24px;
    display: inline-block;
    transition: 0.3s;
    border-radius: 50px;
}

#motd-bar .cta a:hover {
    background: #f1a40a;
}

#motd-bar .locale-flags {

}

#motd-bar a {
    margin: 5px;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

#motd-bar a.active {
    opacity: 1;
    -webkit-filter: none;
    filter: none;
}

#motd-bar img.img-flag {
    height: 28px;
}

#motd-bar img.motdbar_logo {
    height: 50px;
    margin-right: 50px;
}



/*--------------------------------------------------------------
# NAVMENU
--------------------------------------------------------------*/


.navmenu a, .navmenu a:focus {
    font-weight: 600;
}


.img-flag-small {
    height: 28px;
}

.header {
    border-bottom: 0;
}

.header .logo img {
    max-height: 60px;
    margin-right: 8px;
}

/*--------------------------------------------------------------
# HERO
--------------------------------------------------------------*/

.hero {
    width: 100%;
    min-height: calc(100vh - 100px);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 0 60px 0;
    overflow: hidden;
}

.hero h1 {
    margin: 0;
    font-size: 4rem;
    font-weight: 700;
    line-height: 4rem;
}


.hero h1 small {
    font-weight: 300;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--heading-color);
    /*font-family: var(--heading-font);*/
    font-family: "Roboto";
}

.hero p {
    margin: 10px 0 0 0;
    font-size: 22px;
    color: color-mix(in srgb, var(--default-color), transparent 20%);
}

.hero:before {
    /*background: color-mix(in srgb, rgb(255 255 255), transparent 35%);*/
    background: linear-gradient(180deg, #ffffff, transparent);
}

.hero img.hero-img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.hero img.hero-img {
    /*filter: blur(0px);*/
    object-position: 0 79%;
}

.hero .icon-box {
    background-color: rgba(255, 255, 255, 0.76);
    padding: 40px 30px;
    padding-top: 30px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 0 29px 0 rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease-in-out;
    border-radius: 8px;
    z-index: 1;
    height: 100%;
    width: 100%;
    backdrop-filter: blur(5px);
}

.hero .icon-box .icon {
    padding-top: 0;
    display: inline-block;
    transition: all 0.3s ease-in-out;
    font-size: 50px;
    line-height: 1;
    color: var(--heading-color);
    margin-bottom: 15px;
}

.hero .icon-box .title {
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 18px;
}

.hero .icon-box .title a {
    color: var(--heading-color);
    transition: 0.3s;
}

.hero .icon-box .description {
    font-size: 16px;
    margin-bottom: 0;
    color: color-mix(in srgb, var(--default-color), transparent 25%);
}


.hero .icon-box .icon img {
    height: 78px;
    filter:
            brightness(1)
            invert(0.4)
            sepia(1)
            hue-rotate(165deg)
            saturate(300%);
    /*filter: invert(0.4);*/
}

.hero .btn-get-started-alt {
    color: var(--heading-color);
    background: var(--c-white);
    font-weight: 600;
    font-size: 16px;
    letter-spacing: 0.5px;
    display: inline-block;
    padding: 14px 50px;
    border-radius: 5px;
    transition: 0.5s;
    margin-top: 30px;
}

.footer {
    padding-bottom: 0;
}

.price-table {
    /*display: flex;*/
    flex-direction: row;;
    justify-content: center;
}

.price-table table {
    /*max-width: 85%;*/
    min-width: 50vw;
}

.price-table tr td {
    vertical-align: middle;
    height: 60px;
}

.price-table tr td.bg-highlight {

}

.price-table table tr {
}

.price-table table tr td {
    /*min-width: 200px;*/
}

.price-table table tr td.td-100 {
    min-width: 100px;
}

.price-table table tr td.td-120 {
    min-width: 120px;
}

.price-table table tr td.td-200 {
    min-width: 200px;
}

.price-table table tr td.td-400 {
    min-width: 400px;
}

@media (max-width: 992px) {

    /*table  {*/
    /*    font-size: 0.75rem !important;*/
    /*}*/

    /*table .table-price-badge {*/
    /*    font-size: 1rem !important;*/
    /*}*/

    table thead th.table-head-200 {
        min-width: 150px !important;
    }

    table thead th.table-head-300 {
        min-width: 150px !important;
    }

    /*table thead th.table-head-300 {*/
    /*    min-width: 100px !important;*/
    /*}*/

    /*.price-table .btn-group-name {*/
    /*    min-width: auto !important;*/
    /*    font-size: 0.75rem !important;*/
    /*    padding: 5px 10px;*/

    /*}*/

    .price-table table tr td.td-120 {
        min-width: 100px;
    }


    .price-table table tr td.td-400 {
        min-width: 150px;
    }

}



table thead th.table-head-200{
    min-width: 200px;
}

.price-table .btn-group-name {
    min-width: 70px;
    margin-left: 1rem;
    background-color: var(--accent-color);
    color: var(--c-white);
    font-weight: 600;
}

table thead th.table-head-bold {
    font-size: 1rem;

    min-width: 250px;
    font-weight: bold;

}

table thead th.table-head-300 {
    min-width: 300px;
}

table tr.table-row-highlight {
    font-size: 1.2rem;
    font-weight: bold;
}


table .table-price-badge {
    min-width: 100px;
    text-align: left;
    display: inline-block;
    /*background-color: var(--accent-color);*/
    color: #000;
    font-weight: 900;
    padding: 0;
    border-radius: 4px;
    font-size: 1.2rem;
    vertical-align: middle;
}

table .table-price-badge-ext {
    width: 100px;
    font-size: 1rem;

    font-weight: normal;
    text-align: center;
    display: inline-block;
    /*background-color: #ededed;*/
    color: #666;
    padding: 6px 6px;
    border-radius: 4px;
}

table td.table-price {
    color: var(--c-primary);
    font-size: 1rem;
    /*background-color: #25587c;*/
}

table td.table-price-ext {
    color: #818181;
}

/*--------------------------------------------------------------
# Team Section
--------------------------------------------------------------*/
.team .team-member {
    background-color: var(--surface-color);
    overflow: hidden;
    border-radius: 5px;
    box-shadow: 0px 0 10px rgba(0, 0, 0, 0.1);
    height: 100%;
}

.team .team-member .member-img img {
    position: relative;
    overflow: hidden;
    height: 306px;
    width: 100%;
    object-fit: cover;
}

.team .team-member .member-info {
    padding: 25px 20px;
    padding-bottom: 0;

}

.team .team-member .member-text {
    padding: 25px 20px;
    font-size: 14px;

}

/*--------------------------------------------------------------
# Team Section
--------------------------------------------------------------*/

section.faq {
    /*padding-top: 0;*/
}

.faq .faq-container .faq-item .faq-content p {
    margin-bottom: 0;
    overflow: hidden;
}


.faq .faq-container .faq-item h3 {
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    margin: 0 30px 0 0;
    transition: 0.3s;
    cursor: pointer;
    display: flex;
    align-items: center;
    font-family: var(--nav-font);
}

.why-us .why-us-item h3 {
    font-size: 20px;
    display: block;
    color: var(--accent-color);
    font-weight: 700;
}

.about-alt img {
    border-radius: 8px;
    box-shadow: 0px 0 20px rgba(0, 0, 0, 0.2);
}

.group-section {
    /*padding-bottom: 0;*/
}

.bg-section {
    background-color: transparent;
}

.bg-section::after {
    content:'';
    position: absolute;
    top:10vh;
    width: 100%;
    height: 100%;
    background-image: url("../img/main-bg-large-x.png");
    background-size: cover;
    opacity: .1;
    padding-bottom: 0;
    pointer-events: none;
    z-index: -1;
}

.page-section img, .group-section img {
    width: 600px;
    height: auto;
    object-fit: cover;
    border-radius: 8px;
    box-shadow: 0px 0 20px rgba(0, 0, 0, 0.2);
}

.group-section .btn-get-started:hover {
    background:
            color-mix(in srgb, var(--accent-color), transparent 15%);
}

.group-section .btn-get-started {
    color: var(--contrast-color);
    background: var(--accent-color);
    font-weight: 600;
    font-size: 16px;
    letter-spacing: 0.5px;
    display: inline-block;
    padding: 14px 50px;
    border-radius: 5px;
    transition: 0.5s;
    margin-top: 30px;
}

.btn-send-contact-form {
    color: var(--contrast-color);
    background: var(--accent-color);
    font-weight: 600;
    font-size: 16px;
    letter-spacing: 0.5px;
    display: inline-block;
    padding: 14px 50px;
    border-radius: 5px;
    transition: 0.5s;
    margin-top: 30px;
}

.btn-send-contact-form:hover {
    background:
            color-mix(in srgb, var(--accent-color), transparent 15%);
}

.contact .php-email-form select {
    color: #333;
    font-weight: 600;
    font-size: 15px;

}

.contact .php-email-form select:focus {
    color: #000;
}


.btn-get-started {
    color: var(--contrast-color);
    background: var(--accent-color);
    font-weight: 600;
    font-size: 16px;
    letter-spacing: 0.5px;
    display: inline-block;
    padding: 14px 50px;
    border-radius: 5px;
    transition: 0.5s;
    margin-top: 30px;
}

.btn-get-started:hover {
    background: color-mix(in srgb, var(--accent-color), transparent 15%);
}

.testimonials .testimonial-item .testimonial-title {
    display: flex;
    /*flex-direction: row;*/
    align-items: center;
    justify-content: flex-start;
    gap: 5px;
}

.testimonials .testimonial-item .testimonial-title h3 {
    margin: 10px 0 5px 20px;
}

.testimonials .testimonial-item .testimonial-title h4 {
    margin: 0 0 0 20px;
}

.testimonials .testimonial-item p {
    font-size: 15px;
    /*min-height: 250px;*/
    /*padding-bottom: 0 !important;*/
}

.testimonials .testimonial-item .testimonial-img {
    /*margin-top: 100px;*/
    width: 60px;
    border-radius: 50%;
    margin-left: 40px;
    margin-top: 15px;
    margin-right: 0;
    position: relative;
    z-index: 2;
    border: 6px solid var(--background-color);
}


/*--------------------------------------------------------------
# Page title
--------------------------------------------------------------*/

main > .page-title {
    padding: 2rem 0;
}

.section-title {
    padding: 3rem 0;
}

/*--------------------------------------------------------------
# Page steps
--------------------------------------------------------------*/

.steps .card-title {
    font-family: var(--default-font), serif;
    font-size: 1rem;
    margin-bottom: 0;
    padding: 5px 0;
}

.pricing-item h4 {
    font-family: var(--nav-font), serif;
}

@media (min-width: 992px) {
    .pricing .featured .pricing-item {
        transform: scale(1, 1);
    }
}

.isotope-container img {
    width: 416px !important;
    height: 277px !important;
}

/*--------------------------------------------------------------
# partners
--------------------------------------------------------------*/

.partners .partner-item {
    box-sizing: content-box;
    min-height: 320px;
}