:root {
    --red: #DB2B39;
    --black: #232732;
    --gray: #e4e4e4;
    --white: #eff1f3;
    --font-white: #fff;
}
body {
    font-family: "Inter", sans-serif;
    font-weight: 400;
    font-size: 16px;
    background: var(--white);
}
.spy {
	position: fixed;
	font: bold 14px/1.2 Arial;
	text-align: center;
	color: #ff0;
	padding: 0 3px;
	bottom: 80px;
	right: 0;
	background: #000;
	z-index: 99999;
}
.spy_grn {color: #0c0}
input.inp {
    outline: none;
}
.btn.focus, .btn:focus {
    outline: 0;
    box-shadow: none;
}
.header_in {
    height: 80px;
}
.h_tel.mob_telto.telto:before {
    content: '';
    display: block;
    width: 48px;
    height: 48px;
    background: url(/templates/template1/images/design/ico_tel.svg) 50% 50% / cover no-repeat;
}
.header_wrap {
    border-top: 2px solid var(--red);
}
.ico_hamb {
    cursor: pointer;
}
.main_vid_wrap {
    position: relative;
    color: #fff;
    overflow: hidden;
}
.pattern .container {
    position: relative;
    z-index: 2;
}
.pattern::before, .pattern::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 1;
}
.pattern::before {
    opacity: 1;
    background: url(/templates/template1/images/default/pattern2.png) 50% 50%;
}
.main_vid_wrap video {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    z-index: 1;
}
.main_vid_wrap::before {
    z-index: 2;
}
.main_vid_wrap .in {
    padding-top: 40px;
    padding-bottom: 135px;
    color: var(--font-white);
    font-weight: 600;
}
.main-pre-title {
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 15px;
}
.main-title {
    font-size: 28px;
    text-transform: uppercase;
    margin-bottom: 40px;
}
.inp_wrap {
    margin-bottom: 20px;
    text-align: center;
}
form .btn_wrap {
    display: flex;
    justify-content: center;
}
form .btn {
    border-radius: 4px;
    width: 210px;
    height: 50px;
    background: var(--red);
    color: var(--font-white);
    font-weight: 700;
    line-height: 125%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--red);
}
form .btn:hover {
    color: var(--red);
    background: transparent;
}
.main-form-block-title {
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
}
.custom-checkbox.fz_wrap {
    margin-top: 12px;
    font-weight: 400;
    font-size: 12px;
    display: inline-block;
    width: 210px;
    text-align: left;
}
.custom-checkbox.fz_wrap a {
    color: var(--font-white);
    text-decoration: underline;
}
.custom-checkbox.fz_wrap a:hover {
    opacity: .9;
}
.inp_wrap .inp {
    /* color: var(--font-white); */
    line-height: 125%;
    padding: 0 18px;
    border: 2px solid #fff;
    border-radius: 5px;
    color: var(--font-white);
    height: 50px;
    width: 210px;
    text-align: center;
    background: transparent;
}
.inp_wrap .inp::placeholder {
    color: var(--font-white);
}
.inp.input_error {
    border-color: var(--red);
}
.fz_input.input_error + label {
    text-decoration: underline;
    text-decoration-color: var(--red)
}
.main-arrow-bottom {
    position: absolute;
    bottom: 20px;
    left: calc(50% - 24px);
}
.section-mb {
    margin-bottom: 30px;
}
.section-number-main {
    background: var(--black);
    border-bottom: 3px solid var(--red);
}
.number-block {
    max-width: 580px;
    padding: 30px 0;
}
.number-block-el {
    display: flex;
    align-items: center;
}
.number-block-el-q {
    text-align: left;
    min-width: 60px;
    font-weight: 700;
    font-size: 80px;
    line-height: 130%;
    color: var(--red);
}
.number-block-el-text {
    color: var(--font-white);
}

footer {
    background: var(--black);
    color: var(--font-white);
}
.footer-top {
    border-bottom: 1px solid var(--white);
}
.footer-top-groups1 {
    margin-bottom: 16px;
}
.footer-top-groups1 .row {
    margin-right: -8px;
    margin-left: -8px;
    margin-bottom: -16px;
    justify-content: center;
}
.footer-top-groups1-item {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    position: relative;
    width: 100%;
    padding-right: 8px;
    padding-left: 8px;
    margin-bottom: 16px;
    max-width: 175px;
}
.footer-top-groups1 a {
    border-radius: 10px;
    border: 1px solid var(--font-white);
    color: var(--font-white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    height: 50px;
    width: 155px;
    white-space: normal;
    padding: 8px 7px;
    text-align: center;
    font-weight: 300;
}
.footer-top .logo2 {
    margin-top: 30px;
    margin-bottom: 30px;
    text-align: center;
}
.footer-top-groups2 {
    margin-bottom: 20px;
}
.footer-top-groups2 .row {
    margin-right: -8px;
    margin-left: -8px;
    margin-bottom: -16px;
}
.footer-top-groups2-item {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    position: relative;
    width: 100%;
    padding-right: 8px;
    padding-left: 8px;
    margin-bottom: 16px;
    display: flex;
    justify-content: center;
}
.footer-top-groups2 a {
    border-radius: 10px;
    border: 1px solid var(--font-white);
    color: var(--font-white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    height: 50px;
    width: 224px;
    white-space: normal;
    padding: 8px 9px;
    text-align: center;
    font-weight: 300;
}
.footer-top-desc1 {
    margin-bottom: 20px;
    font-weight: 300;
}
.footer-top-desc2 {
    margin-bottom: 60px;
    font-weight: 300;
}
.footer-bottom {
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: 3px solid var(--red);
}
.footer-bottom-link {
    display: flex;
    flex-direction: column;
}
.footer-bottom-link a {
    display: inline-block;
    color: var(--font-white);
    font-weight: 400;
    font-size: 14px;
    text-decoration: underline;
}
.footer-bottom-link a:hover {
    opacity: .85;
}
.footer-bottom-link a:first-child {
    margin-bottom: 10px;
}


.side_wrap {
    position: fixed;
    width: 360px;
    height: 100%;
    overflow-y: auto;
    top: 0;
    left: -100%;
    transition: left .3s ease 0s;
    background: #fff;
    z-index: 9999;
}
.side_wrap.active {
    left: 0;
}
.side_wrap {
    width: 100%;
    max-width: 360px;
    background: var(--black);
}
.side_header {
    height: 80px;
    border-top: 2px solid var(--red);
    background: var(--white);
}
.side_menu .side_menu-el {
    border-bottom: 1px solid var(--white);
}
.side_menu .side_menu-el a {
    padding-left: 15px;
    padding-right: 15px;
    display: block;
    color: var(--font-white);
    font-weight: 400;
    line-height: 54px;
    text-transform: uppercase;
}
.right_form-close img {
    cursor: pointer;
}
.header_xl-leftblock {
    display: flex;
}
.header_xl-leftblock .logo {
    margin-right: 48px;
}

.ovh {
    overflow: hidden;
}
.js_overlay, .js_overlay_op {
    /* position: absolute; */
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: .7;
    background-color: #000;
    z-index: 998;
}

/* SM */
@media (min-width: 576px) {

}
/* MD */
@media (min-width: 768px) {
    .footer-top-groups2-item {
        -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .number-block {
        max-width: none;
    }
    .logo img {
        width: 191px;
    }
    .footer-bottom {
        padding-top: 25px;
        padding-bottom: 25px;
        border-bottom: 3px solid var(--red);
    }
    .footer-bottom-link {
        max-width: 260px;
    }
}
/* LG */
@media (min-width: 992px) {
    .footer-top-groups2-item {
        max-width: 33.3333333%;
        flex: 0 0 33.33333333%;
    }
    .footer-top-groups2 a {
        width: 100%;
    }
    .footer-top-groups1 a {
        width: 100%;
    }
    .footer-top-groups1-item {
        -ms-flex: 0 0 33.3333333%;
        flex: 0 0 33.3333333%;
        max-width: 33.3333333%;
    }
    .header_in.header_xl {
        padding: 20px 0;
        height: auto;
    }
}
/* XL */
@media (min-width: 1200px) {
    .footer-top-groups1-item {
        max-width: 175px;
    }
    .footer-top-groups1 a {
        width: 155px;
    }
    .footer-top-groups2-item {
        max-width: 240px;
    }
    .footer-top-groups2 a {
        width: 224px;
    }
    .footer-top-groups1 .row {
        justify-content: start;
    }
}
