/*---------------------------------------------------------------------------------

 Theme Name:   KA Leisure
 Theme URI:    https://kaleisure.com/
 Description:  
 Author:       Adworks
 Author URI:   https://adworks.scot/
 Template:     Divi
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

------------------------------ ADDITIONAL CSS HERE ------------------------------*/
header#main-header .container {
    max-width: 1152px;
}

.ka-header-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 18px 0;
    align-items: center;
}

.ka-header-right {
    display: flex;
}

.ka-header-nav > div > ul {
    display: flex;
    align-items: center;
}

.ka-header-logo {
    width: 98px;
}

.ka-header-logo a, .ka-header-logo a img {
    display: block;
}

.ka-header-nav > div > ul a {
    color: #2B2E34;
    font-size: 14px;
    font-weight: normal;
    font-family: 'Gabarito',sans-serif;
}

.ka-header-nav > div > ul > li {
    padding-left: 10px;
    padding-right: 10px;
    position: relative;
}

.ka-header-nav > div > ul > li:not(:first-child):not(:last-child):before {
    content: '';
    width: 2px;
    height: 12px;
    background: #2B2E34;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -6px;
}

.ka-header-nav > div > ul > li:last-child a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 900;
    padding: 4px 10px;
    background: #2B2E34;
    color: #fff;
    transition: background 0.2s;
}

.ka-header-nav > div > ul > li:not(:last-child) a {
    transition: color 0.2s;
}

.ka-header-nav > div > ul > li:not(:last-child) a:hover {
text-decoration: underline;
}

.ka-header-nav > div > ul > li:last-child a:hover {
    background-color: #1275B1;
}

.ka-header-social {
    display: flex;
    align-items: center;
    padding: 0 0 0 16px;
}

.header-social {
    display: flex;
    gap: 8px;
}

.header-social a {
    font-size: 20px;
    line-height: 1;
    transition: color 0.2s;
}

.header-social a path {
    transition: fill 0.25s;
}

.header-social a:hover svg > path,
.header-social a:hover g:first-child > path {
    fill: #1275B1 !important;
}

.location-header {
    background: #1275B1;
}

.location-header-cols {
    display: flex;
    justify-content: space-between;
}

.location-header-title {
    font-size: 20px;
    text-transform: uppercase;
    color: #fff;
    font-weight: 900;
    line-height: 1.2;
    margin: 0 0 8px;
    font-family: 'Gabarito',sans-serif;
}

.location-header-right {
    position: relative;
    display: flex;
    align-items: center;
    padding: 10px 0 0 30px;
}

.location-header-right:before {
    content: '';
    display: block;
    width: 64px;
    height: 100%;
    position: absolute;
    right: 100%;
    top: 0;
    background: url('img/location-nav-sep.svg') no-repeat center center;
    background-size: auto 100%;
}

.location-header-right-area {
    position: relative;
    color: #fff;
    font-weight: 900;
    font-size: 20px;
    width: 125px;
    text-align: right;
    text-transform: uppercase;
    line-height: 1.1;
}

.location-header-left {
    display: flex;
    flex-direction: column;
    padding: 18px 0;
}

.location-header-nav ul {
    display: flex;
}

.location-header-nav ul a {
    color: #fff;
    font-size: 14px;
    font-family: 'Gabarito',sans-serif;
    transition: color 0.2s;
}

.location-header-nav ul a:hover {
    text-decoration: underline;
}

.location-header-nav li:not(:last-child) {
    padding-right: 12px;
    margin-right: 12px;
    position: relative;
}

.location-header-nav li:not(:last-child):after {
    content: '|';
    font-family: 'Gabarito',sans-serif;
    font-size: 14px;
    position: absolute;
    right: 0;
    top: 0;
    color: #fff;
}

body:not(.single-location) #page-container {
    padding-top: 70px !important;
}

.single-location #page-container {
    padding-top: 160px !important;
}

.ka-header-nav-mobile.ajaxing:before,
.location-header-mobile-nav.ajaxing:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    background: #fff;
    z-index: 1;
}

.ka-header-nav-mobile.ajaxing:after,
.location-header-mobile-nav.ajaxing:after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border: 2px solid #000;
    border-radius: 50%;
    border-right-color: transparent;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -6px;
    margin-left: -6px;
    z-index: 2;
    animation: ajaxing 1s infinite linear;
}

@keyframes ajaxing {
    to {
        transform: rotate(360deg);
    }
}


/* Responsive Issues */

@media all and (min-width: 993px) {
    .hidden-tablet-up {
        display: none !important;
    }
	body:not(.single-location) #page-container {
    padding-top: 70px !important;
}
}

@media all and (max-width: 992px) {
    .single-location #page-container {
        padding-top: 127px !important;
    }
    
    #main-header .container {
        width: 100%;
        padding: 0 24px;
    }

    nav.ka-header-nav {
        display: none;
    }
    
    .ka-header-container {
        position: relative;
        justify-content: flex-end;
    }
    
    .ka-header-logo {
        order: 2;
        margin-left: 28px;
    }
    
    .location-header-nav {
        display: none;
    }
    
    .location-header-right {
        padding: 0;
    }
    
    .location-header-right:before {
        display: none;
    }
    
    .location-header-cols {
        display: block;
        padding: 8px 0;
        position: relative;
    }
    
    .location-header-right-area {
        text-align: left;
        max-width: 100%;
        width: 100%;
        font-size: 14px;
    }
    
    .location-header-left {
        padding: 0;
        margin-bottom: 2px;
    }
    
    .location-header-title {
        margin-bottom: 0;
        font-size: 20px;
    }
    
    .ka-header-container .ka-header-nav-mobile {
        position: absolute;
        left: 0;
        width: 106px;
    }
    
    .ka-header-container .ka-header-nav-mobile svg {
        position: absolute;
        right: 5px;
        pointer-events: none;
        top: 50%;
        transform: translateY(-50%);
    }
    
    .ka-header-nav-mobile select {
        background: #2B2E34;
        color: #fff;
        font-weight: 900;
        padding: 5px 5px 5px 10px;
        border: none;
        outline: none;
        font-family: 'Gabarito',sans-serif;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        width: 100%;
        font-size: 14px;
    }
    
    .location-header-mobile-nav {
        width: 70px;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
    }
    
    .location-header-mobile-nav > svg {
        position: absolute;
        right: 5px;
        top: 50%;
        transform: translateY(-50%);
        filter: invert(1);
        pointer-events: none;
    }
    
    .location-header-mobile-nav select {
        -moz-appearance: none;
        -webkit-appearance: none;
        appearance: none;
        outline: none;
        border: none;
        width: 100%;
        padding: 5px 0 5px 10px;
        font-family: 'Gabarito',sans-serif;
        font-weight: 900;
        color: #000;
    }
}

@media all and (max-width: 767px) {
    #main-header .container {
        padding-left: 12px;
        padding-right: 12px;
    }
}