/* МосСтройка — основная таблица стилей */
html{-webkit-text-size-adjust:100%}
*{box-sizing:border-box}
body{margin:0;background:#e7e7e7;font:12px/1.65 Arial,Helvetica,sans-serif;color:#555}
a{color:#e5572b}
a:hover{color:#c43f15}
img{max-width:100%;height:auto;border:0}
h1,h2,h3{font-weight:normal;color:#333}
.wrap{width:1000px;margin:0 auto;position:relative}

/* ---------- Шапка ---------- */
.header{background:#2e2e2e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6'%3E%3Cpath d='M0 6L6 0' stroke='%23363636' stroke-width='1.2'/%3E%3C/svg%3E");height:52px;border-bottom:1px solid #1d1d1d}
.header .wrap{display:flex;align-items:center;height:52px}
.logo{font:bold 25px/1 "Arial Black",Arial,sans-serif;letter-spacing:-.5px;text-decoration:none;color:#fff;text-transform:uppercase;margin-right:34px;white-space:nowrap}
.logo span{color:#e5572b}
.logo:hover{color:#fff}
.topnav{display:flex;gap:0;margin:0;padding:0;list-style:none;flex:1}
.topnav a{display:block;color:#e8e8e8;text-decoration:none;font-size:12px;padding:0 13px;line-height:52px}
.topnav a:hover,.topnav a.active{color:#fff;background:#3a3a3a;box-shadow:inset 0 -3px 0 #e5572b}
.hcontacts{display:flex;align-items:center;gap:16px;color:#fff;font-size:12px;white-space:nowrap}
.hcontacts .mail{color:#fff;text-decoration:none;font-weight:bold}
.hcontacts .mail small{display:block;font-weight:normal;color:#9c9c9c;font-size:10px;line-height:1.2}
.callme{display:flex;align-items:center;gap:6px;color:#e5572b;text-transform:uppercase;font-size:11px;text-decoration:underline;cursor:pointer;background:none;border:0;font-family:inherit;padding:0}
.callme i{display:inline-block;width:18px;height:18px;border:2px solid #e5572b;border-radius:50%;position:relative}
.callme i:after{content:"";position:absolute;left:4px;top:3px;width:5px;height:6px;border-right:2px solid #e5572b;border-bottom:2px solid #e5572b;transform:rotate(45deg)}
.callme:hover{color:#ff7b4f}
.burger{display:none}

/* ---------- Каркас страницы ---------- */
.page{background:#f3f3f3;padding:22px 0 40px}
.cols{display:flex;align-items:flex-start;gap:20px}
.sidebar{width:170px;flex:0 0 170px}
.content{flex:1;min-width:0}
.aside{width:180px;flex:0 0 180px}

/* ---------- Левое меню ---------- */
.side-title{color:#e5572b;font:bold 13px/1.2 Arial,sans-serif;text-transform:uppercase;border-bottom:2px solid #e5572b;padding:0 0 5px;margin:0 0 12px}
.smenu,.smenu ul{list-style:none;margin:0;padding:0}
.smenu>li{margin:0 0 9px}
.smenu>li>a{color:#444;text-decoration:none;font-size:12px;display:block;padding-left:12px;position:relative}
.smenu>li>a:before{content:"";position:absolute;left:0;top:5px;border:4px solid transparent;border-left:5px solid #666}
.smenu>li.open>a:before{border-left-color:transparent;border-top:5px solid #e5572b;left:-2px;top:7px}
.smenu>li>a:hover,.smenu>li.open>a{color:#e5572b}
.smenu ul{margin:7px 0 4px 6px}
.smenu ul li{margin:0 0 4px}
.smenu ul a{font-size:11px;line-height:1.35;display:block;padding:2px 4px}
.smenu ul a.cur{background:#e5572b;color:#fff;text-decoration:none}
.side-block{margin-bottom:26px}
.rubrics{list-style:none;margin:0;padding:0}
.rubrics li{border-bottom:1px dotted #ccc;padding:5px 0;display:flex;justify-content:space-between}
.rubrics a{text-decoration:none;color:#444}
.rubrics a:hover,.rubrics a.cur{color:#e5572b}
.rubrics span{color:#aaa;font-size:11px}
.side-note{background:#fff;border-left:3px solid #e5572b;padding:10px 12px;font-size:11px;line-height:1.5}

/* ---------- Крошки и заголовки ---------- */
.crumbs{font-size:10px;text-transform:uppercase;font-weight:bold;color:#333;margin:0 0 6px}
.crumbs a{color:#3d7ab8}
.crumbs a:hover{color:#e5572b}
.crumbs .sep{color:#999;margin:0 3px}
h1.ptitle{font:bold 12px/1.3 Arial,sans-serif;text-transform:uppercase;color:#222;border-bottom:1px solid #d4d4d4;padding:0 0 7px;margin:0 0 14px}

/* ---------- Текст ---------- */
.text p{margin:0 0 12px}
.text h2{font:22px/1.25 "Trebuchet MS",Arial,sans-serif;color:#333;margin:28px 0 12px;padding-bottom:8px;border-bottom:1px solid #e0e0e0}
.text h3{font:bold 14px/1.35 Arial,sans-serif;color:#333;margin:20px 0 8px}
.text ul,.text ol{margin:0 0 14px;padding:0 0 0 2px}
.text ul{list-style:none}
.text ul li{position:relative;padding:4px 0 4px 18px;border-bottom:1px solid #e6e6e6}
.text ul li:last-child{border-bottom:0}
.text ul li:before{content:"";position:absolute;left:2px;top:12px;width:8px;height:2px;background:#e5572b}
.text ol{padding-left:22px}
.text ol li{padding:3px 0}
.text ol li::marker{color:#e5572b;font-weight:bold}
.text table{width:100%;border-collapse:collapse;margin:6px 0 16px;background:#fff;font-size:12px}
.text th{background:#3a3a3a;color:#fff;font-weight:normal;text-align:left;padding:7px 9px;border:1px solid #3a3a3a}
.text td{padding:6px 9px;border:1px solid #ddd;vertical-align:top}
.text tr:nth-child(even) td{background:#fafafa}
.text blockquote{margin:14px 0;padding:12px 16px 12px 18px;background:#fff;border-left:3px solid #e5572b;font-style:italic;color:#555}
.text blockquote p:last-child{margin:0}
.text strong{color:#333}
.tablewrap{overflow-x:auto}

/* ---------- Правая колонка ---------- */
.formbox{background:#fff;padding:14px 12px 16px;margin-bottom:22px;box-shadow:0 1px 0 #ddd}
.formbox .ftitle{color:#e5572b;font:bold 13px/1.3 Arial,sans-serif;text-transform:uppercase;margin:0 0 12px}
.fld{margin:0 0 9px}
.fld label{display:block;font-size:10px;color:#999;margin:0 0 2px}
.fld input,.fld select,.fld textarea{width:100%;border:1px solid #d7d7d7;background:#f7f7f7;padding:6px 8px;font:12px Arial,sans-serif;color:#444;border-radius:0}
.fld textarea{height:70px;resize:vertical}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:#e5572b;background:#fff}
.agree{display:flex;gap:6px;align-items:flex-start;font-size:10px;line-height:1.4;color:#777;margin:4px 0 10px;cursor:pointer}
.agree input{margin:1px 0 0;flex:0 0 auto;width:13px;height:13px;accent-color:#e5572b}
.agree.err{color:#d11}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#e5572b;color:#fff;border:0;border-bottom:3px solid #b8421b;text-transform:uppercase;font:bold 12px Arial,sans-serif;padding:10px 18px;cursor:pointer;text-decoration:none;border-radius:2px}
.btn:hover{background:#f0632f;color:#fff}
.btn i{display:inline-block;width:16px;height:16px;border:2px solid #fff;border-radius:50%;position:relative}
.btn i:after{content:"";position:absolute;left:3px;top:3px;width:4px;height:4px;border-top:2px solid #fff;border-right:2px solid #fff;transform:rotate(45deg)}
.btn.full{width:100%}
.btn.gray{background:#4a4a4a;border-bottom-color:#2c2c2c}
.btn.gray:hover{background:#5a5a5a}
.fnote{font-size:10px;color:#999;line-height:1.4;margin:8px 0 0}
.fnote a{color:#999}
.fok{display:none;background:#f1f8ec;border:1px solid #cfe3c0;color:#4d7a33;padding:10px;font-size:12px;margin-top:10px}
.sent .fok{display:block}
.sent .fbody{display:none}

.rev-title{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #e5572b;margin:0 0 12px;padding-bottom:4px}
.rev-title b{color:#e5572b;text-transform:uppercase;font-size:13px}
.rev-title a{font-size:11px;color:#3d7ab8}
.rslider{position:relative;padding:0 16px;min-height:220px}
.rslide{display:none;font-size:11px;line-height:1.55;font-style:italic;color:#666}
.rslide.on{display:block}
.rslide .who{font-style:normal;color:#999;font-size:10px;margin-top:8px}
.rslider .ra{position:absolute;top:34px;color:#e5572b;font-size:22px;cursor:pointer;background:none;border:0;padding:0;line-height:1}
.rslider .prev{left:-4px}.rslider .next{right:-4px}

/* ---------- Карточки ---------- */
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:0 0 20px}
.card{background:#fff;box-shadow:0 1px 0 #ddd;display:flex;flex-direction:column}
.card .th{display:block;aspect-ratio:3/2;overflow:hidden;background:#ddd}
.card .th img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.card:hover .th img{transform:scale(1.04)}
.card .cb{padding:10px 12px 14px;flex:1;display:flex;flex-direction:column}
.card .ct{font:bold 13px/1.35 Arial,sans-serif;color:#333;text-decoration:none;margin:0 0 6px}
.card .ct:hover{color:#e5572b}
.card .cx{font-size:11px;color:#777;margin:0 0 8px;flex:1}
.card .cm{font-size:11px;color:#999;display:flex;justify-content:space-between;align-items:center;gap:8px}
.card .cm a{color:#e5572b}
.price-tag{font-weight:bold;color:#e5572b}
.more{font-size:11px;text-transform:uppercase;font-weight:bold}

.pricebox{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border-left:3px solid #e5572b;padding:12px 16px;margin:0 0 18px}
.pricebox .pv{font-size:12px;color:#777}
.pricebox .pv b{display:block;font-size:20px;color:#e5572b;font-weight:bold}
.cta{background:#3a3a3a;color:#ddd;padding:18px 20px;margin:24px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}
.cta b{color:#fff;font-size:15px;display:block;margin-bottom:3px}
.cta p{margin:0;font-size:12px}
.linklist{list-style:none;margin:0 0 18px;padding:0;columns:2;column-gap:20px}
.linklist li{padding:3px 0 3px 12px;position:relative;break-inside:avoid}
.linklist li:before{content:"›";position:absolute;left:0;color:#e5572b;font-weight:bold}
.subhead{font:bold 12px Arial,sans-serif;text-transform:uppercase;color:#333;border-bottom:1px solid #d4d4d4;padding-bottom:6px;margin:26px 0 12px}
.ameta{font-size:11px;color:#999;margin:-6px 0 14px}
.ameta a{color:#3d7ab8}
.hero-img{margin:0 0 16px;background:#ddd}
.hero-img img{display:block;width:100%}
.pager{display:flex;gap:4px;margin:10px 0 0;flex-wrap:wrap}
.pager a,.pager span{display:inline-block;min-width:28px;text-align:center;padding:4px 8px;background:#fff;border:1px solid #ddd;text-decoration:none;color:#555}
.pager span.cur{background:#e5572b;border-color:#e5572b;color:#fff}
.pager a:hover{border-color:#e5572b;color:#e5572b}
.prevnext{display:flex;justify-content:space-between;gap:16px;margin:20px 0;font-size:11px}
.prevnext a{max-width:48%;text-decoration:none}
.prevnext small{display:block;color:#999;text-transform:uppercase}

/* ---------- Галерея ---------- */
.project{background:#fff;box-shadow:0 1px 0 #ddd;display:flex;gap:16px;padding:14px;margin:0 0 16px}
.project .pimg{flex:0 0 250px}
.project .pimg img{display:block;width:100%}
.project h3{margin:0 0 6px;font:bold 14px/1.3 Arial,sans-serif;color:#333}
.project .pmeta{font-size:11px;color:#999;margin:0 0 8px}
.project .pmeta b{color:#e5572b;font-weight:normal}
.project p{margin:0 0 8px}
.tags{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}
.tags li{background:#f1f1f1;border:1px solid #e3e3e3;font-size:10px;padding:1px 6px}
.gfilter{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 16px}
.gfilter button{background:#fff;border:1px solid #ddd;padding:5px 10px;font:11px Arial,sans-serif;cursor:pointer;color:#555}
.gfilter button.on{background:#e5572b;border-color:#e5572b;color:#fff}

/* ---------- Отзывы/FAQ ---------- */
.review{background:#fff;padding:14px 16px;margin:0 0 12px;box-shadow:0 1px 0 #ddd;position:relative}
.review:before{content:"\201C";position:absolute;right:14px;top:0;font:60px/1 Georgia,serif;color:#f0d6cc}
.review .rh{font-size:11px;color:#999;margin:0 0 6px}
.review .rh b{color:#333;font-size:13px;margin-right:6px}
.review p{margin:0;font-style:italic}
.faq details{background:#fff;margin:0 0 6px;box-shadow:0 1px 0 #ddd}
.faq summary{cursor:pointer;padding:10px 34px 10px 14px;font-weight:bold;color:#333;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:14px;top:6px;color:#e5572b;font-size:18px}
.faq details[open] summary:after{content:"−"}
.faq details[open] summary{color:#e5572b}
.faq .fa{padding:0 14px 12px}

/* ---------- Контакты ---------- */
.cinfo{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 18px}
.cinfo div{background:#fff;padding:12px 14px;box-shadow:0 1px 0 #ddd}
.cinfo b{display:block;color:#e5572b;text-transform:uppercase;font-size:11px;margin-bottom:3px}
.map{background:#fff;padding:6px;box-shadow:0 1px 0 #ddd;margin:0 0 18px}
.map svg{display:block;width:100%;height:auto}
.socials{display:flex;gap:6px}
.socials span{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#5a5a5a;color:#fff;font-size:10px;font-weight:bold;cursor:default}

/* ---------- Главная ---------- */
.hero{position:relative;height:430px;overflow:hidden;background:#333}
.hero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,30,30,.92) 0,rgba(30,30,30,.78) 55%,rgba(30,30,30,.25) 100%)}
.hero .in{position:relative;display:flex;justify-content:space-between;align-items:center;height:100%;padding:0 30px}
.hero .ht{max-width:560px;color:#ddd}
.hero .kick{color:#e5572b;text-transform:uppercase;font-weight:bold;font-size:12px;letter-spacing:.5px}
.hero h1{color:#fff;font:bold 32px/1.15 Arial,sans-serif;margin:8px 0 14px;text-transform:none}
.hero h1 span{color:#e5572b}
.hero ul{list-style:none;margin:0 0 20px;padding:0;font-size:13px}
.hero li{padding:3px 0 3px 18px;position:relative}
.hero li:before{content:"";position:absolute;left:0;top:11px;width:9px;height:2px;background:#e5572b}
.hero .formbox{width:240px;margin:0}
.sect{background:#f3f3f3;padding:34px 0}
.sect.white{background:#fff}
.sect.dark{background:#353535;color:#bbb}
.sect.dark .stitle{color:#fff;border-color:#555}
.stitle{font:24px/1.2 "Trebuchet MS",Arial,sans-serif;color:#333;margin:0 0 6px;padding:0 0 10px;border-bottom:1px solid #ddd;position:relative}
.stitle:after{content:"";position:absolute;left:0;bottom:-1px;width:60px;height:3px;background:#e5572b}
.slead{margin:12px 0 22px;max-width:760px}
.home-top{display:flex;gap:24px;align-items:flex-start}
.home-top .sidebar{padding-top:2px}
.partners{background:#fff;padding:18px 20px 8px;box-shadow:0 1px 0 #ddd;margin-top:22px}
.partners .ptitle{font:22px/1.25 "Trebuchet MS",Arial,sans-serif;color:#333;margin:0 0 8px;padding:0 0 8px;border-bottom:1px solid #e0e0e0;position:relative}
.partners .ptitle:after{content:"";position:absolute;left:0;bottom:-1px;width:60px;height:3px;background:#e5572b}
.partner{display:flex;gap:18px;align-items:center;padding:14px 0;border-bottom:1px dashed #ddd}
.partner:last-child{border-bottom:0}
.partner .plogo{flex:0 0 170px;height:90px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e6e6e6;padding:8px}
.partner .plogo img{max-height:74px;width:auto;max-width:150px}
.partner .plogo:hover{border-color:#e5572b}
.partner p{margin:0}
.partner b{color:#333}
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.svc{background:#fff;box-shadow:0 1px 0 #ddd;display:flex;flex-direction:column}
.svc img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.svc .sb{padding:10px 12px 12px}
.svc .sn{font:bold 13px Arial,sans-serif;color:#333;text-decoration:none;display:block;margin-bottom:6px}
.svc .sn:hover{color:#e5572b}
.svc ul{list-style:none;margin:0;padding:0;font-size:11px}
.svc li{padding:1px 0}
.svc .pf{margin-top:8px;font-size:11px;color:#999}
.svc .pf b{color:#e5572b}
.adv{display:grid;grid-template-columns:repeat(4,1fr);gap:22px 20px}
.adv div{padding-left:52px;position:relative}
.adv b{display:block;color:#333;font-size:13px;margin-bottom:4px}
.adv svg{position:absolute;left:0;top:0;width:40px;height:40px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:st}
.steps div{background:#fff;padding:16px 14px 14px;box-shadow:0 1px 0 #ddd;position:relative;counter-increment:st}
.steps div:before{content:counter(st,decimal-leading-zero);display:block;font:bold 26px/1 Arial,sans-serif;color:#e5572b;margin-bottom:8px}
.steps b{display:block;color:#333;margin-bottom:4px;font-size:13px}
.nums{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.nums b{display:block;font:bold 36px/1 Arial,sans-serif;color:#e5572b;margin-bottom:6px}
.nums span{color:#ccc}
.calc{display:flex;gap:24px;background:#fff;padding:20px;box-shadow:0 1px 0 #ddd}
.calc .cf{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}
.calc .cr{flex:0 0 260px;background:#3a3a3a;color:#ccc;padding:18px;display:flex;flex-direction:column;justify-content:center}
.calc .cr b{display:block;color:#e5572b;font-size:28px;margin:6px 0}
.calc .chk{display:flex;gap:6px;align-items:center;font-size:12px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.chklist{list-style:none;margin:0;padding:0}
.chklist li{padding:6px 0 6px 26px;position:relative;border-bottom:1px solid #e6e6e6}
.chklist li:before{content:"";position:absolute;left:3px;top:9px;width:10px;height:5px;border-left:2px solid #e5572b;border-bottom:2px solid #e5572b;transform:rotate(-45deg)}
.team div{background:#fff;padding:14px;box-shadow:0 1px 0 #ddd}
.team b{color:#333;display:block;margin-bottom:4px}
.districts{columns:5;column-gap:16px;list-style:none;margin:0;padding:0;font-size:11px}
.districts li{padding:2px 0;break-inside:avoid}
.seo-text{columns:1}
.bottom-form{display:flex;gap:30px;align-items:center;background:#3a3a3a;padding:24px 26px;color:#ccc}
.bottom-form .bt{flex:1}
.bottom-form .bt b{color:#fff;font-size:20px;display:block;margin-bottom:8px}
.bottom-form form{flex:0 0 520px;display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
.bottom-form .fld label{color:#aaa}
.bottom-form .agree{color:#bbb;grid-column:1/-1;margin:0}
.bottom-form .agree a{color:#ddd}
.bottom-form .fnote{grid-column:1/-1;color:#999;margin:0}
.bottom-form .fnote a{color:#bbb}
.bottom-form .fok{grid-column:1/-1}
.mat{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.mat div{border-top:3px solid #e5572b;background:#fff;padding:12px 14px;box-shadow:0 1px 0 #ddd}
.mat b{display:block;color:#333;margin-bottom:4px}

/* ---------- Подвал ---------- */
.footer{background:#dcdcdc;border-top:6px solid #3a3a3a;padding:18px 0 22px;font-size:11px;color:#666}
.footer .wrap{display:flex;gap:30px}
.footer .f1{flex:0 0 230px}
.footer .f2{flex:0 0 330px}
.footer .f3{flex:1;color:#8a8a8a;font-size:10px;line-height:1.5}
.footer .copy{font-weight:bold;color:#444;margin-bottom:6px}
.footer p{margin:0 0 5px}
.footer a{color:#3d7ab8}
.fnav{display:flex;flex-wrap:wrap;gap:4px 18px;list-style:none;margin:0 0 10px;padding:0}
.fnav a{color:#3d7ab8;font-size:12px}
.flegal{list-style:none;margin:0;padding:0}
.flegal li{margin:0 0 3px}
.ads-note{margin-top:6px;color:#777}

/* ---------- Модалка и cookie ---------- */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;z-index:100;padding:16px}
.modal.on{display:flex}
.modal .formbox{width:320px;max-width:100%;position:relative;margin:0}
.modal .close{position:absolute;right:8px;top:4px;background:none;border:0;font-size:22px;color:#999;cursor:pointer}
.cookie{position:fixed;left:0;right:0;bottom:0;background:#2e2e2e;color:#ddd;z-index:90;border-top:3px solid #e5572b;display:none}
.cookie.on{display:block}
.cookie .wrap{display:flex;align-items:center;gap:20px;padding:12px 0;font-size:12px}
.cookie p{margin:0;flex:1}
.cookie a{color:#ff8a60}

/* ---------- 404 ---------- */
.e404{text-align:center;padding:30px 0 10px}
.e404 .num{font:bold 120px/1 Arial,sans-serif;color:#e5572b;letter-spacing:-4px}
.e404 .num span{color:#3a3a3a}

/* ---------- Адаптив ---------- */
@media (max-width:1020px){
  .wrap{width:auto;margin:0 16px}
  .header{height:auto}
  .header .wrap{flex-wrap:wrap;height:auto;padding:10px 0;gap:8px}
  .logo{margin-right:auto}
  .burger{display:block;background:none;border:1px solid #555;color:#fff;padding:5px 9px;font-size:16px;cursor:pointer}
  .topnav{order:5;flex-basis:100%;flex-direction:column;display:none}
  .topnav.on{display:flex}
  .topnav a{line-height:34px;padding:0 6px}
  .hcontacts{order:4;flex-basis:100%;justify-content:space-between}
  .cols,.home-top{flex-direction:column}
  .sidebar,.aside{width:100%;flex:auto}
  .aside{display:grid;grid-template-columns:1fr;gap:0}
  .svc-grid,.adv,.steps,.nums{grid-template-columns:1fr 1fr}
  .three,.mat{grid-template-columns:1fr 1fr}
  .hero{height:auto}
  .hero .in{flex-direction:column;padding:24px 0;gap:20px;align-items:stretch}
  .hero .formbox{width:100%}
  .bottom-form{flex-direction:column;align-items:stretch}
  .bottom-form form{flex:auto}
  .districts{columns:3}
  .footer .wrap{flex-direction:column;gap:14px}
  .footer .f1,.footer .f2{flex:auto}
}
@media (max-width:640px){
  .cards,.svc-grid,.adv,.steps,.two,.three,.mat,.cinfo,.nums{grid-template-columns:1fr}
  .partner{flex-direction:column;align-items:flex-start}
  .partner .plogo{flex:0 0 auto;width:170px}
  .project{flex-direction:column}
  .project .pimg{flex:auto}
  .calc{flex-direction:column}
  .calc .cf{grid-template-columns:1fr}
  .calc .cr{flex:auto}
  .bottom-form form{grid-template-columns:1fr}
  .districts{columns:2}
  .linklist{columns:1}
  .hero h1{font-size:24px}
  .cta,.pricebox{flex-direction:column;align-items:flex-start}
  .cookie .wrap{flex-direction:column;align-items:flex-start;gap:8px}
  .text h2{font-size:19px}
}
