@charset "utf-8";
@import url(bootstrap.css);
@import url(font-awesome.css);
@font-face {
    font-family: 'PT Sans';
    src: local('PT Sans'), local('PTSans-Regular'), url('../fonts/ptsans.woff2') format('woff2'), url('../fonts/ptsans.woff') format('woff'), url('../fonts/ptsans.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'PT Sans';
    src: local('PT Sans Italic'), local('PTSans-Italic'), url('../fonts/ptsansitalic.woff2') format('woff2'), url('../fonts/ptsansitalic.woff') format('woff'), url('../fonts/ptsansitalic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
}
@font-face {
    font-family: 'PT Sans';
    src: local('PT Sans Bold'), local('PTSans-Bold'), url('../fonts/ptsansbold.woff2') format('woff2'), url('../fonts/ptsansbold.woff') format('woff'), url('../fonts/ptsansbold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'PT Sans';
    src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url('../fonts/ptsansbolditalic.woff2') format('woff2'), url('../fonts/ptsansbolditalic.woff') format('woff'), url('../fonts/ptsansbolditalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}

:root {
    --lightblue: #4BB9F8;
    --blue: #183e61;
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active
{
 -webkit-box-shadow: 0 0 0 30px white inset !important;
}
/* Fancybox */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
    padding: 0;
    margin: 0;
    border: 0;
    outline: none;
    vertical-align: top;
}
.fancybox-wrap {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 8020;
    padding: 35px 0 0;
}
.fancybox-skin {
    position: relative;
    color: #444;
    text-shadow: none;
    margin-bottom: 35px;
    background: #fff;
    box-shadow: 0px 0px 14px 3px rgba(0,0,0,0.3);
}
.fancybox-opened {
    z-index: 8030;
}
.fancybox-opened .fancybox-skin {
    -webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
       -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}
.fancybox-outer, .fancybox-inner {
    position: relative;
}
.fancybox-type-iframe .fancybox-inner {
    -webkit-overflow-scrolling: touch;
}
.fancybox-error {
    color: #444;
    font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
    margin: 0;
    padding: 15px;
    white-space: nowrap;
}
.fancybox-image, .fancybox-iframe {
    display: block;
    width: 100%;
    height: 100%;
}
.fancybox-image {
    max-width: 100%;
    max-height: 100%;
}
#fancybox-loading {
    position: fixed;
    top: 50%;
    left: 50%;
    margin-top: -22px;
    margin-left: -22px;
    opacity: 0.8;
    cursor: pointer;
    z-index: 8060;
}
#fancybox-loading div {
    width: 44px;
    height: 44px;
}
.fancybox-close {
    position: absolute;
    top: -35px;
    right: -3px;
    width: 30px;
    height: 30px;
    cursor: pointer;
    z-index: 8040;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
@media(min-width: 992px) {
    .fancybox-close {
        background: transparent !important;
        top: -35px !important;
        width: 40px !important;
        right: -35px !important;
    }
}
.fancybox-close:after{
    width: 1px;
    height: 100%;
    top: 0;
    left: 50%;
    content: "";
    display: block;
    position: absolute;
    background: #333333;
    margin-left: -1px;
}
.fancybox-close:after {
    background: url(../images/close.png) 50% 50% no-repeat;
    width: 20px;
    height: 20px;
    top: 50%;
    left: 50%;
    content: "";
    display: block;
    position: absolute;
    margin-top: -10px;
    margin-left: -10px;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
.fancybox-close:hover{
    background: #FF4632;
}
.fancybox-close:hover:after {
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.fancybox-nav {
    position: absolute;
    top: 0;
    width: 40%;
    height: 100%;
    cursor: pointer;
    text-decoration: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    z-index: 8040;
}
.fancybox-prev {
    left: 0;
}
.fancybox-next {
    right: 0;
}
.fancybox-nav span {
    position: absolute;
    top: 50%;
    width: 36px;
    height: 34px;
    margin-top: -18px;
    cursor: pointer;
    z-index: 8040;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
.fancybox-prev span {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    left: -50px;
}
.fancybox-next span {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    right: -50px;
}
.fancybox-nav:hover span {
    visibility: visible;
}
.fancybox-prev span:after,
.fancybox-next span:after{
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
.fancybox-prev:hover span:after,
.fancybox-next:hover span:after{
    border-color: var(--lightblue);
}
.fancybox-tmp {
    position: absolute;
    top: -99999px;
    left: -99999px;
    visibility: hidden;
    max-width: 99999px;
    max-height: 99999px;
    overflow: visible !important;
}
.fancybox-lock {
    overflow: hidden !important;
    width: auto;
}
.fancybox-lock body {
    overflow: hidden !important;
}
.fancybox-lock-test {
    overflow-y: hidden !important;
}
.fancybox-overlay {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    display: none;
    z-index: 8010;
    background: rgba(0,0,0,0.8);
}
.fancybox-overlay-fixed {
    position: fixed;
    bottom: 0;
    right: 0;
}
.fancybox-lock .fancybox-overlay {
    overflow: auto;
    overflow-y: scroll;
}
.fancybox-title {
    visibility: hidden;
    font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
    position: relative;
    text-shadow: none;
    z-index: 8050;
}

.fancybox-opened .fancybox-title {
    visibility: visible;
}
.fancybox-title-float-wrap {
    position: absolute;
    bottom: 0;
    z-index: 8050;
    left: 0;
    margin-bottom: -28px;
    width: 100%;
    text-align: left;
    overflow: hidden;
}
.fancybox-title-float-wrap .child {
    display: block;
    margin-right: -100%;
    background: rgba(255, 255, 255, 1);
    color: #000;
    line-height: 24px;
    font-size: 14px;
    padding: 12px 20px;
    font-weight: normal;
    width: 100%;
}
.fancybox-title-outside-wrap {
    position: relative;
    margin-top: 10px;
    color: #fff;
}
.fancybox-title-inside-wrap {
    padding-top: 10px;
}
.fancybox-title-over-wrap {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #fff;
    padding: 10px;
    background: #000;
    background: rgba(0, 0, 0, .8);
}
/* /. Fancybox */
/* slick carousel */
.slick-slider{
    position: relative;
    display: block;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.slick-list{
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus{
    outline: none;
}
.slick-list.dragging{
    cursor: pointer;
    cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list{
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.slick-track{
    position: relative;
    top: 0;
    left: 0;
    display: block;
}
.slick-track:before,
.slick-track:after{
    display: table;
    content: '';
}
.slick-track:after{
    clear: both;
}
.slick-loading .slick-track{
    visibility: hidden;
}
.slick-slide{
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide{
    float: right;
}
.slick-slide.slick-loading img{
    display: none;
}
.slick-slide.dragging img{
    pointer-events: none;
}
.slick-initialized .slick-slide{
    display: block;
}
.slick-loading .slick-slide{
    visibility: hidden;
}
.slick-vertical .slick-slide{
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slider-wrapper .item img{
    min-height: 300px;
}
.slick-dots {
    width: 100%;
    padding: 0;
    list-style: none;
    text-align: center;
    display: block;
    margin-top: 20px;
}
.slick-dots li button{
    position: absolute;
    top: -5px;
    left: -5px;
    border: none;
    border-radius: 50%;
    display: block;
    opacity: 0;
}
.slick-dots li {
    cursor: pointer;
    display: inline-block;
    border-radius: 50%;
    width: 11px;
    height: 11px;
    margin: 0 10px 0;
    cursor: pointer;
    position: relative;
    background: #2867B8;
}
.slick-dots li.slick-active{
    background: var(--blue);
}
.slick-prev,
.slick-next{
    display: block;
    width: 44px;
    height: 44px;
    border: 2px solid rgba(255,255,255,0.4);
    position: absolute;
    left: 20px;
    z-index: 50;
    cursor: pointer;
    border-radius: 100%;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    text-align: center;
    color: rgba(255,255,255,0.4);
}
.slick-prev{
    top: 0;
}
.slick-next{
    top: 54px;
}
.slick-prev i,
.slick-next i{
    line-height: 42px;
    font-size: 20px;
}

/* /. slick carousel */

/* UP BTN */
#up{
    position: fixed;
    overflow: hidden;
    right: 15px;
    bottom: 80px;
    z-index: 100;
    width: 50px;
    height: 50px;
    line-height: 44px;
    color: #000;
    background: var(--lightblue);
    text-align: center;
    text-decoration: none;
    transition: .3s all ease-in-out;
    transform: translate3d(0, 150px, 0);
    cursor: pointer;
}
#up.active{
    transform: translate3d(0, 0, 0);
}
#up:hover{
    -webkit-filter: brightness(120%);
    filter: brightness(120%);
}
#up svg{
    height: 20px;
    position: relative;
    bottom: -7px;
}
@media(max-width:767px){
    #up{
        bottom: 15px;
    }
}
/* /. UP BTN */

@media only screen and (min-width: 992px){
    /* custom chrome scroll */
    ::-webkit-resizer {
        background-image: url('');
        background-repeat: no-repeat;
        width: 10px;
        height: 1px;
    }
    ::-webkit-scrollbar {
        width: 10px;
    }
    ::-webkit-scrollbar-button {
        background-image: url('');
        background-repat: no-repeat;
        width: 10px;
        height: 0px;
    }
    ::-webkit-scrollbar-thumb {
        -webkit-border-radius: 0px;
        border-radius: 0px;
        background-color: var(--blue);
    }
    ::-webkit-scrollbar-track {
        background-color: #2C2C2C;
    }
    /* /. custom chrome scroll */
}

.push1{
    height: 1px;
}
.push2{
    height: 2px;
}
.push3{
    height: 3px;
}
.push4{
    height: 4px;
}
.push5{
    height: 5px;
}
.push6{
    height: 6px;
}
.push7{
    height: 7px;
}
.push8{
    height: 8px;
}
.push9{
    height: 9px;
}
.push10{
    height: 10px;
}
.push11{
    height: 11px;
}
.push12{
    height: 12px;
}
.push13{
    height: 13px;
}
.push14{
    height: 14px;
}
.push15{
    height: 15px;
}
.push16{
    height: 16px;
}
.push17{
    height: 17px;
}
.push18{
    height: 18px;
}
.push19{
    height: 19px;
}
.push20{
    height: 20px;
}
.push25{
    height: 25px;
}
.push30{
    height: 30px;
}
.push35{
    height: 35px;
}
.push40{
    height: 40px;
}
.push45{
    height: 45px;
}
.push50{
    height: 50px;
}
.push55{
    height: 55px;
}
.push60{
    height: 60px;
}
.push70{
    height: 70px;
}
.push80{
    height: 80px;
}
.push90{
    height: 90px;
}
.push100{
    height: 100px;
}
.f8{
    font-size: 8px;
}
.f9{
    font-size: 9px;
}
.f10{
    font-size: 10px;
}
.f11{
    font-size: 11px;
}
.f12{
    font-size: 12px;
}
.f13{
    font-size: 13px;
}
.f14{
    font-size: 14px;
}
.f15{
    font-size: 15px;
}
.f16{
    font-size: 16px;
}
.f17{
    font-size: 17px;
}
.f18{
    font-size: 18px;
}
.f19{
    font-size: 19px;
}
.f20{
    font-size: 20px;
}
.f21{
    font-size: 21px;
}
.f22{
    font-size: 22px;
}
.f24{
    font-size: 24px;
}
.f26{
    font-size: 26px;
}
.f28{
    font-size: 28px;
}
.f30{
    font-size: 30px;
}
.f34{
    font-size: 34px;
}
.f36{
    font-size: 36px;
}
strong,
b, 
.bold{
    font-weight: bold;
}
em, i{
    font-style: italic;
}
input:focus::-moz-placeholder{
    opacity: 0;
}
input:focus:-ms-input-placeholder{
    opacity: 0;
}
input:focus::-webkit-input-placeholder{
    opacity: 0;
}
textarea:focus::-moz-placeholder{
    opacity: 0;
}
textarea:focus:-ms-input-placeholder{
    opacity: 0;
}
textarea:focus::-webkit-input-placeholder{
    opacity: 0;
}
.strike{
    text-decoration: line-through;
}
.hide {
  display: none;
}
.show {
  display: block;
}
.text-left{
    text-align: left;
}
.text-center{
    text-align: center;
}
.text-right{
    text-align: right;
}
.text-justify{
    text-align: justify;
}
:invalid {
  box-shadow: none;
}
:-moz-submit-invalid {
  box-shadow: none;
}
:-moz-ui-invalid {
  box-shadow:none;
}
.relative{
    position: relative;
}
.absolute{
    position: absolute;
}
.left{
    float: left;
}
.right{
    float: right;
}
.upper{
    text-transform: uppercase;
}
img{
    max-width: 100%;
}
img.left{
    float: left;  
    margin-right: 20px;
}
img.right{
    float: right;  
    margin-left: 20px;
}
.dashed{
    text-decoration: none;
    border-bottom: 1px dashed;
}
.dotted{
    text-decoration: none !important;
    border-bottom: 1px dotted;
}
.dashed:hover,
.dotted:hover{
    border-bottom-color: transparent;
}
.row.min{
    margin-left: -5px;
    margin-right: -5px;
}
.row.min > div[class^="col-"]{
    padding-left: 5px;
    padding-right: 5px;
}
.row.no-padding{
    margin-left: 0;
    margin-right: 0;
}
.row.no-padding > div[class^="col-"]{
    padding-left: 0;
    padding-right: 0;
}
.decoration-none{
    text-decoration: none !important;
}
.decoration-hover{
    text-decoration: none;
}
.decoration-hover:hover{
    text-decoration: underline;
}
.round{
    border-radius: 50%;
}
a.absolute{
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}
html, body {
    height: 100% !important;
    margin: 0;
    padding: 0;
}
body{
    /* min-width: 600px; */
}
.main-wrapper{
    min-height: 100%;
    margin: 0 0 -265px 0;
}
.footer-push{
    height: 265px;
}
.footer-wrapper{
    background: #202020;

    min-height: 80px;
    max-width: 100%;
    margin: 0 auto;
    color: #949494;
    padding: 33px 0 25px;
    font-size: 16px;
    text-align: center;
}

body{
    font-family: 'PT Sans';
    font-size: 18px;
    line-height: 1.4;
    color: #202020;
    overflow-x: hidden;
}
blockquote,
.page-introtext{
    margin-bottom: 40px;
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    line-height: 1.4;
    font-style: italic;
}
.content ul,
.content ol{
    margin-bottom: 30px;
}
.content ul > li,
.content ol > li{
    margin-bottom: 15px;
    position: relative;
}
.content ul > li{
    padding-left: 35px;
}
.content ul > li:after{
    font-family: 'FontAwesome';
    content: "\f00c";
    display: block;
    position: absolute;
    width: 20px;
    height: 20px;
    line-height: 20px;
    top: 6px;
    left: 0;
    background: var(--blue);
    border-radius: 50%;
    color: #fff;
    font-size: 8px;
    text-align: center;
}
.content ul ul,
.content ol ul,
.content ol ol,
.content ul ol{
    padding-top: 10px;
    padding-left: 10px;
}
.content ul ul li,
.content ol ul li{
    padding-left: 15px;
    position: relative;
    margin-bottom: 10px;
}
.content ul ul li:after,
.content ol ul li:after{
    content: "";
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    top: 9px;
    left: 0;
    border: 1px solid #999999;
    border-radius: 50%;
}
.content ul ol li,
.content ol ol li{
    list-style: decimal; 
    padding-left: 3px;
    margin-left: 12px;
    margin-bottom: 10px;
}
.content ol{ 
    counter-reset: item; 
}
.content ol li{
    display: block; 
}
.content ol li:before{ 
    content: counters(item, ".") ". "; 
    counter-increment: item;
    padding: 0 5px 0 10px;
}
.content ul ul ol li:after,
.content ol ul ol li:after{
    display: none;
}
.content table{
    width: 100%;
    margin-bottom: 30px;
}
.content table th {
    background: #ededed;
    font-weight: bold;
    padding: 0.5rem 1.2rem;
    vertical-align: middle;
    border: 1px solid #e5e5e5;
}
.content table td{
    border: 1px solid #E5E5E5;
    padding: 0.5rem 1.2rem;
    vertical-align: middle;
    font-weight: 100;
    font-size: 15px;
}
.content table .separate td{
    background: #F7F7F7;
    font-size: 17px;
    font-weight: normal;
}
q{
    display: block;
    padding: 40px;
    background: #eee;
    margin-bottom: 20px;
}
h1,
.title-h1{
    font-size: 38px;
    line-height: 1.3;
    font-family: 'Montserrat', sans-serif;  
    font-weight: bold;
    margin-bottom: 40px;
}
h2,
.title-h2{
    font-size: 36px;
    line-height: 1.3;
    font-family: 'Montserrat', sans-serif;  
    font-weight: bold;
    margin-bottom: 40px;  
}
h3,
.title-h3{
    font-size: 30px;
    line-height: 1.4;
    font-family: 'Montserrat', sans-serif;  
    font-weight: bold;
    margin-bottom: 30px;
}
h4,
.title-h4{
    font-size: 24px;
    line-height: 1.4;
    font-family: 'Montserrat', sans-serif;  
    font-weight: bold;
    margin-bottom: 30px;
}
h5,
.title-h6{
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;  
    font-weight: bold;
    margin-bottom: 20px;
}
@media (max-width: 991px) {
    blockquote,
    .page-introtext{
        margin-bottom: 30px;
        /* font-size: 22px; */
        font-size: 1.2em;
    }
    h1,
    .title-h1{
        font-size: 30px;
        margin-bottom: 35px; 
    }
    h2,
    .title-h2{
        font-size: 30px;
        margin-bottom: 35px;  
    }
    h3,
    .title-h3{
        font-size: 24px;
        margin-bottom: 25px;
    }
}
@media (max-width: 767px) {
    body {
        font-size: 16px;
    }
    blockquote,
    .page-introtext{
        font-size: 1.2em;
    }
    h1,
    .title-h1,
    h2,
    .title-h2{
        font-size: 28px;
        margin-bottom: 25px;
    }
    .content {
        line-height: 1.6;
    }
    h3,
    .title-h3{
        font-size: 24px;
        margin-bottom: 25px;
    }
    h4,
    .title-h4{
        font-size: 20px;
        margin-bottom: 20px;
    }
}
.light{
    font-weight: 100;
}
.red{
    color: #FF4632;
}
.white{
    color: #fff;
}
.black{
    color: #000;
}
.gray{
    color: #676767;
}
img[src$=".svg"],
img[src$=".SVG"]{
    width: 100%;
}
p{
    margin-bottom: 20px;
}
a{
    color: var(--blue);
    text-decoration: none;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
a:hover{
    /* color: #000; */
    color: var(--lightblue)
}
a:focus{
    outline: none;
}
.btn{
    display: inline-block;
    text-decoration: none;
    color: #fff;
    background: var(--blue);
    padding: 12px 35px;
    margin-bottom: 15px;
    position: relative;
    text-align: center;
    cursor: pointer;
    transition: all 200ms ease-out;
    border: 2px solid var(--blue);
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .03em;
}
.btn:hover{
    background: var(--blue);
    color: #fff;
    -webkit-filter: brightness(120%);
    filter: brightness(120%);
}
.btn.btn-transparent,
.btn.transparent-btn,
.btn.invert{
    background: transparent;
    color: var(--blue);
}
.btn.btn-transparent:hover,
.btn.transparent-btn:hover,
.btn.invert:hover{
    color: #000;
    background: var(--blue);
}
.btn.btn-white{
    background: #fff;
    border-color: #fff;
    color: var(--blue);
}
.btn.btn-white:hover{
    background: transparent;
    border-color: var(--blue);
}
.btn.block{
    display: block;
    width: 100%;
}
.btn.big{
    padding: 15px 45px;
}
.form-group{
    position: relative;
}
.modal {
    display: none;
    width: 560px;
    max-width: 100%;
    background: #fff;
    padding: 35px 25px 25px;
}
#responseMessage .modal-content.error{
    color: #FF4632;
}
/**************************************/

/* ======= AGREEMENT ======= */
/* Agreement */
.agreement {
	position: relative;
	margin-bottom: 30px;
	color: #7c7f8c;
}
.agreement input {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	visibility: hidden;
}
.agreement label {
	padding-left: 25px;
	display: inline-block;
	position: relative;
}
.agreement input+label:before {
	background: url(../images/check-empty.svg) 0 0 no-repeat;
	content: "";
	display: block;
	position: absolute;
	width: 17px;
	height: 17px;
	top: 5px;
	left: 0px;
}
.agreement input:checked+label:before {
	background: url(../images/checked.svg) 0 0 no-repeat;
}
.agreement input.error+label {
	color: red;
}
/* ======= /. AGREEMENT ======= */


/* PAGINATION */
.pagination {
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0 0;
}

.pagination li:last-of-type:after{
    content:"";
    display: block;
    width: 100%;
    height: 40px;
}
.pagination li {
	width: 50px;
	height: 50px;
}
.pagination li>span {
	cursor: default;
}
.pagination li>a,
.pagination li>span {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
	position: relative;
	color: #fff;
	text-decoration: none;
	background-color: #000;
	margin-bottom: 10px;
	border: 1px solid #fff;
	font-weight: bold;
}
.pagination li:first-child>a,
.pagination li:first-child>span {
	margin-left: 0;
}
.pagination li>a:hover {
	background-color: var(--blue);
}
.pagination .active>a,
.pagination .active>a:hover {
	background-color: var(--blue);
	color: #000;
	cursor: default;
}
/* /. PAGINATION */


/* mob-menu-btn begin */
.menu-button{
    position: fixed;
    right: 20px;
    top: 30px;
    width: 30px;
    height: 20px;
    cursor: pointer;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    z-index: 1010;
}
.icon-menu-burger {
    height: 2px;
    width: 30px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -1px 0 0 -15px;
    -webkit-transition: transform 0.2s ease 0s;
    -moz-transition: transform 0.2s ease 0s;
    -o-transition: transform 0.2s ease 0s;
    -ms-transition: transform 0.2s ease 0s;
    transition: transform 0.2s ease 0s;
    -webkit-transition: -webkit-transform 0.2s ease 0s;
}
.icon-menu-burger__line {
    background: #000;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: transform 0.2s linear 0.2s;
    -moz-transition: transform 0.2s linear 0.2s;
    -o-transition: transform 0.2s linear 0.2s;
    -ms-transition: transform 0.2s linear 0.2s;
    transition: transform 0.2s linear 0.2s;
    -webkit-transition: -webkit-transform 0.2s linear 0.2s;
}
.icon-menu-burger:before, 
.icon-menu-burger:after {
    background: #000;
    content: '';
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
}

.menu-button.active .icon-menu-burger__line,
.menu-button.active .icon-menu-burger:before, 
.menu-button.active .icon-menu-burger:after {
    background: #FF2C3E !important;
}
.icon-menu-burger:before {
    top: -9px;
    -webkit-transition: top 0.2s linear 0.4s;
    -moz-transition: top 0.2s linear 0.4s;
    -o-transition: top 0.2s linear 0.4s;
    -ms-transition: top 0.2s linear 0.4s;
    transition: top 0.2s linear 0.4s;
}
.icon-menu-burger:after {
    bottom: -9px;
    -webkit-transition: bottom 0.2s linear 0.4s;
    -moz-transition: bottom 0.2s linear 0.4s;
    -o-transition: bottom 0.2s linear 0.4s;
    -ms-transition: bottom 0.2s linear 0.4s;
    transition: bottom 0.2s linear 0.4s;
}
.menu-button.active .icon-menu-burger{
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: transform 0.2s linear 0.4s;
    -moz-transition: transform 0.2s linear 0.4s;
    -o-transition: transform 0.2s linear 0.4s;
    -ms-transition: transform 0.2s linear 0.4s;
    transition: transform 0.2s linear 0.4s;
    -webkit-transition: -webkit-transform 0.2s linear 0.4s;
}
.menu-button.active .icon-menu-burger__line{
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}
.menu-button.active .icon-menu-burger:before {
    -webkit-transition: top 0.2s linear;
    -moz-transition: top 0.2s linear;
    -o-transition: top 0.2s linear;
    -ms-transition: top 0.2s linear;
    transition: top 0.2s linear;
    top: 0;
}
.menu-button.active .icon-menu-burger:after {
    -webkit-transition: bottom 0.2s linear;
    -moz-transition: bottom 0.2s linear;
    -o-transition: bottom 0.2s linear;
    -ms-transition: bottom 0.2s linear;
    transition: bottom 0.2s linear;
    bottom: 0;
}
/* mob-menu-btn end */
.mobile-menu {
    position: fixed;
    top: 80px;
    bottom: 0;
    left: -1000px;
    width: 100%;
    max-width: 100%;
    z-index: 1000;
}
.mobile-menu-inner{
    background: #202020;
}
.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.8);
    z-index: -100;
    opacity: 0;
}
.mobile-menu li{
    position: relative;
}
.mobile-menu > div > ul > li {
    border-bottom: 1px solid rgba(255,255,255,0.1);
}
.mobile-menu > div > ul > li:first-of-type{
    border-top: 1px solid rgba(255,255,255,0.1);
}
.mobile-menu > div > ul > li.down > a {
    padding-right: 60px;
}
.mobile-menu .dropdown-button{
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    height: 55px;
    width: 55px;
    z-index: 10;
}
.mobile-menu .dropdown-button:before {
    content: "";
    display: block;
    position: absolute;
    width: 12px;
    height: 12px;
    top: 50%;
    left: 50%;
    margin-top: -8px;
    margin-left: -6px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 300ms ease-out;
    -moz-transition: all 300ms ease-out;
    -o-transition: all 300ms ease-out;
    transition: all 300ms ease-out;
}
.mobile-menu .dropdown-button.active:before{
    -moz-transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
    -o-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
    transform: rotate(225deg);
    margin-top: 0;
}
.mobile-menu > div > ul > li > ul {
    position: static;
    width: 100%;
    display: none;
}
.mobile-menu > div > ul  > li > a {
    display: block;
    text-decoration: none;
    color: #fff;
    padding: 15px 20px;
    font-size: 18px;
    letter-spacing: 1px;
}
.mobile-menu > div > ul  > li.active > a,
.mobile-menu > div > ul > li > ul > li.active > a,
.mobile-menu > div ul ul ul .active a{
    color: var(--lightblue);
    background: #272727;
}
.mobile-menu > div > ul > li > ul > li > a,
.mobile-menu > div ul ul ul a{
    display: block;
    font-size: 15px;
    line-height: 18px;
    text-decoration: none;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    padding: 14px 14px 14px 30px;
    color: #FFFFFF;
    position: relative;
}
.mobile-menu > div > ul > li > ul > li > a:before,
.mobile-menu > div ul ul ul a:before {
    content: "";
    display: block;
    position: absolute;
    top: 22px;
    left: 20px;
    width: 3px;
    height: 3px;
    background: var(--blue);
}
.mobile-menu > div ul ul ul a{
    padding: 6px 10px 6px 45px;
    font-size: 13px;
}
.mobile-menu > div ul ul ul a:before{
    left: 34px;
    top: 12px;
}
.mobile-menu .dropdown-button + ul {
    position: static;
    width: 100%;
    display: none;
    margin-bottom: 10px;
}
.mobile-menu ul ul .dropdown-button{
    height: 58px;
}
.mobile-menu ul ul .dropdown-button:before {
    content: "+";
    border: none;
    color: #fff;
    -moz-transform: rotate(0) !important;
    -webkit-transform: rotate(0) !important;
    -o-transform: rotate(0) !important;
    -ms-transform: rotate(0) !important;
    transform: rotate(0) !important;
    top: 25px !important;
    left: 55%;
    font-size: 24px;
    margin-top: -12px !important;
}
.mobile-menu .menu-button{
    display: none;
}
@media (max-width: 1349px) {
    .mobile-menu.open {
        left: 0;
    }
    .mobile-menu.open + .overlay {
        z-index: 500;
        opacity: 1;
    }
}

@media (max-width: 991px){
   .mobile-menu {
        overflow-y: scroll;
    }
}
@media (max-width: 600px) {
    .mobile-menu > div > ul > li > a {
        padding: 20px;
        font-size: 24px;
    }
    .mobile-menu > div > ul > li > ul > li > a, 
    .mobile-menu > div ul ul ul a{
        font-size: 20px;
        padding: 20px 20px 20px 40px;
    }
    .mobile-menu > div > ul > li > ul > li > a:before, 
    .mobile-menu > div ul ul ul a:before {
        top: 26px;
        left: 20px;
        width: 6px;
        height: 6px;
    }
    .mobile-menu .dropdown-button{
        height: 75px;
    }
    .mobile-menu .dropdown-button:before {
        width: 16px;
        height: 16px;
        margin-top: -12px;
    }
    .mobile-menu .dropdown-button.active:before {
        margin-top: -6px;
    }
}
@media (max-width: 440px) {
    .mobile-menu-close {
        top: 26px;
        right: 10px;
    }
    .mobile-menu .menu-button{
        display: block;
        position: absolute;
    }
}
@media(min-width: 768px){
    .mobile-menu{
        display: none !important;
    }
}
/************* /. mobile-menu **************/


/* ======= HEADER ======= */
.header{
    background: #fff;
}
.header-inner{
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.header-contacts{
    display: flex;
    /* width: 65%; */
    /* justify-content: space-between; */
    flex: 1;
    justify-content: space-evenly;
    padding-left: 30px;
}
.header-address{
    font-size: 16px;
    color: #000;
    margin-right: 10px;
    display: flex;
    align-items: center;
}
.header-address span,
.header-phone span{
    display: flex;
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    border: 1px solid var(--blue);
    color: var(--blue);
    font-size: 20px;
    margin-right: 10px;
    align-items: center;
    justify-content: center;
}
.header-phone{
    font-weight: bold;
    display: flex;
    align-items: center;
}
.header-phone a{
    color: #000;
}
.header-phone a:hover{
    color: var(--blue);
}
@media(max-width: 991px){
    .header-contacts{
        flex-wrap: wrap;
        padding: 0 20px;
    }
    .header-contacts > div{
        width: 100%;
        margin-bottom: 10px;
    }
    .header-contacts > div:last-of-type{
        margin-bottom: 0;
    }
    .header-address,
    .header-phone{
        font-size: 14px;
    }
    .header-address span, 
    .header-phone span {
        width: auto;
        height: auto;
        font-size: 17px;
        margin-right: 5px;
        border: none;
        margin-top: -2px;
    }
}
@media(max-width: 767px){
    .header{
        height: 80px;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 600;
        box-shadow: 0 2px 2px rgba(0,0,0,.2);
    }
    .header-inner,
    .header-push{
        height: 80px;
    }
    
    .header-address span, 
    .header-phone span {
        width: 20px;
        height: 20px;
        font-size: 12px;
    }
}
@media(max-width: 600px){
    .logo{
        width: 170px;
    }
    .header-address, .header-phone{
        font-size: 16px;
    }
    .header-address span, 
    .header-phone span{
        display: none;
    }
    .header-inner{
        justify-content: flex-start;
    }
    .header-contacts {
        width: 100%;
        display: none;
    }
}
/* ======= /. HEADER ======= */


/* ======= TOP MENU ======= */
.top-menu-wrapper{
    background: #000;
}
.top-menu{
    font-family: 'Montserrat', sans-serif;
    padding: 5px 0;
}
.top-menu > ul{
    display: flex;
    justify-content: space-between;
}
.top-menu > ul > li{
    position: relative;
    flex-grow: 1;
    text-align: center;
    white-space: nowrap;
}
.top-menu > ul > li:before{
    content: "";
    position: absolute;
    right: 0;
    height: 60%;
    width: 1px;
    top: 20%;
    background: var(--lightblue);
    z-index: 1;
}
.top-menu > ul > li:last-of-type:before{
    display: none;
}
.top-menu > ul > li > a{
    font-weight: 600;
    color: #fff;
    text-transform: uppercase;
    font-size: 15px;
    padding: 1rem 0.8rem;
    display: inline-block;
}
.top-menu > ul > li > a:hover,
.top-menu > ul > li.active > a{
    color: var(--lightblue);
}
.top-menu > ul > li > ul {
    position: absolute;
    width: 280px;
    top: calc(100% + 5px);
    left: 0;
    text-align: left;
    z-index: 300;
    visibility: hidden;
    opacity: 0;
    transition: all 200ms ease-out;
    box-shadow: 0 2px 2px rgba(0,0,0,0.3);
    white-space: normal;
}
.top-menu > ul > li > ul:before{
    content:"";
    display: block;
    position: absolute;
    width: 100%;
    height: 13px;
    top: -13px;
    left: 0;
}
.top-menu > ul > li:hover > ul {
    visibility: visible;
    opacity: 1;
}
.top-menu > ul ul li > a {
    background: #fff;
    padding: 15px;
    display: block;
    font-size: 14px;
    line-height: 18px;
    color: #000;
    text-decoration: none;
    position: relative;
    border-bottom: 1px solid #F1F2F2;
}
.top-menu > ul ul li > a:hover{
    background: #F1F2F2;
}
.top-menu > ul ul li.active > a{
    color: var(--blue);
}
.top-menu ul ul ul {
    position: absolute;
    width: 280px;
    top: 0;
    left: 100%;
    text-align: left;
    z-index: 300;
    visibility: hidden;
    opacity: 0;
    transition: all 200ms ease-out;
    box-shadow: 0 2px 2px rgba(0,0,0,0.3);
}
.top-menu ul ul li{
    position: relative;
}
.top-menu ul ul li:hover > ul{
    visibility: visible;
    opacity: 1;
}
@media(max-width:1349px){
    .top-menu > ul > li > a{
        font-size: 14px;
    }
}
@media(max-width:1169px){
    .top-menu > ul > li > a{
        font-size: 13px;
    }
}

@media(min-width:768px){
    .top-menu-wrapper.fixed{
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 600;
    }
    .top-menu-wrapper.fixed + .top-menu-wrapper-push{
        height: 51px;
    }
}
/* ======= /. TOP MENU ======= */

/* ======= INDEX FIRST SECTION ======= */
.index-first-section{
    height: 600px;
    position: relative;
    background-color: #E0E0E0;
}
.index-first-section .section-bg{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.index-first-section .section-bg img{
    width: 100%;
    height: 100%;
    object-fit:cover;
}
.index-first-section .section-content{
    position: relative;
    z-index: 1;
    height: 100%;
    display: flex;
    align-items: center;
    padding-bottom: 70px;
    background: url(../images/bg-shape-2-2.png) top 80px left -50px no-repeat;
}
.index-first-section .section-content-inner{
    width: 50%;
}
.index-first-section h1{
    font-size: 34px;
}
.index-first-section h1 span{
    background: var(--blue);
    color: #fff;
    padding: 0 1rem;
}
@media(max-width:1349px){
    .index-first-section{
        height: 550px;
    }
    .index-first-section h1{
        font-size: 30px;
    }
}
@media(max-width:1169px){
    .index-first-section{
        height: 500px;
    }
    .index-first-section h1{
        font-size: 24px;
    }
}
@media(max-width:991px){
    .index-first-section{
        height: 50vw;
    }
    .index-first-section h1{
        font-size: 2.5vw;
        margin-bottom: 3vw;
    }
    .index-first-section .section-subtitle{
        font-size: 1.5vw;
    }
}
@media(max-width:600px){
    .index-first-section .section-content-inner{
        width: 60%;
    }
    .index-first-section {
        height: 70vw;
    }
    .index-first-section h1{
        font-size: 4.5vw;
        margin-bottom: 3vw;
    }
    .index-first-section .section-subtitle{
        font-size: 3.5vw;
    }
    .index-first-section .section-content{
        padding-bottom: 0;
    }
}
@media(max-width:500px){
    .index-first-section {
        height: 80vw;
    }
}
@media(max-width:400px){
    .index-first-section {
        height: 90vw;
    }
}
/* ======= /. INDEX FIRST SECTION ======= */


/* ======= SERVICES SECTION ======= */
.index-template .services-section{
    position: relative;
    padding: 0 0 70px;
}
.index-template .services-list{
    background: #fff;
    padding: 70px 30px 50px;
    margin-top: -70px;
    box-shadow: 0 0 30px rgba(0,0,0,0.1);
}
.services-list h2{
    font-size: 34px;
}
.services-list .row{
    display: flex;
    flex-wrap: wrap;
}
.services-list .row > div{
    margin-bottom: 20px;
}
.services-list .element{
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    border-bottom: 2px solid var(--blue);
    width: 420px;
    max-width: 100%;
    margin: 0 auto;
}
.services-list .element .element-img{
    height: 230px;
    background-size: cover;
    background-repeat: no-repeat;
}
.services-list .element .title{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 80px;
    background: #fff;
    padding: 0 25px;
    font-weight: bold;
    color: #000;
    line-height: 1.2;
    font-family: 'Montserrat', sans-serif;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
.services-list .element:hover{
    border-bottom-color: var(--blue);
    box-shadow: 0 0 5px rgba(0,0,0,0.5);
}
.services-list .element:hover .title{
    color: var(--blue);
}
@media(max-width:1349px){
    .services-list h2{
        font-size: 30px;
    }
}
@media(max-width:1169px){
    .services-list h2{
        font-size: 24px;
    }
}
@media(max-width:600px){
    .index-template .services-section{
        padding: 70px 0;
    }
    .index-template .services-list {
        background: transparent;
        margin-top: 0;
    }
    .section-subtitle br{
        display: none;
    }
}
/* ======= /. SERVICES SECTION ======= */

.content{
    line-height: 1.4;
}
.more{
    font-family: 'Montserrat', sans-serif;
    position: relative;
    font-style: italic;
    display: inline-block;
    padding-left: 50px;
}
.more:before{
    content:"";
    display: block;
    position: absolute;
    width: 40px;
    height: 1px;
    top: 50%;
    left: 0;
    background: #000;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
.more:hover:before{
    background: #000;
}




.portfolio-carousel-wrapper{
    width: 100%;
    overflow: hidden;
}
.portfolio-carousel-inner{
    margin: 0 -15px;
}
.portfolio-carousel > div{
    display: none;
}
.portfolio-carousel > div:first-of-type,
.portfolio-carousel.slick-slider > div{
    display: block;
}
.portfolio-carousel .slick-track{
    padding: 5px 0;
    display: flex;
    flex-wrap: wrap;
}
.portfolio-carousel .slick-slide {
    height: inherit;
}
.portfolio-carousel .element{
    margin-bottom: 30px;
    padding: 0 15px;
}
.portfolio-carousel .item > div:last-of-type{
    margin-bottom: 0;
}
.portfolio-carousel .element.big{
    margin-bottom: 0;
    height: 100%;
}
.portfolio-carousel .element.big a{
    height: 100%;
}
.portfolio-carousel .element.big a img{
    width: 100%;
    height: 100%;
    object-fit:cover;
}
.portfolio-carousel .element a{
    display: block;
    position: relative;
}
.portfolio-carousel .element a:after{
    content:"";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0,0,0,0.3);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    opacity: 0;
}
.portfolio-carousel .element:hover a:after{
    opacity: 1;
}

.slick-prev,
.slick-next{
    width: 60px;
    height: 60px;
    border: 2px solid #000000;
    top: 50%;
    margin-top: -30px;
    border-radius: 0;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    opacity: 0.5;
}
.slick-prev{
    left: -80px;
}
.slick-next{
    left: auto;
    right: -80px;
}
.slick-prev:after,
.slick-next:after{
    content:"";
    display: block;
    position: absolute;
    width: 20px;
    height: 2px;
    top: 50%;
    left: 50%;
    margin-top: -1px;
    margin-left: -10px;
    background: #000;
}
.slick-prev:before{
    content:"";
    display: block;
    position: absolute;
    width: 10px;
    height: 10px;
    top: 50%;
    left: 17px;
    border-bottom: 2px solid #000;
    border-left:2px solid #000;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px;
}
.slick-next:before{
    content:"";
    display: block;
    position: absolute;
    width: 10px;
    height: 10px;
    top: 50%;
    right: 17px;
    border-top: 2px solid #000;
    border-right:2px solid #000;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px;
}
.slick-prev:hover,
.slick-next:hover{
    opacity: 1;
}

@media(max-width:1490px){
    .slick-prev,
    .slick-next{
        display: none !important;
    }
}

.features .row{
    display: flex;
    flex-wrap: wrap;
}
.features .row > div{
    margin-bottom: 30px;
}
.features .element{
    height: 100%;
    background: #eee;
    padding-left: 135px;
    font-size: 16px;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    color: #000;
    line-height: 1.6;
}
.features .element .img-wrapper{
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    width: 135px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 25px;
}
.features .element-content{
    padding: 40px 20px 40px 0;
}
.features .element .title{
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 18px;
}
.features .row{
    margin-left: -15px;
    margin-right: -15px;
}
.features .row > div[class^="col-"]{
    padding-left: 15px;
    padding-right: 15px;
}
@media (max-width: 1349px) {
    .features .element{
        font-size: 14px;
    }
    .features .element .title{
        font-size: 16px;
    }
    .features .element .img-wrapper{
        width: 110px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .features .element{
        padding-left: 120px;
    }
}
@media (max-width: 991px) {
    .features .element{
        font-size: 16px;
    }
}
@media (max-width: 767px) {
    .features .element .text{
        font-size: 14px;
    }
}

.way-wrapper{
    padding-left: 40%;
    background: #fff;
}
.way-wrapper .video-block{
    width: 40%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    background-color: #000;
    background-size: cover;
}
.way-wrapper .content-block{
    padding: 80px;
}
.way-wrapper.not-video{
    padding-left: 0;
}
.way-wrapper.not-video .content-block{
    padding: 0;
}
.way-wrapper .content-block .row{
    display: flex;
    flex-wrap: wrap;
}
.way-wrapper .element{
    margin-bottom: 40px;
    font-size: 18px;
    line-height: 1.6;
}
.way-wrapper .element .num{
    font-family: 'Montserrat', sans-serif;
    color: var(--blue);
    font-weight: bold;
    font-size: 68px;
    margin-bottom: 10px;
}
.video-block a{
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    background: rgba(255,255,255,0.1);
    border-radius: 100%;
    width: 110px;
    height: 110px;
    margin-top: -55px;
    margin-left: -55px;
    z-index: 10;
    -webkit-transition: right 1ms ease-out;
    -moz-transition: right 1ms ease-out;
    -o-transition: right 1ms ease-out;
    transition: right 1ms ease-out;
}
.video-block a span{
    display: block;
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 10px;
    right: 10px;
    border-radius: 100%;
    border: 1px solid rgba(255,255,255,0.5);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
.video-block a span:after {
    content: "";
    display: inline-block;
    border-left: 20px solid var(--blue);
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -13px;
    margin-left: -6px;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
.video-block a:hover span:after{
    border-left-color: #F53300;
}
@media (max-width: 1349px) {
    .way-wrapper .content-block{
        padding: 60px 50px;
    }
    .way-wrapper .element{
        font-size: 15px;
    }
}
@media (max-width: 991px) {
    .way-wrapper .element{
        margin-bottom: 20px;
    }
    .way-wrapper .content-block{
        padding: 55px 50px 40px;
    }
}
@media (max-width: 767px) {
    .way-wrapper{
        padding-left: 0;
    }
    .way-wrapper .video-block{
        width: 100%;
        position: relative;
        height: 60vw;
    }
}
@media (max-width: 450px) {
    .way-wrapper .content-block{
        padding: 45px 30px 30px;
    }
}
.gallery-inner{
    margin: 0 -15px;
}
.gallery-carousel > div{
    display: none;
}
.gallery-carousel > div:first-of-type,
.gallery-carousel.slick-slider > div{
    display: block;
}
.gallery-carousel .element{
    padding: 0 15px;
}
.gallery-carousel .element a{
    display: block;
    position: relative;
}
.gallery-carousel .element a:after{
    content:"";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0,0,0,0.3);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    opacity: 0;
}
.gallery-carousel .element:hover a:after{
    opacity: 1;
}

.footer-wrapper{
    color: #9F9F9F;
}
.footer-wrapper .row .col-12 {
    margin-bottom: 30px;
}
.footer-wrapper a {
    color: #fff;
}
.footer-wrapper a:hover {
    color: var(--lightblue)
}
.footer-wrapper p {
    margin-bottom: 10px;
}
.footer__catalog {
    display: flex;
    flex-direction: column;
    margin: 0 0 20px;
}
.footer__catalog-shop a {
    opacity: 0.7;
    text-decoration: underline;
}
.footer__catalog-shop a:hover {
    opacity: 1;
    text-decoration: none;
}
.footer__payments {
    margin: 20px 0;
}
.footer__payments img:not(:last-child) {
    margin-right: 10px;
}
.footer__catalog a:not(:last-child) {
    margin-bottom: 10px;
}
.footer-top{
    min-height: 180px;
    padding: 50px 0 45px 300px;
}
.footer-menu-wrapper{
    padding-right: 220px;
    margin-bottom: 40px;
}
.footer-menu li{
    display: inline-block;
    margin-right: 40px;
}
.footer-menu li:last-of-type{
    margin-right: 0;
}
.footer-menu a{
    font-family: 'Montserrat', sans-serif;
    color: #fff;
    font-weight: bold;
    font-size: 12px;
    text-transform: uppercase;
}
.footer-menu a:hover{
    color: var(--lightblue);
}
.footer-social{
    /* position: absolute;
    top: 0;
    right: 0; */
    display: flex;
    flex-direction: row;
    align-items: center;
}
.social a{
    display: inline-block;
    width: 30px;
    height: 30px;
    text-align: center;
    border: 1px solid rgba(255,255,255,0.3);
    color: #fff;
    line-height: 30px;
    font-size: 13px;
    margin-left: 4px;
}
.social a:hover{
    border-color: var(--lightblue);
    color: var(--lightblue);
}

.footer-bottom {
    font-size: 14px;
    padding: 30px 0;
    border-top: 1px solid rgba(255,255,255,0.1);
}
.footer-bottom a {
    color: #fff;
}
.footer-contacts span{
    margin-right: 40px;
    font-size: 16px;
}
.footer-contacts span:last-of-type{
    margin-right: 0;
}
.footer-contacts span b{
    margin-right: 15px;
}
.development a:hover{
    color: #fff;
}

@media (min-width: 768px) {
    .footer-wrapper {
        text-align: left;
    }
}

@media (max-width: 1349px) {
    .footer-menu a{
        font-size: 12px;
    }
}
@media (max-width: 991px) {
    .footer-menu{
        display: none;
    }
    .footer-top {
        padding: 50px 0 45px 0;
    }
    .footer-logo {
        position: static;
        margin-bottom: 40px;
    }
    .footer-menu-wrapper {
        padding-right: 0;
    }
    .footer-social {
        position: static;
    }
}

.pagetitle-block{
    /* height: 250px; */
    /* overflow: hidden; */
    display: flex;
    align-items: center;
    padding: 40px 0 20px;
}

.pagetitle-block h1{
    margin: 0 0 25px;
    font-size: 50px;
}
@media(min-width:1921px){
    .pagetitle-block{
        background-size: cover;
    }
}
@media (max-width: 991px) {
    .pagetitle-block h1{
        font-size: 42px;  
    }
}
@media (max-width: 767px) {
    .pagetitle-block h1{
        font-size: 28px; 
    }
}

.about-items .item{
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    margin-bottom: 30px;
}
.about-items .item .img-wrapper img{
    width: 100%;
}
.about-items > div:nth-of-type(odd) .content-wrap{
    padding-left: 50px;
}
.about-items > div:nth-of-type(even) .content-wrap{
    padding-right: 50px;
    height: 100%;
    display: flex;
    align-items: center;
}
.about-items .item blockquote{
    padding-left: 0;
    padding-right: 0;
}
blockquote.quote{
    position: relative;
    padding-top: 70px;
}
blockquote.quote:before{
    background: url(../images/quote.png) 0 0 no-repeat;
    content:"";
    display: block;
    position: absolute;
    width: 53px;
    height: 36px;
    top: 0;
    left: 50%;
    margin-left: -26px;
}
@media (max-width: 1349px) {
    .about-items > div:nth-of-type(odd) .content-wrap{
        padding-left: 30px;
        font-size: 15px;
    }
    .about-items > div:nth-of-type(even) .content-wrap{
        padding-right: 30px;
        font-size: 15px;
    }
}
@media (max-width: 991px) {
    .about-items > div:nth-of-type(odd) .content-wrap,
    .about-items > div:nth-of-type(even) .content-wrap{
        padding: 0;
    }
    .about-items .item{
        height: auto;
        margin-bottom: 50px;
    }
    .about-items .item .img-wrapper{
        padding-top: 30px;
    }
}
.contacts-section .element{
    margin-bottom: 20px;
}
.contacts-section .element .title{
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 16px;
}
.contacts-section .element a{
    color: #000;
}
.contacts-section .element a:hover{
    color: var(--blue);
}
.contacts-section .whatsapp{
    margin-right: 5px;
    bottom: -8px;
    position: relative;
}
.contacts-section .whatsapp svg{
    width: 0.7em;
    color: #07E26B;
}
.contacts-section .viber{
    margin-right: 5px;
    bottom: -8px;
    position: relative;
}
.contacts-section .viber svg{
    width: 1.4em;
    color: #78408A;
}
.contacts-section .item-phone{
    margin-right: 5px;
    bottom: -8px;
    position: relative;
}
.contacts-section .item-phone svg{
    width: 0.74em;
    color: var(--blue);
}
.contacts-section .social a{
    color: #202020;
    border-color: #202020;
    margin: 15px 5px 0 0;
}
.contacts-section .social a:hover{
    color: var(--blue);
    border-color: var(--blue);
}
@media (max-width: 991px) {
    .feedback-block{
        padding: 30px;
    }
}
.services-video-section{
    border-top: 2px solid #000000;
}
.services-video-section .content{
    padding-right: 50px;
}
.services-video-section .video-block{
    width: 630px;
    max-width: 100%;
    position: relative;
}
@media (max-width: 991px) {
    .services-video-section .content{
        padding-right: 0;
    }
}


@media (min-width: 1350px){
    .main-column{
        padding-left: 70px;
    }
}


/* ======= ASIDE MENU ======= */
.aside-menu,
.aside-block{
    width: 310px;
    max-width: 100%;
    margin-bottom: 40px;
}
.aside-menu{
    -webkit-transition: all 200ms ease;
    -moz-transition: all 200ms ease;
    -o-transition: all 200ms ease;
}
.aside-menu > ul{
    background: #fff;
    padding: 0 15px 15px;
}
.aside-menu ul ul{
    padding-left: 10px;
}
.aside-menu a {
    display: block;
    border-bottom: 1px solid #F0F0F0;
    color: #484848;
    padding: 10px 36px 10px 0;
    font-size: 16px;
    position: relative;
}
.aside-menu > ul > li:last-of-type > a{
    border-bottom: none;
}
.aside-menu li:hover > a,
.aside-menu .open > a,
.aside-menu .active > a{
    color: var(--blue) !important;
}
.aside-menu > ul > li.active > a:before{
    content:"";
    display: block;
    position: absolute;
    width: 2px;
    height: 16px;
    top: 50%;
    margin-top: -8px;
    left: -20px;
    background: var(--blue);
}
.aside-menu > ul ul{
    display: none;
}
.aside-menu .active > ul{
    display: block;
}
.aside-menu > ul li{
    position: relative;
}
.aside-menu > ul .dropdown-button{
    height: 43px;
    width: 36px;
    display: block;
    z-index: 20;
    top: 0;
    right: 0;
    position: absolute;
    cursor: pointer;
}
.aside-menu > ul .dropdown-button:after {
    content: "";
    display: block;
    position: absolute;
    width: 8px;
    height: 8px;
    top: 17px;
    right: 15px;
    border-bottom: 1px solid #1f1f1f;
    border-right: 1px solid #1f1f1f;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
.aside-menu > ul .dropdown-button.active:after{
    -moz-transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
    -o-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
    transform: rotate(225deg);
    top: 20px;
}

.aside-menu-title {
    padding: 15px 42px 15px 20px;
    background: var(--blue);
    position: relative;
    color: #fff;
    text-transform: uppercase;
    font-weight: bold;
}
.aside-menu-title:after {
    content: "";
    display: block;
    position: absolute;
    width: 3px;
    height: 13px;
    top: 50%;
    right: 27px;
    background: #fff;
    margin-top: -5px;
}
.active .aside-menu-title:after {
    display: none;
}
.aside-menu-title:before{
    content: "";
    display: block;
    position: absolute;
    width: 13px;
    height: 3px;
    top: 50%;
    right: 27px;
    background: #fff;
    margin-right: -5px;
}
@media only screen and (max-width: 991px) {
    .aside-menu,
    .aside-block{
        width: 100%;
    }
    .aside-menu > ul {
        display: none;
        box-shadow: inset 0 0 1px rgba(0,0,0,0.4);
    }
    .aside-menu.active > ul{
        display: block;
    }
    .aside-menu > ul{
        padding: 10px;
    }
    .aside-menu > ul > li.active > a:before{
        display: none;
    }
}

@media (max-width: 600px) {
    .aside-menu-title {
        padding: 20px 46px 18px 20px;
        font-size: 16px;
    }
    .aside-menu a {
        /* padding: 25px 36px 25px 20px; */
        padding: 15px 46px 15px 10px;
        font-size: 16px;
    }
    .aside-menu ul ul a {
        /* padding: 20px 36px 18px 35px; */
        padding: 10px 46px 8px 15px;
        font-size: 16px;
    }
    .aside-menu > ul .dropdown-button{
        top: 13px;
        height: 26px;
        width: 26px;
    }
    .aside-menu > ul .dropdown-button:after {
        width: 18px;
        height: 18px;
        top: 0;
        right: 4px;
    }
    .aside-menu > ul .dropdown-button.active:after {
        top: 18px;
    }
    .aside-menu-title:before{
        width: 26px;
        height: 3px;
    }
    .aside-menu-title:after {
        height: 26px;
        top: 50%;
        right: 33px;
        margin-top: -11px;
        width: 3px;
    }
}
/* ======= /. ASIDE MENU ======= */

.main-column .video-block{
    width: 100%;
    height: 415px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    background-color: #2C2C2C;
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.main-column .video-block .title{
    font-family: 'Montserrat', sans-serif;
    color: #fff;
    font-weight: bold;
    font-size: 24px;
    text-align: center;
    z-index: 5;
    position: relative;
    width: 100%;
}
.main-column .video-block a{
    position: relative;
    top: auto;
    left: auto;
    margin: auto;
}
.promo-block{
    border: 5px solid var(--blue);
    padding: 50px;
    margin-bottom: 40px;
}
.promo-block .block-phone a{
    font-size: 24px;
    color: #000;
    font-weight: bold;
}
.promo-block .block-phone a:hover{
    color: var(--blue);
}
.promo-block .block-phone i {
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 100%;
    border: 1px solid var(--blue);
    color: var(--blue);
    font-size: 20px;
    margin-right: 10px;
    vertical-align: middle;
    margin-top: -6px;
}

.aside-contacts-icons .icon-element{
    text-align: center;
    height: 90px;
    background: #242424;
    position: relative;
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    display: flex;
    align-items: center;
    justify-content: center;
}
.aside-contacts-icons svg{
    width: 30px;
    color: #fff;
}
.aside-contacts-icons .icon-element.el-1{
    background: var(--blue);
}
.aside-contacts-icons .icon-element.el-2{
    background: #5E65FB;
}
.aside-contacts-icons .icon-element.el-3{
    background: #07E26B;
}
.aside-contacts-icons .icon-element.el-4{
    background: #25a3e1;
}
.aside-contacts-icons .icon-element.el-1 svg{
    width: 25px;    
}
.aside-contacts-icons .icon-element.el-2 svg{
    width: 27px;
}

.aside-contacts-icons .icon-element.el-1:hover{
    background: #F35C41;
}
.aside-contacts-icons .icon-element.el-2:hover{
    background: #514EF9;
}
.aside-contacts-icons .icon-element.el-3:hover{
    background: #22CD55;
}
.aside-contacts-icons .icon-element.el-4:hover{
    background: #1A9BDB;
}

.portfolio .element{
    margin-bottom: 20px;
}
.portfolio .element img{
    width: 100%;
}
.portfolio .element a{
    position: relative;
    display: block;
}
.portfolio .element a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0,0,0,0.3);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    opacity: 0;
}
.portfolio .element:hover a:after{
    opacity: 1;
}
.page-menu li{
    display: inline-block;
    margin: 0 5px 10px;
}
.page-menu li a{
    display: block;
    padding: 10px 30px;
    background: #eee;
    color: #000;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: bold;
}
.page-menu li.active a,
.page-menu li a:hover{
    background: var(--blue);
    color: #fff;
}

.brands-carousel > div{
    display: none;
}
.brands-carousel > div:first-of-type,
.brands-carousel.slick-slider > div{
    display: block;
}
.brands-carousel .slick-track{
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
}
.brands-carousel .slick-slide {
    height: inherit;
}
.brands-carousel .item{
    display: flex;
    align-items: center;
    justify-content: center;
}
.brands-carousel .item a{
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    filter: gray;
    opacity: 0.8;
    transition: all 300ms ease-out;
}
.brands-carousel .item a:hover{
    -webkit-filter: none;
    -moz-filter: none;
    -ms-filter: none;
    -o-filter: none;
    filter: none;
    filter: none;
    opacity: 1;
}

/* MAP */
.map-wrapper{
    height: 500px;
}
@media(max-width: 991px) {
    .map-wrapper{
        height: 400px;
    }
}
/* /. MAP */


/* NEWS */
.news-section{
    background: url(../images/bg1.jpg) 50% 50% no-repeat;
}
.news .row{
    display: flex;
    flex-wrap: wrap;
}
.news .row > div{
    margin-bottom: 30px;
}
.news .item{
    background: #fff;
    height: 100%;
    transition: all 300ms ease-out;
    position: relative;
    box-shadow: 0 0 0 1px rgba(0,0,0,0.05);
}
.news .img-wrapper{
    position: relative;
    width: 100%;
    overflow: hidden;
}
.news .img-wrapper img{
    transition: all 300ms ease-out;
}
.news .item-date{
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 100%;
    padding: 0 15px;
    margin: 0 0 0 -14px;
    white-space: nowrap;
    font-size: 14px;
    line-height: 28px;
    color: #000;
    z-index: 3;
    -webkit-transform: translateX(-50%) translateY(-50%) rotate(-90deg);
    -ms-transform: translateX(-50%) translateY(-50%) rotate(-90deg);
    transform: translateX(-50%) translateY(-50%) rotate(-90deg);
    background: var(--blue);
    min-width: 140px;
    text-align: center;
}
.news .item-body{
    padding: 30px;
}
.news .item-title{
    font-size: 18px;
    line-height: 1.5;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    margin-bottom: 15px;
    text-transform: uppercase;
}
.news .item-description{
    font-size: 16px;
    margin-bottom: 20px;
    line-height: 1.7;
    color: #747474;
}
.news .item .more{
    position: relative;
    z-index: 10;
}
.index-template .news .item:hover{
    box-shadow: 0 0 10px rgba(0,0,0,0.3);
}
.news .item:hover .img-wrapper img{
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
}
@media(min-width: 1350px){
    .news .row{
        margin-left: -15px;
        margin-right: -15px;
    }
    .news .row > div{
        padding-left: 15px;
        padding-right: 15px;
    }
}
@media(max-width: 1349px){
    .news .item-body{
        padding: 25px;
    }
    .news .item-title{
        font-size: 17px;
        line-height: 1.4;
        margin-bottom: 12px;
    }
    .news .item-description{
        font-size: 15px;
        margin-bottom: 18px;
        line-height: 1.6;
    }
    .news .more{
        font-size: 15px;
    }
}
@media(max-width: 991px){
    .news .item-body{
        padding: 20px;
    }
    .news .item-title{
        font-size: 16px;
        margin-bottom: 10px;
    }
    .news .item-description{
        font-size: 14px;
        margin-bottom: 15px;
    }
    .news .more{
        font-size: 14px;
    }
}
/* /. NEWS */

/* PRICE */
.price-section-file {
    position: absolute;
    left: 0;
    top: -5px;
    width: 128px;
    margin-bottom: 30px;
    line-height: 1.2;
}
.price-section-file img{
    margin-bottom: 5px;
}
.price-section-file + .price-list {
    padding-left: 180px;
}
.accordeon .item{
    background-color: #ffffff;
    box-shadow: 0px 0px 40px 5px rgba(0, 0, 0, 0.05);
    margin-bottom: 30px;
}
.accordeon > div:last-of-type{
    margin-bottom: 0;
}
.accordeon .item-content{
    display: none;
    padding: 0 20px 40px;
}
.accordeon > div:first-of-type .item-content{
    display: block;
}
.accordeon .item-content table{
    margin-bottom: 0;
}
.price-list table th{
    line-height: 1.2;
    padding: 1.2rem;
}
.price-list table td:first-child {
    font-weight: bold;
    text-align: left;
    padding: 0.5rem 1.2rem;
    min-width: 130px;
}
.accordeon .item-title{
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.5px;
    cursor: pointer;
    padding: 20px;
    transition: all 300ms ease-out;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.accordeon .active .item-title,
.accordeon .item-title:hover{
    color: var(--blue);
}
.accordeon .item-title-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    transition: all 300ms ease-out;
    color: #ccc;
}
.accordeon .item-title:hover .item-title-icon{
    color: var(--blue);
}
.accordeon .item-title-icon svg{
    width: 23px;
    height: 30px;
}
.accordeon .active .item-title-icon{
    transform: rotate(45deg);
    color: #FF0000 !important;
}

@media(max-width:991px){
    .price-section-file {
        position: static;
    }
    .price-section-file + .price-list {
        padding-left: 0;
    }
    .price-list table th,
    .price-list table td{
        font-size: 14px;
    }
}
@media(max-width:767px){
    .price-list table th,
    .price-list table td{
        font-size: 13px;
    }
}
/* /. PRICE */




/****************************************** SHOP */
.msMiniCart{
    margin-left: 15px;
}
.ms-minicart-inner{
    position: relative;
    display: flex;
    align-items: center;
}
.ms-minicart-inner .ms2_total_count{
    display: inline-block;
    background: var(--blue);
    color: #fff;
    min-width: 15px;
    height: 15px;
    line-height: 15px;
    text-align: center;
    border-radius: 10px;
    font-size: 10px;
    margin-left: 5px;
    padding:0 5px;
}

@media(max-width:767px){
    .msMiniCart{
        position: relative;
        right: 50px;
        margin-left: auto;
    }
}

.nav-title{
    padding: 15px 42px 15px 20px;
    background: var(--blue);
    position: relative;
    color: #fff;
    text-transform: uppercase;
    font-weight: bold;
}
@media(max-width:1169px){
    .nav-title{
        font-size: 13px;
    }
}

.catalog > .row{
    display: flex;
    flex-wrap: wrap;
}
.catalog > .row > div{
    margin-bottom: 30px;
}
.catalog .item{
    position: relative;
}
.catalog .item-img{
    margin-bottom: 15px;
    position: relative;
}
.catalog .item-img-inner{
    overflow: hidden;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.catalog .item-title{
    font-weight: 700;
    text-transform: uppercase;
    color: #000;
    font-size: 15px;
    line-height: 1.2em;
    letter-spacing: .03em;
    word-wrap: break-word;
}
.catalog .item-content{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.catalog .item-price{
    font-family: 'Montserrat', sans-serif;
    display: flex;
    align-items: center;
    font-size: 14px;
    text-transform: uppercase;
    color: #a3a3a3;
    padding-left: 15px;
    white-space: nowrap
}
.catalog .item .old-price{
    margin-right: 10px;
}

.catalog .item-btn-wrap{
    height: 44px;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -44px;
    transition: all 300ms ease-out;
}
.catalog .item-btn-wrap .btn{
    margin-bottom: 0;
    font-size: 12px;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .03em;
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
    z-index: 10;
    width: 210px;
}
.catalog .item:hover .item-btn-wrap{
    bottom: 0;
}
.catalog .item-btn-wrap .btn:hover{
    background: var(--blue);
    color: #fff;
    -webkit-filter: brightness(120%);
    filter: brightness(120%);
}

.hidden.btn-checkout,
.btn-to-cart.hidden{
    display: none !important;
}
@media(max-width:1169px){
    .catalog .item-title{
        font-size: 13px;
    }
}

.product-section{
    padding-top: 59px;
}
@media(min-width:1921px){
    .product-section{
        background-size: 100% auto;
    }
}

@media(min-width:992px){
    .product-info{
        padding-left: 60px;
    }
    .col-xs-12 + div > .product-info{
        padding-left: 0;
    }
}
.item-zoom{
    display:inline-block;
	position: relative;
	cursor: crosshair;
}
.item-zoom img {
	display: block;
}
.product-gallery-carousel > div,
.product-thumb-carousel > div{
    display: none;
}
.product-gallery-carousel > div:first-of-type,
.product-gallery-carousel.slick-slider > div,
.product-thumb-carousel > div:first-of-type,
.product-thumb-carousel.slick-slider > div{
    display: block;
}

.product-thumb-carousel .item{
    cursor: pointer;
    transition: all ease-out 300ms;
}
.product-thumb-carousel .item:hover{
    opacity:0.8;
}
.product-thumb-carousel .item-inner{
    position: relative;
}
.product-thumb-carousel .item-inner:after{
    content:"";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 6px;
    background: #fff;
}
.product-thumb-carousel .item-inner:before{
    content:"";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 6px;
    border: 2px solid var(--blue);
    opacity: 0;
}
.product-thumb-carousel .slick-current .item-inner:before{
    opacity: 1;
}
.product-thumb-carousel-wrapper{
    width: 100%;
    overflow: hidden;
}
.product-thumb-carousel-inner{
    margin-right: -6px;
}
.product-info h1{
    margin-bottom: 20px;
}


/* reviews, rating */
.reviews .element {
    background: transparent;
    box-shadow: none;
    border: none;
    padding: 0;
    margin-bottom: 40px;
    border-radius: 0;
    font-size: 16px;
}
.reviews .element .rev-element-body{
    background: #F8F8F8;
    padding: 32px 22px 30px;
}
.reviews .element .rev-element-body:after {
    content: "";
    position: absolute;
    left: 25px;
    bottom: -20px;
    border: 10px solid transparent;
    border-left: 10px solid #F8F8F8;
    border-top: 10px solid #F8F8F8;
}
.rev-element-footer{
    padding: 20px 0 0 40px;
}
.rev-element-footer .rev-name{
    font-family: 'Roboto Slab', serif;
    font-size: 20px;
}
.rating {
    position: relative;
    height: 20px;
    width: 140px;
    color: #CFCFCF;
}
.rating .real {
    position: absolute;
    top: 0;
    left: 0;
    color: #f9ab28;
    width: 0;
    height: 20px;
    overflow: hidden;
    white-space: nowrap;
}
.rating svg {
	width: 24px;
	height: 21.328px;
}
.rating.rating1 .real {
    width: 20%;
}
.rating.rating2 .real {
    width: 40%;
}
.rating.rating3 .real {
    width: 60%
}
.rating.rating4 .real {
    width: 80%;
}
.rating.rating5 .real {
    width: 100%;
}
.rev-form .ec-rating-stars span {
    background: transparent;
    width: auto;
    height: auto;
    margin-right: 7px;
}
.ec-rating-stars svg {
	cursor: pointer;
	color: #d5d5d5;
	width: 20px;
	height: 20px;
}

.ec-rating-stars .active svg,
.ec-rating-stars .active2 svg {
	color: #F9AB28;
}
.alert-success {
    background: #d4f5d4;
    padding: 15px;
    border: 1px solid #b3dbb3;
    font-size: 14px;
    margin-bottom: 20px;
}
.form-group.has-error input {
    border-color: #FF1A00;
}
.product-rating-wrapper {
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}
.product-rating {
    display: inline-block;
    margin-right: 10px;
}
.product-rating-wrapper .ec-stars {
    display: inline-block;
    margin: 0;
    font-size: 18px;
    width: 105px;
}
.product-rating-wrapper .ec-stars svg{
    width: 17px;
}
.product-rating-wrapper .ec-stars span {
    background: transparent!important;
    display: block;
    height: 20px;
    width: auto;
    color: var(--blue);
}
.product-rating-wrapper .ec-stars .real {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 20px;
    white-space: nowrap;
    overflow: hidden;
    color: var(--blue);
}
.product-rating-wrapper .rating-counter {
    font-size: 15px;
    color: #6f6f6f;
}

/* /. reviews, rating */


.product-info .introtext{
    color: #6f6f6f;
    font-size: 16px;
}

.price-wrap{
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    text-transform: uppercase;
    color: #a3a3a3;
    white-space: nowrap;
}
.price-wrap .old-price{
    margin-right: 10px;
}


/* PRODUCT COUNT */
.product-info-buttons,
.product-counter{
    display: flex;
}
.product-info-buttons .btn{
    height: 44px;
}
.product-info-buttons .btn-to-cart,
.product-info-buttons .btn-checkout{
    width: 240px;
}
.product-info-buttons .product-counter{
    margin-right: 20px;
}
.product-counter input{
    font-family: 'Montserrat', sans-serif;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 44px;
    height: 44px;
    margin: 0px;
    background: #fff;
    border-top: 1px solid #000 !important;
    border-bottom: 1px solid #000 !important;
    border-image: initial;
    border-left: none;
    border-right: none;
    padding-left: 5px;
    padding-right: 5px;
    font-weight: 500;
    font-size: 18px;
    color: #000;
}
.product-counter button{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 44px;
    height: 44px;
    padding:15px;
    margin: 0;
    border: 1px solid #000;
    transition: all 200ms ease-out;
    background: #fff;
}
.product-counter button.btn-minus{
    border-right-color: transparent;
}
.product-counter button.btn-plus{
    border-left-color: transparent;
}
.product-counter button:hover{
    background: var(--blue);
    border-color: var(--blue);
    color: #fff;
}
/* /. PRODUCT COUNT */

/* tabs */
.box{
    position: fixed;
    top: -999999999px;
    left: -999999999px;
    opacity: 0;
    width: 1270px;
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
}
.box.visible{
    position: static;
    top: auto;
    left: auto;
    opacity: 1;
    padding-left: 0;
    padding-right: 0;
}
ul.tabs {
    width: 100%;
    border-bottom: 1px solid #e4e4e4;
}

ul.tabs li{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .03em;
    color: #000;
    transition: all 300ms ease-out;
    position: relative;
    padding: 10px 35px;
    position: relative;
    bottom: -1px;
}
ul.tabs li.current,
ul.tabs li.current:hover{
    background: var(--blue);
    color: #fff;
}
ul.tabs li:hover{
    background: var(--blue);       
    color: #fff;
}
.mobile-tab-header{
    display: none;
}
@media only screen and (max-width: 767px){
    .mobile-tab-header{
        padding: 14px 40px 14px 14px;
        background: var(--blue);
        width: 100%;
        position: relative;
        display: block;
        font-family: 'Montserrat', sans-serif;
        font-size: 12px;
        text-transform: uppercase;
        font-weight: 700;
        letter-spacing: .03em;
    }
    ul.tabs {
        position: relative;
        display: none;
        border: none;
    }
    .mobile-tab-header:after{
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        margin-top: -10px;
        right: 24px;
        width: 12px;
        height: 12px;
        border-bottom: 2px solid #000;
        border-right: 2px solid #000;
        -moz-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transition: all 200ms ease-out;
        -moz-transition: all 200ms ease-out;
        -o-transition: all 200ms ease-out;
        transition: all 200ms ease-out;
    }
    .mobile-tab-header.active:after {
        -moz-transform: rotate(225deg);
        -webkit-transform: rotate(225deg);
        -o-transform: rotate(225deg);
        -ms-transform: rotate(225deg);
        transform: rotate(225deg);
        margin-top: -4px;
    }
    ul.tabs li {
        padding: 15px;
        width: 100%;
        border: 1px solid #E9E9E9;
        border-top: none;
        display: block;
        height: auto;
        text-align: left;
    }
    ul.tabs li.current{
        display: none;
    } 
    .mobile-tab-header.active + ul.tabs{
        display: block;
        margin: 0 -1px 0;
        width: auto;
        box-shadow: 0 0 10px rgba(0,0,0,0.1);
    }
}
@media only screen and (min-width: 768px){
    .tabs.mobile{
        display: flex !important;
    }
}
.box .content{
    color: #6f6f6f;
    font-size: 16px;
}
/* /. tabs */

.props_list {
    width: 100%;
    margin: 0 0 0;
    color: #555;
}
table.props_list {
    border: 0;
    table-layout: fixed;
    border-collapse: collapse;
    font-size: 16px;
}
.char_block td {
    text-align: right;
    padding: 5px 0 5px 10px;
}
.props_list td {
    position: relative;
    vertical-align: bottom;
    vertical-align: top;
    background: url(../images/dott.png) repeat-x;
    background-position: left 0 bottom 9px;
    width: 50%;
}
.props_list tr td:first-child {
    text-align: left;
    padding-right: 10px;
    padding-left: 0;
}
.props_list .props_item {
    overflow: hidden;
    text-overflow: ellipsis;
}
.props_list .props_item span {
    background: #fff;
    padding-right: 10px;
}
.nbg.props_list td.char_value {
    text-align: left;
    background: 0 0;
    font-weight: 500;
}

@media (max-width: 767px) {
    .nbg.props_list td.char_value{
        text-align: right;
        background: url(../images/dott.png) repeat-x;
        background-position: left 0 bottom 9px;
    }
    .nbg.props_list td.char_value span{
        background: #fff;
        padding-left: 10px;
    }
}
#msCart{
    font-family: Montserrat, sans-serif;
}
#msCart table td{
    border-left:none;
    border-right: none;
}
#msCart table td{
    padding-top: 15px;
    padding-bottom: 15px;
}
#msCart table td:first-of-type{
    padding-left: 0;
}
#msCart table th{
    background: #fff;
    color: #000;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.03em;
    border:none;
    border-bottom: 1px solid #E5E5E5;
    padding-top:0;
    padding-bottom: 15px;
}
#msCart table th:first-of-type{
    padding-left: 35px;
}
#msCart .remove-form{
    width: 15px;
    height: 15px;
    line-height: 1;
    padding: 0;
    margin: 0 20px 0 0;
}
.cart-row-remove-btn{
    cursor: pointer;
    padding: 0;
    border: 0;
    background: transparent;
    line-height: 1;
    width: 15px;
    height: 15px;
}
.cart-row-remove-btn svg {
    width: 15px;
    height: 15px;
    transition: all 200ms ease-out;
}
.cart-row-remove-btn:hover svg {
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
#msCart .d-flex{
    display: flex;
    align-items: center;
}
#msCart .image{
    margin-right: 20px;
    flex: 0 0 auto;
}
#msCart .image img{
    width: 60px;
    height: 60px;
}
#msCart .title a{
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.03em;
    color: #000;
    line-height: 1.5;
    display: inline-block;
}
.trash-btn{
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 49px;
    width: 50px;
    margin-right: 10px;
}
.trash-btn svg{
    width: 21px;
    height: 24px;
}
#msCart .cart-footer{
    display: flex;
    align-items: center;
}
#msCart .alert{
    display: flex;
    align-items: center;
    justify-content: center;
}
#msCart .alert svg{
    width: 36px;
    height: 32px;
    margin-right: 15px;
}
#msProduct .old_price, 
#msCart .old_price, 
.ms2_product .old_price{
    font-style: normal !important;
    color: #000 !important;
    margin-right: 5px;
    font-size: 13px !important;
}
.text-nowrap{
    white-space: nowrap;
}
@media(max-width:767px){
    #msCart .image{
        margin-right: 10px;
    }
    #msCart .image img{
        width: 50px;
        height: 50px;
    }
    #msCart .remove-form{
        margin-right: 10px;
    }
    #msCart .title a{
        font-size: 12px;
    }
    #msCart table th:first-of-type {
        padding-left: 25px;
    }
    #msCart table th{
        font-size: 12px;
    }
    #msCart .product-counter button {
        width: 34px;
        height: 34px;
        padding: 10px;
    }
    #msCart .product-counter input{
        width: 34px;
        height: 34px;
    }
}
.currency{
    font-family: Montserrat, sans-serif;
}
.order-buttons{
    display: flex;
    align-items: center;
}
.order-buttons .btn{
    margin-bottom: 0;
}
.order-buttons .prev-btn {
    display: inline-block;
    height: 44px;
    display: flex;
    align-items: center;
    margin-bottom: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .03em;
    margin-right: 20px;
}
.order-buttons .prev-btn svg {
    width: 21px;
    height: 24px;
    margin-right: 6px;
}
#msOrder .form-control.error{
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 2px solid #FF1A00 !important;
}
.button.disabled, .button.disabled:hover, 
.btn.disabled, .btn.disabled:hover {
    background: #dadada !important;
    border-color: #dadada !important;
    color: #1c1c1b !important;
    cursor: default;
    -webkit-filter: brightness(100%);
    filter: brightness(100%);
}


/* custom check and radio order-wrapper */
.order-wrapper .checkbox label{
    padding-left: 38px;
    position: relative;
    height: 22px;
    line-height: 22px;
    cursor: pointer;
    margin-bottom: 15px;
    display: inline-block;
}
.order-wrapper .checkbox label input{
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
    opacity: 0;
    z-index: -1;
}
.order-wrapper .checkbox label > div{
    position: absolute;
    left: 5px;
    top: 0;
    width: 22px;
    height: 22px;
    display: block;
    background: white;
    border: 2px solid rgba(0, 0, 0, 0.25);
    transition: 300ms all;
    border-radius: 2px;
}
.order-wrapper .checkbox label:hover > div{
    border-color: #414141;
}
.order-wrapper .checkbox label > div.radio{
    border-radius: 100%;
}
.order-wrapper .checkbox label > div.radio:before{
    position: absolute;
    left: 0;
    width: 100%;
    top: 0;
    height: 100%;
    content: '';
    display: block;
    background-color: white;
    border-radius: 100px;
    opacity: 0;
    transform: scale(0);
    transition: 300ms all;
}
.order-wrapper .checkbox input:checked + .radio{
    border-color: #414141;
    background-color: #414141;
}
.order-wrapper #msOrder .radio{
    min-height: 1px;
}
.order-wrapper .checkbox input:checked + .radio:before{
    opacity: 1;
    transform: scale(0.5);
}
.order-wrapper .checkboxsquare svg {
    width: 100%;
    opacity: 0;
    transform: scale(0);
    transition: 300ms all;
}
.order-wrapper .checkbox input:checked + .checkboxsquare{
    border-color: #414141;
    background-color: #414141;
}
.checkbox input:checked + .checkboxsquare svg{
    opacity: 1;
    transform: scale(1);
}
.order-wrapper .order-wrapper #msOrder .radio{
    min-height: 1px;
}
.order-wrapper input[type="checkbox"].error + div + span{
    color: red;
}
.order-wrapper .checkbox input:checked.error + div + span{
    color: #444444;
}
.order-wrapper .checkbox p.small{
    padding-left: 38px;
    font-size: 14px;
    color: #444;
}
/* /. custom check and radio */

.isa_success {
    background-color: #e7fcf3;
    padding: 25px;
    text-align: center;
}
.order-number{
    color: #414141;
}
.jgrowlHide #jGrowl{
    display: none !important;
}

.related-carousel-prev,
.related-carousel-next{
    margin-top: -62px;
}
/****************************************** /. SHOP */


/* About section */

.about-section {
	background: #f6f6f6;
	padding: 70px 0;
	position: relative;
	width: 100%;
	overflow: hidden;
}

.about-section:after {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	left: 65%;
	background: #fff;
}

.about-section-img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 60%;
	right: -220px;
	background-repeat: no-repeat;
	background-position: 50%;
	z-index: 10;
}

.about-section-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.about-section .content {
	padding: 30px 0;
}

@media (max-width: 1499px) {
	.about-section-img {
		left: 55%;
		right: -120px;
	}
}

@media (max-width: 1239px) {
	.about-section-img {
		left: 50%;
		right: -100px;
	}
	.about-section .content {
		padding: 0 30px 0 0;
		font-size: 15px;
	}
	.about-section h3,
	.about-section .title-h3 {
		font-size: 24px;
	}
}

@media (max-width: 991px) {
	.about-section {
		padding: 90px 20px 50px;
	}
	.about-section:after {
		display: none;
	}
	.about-section-img {
		position: static;
		height: 60vw;
		background-size: cover;
		margin-bottom: 40px;
		border-radius: 5px;
	}
	.about-section .content {
		padding: 0;
	}
}
/* /.About section */


.breadcrumbs-wrapper {
  margin: 0 0 25px;
  font-size: 16px;
}

.breadcrumbs-wrapper li {
  display: inline-block;
  margin-right: 25px;
}

.breadcrumbs-wrapper a {
  text-decoration: none;
  position: relative;
  -webkit-transition: all 200ms ease-out;
  -moz-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}

.breadcrumbs-wrapper a:hover {
  color: #2E2E2E;
}

.breadcrumbs-wrapper a:after {
  content: "";
    display: block;
    position: absolute;
    width: 5px;
    height: 5px;
    top: 9px;
    right: -16px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}

.breadcrumbs-wrapper a:hover:after {
  border-color: #2E2E2E;
}


/* flex row */
@media (min-width: 992px) {
    .row-md-flex {
        display: flex;
        flex-direction: row;
        align-items: stretch;
    }
    .row-md-flex:before,
    .row-md-flex:after { display: none; }
    
    .row-md-flex > *[class^="col-"] {
        float: none;
        position: relative;
    }

    .row-md-flex .aside {
        position: relative;
        height: 100%;
    }

    .row-md-flex .aside-contacts-icons {
        position: sticky;
        top: 60px;
    }
}

@media (min-width:768px) {
    .row-flex {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        margin-left: -20px;
        margin-right: -20px;
    }
    .row-flex:before,
    .row-flex:after {
        display: none;
    }

    .row-flex > .col-12 {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding-left: 20px;
        padding-right: 20px;
    }
    .footer__payments {
        margin-bottom: 0;
    }
}