/* ==========================================================
   ATCMobile.cz - Mega Menu V2
   Desktop test - v60
   ASCII comments only
   ========================================================== */


/* ==========================================================
   IMPORTANT: EXPAND OLD TEMPLATE WRAPPER
   Old template gives .responsive-menu only about 999px
   while .main-menu-handler has about 1170px.
   This CSS is loaded only in V2 test mode.
   ========================================================== */

#menu .main-menu-handler {
    width: 100% !important;
    max-width: none !important;
}

#menu .main-menu-handler > .responsive-menu {
    display: block !important;
    float: none !important;

    width: 100% !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* ==========================================================
   GLOBAL RESET
   ========================================================== */

.atcMegaMenuV2,
.atcMegaMenuV2 *,
.atcMegaMenuV2 *::before,
.atcMegaMenuV2 *::after {
    box-sizing: border-box;
}


/* ==========================================================
   MAIN MENU BAR
   ========================================================== */

.atcMegaMenuV2 {
    position: relative;
    z-index: 1000;

    display: block !important;

    width: 100% !important;
    max-width: none !important;

    margin-top: 14px !important;

    font-family: Arial, Helvetica, sans-serif;

    background: #fff;

    border-top: 1px solid #eef1f3;
    border-bottom: 1px solid #dde3e7;
}


/* ==========================================================
   ROOT MENU
   ========================================================== */

.atcMegaMenuV2__root {
    display: flex !important;
    align-items: stretch !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #fff;

    list-style: none !important;
}


.atcMegaMenuV2__root > li {
    position: static !important;

    display: block !important;
    float: none !important;

    flex: 1 1 auto !important;

    width: auto !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    list-style: none !important;
}


/* ==========================================================
   ROOT ITEM
   ========================================================== */

.atcMegaMenuV2__root > li > span {
    position: relative;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 48px;

    margin: 0 !important;
    padding: 0 7px !important;

    white-space: nowrap;

    background: transparent !important;

    border: 0 !important;
    border-bottom: 3px solid transparent !important;

    transition:
        background-color .16s ease,
        border-color .16s ease;
}


/* ==========================================================
   ROOT TEXT
   Bold, clean, no icons
   ========================================================== */

.atcMegaMenuV2__root > li > span > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 0;

    margin: 0 !important;
    padding: 0 !important;

    color: #009ed3 !important;

    font-size: 12.5px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;

    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase;
}


.atcMegaMenuV2__root > li:hover > span,
.atcMegaMenuV2__root > li.atcV2-open > span {
    background: #f1f9fc !important;
    border-bottom-color: #00a6d6 !important;
}


.atcMegaMenuV2__root > li.myActive > span {
    border-bottom-color: #00a6d6 !important;
}


/* ==========================================================
   ROOT ARROW
   ========================================================== */

.atcMegaMenuV2__root > li > span > .myArrow {
    order: 2;

    display: inline-block !important;
    float: none !important;

    flex: 0 0 6px;

    width: 6px !important;
    height: 6px !important;

    margin: 0 0 3px 6px !important;
    padding: 0 !important;

    background: none !important;

    border: 0 !important;
    border-right: 1.5px solid #00a6d6 !important;
    border-bottom: 1.5px solid #00a6d6 !important;

    transform: rotate(45deg);

    cursor: pointer;

    transition: transform .16s ease;
}


.atcMegaMenuV2__root > li.atcV2-open > span > .myArrow {
    margin-bottom: -3px !important;
    transform: rotate(225deg);
}


/* ==========================================================
   MAIN MEGA PANEL
   ========================================================== */

.atcMegaMenuV2 .atcV2-panel {
    position: absolute !important;

    top: 100% !important;
    left: 0 !important;

    display: block !important;

    width: 100% !important;

    min-height: 0 !important;
    max-height: 560px !important;
    height: auto !important;

    margin: 0 !important;
    padding: 22px 24px 18px !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    background: #fff !important;

    border: 1px solid #dfe6ea !important;
    border-top: 3px solid #00a6d6 !important;

    box-shadow: 0 12px 28px rgba(0, 0, 0, .14);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(8px);

    transition:
        opacity .16s ease,
        visibility .16s ease,
        transform .16s ease;
}


.atcMegaMenuV2 .atcV2-panel.atcV2-panel-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;

    transform: translateY(0);
}


/* ==========================================================
   MAIN PANEL HEADER
   ========================================================== */

.atcMegaMenuV2 .atcV2-panelHeader {
    display: flex !important;
    align-items: center;
    justify-content: space-between;

    height: 48px;

    margin: -22px -24px 14px !important;
    padding: 0 22px !important;

    background: #f8fafb;

    border-bottom: 1px solid #e4eaee;
}


.atcMegaMenuV2 .atcV2-panelTitle {
    color: #263b48;

    font-size: 15px;
    font-weight: 700;
    line-height: 1;

    text-transform: uppercase;
}


/* ==========================================================
   SHOW ALL LINKS
   ========================================================== */

.atcMegaMenuV2 .atcV2-panelAll,
.atcMegaMenuV2 .atcV2-level3All {
    position: relative;

    display: inline-block;

    padding-right: 17px;

    color: #009ed3 !important;

    font-size: 12px;
    font-weight: 600;

    text-decoration: none !important;
}


.atcMegaMenuV2 .atcV2-panelAll::after,
.atcMegaMenuV2 .atcV2-level3All::after {
    content: "\203A";

    position: absolute;

    right: 0;
    top: -2px;

    font-size: 17px;
}


.atcMegaMenuV2 .atcV2-panelAll:hover,
.atcMegaMenuV2 .atcV2-level3All:hover {
    color: #007fae !important;
}


/* ==========================================================
   PANEL CONTENT
   Height is controlled dynamically by JS
   ========================================================== */

.atcMegaMenuV2 .atcV2-panel > ul {
    position: relative !important;

    display: block !important;
    float: none !important;

    width: 100% !important;

    min-height: 0;
    height: auto;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


/* Vertical divider */

.atcMegaMenuV2 .atcV2-panel > ul::after {
    content: '';

    position: absolute;

    top: 0;
    bottom: 0;
    left: 300px;

    width: 1px;

    background: #e7ecef;
}


/* ==========================================================
   LEVEL 2 - LEFT COLUMN
   ========================================================== */

.atcMegaMenuV2 .atcV2-panel > ul > li,
.atcMegaMenuV2 .atcV2-level2-item {
    position: static !important;

    display: block !important;
    float: none !important;
    clear: both !important;

    width: 280px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;

    list-style: none !important;
}


.atcMegaMenuV2 .atcV2-level2-item > span {
    position: relative;

    display: flex !important;
    align-items: center;

    width: 280px !important;
    min-height: 32px !important;

    margin: 0 !important;
    padding: 5px 35px 5px 10px !important;

    background: transparent !important;

    border: 0 !important;
    border-radius: 4px;
}


.atcMegaMenuV2 .atcV2-level2-item > span > a {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #354854 !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;

    text-decoration: none !important;
}


.atcMegaMenuV2 .atcV2-level2-item:hover > span,
.atcMegaMenuV2 .atcV2-level2-item.atcV2-selected > span {
    background: #edf8fc !important;
}


.atcMegaMenuV2 .atcV2-level2-item:hover > span > a,
.atcMegaMenuV2 .atcV2-level2-item.atcV2-selected > span > a {
    color: #008fbe !important;
}


/* Hide old arrow */

.atcMegaMenuV2 .atcV2-level2-item > span > .myArrow {
    display: none !important;
}


/* New level 2 arrow */

.atcMegaMenuV2 .atcV2-level2-item.myParent > span::after {
    content: '';

    position: absolute;

    right: 13px;
    top: 50%;

    width: 6px;
    height: 6px;

    border-top: 1.5px solid #889aa4;
    border-right: 1.5px solid #889aa4;

    transform:
        translateY(-50%)
        rotate(45deg);
}


.atcMegaMenuV2 .atcV2-level2-item:hover > span::after,
.atcMegaMenuV2 .atcV2-level2-item.atcV2-selected > span::after {
    border-color: #00a6d6;
}


/* ==========================================================
   LEVEL 3 - RIGHT AREA
   ========================================================== */

.atcMegaMenuV2 .atcV2-level3 {
    position: absolute !important;

    top: 0 !important;
    left: 325px !important;
    right: 0 !important;

    display: none !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 0 18px !important;

    overflow: visible !important;

    background: #fff !important;

    border: 0 !important;
}


.atcMegaMenuV2 .atcV2-level2-item:hover > .atcV2-level3,
.atcMegaMenuV2 .atcV2-level2-item.atcV2-selected > .atcV2-level3 {
    display: block !important;
}


/* ==========================================================
   LEVEL 3 HEADER
   ========================================================== */

.atcMegaMenuV2 .atcV2-level3Header {
    display: flex !important;
    align-items: center;
    justify-content: space-between;

    min-height: 36px;

    margin: 0 0 8px !important;
    padding: 0 4px 8px !important;

    border-bottom: 1px solid #e7ecef;
}


.atcMegaMenuV2 .atcV2-level3Title {
    color: #263b48;

    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
}


/* ==========================================================
   LEVEL 3 GRID
   ========================================================== */

.atcMegaMenuV2 .atcV2-level3 > ul {
    display: grid !important;

    grid-template-columns:
        repeat(3, minmax(145px, 1fr)) !important;

    column-gap: 30px !important;
    row-gap: 1px !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


.atcMegaMenuV2 .atcV2-level3 > ul > li,
.atcMegaMenuV2 .atcV2-level3-item {
    display: block !important;

    float: none !important;
    clear: none !important;

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;

    list-style: none !important;
}


.atcMegaMenuV2 .atcV2-level3-item > span {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;
}


.atcMegaMenuV2 .atcV2-level3-item a {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 6px 8px !important;

    color: #536a77 !important;

    font-size: 12.5px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;

    text-decoration: none !important;

    border-radius: 4px;
}


.atcMegaMenuV2 .atcV2-level3-item a:hover {
    color: #008fbe !important;
    background: #f2f9fc !important;
}


/* ==========================================================
   ACTIVE
   ========================================================== */

.atcMegaMenuV2 li.myActive > span > a {
    color: #007fae !important;
}


/* ==========================================================
   SERVICE - NO SPECIAL OFFSET
   ========================================================== */

.atcMegaMenuV2__root > li:last-child {
    margin: 0 !important;
    border: 0 !important;
}


/* ==========================================================
   LOADING / ERROR
   ========================================================== */

.atcMegaMenuV2__loading,
.atcMegaMenuV2__error {
    flex: 1 1 100% !important;

    width: 100% !important;

    padding: 15px 20px !important;

    color: #6c7780;

    font-size: 13px;
    text-align: center;

    list-style: none !important;
}


.atcMegaMenuV2__error {
    color: #a94442;
}


/* ==========================================================
   SCROLLBAR
   ========================================================== */

.atcMegaMenuV2 .atcV2-panel {
    scrollbar-width: thin;
    scrollbar-color: #b7c2c8 #f4f6f7;
}


.atcMegaMenuV2 .atcV2-panel::-webkit-scrollbar {
    width: 7px;
}


.atcMegaMenuV2 .atcV2-panel::-webkit-scrollbar-track {
    background: #f4f6f7;
}


.atcMegaMenuV2 .atcV2-panel::-webkit-scrollbar-thumb {
    background: #b7c2c8;
    border-radius: 10px;
}


/* ==========================================================
   SMALLER DESKTOP
   ========================================================== */

@media (max-width: 1199px) {

    .atcMegaMenuV2 {
        margin-top: 12px !important;
    }

    .atcMegaMenuV2__root > li > span {
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    .atcMegaMenuV2__root > li > span > a {
        font-size: 10.8px !important;
        font-weight: 800 !important;
    }

    .atcMegaMenuV2__root > li > span > .myArrow {
        margin-left: 4px !important;
    }

    .atcMegaMenuV2 .atcV2-panel {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    .atcMegaMenuV2 .atcV2-panelHeader {
        margin-left: -18px !important;
        margin-right: -18px !important;
    }

    .atcMegaMenuV2 .atcV2-panel > ul::after {
        left: 270px;
    }

    .atcMegaMenuV2 .atcV2-panel > ul > li,
    .atcMegaMenuV2 .atcV2-level2-item,
    .atcMegaMenuV2 .atcV2-level2-item > span {
        width: 250px !important;
    }

    .atcMegaMenuV2 .atcV2-level3 {
        left: 292px !important;
    }
}


/* ==========================================================
   MOBILE
   Existing mobile menu stays untouched
   ========================================================== */

@media (max-width: 991px) {

    .atcMegaMenuV2 {
        display: none !important;
    }
}