/* основное */
:root {
    --main: #111;
    --accent: #FF4D00;
    --links: #FF4D00;
    --links-semi:  #FF2D00;
    --main-font: Gilroy;
    --bg-color: #fff;
    --btn-bg: #FF6600;
    --btb-bg-hover:#FF4400;
    --btn-fontcolor:#fff;
    --semi-blocks-bg: #f0f0f0 ;
    --blocks-bg: #fff;
    --menu-bg: #FF4D00;
    --menu-bg-hover:#FF7700;
    --shadow:0 0 3rem rgba(0, 0, 0, 0.1);
    --logo-w:210px;
    --logo-h:38px;;
    --bg:url('/img/bg.jpg');
    --max-width:78%;
    --fz-1:0.94vw;
    --fz-2:1.18vw;
    --fz-3:1.4vw;
    --fz-4:4.9vw;
    --semibold:500;
    --bold:600;
    --extrabold:700;
}


* {box-sizing: border-box;}
html{font-size: var(--fz-1);}

body{-webkit-text-size-adjust:100%;font-family: var(--mf);}
body, div, table, tr, td, li, ul, p{margin:0;padding:0;border:0;font:inherit;color:var(--main);font-weight:400;font-family: var(--main-font);vertical-align:top;}
div, td, li, p, span {line-height:130%;font-size: 1rem;}
img{border:0;max-width:100%;height:auto;}
h1, h2, h3, h4, h5, h6{margin:0; padding:0;font-weight:bold;text-align:left;display:block;font-weight:600;color:#000;}

.wrap{width: 100%;height:auto;}
.wr{margin:auto;position: relative;width:100%; max-width: var(--max-width);padding-left:2rem;padding-right:2rem;padding-top:2rem;padding-bottom:2rem;}
a, a:visited{text-decoration:none;color:var(--links);transition: .5s; border:0;}
a:hover, a:visited:hover, a:focus{text-decoration:none;color:var(--links-semi); }
p {margin:0;line-height:130%;}
span {line-height:130%;}
input{font-family: inherit;border-radius:4.3rem;}
button {outline: 0; border: 0; font-family: var(--main-font);}
.btn {background:var(--btn-bg); padding:1.4rem 2.1rem 1.35rem 2.1rem;color:var(--btn-fontcolor);transition: all 1s; cursor:pointer; border-radius:4.3rem;font-size: 1rem;font-weight: var(--semibold);}
.btn:hover {background:var(--btb-bg-hover)}

.background {background:var(--bg); width:100%; background-size: cover;}
.fw {display: flex; padding-top:3rem; flex-wrap:wrap;}
.mobmenuwrap {display: none;}
.topmenuwrap {width:100%; position: fixed;width:100%;z-index:10;top:0;left:0;right:0;top:-5rem;transition: 1s;}
.topmenuwrap .wr {padding-top:1rem;padding-bottom:0;}
.topmenubg {background:#fff;box-shadow: 0 0 3rem rgba(0, 0, 0, 0.15);width:100%;border-radius:2rem;display: flex;padding-top:0.6rem;padding-bottom:0.6rem; justify-content: space-between;padding-left:1.5rem;padding-right:1.5rem; align-items: center}
.mobmenubtn {display: none;}
.fixed-phone {font-weight: var(--extrabold);font-size: 1.4rem;}
.messenger-fixed {display: flex;gap:0.6rem;}
.messenger-fixed .ic {width:2rem;height:2rem;}
.fixed-menu {display: flex; list-style-type: none; align-items: center;gap:2rem}
.fixed-menu li {font-size: 0.9rem;line-height: 0.9rem;}
.fixed-menu a {border-bottom:1px solid;font-size: 0.9rem;margin-bottom:0rem;display: block;line-height: 0.9rem;font-weight: var(--semibold);}

.menu-active {top:0}
/* ------------------------------------------------------------------ */


/* Иконки */
.ic {display: flex;align-items: center;justify-content: center;border-radius: 50%;width:2.6rem;height:2.6rem;}
.ic img {width:1.3rem;height:1.3rem;}
.tg img {width:1.1rem;height:1.1rem;}
.tg {background:#0b9dff}
.tg:hover {background:#0089e4}
.tg img {margin-left:-0.2rem}

.wa {background: #46cc4f;}
.wa:hover {background:#33b83c}
.wa img {margin-bottom:-0.2rem}

.max {background: #5c46f1;}
.max:hover {background:#8d40e6;}
/* ------------------------------------------------------------------ */
/* Шапка */
.top-header {display: flex; align-items: center;justify-content: space-between;padding-top:1.6rem;padding-bottom:2rem;}
.logo {display: flex;align-items: center;}
.logo img {max-width:var(--logo-w);max-height:var(--logo-h); width:12rem;height:auto;}
.logo p {font-size: 0.84rem;color:var(--main);margin-left:1rem;max-width:10.8rem;opacity: 0.8;}
.top-phone p{font-size:0.84rem;margin-top:0.2rem;}
.yandex img {display: block;}
.top-phone a:first-child {display: inline-block;font-weight: var(--extrabold);font-size: 1.4rem;margin-top:0.2rem}
.top-phone a:last-child {display: inline-block;font-weight: var(--bold);font-size: 0.9rem;margin-top:0rem; border-bottom:1px solid; line-height: 1rem;}
.top-header .btn {font-size: 0.82rem;padding:1.0rem 1.4rem 0.9rem 1.4rem}

.top-menu ul {display: inline-flex;border-radius:2rem;}
.top-menu li {list-style-type: none;transition: all 0.5s; cursor:pointer;font-weight: var(--semibold);background:#666666;}
.top-menu li a {padding:1.2rem 1.5rem 1.10rem 1.5rem;font-size:0.91rem;transition: all 0.5s; font-weight: var(--semibold); color:#fff;}
.top-menu li:hover{background: #444444;}
.top-menu li:first-child {border-radius:2rem 0 0 2rem}
.top-menu li:last-child {border-radius: 0 2rem 2rem 0}
.top-menu li:first-child a {padding-left:2.1rem;border-radius:2rem 0 0 2rem}
.top-menu li:last-child a {padding-right:2.1rem;border-radius: 0 2rem 2rem 0}
.top-menu li a {display: flex;justify-content: center;align-items: center;}
.top-adress {max-width:14rem;}
.top-adress p:first-child {font-weight: var(--bold);margin-bottom:0.2rem;}
.top-adress p:last-child {font-size: 0.84rem;}
.top-messengers {max-width:16rem;display: flex;align-items: center;}
.top-messengers p:first-child {font-weight: var(--bold);text-align: right;margin-right:1rem;font-size: 0.9rem; line-height: 1.1rem;}
.top-messengers div {display: flex;gap:0.3rem;}



/* ------------------------------------------------------------------ */
/* Главный экран общее*/
.main {padding-top:2rem;padding-bottom:3rem;display: flex;align-items: flex-start; justify-content: space-between;}
.left-main {width:66%;}
h1{font-weight:var(--extrabold);color:var(--main);font-size:2.4rem;margin-bottom:1.2rem;margin-top:1rem;line-height:2.5rem;}
h1 span {font-weight:var(--extrabold);color:var(--accent);font-size:inherit;line-height:2.5rem;}
.semi-zag {font-size: 1.6rem;line-height: 2.0rem;font-weight: var(--bold);margin-bottom:0.6rem;}
.semi-zag2 {font-size: 1.2rem;line-height: 1.5rem;font-weight: var(--semibold);max-width:32rem}
.main .btn {display: inline-flex;margin-top:3rem;}


.main-plusi {display: flex;justify-content: space-between;gap:2rem}
.main-plusi div {display: flex;align-items: center;}
.main-plusi div p {margin-left:0.8rem;font-size: 0.86rem;max-width:10.8rem;font-weight: var(--bold);}
.main-plusi div img {display: block;width:5rem;height:5rem;max-width:80px; max-height:80px;}

/* Главный экран v1*/
.header-v1 .right-main img {width:22rem;max-width:396px;height:auto;display: block;border-radius:1rem}
.main-v1 .main-plusi {margin-top:6rem;}


.left-main-btn {display: flex;align-items: center;margin-top:3rem;}
.left-main-btn p {font-weight: var(--bold);max-width:14rem;line-height: 1.2rem;margin-left:2rem;color:var(--main)}
.left-main-btn p span {color:var(--accent); font-weight: var(--extrabold);}
.left-main-btn .btn {margin-top:0;}

.right-main {width:30%;position: absolute;bottom:7.6rem;right:-0.5rem}
.right-main div {position: absolute;bottom:-3rem;right:0.5rem;width:20rem;padding:1rem 1.3rem; border-radius:0.6rem; background:#fff;}
.right-main p:nth-child(1) {font-weight: var(--extrabold);}
.right-main p:nth-child(2) {font-size: 0.9rem;}
.right-main p:nth-child(3) {font-size: 0.72rem; margin-top:0.4rem; opacity: 0.7;}

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

/* Блоки второстепенные общее */
.semi-block {padding-top:4rem;padding-bottom:2rem;}
h2{color:var(--main);font-size: 2.2rem;line-height: 2.6rem;margin-bottom:0.4rem;font-weight: var(--extrabold);}
h2 span {color:var(--accent);font-size: 2.2rem;line-height: 2.6rem;font-weight: var(--extrabold);}
.opis-zag-1 {color:var(--main); font-size: 1.5rem;line-height: 1.8rem;font-weight: var(--bold);margin-bottom:0.2rem;}
.opis-zag-1 span {color:var(--accent);font-size: 1.5rem;line-height: 1.8rem;font-weight: var(--bold);}
.opis-zag-2 {color:var(--main); font-size: 1.2rem;line-height: 1.5rem;font-weight: var(--semibold);margin-bottom:0.4rem;}
.opis-zag-2 span {color:var(--accent); font-size: 1.2rem;line-height: 1.5rem;font-weight: var(--semibold);}
.blocks-bg {background:var(--blocks-bg); box-shadow: var(--shadow); border-radius:1.2rem;}
.semi-blocks-bg {background:var(--semi-blocks-bg);box-shadow: var(--shadow); border-radius:1.2rem;}

.semi-block .fw-block img{width:100%;height:auto;border-radius: 1.2rem 1.2rem 0 0;display: block;}
.semi-btn-wrap {display: flex;align-items: center; justify-content: center;margin-top:3rem;}
.works .fw-block-text {padding:2.3rem 1.6rem 1.6rem 1.6rem;}
.works .fw-block-zag {font-size: 0.95rem;line-height: 1.1rem;font-weight: var(--bold);}
.works .fw-block-opis{font-size: 0.84rem;line-height: 1.0rem;font-weight: var(--semibold);margin-top:0.4rem; opacity: 0.7;}
.works .fw-block-span {font-size: 0.9rem;line-height: 1.1rem;margin-top:1.1rem;display: block;font-weight: var(--extrabold);}

/* Работы */
.works {padding-bottom:0;}
.works .fw-block {position: relative;}
.works .fw-block-text {position: relative; padding-bottom:5rem;}
.works .fw-block-text div {background: #00B77D; color:#fff;border-radius:3rem;display: inline-block; padding:0.4rem 1.0rem;font-size: 0.8rem;position: absolute;top:-1.1rem;left:1rem;border:0.4rem solid #fff;font-weight: var(--bold);}

.works-btns {position: absolute;bottom:1.6rem;left:1.6rem;}
.works .fw-block a {display: inline-flex;margin-right:1rem;background: #FF6600;color:#fff;border:0;margin-top:1rem;padding:0.6rem 1.2rem 0.55rem 1.1rem;align-items: center;justify-content: center;border-radius:2rem;font-weight: var(--semibold);font-size: 0.8rem;}
.works .fw-block a:hover {background: #FF4400;}
.works .fw-block  a img {display: block;margin-right:0.5rem; width:0.7rem;height:0.7rem;}


/* Блок 3-3-2-1 */
.g-3321{gap:2%;}
.g-3321 .fw-block {width:32%;margin-bottom:3%;}
/* Блок 4-4-3-1 */
.g-4431{gap:2%;}
.g-4431 .fw-block {width:23.5%;margin-bottom:3%;}
/* Блок 5-4-3-1 */
.g-5431{gap:1%;}
.g-5431 .fw-block {width:19.0%;margin-bottom:3%;}
/* Блок 2-2-1-1 */
.g-2211{gap:4%}
.g-2211 .fw-block {width:48.0%;}

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

/* Блоки поинты общее */
.point-block {padding-top:4rem;padding-bottom:3rem;}
.point-block .fw {padding-top:4rem;}
.point-block .fw-block {display: flex;align-items: center;}
.point-block .fw-block img{width:5rem;height:5rem;border-radius: 50%;display: block;}
.point-block .fw-block p {font-weight: var(--semibold);margin-left:1.2rem;}

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

/* Блок компания общее */
.com-block {padding-top:0;padding-bottom:1rem; }
.com-block .fw {justify-content: space-between;}
.com-block-bg .fw-block{width:48%;}
.com-block-bg .fw-block:last-child {margin-bottom:0}
.com-block-bg {box-shadow: 0 0 10rem rgba(0, 0, 0, 0.1);border-radius:2rem;padding:3rem 3rem 3rem 3rem;}
.com-block-bg .opis-zag-2 {font-size: 1rem;line-height: 1.4rem;}
.com-block h2 {margin-bottom:2rem;}
.com-block img {border-radius:1rem;}
.com-opis {font-size: 0.9rem;margin-top:1.4rem;line-height: 1.3rem;}



.com-plusi {padding-top:2rem;padding-left:2rem;padding-bottom:0rem;margin-top:1.6rem;box-shadow: 0 0 10rem rgba(0, 0, 0, 0.1);border-radius:2rem;}
.com-plusi img {border-radius:0;max-width:80px; height:80px;}
.com-plusi p {font-size: 0.9rem;font-weight: var(--semibold);padding-right:1rem;}
.com-plusi .fw-block {display: flex;align-items: center;}
.com-plusi .fw-block p {margin-left:1rem;}


.comand {padding-top:0;}
.fw-block-text {padding:1rem 0.5rem 0 0.5rem}
.comand .fw{align-items: flex-start;}
.comand .fw-block img {border-radius: 1.2rem;}
.comand .fw-block-zag {font-size: 0.94rem;line-height: 1.1rem;font-weight: var(--bold);}
.comand .fw-block-opis{font-size: 0.9rem;line-height: 1.0rem;font-weight: var(--semibold);margin-top:0.2rem;margin-bottom:1rem;}
.comand .fw-block-opis-2{font-size: 0.8rem;margin-top:0.2rem;line-height: 1rem;margin-top:0.8rem;}
.comand .fw-block-span {font-size: 0.9rem;line-height: 1.1rem;margin-top:1.1rem;display: block;font-weight: var(--extrabold);}
.comand ul {list-style-type: none;margin-top:0.5rem;}
.comand ul li {font-size: 0.8rem;margin-top:0.5rem;line-height: 1rem;padding-left:1rem;position: relative;}
.comand ul li::before {content:'';display: block;width:0.25rem;height:0.25rem;background:#FF6600; border-radius:50%;left:0;top:0.4rem;position: absolute;}

.comand .wr {position: relative;}
.comand .fw-block {width:96%;margin-left:2%;margin-right:2%;}

.owl-nav button {background:#FF6600 !important; display: block; width:3rem;height:3rem;display: flex !important;align-items: center;justify-content: center;transition: 0.5s;border-radius: 50% !important;}
.owl-stage {height:auto;}
.owl-stage-outer {height:auto;}
.owl-nav button:hover {background:#FF4400 !important}
.owl-nav img {width:1.4rem;height:1.4rem;display: block;}
.owl-carousel {height:auto;}
.comand .owl-prev {position: absolute;left:-4rem;top:14rem;display: block;}
.comand .owl-next {position: absolute;right:-4rem;top:14rem;display: block;}
/* ------------------------------------------------------------------ */
/* Отзывы */
.fancybox-button svg {color:#fff;}
.otzivi {padding-bottom:4rem;}
.otzivi .fw {padding-top:3rem;}
.otzivi .fw-point {width:100%;}
.otzivi .owl-prev {position: absolute;left:-2rem;top:12rem;display: block;}
.otzivi .owl-next {position: absolute;right:-2rem;top:12rem;display: block;}
.good {display: flex; align-items: center;margin-bottom:3rem;}
.good img {width:5rem;height:auto;display: block;margin-right:1rem;}
.good p {font-weight: var(--bold);}
.good span {font-size: 0.9rem;margin-top:0.2rem;display: block;}
.ya-otz {height:35rem;}
.otz-car {position: relative;box-shadow: 0 0 5rem rgba(0, 0, 0, 0.07);padding:2rem;border-radius:2rem 2rem 1rem 2rem}
.otzivi .opis-zag-1 {margin-bottom:2rem;margin-top:3rem}
.otziv {padding-left:1rem;padding-right:1rem}
.otz-top {display: flex;align-items: center;margin-bottom:1rem;}
.otz-top img {width:2rem !important;height:2rem !important;display: block;border-radius:50%;margin-right:1rem;}
.otz-name {font-weight: var(--semibold);line-height: 1.1rem;}
.otz-opis {font-size: 0.85rem;color:#999}
.otz-ocenka {display: flex;}
.otz-ocenka img {width:2rem;height:2rem;max-width:20px;max-height:20px;margin-right:0.2rem;}
.otz-ocenka p {font-size: 0.9rem;color:#999;margin-left:0.5rem;}
.otz-text {font-size: 0.85rem;line-height: 1.1rem;margin-top:1rem;}
.otz-link {font-weight: var(--semibold); border-bottom:1px solid;margin-top:2rem;display: inline-block;margin-bottom:3rem;}
.otz-link-wrap {display: flex;justify-content: center;}

.pisma {width:100%;position: relative;}
.pisma-gal {display: flex;flex-wrap:wrap;gap:1%;background:#f0f0f0;padding:2rem 2rem 1rem 2rem;border-radius:2rem;}
.pismo {display: block;border-radius:0.5rem;}
.pisma a {display: block;width:100%;margin-bottom:1%;margin-left:1%;margin-right:1%;}
.pisma .owl-prev {position: absolute;left:-2rem;top:11.5rem;display: block;}
.pisma .owl-next {position: absolute;right:-2rem;top:11.5rem;display: block;}
/* ------------------------------------------------------------------ */
/* Заявка общее */
.zayavka .left-main-btn p {max-width:10rem;}
.zayavka .opis-zag-2 {max-width:35rem;}
.zayavka img {position: absolute; right:5rem;bottom:-8rem;width:22rem;height:auto;max-width:453px;z-index:5;}
.zayavka .left-main-btn p span {font-size: 1.1rem;}
.punkti {padding-top:2rem;}
.puntki-wrap {box-shadow: 0 0 5rem rgba(0, 0, 0, 0.07);border-radius:2rem;padding-left:3rem;padding-top:3rem;padding-bottom:2rem;}
.punkti .fw {padding-top: 3rem;}
.punkti .fw-block {flex-direction: column;justify-content: flex-start; align-items: flex-start;margin-bottom:1rem;}
.punkti .fw-block p {margin-left:0;margin-top:2rem;font-size: 0.9rem;max-width:12rem;}
.punkti .fw-block i {color:#FF6600; font-weight: var(--extrabold);font-size: 3rem;}
.punkti .fw-block span {color:#FF6600; border-bottom:1px solid; cursor:pointer;font-size: 0.9rem;}


/* ------------------------------------------------------------------ */
/* штрафы */
.shtrafy h2 {max-width:60rem;margin-bottom:1.2rem;}
.shtrafy .fw-block {box-shadow: 0 0 10rem rgba(0, 0, 0, 0.07); padding:3rem 3rem;border-radius:1.5rem;}
.shtrafy img {position: relative;display: block;margin-left:-0.5rem;}
.shtrafy h3 {margin-top:2rem;}
.shtrafy ul {list-style-type: none;margin-top:1.5rem;}
.shtrafy ul li {font-size: 0.9rem;margin-top:0.5rem;line-height: 1.2rem;padding-left:1rem;position: relative;font-weight: var(--semibold);}
.shtrafy ul li::before {content:'';display: block;width:0.25rem;height:0.25rem;background:#FF6600; border-radius:50%;left:0;top:0.4rem;position: absolute;}
.shtrafy .btn {display: inline-flex;margin-top:4rem;}
/* ------------------------------------------------------------------ */
/* Вопрос-ответ */
.voprosi {padding-top:4rem;padding-bottom:2rem;}
.voprosi h2 {margin-bottom:3rem;}
.vopros {padding:1.4rem 2rem; margin-top:1rem; display: flex; align-items: center;background:#F6F6F6; cursor:pointer; border-radius:2.5rem;}
.vopros img {display: block;margin-right:1rem;}
.vopros p {font-weight: 500;font-size: 1.2rem;line-height: 1.5rem;}
.vopros-otvet {background:#F6F6F6; cursor:pointer; border-radius:3rem;}
.otvet {padding:0 2rem 2.5rem 2rem;display: none;}
.otvet p {font-size: 1rem;margin-top:0.2rem;line-height: 1.3rem;margin-bottom:1rem;}
.otvet p:last-child {margin:0}
.otvet ul {list-style-type: none;margin-top:1.0rem;}
.otvet ul li {font-size: 1rem;margin-top:0.5rem;line-height: 1.3rem;padding-left:1rem;position: relative;}
.otvet ul li::before {content:'';display: block;width:0.25rem;height:0.25rem;background:#FF6600; border-radius:50%;left:0;top:0.6rem;position: absolute;}
.plus {transition: 0.5s;}
.vopros-otvet .open {display: block;}
.otvet-zag {font-weight: var(--bold);font-size: 1.1rem !important;line-height: 1.5rem;margin-top:2rem !important;margin-bottom:0.2rem;}
.otvet-zag-2 {font-weight: var(--semibold);font-size: 1.0rem !important;line-height: 1.3rem;margin-bottom: 0 !important}
.rot {transform: rotate(135deg)}
/* ------------------------------------------------------------------ */
/* Блок контакты общее */
.cont {padding-top:1rem;padding-bottom:3rem;}
.cont h3 {margin-bottom:3rem;font-size: 2.4rem;font-weight: var(--extrabold);}
.cont .fw{gap:1%;justify-content: space-between;}
.cont-block-left {width:20%;}
.cont-block-left div {margin-bottom:2rem;}
.cont-map {width:50%;}
.cont-map div {background: #f0f0f0;border-radius:2rem;overflow: hidden;width:100%;height:100%}
.cont-photo {width:25%;display: flex;flex-direction: column; gap:3%;}
.cont-photo div {background: #f0f0f0;border-radius:1rem;overflow: hidden;width:100%;height:100%}

.cont .top-messengers {flex-direction: column; align-items: flex-start;}
.cont .top-messengers div {margin-top:1rem;margin-bottom:0.4rem;}
.cont .top-messengers p:first-child {font-size: 1rem;}
.cont .top-messengers p:last-child {font-size: 0.9rem;margin-top:0;font-weight: var(--semibold);}
.cont .top-messengers p:last-child a {border-bottom:1px solid}

.cont .top-phone p:first-child {font-weight: var(--bold);font-size: 1rem; margin-bottom:0.5rem;}
.cont .top-phone a {font-weight: var(--extrabold);font-size: 1.5rem;}
/* ------------------------------------------------------------------ */
/* Футер  */

.footer .wr {margin-bottom:2rem;}
.footer .fw {margin:0; padding:0; justify-content: space-between;background: #333;padding:2rem 2.6rem;border-radius:6rem;}
.footer .fw-block {margin:0; padding:0; color:rgba(255, 255, 255, 0.4); font-size: 0.9rem;}
.footer .fw-block:nth-child(1) {width:30rem;}
.footer .fw-block:nth-child(2) {width:20rem;}
.footer .fw-block:nth-child(3) {width:12rem;}
.footer .fw-block a {color:rgba(255, 255, 255, 0.7); border-bottom:1px solid}

/* ------------------------------------------------------------------ */
/* Формы и модальные окна */
.popup{display:none;position: fixed;z-index:900;top:0;bottom:0;left:0;right:0;overflow:auto;}
.modal{background:#fff;z-index:1200;margin:auto;position:absolute;left:0;right:0;}
.overlaypop{position: fixed;z-index:1000;top:0;bottom:0;left:0;right:0;background: rgba(0,0,0,0.6);cursor:pointer;}
.modaltext{padding:3.4rem 4rem 3rem 4rem;}
.clsbtn{position:absolute;color:var(--main) !important;cursor:pointer;transition: 0.5s;}
.clsbtn:hover{transform: rotate(90deg);}


.modalform{display: flex;flex-wrap: wrap;flex-direction: column;justify-content: center;}

.inpt {font-size:0.9rem;margin-bottom:0.6rem;padding:1.6rem 1.8rem 1.5rem 1.8rem;box-sizing: border-box;font-weight:500;outline:0;border:0;background:#f0f0f0;cursor:pointer;font-family:var(--main-font);color: var(--main);}
.inpt::placeholder{color:var(--main);opacity: 0.7;}
.inpt:focus {box-shadow: inset 0 0 35px rgba(0, 0, 0, 0.07);}

.modal{width:30rem;top:12vh;border-radius:0.5rem;}
.overlaypop{padding-bottom:10vh;}
.clsbtn{right:1.4rem;top:1.4rem;font-size:1.4rem;}

.modalform .inpt{width:100%;display: block;}
.modalform .btn{width:100%;padding:1.6rem 2rem 1.5rem 2rem;font-size: 1.0rem;margin-top:0.5rem;font-weight:var(--bold);display: block;margin:auto;}
.modalzag {font-size:1.3rem;font-weight:var(--bold);text-align:center;color:#000}
.modalopis{margin:0 auto;max-width:18rem;margin-top:0.4rem;margin-bottom:1.4rem;font-size:1.0rem;line-height: 1.3rem;text-align:center;color:var(--main); opacity: 0.7;}


.pol {margin-top:1rem;display: flex;align-items: flex-start;opacity: 0.7;}
.pol input {margin-top:0.7rem;margin-right:0.7rem;}
.pol p {font-size:0.73rem;margin-top:0.5rem; }
.pol a {border-bottom: 1px solid;}

.politika {padding-top:2rem;padding-bottom:2rem;}
.politika-back {margin-bottom:2rem; display: inline-block;font-size: 1.1rem;}
.politika p {margin-top:1.2rem;margin-bottom:1.2rem;font-size: 1.1rem;line-height: 140%;}
.politika h1 {margin-bottom:1rem;font-size: 1.8rem;line-height: 2.2rem;}
.politika h2 {margin-bottom:1rem;margin-top:2rem;font-size: 1.4rem;line-height: 1.8rem;}
.politika li {margin-top:1.2rem;margin-bottom:1.2rem;font-size: 1.1rem;line-height: 140%;list-style-type: circle;margin-left:1.7rem;padding-left:0.4rem;}
.politika table td {padding: 0.9em 1.1rem; border:1px solid #ddd; font-size:0.9rem;line-height: 140%;}
.politika a {border-bottom:1px solid;}
.politika table {padding: 0; margin:0; box-sizing: border-box;}
.politika table td {vertical-align: top;}
.politika ol {padding-left:0;}
.thanks {min-height:100vh;}
.thanks .yandex {display: none;}
.thanks-link {border-bottom:1px solid;font-size: 0.9rem;margin-bottom:1rem;display: inline-block;font-weight: var(--semibold);}
@media screen and (max-width: 1519px) and (min-width:1120px) {
    html{font-size: var(--fz-2);}
    .wr{max-width:98%;}
    /* ------------------------------------------------------------------ */

    /* Блоки второстепенные общее */
    .semi-block {padding-top:2rem;padding-bottom:1rem;}
    /* Блоки поинты общее */
    .point-block {padding-top:2rem;padding-bottom:1rem;}

    /* Блок компания общее */
    .com-block {padding-top:2rem;padding-bottom:1rem;}

    /* Блок контакты общее */
    .cont {padding-top:2rem;padding-bottom:1rem;}
    /* Блок 3-3-2-1 */
    .g-3321{gap:2%;}
    .g-3321 .fw-block {width:32%;margin-bottom:3%;}
    /* Блок 4-4-3-1 */
    .g-4431{gap:2%;}
    .g-4431 .fw-block {width:23.5%;margin-bottom:3%;}
    /* Блок 5-4-3-1 */
    .g-5431{gap:2%;}
    .g-5431 .fw-block {width:23.5%;margin-bottom:3%;}

    .objects .wr {padding-bottom:0;}
    .comand .wr {position: relative;}
    .comand .fw-block {width:96%;margin-left:2%;margin-right:2%;}
    .comand .owl-prev {position: absolute;left:-1.4rem;top:14rem;display: block;}
    .comand .owl-next {position: absolute;right:-1.4rem;top:14rem;display: block;}

    .puntki-wrap .fw-block{width:18%;}

    .voprosi {padding-top:2rem;}

    .otvet-zag {margin-top:2rem !important;}

    .footer .fw-block {margin-bottom:0;}
}

@media screen and (max-width: 1119px) and (min-width:720px) {
    html{font-size: var(--fz-3);}
    .header .yandex {display: none;}
    .wr{max-width:100%; padding-top:1rem;padding-bottom:1rem;}
    .top-header {padding-top:1rem;padding-bottom:1rem;}
    .top-menu {padding-top:1rem;padding-bottom:1rem;}
    .top-menu li a{padding-left:1rem;padding-right:1rem;}
    .logo p {display: none;}
    .main {padding-top:2rem;}
    .main-plusi {margin-top:3rem !important;}

    h1 {font-size: 1.8rem;line-height: 2.2rem;}
    h1 span {font-size: 1.8rem;line-height: 2.2rem;}
    .semi-zag {font-size: 1.4rem;line-height: 1.9rem;}
    .semi-zag2 {font-size: 1.3rem;line-height: 1.6rem;}

    /* Главный экран v1*/
    .header-v1 .main-plusi {gap:1rem;}
    .header-v1 h1 {max-width:30rem;}
    .header-v1 .semi-zag {max-width:36rem;}
    .header-v1 .main-plusi div {flex-direction: column;align-items: flex-start;}
    .header-v1 .main-plusi div p {margin-left:0;margin-top:1rem;max-width:10.6rem}
    .left-main {width:55%;}
    .right-main {right:3rem;}
    .header-v1 .right-main img {width:21rem;}


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

    /* Блоки второстепенные общее */
    .fw {padding-top:2rem;}
    .semi-block {padding-top:3rem;padding-bottom:1rem;}
    h2 {font-size: 1.6rem;line-height: 1.9rem;}
    h2 span {font-size: 1.6rem;line-height: 1.9rem;}
    .fw-block-text {padding:1.7rem;}
    .fw-block-zag {font-size: 1.2rem;line-height: 1.5rem;}
    .fw-block-opis{font-size: 1.0rem;line-height: 1.3rem;}
    .fw-block-span {font-size: 0.9rem;line-height: 1.1rem;}
    .semi-btn-wrap {margin-top:2rem;}
    /* Блоки поинты общее */
    .point-block {padding-top:2rem;padding-bottom:1rem;}

    
    /* Блок контакты общее */
    .cont {padding-top:2rem;padding-bottom:1rem;}
    /* Блок 3-3-2-1 */
    .g-3321 {gap:2%;}
    .g-3321 .fw-block {width:49%;margin-bottom:3%;}
    /* Блок 4-4-3-1 */
    .g-4431 {gap:2%;}
    .g-4431 .fw-block {width:32.0%;margin-bottom:3%;}
    /* Блок 5-4-3-1 */
    .g-5431 {gap:2%;}
    .g-5431 .fw-block {width:32.0%;margin-bottom:3%;}
    /* Блок компания общее */
    .com-block {padding-top:2rem;padding-bottom:1rem;}
    .com-block .fw {justify-content: space-around;}
    .com-block-bg {padding:2rem 2rem 2rem 2rem}
    .com-plusi {padding-right: 2rem;}
    .com-plusi .fw-block{width: 42%}
    /* Блок контакты общее */
    .cont .fw {flex-wrap: wrap;}

    .cont-block-left div {margin-bottom:0;}
    .cont-block-left {width: 100%; flex-direction: row;display: flex;flex-wrap: wrap; justify-content: space-between;margin-bottom:3rem;}
    .cont-block-left h3 {width:100%;}
    .cont-map {height:20rem;width:70%;}
    .cont-map div {border-radius:1.5rem}
    .cont-photo {width:29%;}

    .comand .wr {position: relative;}
    .comand .fw-block {width:96%;margin-left:2%;margin-right:2%;}
    .comand .owl-prev {position: absolute;left:-1.4rem;top:14rem;display: block;}
    .comand .owl-next {position: absolute;right:-1.4rem;top:14rem;display: block;}
    .ya-otz {height:40rem;}
    .puntki-wrap .fw-block{width:18%;}
    .shtrafy {padding-top:5rem;}
    .shtrafy h2 {max-width:40rem;}
    .shtrafy .btn {margin-top:2rem;}
    .voprosi {padding-top:2rem;}

    .otvet-zag {margin-top:2rem !important;}
    .cont-block-left {align-items: center;}
    .cont-map {height:30rem;}
    .footer .fw-block {margin-bottom:0;}
    .footer .fw-block:nth-child(2) {width:15rem;}
}
@media screen and (max-width:720px) {

    /* Фикс меню */

  .mobmenuwrap {display:block;position:fixed;z-index:100; width:100%;top:-10rem}
  .mobmenubtn {cursor:pointer;width:1.2rem;height:1.2rem;border-radius:50%;display:flex;align-items: center;flex-wrap:wrap;justify-content: center;z-index:100}
  .mobmenubtn div {width:100%;height:0.20rem;background:var(--accent);}
  .mobmenucls {cursor:pointer;z-index:250; position:fixed;right:1.5rem;top:1rem;display:flex;align-items:center;justify-content: center; border-radius:50%;display:flex;align-items: center;flex-wrap:wrap;justify-content: center;color:#FF6600;font-size:1.5rem;}
  .mobmenu {position: fixed;top:0.5rem;right:0.5rem;width:65vw;border-radius:1rem; background:#fff;box-shadow: 0 0 30px rgba(0, 0, 0, 0.14);z-index:150;}
  .mobmenu ul {margin-top:2.6rem; border-top:1px solid #eee}
  .mobmenu li {font-size: 2.1vw;list-style-type: none;}
  .mobmenu li a {display: block;padding:1.2rem 1.8rem; border-bottom:1px solid #eee; font-weight: 500; font-size:1.0rem;color:#000}
  
  .mobmenu li:first-child  a{padding-top:1.6rem;}
  .mobmenu li:last-child a {padding-bottom:1.6rem;}
  .mobtopbtn{margin-top:2rem;margin-bottom:2rem;}
  .mobcont {text-align:left;margin-top:2rem; padding-left:1.8rem}
    .mobcont a {font-size: 1.2rem;font-weight: 700;}
  .mobmenu .btn {padding:1.8rem 2.4rem; font-size: 1.2rem; font-weight: 500;margin-left:2.2rem}
  .mobmenu{display: none;}
  .mobmenu .btn {margin-top:2rem;}
.top-phone-opis-2 {font-size: 0.9rem;color:#555;margin-top:0.2rem;}
.mob-phone{font-size:1.0rem;}
.top-cont img {max-width:18px;height:auto;}
.top-tg {width:3rem;height:3rem;margin-right:0.7rem;}
.top-tg img {margin-left:-0.4rem;}
.top-email {width:3rem;height:3rem;margin-right:1rem;}
.top-cont a:last-child {font-size: 1.2rem;}
.mobtop-cont {padding-left:2rem;margin-top:1rem;}
.mobtop-cont p {color:#000;font-size: 1.1rem;font-weight:600;margin-bottom:0.2rem;margin-top:2rem}
.mobtop-cont div {display: flex;align-items: center;}
.mobtop-cont div a {font-weight: 500;font-size: 1.4rem;}
.messenger-fixed {gap:0.2rem;}

.topmenuwrap {top:0;}


    html{font-size: var(--fz-4);}
    .wr{max-width:100%;padding-left:1.5rem;padding-right:1.5rem;}
    .fdc {flex-direction: column;}
    .fdc div {width:100%;}
    .topmenuwrap .wr {padding-top:0.5rem;padding-left:0.5rem; padding-right:0.5rem;}
    .fixed-menu {display: none;}
    .fixed-phone {font-size: 1rem;}
    .topmenubg {padding-left:0.6rem;padding-right:1rem;}
    /* Главный экран общее*/
    .top-header {align-items: flex-start;padding-top:3.6rem; padding-bottom:0;}
    .top-menu {display: none !important;}
    .header .logo {padding-bottom:2rem;display: flex;}
    .top-adress {max-width: 100%;padding-bottom:2rem;margin-top:2rem;}
    .top-adress p:last-child {font-size: 0.9rem;}
    .top-messengers {padding-bottom:2rem;max-width:100%;}
    .top-phone {padding-bottom:1rem;}
    .top-header .btn {width:10rem;text-align: center;}
    .main {padding-top:0;padding-bottom:1rem;}
    h1 {font-size:1.4rem;line-height: 1.6rem; margin-bottom:1.0rem;margin-top:0;}
    h1 span {font-size:1.4rem;line-height: 1.6rem;}
    .semi-zag {font-size: 1.1rem;line-height:1.4rem;}
    .semi-zag2 {margin-top:1.6rem;font-size: 1.0rem;line-height: 1.2rem;}
    .main .btn {width:17rem;text-align: center;align-items: center; justify-content: center;font-size: 1.1rem;margin-bottom:0;}
    .left-main-btn {margin-top:2rem;}
    .left-main-btn p {text-align: center;margin-left:0;}
    .main-plusi {margin-top:2.5rem !important;gap:0.7rem}
    .header-v1 .right-main img {width:100%;}
    /* Главный экран v1*/
    .header-v1 .main-plusi {margin-bottom:4rem;}
    /* Главный экран v2*/
    .main-v2 .left-main-btn {flex-direction: column;margin-top:3rem;}
    .main-v2 .left-main-btn p {margin-left:0; text-align: center;margin-top:1rem;}
    /* Главный экран v3*/
    .header-v3 h1 {margin-top:0;}
    .header-v3 .main {padding-top:0rem;}

    .right-main {position: unset;margin-bottom:6rem;}
    .right-main div {bottom:2rem;left:2.1rem; width:16.2rem}



     .header .top-messengers {display: none;}
     .header .top-adress {display: none;}
     .header .top-phone {display: none;}
     
/* ------------------------------------------------------------------ */

    /* Блоки второстепенные общее */
    .fw {padding-top:3rem;}
    .semi-block {padding-top:1rem;padding-bottom:1rem;}
    h2 {font-size: 1.6rem;line-height: 1.8rem;margin-bottom:0.7rem;}
    h2 span {font-size: 1.6rem;line-height: 1.8rem;}
    .opis-zag-1 {margin-bottom:0.6rem;font-size: 1.2rem;line-height: 1.5rem;}
    .fw-block-text {padding:1.7rem;}
    .fw-block-zag {font-size: 1.2rem;line-height: 1.5rem;}
    .fw-block-opis{font-size: 1.0rem;line-height: 1.3rem;}
    .fw-block-span {font-size: 0.9rem;line-height: 1.1rem;}
    .semi-btn-wrap {margin-top:2rem;}
    /* Блоки поинты общее */
    .point-block {padding-top:1rem;padding-bottom:1rem;}
    .point-block .fw {padding-top:2rem;}
    .objects .fw-block {width:48% !important; flex-direction: column;}
        .objects .fw-block p {margin-left:0;margin-top:1rem;text-align: center;font-size: 0.9rem;font-weight: var(--semibold);}
    /* Блок компания общее */
    .com-block {padding-top:1rem;padding-bottom:1rem;}

    /* Блок контакты общее */
    .cont {padding-top:1rem;padding-bottom:1rem;}

    /* Блок 3-3-2-1 */
    .g-3321 .fw-block {width:100%;margin-bottom:2rem;}
    /* Блок 4-4-3-1 */
    .g-4431 .fw-block {width:100%;margin-bottom:2rem;}
    /* Блок 5-4-3-1 */
    .g-5431 .fw-block {width:100%;margin-bottom:2rem;}
    .g-2211 .fw-block {width:100%;margin-bottom:2rem;}
    .works .fw-block-text div {width:12rem;}
    .works .fw-block-text {padding-bottom:0;}
    .works-btns {position: unset;padding:1rem 1.6rem 1.6rem 1.6rem;}

    .com-block .wr {padding-top:0}
    .com-block-bg {padding:1.5rem;}
    .com-block-bg .fw-block {width:100%;}
    .com-block-bg .fw-block:nth-child(1) {margin-bottom:2rem;}

    .com-plusi {padding:1.6rem 1.6rem 0 1rem;}
    .com-plusi p {padding-right:0;}

    .comand {padding-top:0;}
    .comand h2 {text-align: center;}
    .comand .fw {padding-top:1rem;} 
    .comand .wr {position: relative;}
    .comand .fw-block {width:96%;margin-left:2%;margin-right:2%;margin-bottom:0;}

    .comand .fw-block img {width:65%;display: block;margin:auto;}
    .comand .owl-prev {position: absolute;left:0rem;top:7rem;display: block;}
    .comand .owl-next {position: absolute;right:0rem;top:7rem;display: block;}

    .pisma .owl-prev {position: absolute;left:-1rem;top:4.8rem;display: block;}
    .pisma .owl-next {position: absolute;right:-1rem;top:4.8rem;display: block;}


    .comand .fw-block-text {padding:1.4rem 0.5rem 1rem 0.5rem ;}
    .comand .fw-block-opis {font-size: 0.86rem;}

    .otzivi {padding-bottom: 1rem;}
    .otzivi .fw-point {width:100%;}
    .good span {font-size: 0.8rem;line-height: 1.1rem;}
    .otzivi .fw-point:nth-child(1) {margin-bottom:3rem;}
    .otz-car {padding-left:2.2rem;padding-right:2.2rem;padding-bottom:0.5rem;}
    .otz-name{font-size: 0.9rem;}
    .otz-opis {font-size:0.7rem;}
    .otz-ocenka p {font-size:0.7rem;}
    .otz-text {padding-bottom:1rem;font-size: 0.8rem;line-height: 1.1rem;}
    .otz-car .owl-prev {position: absolute;left:-1rem;top:12rem;display: block;}
    .otz-car .owl-next {position: absolute;right:-1rem;top:12rem;display: block;}
    .otz-link {margin-bottom:2rem;}
    .owl-nav button {width:2rem;height:2rem;}
    .otziv {padding:0}
    .left-main-btn {flex-direction: column;}
    .left-main-btn p {text-align: center;margin-left:0;margin-top:1rem;}
    .zayavka img {position: unset;width:100%;height:auto;margin-top:2rem;}
    .zayavka .wr {padding-bottom:0 !important}
    .punkti .fw {padding-top:0;padding-bottom:1rem;}
    .punkti .fw-block {margin-bottom:1rem;}
    .punkti .fw-block p {margin-top:1.4rem;}
    .puntki-wrap {padding:1.9rem 1.9rem 0 1.9rem;border-radius:1.6rem;}
    .puntki-wrap i {display: block;margin-top:2rem;}
    .shtrafy .fw {padding-top:1rem;}
    .shtrafy .fw-block {padding:1.4rem;}
    .shtrafy .btn {margin-top:1rem;}

    .voprosi {padding-top:1rem;}
    .vopros {padding: 1rem 1.2rem;}
    .vopros p {font-size: 0.9rem;line-height: 1.1rem;}
    .otvet {padding:0.2rem 1.6rem 1.8rem 1.6rem}
    .otvet p {font-size: 0.9rem;line-height: 1.2rem;}
    .otvet ul li {font-size: 0.9rem;line-height: 1.2rem;}
    .otvet-zag {font-size: 1rem;line-height: 1.3rem !important;margin-top:2rem !important;}
    /* Блок контакты общее */
    .cont .wr {padding-top:0; padding-bottom:0;}
    .cont {padding-top:0}
    .cont-block-left div {margin-bottom:0;}
    .cont-block-left {width: 100%;margin-bottom:3rem;}
    .cont-block-left h3 {width:100%;}
    .cont-map {height:20rem;}
    .cont-map div {border-radius:1.5rem;width:100%;}
    .cont-photo {width:100%;}
    .cont-photo div {height:10rem;margin-top:1rem;}

    .footer {margin-bottom:0;}
    .footer .fw {border-radius:2rem;padding:1rem 2rem;}
    .footer .wr {margin-bottom:0;}
    .footer .fw-block {margin-bottom:0;width:100% !important;margin-top:0.5rem;margin-bottom:0.5rem;}

    .modal {width:19rem; top:10vw}
    .modaltext {padding:3.6rem 2rem 2rem 2rem}
    .modalzag {font-size: 1.1rem;line-height: 1.3rem;}
    .modalopis {font-size: 0.86rem;line-height: 1.0rem;}
    .modalform .btn {padding:1.7rem 1rem;margin-top:1rem;}

    .politika {padding-top:0;padding-bottom:2rem;}
    .politika-back {margin-bottom:2rem; display: inline-block;font-size: 0.9rem;}
    .politika p {margin-top:1.2rem;margin-bottom:1.2rem;font-size: 0.9rem;line-height: 140%;}
    .politika h1 {margin-bottom:1rem;font-size: 1.3rem;line-height: 1.5rem;}
    .politika h2 {margin-bottom:1rem;margin-top:2rem;font-size: 1.1rem;line-height: 1.4rem;}
    .politika li {margin-top:1.2rem;margin-bottom:1.2rem;font-size: 0.9rem;line-height: 140%;list-style-type: circle;margin-left:1.7rem;padding-left:0.4rem;}
    .politika table td {padding: 0.9em 1.1rem; border:1px solid #ddd; font-size:0.9rem;line-height: 140%;}
}