/*   
Theme Name: SiteRussia
Theme URI: siterussia.ru
Description: Дизайн сайта разработанный компанией Site Russia
Author: Wolf
Author URI: siterussia.ru
Version: 1.0
*/

@font-face {
    font-family: 'Open Sans';
    src: url('fonts/OpenSans-Regular.woff2') format('woff2'),
         url('fonts/OpenSans-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('fonts/OpenSans-Italic.woff2') format('woff2'),
         url('fonts/OpenSans-Italic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Open Sans';
    src: url('fonts/OpenSans-Medium.woff2') format('woff2'),
         url('fonts/OpenSans-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('fonts/OpenSans-SemiBold.woff2') format('woff2'),
         url('fonts/OpenSans-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}


@font-face {
    font-family: 'Open Sans';
    src: url('fonts/OpenSans-Bold.woff2') format('woff2'),
         url('fonts/OpenSans-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}


*, ::after, ::before {box-sizing: border-box;}
.container{width: 100%;padding-right: 15px;padding-left: 15px;margin-right: auto;margin-left: auto;}
body {margin: 0; line-height: 1.5; font-family: 'Open Sans', sans-serif !important; background-color: #EFEFEF;}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {display: block;}
a{color: var(--main-color); text-decoration: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);outline: none;}
img, svg{vertical-align: middle;}
label {display: inline-block;margin-bottom: .5rem;}
button, input, optgroup, select, textarea {margin: 0;font-family: inherit;font-size: inherit;line-height: inherit;-webkit-appearance: none;/*background-color: #f3f3f3;*/}
button:active, button:focus {outline: none;} /* Убираем обводку у кнопок */
button::-moz-focus-inner {border: 0;}
button.close{border: none;}
p {margin-top: 0;}
h1, h2, h3, h4, h5, h6 {margin-top: 0;font-weight: bold;;line-height: 1.2;}
h1{font-size:55px;margin-bottom: 30px; font-weight: 500;}
h2{font-size:32px;margin-bottom: 15px;}
h3{font-size: 26px;margin-bottom: 15px;}
h1,h2,h3,h4,h5,h6{text-transform: none !important;}
/* iPad */
@media (min-width: 768px){
	.col-pl-2{grid-template-columns: repeat(2, 1fr);}
	#slide .flex{justify-content:center;}
} 
@media (max-width: 1200px) {
	#text-ph{padding: 60px 0;}
	.modal .modal-dialog{width: 100%;}
	.block{padding: 40px 0px;}
	.block h2, .block h3{font-size: 25px;line-height: 33px;}
	
	.grid{gap: 20px;}
	.col-m-2{grid-template-columns: repeat(2, 1fr);}
	.col-m-3{grid-template-columns: repeat(3, 1fr);}
	.o1{order: 1;}
	.o2{order: 2;}

	.form img{margin: 0px auto;}
	
	.form, .form4{padding: 20px 20px 0px 20px!important;}
	.form .wpcf7-form, .form2 .wpcf7-form{display: grid!important;gap: 5px;}
	.form .wpcf7-submit, .form2 .wpcf7-submit{margin: 0px!important;padding: 15px 20px!important;border-radius: 12px!important;}
	
	#block7 h3, .form2 h2{font-size: 25px;}
	
	#tabs{padding: 20px!important;}
}
@media (max-width: 992px) {
	#mobile {background: #fff;}
	#mobile .container{display: grid;grid-auto-flow: column;align-items: center;justify-content: space-between;padding-top: 15px;padding-bottom: 15px; }
	#mobile .container.grid {gap: 15px;}
	/*#mobile .container{display: flex;align-items: center;justify-content: space-between;}*/
	/*#mobile .logo{display: flex;align-items: center;gap: 10px;line-height: 18px; width: 220px;}*/
	#mobile .logo img { width: 150px;}
	#mobile .text {max-width: 170px; font-size: 14px; color: #707070;}
	#mobile .nav a {font-size: 15px; font-weight: 600; justify-content: center; display: flex;   align-items: center;}

	#mobile.mobr .container {display: flex; flex-direction: column; gap: 10px;}
	.mobd {display: flex; flex-direction: column; align-items: center; gap: 10px; margin: 20px 0px;}
	
	#mobile.mobr .container {background: #EFEFEF; color: #219ab8;}
	#mobile .telr {color: #02a7c8; max-width: 90px; line-height: 1;}
	#mobile a.phone { font-size: 12px!important; display: inline-block;}
	#mobile .worktime { font-size: 11.2px;}
	#mobile .address {font-size: 14px!important;}

	#mobile .calc img { width: 30px;}
	#mobile .burger svg {  width: 28px;}

	#header, #menu, #top{display: none!important;}

	#za{background-color: #f3f3f3 !important;}
	#za .poly{margin-bottom: 20px;}
	#mmenu{background-color: #f3f3f3;}
	#mmenu .modal-dialog{background-color: #f3f3f3;}
	#mobile .tg-mmenu img{width: 25px;}
	#mmenu .nav{display: inline-block;width: 100%;padding-top: 25px;list-style: none;margin-bottom: 10px;}
	#mmenu .nav>ul{padding: 0px;}
	#mmenu .nav>li{padding: 10px 0px; list-style: none; text-align: left; padding-left: 12px; border-bottom: 1px solid #dfdfdf; margin: 5px;}
	#mmenu .nav>li>a{text-transform: uppercase;}
	#mmenu .nav.mobusl>li>a {font-weight: 600;}
	
	#mmenu .nav .sub-menu{padding-top: 10px;}
	#mmenu .nav .sub-menu>li{padding: 10px 0px;list-style: none;}
	
	#mmenu .nav ul.hide {display: none!important;}
	#mmenu .nav .menu-item-has-children {position: relative;}
	#mmenu .nav span.menu-closed:after {content: "";width: 50px;max-height: 50px;position: absolute;right: 0;top: 6px;bottom: 6px;background-image: url('images/marrow.svg');background-size: 12px 7px;background-position: center;background-repeat: no-repeat;transform-origin: center;transform: rotate(-90deg);-webkit-transition: transform 0.4s cubic-bezier(0, 0.5, 0.5, 1), opacity 0.3s cubic-bezier(0, 0.5, 0.5, 1);transition: transform 0.4s cubic-bezier(0, 0.5, 0.5, 1), opacity 0.3s cubic-bezier(0, 0.5, 0.5, 1);}
	#mmenu .nav span.menu-closed:before {content: "";position: absolute;right: 50px;top: 6px;bottom: 6px;border-left: 1px solid #F8F8F8;}
	#mmenu .nav span.menu-closed.menu-open:after{transform: rotate(0deg);opacity: 0.3;}
	#mmenu .nav span.menu-closed.menu-open:before{opacity: 0;}
	
	
	#mmenu .cont{display: grid;}
	#mmenu .cont .phone{font-weight: bold;font-size: 20px;margin: 10px 0px;}
	#mmenu .cont .ad{margin: 10px 0px;}
	#mmenu .cont .mail{color: #fd5354;margin-top: 10px;}
	#mmenu .soc{margin-top: 20px;}
	
	#mmenu .kvart{margin-top: 20px;}

	h1{font-size:30px;}
	h2{font-size:25px;}
	h3{font-size: 22px;}
}
/* iPhone 5 */
@media (max-width: 321px){
	.modal .modal-dialog {width: 100%;padding: 20px 15px 20px 0px!important;}
	.modal .modal-dialog .button{width: 100%;padding: 20px!important;}
	#mobile .text {font-size: 10px!important;}
	.block h2, .block h3{font-size: 26px;line-height: 28px;}
}
@media (max-width: 350px) {
	#mobile .logo img { width: 100px;}
	#mobile .calc img { width: 40px; padding: 5px;}
	#mobile .container.grid { gap: 10px; }
	#mobile .burger svg { width: 25px;}
	#onas .item { gap: 10px; font-size: 11px;}
	#onas .left { width: 93%;}
	#calc .line, #callback .line, #price .dn, #video .line { width: 280px;}
}
@media (min-width: 991px) {
	.container{max-width: 1260px;}
	#mobile{display: none!important;}

	.modal .modal-dialog{max-width: 500px; height: 110%; padding: 30px; position: absolute; right: 0; margin: 0px; background: #f3f3f3;}
	.wpcf7 .wpcf7-form .wpcf7-response-output {display: block!important; padding-top: 20px;}
	.block{padding: 70px 0px;}
	.new-block{padding: 40px 0;}
	.block h2{font-size: 30px; margin-bottom: 0 !important; font-weight: 400;}
	.grid{gap: 30px;}
	.col-pc-2{grid-template-columns: repeat(2, 1fr);}
	.col-pc-3{grid-template-columns: repeat(3, 1fr);}
	.col-pc-4{grid-template-columns: repeat(4, 1fr);}
	.col-pc-5{grid-template-columns: repeat(5, 1fr);}
	.col-pc-6{grid-template-columns: repeat(6, 1fr);}
	.col-pc-7{grid-template-columns: repeat(7, 1fr);}
	.col-pc-1-2{grid-template-columns: 1fr 2fr;}
	.col-pc-07-2{grid-template-columns: 0.7fr 2fr;}
	.col-pc-2-07{grid-template-columns: 2fr 0.7fr;}
	.col-pc-2-1 {grid-template-columns: 2fr 1fr;}
	.col-pc-2-3 {grid-template-columns: 2fr 3fr;}
	.col-pc-3-7 {grid-template-columns: 3fr 7fr;}
	.col-pc-15-1 {grid-template-columns: 1.5fr 1fr;}
	.col-pc-15-25 {grid-template-columns: 1.5fr 2.5fr;}
	.col-pc-1-01-2{grid-template-columns: 1fr 0.1fr 2fr;}


	#slide {padding: 40px 0;}
}

:root{
	--main-color: #000;
	--hover-color: #33d7ff;
	--gray-color: #6C6F71;
}

/* Дата для мобильного */
input[type="date"]:before {color: lightgrey;content: attr(placeholder) !important;margin-right: 0.5em;} 
input[type="date"]:focus:before {content: '' !important;}

/* Кнопка вверх */
.btn-back-top {opacity: 0;background: #26b1d4;border-radius: 2px;cursor: pointer;display: block!important;width: 45px;height: 45px;position: fixed;right: 15px;bottom: 15px;transition: .5s;z-index: 1030;}
.btn-back-top:hover{opacity: 1!important;}
.btn-back-top:before {border-radius: 4px;border-color: #fff;border-style: solid;border-width: 5px 0 0 5px;content: "";width: 17px;height: 17px;position: absolute;top: 17px;left: 15px;transform: rotate(45deg);}

/* Кнопка вотсап */
.whatsapp-button{position: fixed;left: 70px;bottom: 70px;background: #25D366;border-radius: 50%;width: 65px;height: 65px;z-index: 9999;display: flex;align-items: center;justify-content: center;box-shadow: 0px 0px 11px rgb(37 211 102);}
.whatsapp-button:before,
.whatsapp-button:after {content: " ";display: block;position: absolute;border: 50%;border: 1px solid #25D366;left: -20px;right: -20px;top: -20px;bottom: -20px;border-radius: 50%;animation: animate 1.5s linear infinite;opacity: 0;backface-visibility: hidden; }
.whatsapp-button:after{animation-delay: .5s;}
@keyframes animate{0%{transform: scale(0.5);opacity: 0;}50%{opacity: 1;}100%{transform: scale(1.2);opacity: 0;}}
@media (max-width: 921px) {.whatsapp-button {bottom: 10px!important;left: 10px;}}

.img-fluid { max-width: 100%; border-radius: 25px;}
.aligncenter{display: block;margin: 5px auto 5px auto;}
.alignright{float:right;padding-left: 10px;padding-bottom: 10px;}
.table {width: 100%;margin-bottom: 1rem;color: #212529;border-collapse: collapse;}
.table td, .table th {padding: 0.75rem;vertical-align: top;border-top: 1px solid #dee2e6;}
.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.table-striped tbody tr:nth-of-type(odd) {background-color: rgba(0,0,0,.05);}
.p404{text-align: center;padding: 50px 0px;}
.grid{display: grid;}
.ac{align-items: center;}

/* Табы */
.nav {display: flex;flex-wrap: wrap;padding: 0;margin: 0;list-style: none;outline: none;}
.nav-link:focus, .nav-link:hover {text-decoration: none;}
.nav-link {display: block;}
.tab-content>.tab-pane {display: none;}
.tab-content>.active {display: block;}
.fade {transition: opacity .15s linear;}
.fade:not(.show) {opacity: 0;}
/* Пролистывание на мобильном */
.scroll{flex-wrap: nowrap;overflow-x: auto;-webkit-overflow-scrolling: touch;white-space: nowrap;}
.scroll::-webkit-scrollbar {height: 2px;-webkit-appearance: none;}
.scroll::-webkit-scrollbar-track {-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);}
.scroll::-webkit-scrollbar-thumb {background: #AAC375;}

/* Гармошка */
.collapse:not(.show) {display: none;}
.collapsing {position: relative;height: 0;overflow: hidden;transition: height .35s ease;}

/* Модальное */
.modal {position: fixed; top: 0; left: 0; z-index: 1050; display: none; width: 100%; height: 100%; overflow: hidden; outline: 0;}
.modal-body {padding: 0!important;}
.modal-content {background-color: #f3f3f3!important; border: none!important; }
.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll} /*Нужно что бы не прыгало */
.modal-open {overflow: hidden;}
.modal-open .modal {overflow-x: hidden;overflow-y: auto;}
.full {background-color: #f3f3f3; max-width: 100%!important;}
.modal .close{cursor: pointer;position: absolute;top: 5px; right: 5px;border: none; background-color: #f3f3f3;}
.modal .grid{gap: 20px;}
.modal .title{ margin-top: 35px;font-size: 30px;line-height: 55px;font-weight: bold;}
.modal .text{color: #545560;font-size: 20px;line-height: 35px;}
/*.modal .uk {background-color: #dedede; padding: 10px 30px 10px 185px; font-weight: 600; margin-left: -155px; border-radius: 0 30px 30px 0;}*/
.modal p {font-weight: 600; padding-bottom: 10px;}
.modal div.st {padding: 10px 0;}

/*div.modal-dialog {height: max-content!important;}*/
.modal-dialog.h100 {background-color: #f3f3f3;}
.modal-dialog { margin: 0!important; }
.modal-dialog .nav .sub-menu{padding: 0!important;}
.modal-dialog .button { margin: 20px auto 0;  padding: 13px;  width: 270px;}
.modal-dialog .wpcf7-submit {width: 100%; margin-top: 15px;}

/* Анимация при наведении на картинку */
.box {overflow:hidden;}
.box img {-moz-transition: all 0.25s ease-out;-o-transition: all 0.25s ease-out;-webkit-transition: all 0.25s ease-out;transition: all 0.25s ease-out;}
.box img:hover{-webkit-transform: scale(1.1);-moz-transform: scale(1.1);-o-transform: scale(1.1);transform: scale(1.1);}

/* Хлебные */
.breadcrumbs {color: var(--main-color);font-size: 14px;padding-bottom: 10px;}
.breadcrumbs a{color: var(--main-color);border-bottom: 1px solid;}

/* Слайдер */
.owl-nav .disabled{display: none;}


.owl-controls{display: flex; justify-content: center; margin-top: 20px;}
.owl-controls svg path{opacity: 0.5;}
.owl-controls svg:hover path{opacity: 1;}
.owl-controls .owl-next, .owl-controls .owl-dots{margin-left: 15px;}
.owl-dot span {width: 8px; height: 8px; margin: 0px 3px;background: #D6D6D6;display: block;-webkit-backface-visibility: visible;border-radius: 30px;}
.owl-dot.active span, .owl-dots .owl-dot:hover span {background: #26b1d4;}
.owl-nav button {opacity: 0.85;}  .owl-nav button:hover {opacity: 1;}


/* Форма связи */
.wpcf7{position: relative;}
/*.wpcf7 .wpcf7-form{display: grid;gap: 20px;}*/
.wpcf7 .wpcf7-not-valid-tip, .wpcf7 .screen-reader-response, .wpcf7 .wpcf7-form .wpcf7-spinner, .wpcf7 .wpcf7-form .wpcf7-response-output{display: none;}
.wpcf7 .wpcf7-form-control.wpcf7-not-valid{border: 1px solid red!important;}
.wpcf7 .wpcf7-form.invalid .wpcf7-response-output{display: block;font-size: 14px;color: red;font-weight: 500;}
.wpcf7 .wpcf7-form.sent .wpcf7-response-output{display: block;font-size: 14px;color: green;font-weight: 500;border: 2px solid green;padding: 10px;text-align: center;background-color: #00800005;margin-top: 15px;}
.wpcf7 .wpcf7-text, .wpcf7 .wpcf7-mask, .wpcf7 .wpcf7-textarea{border: none;border-bottom: 1px solid #54556020;padding: 10px 0px;width: 100%;outline: none; border-radius: 20px; padding: 15px; margin: 5px 0;}
.wpcf7 .wpcf7-form.submitting .wpcf7-spinner {display: block;background-image: url(images/ajax-loader.gif);width: 24px;height: 24px;position: absolute;bottom: -25px;}
.wpcf7 .wpcf7-submit{cursor: pointer;border: none;}

/* Другое  */
.ppage{min-height: 500px;padding-top: 20px;padding-bottom: 20px;}
.phone{white-space: nowrap;}
.h100{display: flex;align-items: center;}

/* Кнопка */
.button {display: block; background: #26B1D4; color: #fff; font-size: 16px; padding: 10px 20px; text-align: center; border-radius: 20px; width: 100%;}
.button:hover {background: #219ab8; transform: translateY(-2px);}


.citylist a:hover{color: var(--hover-color);}
.citylist ul{gap: 0px 20px;}

/* Анимация */
a{-webkit-transition: all 0.25s ease-out;transition: all 0.25s ease-out;text-decoration: none;}
/*HOVER*/
#top a:hover, #header .phone:hover, #footer .menu a:hover, #menu .nav a:hover, #cont .con a:hover, a.phone:hover, #form2 a.phone:hover{color: var(--hover-color)!important;} 

.grad-button, button, #form2 .grad-button__link{transition: all 0.5s;}

h1 span, h2 span, h3 span{color: var(--hover-color);display: block;}


.prob{height: 40px;}

a.phone {color: var(--title-color); font-size: 18px; font-weight: 600; display: flex; align-items: center; gap: 5px;}


#header{padding: 20px 0px;}
#header .container{display: flex;align-items: center;justify-content: space-between;}
#header{background:#fff;border-bottom:1px solid #e5e5e5;padding:15px 0}
#header .header-row{display:flex;align-items:center;justify-content:space-between;gap:30px}
#header .h-left{display:flex;align-items:center;gap:25px}
#header .messengers {display: flex; gap: 8px;}
#header .messengers a {display:inline-block;width:35px;}
#header .messengers img{width:100%;height:auto}
#header .address{font-size:14px;line-height:1.3}
#header .logo img{ width: 220px;}
#header .h-right{display:flex;align-items:center;gap:15px}
#header .phone{font-size: 16px; font-weight:400;color:#26b1d4;}
#header .worktime{font-size:14px;}
#header .button.calc-btn{background:#26b1d4;color:#fff;padding:10px 25px;border-radius:20px;font-size:14px;text-decoration:none;white-space:nowrap}
@media(max-width:991px){
	#header .header-row{flex-direction:column;gap:20px}
	#header .h-right{flex-direction:column;gap:8px}
	#header .button.calc-btn{width:100%}
}


#menu {background-color: #EFEFEF;}
#menu .container {display: flex; align-items: center; gap: 60px;}
#menu .uk {background-color: #dedede; padding: 15px 30px 0 100%; margin-left: -100%; border-radius: 0 30px 30px 0; font-weight: 600; flex-shrink: 0; }
#menu div p {font-weight: 600; margin-bottom:13.5px;}
#menu .nav {display: flex; flex-grow: 1; justify-content: space-between; }
#menu .nav li {display: inline; position: relative;}
#menu .nav a {color: #219ab8; font-size: 16px; justify-content: center; display: flex; align-items: center; padding: 15px 0;}
#menu ul.sub-menu {position: absolute; top: 100%; left: 0; z-index: 11; display: none; flex-direction: column; align-items: flex-start; background: #ffffff; padding: 12px 16px; border: 1px solid #e0e0e0; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.05); min-width: 200px; white-space: nowrap;}
#menu .nav li:hover > ul.sub-menu {display: flex !important;}
#menu ul.sub-menu li {width: 100%;}
#menu ul.sub-menu li a {font-size: 15px; font-weight: 500; color: #219ab8; padding: 8px 12px; border-radius: 8px; display: block; transition: background 0.2s ease, color 0.2s ease;}
#menu ul.sub-menu li a:hover {background: #f0fafa; color: #007c9d;}
#menu .nav li.menu-item-has-children > a::after {content: "\25BC"; font-size: 10px;  margin-top: 4px; margin-left: 10px; color: #219ab8;}



.line {width: 100%; height: 5px; background-color:#26B1D4; margin: 20px 0;}
@media (max-width: 991px) {
	#text-ph .line {width: 80%;}
	#svusl .line {width: 70%;}
}

#slide {background-size:cover; background-position:center; color:#fff; position:relative; padding:190px 0;}
#slide::before {content:""; position:absolute; inset:0; background:rgba(0,0,0,.4);}
#slide .container {position:relative; z-index:2;padding: 10px;}
#slide .slide-arrow {position:absolute; top:50%; transform:translateY(-50%); width:42px; height:42px; display:flex; align-items:center; justify-content:center; background:#0097d7; border-radius:50%;}
#slide .slide-arrow img {width:22px; height:22px;}
#slide .slide-arrow.prev {left:20px;}
#slide .slide-arrow.next {right:20px;}
#slide .hero-grid {display: grid; grid-template-columns: 0.5fr 2.5fr; gap: 40px; align-items: center; margin: 0 70px;}
#slide .hero-content {text-align: right;}
#slide .contacts {list-style:none; margin:0; padding:0;}
#slide .contacts li {display:flex; align-items:flex-start; gap:12px; margin-bottom:18px; font-size:16px;}
#slide .contacts li img {width:30px; height:30px;}
#slide .contacts li small {display:block; font-size:12px; opacity:.8; margin-top:4px;}
#slide .hero-content h1 { font-size: 55px; font-weight: 600; line-height: 1.05; text-transform: uppercase; margin: 0 0 20px; }
#slide .hero-content p {font-size: 16px; margin-left: 40px;}
#slide #pr-desktop {display: flex;justify-content: flex-end;}
#slide .price p {font-size: 30px !important;font-weight: 500; border: 2px solid; padding: 0 10px; }
#slide .price.m p {width: max-content; margin: 0 auto; border: 2px solid; padding: 0 10px;}
#slide p.rr {font-size: 12px;}
#slide .df {display: flex; gap: 15px; color: #fff;}
#slide .df.tel {text-decoration: underline; font-size: 20px;}
#slide .grid.wt { justify-items: center; gap: 0;}
#slide .but-d {margin-top: 20px;}
@media(max-width:991px){
	#slide {padding:60px 0; height: 870px;}
	#slide .slide-arrow.prev, #slide .slide-arrow.next {display: none;}
	#slide .hero-content {text-align: center;}
	#slide .hero-grid {display: flex; text-align: center; flex-direction: column-reverse; margin: 0 15px 0 0;}
	#slide .contacts {display:none; }
	#slide .contacts li {justify-content:center;}
	#slide .hero-content h1 {font-size:30px;}
	#slide .hero-content p {font-size:14px; margin-left: 0;}
	#slide .hero-content { font-size: 14px;}
	#slide .dn.cont {display: none;}
	#slide .price p {margin-top: 5px;font-size: 20px !important;}
}

#svusl .card-item .content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px 15px 15px;
    background: linear-gradient(to top, rgba(0,0,0,0.85), transparent 70%);
    color: #fff;
    z-index: 2;
}

#svusl .card-item .content p.pod {
    font-size: 16px;
    font-weight: 500;
    margin: 0 0 5px;
    color: #fff;
}

#svusl .card-item .content p.desc {
    font-size: 13px;
    margin: 0;
    opacity: 0.9;
    line-height: 1.4;
    color: #fff;
}

/* Адаптив для desc */
@media (max-width: 991px) {
    #svusl .card-item .content p.pod,
    #svusl .card-item .content p.desc {
        text-align: center;
		
    }
	.new-block{padding: 30px 0;}
}


#prem.block {padding: 70px 0 0 0;}
#prem .bottom-bar {display:flex; justify-content:space-between; align-items:center; color:#000; border-radius:0 0 8px 8px; gap: 15px;}
#prem .features {display:flex; gap:60px;}
#prem .features p { font-size: 16px; font-weight: 600; margin-bottom: 0;}
#prem .feature {display:flex; align-items:center; gap:14px; font-size:14px; line-height:1.3; text-align:left;}
#prem .actions {display:flex; flex-direction:column; gap:15px;}
#prem .actions .pr-c {display: flex; justify-content: space-between; gap: 10px; align-items: center;}
#prem .mdn {display: none;}
@media(max-width:991px){
	#prem.block {padding: 0px 0 60px 0;}
	#prem {margin-top: -475px; position: relative;}
	#prem .hero-content {font-size: 14px;}
	#prem .bottom-bar {flex-direction:column; gap:15px; border-radius:0; background: transparent;}
	#prem .features {flex-direction:column; gap:25px;}
	#prem .features p { font-size: 14px;}
	#prem .actions {flex-wrap:wrap; gap:15px; width: 100%;}
	#prem .fe-con {display: grid; grid-template-columns: 1fr; gap: 15px;}
	#prem .feature {display: flex; align-items: center; gap: 20px; font-size: 14px; line-height: 1.3; text-align: left; justify-content: center;}
	#prem .features img {min-width: 60px!important; height: auto;}
	#prem .feature p {color: #fff; width: 85%;}
	#prem .mdn {display: block;}
	#prem ul.contacts {list-style: none; display: flex; gap: 25px; justify-items: end;}
	#prem .wog { width: 100%;}
	#prem .actions .pr-c {gap: 20px;}
}







/*  Верхний блок: текст + фото  */
#text-ph .grid.col-pc-2-1, [id^="new-block-"] .grid.col-pc-2-1 {display: flex; gap: 40px; align-items: flex-start; justify-content:space-between;}
#text-ph .block-image, [id^="new-block-"] .block-image,.block-image {flex: 0 0 60%; max-width: 20%;}
#text-ph .block-image img, [id^="new-block-"] .block-image img, .block-image img {width: 100%; height: auto; display: block; border-radius: 12px; object-fit: cover;}
#text-ph .flex, [id^="new-block-"] .flex {flex: 0 0 40%; max-width: 40%; padding-left: 20px;}
#text-ph h2, [id^="new-block-"] h2 {font-weight: 600; font-size: 32px; line-height: 1.3; margin-bottom: 20px; color: #333; text-transform: uppercase;}
#text-ph .line , [id^="new-block-"] .line{width: 60px; height: 3px; background: #26b1d4; margin-bottom: 25px; display: block;}
#text-ph .text-el , [id^="new-block-"] .text-el{font-size: 16px; line-height: 1.5; color: #555; margin: 0;}
#text-ph .block, [id^="new-block-"] .block{padding-top: 20px !important;}

/*  Галерея: растягиваем на всю ширину контейнера  */
#svusl .container, [id^="new-block-"] .container {position: relative; padding-left: 15px; padding-right: 15px;}
#svusl .owl-carousel.v-usl, [id^="new-block-"] .new-block-gallery {margin-left: -15px; margin-right: -15px; width: calc(100% + 30px); padding: 10px 0 40px; position: relative;}
#svusl .owl-carousel .owl-stage-outer, [id^="new-block-"] .owl-carousel .owl-stage-outer {overflow: hidden;}
#svusl .owl-carousel .owl-stage, [id^="new-block-"] .owl-carousel .owl-stage {padding-left: 0 !important; padding-right: 0 !important;}

/*  Карточки галереи */
#svusl .card-item {margin: 0 10px; position: relative; border-radius: 12px; overflow: hidden;}
#svusl .card-item .image img {width: 100%; height: 375px; object-fit: cover;}
#svusl .card-item .content {position: absolute; bottom: 0; left: 0; width: 100%; display: grid; background: linear-gradient(45deg, black, transparent); padding: 8px 5px 0 15px; justify-items: start;}
#svusl .card-item .content p.pod {font-size: 15px; font-weight: 400; text-align: center; margin-bottom: 10px; color: #fff;}
#svusl .card-item .content p.desc {font-size: 13px; margin: 0; opacity: 0.9; line-height: 1.4; color: #fff;}
#svusl .card-item .content .t-dots img {display: block; margin: 10px auto; width: 44px;}
#svusl .card-item .content .price {font-size: 18px; font-weight: 600; color: #004dff; text-align: center;}

/*  Навигация галереи  */
#svusl .owl-nav {position: absolute; display: flex; left: 20px; top: -60px; z-index: 10;}
#svusl .owl-nav button {width: 45px; height: 45px; display: flex; align-items: center; justify-content: center; opacity: 1; border: none; background-size: contain; background-repeat: no-repeat; background-position: center; cursor: pointer;}
#svusl .owl-nav button.owl-prev {background: url(images/left-sm.svg);}
#svusl .owl-nav button.owl-next {background: url(images/right-sm.svg);}
#svusl .owl-nav button:hover {opacity: 0.8;}
#svusl .owl-dots {display: block; position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%);}
#svusl .owl-dots button {width: 10px; height: 10px; border-radius: 50%; border: none; padding: 0; cursor: pointer;}


#text-ph .block-image .image-wrapper, [id^="new-block-"] .block-image .image-wrapper{
    position: relative;
    width: 60%;
    min-height: 300px; 
	margin-right:0;
}

#text-ph .block-image .image-wrapper .image-bg, [id^="new-block-"] .block-image .image-wrapper .image-bg  {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #26b1d4;
    border-radius: 12px;
    z-index: 1;
}

#text-ph .block-image .image-wrapper img, [id^="new-block-"] .block-image .image-wrapper img {
    position: absolute;
    top: 20px;
    left: 0;
    width: 100%;
    height: auto;
    border-radius: 12px;
    object-fit: cover;
    z-index: 2;
    
}


@media (max-width: 991px) {
    #text-ph .block-image .image-wrapper, [id^="new-block-"] .block-image .image-wrapper {
        min-height: 350px;
        margin-bottom: 30px;
    }
	#text-ph .block-image .image-wrapper, [id^="new-block-"] .block-image .image-wrapper {padding-bottom:0;}
    
    #text-ph .block-image .image-wrapper img, [id^="new-block-"] .block-image .image-wrapper img{
        position: relative;
        top: 0;
        left: 0;
        max-width: 100%;
        margin: 0 auto;
        display: block;
    }
	
    

}

/*  Сетка  */
#text-ph .grid.col-pc-2-1, [id^="new-block-"] .grid.col-pc-2-1 {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    justify-content: space-between;
    
	
}

/*  Блок изображения */
#text-ph .block-image, [id^="new-block-"] .block-image {
    flex: 0 0 auto;
    max-width: none;
}

/*  Обёртка */
#text-ph .block-image .image-wrapper, [id^="new-block-"] .block-image .image-wrapper {
    position: relative;
    width: 146px;      
    height: 280px;     
    overflow: hidden;
    background: #F2F2F2;
    border-radius: 8px;
}

/*  Фон  */
#text-ph .block-image .image-wrapper .image-bg, [id^="new-block-"] .block-image .image-wrapper .image-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #26b1d4;
    border-radius: 8px;
    z-index: 1;
}

/*  Изображение  */
#text-ph .block-image .image-wrapper img, [id^="new-block-"] .block-image .image-wrapper img {
    position: absolute;
    top: 20px;
    left: 0;
    width: 100%;
    height: auto;
    border-radius: 8px;
    object-fit: cover;
    z-index: 2;
}

/*  Текстовый блок  */
#text-ph .flex, [id^="new-block-"] .flex {
    flex: 1;
    max-width: 600px;
    padding-left: 20px;
}

#text-ph h2, [id^="new-block-"] h2 {
    font-weight: 600;
    font-size: 32px;
    line-height: 1.3;
    margin-bottom: 20px;
    color: #333;
    text-transform: uppercase;
}

#text-ph .line, [id^="new-block-"] .line {
    width: 60px;
    height: 3px;
    background: #26b1d4;
    margin-bottom: 25px;
    display: block;
}

#text-ph .text-el, [id^="new-block-"] .text-el {
    font-size: 16px;
    line-height: 1.5;
    color: #555;
    margin: 0;
}

/* Реверс  */
#text-ph .grid.col-pc-2-1.reverse, [id^="new-block-"] .grid.col-pc-2-1.reverse {
    flex-direction: row-reverse;
}

#text-ph .grid.col-pc-2-1.reverse .flex, [id^="new-block-"] .grid.col-pc-2-1.reverse .flex {
    padding-left: 0;
    padding-right: 20px;
}



@media (max-width: 991px) {
	#text-ph .grid.col-pc-2-1 {flex-direction: row; gap: 30px;}
	#text-ph .block-image, #text-ph .flex {flex: 0 0 100%; max-width: 100%; padding-left: 0;}
	#text-ph h2 {font-size: 24px; text-align: center;}
	#text-ph .line {margin: 0 auto 20px;}
	#text-ph .text-el {text-align: center; max-width: 600px; margin: 0 auto;}
	#text-ph .grid.col-pc-2-1.reverse .flex, [id^="new-block-"] .grid.col-pc-2-1.reverse .flex{padding-right: 0;}
	#svusl .container {padding-left: 15px; padding-right: 15px;}
	#svusl .owl-carousel.v-usl,  {margin-left: -15px; margin-right: -15px; width: calc(100% + 30px);}
	
	
	#svusl .owl-nav button.owl-prev {background: url(images/left-sm.svg);}
	#svusl .owl-nav button.owl-next {background: url(images/right-sm.svg);}
	#svusl .owl-nav button {width: 45px; height: 45px;}
	
	#svusl .card-item .content {width: 80%; margin: 0 auto; left: 0 !important; border-radius: 0 0 0 25px;}
	#svusl .card-item .image img {width: 90%; margin: 0 auto; height: 300px;}
	#svusl .card-item .content p.pod, #svusl .card-item .content p.desc {text-align: center;}
	
	#svusl .owl-dots {position: absolute;  top: unset; left: unset;}
}


@media (max-width: 991px) {
    #text-ph .grid.col-pc-2-1, .new-block-with-icon .grid.col-pc-2-1,
    .new-block-with-icon .grid.col-pc-2-1.reverse  {
        flex-direction: row;      
        gap: 20px;                   
        align-items: flex-start;  
    }
	
	#text-ph .block-image .image-wrapper, [id^="new-block-"] .block-image .image-wrapper{width: 100px;}
	 
    #text-ph .block-image, [id^="new-block-"] .block-image {
        flex: 0 0 auto;           
        width: auto;              

        max-width: 50%;          
    }
	
	.text-el{font-size: 14px;}

    #text-ph .flex, [id^="new-block-"] .flex {
        flex: 1;                  
        min-width: 0;             
        padding-left: 0;
    }

    #text-ph h2, [id^="new-block-"] h2  {
        font-size: 22px; 
        text-align: left; 
        word-wrap: break-word;    
    }
    #text-ph .line , [id^="new-block-"] .line {
        margin: 0 0 20px; 
    }
    #text-ph .text-el, [id^="new-block-"] .text-el {
        text-align: left; 
        max-width: 100%; 
        margin: 0;
        word-wrap: break-word;    
    }
}
   

    #svusl .container {padding-left: 15px; padding-right: 15px;}
    #svusl .owl-carousel.v-usl {margin-left: -15px; margin-right: -15px; width: calc(100% + 30px);}
    

    #svusl .owl-nav button.owl-prev {background: url(images/left-sm.svg);}
    #svusl .owl-nav button.owl-next {background: url(images/right-sm.svg);}
    #svusl .owl-nav button {width: 45px; height: 45px;}
    
    #svusl .card-item .content {width: 80%; margin: 0 auto;  border-radius: 0 0 0 25px;}
    #svusl .card-item .image img {width: 100%; margin: 0 auto; height: 375px;}
    #svusl .card-item .content p.pod, #svusl .card-item .content p.desc {text-align: center;}
    
    #svusl .owl-dots {display: none}
}

/* Галерея растягивается на всю ширину */
.new-block-with-icon .container {position: relative; padding-left: 15px; padding-right: 15px;}
.new-block-with-icon .owl-carousel.new-block-gallery {margin-left: -15px; margin-right: -15px; width: calc(100% + 30px); padding: 30px 0 40px; position: relative;}
.new-block-with-icon .owl-carousel .owl-stage-outer {overflow: hidden;}
.new-block-with-icon .owl-carousel .owl-stage {padding-left: 0 !important; padding-right: 0 !important;}

/* Карточки */
.new-block-with-icon .card-item {margin: 0 10px; position: relative; border-radius: 12px; overflow: hidden;}
.new-block-with-icon .card-item .image img {width: 100%; height: 375px; object-fit: cover; border-radius: 25px;}
.new-block-with-icon .card-item .content {position: absolute; bottom: 0; left: 0; width: 100%; display: grid; background: linear-gradient(45deg, black, transparent); padding: 8px 5px 0 15px; justify-items: start; border-radius: 0 0 0 25px;}
.new-block-with-icon .card-item .content p.pod {font-size: 15px; font-weight: 400; text-align: center; margin-bottom: 10px; color: #fff;}
.new-block-with-icon .card-item .content p.desc {font-size: 13px; margin: 0; opacity: 0.9; line-height: 1.4; color: #fff;}
.new-block-with-icon .card-item .content .price {font-size: 18px; font-weight: 600; color: white; text-align: center;}

/* Навигация */
.new-block-with-icon .owl-nav {position: absolute; display: flex; left: 20px; top: 320px; z-index: 10; gap: 15px;}
.new-block-with-icon .owl-nav button {width: 45px; height: 45px; display: flex; align-items: center; justify-content: center; opacity: 1; border: none; background-size: contain; background-repeat: no-repeat; background-position: center; cursor: pointer;}
.new-block-with-icon .owl-nav button.owl-prev {background: url(images/left-sm.svg);}
.new-block-with-icon .owl-nav button.owl-next {background: url(images/right-sm.svg);}
.new-block-with-icon .owl-nav button:hover {opacity: 0.8;}
@media(max-width: 991px){.new-block-with-icon .owl-nav {position: absolute; display: flex; left: 20px; top: 370px; z-index: 10; gap: 15px;}}
.gallery-wrapper {
	padding: 50px 0;
}
/* Стандартное расположение: иконка слева, текст справа */
.new-block-with-icon .grid.col-pc-2-1 {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    justify-content: space-between;
}

/* Если стоит класс reverse: текст слева, иконка справа */
.new-block-with-icon .grid.col-pc-2-1.reverse {
    flex-direction: row-reverse;
}



#svyaz {padding: 0 0 20px;}
#svyaz .svyaz-box {background: #fff; border-radius: 20px; padding: 35px 40px; display: flex; align-items: center; justify-content: space-around; box-shadow: 0 0 0 1px #e5e5e5 inset;}
#svyaz .left {display:flex; align-items:center; gap:70px;}
#svyaz .label {margin-bottom: 0!important; font-size:32px; font-weight:600; text-transform:uppercase;}
#svyaz .icons {display:flex; gap:60px;}
#svyaz .icons a img {width:50px; height:50px;}
#svyaz .divider {width:2px; height:64px; background:#00b0e0;}
#svyaz .phone a {font-size:32px; font-weight: 500; color:#000; text-decoration:none;}
#svyaz .phone a:hover {color:#219ab8;}
@media (max-width:991px){
	#svyaz .svyaz-box {flex-direction:row; align-items:flex-start; padding: 24px 24px} 
	#svyaz .left {flex-direction:column; align-items:flex-start; gap:15px;} 
	#svyaz .label {font-size:16px;} 
	#svyaz .divider {display:none;} 
	#svyaz .phone {margin-top:4px;} 
	#svyaz .icons { gap:14px;  } 
	#svyaz .svyaz-box { position: relative; flex-direction: column;}
	#svyaz .label::after {content:""; display:block; width:70px; height:2px; background:#00b0e0; margin-top:6px;} #svyaz .phone a {font-size:24px;}
	#svyaz .icons a img {width: 35px; height: 35px;}
}


#scope {padding:40px 0; }
#scope .scope-flex {display:flex; align-items:flex-start; gap: 35px;}
#scope .tasks-card {background:#fff; border-radius:12px; padding:40px 60px; flex:1;}
#scope .tasks-card .cols {display:grid; grid-template-columns:repeat(3,1fr); gap:32px;}
#scope .tasks-card .info {font-size:15px; font-weight:700; text-transform:uppercase; margin:0 0 18px; height: 45px;}
#scope .list {list-style:none; padding:0; margin:0;}
#scope .list.marks { list-style: disc; padding-left: 20px;}
#scope .list.nums, #scope .list.nums2 {list-style: decimal; padding-left: 20px;}
#scope .list li {font-size:14px; padding: 10px 0;}
#scope .cta.db {display: block;}
#scope .sub .dn {margin-left: 5px;}
#scope .cta h2 {font-size: 20px;}
#scope .cta h2::after {content:""; display:block; width:100%; height:3px; background:#02a7c8; margin-top:6px;}
#scope .cta .sub {font-size: 14px; margin: 18px 0 20px;}
#scope .button { width: 80%;}
@media(max-width:991px){
	#scope .tasks-card .info {font-size:15px; font-weight:700; text-transform:uppercase; margin:0 0 18px; height: 15px;}
	#scope {padding:60px 0; }
	#scope .container {background-color: #fff;}
	#scope .scope-flex {flex-direction:column; gap:0;}
	#scope .tasks-card .info { font-size: 14px;}
	#scope .list li { padding: 8px 0;}
	#scope .tasks-card {width: 100%; padding:32px 24px;}
	#scope .tasks-card .cols {grid-template-columns:1fr; gap:0;}
	#scope .first { margin: 15px 0 30px;}
	#scope .third .info {display: none;}
	#scope .cta.db {display: none;}
	#scope .cta.dn.sc::before {content:""; display:block; width:100%; height:3px; background:#02a7c8; margin-top:6px;}
	#scope .cta.dn {display: block; }
	#scope .cta.dn h2 { font-size: 14px !important; line-height: normal; font-weight: 400; text-transform: uppercase;}
	#scope .sub {display: flex; flex-direction: column;}
	#scope .sub .dn {margin-left: 0;}
	#scope .cta {width:100%;}
	#scope .button { font-size: 14px; width: 100%; margin-bottom: 20px;}
}


#sd h2 {font-weight: 400; text-transform: uppercase;}
#sd .title {width: max-content; margin: 0 0 30px;}
#sd .grid {gap: 0; align-items: center; margin-bottom: 45px;}
#sd .image img {width: 100%; min-height: 470px; max-height: 500px; object-fit: cover;}
#sd .content {background: #fff; border-radius: 0 20px 20px 0; height: max-content;}
#sd .content .icon-row {padding: 24px 32px 0;}
#sd .content .line {height: 3px;}
#sd .content .text {padding: 0 32px 80px;}
#sd .icon-row {display:flex; align-items:center; gap:12px; margin-bottom:18px;}
#sd .icon-row img { max-width: 60px;}

#sd p {font-size:14px; line-height:1.5; margin:0;}
.sd_title {padding: 20px 30px 0;}
@media (min-width: 991px) { 
	#sd .reverse {grid-template-columns: 1fr 1.5fr!important;} 
	#sd .reverse .content .text {text-align: right;}
}
@media(max-width:991px){
	#sd .title {width: 100%; margin: 0 0 40px;}
	#sd .service-flex {flex-direction:column;}
	#sd .image img { min-height: 400px; max-height: 440px;}
	#sd .content { border-radius: 0 0 20px 20px;}
	#sd .content .text {padding: 0 32px 60px;}

}
#sd .sd-1.reverse .image {order:2;}
#sd .sd-1.reverse .content {order:1; border-radius:20px 0 0 20px;} /* зеркалим скругление */
@media(max-width:991px){
	#sd .sd-1.reverse .image {order:1;}
	#sd .sd-1.reverse .content {order:2; border-radius:0 0 20px 20px;}
}


#catalog h2 { font-weight: 400; text-transform: uppercase;}
#catalog .line { width: 295px; margin-bottom: 30px;}
#catalog .grid { gap:24px; grid-template-columns:repeat(auto-fill,minmax(300px,1fr));}
#catalog .card {display:flex; flex-direction:column; background:#fff; border-radius:20px; overflow:hidden; height:100%;}
#catalog .img-wrap {position:relative; width:100%;}
#catalog .img-wrap img { width:100%; height:100%; object-fit:contain;}
#catalog .info {padding: 0 18px 15px; }
#catalog .info h3 {font-size: 22px; text-align: center; font-weight: 600; margin: 10px 0 15px;}
#catalog .props {margin-bottom: 0;}
#catalog .btn-wrap {padding:0 18px 18px; margin-top:auto;}
#catalog .button { border-radius:12px; font-size: 20px;}
@media(max-width:991px){#catalog .grid {grid-template-columns:repeat(auto-fill,minmax(160px,1fr));}}
#catalog .owl-carousel .item {width:100%;}
@media(max-width:991px){
	#catalog .owl-nav {position:absolute; top:28.5%; left:0; width:100%; display:flex; justify-content:space-between; transform:translateY(-50%);}
	#catalog .owl-nav button {width:55px; height:55px; background-size:contain; background-repeat:no-repeat; opacity: 1;}
	#catalog .owl-nav .owl-prev{background-image:url(images/left-b.svg);}
	#catalog .owl-nav .owl-next{background-image:url(images/right-b.svg);}
	#catalog .owl-dots {display:flex; justify-content:center; margin-top:12px;}
	#catalog .grid {display:block;}
	#catalog .grid .owl-nav span[aria-label="Previous"],
	#catalog .grid .owl-nav span[aria-label="Next"] { display: none;}
	#catalog .owl-carousel .item { width: 90%; margin: 0 auto;}
}


#calc h2 { text-align: left; font-weight: 400;  text-transform: uppercase; margin-bottom: 20px;}
#calc .line {width: 295px;}
#calc .info {font-size: 16px;}
#calc .calculator-content {margin-top: 15px;}
@media (max-width: 991px) {
	#calc .info {font-size: 14px;}
}



#price .head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;margin-bottom:20px;}
#price h2 {width: 60%; font-weight: 400; text-transform: uppercase;}
#price .dn {display: none;}
#price .db {display: block;}
#price .line {width: 295px; margin: 20px 0 20px 0!important; }
#price .note{ width: 35%; font-size: 12.5px; text-align: right;}
#price .table { overflow: auto; }
#price .price-table{border-collapse:separate;border-spacing:0px;font-size:16px;}
#price .price-table thead th, #price .price-table thead tr td{font-weight:400;text-transform:uppercase;padding:8px 10px;}
#price .price-table tbody tr{background:#fff;}
#price .price-table tbody tr:nth-child(even){background:#DCDCDC;}
#price .price-table tbody td{padding:20px 12px;}
#price .price-table tbody td:first-child{border-radius:25px 0 0 25px;text-align:left;padding-left:30px;}
#price .price-table tbody td:last-child { border-radius: 0 25px 25px 0; white-space: nowrap;}
#price .price-table th,
#price .price-table td {border-right:none;border-left:none;}
#price .price-table th+th,
#price .price-table td+td {border-left:3px solid #d3d3d3;}
@media(max-width:991px){
	#price .head{flex-direction:column;gap:12px;}
	#price h2 {width: 100%; }
	#price .note{width:100%; text-align: left;}
	#price .dn {display: block;}
	#price .db {display: none;}
}

#video .line {max-width: 295px;}
#video h2 { font-weight: 400;text-transform: uppercase;}

#callback h2{font-weight:400;text-transform:uppercase;}
#callback .line{width:295px;}
#callback .cb-banner{position:relative;background:url('https://kolodec-kraft.ru/wp-content/uploads/2025/06/koltsa.jpg') center/cover no-repeat;border-radius:28px;padding:60px 15px;color:#fff;text-align:center;}
#callback .cb-banner::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.45);border-radius:28px;}
#callback .overlay{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:35px;max-width:720px;margin:0 auto;}
#callback h3{font-size:45px;font-weight:700;text-transform:uppercase;margin:0;}
#callback p{margin:0;}
#callback .flex {display: flex; align-items: center; gap: 15px;}
#callback .icons{display:flex;gap:14px;}
#callback .icons img{width:50px;height:50px;}
#callback .phone{font-size:35px; text-decoration: underline;}
#callback .button{font-size: 20px; width: max-content; padding: 12px 30px;}
.callback_title{padding: 20px 10px;}
@media(max-width:991px){
	#callback .cb-banner{padding:40px 20px;}
	#callback .overlay {max-width: 460px;}
	#callback h3{font-size:22px;}
	#callback .icons a{width:56px;height:56px;}
	#callback .icons img{width:56px;height:56px;}
	#callback .flex {flex-direction: column;}
	#callback .phone{font-size:20px;font-weight:500;}
	#callback .button{width:100%;max-width:320px;font-size: 16px;}
}


#know h2 { font-weight: 400; text-transform: uppercase;}
#know .line {width: 45%; margin-bottom: 40px;}
#know .cell {display:flex;flex-direction:column;align-items:center;gap:18px;padding:36px 22px;text-align:center;}
#know .grid { display: grid; grid-template-columns: repeat(3, 1fr); overflow: hidden; gap: 0; }
#know .flex-cards {display: flex; align-items: center; width: 100%; justify-content: flex-start; gap: 10px;}
#know .cell { display: flex; flex-direction: column; align-items: center; padding: 36px 22px 0; text-align: center; border-top: 4px solid #26B1D4; border-left: 4px solid #26B1D4; }
#know .grid .cell:nth-last-child(-n+3) { border-bottom: 4px solid #26B1D4; }
#know .grid .cell:last-child { border-right: 4px solid #26B1D4; margin: -3px -3px 0px 0px; }
#know .cell img { width: 56px; height: 56px; object-fit: contain; }
#know .tag { background: #02a7c8; padding: 6px 24px; border-radius: 22px; color: #fff; font-size: 14px; font-weight: 600; display: inline-block; }
#know p { font-size: 14px; margin: 35px 0 10px 0; text-align: right;} 
#know .toggle-btn { display: none; margin: 24px auto 0; max-width: 260px; width: 100%; text-align: center; padding: 12px 20px; border-radius: 32px; background: #02a7c8; color: #fff; font-weight: 600; font-size: 16px; text-decoration: none; }
#know .button {padding: 8px 20px;}
@media(max-width:991px) {
	#know h2 { text-align: center;}
	#know .line {width: 100%; margin-bottom: 20px;}
	#know .grid { grid-template-columns: 1fr; }
	#know .cell { border-right: none; }
	#know .grid .cell:not(.more) { border-bottom: 2px solid #02a7c8; }
	#know .toggle-btn { display: block; }
	#know .grid{grid-template-columns:1fr;}
	#know .cell{border-right:none;}
	#know .grid .cell:not(.more){border-bottom:4px solid #02a7c8;}
	/*#know .more{display:none;}*/
	#know .toggle-btn{display:block;}
	#know .grid { border: 4px solid #26B1D4; border-radius: 20px; overflow: hidden; }
	#know .cell { border: none; border-bottom: 4px solid #26B1D4; border-radius: 0; border-right: none; border-left: none; }
	#know .grid .cell:last-child { border: none; }
}
@media (min-width: 991px) {
	#know .grid .cell:nth-child(3n) { border-right: 4px solid #26B1D4; }
	/* Полное скругление всех углов */
	.brr     { border-radius: 20px 20px 20px 20px; }
	/* Только нижние углы */
	.brr-1   { border-radius: 0 0 20px 20px; }
	/* Верхний правый + нижние углы */
	.brr-2   { border-radius: 0 20px 20px 20px; }
	/* Верхние углы */
	.brr-3   { border-radius: 20px 20px 0 0; }
	/* Только левый нижний угол */
	.brr-4   { border-radius: 0 0 0 20px; }
	/* Только правый нижний угол */
	.brr-5   { border-radius: 0 0 20px 0; }
	/* Только верхний левый угол */
	.brr-6   { border-radius: 20px 0 0 0; }
	/* Только верхний правый угол */
	.brr-7   { border-radius: 0 20px 0 0; }
	/* Только нижний левый угол */
	.brr-8   { border-radius: 0 0 0 20px; }
	/* Только нижний правый угол */
	.brr-9   { border-radius: 0 0 20px 0; }
	/* Левые углы */
	.brr-10  { border-radius: 20px 0 0 20px; }
	/* Правые углы */
	.brr-11  { border-radius: 0 20px 20px 0; }
	/* Верхний левый + нижний правый */
	.brr-12  { border-radius: 20px 0 0 20px; }
	/* Верхний правый + нижний левый */
	.brr-13  { border-radius: 0 20px 20px 0; }
	/* Только верхние правый и нижний левый (диагональ) */
	.brr-14  { border-radius: 0 20px 0 20px; }
	/* Только верхний левый и нижний правый (диагональ) */
	.brr-15  { border-radius: 20px 0 20px 0; }
}


#comp h2 {font-weight: 400; text-transform: uppercase;}
#comp .container {display: flex;}
#comp .about-company {padding: 60px 0;}
#comp .about-head {margin-bottom: 40px; width: 35%;}
#comp .blue-line {width: 90px; height: 4px; background: #00bde1; margin-top: 10px;}
#comp .about-items {width: 80%; display: flex; flex-wrap: wrap; gap: 25px; margin-top: 70px;}
#comp .about-item {display: flex; flex-direction: column; align-items: flex-start; width: calc(25% - 30px); align-items: flex-end;}
#comp .about-num {display: flex; align-items: baseline; justify-content: space-between; width: 100%;}
#comp .about-num .small { color: #00bde1; font-size: 12px; text-transform: uppercase; display: inline-block; transform: translateY(-10px);}
#comp .about-num .big {font-size: 80px; margin: 0;}
#comp .b-line {width: 100%; height: 4px; background: #000; margin: -31px 4px 10px 0;}
#comp .about-text p {font-size: 14px; margin: 0;}
@media (max-width: 992px) {
	#comp .container { flex-direction: column;}
	#comp .about-head {margin: 0 0 40px auto; width: max-content;}
	#comp .about-items {width: 100%; flex-direction: column; margin-top: -50px; gap: 0;}
	#comp .about-item.mr {width: 50%;}
	#comp .about-item.ml {margin-left: 50%; width: 50%;}
}


#faq h2 {font-weight: 400; text-transform: uppercase;}
#faq .faq-wrapper{display:grid;grid-template-columns: 450px 1fr;gap:30px;align-items:flex-start}
#faq .faq-contact{background:#ffffff;padding:30px;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,0.06);}
#faq .faq-contact p{text-transform: uppercase; font-size:16px; margin-bottom:10px;}
#faq .faq-contact span{font-size:14px; display:block;margin-bottom:20px;}
#faq .cont-mess {display: flex; gap: 25px;}
#faq .messengers{display:flex;justify-content:center;gap:15px;}
#faq .messenger {width:40px;height:40px;}
@media(max-width:991px){
	#faq .faq-wrapper{grid-template-columns:1fr; gap: 0;}
	#faq .faq{order:1; }
	#faq .faq-contact{order:2;}
	#faq .faq-contact p { font-size: 18px; margin-bottom: 10px;}
	#faq .faq-contact {padding: 35px;}
}
/*  Аккордеон  */
#accordion .card{background:#b1b1b117;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,0.06);overflow:hidden;margin-bottom:16px; transition: .3s all;}
#accordion .card>a{background: #fff; border-radius: 20px; display: flex; justify-content: space-between; align-items: center; padding: 20px 28px; text-transform: uppercase;}
#accordion .card>a:after{content:url('<?= get_template_directory_uri(); ?>/images/arr-blue.svg'); transition: .3s all;}
#accordion .card>a.collapsed:after{transform:rotate(180deg); transition: .3s all;}
#accordion .tr{padding: 25px; font-size: 16px; margin-top: 15px; background: #fff; border-radius: 20px;}
#accordion .card>a:after{ content: url(./images/strelka.svg); margin-left: auto; transition: .3s;}
#accordion .card>a.collapsed:after{transform:rotate(180deg)}
@media(max-width:991px){
	#accordion .tr, #accordion .card>a {padding: 40px;}
	#accordion .card>a{ padding:40px 40px 40px 28px; }
}


/*#text .title {width: max-content;}*/
#text h2 {font-weight: 400; text-transform: uppercase;}
#text .text { margin-left: 30%;}
#text h3 { font-size: 18px; padding: 10px 0;}
#text p { margin: 20px 0; }
@media (max-width: 991px) {
	#text .title {width: 100%;}
	#text .text {width: 100%; margin-left: 0;}
}


#promo{position:relative;display:flex;align-items:center;min-height:560px;color:#fff;padding:0}
#promo .container {overflow: hidden;}
#promo .promo-bg{position:absolute;inset:0;overflow:hidden;z-index:-3;}
#promo .promo-bg-img{width:100%;height:100%;object-fit:cover;filter:blur(2px);transform:scale(1.05)}
#promo .promo-drill{flex:0 0 45%;width:45%;height:100%;object-fit:cover;opacity:.6;pointer-events:none;z-index:-1}
#promo .container{flex:1;display:flex;justify-content:center}
#promo .promo-box{max-width:640px;background:linear-gradient(135deg,rgba(77,77,77,.75),rgba(153,153,153,.45));backdrop-filter:blur(10px);padding:40px 55px;border-radius:4px;position:relative;z-index:2}
#promo .title .line{width:100%}
#promo h2{text-transform:uppercase;font-weight:400;margin-bottom:14px}
#promo p{margin-bottom:45px}
#promo .promo-bottom{display:flex;align-items:center;justify-content:flex-end;gap:30px}
#promo .messengers{display:flex;gap:18px}
#promo .messenger svg{width:24px;height:24px}
#promo .button{padding:10px 35px;width:max-content}
#promo .promo-bottom.db{display:flex}
#promo .promo-bottom.dn{display:none}
@media(max-width:991px){
	#promo{padding:60px 0}
	#promo .promo-bg-img{filter:blur(0px);}
	#promo .promo-box{max-width:none;padding:40px}
	#promo h2{font-size:20px;line-height:1.3}
	#promo .promo-bottom{flex-direction:column;align-items:flex-start;gap:24px}
	#promo .btn{width:100%;text-align:center}
	#promo .promo-drill{display:none}
	#promo{flex-direction:column;padding:0; margin: 40px 0;}
	#promo .promo-drill{display: none;}
	#promo .container{width:100%; padding:0; display:flex; justify-content:center;}
	#promo .promo-box {max-width: 100%; padding: 30px 25px; border-radius: 0; /*margin-left: 50%;*/}
	#promo .pr-t {padding-bottom: 35%;}
	#promo p{margin-bottom:0px}
	#promo .promo-bottom.db {display: none;}
	#promo .promo-bottom.dn {display: flex; align-items: center;}
	#promo .promo-bottom { position: absolute; flex-direction: column; align-items: flex-start; gap: 20px; margin-top: 20px; z-index: 20; bottom: 30px;}
	#promo .button {padding: 15px 35px; width: 90vw;}
}
@media(max-width:548px){
	#promo .button {padding: 12px 35px; width: 85vw;}
	#promo .promo-bottom { bottom: 15px;}
}


#text2 .title {width: max-content;}
#text2 h2 {font-weight: 400; text-transform: uppercase;}
#text2 h3 { font-size: 18px; padding: 10px 0;}
#text2 p { margin: 20px 0; max-width: 70%;}
@media (max-width: 991px) {
	#text2 p {max-width: 100%;}
	#text2 .title {width: 100%;}
}


#rews .title {width: max-content;}
#rews h2 {font-weight: 400; text-transform: uppercase;}
#rews .card { background-color: #fff; border: 2px solid #f3f3f3; border-radius: 25px; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; min-height: 480px; }
#rews .p-text { padding: 25px 30px 0; position: relative; }
#rews .nd {display: flex; gap: 20px;}
#rews .head { display: flex; justify-content: space-between; margin-bottom: 10px; align-items: flex-start; }
#rews .quote-img { width: 55px; }
#rews .p-text .project p { margin: 0 0 60px; }
#rews .project {padding: 0 30px 10px; text-align: right; }
#rews .img-wrap img { width: 100%; height: auto; border-radius: 0 0 25px 25px; object-fit: cover; max-height: 200px; display: block; }
#rews .owl-nav { position: absolute; top: 50%; left: 0; right: 0; display: flex; justify-content: space-between; align-items: center; transform: translateY(-50%); pointer-events: none; padding: 0 10px; }
#rews .owl-nav button { width: 43px; height: 43px; background-repeat: no-repeat; background-position: center; background-size: 100%; display: flex; align-items: center; transition: transform 0.3s ease; margin: 0 -20px; }
#rews .owl-nav button:hover { transform: scale(1.05); }
#rews .owl-nav .owl-prev { background-image: url('./images/left.svg'); }
#rews .owl-nav .owl-next { background-image: url('./images/right.svg'); }
@media (max-width: 991px) {
	#rews .title {text-align: center; margin: 0 auto; margin-bottom: 30px; width: 100%;}
	#rews .owl-nav { pointer-events: auto; top: -50px; justify-content: space-between; display: flex; margin: 10px;}
	#rews .p-text { padding: 20px 20px 0; }
	#rews .text {margin-bottom: 20px;}
	#rews .card{min-height: 0px;}
	
	#rews .owl-nav{justify-content: flex-end; gap: 50px;}
	#rews .owl-dots{display:none;}
	
	
}
@media (min-width: 991px) {
	#rews .owl-carousel { padding: 0 60px; }
	#rews .owl-nav { pointer-events: auto; left: 0; right: 0; padding: 0 20px; }
	#rews .owl-nav button { pointer-events: auto; }
}


#order .grid { margin-bottom: 20px; }
#order .pic {position: relative;}
#order .pic img { width: 100%; height: auto; display: block; max-height: 220px; object-fit: cover; }
#order .caption { position: absolute; top: 0; left: 0; width: 42%; height: max-content; background: rgb(255 255 255); display: flex; flex-direction: column; justify-content: center; padding: 25px;}
#order .caption h2 {color: #219ab8; font-size: 22px; font-weight: 400; line-height: 1.3; margin: 0; text-transform: uppercase;}
#order .caption .line { width: 100%; height: 4px; background: #00bcd4; margin-top: 20px; margin-bottom: 0;}
#order .intro p { margin: 0; font-size: 15px; line-height: 1.6; }
#order .details { margin: 25px 0; font-size: 15px; line-height: 1.6; }
#order .buttons { display: flex; gap: 20px; justify-content: flex-end; margin-left: 60%; margin-top: 35px;}
#order .button.outline { background: #fff; border: 1px solid #26B1D4; color: #26B1D4;}
@media (max-width: 991px) {
	#order .top { flex-direction: column; gap: 15px; }
	#order .pic { flex: none; width: 100%; }
	#order .intro p { font-size: 14px; }
	#order .caption { background: #1B1B1B; width: 100%;}
	#order .caption h2 {color: #fff;}
	#order .button {padding: 15px 20px; font-size: 20px;}
	#order .buttons {display: flex; gap: 20px; justify-content: flex-end; flex-direction: column; margin-left: 0;}
}


#extras .title {width: max-content;}
#extras h2 {font-weight: 400; text-transform: uppercase;}
#extras .card{background:#fff;border-radius:20px;padding:45px 15px;display:flex;flex-direction:column;align-items:center;justify-content:center}
#extras .card img{height:60px;margin-bottom:20px}
/*#extras .card .button { width: max-content;}*/
#extras .buttons { display: flex; gap: 20px; justify-content: flex-end; margin-left: 60%; margin-top: 35px;}
#extras .button.outline { background: #fff; border: 1px solid #26B1D4; color: #26B1D4;}#extras .primary{background:#00bde1;color:#fff}
#extras .button.db{width: 50%;}
@media(max-width:991px){
	#extras .title {margin: 0 0 40px; width: 100%;}
	#extras .line {max-width: 65%;}
	#extras .button,#extras .button.db {padding: 10px 20px; font-size: 17px; width: 100%;}
	#extras .buttons {display: flex; gap: 20px; justify-content: flex-end; flex-direction: column; margin-left: 0;}
}



#onas { overflow: hidden;margin-bottom: 50px; }
#onas .grid.col-pc-2 { gap: 15px; }
#onas .title { width: max-content; }
#onas .title h2 { font-weight: 400; text-transform: uppercase; }
#onas .title .line { margin-bottom: 30px; }
#onas .left { margin-top: 40px; }
#onas .right { margin-left: 40px; display: flex;
    justify-content: flex-end;}
#onas .right img { width: 75%; max-height: 600px; object-fit: cover; display: block; }
#onas .items { margin-top: 50px; }
#onas .item { display: flex; align-items: center; gap: 20px; }
#onas .item p { margin-bottom: 0; }
#onas .item img{width: 30px;}
@media (max-width: 991px) {
	#onas{margin-bottom: 0; }
    #onas .left { margin-top: 0px; }
    #onas .items { grid-template-columns: 1fr 1fr; margin-top: 0; }
    #onas .right { margin-left: 0; justify-content: center; }
    #onas .right img { max-height: 500px; }
    #onas .item { gap: 10px; font-size: 12px; }
    #onas .item img { width: 25px; }
}


#numbers {margin-top: -70px; margin-bottom: 20px;}
#numbers .item {display: flex; align-items: center;  gap: 30px;}
#numbers .item p.text {margin-bottom: 0;}
#numbers .num {font-size: 115px;}
@media (max-width: 991px) {
	#numbers .grid {gap: 0;}
	#numbers {margin-top: 30px;}
	#numbers .item.ml {justify-content: flex-end; gap: 15px;}
	#numbers .num {font-size: 100px;}
	#onas .right img { margin-left: 0px;}
}


#geo .title h2{font-weight:400;}
#geo .line{width:100%;}
#geo .cities{gap:5px;list-style:none;margin:0;padding:0;font-size: 14px;}
#geo .cities a:hover {color: #219ab8;}
#geo .buttons { gap: 20px; }
#geo .buttons.db {display: grid;}
#geo .buttons.dn {display: none;}
#geo .button { width: 240px;}
#geo .button.outline { background: #fff; border: 1px solid #26B1D4; color: #26B1D4;}#extras .primary{background:#00bde1;color:#fff}
@media(max-width:768px){
	#geo .cities{grid-template-columns:1fr 1fr 1fr;}
}
@media(max-width:991px){
	#geo .grid{grid-template-columns:1fr}
	#geo .cities{grid-template-columns:1fr 1fr;}
	#geo .buttons.db {display: none;}
	#geo .buttons.dn {display: grid;}
	#geo .button {padding: 15px 20px; font-size: 20px; width: 100%;}
	#geo .buttons {display: flex; gap: 20px; justify-content: flex-end; flex-direction: column; margin-left: 0; margin-top: 20px;}
}


#docs .title {width: max-content; margin-bottom: 40px;}
#docs .title h2 {font-weight: 400; text-transform: uppercase; margin: 0;}
#docs .line { margin-top: 10px;}
#docs .grid {gap: 40px; justify-content: center; margin-left: 25%}
#docs .doc {text-align: center;}
#docs .doc img {width: 100%; max-width: 180px; height: auto; margin-bottom: 15px;}
#docs .doc p {font-size: 16px; margin: 0;}
@media(max-width:991px){
	#docs .grid {grid-template-columns: 1fr 1fr; gap: 40px; margin-left: 0;}
}


/*#steps .title {width: max-content;}*/
#steps .title h2 {font-weight: 400; text-transform: uppercase; margin: 0;}
#steps .line { margin-top: 10px;}
#steps .steps { display: flex;}
#steps .n-box { display: flex; align-items: center; gap: 10px;}
#steps .num { font-size: 115px; color: #26b1d4;}
#steps .db {display: block;}
#steps .dn {display: none;}
#steps .b-line.db {display: block;}
#steps .new-line.dn {display: none;}
#steps .fade-line {display: flex; align-items: stretch; gap: 0;}
#steps .fade-line .dot {width: 20px; height: 20px; border: 3.5px solid #222; border-radius: 50%; background: #f7f7f7; margin-top: 1px;}
#steps .fade-line .line {flex: 1; height: 4px; background: linear-gradient(to right, #222 0%, rgba(0,0,0,0.4) 50%, rgba(0,0,0,0) 100%);}
@media (max-width: 991px) {
	#steps .steps {display: flex; flex-direction: column;gap: 20px;}
	#steps .num {font-size: 95px;}
	#steps .step {display: flex; align-items: center; gap: 10px; margin-bottom: -40px;}
	#steps .step.r {overflow: hidden;}
	#steps .step.l { flex-direction: row-reverse;}
	#steps .db {display: none;}
	#steps .dn {display: flex; flex-direction: column; margin: 0;}	
	#steps .b-line.db {display: none;}
	#steps .new-line.dn {display: flex; margin-right: 25%; margin-bottom: 20px;}
	#steps .new-line.dn.l {display: flex; flex-direction: column; margin-left: 25%; margin-right: 0; text-align: right;}
}

#contpage{margin-bottom: 20px;}
#contpage .info{padding: 20px;background: #ffffff;}
#contpage p{margin: 0px;}
#contpage .item{font-size: 20px;padding-top: 15px;padding-bottom: 15px;}
#contpage .item .title{color: #6C6C6C;font-size: 15px;}
#contpage .item .phone{font-size: 25px;font-weight: bold;}
#contpage .item a{color: #26b1d4;}
#contpage .item .mail{color: #26b1d4;}


#footer { background-color: #fff; color: #219ab8;}  
#footer .c {grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 20px;}
#footer .logo { display: block; margin-bottom: 10px; }  
#footer .lb {gap: 0px;}
#footer .lt { display: flex; flex-direction: column; gap: 15px; max-width: 250px;}
#footer .lt.d {display: none;}
#footer .buttons.b2.d {display: none;}
#footer .title { font-size: 13px; text-align: left; padding-bottom: 13px;}  
#footer .buttons { margin-top: 20px; display: flex; flex-direction: column; gap: 10px; }  
#footer .buttons .grad-button { margin-bottom: 10px; }  
#footer .mail { color: #219ab8; padding: 10px 0;}  
#footer .mail:hover { color: var(--hover-color)!important;}  
#footer .f-cont { gap: 10px; font-size: 15px !important;}
#footer .f-cont a.phone {color: var(--title-color); font-size: 16px; font-weight: 400; margin-bottom: -10px;}
#footer .tit {font-size: 18px;}
#footer .soc { display: flex; gap: 15px; }  
#footer .soc img { height: 40px; }  
#footer ul { padding: 0; list-style: none; margin: 0; }  
#footer ul li { padding: 5px 0; }  
#footer ul li a { color: #219ab8; text-decoration: none; font-weight: 400;}  
#footer .poly:hover {color: #004dff;}
#footer .footer-bottom { display:flex;justify-content:space-between;margin-top:40px; gap: 10px;}
.time{
	margin: 15px 0;
}
@media (max-width: 991px) {  
	#footer .c {grid-template-columns: none;}
    #footer .container { text-align: center; }  
    #footer .soc { justify-content: center; }
	#footer .lb.d {display: none;}  
	#footer .buttons.b2.d { display: grid; margin: 5px 0 15px;}
	#footer .f-cont { justify-items: center; }
	#footer .lt.d {display: grid; grid-template-columns: 0.3fr 0.5fr; justify-content: center; align-items: stretch;}
	#footer .lt { max-width: 100%;}
	#footer .title { text-align: center;}  
	#footer .footer-bottom { flex-direction: column;}
}
#footer .footer-bottom { color: #219ab8; padding-top: 20px;}
#footer .footer-bottom a {color: #219ab8; text-decoration: none; transition: color .2s;}
#footer .footer-bottom a:hover {color: #007c9d;}


/*#contpage {padding: 0 0 50px;}*/
#contpage .bold{ font-size: 25px;white-space: nowrap;display: block;font-weight: 600; }
#contpage h3{ font-size:30px;margin-bottom:10px; font-weight: 500; }
/*#contpage .item{ margin-bottom:15px; }*/

#title-h1 {background: #fff; padding: 1px 0 21px;}
#title-h1 h1 { margin: 20px 0 0; color: #219ab8;}

/* Калькуляторы */
.ezfc-form-elements { margin-bottom: 40px;}
@media (min-width: 991px) {.ezfc-form-elements {display: flex; gap: 20px;}}
/* Лейбел */
.ezfc-form .ezfc-label{font-weight: bold;padding-bottom: 5px;}
.ezfc-form .ezfc-text {font-size: 1.6em;font-weight: 700;padding: .3em;}
.ezfc-form .ezfc-slider-element .ui-slider-handle{background: var(--c1)!important;border: none;border-radius:0px;}
/* Цена */
.ezfc-form .ezfc-price {font-weight: bold;}
.ezfc-form .ezfc-price-value {color: var(--c1);font-size: 60px;vertical-align: middle;}
.ezfc-form .ezfc-price-currency {font-size: 40px;vertical-align: middle;}
/* Импут */
.ezfc-element-input, .ezfc-element-numbers, .ezfc-element-select, .ezfc-element-select, .ezfc-element-textarea{width: 100%;border: 2px solid var(--c1); border-radius: 25px; padding: 15px!important;appearance: none;-moz-appearance: none;-webkit-appearance: none;outline: none;margin: 0!important}
.ezfc-element-textarea {height: 150px;}
.ezfc-element-select{cursor: pointer;background: #fff url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E) no-repeat right 5px top 55%; border-radius: 20px;}
.ezfc-theme-default .ezfc-element-select {padding: .3em; border: 2px solid #26b1d4;}
/* Если есть иконка */
.ezfc-form .ezfc-element.ezfc-has-icon {padding-left: 50px!important; border-radius: 20px;}

/* Кнопка */
.ezfc-theme-default .ezfc-element-submit {padding: 10px!important;}
.ezfc-form .button{ border: none;  width: max-content;  padding: 15px 40px!important; transition: .3s all;}
.ezfc-form .button:hover{}
/* Сообщение ниже формы */
.ezfc-required-notification {font-size: .8em;margin-top: 1em;}

/* Радио с картинками */
@media (max-width: 921px) {
	.fimg .ezfc-element-radio-container{display: flex!important;align-items: center;margin-bottom: 5px;}
	.fimg .ezfc-element-radio{max-width: 100px;padding:10px;}
	.fimg .ezfc-element-option-has-image img{padding-right: 10px;}
	.ezfc-element-option-has-image .ezfc-element-checkbox-text, .ezfc-element-option-has-image .ezfc-element-radio-text{text-align: left!important;}
}
@media (min-width: 992px) {
	.fimg .ezfc-element-option-container {display: -ms-flexbox;display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;margin-left: -0.5%;margin-right: -0.5%;}
	.fimg .ezfc-element-radio-container{margin-right: 0.5%;margin-left: 0.5%;flex: 0 0 32.333333%;max-width: 32.333333%;}
	.fimg.two .ezfc-element-radio-container{margin-right: 0.5%;margin-left: 0.5%;flex: 0 0 48.999999%;max-width: 48.999999%;border:2px solid var(--c4);}
	.fimg.two .ezfc-element-radio-container.ezfc-option-wrapper-selected{border-color:var(--c1);}
	.fimg.mb10 .ezfc-element-radio-container{margin-bottom: 10px;}
}
.fimg .ezfc-element-radio-container{background-color: white;border-radius: 20px;padding: 10px!important;}
.ezfc-element-option-has-image .ezfc-element-checkbox-text, .ezfc-element-option-has-image .ezfc-element-radio-text{display: block!important;}
.fimg .ezfc-element-option-has-image img{opacity: 1!important;}
.fimg .ezfc-element-option-has-image img.ezfc-selected~.ezfc-addon-option {border-color: var(--c1); gap: 10px; border-radius: 20px; border: 1px solid #26b1d4;}
/*.fimg .ezfc-element-option-has-image .ezfc-addon-option{top: 0px;left: 0px;width: 100%;height: 100%;position: absolute;gap: 10px; border-radius: 20px; border: 1px solid #26b1d4;}*/
/* Радио и чек */
.ezfc-grid-6 .ezfc-col-2{padding:0 10px;}
.ezfc-element-checkbox-input, .ezfc-element-radio-input{display: none;}
.ezfc-element-radio-container, .ezfc-element-checkbox-container{padding: 4px 0px;display: flex;}
.ezfc-element-radio-text label, .ezfc-element-checkbox-text label{cursor: pointer;}
.fcheck .ezfc-addon-label{cursor: pointer;width: 20px;height: 20px;background-color: transparent;border: #797979 1px solid;display: inline-block!important;margin: 0 5px 0 0;position: relative;vertical-align: middle;border-radius: 100%;line-height: 1em;}
/* Радио */
.fcheck .ezfc-addon-label:after {content: '';width: 12px;height: 12px;background-color: transparent;display: inline-block;border-radius: 100%;position: absolute;top: 3px;left: 3px;-webkit-transition: all .2s ease-in-out;-moz-transition: all .2s ease-in-out;-o-transition: all .2s ease-in-out;transition: all .2s ease-in-out;}
.fcheck .ezfc-element-radio-input:checked+.ezfc-addon-label:after {background-color: var(--c1);}
/* Чекбокс */
.fcheck .ezfc-element-checkbox-input:checked+.ezfc-addon-label {color: var(--c1);}
.fcheck .ezfc-element-checkbox-input:checked+.ezfc-addon-label:before {content: "\f00c";font-family: FontAwesome;font-size: .9em;position: relative;left: .1em;}
/* Сообщение после отправки */
.ezfc-success-text{background-color: green;text-align: center;padding: 20px 0px;color: white;font-weight: bold;font-size: 20px;}
/* Скрыть элемент */
.fhide{opacity:0.5!important;pointer-events:none!important;transition:var(--transition);}
/* Да, Нет */
.fdanet .ezfc-text-right{flex: 0 0 80%;text-align: left;}
.fdanet .ezfc-element-option-selectable-text{background-color: white;}
.fdanet .ezfc-element-option-selectable-text.ezfc-selected{background-color: var(--c1)!important;}

.fslide .ezfc-text-right{flex: 0 0 40%;text-align: left;}

.fplus tbody{display: -ms-flexbox;display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;}
/*.fplus img{max-width:100%; width:100%;}*/
.fplus table{width:100%;}
.fplus.fplus3 .ezfc-element-option-container {display:flex;flex-wrap:wrap;}
.fplus.fplus3 .ezfc-element-option-has-image{padding:5px;margin:0.5%;transition:all 0.25s ease-in-out;}
.fplus.fplus3 .ezfc-element-option-has-image.ezfc-option-wrapper-selected{border-color:var(--c1); transition:all 0.25s ease-in-out;}
.fplus .ezfc-element-table_order-row {display: flex;flex-direction: column;align-items: center;text-align: center;justify-content: space-between;padding: 5px;margin: 0.2%;}
.fplus .ezfc-element-table_order-table .ezfc-element-table_order-image-column, .fplus .ezfc-element-table_order-table .ezfc-element-table_order-name{width: 100%;text-align: center;line-height: 20px;display: flex;justify-content: center;}
.fplus .ezfc-element-table_order-table .ezfc-element-table_order-name{padding: 10px 0px;}
img.ezfc-element-option-image.ezfc-element-radio-image { max-height: 170px;}
@media (max-width: 921px) {
	.fplus .ezfc-element-table_order-row{flex: 0 0 48%;max-width: 48%;}
	.fplus.fplus4 .ezfc-element-option-has-image{flex: 0 0 49.5%;max-width: 49.5%;}
    .ezfc-element-table_order-price,.ezfc-element-table_order-subtotal{display: none;}
	.fplus.fplus3 .ezfc-element-option-has-image{width: 100% !important; display: flex !important; align-items: center; gap: 10px; background: #fff; border-radius: 20px; border: 1px solid #26b1d4;}
	.fplus.fplus3 .ezfc-element-radio{max-width:100px;}
	img.ezfc-element-option-image.ezfc-element-radio-image {height: 100px;}
}
@media (min-width: 992px) {
	.fplus .ezfc-element-table_order-row{flex: 0 0 16.266666666%;max-width: 16.266666666%;}
	.fplus.fplus3 .ezfc-element-table_order-row{flex: 0 0 24.6%;max-width: 24.6%;}
	.fplus.fplus3 .ezfc-element-option-has-image{flex: 0 0 32.3%;max-width: 32.3%; background: #fff; border-radius: 20px;gap: 10px; border-radius: 20px; border: 1px solid #26b1d4;}
}

.fplusone table tbody .ezfc-element-table_order-row{display:flex; align-items:center;}

.fdanet .ezfc-element-option-selectable-text{background-color: transparent!important;border: 2px solid var(--c1)!important;}
.ezfc-element-table_order-table input.ezfc-element-table_order-quantity-input[type=text]{border: 2px solid var(--c1)!important;}
.ezfc-element-option-has-image .ezfc-element-icon-wrapper:hover, .ezfc-element-option-has-image .ezfc-element-option-selectable-text:hover{background-color: var(--c1)!important;color: white!important;}

.ezfc-element.ezfc-custom-element.ezfc-column.ezfc-col-3.calcstiky.ezfc-element-wrapper-group {background: #fff; padding: 20px; border-radius: 20px; height: max-content;}

/* Калькуляторы */
#calc{background-color:var(--c3);}

:root{
	--c1:#26b1d4;
	--c2:#004dff;
	--c4:#8ef78d;
}

.wpcf7-form input { -webkit-appearance: auto;}
.catalog_subtitle{
	margin-bottom: 30px;
}

/*.wwm {position: relative; display: inline-block; }
.wwm::after {content: "";position: absolute; bottom: 10px; right: 10px; width: 120px; height: 40px; background: url('/wp-content/uploads/2025/08/logo.svg') no-repeat center; background-size: contain; opacity: 0.6; pointer-events: none; }
*/

.banner_2_group {
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    color: #fff;
    min-height: 400px;
}

.banner_2_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0;
}

.banner_2_bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(263deg, rgba(26, 42, 65, 0.00) 20.97%, rgba(26, 42, 65, 0.50) 35.55%, #1A2A41 102.03%);
    z-index: 1;
}

.banner_2_group .container,
.banner_2_group .banner_2_wrapper,
.banner_2_group .banner_2_left,
.banner_2_group .banner_2_right {
    position: relative;
    z-index: 2;
}

.banner_2_wrapper {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 42px 0 42px;
    gap: 40px;
}

.banner_2_left {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 75%;
}

.banner_2_right {
    flex: 0 0 auto;
    align-self: flex-start;
}

.banner_2_price_mobile {
    display: none;
}

.banner_2_price_badge {
    background: rgba(255, 255, 255, 0.95);
    color: #1A2A41;
    padding: 16px 24px;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(10px);

    text-align: right;
    min-width: 160px;
    white-space: nowrap;
}

.banner_2_price_badge .price-label {
    display: block;
    font-size: 14px;
    font-weight: 400;
    opacity: 0.7;
    line-height: 1.2;
}

.banner_2_price_badge .price-value {
    display: block;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.1;
    margin-top: 4px;
}
@media(max-width: 991px){.banner_2_price_badge .price-value {font-size: 22px;}}

.banner_2_title {
 
    color: #fff;
    font-size: 50px;
    font-weight: 500;
    line-height: 110%;
    letter-spacing: 0.5px;
    margin-bottom: 16px;
}

.banner_2_offer {
 
    font-size: 20px;
    margin-bottom: 24px;
    max-width: 600px;
}

.banner_2_desc {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    margin-bottom: 32px;
    width: 100%;
	
}

.banner_2_card {
    flex: 1 1 0;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 20px 16px;
    background: rgba(255, 255, 255, 0.20);
    backdrop-filter: blur(7px);
    border-radius: 8px;

    font-size: 18px;
    line-height: 1.3;
    min-width: 0;
}

.banner_2_card .card-icon {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

.banner_2_card .card-icon img {
    width: 22px;
    height: 22px;
    object-fit: contain;
}

.banner_2_card .card-text {
    flex: 1 1 auto;
    word-wrap: break-word;
}

.banner_2_controls {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 24px;
}

.btn_primary.banner_2_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 28px;
    background: #26b1d4;
    color: white;
    font-weight: 500;
    font-size: 18px;
    border-radius: 50px;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
}



.banner_2_contacts {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
	margin-bottom: 30px;
}

.banner_2_contacts .contact-phone {
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    text-decoration: none;
    white-space: nowrap;
}

.banner_2_contacts .contact-phone:hover {
    opacity: 0.8;
}

.banner_2_contacts .contact-socials {
    display: flex;
    gap: 12px;
}



.banner_2_contacts .contact-socials a img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

@media (max-width: 1024px) {
    .banner_2_wrapper {
        flex-direction: column;
        
    }
    
    .banner_2_left {
        max-width: 100%;
        order: 2;
    }
    
    .banner_2_right {
        order: 1;
        width: 100%;
        display: flex;
        justify-content: flex-end;
        margin-bottom: 20px;
    }
    
    .banner_2_desc {
        flex-wrap: wrap;
    }
    
    .banner_2_card {
        flex: 0 0 calc(50% - 6px);
        max-width: calc(50% - 6px);
    }
    
    .banner_2_card:nth-child(3) {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .banner_2_title {
        font-size: 36px;
    }
    
    .banner_2_contacts {
        justify-content: flex-end;
    }
}

@media (max-width: 991px) {
    .banner_2_bg::before {
        background: linear-gradient(0deg, rgba(26, 42, 65, 0.95) 0%, rgba(26, 42, 65, 0.70) 60%, rgba(26, 42, 65, 0.30) 100%, rgba(26, 42, 65, 0.00) 100%);
    }
	.banner_2_price_badge{
		text-align: left;
	}
	
	
   
    
    .banner_2_right {
        display: none;
    }
    
    .banner_2_price_mobile {
        display: block;
        margin-bottom: 20px;
    }
    
    .banner_2_price_mobile .banner_2_price_badge {
        width: 100%;

    }
    
    .banner_2_left {
        order: 1;
    }
    
    .banner_2_title {
        font-size: 40px;
        
        margin-bottom: 10px;
    }
    

    
    .banner_2_desc {
        flex-wrap: wrap;
        flex-direction: row;
    }
    
    .banner_2_card {
        flex: 0 0 calc(50% - 6px);
        max-width: calc(50% - 6px);
		font-size: 13px;
		gap:0px;
    }
	.card-icon{
		display:none !important;
	}
    
    .banner_2_card:nth-child(3) {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .banner_2_controls {
        flex-direction: column;
        width: 100%;
    }
    
    .btn_primary.banner_2_btn {
        width: 100%;
        justify-content: center;
		font-size: 22px;
    }
    
   
    .banner_2_contacts {
        flex-direction: column;
        align-items: center;
        gap: 16px;
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid rgba(255, 255, 255, 0.20);
    }
    
    .banner_2_contacts .contact-phone {
        font-size: 24px;
    }
    
    .banner_2_contacts .contact-socials {
        gap: 16px;
    }

    
    .banner_2_contacts .contact-socials a img {
        width: 40px;
        height: 40px;
    }
}


.block-without-number {
    padding: 30px 0;
}

.block-without-number .content-wrapper {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.block-without-number .text-content {
   
    width: 100%;
}

.block-without-number .text-content h2 {
	color: #333;
    text-transform: none !important;
    font-size: 32px;
	 max-width: 500px;
    line-height: 42px;
	font-weight: 600;
	
    
}

.block-without-number .text-content .text {
    margin: 0;
	 max-width: 600px;
    font-size: 16px;
    line-height: 130%;
	margin-top: 30px;
	color:#333;
	font-weight: 400;
    
}


.block-without-number .images-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;
}

.block-without-number .images-grid .img-item {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 4/3;
}

.block-without-number .images-grid .img-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 12px;
    transition: transform 0.3s ease;
	cursor:pointer;
}



@media (max-width: 991px) {
    .block-without-number {
        padding: 40px 0;
    }
    
    .block-without-number .content-wrapper {
        gap: 30px;
    }
  

    .block-without-number .text-content {
        max-width: 100%;
    }
    
    .block-without-number .text-content h2 {
		max-width: 70%;
        font-size: 22px;
		line-height: 28px;
        margin-bottom: 15px;
    }
    
    .block-without-number .text-content .text {
        font-size: 14px;
		margin-top:0px;
		margin-bottom: 10px;
		max-width: 70%;
		
    }
    
  
    .block-without-number .images-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    
    .block-without-number .images-grid .img-item {
        border-radius: 8px;
        aspect-ratio: 1/1;
    }
}

@media (max-width: 480px) {
    .block-without-number .images-grid {
        gap: 10px;
    }
    
    .block-without-number .images-grid .img-item {
        border-radius: 6px;
    }
}

/* Виджет мессенджеров */
.msg-widget{position:fixed;right:60px;bottom:60px;z-index:9999;}
.msg-toggle{width:56px;height:56px;border-radius:50%;border:0;background:linear-gradient(135deg,#667eea,#764ba2);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(102,126,234,.4);transition:transform .3s;position:relative;}
.msg-toggle:before,.msg-toggle:after{content:"";display:block;position:absolute;border:1px solid #667eea;left:-20px;right:-20px;top:-20px;bottom:-20px;border-radius:50%;animation:msg-pulse 1.5s linear infinite;opacity:0;backface-visibility:hidden;}
.msg-toggle:after{animation-delay:.5s;}
@keyframes msg-pulse{0%{transform:scale(0.5);opacity:0;}50%{opacity:1;}100%{transform:scale(1.2);opacity:0;}}
.msg-toggle:hover{transform:scale(1.05);}
.msg-toggle .msg-close{display:none;}
.msg-widget.active .msg-toggle svg:first-child{display:none;}
.msg-widget.active .msg-toggle .msg-close{display:block;}
.msg-list{position:absolute;bottom:65px;right:0;display:flex;flex-direction:column;gap:10px;opacity:0;visibility:hidden;transform:translateY(10px);transition:all .3s;}
.msg-widget.active .msg-list{opacity:1;visibility:visible;transform:translateY(0);}
.msg-item{display:block;transition:transform .3s;}
.msg-item:hover{transform:scale(1.1);}
.msg-item img{display:block;border-radius:50%;}
.msg-phone{width:55px;height:55px;border-radius:50%;background:#ff6b6b;display:flex;align-items:center;justify-content:center;}
.msg-email{width:55px;height:55px;border-radius:50%;background:#2196F3;display:flex;align-items:center;justify-content:center;}
@media(max-width:768px){.msg-widget{right:15px;bottom:90px;}.msg-toggle{width:50px;height:50px;}.msg-item img,.msg-phone,.msg-email{width:48px;height:48px;}.msg-list{bottom:58px;}}
