/*Theme Name: Podolog
Theme URI:
Author: Mikhail Epikhin
Author URI:
Description: Original theme
Version: 1.0*/

@font-face {
	font-family: 'Onest';
	src: url('fonts/Onest-Regular.eot');
	src: local('☺'), url('fonts/Onest-Regular.woff') format('woff'), url('fonts/Onest-Regular.ttf') format('truetype'), url('fonts/Onest-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Onest';
	src: url('fonts/Onest-Medium.eot');
	src: local('☺'), url('fonts/Onest-Medium.woff') format('woff'), url('fonts/Onest-Medium.ttf') format('truetype'), url('fonts/Onest-Medium.svg') format('svg');
	font-weight: bold;
	font-style: normal;
}

html{height: 100%;}
body{margin: 0 auto; padding-top: 147px !important; height: 100%; white-space: normal; font-family: 'Onest', sans-serif; color: #0A0A0A; background: #FFFFFF; line-height: 1.1; font-size: 16px; font-weight: normal;}
body.no-scroll{overflow: hidden;}

a,input{color: #0A0A0A; text-decoration: none;}
a, input, label, label::before, select, textarea, a *, button, .button, .header-scroll, .popup-container, .popup, .slick-prev::before, .slick-next::before, .wpcf7-list-item-label, .wpcf7-list-item-label::before, .f-group-item-label::before, .wpcf7-list-item-label::after, .f-group-item-label::after, .faq-list-item .question::after, .faq-list-item .answer{
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

*{position: relative; margin: 0px; padding: 0px; list-style: none; vertical-align: top; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; appearance: none !important; background: none; -moz-border-radius: 0px; -webkit-border-radius: 0px; -khtml-border-radius: 0px; border-radius: 0px; border: 0; font-family: inherit; font-weight: inherit; line-height: inherit;}

b, strong, b *, strong *{font-weight: bold;}
p, p *{line-height: 1.4;}
p a{color: #1C9760;}
p a:hover{color: #1E9C5D;}

.wrapper{margin: 0 auto; max-width: 1410px; padding: 0px 45px;}
.phone{white-space: nowrap;}

.photo picture{position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; overflow: hidden;}
.photo picture img{display: block; width: 100%; height: 100%; object-fit: cover;}

@media only screen and (max-width: 1080px) {
body{padding-top: 78px !important;}
::-webkit-scrollbar{width: 0px; height: 0px; background: transparent;}
.wrapper{padding-left: 30px; padding-right: 30px;}
}

@media only screen and (max-width: 767px) {
.wrapper{padding-left: 15px; padding-right: 15px;}
.hide-mob{display: none !important;}
}

@media only screen and (min-width: 768px) {
.show-mob{display: none !important;}
}

/* Кнопки */

.button{display: inline-flex; justify-content: center; align-items: center; gap: 10px; padding: 0px 30px; height: 52px; font-family: 'Onest', sans-serif; font-size: 16px; font-weight: bold; border-radius: 12px; white-space: nowrap; cursor: pointer;}

.btn-primary{color: #FFFFFF; background: #1C9760;}
.btn-primary:hover{background: #1E9C5D;}

.btn-secondary{color: #0A0A0A; border: 1px solid rgba(0, 0, 0, 0.1);}
.btn-secondary:hover{border-color: rgba(0, 0, 0, 0.2);}

.btn-sm{padding: 0px 20px; height: 40px;}

.buttons{display: flex; gap: 10px;}

/* Сетка формы */

.form-layout{display: flex; flex-wrap: wrap; gap: 15px 15px;}
.f-100{width: 100%;}
.f-50{width: calc(50% - 7.5px);}
.f-label{display: block; margin-bottom: 10px; color: #1C9760; font-size: 14px;}
.f-submit{margin-top: 5px; width: 100%;}
.f-submit .button{width: 100%;}
.f-agree{width: 100%;}
.f-submit + .f-agree{margin-top: 5px;}
.f-agree + .f-agree{margin-top: -10px;}
.form-agree{color: rgba(10, 10, 10, 0.5); font-size: 12px;}

@media only screen and (max-width: 767px) {
.f-50{width: 100%;}
}

/* Поля форм */

.form-field{display: block; width: 100%; padding: 15px; color: #0A0A0A; font-size: 16px; background: transparent; border: 1px solid rgba(10, 10, 10, 0.1); border-radius: 6px; overflow-x: hidden;}
.form-field:hover{border-color: #1C9760;}
.form-field:focus{border-color: #1C9760;}

input::-webkit-input-placeholder{color: rgba(10, 10, 10, 0.5);}
input:-moz-placeholder{color: rgba(10, 10, 10, 0.5);}
textarea::-webkit-input-placeholder{color: rgba(10, 10, 10, 0.5);}
textarea:-moz-placeholder{color: rgba(10, 10, 10, 0.5);}
button{background: none; color: inherit; border: none; padding: 0; font: inherit; cursor: pointer; outline: inherit;}

:active, :hover, :focus{outline: 0; outline-offset: 0;}
textarea{resize: none; overflow: auto; min-height: 120px}

.f-radio, .f-checkbox{display: flex; flex-direction: column; gap: 10px;}
.f-label + .f-radio, .f-label + .f-checkbox{margin-top: 15px;}
.wpcf7-list-item, .f-group-item{margin: 0px !important;}
.wpcf7-list-item input, .f-group-item input{display: none;}
.wpcf7-list-item-label, .f-group-item-label{display: flex; align-items: flex-start; gap: 10px; cursor: pointer;}
.wpcf7-list-item-label::before, .f-group-item-label::before{content: ""; flex-shrink: 0; display: block; width: 20px; height: 20px; border: 1px solid rgba(10, 10, 10, 0.1); box-sizing: border-box;}
.wpcf7-list-item-label:hover::before, .f-group-item-label:hover::before{border-color: rgba(10, 10, 10, 0.2);}
:checked + .wpcf7-list-item-label::before, :checked + .f-group-item-label::before{border-color: #1C9760;}

.wpcf7-radio .wpcf7-list-item-label::before, .f-radio .f-group-item-label::before{border-radius: 50%;}
.wpcf7-radio :checked + .wpcf7-list-item-label::before, .f-radio :checked + .f-group-item-label::before{border-width: 6px;}

.wpcf7-checkbox .wpcf7-list-item-label::before, .wpcf7-acceptance .wpcf7-list-item-label::before, .f-checkbox .f-group-item-label::before{background: url('images/icons/tick-white.svg') center center no-repeat; background-size: 10px 10px; border-radius: 6px;}
.wpcf7-checkbox :checked + .wpcf7-list-item-label::before, .wpcf7-acceptance :checked + .wpcf7-list-item-label::before, .f-checkbox :checked + .f-group-item-label::before{background-color: #1C9760;}

@media only screen and (max-width: 767px) {

}

/* Contact form 7 */

.wpcf7-form-control-wrap{display: block;}
.wpcf7-spinner{position: absolute !important; top: 50%; right: 50%; transform: translate(50%, -50%); margin: 0px !important;}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form .wpcf7-response-output{position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; display: flex; justify-content: center; align-items: center; margin: 0px !important; padding: 45px !important; text-align: center; color: #FFFFFF; line-height: 1.4; background: #1C9760; border: 0 !important; border-radius: 6px; opacity: 0; visibility: hidden; animation: 3s alert-show ease; z-index: 1;}

.wpcf7-not-valid-tip{position: absolute !important; top: 3px; right: 3px; max-width: 100%; padding: 3px 5px; color: #FFFFFF !important; font-size: 12px !important; white-space: nowrap; background: #1C9760; border-radius: 6px; box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.1); z-index: 1; pointer-events: none;}

@keyframes alert-show {
  0% {opacity: 0; visibility: hidden;}
  15% {opacity: 1; visibility: visible;}
  85% {opacity: 1; visibility: visible;}
  100% {opacity: 0; visibility: hidden;}
}

/* Попапы */

.popup-container{position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; display: flex; justify-content: center; align-items: center; opacity: 0; visibility: hidden; z-index: 99;}
.popup-visible{opacity: 1; visibility: visible;}
.popup-container > .popup-overlay{position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; background: rgba(10, 10, 10, 0.7); cursor: pointer;}
.popup{padding: 65px 30px 30px; width: 450px; max-height: 100vh; background: #FFFFFF; border-radius: 24px; box-shadow: 0px 2px 15px 0px rgba(0, 0, 0, 0.5); overflow-y: scroll; scrollbar-width: none;}
.popup-visible .popup{}
.popup::-webkit-scrollbar{width: 0px; height: 0px; background: transparent;}
.popup > .popup-close{position: absolute; top: 15px; right: 15px; display: block; width: 48px; height: 48px; background: url('images/icons/close.svg') center center no-repeat; background-size: 16px 16px; border: 1px solid rgba(10, 10, 10, 0.1); border-radius: 12px; z-index: 1;}
.popup > .popup-close:hover{border-color: rgba(10, 10, 10, 0.2);}

.popup .headline{display: block; text-align: center; font-size: 24px; font-weight: bold;}
.popup .form-layout{margin-top: 20px;}

@media only screen and (max-width: 767px) {
.popup{padding: 65px 15px 30px;}
.popup .headline{font-size: 20px;}
.popup .form-layout{margin-top: 15px;}
}

/* Боковой попап */

.popup-sider-container{justify-content: flex-end; align-items: stretch;}
.popup-sider{display: flex; flex-direction: column; justify-content: space-between; align-items: stretch; gap: 30px; width: 320px; border-radius: 24px 0px 0px 24px;}

.popup-sider .general-info{display: flex; flex-direction: column; align-items: center; padding: 20px; background: rgba(10, 10, 10, 0.05); border-radius: 12px;}
.popup-sider .general-info .phone{font-size: 20px; font-weight: bold;}
.popup-sider .general-info .address{display: block; margin-top: 10px; text-align: center;}
.popup-sider .general-info .button{margin-top: 15px; width: 100%;}
.popup-sider .general-info .social{margin-top: 20px;}

/* Попап. Мобильное меню */

#popup-menu.popup-sider-container{justify-content: flex-start;}
.popup-menu{border-radius: 0px 24px 24px 0px;}
.popup-menu > .popup-close{left: 15px; right: unset;}
.header-scroll ~ #popup-menu .popup-menu .popup-close{top: 10px;}

.mobile-menu li:not(:last-child){border-bottom: 1px solid rgba(10, 10, 10, 0.1);}
.mobile-menu a{display: block; padding: 15px 0px; font-size: 20px;}

/* Попапы. Виджет контактов */

.popup-contact .buttons{flex-direction: column; align-items: stretch; margin-top: 20px;}
.popup-contact .buttons .btn-social{gap: 5px; text-align: left;}
.popup-contact .buttons .btn-social .title{width: 100px;}
.popup-contact .buttons .btn-social::before{content: ""; display: block; width: 30px; height: 30px; background: center center no-repeat; background-size: contain;}
.popup-contact .buttons .vk::before{background-image: url('images/social/vk.svg');}
.popup-contact .buttons .telegram::before{background-image: url('images/social/telegram.svg');}
.popup-contact .buttons .whatsapp::before{background-image: url('images/social/whatsapp.svg');}
.popup-contact .buttons .max::before{background-image: url('images/social/max.svg');}

@media only screen and (max-width: 767px) {
.popup-contact{padding-top: 75px;}
.popup-contact .general-info{order: 1;}
.popup-contact .above{order: 2;}
.popup-contact .buttons{margin-top: 15px;}
}

/* Попапы. Cookies */

#popup-cookies{align-items: flex-end; padding: 30px; pointer-events: none;}
.popup-cookies{padding: 15px; width: 600px; border-radius: 12px; box-shadow: 0px 2px 15px 0px rgba(0, 0, 0, 0.1);}
.cookies-block{display: flex; align-items: center; gap: 30px; pointer-events: auto;}
.cookies-block .agreement{font-size: 14px;}

@media only screen and (max-width: 767px) {
#popup-cookies{padding: 15px;}
}

@media only screen and (max-width: 480px) {
#popup-cookies{padding: 15px;}
.popup-cookies{padding: 10px;}
.cookies-block{gap: 20px;}
.cookies-block .agreement{font-size: 12px;}
}

/* Форматирование текста */

.story{}
.story > :first-child{margin-top: 0px;}
.story > :last-child{margin-bottom: 0px;}
.story *{font-size: 16px;}
.story p{margin: 15px 0px;}
.story h1{font-size: 48px; font-weight: bold;}
.story h2{margin-top: 30px; margin-bottom: 15px; line-height: 1.1; font-size: 36px; font-weight: bold;}
.story h3{margin-top: 25px; line-height: 1.3; font-size: 24px; font-weight: bold;}
.story h1 *, .story h2 *, .story h3 *{font-weight: bold;}
.story ul, .story ol{margin: 15px 0px 25px; counter-reset: myCounter;}
.story li{margin: 10px 0px; padding-left: 30px; line-height: 1.4;}
.story li *{line-height: 1.4;}
.story li::before{position: absolute; left: 0px; top: 0px; display: block; color: #1C9760; line-height: 1.4;}
.story ul li::before{content: "—";}
.story ol li::before{counter-increment: myCounter; content: counter(myCounter) ".";}
.story img{border-radius: 24px;}
.story .wp-caption{margin: 30px 0px;}
.story .wp-caption img{margin: 0px;}
.story .wp-caption-text{margin: 15px 0px 0px; text-align: center; color: rgba(10, 10, 10, 0.5); font-size: 14px;}
.story blockquote{margin: 25px 30px;}
.story blockquote *{line-height: 1.3; font-size: 24px;}

@media only screen and (max-width: 767px) {
.story *{font-size: 16px;}
.story h1{font-size: 36px;}
.story h2{margin-top: 25px; margin-bottom: 10px; font-size: 24px;}
.story h3{font-size: 20px;}
.story li{padding-left: 25px;}
.story .wp-caption-text{margin: 10px 0px 0px; font-size: 12px;}
.story blockquote{margin: 25px 10px;}
.story blockquote *{font-size: 20px;}
}

/* Слайдер. Slick Slider */

.slick-prev, .slick-next{outline: none; position: absolute; top: 0; bottom: 0; display: block; text-indent: 9999px; white-space: nowrap; border-radius: 0px; overflow: hidden; cursor: pointer; z-index: 1;}
.slick-prev{left: -30px;}
.slick-next{right: -30px;}
.slick-disabled{opacity: 0; visibility: hidden;}

/* Слайдер. Карусель */

.carousel-slider .slick-prev, .carousel-slider .slick-next{width: 90px; overflow: visible;}
.carousel-slider .slick-prev::before, .carousel-slider .slick-next::before{content: ""; position: absolute; top: 50%; right: 50%; display: block; width: 48px; height: 48px; background: center center no-repeat #1C9760; background-size: 16px 16px; border-radius: 12px; box-shadow: 0px 2px 15px 0px rgba(10, 10, 10, 0.2); -webkit-transform: translate(50%, -50%); -ms-transform: translate(50%, -50%); transform: translate(50%, -50%);}
.carousel-slider .slick-prev::before{background-image: url('images/icons/arrow-left-white.svg');}
.carousel-slider .slick-next::before{background-image: url('images/icons/arrow-right-white.svg');}
.carousel-slider .slick-prev:hover::before, .carousel-slider .slick-next:hover::before{background-color: #1E9C5D;}

.carousel-slider .slick-dots{position: absolute; bottom: -45px; left: 0px; right: 0px; display: flex; justify-content: center; align-items: center; gap: 10px; margin: 0; padding: 0; list-style: none; z-index: 1;}
.carousel-slider .slick-dots li button{display: block; padding: 0px; width: 12px; height: 12px; background: rgba(10, 10, 10, 0.1); text-indent: 9999px; white-space: nowrap; border-radius: 50%; overflow: hidden; cursor: pointer;}
.carousel-slider .slick-dots li button:hover{background: rgba(10, 10, 10, 0.2);}
.carousel-slider .slick-dots .slick-active button{background: #1C9760 !important;}

.carousel-slider{margin: 0px -15px;}
.carousel-slider .slick-list{overflow: visible;}
.carousel-slider .slide{padding: 0px 15px;}

@media only screen and (max-width: 767px) {
.slick-prev{left: -7.5px;}
.slick-next{right: -7.5px;}
.carousel-slider .slick-prev, .carousel-slider .slick-next{width: 48px;}
.carousel-slider .slick-prev::before, .carousel-slider .slick-next::before{width: 36px; height: 36px; background-size: 12px 12px; border-radius: 6px;}

.carousel-slider .slick-dots{bottom: -30px; gap: 8px;}
.carousel-slider .slick-dots li button{width: 8px; height: 8px;}

.carousel-slider{margin: 0px -7.5px;}
.carousel-slider .slide{padding: 0px 7.5px;}
}

/* Соцсети */

.social{display: flex; gap: 10px;}
.social a{display: block; width: 36px; height: 36px; background: center center no-repeat; background-size: 30px 30px; border: 1px solid rgba(10, 10, 10, 0.1); border-radius: 50%;}
.social a:hover{border-color: rgba(10, 10, 10, 0.2);}

.social.social-alt a{border-color: rgba(255, 255, 255, 0.1);}
.social.social-alt a:hover{border-color: rgba(255, 255, 255, 0.2);}

.social .vk{background-image: url('images/social/vk.svg');}
.social .telegram{background-image: url('images/social/telegram.svg');}
.social .whatsapp{background-image: url('images/social/whatsapp.svg');}
.social .max{background-image: url('images/social/max.svg');}

/* Шапка */

.header{position: absolute; top: -147px; left: 0px; right: 0px; z-index: 90;}
.header .wrapper{margin-top: 147px; padding-top: 15px; padding-bottom: 20px;}
.header-loft, .header-main{display: flex; justify-content: space-between; align-items: center; gap: 45px;}
.header .left, .header .right{display: flex; align-items: center; gap: 45px;}

.header-loft{margin-bottom: 20px; padding-bottom: 15px; border-bottom: 1px solid rgba(10, 10, 10, 0.1);}

.header .address{display: flex; align-items: center; gap: 7px;}
.header .address::before{content: ""; flex-shrink: 0; display: block; width: 20px; height: 20px; background: url('images/icons/address.svg') center center no-repeat; background-size: contain;}

.header .phone-block{display: flex; align-items: center; gap: 30px;}
.header .phone{font-weight: bold;}
.header .callback{color: rgba(10, 10, 10, 0.5);}
.header .callback:hover{color: #1C9760;}

.header-main .left{gap: 35px;}
.podolog-logo{flex-shrink: 0; display: inline-block; width: 205px; height: 32px; background: url('images/prostopi-logo.svg') center center no-repeat; background-size: contain;}

.btn-menu{display: none; width: 48px; height: 48px; background: url('images/icons/menu.svg') center center no-repeat; background-size: 16px 16px; border: 1px solid rgba(10, 10, 10, 0.1); border-radius: 12px;}
.btn-menu:hover{border-color: rgba(10, 10, 10, 0.2);}

.main-menu{display: flex; align-items: center; gap: 10px;}
.main-menu a{display: block; padding: 10px; font-weight: bold;}
.main-menu a:hover{color: #1C9760;}

.header-main .social{display: none;}

.header-scroll{position: fixed; top: 0px !important; background: #FFFFFF; box-shadow: 0px 2px 15px 0px rgba(10, 10, 10, 0.1);}
.header-scroll .wrapper{margin-top: 0px !important; padding-top: 10px; padding-bottom: 15px;}
.header-scroll .header-loft{margin-bottom: 15px; padding-bottom: 10px;}

@media only screen and (max-width: 1200px) {
.header-main{min-height: 40px;}
.header-main .btn-schedule{display: none;}
}

@media only screen and (max-width: 1080px) {
.header{top: -78px;}
.header .wrapper{margin-top: 78px; padding-top: 15px; padding-bottom: 15px;}
.header-loft{display: none;}
.header-main{min-height: auto;}
.header-main .left{gap: 20px;}
.btn-menu{display: block;}
.main-menu{display: none;}
.header-main .social{display: flex;}

.header-scroll .wrapper{padding-top: 10px; padding-bottom: 10px;}
}

@media only screen and (max-width: 767px) {
.header-main{gap: 15px;}
.header-main .left{gap: 15px;}
.podolog-logo{width: 156px; height: 24px;}

.header-main .social{gap: 3px;}
.header-main .social a{width: 24px; height: 24px; background-size: 20px 20px;}
}

/* Хлебные крошки */

.breadcrumbs-block .wrapper{padding-top: 15px; padding-bottom: 45px;}
.breadcrumbs{display: flex; flex-wrap: wrap; align-items: center; gap: 10px; color: rgba(10, 10, 10, 0.5); font-size: 14px;}
.breadcrumbs .separator{display: block; width: 10px; height: 10px; background: url('images/icons/arrow-right-black.svg') center center no-repeat; background-size: contain; opacity: 0.5;}
.breadcrumbs a{color: rgba(10, 10, 10, 0.5);}
.breadcrumbs a:hover{color: #1C9760;}

@media only screen and (max-width: 767px) {
.breadcrumbs-block .wrapper{padding-bottom: 30px;}
.breadcrumbs{gap: 8px; font-size: 12px;}
.breadcrumbs .separator{width: 8px; height: 8px;}
}

/* Надзаголовки */

.eyebrow{display: block; margin-bottom: 15px; color: #1C9760; font-size: 14px; font-weight: bold; text-transform: uppercase; letter-spacing: 1px;}

/* Заголовок страницы */

.page-header{margin-bottom: 30px;}
.page-header .headline{display: block; line-height: 1; font-size: 48px; font-weight: bold;}

.page-header + .story{margin-top: -10px;}

@media only screen and (max-width: 767px) {
.page-header .headline{font-size: 36px;}
}

/* Заголовок блока */

.block-header{margin-bottom: 30px;}
.block-header .headline{display: block; line-height: 1; font-size: 36px; font-weight: bold;}

.block-header + .story{margin-top: -10px;}

@media only screen and (max-width: 767px) {
.block-header{margin-bottom: 25px;}
.block-header .headline{font-size: 24px;}
}

/* Раздел с серым фоном */

.gray-main{padding-bottom: 75px; background: rgba(10, 10, 10, 0.05);}
.gray-main::before{content: ""; position: absolute; top: -1px; left: 0px; right: 0px; display: block; height: 1px; background: rgba(10, 10, 10, 0.1);}
.gray-main + .footer{margin-top: 0px;}

/* Главная. Первый экран */

.hero .wrapper{}
.hero-block{display: flex; justify-content: flex-start; align-items: center; padding: 45px; min-height: 450px; background: rgba(10, 10, 10, 0.05); border-radius: 24px; overflow: hidden;}
.hero-block .bg{position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px;}
.hero-block .content{display: flex; flex-direction: column; max-width: 600px;}

.hero-block .buttons{margin-top: 30px;}

@media only screen and (max-width: 767px) {
.hero-block{flex-direction: column; align-items: stretch; margin: 0px -15px; padding: 0px;}
.hero-block .bg{position: relative; top: unset; left: unset; right: unset; bottom: unset; padding-bottom: 70%; border-radius: 0px 0px 24px 24px; overflow: hidden;}
.hero-block .bg picture{left: -150%;}
.hero-block .bg picture img{object-position: right center;}
.hero-block .content{padding: 30px 15px; max-width: unset;}

.hero-block .buttons{flex-direction: column; align-items: stretch;}
}

/* Главная. Проблемы */

.issues .wrapper{padding-top: 60px;}
.issues .block-header{max-width: 720px;}
.issues-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px;}
.issues-grid-item{display: flex; flex-direction: column; align-items: stretch; gap: 15px; padding: 30px; background: rgba(10, 10, 10, 0.05); border-radius: 24px;}
.issues-grid-item .number{display: flex; justify-content: space-between; align-items: center; color: #1C9760; font-size: 14px; font-weight: bold; letter-spacing: 1px;}
.issues-grid-item .number::after{content: ""; display: block; width: calc(100% - 30px); height: 1px; background: rgba(10, 10, 10, 0.1);}
.issues-grid-item .title{display: block; font-size: 20px; font-weight: bold;}
.issues-grid-item .desc{margin-top: 10px;}

@media only screen and (max-width: 1080px) {
.issues-grid{grid-template-columns: repeat(2, 1fr);}
}

@media only screen and (max-width: 767px) {
.issues .wrapper{padding-top: 45px;}

.issues-grid{grid-template-columns: repeat(1, 1fr);}
.issues-grid-item{flex-direction: row; gap: 10px; padding: 0px; background: none; border-radius: 0px;}
.issues-grid-item .number{flex-shrink: 0; flex-direction: column; width: 30px; font-size: 12px;}
.issues-grid-item .number::after{margin-bottom: -7px; height: calc(100% - 13px); width: 1px;}
.issues-grid-item:last-child .number::after{display: none;}
.issues-grid-item .info{flex: 1; padding: 15px; background: rgba(10, 10, 10, 0.05); border-radius: 12px;}
.issues-grid-item .title{font-size: 16px;}
.issues-grid-item .desc{margin-top: 10px; color: rgba(10, 10, 10, 0.5); font-size: 14px;}
}

/* Главная. Услуги */

.services{margin-top: 60px; background: rgba(10, 10, 10, 0.05); overflow: hidden;}
.services .wrapper{padding-top: 45px; padding-bottom: 90px;}
.services .block-header + .desc{margin-bottom: 30px;}
.services-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px;}
.services-grid-item{display: flex; flex-direction: column; justify-content: space-between; align-items: stretch; gap: 30px; background: #FFFFFF; border-radius: 24px; overflow: hidden;}
.services-grid-item .photo{padding-bottom: 63%; border-radius: 0px 0px 24px 24px; overflow: hidden;}
.services-grid-item .info{padding: 20px 20px 0px;}
.services-grid-item .title{display: block; font-size: 24px; font-weight: bold;}
.services-grid-item .desc{margin-top: 10px;}

.services-grid-item .buttons{padding: 0px 20px 20px;}
.services-grid-item .buttons .button{flex: 1;}

.services-slider .slick-track{display: flex !important;}
.services-slider .slick-track .slide{height: inherit !important;}
.services-slider .services-grid-item{height: 100% !important;}

@media only screen and (max-width: 1080px) {
.services-grid{grid-template-columns: repeat(2, 1fr);}
}

@media only screen and (max-width: 767px) {
.services{margin-top: 45px;}
.services .wrapper{padding-top: 30px; padding-bottom: 60px;}
.services .block-header + .desc{margin-bottom: 25px;}

.services-grid{gap: 15px;}

.services-grid-item{gap: 20px;}
.services-grid-item .info{padding: 20px 15px 0px;}
.services-grid-item .title{font-size: 20px;}
.services-grid-item .desc{font-size: 14px;}

.services-grid-item .buttons{flex-direction: column; align-items: stretch; padding: 0px 15px 20px;}
.services-grid-item .buttons .button{flex: unset;}
}

@media only screen and (max-width: 560px) {
.services-grid{grid-template-columns: repeat(1, 1fr);}
}

/* Главная. Команда */

.team .wrapper{padding-top: 60px;}
.team .block-header + .desc{margin-bottom: 30px;}
.team-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;}
.team-grid-item{display: flex; align-items: stretch; background: rgba(10, 10, 10, 0.05); border-radius: 24px; overflow: hidden;}
.team-grid-item .photo-wrapper{flex-shrink: 0; width: 50%;}
.team-grid-item .photo{height: 100%; padding-bottom: 100%;}
.team-grid-item .info{padding: 0px 30px 30px;}
.team-grid-item .job{display: inline-block; margin-bottom: 25px; margin-left: -30px; padding: 15px 30px; color: #1C9760; font-size: 14px; font-weight: bold; background: #FFFFFF; border: 1px solid #1C9760; border-radius: 0px 0px 500px 0px;}
.team-grid-item .name{display: block; font-size: 24px; font-weight: bold;}
.team-grid-item .desc{display: block; margin-top: 15px;}

.team .buttons{margin-top: 30px;}

@media only screen and (max-width: 1080px) {
.team-grid{display: flex; align-items: stretch; margin: 0px -30px; padding: 0px 30px; overflow-x: scroll}
.team-grid-item{flex-shrink: 0; width: 68vw;}
}

@media only screen and (max-width: 767px) {
.team .wrapper{padding-top: 45px;}

.team .block-header + .desc{margin-bottom: 25px;}
.team-grid{gap: 15px; margin: 0px -15px; padding: 0px 15px;}
.team-grid-item{width: 75vw;}
.team-grid-item .info{padding: 0px 15px 20px;}
.team-grid-item .job{margin-bottom: 15px; margin-left: -15px; padding: 10px 15px;}
.team-grid-item .name{font-size: 20px;}
.team-grid-item .desc{margin-top: 10px; font-size: 14px;}
}

@media only screen and (max-width: 560px) {
.team-grid-item{flex-direction: column; width: 65vw;}
.team-grid-item .photo-wrapper{width: 100%;}

.team .buttons{flex-direction: column; align-items: stretch;}
}

/* Главная. Отзывы */

.reviews{margin-top: 60px; background: rgba(10, 10, 10, 0.05); overflow: hidden;}
.reviews .wrapper{padding-top: 45px; padding-bottom: 90px;}
.reviews .block-header + .desc{margin-bottom: 30px;}

.reviews-slider .slick-track{display: flex !important;}
.reviews-slider .slick-track .slide{height: inherit !important;}
.reviews-slider .review-card{height: 100% !important;}

.review-card{padding: 30px; background: #FFFFFF; border-radius: 24px;}
.review-card .above{display: flex; justify-content: space-between; align-items: flex-start; gap: 15px;}
.review-card .info{display: flex; flex-direction: column; gap: 10px;}
.review-card .name{font-weight: bold;}
.review-card .age{color: rgba(10, 10, 10, 0.5); font-size: 14px;}
.rating{display: block; width: 100px; height: 20px; background: rgba(10, 10, 10, 0.05);}
.rating::before{content: ""; position: absolute; top: 0px; left: 0px; bottom: 0px; display: block; background: #FFC72C;}
.rating::after{content: ""; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; display: block; background: url('images/icons/rating.svg') center center repeat-x; background-size: auto 100%;}

.rating-0::before{width: 0%;}
.rating-1::before{width: 20%;}
.rating-2::before{width: 40%;}
.rating-3::before{width: 60%;}
.rating-4::before{width: 80%;}
.rating-5::before{width: 100%;}

.review-card .text{margin-top: 15px;}

@media only screen and (max-width: 767px) {
.reviews{margin-top: 45px;}
.reviews .wrapper{padding-top: 30px; padding-bottom: 60px;}
.reviews .block-header + .desc{margin-bottom: 25px;}

.review-card{padding: 20px 15px;}
.review-card .info{gap: 5px;}
.review-card .age{font-size: 12px;}
.rating{width: 80px; height: 16px;}
.review-card .text{margin-top: 10px;}
.review-card .text *{font-size: 14px;}
}

/* Контакты */

.contact .wrapper{padding-top: 60px;}
.contact-block{display: flex; align-items: stretch; background: rgba(10, 10, 10, 0.05); border-radius: 24px; overflow: hidden;}
.contact-block .info, .contact-block .form{width: 50%;}

.contact-block .info{padding: 45px;}
.contact-list{display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;}
.contact-list-item .label{display: block; margin-bottom: 10px; color: rgba(10, 10, 10, 0.5); font-size: 14px;}
.contact-list-item .value{font-size: 20px;}
.contact-block .social{margin-top: 30px;}

.contact-block .form{display: flex; justify-content: center; align-items: center; padding: 30px; background: #1C9760; border-radius: 24px; overflow: hidden;}
.contact-block .form .bg{position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px;}
.contact-form{padding: 30px; max-width: 420px; background: #FFFFFF; border-radius: 24px;}

@media only screen and (max-width: 1280px) {
.contact-list{grid-template-columns: repeat(1, 1fr);}
}

@media only screen and (max-width: 1080px) {
.contact-block{flex-direction: column;}
.contact-block .info, .contact-block .form{width: 100%;}
.contact-list{grid-template-columns: repeat(2, 1fr);}
}

@media only screen and (max-width: 767px) {
.contact .wrapper{padding-top: 45px;}
.contact-block{margin: 0px -15px;}
.contact-block .info{padding: 45px 15px;}
.contact-list{grid-template-columns: repeat(1, 1fr); gap: 20px;}
.contact-list-item .label{margin-bottom: 5px;}
.contact-list-item .value{font-size: 16px;}
.contact-block .social{margin-top: 25px;}

.contact-block .form{padding: 30px 15px;}
.contact-form{padding: 30px 15px;}
}

/* Раздел "Отзывы" */

.reviews-page{overflow: hidden;}
.reviews-page .reviews-yandex{padding-top: 90px; width: 100%; max-width: 760px; height: 1400px; overflow: hidden;}
.reviews-yandex iframe{width: 100%; height: 100%; border: 1px solid rgba(10, 10, 10, 0.1); border-radius: 24px;}

@media only screen and (max-width: 767px) {
.reviews-page .reviews-yandex{padding-top: 75px;}
}

/* Раздел "Цены" */

.prices-page .text{max-width: 780px;}
.prices-table-block{display: flex; align-items: stretch; gap: 45px; margin-top: 30px;}
.prices-table-block .prices-table{width: 62%;}
.prices-table-block .sidebar{width: 38%;}

.prices-table-block .disclaimer{display: flex; align-items: flex-start; gap: 10px;}
.prices-table-block .disclaimer::before{content: ""; flex-shrink: 0; display: block; width: 20px; height: 20px; background: url('images/icons/info.svg') center center no-repeat; background-size: contain;}
.prices-table-block .disclaimer *{font-size: 14px;}

.dt-container{margin-bottom: 0px !important;}
.dt-container .dt-layout-cell{padding: 0px !important; border: 1px solid rgba(10, 10, 10, 0.1); border-radius: 24px; overflow: hidden;}
.tablepress caption{display: none;}
.tablepress>:where(thead,tfoot)>tr>*{padding: 10px 15px !important; color: #0A0A0A !important; font-size: 14px; background-color: rgba(10, 10, 10, 0.05) !important;}
.tablepress td{padding: 15px !important; vertical-align: middle !important; border-color: rgba(10, 10, 10, 0.1) !important;}

.prices-table-block .tablepress td:not(:first-child){color: #1C9760 !important; font-weight: bold;}

@media only screen and (max-width: 1080px) {
.prices-table-block{flex-direction: column; gap: 30px;}
.prices-table-block .prices-table{width: 100%;}
.prices-table-block .sidebar{width: 100%;}
}

@media only screen and (max-width: 767px) {
.prices-table-block .prices-table{margin: 0px -15px; width: calc(100% + 30px);}
.tablepress>:where(thead,tfoot)>tr>*{font-size: 12px;}
.tablepress td{font-size: 14px;}

.prices-table-block .disclaimer{gap: 5px;}
.prices-table-block .disclaimer::before{width: 16px; height: 16px;}
.prices-table-block .disclaimer *{font-size: 12px;}
}

/* Простая страница */

.simple-page .content{max-width: 780px;}

/* Раздел "Статьи" */

.info-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px;}
.info-grid-item{display: flex; flex-direction: column; justify-content: space-between; align-items: stretch; gap: 15px;}
.info-grid-item .photo{margin-bottom: 20px; padding-bottom: 65%; border-radius: 24px; overflow: hidden;}
.info-grid-item .title{display: block; font-size: 24px; font-weight: bold;}
.info-grid-item:hover .title{color: #1C9760;}
.info-grid-item .desc{margin-top: 10px; color: rgba(10, 10, 10, 0.5); font-size: 14px;}
.info-grid-item .date{color: rgba(10, 10, 10, 0.5);}

@media only screen and (max-width: 1080px) {
.info-grid{grid-template-columns: repeat(2, 1fr);}
}

@media only screen and (max-width: 767px) {
.info-grid{gap: 35px 15px;}
.info-grid-item{gap: 10px;}
.info-grid-item .title{font-size: 20px;}
.info-grid-item .desc{display: none;}
.info-grid-item .date{font-size: 14px;}
}

@media only screen and (max-width: 560px) {
.info-grid{grid-template-columns: repeat(1, 1fr);}
}

/* Пагинация */

.wp-pagenavi{display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 10px; margin-top: 45px;}
.wp-pagenavi a, .wp-pagenavi span{flex-shrink: 0; display: flex; justify-content: center; align-items: center; width: 48px; height: 48px; color: #0A0A0A; font-weight: bold; text-transform: uppercase; letter-spacing: 1px; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: 12px;}
.wp-pagenavi a:hover{border-color: rgba(0, 0, 0, 0.2);}
.wp-pagenavi .current{color: #FFFFFF; background: #1C9760;}

.previouspostslink, .nextpostslink{text-indent: 9999px; white-space: nowrap; overflow: hidden;}
.previouspostslink::before, .nextpostslink::before{content: ""; position: absolute; top: 50%; right: 50%; width: 16px; height: 16px; background: center center no-repeat; background-size: contain; transform: translate(50%, -50%);}
.previouspostslink::before{background-image: url('images/icons/arrow-left-black.svg');}
.nextpostslink::before{background-image: url('images/icons/arrow-right-black.svg');}

@media only screen and (max-width: 767px) {
.wp-pagenavi{gap: 5px; margin-top: 35px;}
.wp-pagenavi a, .wp-pagenavi span{width: 36px; height: 36px; font-size: 14px;}
.previouspostslink::before, .nextpostslink::before{width: 12px; height: 12px;}
}

/* Отдельная статья */

.info-article .wrapper{display: flex; justify-content: space-between; align-items: stretch; gap: 45px;}
.info-article .content{max-width: 780px;}
.info-article .sidebar{flex-shrink: 0; width: 360px;}
.info-article .page-header + .desc{margin-top: -10px; font-size: 20px;}
.info-article .date{display: block; margin-top: 20px; color: rgba(10, 10, 10, 0.5);}
.article-photo{margin-top: 30px;}
.article-photo img{width: 100%; height: auto; border-radius: 24px;}
.info-article .story{margin-top: 30px;}

.info-article + .read-also{margin-top: 60px; border-top: 1px solid rgba(10, 10, 10, 0.1);}
.info-article + .read-also .wrapper{padding-top: 60px;}

@media only screen and (max-width: 1080px) {
.info-article .wrapper{flex-direction: column;}
.info-article .sidebar{width: 100%;}

.info-article + .read-also .info-grid{display: flex; margin: 0px -30px; padding: 0px 30px; overflow-x: scroll;}
.info-article + .read-also .info-grid-item{flex-shrink: 0; width: 38vw;}
}

@media only screen and (max-width: 767px) {
.info-article .page-header + .desc{margin-top: -15px; font-size: 16px;}
.info-article .date{margin-top: 15px; font-size: 14px;}

.info-article + .read-also{margin-top: 45px;}
.info-article + .read-also .wrapper{padding-top: 45px;}
.info-article + .read-also .info-grid{margin: 0px -15px; padding: 0px 15px;}
.info-article + .read-also .info-grid-item{width: 40vw;}
}

@media only screen and (max-width: 560px) {
.info-article + .read-also .info-grid-item{width: 70vw;}
}

/* Виджет услуг */

.services-widget{padding: 20px; background: rgba(10, 10, 10, 0.05); border-radius: 24px;}

.services-widget .headline{display: block; margin-bottom: 10px; color: #1C9760; font-size: 14px; font-weight: bold; text-transform: uppercase; letter-spacing: 1px;}
.services-widget .phone{display: inline-block; margin-top: 10px; margin-bottom: 5px; font-size: 20px; font-weight: bold;}
.services-widget-list{display: flex; flex-direction: column; align-items: stretch;}
.services-widget-list-item{display: flex; align-items: center; gap: 10px; padding: 10px 0px;}
.services-widget-list-item:not(:last-child){border-bottom: 1px solid rgba(10, 10, 10, 0.1);}
.services-widget-list-item .photo{flex-shrink: 0; width: 60px; height: 60px; border-radius: 12px; overflow: hidden;}
.services-widget-list-item:hover .title{color: #1C9760;}

.services-widget .buttons{flex-direction: column; align-items: stretch; margin-top: 15px;}

@media only screen and (min-width: 561px) and (max-width: 1080px) {
.services-widget-list{display: grid; grid-template-columns: repeat(2, 1fr); gap: 0px 30px;}
.services-widget .buttons{flex-direction: row;}
}

/* Страница услуги. Первый блок */

.service-hero .wrapper{}
.service-hero-block{display: flex; justify-content: flex-start; align-items: stretch; gap: 45px;}
.service-hero-block .content{width: 50%;}
.service-hero-block .price{display: block; margin-top: 20px; color: #1C9760; font-size: 24px; font-weight: bold;}
.service-hero-block .buttons{margin-top: 30px;}

.service-hero-block .photo{width: 50%; min-height: 360px; border-radius: 24px; overflow: hidden;}

@media only screen and (max-width: 1080px) {
.service-hero-block{flex-direction: column;}
.service-hero-block .content{width: 100%;}
.service-hero-block .photo{padding-bottom: 62%; width: 100%; min-height: unset;}
}

@media only screen and (max-width: 767px) {
.service-hero-block .price{margin-top: 15px; font-size: 20px;}
.service-hero-block .buttons{margin-top: 25px;}
}

@media only screen and (max-width: 560px) {
.service-hero-block .buttons{flex-direction: column; align-items: stretch;}
}

/* Страница услуги. Основной текст */

.service-page{margin-top: 60px; border-top: 1px solid rgba(10, 10, 10, 0.1);}
.service-page .wrapper{display: flex; justify-content: space-between; align-items: stretch; gap: 45px; padding-top: 60px;}
.service-page .content{max-width: 780px;}
.service-page .sidebar{flex-shrink: 0; width: 360px;}

.service-page + .faq{margin-top: 60px; border-top: 1px solid rgba(10, 10, 10, 0.1);}

@media only screen and (max-width: 1080px) {
.service-page .wrapper{flex-direction: column;}
.service-page .content{max-width: unset;}
.service-page .sidebar{width: 100%;}
}


@media only screen and (max-width: 767px) {
.service-page{margin-top: 45px;}
.service-page .wrapper{padding-top: 45px;}

.service-page + .faq{margin-top: 45px;}
}

/* Страница услуги. FAQ */

.faq .wrapper{padding-top: 60px;}
.faq .content{max-width: 780px;}
.faq-list{border: 1px solid rgba(10, 10, 10, 0.1); border-radius: 24px; overflow: hidden;}

.faq-input{display: none;}
.faq-list-item:not(:last-child){border-bottom: 1px solid rgba(10, 10, 10, 0.1);}
.faq-list-item .question{display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 20px; font-size: 20px; font-weight: bold; cursor: pointer;}
.faq-list-item .question:hover{color: #1C9760;}
.faq-list-item .question::after{content: ""; flex-shrink: 0; display: block; width: 24px; height: 24px; background: url('images/icons/arrow-right-white.svg') center center no-repeat #1C9760; background-size: 10px 10px; border-radius: 50%;}
.faq-list-item .question:hover::after{background-color: #1E9C5D;}

.faq-list-item .answer{padding: 0px 20px; height: 0px; overflow: hidden;}

.faq-list-item :checked + .question::after{-webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg);}
.faq-list-item :checked ~ .answer{padding-bottom: 30px; height: unset;}

@media only screen and (max-width: 767px) {
.faq .wrapper{padding-top: 45px;}

.faq-list-item .question{gap: 15px; padding: 20px 15px; font-size: 16px}
.faq-list-item .question::after{width: 20px; height: 20px; background-size: 8px 8px;}
.faq-list-item .answer{padding: 0px 15px;}
.faq-list-item .answer *{font-size: 14px;}
}

/* Подвал */

.footer{margin-top: 75px; border-top: 1px solid rgba(10, 10, 10, 0.1);}
.footer .wrapper{padding-top: 45px; padding-bottom: 45px;}

.footer-columns{display: flex; flex-wrap: wrap; align-items: flex-start; gap: 35px 30px;}
.footer-columns .col{flex: 1;}
.footer-columns .headline{display: block; margin-bottom: 15px; color: #1C9760; font-size: 14px; font-weight: bold; text-transform: uppercase; letter-spacing: 1px;}

.footer-menu{display: flex; flex-direction: column; align-items: flex-start; gap: 12px;}
.footer-menu a{}
.footer-menu a:hover{color: #1C9760;}

.footer-contact{display: flex; flex-direction: column; align-items: flex-start; gap: 15px;}

.footer .social{margin-top: 20px;}

.footer-bottom{display: flex; justify-content: space-between; gap: 30px; margin-top: 45px; padding-top: 45px; border-top: 1px solid rgba(10, 10, 10, 0.1);}
.footer-bottom .left{max-width: 900px;}
.footer-bottom .right{min-width: 162px;}
.footer .copyright{display: block; margin-bottom: 20px;}
.footer-links{display: flex; flex-wrap: wrap; gap: 5px 20px;}
.footer-links a{color: rgba(10, 10, 10, 0.5); font-size: 14px;}
.footer-links a:hover{color: #1C9760;}

.made-by-ponto{display: flex; flex-direction: column; align-items: flex-end; gap: 10px; max-width: 162px; text-align: right; line-height: 1.2; font-size: 12px; -webkit-filter: grayscale(100%) opacity(50%); filter: grayscale(100%) opacity(50%);}
.made-by-ponto::before{content: ""; flex-shrink: 0; display: block; width: 66px; height: 18px; background: url('images/ponto-logo.svg') center center no-repeat; background-size: contain;}
.made-by-ponto:hover{-webkit-filter: grayscale(0%) opacity(100%); filter: grayscale(0%) opacity(100%);}

@media only screen and (max-width: 767px) {
.footer{margin-top: 60px;}
.footer-columns{flex-direction: column;}
.footer-bottom{flex-direction: column;}
.made-by-ponto{align-items: flex-start; text-align: left;}
}

/* Плавающие кнопки */

.btn-up{position: fixed; right: 30px; bottom: 105px; display: block; width: 48px; height: 48px; background: url('images/icons/arrow-up-white.svg') center center no-repeat #1C9760; background-size: 16px 16px; border-radius: 50%; visibility: hidden; opacity: 0; z-index: 9;}
.btn-up-visible{visibility: visible; opacity: 1;}
.btn-up:hover{background-color: #1E9C5D;}

.contact-widget{position: fixed; right: 18px; bottom: 18px; display: block; width: 72px; height: 72px; background: url('images/icons/contact-widget-white.svg') center center no-repeat #1C9760; background-size: 24px 24px; border: 5px solid #FFFFFF; border-radius: 50%; box-shadow: 0px 0px 0px 1px rgba(10, 10, 10, 0.1); visibility: hidden; opacity: 0; z-index: 9;}
.contact-widget-visible{visibility: visible; opacity: 1;}
.contact-widget:hover{background-color: #1E9C5D;}

@media only screen and (max-width: 767px) {
.btn-up{right: 24px; bottom: 90px; width: 42px; height: 42px; background-size: 14px 14px;}
.contact-widget{right: 15px; bottom: 15px; width: 60px; height: 60px; background-image: url('images/icons/phone-white.svg'); background-size: 20px 20px; border-width: 4px;}
}