@charset "utf-8";
/* CSS Document */
html{
    height: 100%;
}
body{
    padding:0;
    margin:0;
    min-height: 100%;
    position: relative;
    font-smooth: always;
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
}
.page{
    transition: 0.3s all;
}
img{
    max-width:100%;
    user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    image-rendering: auto;
}
section{
    box-sizing: border-box;
}
.wrapper{
    overflow: hidden;
    position: relative;
}
header{
    width: 100%;
    left: 0;
    top: 0;
    z-index: 10;
    box-sizing: border-box;
}
footer{
    width: 100%;
    left: 0;
    bottom: 0;
    z-index: 10;
    box-sizing: border-box;
}
.clearit{
    clear:both;
}
.container{
    margin: auto;
    padding: 0 20px;
    position: relative;
    box-sizing: border-box;
}
.inside{
    position: relative;
}
.fullheight{
    height: 100%;
}
.valigner:after{
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 100%;
}
.valigner .caligner{
    width: calc(100% - 10px);
    display: inline-block;
    vertical-align: middle;
}
.tabs{
    width:100%;
    display:table;
}
.tabs .row{
    display:table-row;
}
.tabs .tab{
    display:table-cell;
    vertical-align:middle;
    position:relative;
    box-sizing: border-box;
}
.block{
    display:inline-block;
    vertical-align:middle;
    position:relative;
    margin-right: -4px;
    box-sizing: border-box;
}
.block:last-child{
    margin-right: 0;
}

/******************** FORM ********************/

input{
    padding: 0;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    transition: background 500000000000s ease-in-out 0s;
}
.response{
    display: none;
    margin: 10px 0;
}
.warning{
    color: #dc2828;
}
.notification{
    color: #11772d;
}
.tip{
    max-width: 200px;
    position: relative;
    left: 0;
    background: #dc2828;
    font-size: 10px;
    padding: 5px 5px 3px 5px;
    text-align: center;
    margin: 8px auto 0 auto;
    float: left;
    box-sizing: border-box;
    display: none;
    z-index: 1;
    clear: both;
    color: #FFF;
    line-height: 100%;
}
.tip:before{
    content: '';
    width: 0;
    height: 0;
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -7px;
    bottom: 100%;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #dc2828;
}
.inwrap .error input[type=text],
.inwrap .error input[type=password],
.inwrap .error .select,
.inwrap .error textarea{
    border: 1px #dc2828 solid;
}
.inwrap .file{
    position: relative;
}
.inwrap .file:after{
    content: '';
    display: block;
    clear: both;
}
.inwrap .file input[type=file],
.inwrap .file input[type=text]{
    position: absolute;
    left: -10000000000px;
    top: -10000000000px;
}
input[type=radio]{
    display: none;
}
textarea{
    resize: none;
}
.check{
    text-align: left;
}
.check a{
    color: #000;
    text-decoration: underline;
}
input[type=checkbox]{
    display: none;
}
form .radio label .mark:before,
form .radio label .mark:after,
form .check label .mark:before,
form .check label .mark:after{
    content: '';
    font-family: Arial, sans-serif;
    font-weight: bold;
    cursor: pointer;
}
form .radio label input[type=radio]:checked + .mark:before,
form .radio label input[type=radio]:checked + .mark:after{
    content: '⬤';
}
form .check label input[type=checkbox]:checked + .mark:before,
form .check label input[type=checkbox]:checked + .mark:after{
    content: '✓';
}
form .radio label .mark .option{
    display: inline-block;
    vertical-align: middle;
}
.select{
    width: 100%;
    box-sizing: border-box;
    border: 1px #000 solid;
    padding: 0 10px;
    outline: none;
    text-transform: uppercase;
    overflow: hidden;
    position: relative;
}
.select:after{
    content: '\f078';
    width: 12px;
    height: 12px;
    display: block;
    position: absolute;
    right: 7px;
    top: 50%;
    margin-top: -6px;
    font-size: 12px;
    font-family: 'Font Awesome\ 5 Free', sans-serif;
    font-weight: 800;
    text-align: center;
    z-index: 1;
}
.select select{
    width: calc(100% + 20px);
    height: 100%;
    border: none;
    background: none;
    position: absolute;
    left: 0;
    top: 0;
    outline: none;
    z-index: 2;
}
.select select option{
    color: #000;
}
.inwrap{
    display: block;
}
.inwrap input[type=text],
.inwrap input[type=password]{
    width: 100%;
    height: 30px;
    display: block;
    border: 1px #FFF solid;
    outline: none;
    padding: 0 10px;
    box-sizing: border-box;
    position: relative;
}
.inwrap textarea{
    width: 100%;
    height: 100px;
    display: block;
    border: 1px #FFF solid;
    outline: none;
    padding: 5px 10px;
    box-sizing: border-box;
    position: relative;
}

/******************** MENU ********************/

ul.menu{
    list-style: none;
    padding: 0;
    margin: 0;
    display: none;
}
ul.menu.level1{
    display: block;
}
ul.menu li{
    list-style: none;
    padding: 0;
    margin: 0;
}
ul.menu li a{
    display: block;
}
ul.menu.level1 li:hover ul.menu.level2{
    display: block;
}
ul.menu.level2 li:hover ul.menu.level3{
    display: block;
}
ul.menu.level3 li:hover ul.menu.level4{
    display: block;
}
ul.menu.level1.active{
    display: block;
}

/******************** HAMBURGER ********************/

.hamburger{
    position: relative;
    text-align: center;
    cursor: pointer;
    display: none;
}
.hamburger .label{
    text-transform: uppercase;
    margin-right: 5px;
    display: inline-block;
    vertical-align: middle;
    color: #000;
}
.hamburger .lines{
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: inline-block;
    vertical-align: middle;
    position: relative;
}
.hamburger .lines .line{
    width: 100%;
    height: 2px;
    background: #FFF;
    position: absolute;
    left: 0;
    margin-top: -1px;
    transform-origin: center;
    transition: 0.3s all;
}
.hamburger .lines .line:first-of-type{
    top: 0;
}
.hamburger .lines .line:last-of-type{
    top: 100%;
}
.hamburger .lines.style3 .line:nth-of-type(2){
    top: 50%;
}
.hamburger .lines.style4 .line:nth-of-type(2){
    top: 33%;
}
.hamburger .lines.style4 .line:nth-of-type(3){
    top: 66%;
}
.hamburger.active .line:first-of-type{
    display: block;
    top: 50%;
    transform: rotate(45deg);
}
.hamburger.active .lines .line:last-of-type{
    display: block;
    top: 50%;
    transform: rotate(-45deg);
}
.hamburger.active .line:nth-of-type(2),
.hamburger.active .line:nth-of-type(3){
    display: none;
}

/******************** SOCIAL ********************/

.social a{
    display: inline-block;
    vertical-align: middle;
}

/******************** POPUP ********************/

.pop{
    background:rgba(0,0,0,0.7);
    position:fixed;
    left:0;
    right:0;
    top:0;
    bottom:0;
    margin:auto;
    z-index:9999999;
    color: #000;
}
.pop .tabs.main{
    display: table;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}
.pop .tabs.main .tab.main{
    padding: 30px;
    display: table-cell;
    vertical-align: middle;
}
.pop .close_btn{
    position: absolute;
    right: 5px;
    top: 5px;
    cursor: pointer;
    z-index: 1;
}
.pop .close_btn:after{
    content: "x";
    font-family: Arial, sans-serif;
    font-size: 20px;
    color: #000;
    text-align: center;
    line-height: 25px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: inline-block;
}
.popup .placer{
    max-width: 760px;
    margin: auto;
    text-align: center;
    position: relative;
    box-sizing: border-box;
}
.popup.type_message .placer,
.popup.type_html .placer{
    overflow: auto;
    padding: 30px;
    background: #FFF;
    -webkit-box-shadow: 0 0 30px 0 rgba(0,0,0,0.25);
    -moz-box-shadow: 0 0 30px 0 rgba(0,0,0,0.25);
    box-shadow: 0 0 30px 0 rgba(0,0,0,0.25);
}
.popup .placer .tabs{
    height: 100%;
}
.popup.type_loading .content{
    padding: 30px 30px 30px 30px;
    background: url("../images/default/loading.gif") center top no-repeat;
    background-size: 20px auto;
    color: #FFF;
}
.popup :-webkit-scrollbar {
    width: 5px;
    cursor: pointer;
    background: rgba(255,255,255,0.1);
}
.popup :-webkit-scrollbar-track {
    width: 5px;
}
.popup :-webkit-scrollbar-thumb {
    width: 5px;
    background: #00a0dd;
}

/******************** TABLE ********************/

table{
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
}

/******************** PRELOADER ********************/

.pop.preloader{
    background: #FFF;
    color: #7f7f7f;
    display: block;
    text-align: center;
}
.pop.preloader .logo{
    max-width: 250px;
    display: block;
    margin: 0 auto 20px auto;
}
.pop.preloader .gif{
    max-width: 250px;
    display: block;
    margin: 0 auto 20px auto;
}

/******************** VIDEO ********************/

.video{
    position: relative;
}
.video .scaler{
    padding-top: 56.25%;
    position: relative;
}
.video .scaler video,
.video .scaler iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

/******************** EFFECTS ********************/

.blurred{
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -o-filter: blur(0px);
    -ms-filter: blur(0px);
    filter: blur(0px);
}

/******************** GOOGLE MAPS ********************/

a[href^="http://maps.google.com/maps"]{display:none !important}
a[href^="https://maps.google.com/maps"]{display:none !important}

.gmnoprint a, .gmnoprint span, .gm-style-cc {
    display:none;
}

/******************** JUSTIFIED BLOCK ********************/

.justified{
    text-align: justify;
}
.justified .block{
    display: inline-block;
}
.justified:before{
    content: '';
    display: block;
    width: 100%;
}
.justified:after {
    content: '';
    display: inline-block;
    width: 100%;
}

/******************** PAGINATION ********************/

.pagination{
    text-align: center;
    padding: 10px 0;
}
.pagination .pag_btn{
    display: inline-block;
    vertical-align: middle;
    margin: 0 5px;
    padding: 2px;
}
.pagination .cur_btn{
    font-weight: 700;
}
.pagination a{
    color: #000;
    text-decoration: none;
}

/******************** PROGRESS BAR ********************/

.progress_bar{
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000000000000;
}
.progress_bar progress{
    width: 100%;
    height: 20px;
    -webkit-appearance: none;
    appearance: none;
    background-color: #eee;
}
progress[value]:-webkit-progress-value {
    background-image:
            -webkit-linear-gradient(-45deg,
            transparent 33%, rgba(0, 0, 0, .1) 33%,
            rgba(0,0, 0, .1) 66%, transparent 66%),
            -webkit-linear-gradient(top,
            rgba(255, 255, 255, .25),
            rgba(0, 0, 0, .25)),
            -webkit-linear-gradient(left, #09c, #105481);

    border-radius: 2px;
    background-size: 35px 20px, 100% 100%, 100% 100%;
}

/******************** LIST ********************/

ul, ul li{
    list-style: none;
    padding: 0;
    margin: 0;
}
