/*----------------------------------------------------------------
    Mobile Navbar Toggler
----------------------------------------------------------------*/

.s-navbar-toggler,
.s-navbar-toggler:hover,
.s-navbar-toggler:focus {
    margin-top: -2px;
    float: left;
    border: none!important;
    outline: none!important;
    cursor: pointer;
}

.nav-toggle-wrapper i.nav-toggle {
    position: relative;
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    width: 25px;
    height: 3px;
    color: #000;
    font: bold 14px/.4 Helvetica;
    text-transform: uppercase;
    text-indent: -55px;
    transition: all .2s ease-out;
}

.nav-toggle-wrapper i.nav-toggle::before,
.nav-toggle-wrapper i.nav-toggle::after {
    content: '';
    width: 25px;
    height: 3px;
    position: absolute;
    left: 0;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}

.nav-toggle-wrapper i.nav-toggle::before {
    top: -7px;
}

.nav-toggle-wrapper i.nav-toggle::after {
    bottom: -7px;
}

.nav-toggle-wrapper:hover i.nav-toggle::before {
    top: -10px;
}

.nav-toggle-wrapper:hover i.nav-toggle::after {
    bottom: -10px;
}

.nav-toggle-wrapper[aria-expanded="true"] i.nav-toggle {
    background-color: transparent!important;
}

.nav-toggle-wrapper[aria-expanded="true"] i.nav-toggle::before {
    top: 0;
    -webkit-transform: rotateZ(45deg);
    -moz-transform: rotateZ(45deg);
    -ms-transform: rotateZ(45deg);
    -o-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
}

.nav-toggle-wrapper[aria-expanded="true"] i.nav-toggle::after {
    bottom: 0;
    -webkit-transform: rotateZ(-45deg);
    -moz-transform: rotateZ(-45deg);
    -ms-transform: rotateZ(-45deg);
    -o-transform: rotateZ(-45deg);
    transform: rotateZ(-45deg);
}

/*----------------------------------------------------------------
    Mobile Sidebar Nav
----------------------------------------------------------------*/

#s-mobile-nav {
    position: fixed;
    width: 250px;
    height: 100%!important;
    bottom: 0;
    top: 0;
    z-index: 99999;
    display: block;
    background-color: #f7f7f9;
    overflow-y: auto;
    -moz-transform: translateX(-250px);
    -webkit-transform: translateX(-250px);
    -ms-transform: translateX(-250px);
    -o-transform: translateX(-250px);
    transform: translateX(-250px);
    -webkit-transition: all 0.5s ease-in;
    -moz-transition: all 0.5s ease-in;
    -ms-transition: all 0.5s ease-in;
    -o-transition: all 0.5s ease-in;
    transition: all 0.5s ease-in;
}

#s-mobile-nav ul {
    margin-top: 0;
    padding-left: 0;
    border-top: 0;
    list-style: none;
}

#s-mobile-nav > ul > li a {
    display: block;
    padding: 11px 19px 12px;
    font-size: 0.9rem;
    line-height: 16px;
    background: #efefef;
    border-top: 1px solid #fff;
}

#s-mobile-nav > ul > li.active a,
#s-mobile-nav > ul > li a:hover {
    color: #fff;
}

#s-mobile-nav > ul > li a i {
    padding-left: .5rem;
}

#s-mobile-nav[aria-expanded="true"] {
    left: 0;
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    -ms-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
    -moz-transform: translateX(0px);
    -webkit-transform: translateX(0px);
    -ms-transform: translateX(0px);
    -o-transform: translateX(0px);
    transform: translateX(0px);
}

.s-main-wrapper.open {
    -moz-transform: translateX(250px);
    -webkit-transform: translateX(250px);
    -ms-transform: translateX(250px);
    -o-transform: translateX(250px);
    transform: translateX(250px);
    -webkit-transition: transform 0.5s ease-out;
    -moz-transition: transform 0.5s ease-out;
    -ms-transition: transform 0.5s ease-out;
    -o-transition: transform 0.5s ease-out;
    transition: transform 0.5s ease-out;
}

.s-main-wrapper.closed {
    -moz-transform: translateX(0px);
    -webkit-transform: translateX(0px);
    -ms-transform: translateX(0px);
    -o-transform: translateX(0px);
    transform: translateX(0px);
    -webkit-transition: transform 0.4s ease-in;
    -moz-transition: transform 0.4s ease-in;
    -ms-transition: transform 0.4s ease-in;
    -o-transition: transform 0.4s ease-in;
    transition: transform 0.4s ease-in;
}

/*----------------------------------------------------------------
    Mobile auth
----------------------------------------------------------------*/

.s-mobile-auth ul {
    margin-bottom: 0;
    padding: 11px 19px 12px!important;
}

/*----------------------------------------------------------------
    Mobile search
----------------------------------------------------------------*/

#s-mobile-nav .s-mobile-search {
    padding: 11px 19px 12px;
    border-top: 1px solid #efefef;
}

#s-mobile-nav .s-search-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
    max-width: 300px;
    z-index: 4;
}

#s-mobile-nav .s-search-wrapper .s-text-input {
    padding: 6px 6px 6px 40px;
    width: 100%;
    height: 35px;
    background: #f7f7f7;
    font-size: 14px;
    border: 1px solid #e3e3e3;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -webkit-transition: all 333ms ease-in-out;
    -moz-transition: all 333ms ease-in-out;
    -o-transition: all 333ms ease-in-out;
    -ms-transition: all 333ms ease-in-out;
    transition: all 333ms ease-in-out;
}

#s-mobile-nav .s-search-wrapper .s-submit-input {
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 100%;
    background: transparent url("../img/icons/search-icon.png") 50% no-repeat;
    -webkit-background-size: 20px;
    -moz-background-size: 20px;
    background-size: 20px;
    opacity: 0.33;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=33)";
    filter: alpha(opacity=33);
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 0;
}

#s-mobile-nav .s-search-wrapper .s-text-input:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

/*----------------------------------------------------------------
    Mobile header
----------------------------------------------------------------*/

header.s-header-wrapper nav.s-middle-header .nav-toggle-wrapper i.nav-toggle {
    float: right;
    margin-top: 15px;
}

header.s-header-wrapper nav.s-middle-header .nav-toggle-wrapper i.nav-toggle,
header.s-header-wrapper nav.s-middle-header .nav-toggle-wrapper i.nav-toggle::before,
header.s-header-wrapper nav.s-middle-header .nav-toggle-wrapper i.nav-toggle::after {
    background-color: #fff;
}

/* Extra extra small */
@media (max-width: 200px) {

    header.s-header-wrapper nav.s-middle-header .s-site-logo a img {
        width: 100px;
    }

}

@media (max-width: 480px) {

    header.s-header-wrapper nav.s-top-header > .container {
        width: 100%;
    }

    .s-home-features .row > div {
        margin-top: 1rem;
    }

    .s-home-wrapper .s-home-features .row > div:first-child {
        margin-top: 0;
    }

    .s-home-map-contacts {
        position: relative;
        top: 0;
        right: 0!important;
    }

    .s-footer-columns > div {
        padding-bottom: .5rem;
        text-align: left;
    }

    #callback-dialog.dialog .dialog-body .dialog-buttons {
        right: .2rem;
    }

}

@media (max-width: 767px) {

}

@media only screen and (max-width:2400px) {
    
#s-mainslider {display: none;}


/* Small devices (landscape phones, 544px and up) */
@media (max-width: 991px) {

    .s-home-features .row > div:nth-child(4),
    .s-home-features .row > div:nth-child(5) {
        margin-top: 1rem;
    }

    .s-home-map-contacts {
        right: 180px;
    }

    .s-footer-wrapper .mailer-subscribe .subscribe-form .input-group {
        padding-top: 1rem;
    }

    .dialog-window .dialog-body {
        max-width: 80%;
    }

    .dialog-window .dialog-body .wa-captcha-input {
        max-width: 100%;
        margin-top: 1rem;
    }

}

@media (min-width: 1024px) {

    .s-home-features .row > div:nth-child(4),
    .s-home-features .row > div:nth-child(5) {
        left: auto;
    }

}

/* Large devices (desktops, 992px and up) */
@media (max-width: 1199px) {

    header.s-header-wrapper nav.s-middle-header {
        padding: 1rem 0;
    }

    header.s-header-wrapper nav.s-middle-header > .container {
        position: initial;
    }

}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {

}

/*----------------------------------------------------------------
    Color scheme
----------------------------------------------------------------*/

/* DARK */
html.color_scheme_dark #s-mobile-nav > ul > li.active a,
html.color_scheme_dark #s-mobile-nav > ul > li a:hover  {
    background-color: rgba(83, 86, 103, 1);
}

/* GRAY */
html.color_scheme_gray #s-mobile-nav > ul > li.active a,
html.color_scheme_gray #s-mobile-nav > ul > li a:hover  {
    background-color: rgba(170, 178, 189, 1);
}

/* RED */
html.color_scheme_red #s-mobile-nav > ul > li.active a,
html.color_scheme_red #s-mobile-nav > ul > li a:hover {
    background-color: rgba(254, 102, 88, 1);
}

/* ORANGE */
html.color_scheme_orange #s-mobile-nav > ul > li.active a,
html.color_scheme_orange #s-mobile-nav > ul > li a:hover {
    background-color: rgba(253, 109, 82, 1);
}

/* YELLOW */
html.color_scheme_yellow #s-mobile-nav > ul > li.active a,
html.color_scheme_yellow #s-mobile-nav > ul > li a:hover {
    background-color: rgba(255, 205, 82, 1);
}

/* GREEN */
html.color_scheme_green #s-mobile-nav > ul > li.active a,
html.color_scheme_green #s-mobile-nav > ul > li a:hover {
    background-color: rgba(159, 211, 103, 1);
}

/* MINT */
html.color_scheme_mint #s-mobile-nav > ul > li.active a,
html.color_scheme_mint #s-mobile-nav > ul > li a:hover {
    background-color: rgba(73, 207, 174, 1);
}

/* AQUA */
html.color_scheme_aqua #s-mobile-nav > ul > li.active a,
html.color_scheme_aqua #s-mobile-nav > ul > li a:hover {
    background-color: rgba(79, 192, 234, 1);
}

/* BLUE */
html.color_scheme_blue #s-mobile-nav > ul > li.active a,
html.color_scheme_blue #s-mobile-nav > ul > li a:hover {
    background-color: rgba(0, 109, 202, 1);
}

/* PURPLE */
html.color_scheme_purple #s-mobile-nav > ul > li.active a,
html.color_scheme_purple #s-mobile-nav > ul > li a:hover {
    background-color: rgba(171, 146, 237, 1);
}

/* PINK */
html.color_scheme_pink #s-mobile-nav > ul > li.active a,
html.color_scheme_pink #s-mobile-nav > ul > li a:hover {
    background-color: rgba(236, 135, 193, 1);
}
