/*
Theme Name: TrueClinic
Theme URI: https://trueclinic.ru
Author: Leo Kolt
Author URI: https://koltan.dev
Description: super duper theme
Tags: accessibility-ready, one-column, two-columns, custom-menu, featured-images, microformats, sticky-post, threaded-comments, translation-ready
Version: 2026
Requires at least: 5.2
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v3 or Later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: trueclinic

BlankSlate WordPress Theme 2011-2026
BlankSlate is distributed under the terms of the GNU GPL
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{appearance:none;border-radius:0}input[type="search"]{appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}

html,body {
    scroll-behavior: smooth;
    /* overflow-x: hidden; */
}

/* основы */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Mont';
    font-style: normal;
    font-weight: 400;
    src: url('assets/fonts/Mont-Regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }


  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Mont';
    font-style: normal;
    font-weight: 500;
    src: url('assets/fonts/Mont-SemiBold.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Mont';
    font-style: normal;
    font-weight: 700;
    src: url('assets/fonts/Mont-SemiBold.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

:root {
	--belyy: #fff;
	--seryy-fon: #f9f9f9;
	--seryy: #aaa;
	--chernyy: #343434;
	--chernyy-400: rgba(52, 52, 52, 0.4);
	--chernyy-200: #d6d6d6;
	--zheltyy: #f9e4af;
	--krasnyy: #ff574d;
	--bolotnyy-zelenyy: #574f36;
	--korichnevyy: #4a3a28;
	 --font-family: "Mont", sans-serif;
	--header-height: 100px;
}

@media(max-width: 992px) {
    :root {
        --header-height: 64px;
    }
}

body {
    font-family: var(--font-family);
	font-weight: 500;
}

.container {
    max-width: calc(1720px + 20px + 20px);
    padding: 0 20px;
    margin: 0 auto;
}

a, button {
    transition: .35s;
    text-decoration: none;
}

#container {
    margin-top: var(--header-height);
}

/*шапка*/
.header {
    padding: 25px 0;
    height: var(--header-height);
    transition: .5s;
    z-index: 3;
	position: fixed;
    width: 100%;
    top: 0;
}

body.admin-bar header {
  top: 32px;
}

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

  body.admin-bar header {

    top: 46px;

  }

}

.header.header-black, .header.fixed {
    background-color: var(--chernyy);
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-left {
    display: flex;
    align-items: center;
    gap: 40px;
}

.header-menu ul {
    display: flex;
    align-items: center;
	gap: 24px;
}

.header-menu ul li a {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    color: var(--belyy);
}

.sub-menu {
    display: block !important;
    position: absolute;
    top: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: .35s;
    transform: translateY(10px);
    padding-top: 40px;
}

.sub-menu:before {
    content: '';
    position: absolute;
    top: 22px;
    left: 0;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-bottom: 10px solid var(--seryy-fon);
    border-left: 10px solid var(--seryy-fon);
}

.sub-menu li {
    background: var(--seryy-fon);
    padding: 10px 30px;
}

ul.sub-menu li a {
	color: var(--chernyy);
}


.menu-item-has-children {
	position: relative;
}

.menu-item-has-children:hover .sub-menu, ul.sub-menu:hover {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: all;
}

.header-addr {
    position: relative;
}

.header-addr:hover .header-addr-content {
	opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: all;
}

.header-addr-content {
    display: block;
    position: absolute;
    top: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: .35s;
    transform: translateY(10px);
    padding-top: 40px;
}

.header-addr-content-inner {
    background: var(--seryy-fon);
    padding: 10px 30px;
	font-weight: 500;
	font-size: 14px;
	line-height: 140%;
}

.header-addr-content:before {
    content: '';
    position: absolute;
    top: 22px;
    left: 0;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-bottom: 10px solid var(--seryy-fon);
    border-left: 10px solid var(--seryy-fon);
}

.header-right {
    display: flex;
    align-items: center;
    gap: 16px;
}

.header-addr > span {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    color: var(--belyy);
    text-underline-offset: 3px;
}

.header-addr > span:before {
    content: '';
    background: var(--zheltyy);
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    margin-right: 8px;
	vertical-align: middle;
}

.header-tel {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    color: var(--belyy);
}

.header-tel a {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    color: var(--belyy);
}

.header-tel a:before {
    content: '';
    background: var(--zheltyy);
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    margin-right: 8px;
	vertical-align: middle;
}

.header a:hover,  .header button:hover {
	opacity: .85;
}

.header-order, .main-btn {
    border: 1px solid var(--belyy);
    border-radius: 100px;
    padding: 16px 24px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 14px;
    color: var(--belyy);
}

.header-order:hover, .main-btn:hover {
	color: var(--chernyy);
	opacity: 1 !important;
	background: var(--zheltyy);
    border-color: var(--zheltyy);
}

.main-btn-full {
	color: var(--chernyy);
	background: var(--zheltyy);
    border: 1px solid var(--zheltyy);
	 border-radius: 100px;
    padding: 16px 24px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 14px;
}

.main-btn-full:hover {
	background: var(--chernyy-200);
	border-color: #d6d6d6;
}

.header-search {
    background: none;
    border-radius: 100px;
    border: 1px solid var(--belyy);
    display: grid;
    place-items: center;
    height: 48px;
    width: 48px;
	cursor: pointer;
}

.header-search svg path {
	transition: .35s;
}

.header-search:hover {
	background: var(--zheltyy);
    border-color: var(--zheltyy);
		opacity: 1 !important;
}

.header-search:hover svg path {
	stroke: var(--chernyy);
}

.branding img {
    width: 219px;
    object-fit: cover;
    height: auto;
}

.header-burger {
    display: none;
}

.header-dropdown {
    display: none;
}

.header-tel-mobile {
    display: none;
}

.header-search-dropdown {
    display: block;
    padding: 20px;
    transition: transform .45s, opacity .45s;
    background: var(--seryy-fon);
    border-bottom: 2px solid var(--zheltyy);
    /* padding-top: calc(var(--header-height) + 30px); */
    transform: translateY(-10%);
    position: relative;
    z-index: 1;
    opacity: 0;
    pointer-events: none;
    margin-top: calc(-1 * var(--header-height));
    padding: calc(var(--header-height) - 20px) 0 50px;
}

.search-open .header-search-dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.header-search-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}

.header-search-dropdown .container {
    max-width: 800px;
}

.searchwp-live-search-results {
    width: 100% !important;
    left: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background-color: var(--seryy-fon) !important;
}

.searchwp-live-search-results-container {
    max-width: 800px !important;
    margin: 30px auto !important;
    padding: 0 15px !important;
}

.searchwp-live-search-result .searchwp-live-search-result--title a {
    font-size: 18px !important;
    color: var(--chernyy);
}

.searchwp-live-search-result--desc {
    color: var(--seryy);
    margin-top: 20px;
}

.searchwp-live-search-result .searchwp-live-search-result--title a:hover {
    opacity: .85;
}

.header-search-close {
    flex: none;
}

.header-search-dropdown .direct-terms-list {
    margin-top: 20px;
    gap: 10px;
}

.header-search-dropdown .direct-term-title {
    font-size: 14px;
}

.header-search-dropdown .direct-term-item {
    border: 1px solid var(--seryy);
    padding: 10px 16px;
    background-color: var(--seryy-fon);
}

.header-search-dropdown .direct-term-item:hover {
    border-color: var(--chernyy);
}

.search-close {
    cursor: pointer;
    transition: .35s;
}

.search-close:hover {
    opacity: .85;
}

form#searchform {
    width: 100%;
}

form#searchform input {
    border-radius: 100px;
    padding: 24px;
    border: 1px solid var(--seryy);
    outline: none;
    background: var(
    --belyy);
    font-family: var(
    --font-family);
    font-weight: 700;
    font-size: 14px;
    line-height: 140%;
    color: var(
    --chernyy);
    width: 100%;
}

@media(max-width: 1720px) {
	.branding img {
		width: 170px;
	}

	.header-menu ul li a {
		font-size: 13px;
	}

	.header-addr-content-inner, .header-addr > span, .header-tel a {
		font-size: 13px;
	}

	.header-order {
		font-size: 13px;
		padding: 15px 20px;
	}

	.header-search {
		height: 45px;
		width: 45px;
	}
}
@media(max-width: 1240px) {
    .branding img {
        width: 120px;
    }

    .header-menu ul {
        gap: 16px;
    }

    .header-menu ul li a {
        font-size: 12px;
    }

    .header-addr-content-inner, .header-addr > span, .header-tel a {
        font-size: 12px;
    }

    .header-order {
        font-size: 12px;
        padding: 15px 15px;
    }
}

@media(max-width: 992px) {

    .header {
        padding: 10px 0;
        height: var(--header-height);
        position: fixed;
        z-index: 3;
    }
	
	.branding img {
		width: 182px;
	}

        .header-tel-mobile {
        display: block;
    }

    .header-tel-mobile a {
        display: grid;
        place-items: center;
        border-radius: 100px;
        border: 1px solid var(--belyy);
        width: 40px;
        height: 40px;
    }

    .header-burger {
        display: block;
    }

    .burger {
        display: grid;
        place-items: center;
        border-radius: 100px;
        border: 1px solid var(--belyy);
        width: 40px;
        height: 40px;
    }

    .burger span {
        display: block;
        width: 13px;
        height: 1px;
        background: transparent;
        position: relative;
        transition: .3s;
    }

    .burger span:before {
        display: block;
        width: 13px;
        height: 1px;
        background:  var(--belyy);
        content: "";
        position: absolute;
        top: -4px;
        left: 0;
        transition: .3s;
        transform: none;
        margin-right: 0;
    }

    .burger span:after {
        display: block;
        width: 13px;
        height: 1px;
        background:  var(--belyy);
        content: "";
        position: absolute;
        top: 4px;
        left: 0;
        transition: .3s;
    }

    .menu-open .burger span:before {
        transform: rotate(45deg);
        top: 0;
        bottom: 0;
    }

    .menu-open .burger span:after {
        transform: rotate(-45deg);
        bottom: 0;
        top: 0;
    }

    .header-dropdown {
        display: block;
        padding: 20px;
        transition: transform .45s, opacity .45s;
        background: var(--chernyy);
        border-bottom: 2px solid var(--zheltyy);
        padding-top: calc(var(--header-height) + 30px);
        transform: translateY(-10%);
        position: relative;
        z-index: 1;
        opacity: 0;
        pointer-events: none;
        margin-top: calc(-1 * var(--header-height));
    }

    .menu-open .header-dropdown {
        transform: translateY(0);
        opacity: 1;
        pointer-events: all;
    }

    .header .container {
        position: relative;
        z-index: 2;
    }

    .header-menu {
        display: none;
    }

    .header-local, .header-local, .header-tel, .header-order, .header-search {
        display: none;
    }

    .header-dropdown-menu  .header-menu {
        display: block;
    }

    .header-dropdown .header-order {
        display: block;
        width: fit-content;
        margin: auto;
        text-align: center;
    }

    .header-dropdown-menu .header-menu ul {
        flex-direction: column;
    }

    .header-dropdown-bottom {
        margin-top: 30px;
    }

}

/*первый блок*/
.hero {
    position: relative;
    margin-top: calc(var(--header-height) * -1);
    overflow: hidden;
}
.hero-video {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.hero-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-video:before {
    background: #343434b3;
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.hero-inner {
    position: relative;
    z-index: 2;
    padding: 393px 0 79px;
}

.hero-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -0.04em;
    color: var(--belyy);
}

.hero-subtitle {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--belyy);
    margin-top: 24px;
}

.hero-actions {
    display: flex;
    gap: 24px;
    margin-top: 40px;
}

.hero:before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='1122' height='803' viewBox='0 0 1122 803' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M810 1619.16V271.457V558.253M398.51 1506.94L810 810L1221.15 1506.94M1434.82 295.384L810 554.209L184.845 295.384M138.674 554.209H1480.31M1619.5 810C1619.5 1257.07 1257.07 1619.5 810 1619.5C362.925 1619.5 0.5 1257.07 0.5 810C0.5 362.925 362.925 0.5 810 0.5C1257.07 0.5 1619.5 362.925 1619.5 810ZM138.674 271.457H1480.31V1619.5H138.674V271.457Z' stroke='%23AAAAAA' stroke-opacity='0.5' stroke-miterlimit='22.926' /%3E%3C/svg%3E");
    position: absolute;
    bottom: 0;
    top: var(--header-height);
    right: 0;
    /* width: 1122px; */
    height: 800px;
    z-index: 1;
    width: 75%;
}

@media(max-width: 992px) {
    .hero-inner {
        padding: 50px 0;
        padding-top: calc(var(--header-height) + 50px);
    }

    .hero-title {
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 36px;
        line-height: 100%;
        letter-spacing: -0.04em;
        color: var(--belyy);
    }

    .hero-subtitle {
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 19px;
        line-height: 140%;
        letter-spacing: -0.02em;
        color: var(--belyy);
    }

    .hero-subtitle br {
        display: none;
    }

    .hero-actions {
        flex-direction: column;
        margin-top: 107px;
        gap: 12px;
    }

    .hero-actions a {
        text-align: center;
        padding: 16px;
    }
}

/*направления*/
.serv {
    background: var(--chernyy);
    padding-top: 100px;
    position: relative;
	  overflow: hidden;
}

.serv-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.serv-inner-tabs {
    display: grid;
    grid-template-columns: 1fr 4fr;
    grid-row: 1 / -1;
    grid-column: 1/-1;
}

.section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 40px;
}

.section-header .section-title {
    margin-bottom: 0;
}

.section-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 52px;
    line-height: 100%;
    letter-spacing: -0.04em;
    color: var(--belyy);
    margin-bottom: 24px;
}

.serv-text {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    text-align: left;
    color: var(--belyy);
    width: 130%;
}

.serv-items {
    position: relative;
    margin-top: -50px;
    min-width: 100%;
    transition: .44s;
    opacity: 1;
    pointer-events: auto;
}

.serv-items.hide {
    opacity: 0;
    pointer-events: none;
}

.serv-items svg {
    display: block;
}

.serv-content {
    padding-bottom: 0;
    transition: .35s;
     opacity: 1;
    pointer-events: auto;
}

.serv-content.hide {
    opacity: 0;
    pointer-events: none;
}

.serv-items-btns.hide {
    display: none;
}

.serv-tabs-btn.serv-tabs-btn-1 {
    position: absolute;
    top: 220px;
    left: 160px;
}

.serv-items svg text {
	font-family: var(--font-family);
	font-weight: 700;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 140%;
	letter-spacing: 0.39em;
	fill: rgba(255, 255, 255, 0.5);
}

.serv-items svg g {
	cursor: pointer;
}

.serv-items g {
    pointer-events: none; /* Отключаем клик на группе */
}

.serv-items g .click-target {
    pointer-events: all; /* Включаем клик только на специальном path */
    cursor: pointer;
    transition: all 0.3s ease;
}

.serv-items g .click-target:hover {
    fill: rgba(255, 255, 255, 0.1); /* Легкое свечение при наведении */
}

.serv-items svg g image  {
	transition: .35s;
	opacity: 0;
	visibility: hidden;
}

.serv-items svg g text {
	transition: .35s;
}

.serv-items svg g:hover image {
	opacity: 1;
	visibility: visible;
}

.serv-items svg g:hover text {
    fill-opacity: 1;
    fill: var(--belyy);
}

.serv-3 path {
    transform: translate(12.5%, 38.5%);
}

.serv-tab-inner {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
}

.serv-tab {
    transition: .5s;
    opacity: 0;
    position: relative;
    background: var(--chernyy);
    pointer-events: none;
    grid-column: 1/-1;
    grid-row: 1/-1;
    padding-bottom: 100px;
    height: 0;
}

.serv-tab-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
	margin-bottom: 24px;
}

.serv-tab-header-actions {
    display: flex;
    gap: 8px;
    align-items: center;
}
.tab-panel-close {
    background: unset;
    outline: none;
    width: 48px;
    height: 48px;
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
    cursor: pointer;
    flex: none;
}

.tab-panel-close svg {
    width: 12px;
    height: 12px;
    margin-left: -5px;
}

.tab-panel-close svg path {
	transition: .35s;
}

.tab-panel-close:hover svg path {
	stroke: var(--chernyy);
}

.serv-tab-name {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 52px;
    line-height: 100%;
    letter-spacing: -0.04em;
    color: var(--belyy);
}

.serv-tab-desc {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    text-align: justify;
    color: var(--belyy);
    max-width: 49%;
}

.serv-tab-items {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(4, 1fr);
	margin-top: 30px;
}

.serv-tab-item {
    border: 1px solid rgba(170, 170, 170, 0.5);
    padding: 20px;
    min-height: 300px;
	display: flex;
	flex-direction: column;
	transition: .35s;
}

.serv-tab-item-title a, .serv-tab-item-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 20px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--belyy);
    margin-bottom: 16px;
    display: block;
}

.serv-tab-item-desc a, .serv-tab-item-desc  {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 14px;
    line-height: 140%;
    letter-spacing: 0.01em;
    color: var(--seryy);
	 margin-bottom: 16px;
     display: block;
}

.serv-tab-item-order {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 14px;
    line-height: 140%;
    color: var(--belyy);
    border-bottom: 1px solid;
    display: block;
    margin-top: auto;
    width: fit-content;
}

.serv-tab-item-order {
    cursor: pointer;
    background: none;
    outline: none;
    border-top: none;
    border-left: none;
    border-right: none;
    padding: 0;
}

.serv-tab-item-order:hover {
	opacity: .85;
}

.serv-tab.active {
    transition: .35s;
    opacity: 1;
    transform: translateX(0);
    pointer-events: all;
    height: 100%;
    padding-bottom: 100px;
}

.serv-tab-item:hover {
    background: rgba(0, 0, 0, 0.2);
    border: 1px solid rgb(42 42 42);
}

.serv-inner > .serv-content, .serv-inner > .serv-items{
	transition-delay: 0.45s;
	transition: .5s;
    transform: translateX(0);
    opacity: 1;
}
.serv-inner > .hide {
    transition: .5s;
    transform: translateX(40px);
    opacity: 0;
}

.serv-items-btns {
    display: none;
}

.tab-order {
    display: none;
}

.serv-tab-header-actions .tab-order {
    display: block;
}

@media(max-width: 1300px) {
    .serv-inner-tabs {
        grid-template-columns: 1fr;
    }

    .serv-items {
        margin-top: 20px;
        margin-left: auto;
        margin-right: -20px;
    }

    .serv-items svg {
        display: block;
        margin-left: auto;
    }

    .serv-text {
        width: 100%;
    }
}

@media(max-width: 992px) {
    .serv {
        padding: 52px 0;
    }

    .section-title {
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 28px;
        line-height: 100%;
        letter-spacing: -0.04em;
        color: var(--belyy);
    }

    .serv-items {
        display: none;
    }

    .serv-inner {
        grid-template-columns: 1fr;
        margin-bottom: 0;
    }

    .serv-items-btns {
        display: block;
    }

    .serv-text {
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 15px;
        line-height: 150%;
        color: var(--belyy);
        width: 100%;
    }

    .serv-content {
        padding-bottom: 0;
    }

    .serv-items-btns {
        margin-top: 24px;
    }

    .serv-items-btn {
        border: 1px solid var(--belyy);
        border-radius: 100px;
        padding: 16px 24px;
        width: 100%;
        text-align: center;
        color: #fff;
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 14px;
        line-height: 140%;
        color: var(--belyy);
        transition: .35s;
        cursor: pointer;
    }

    .serv-items-btn + .serv-items-btn {
        margin-top: 12px;
    }

    .serv-items-btn.active {
        color: var(--chernyy);
        background-color: var(--zheltyy);
        border-color: var(--zheltyy);
    }

    .serv-tab {
        width: 100%;
        transform: unset;
        padding-bottom: 0;
    }

    .serv-tab.active {
    padding-bottom: 0;
    }


    .serv-inner-tabs {
        grid-template-columns: 1fr;
    }

    .serv-tab-name {
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 28px;
        line-height: 100%;
        letter-spacing: -0.04em;
        color: var(--belyy);
    }

    .serv-tab-desc {
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 15px;
        line-height: 150%;
        color: var(--belyy);
        max-width: 100%;
    }

    .tab-order {
        display: block;
        text-align: center;
        width: fit-content;
        margin: 24px auto;
    }

    .serv-tab-header-actions .tab-order {
        display: none;
    }

    .serv-tab-items, .has-scroll {
        display: flex !important;
        overflow-x: auto;
        scroll-behavior: smooth;
        scroll-snap-type: x proximity;
        margin-left: -20px;
        margin-right: -20px;
        padding-bottom: 12px;
        scroll-padding: 20px;
        padding-right: 20px;
        scrollbar-width: thin;
        scrollbar-color: var(--zheltyy) rgba(217, 217, 217, 0.1);
    }

    .serv-tab-item, .scroll-item {
        scroll-snap-align: start;
    }

    .serv-tab-items::-webkit-scrollbar, .has-scroll::-webkit-scrollbar {
        width: 2px;               /* ширина scrollbar */
         height: 2px;
    }
    .serv-tab-items::-webkit-scrollbar-track, .has-scroll::-webkit-scrollbar-track {
        background: rgba(217, 217, 217, 0.1);        /* цвет дорожки */
    }
    .serv-tab-items::-webkit-scrollbar-thumb,.has-scroll::-webkit-scrollbar-thumb {
        background-color: var(--zheltyy);    /* цвет плашки */
        border-radius: 0;       /* закругления плашки */
    }

    .serv-tab-item:first-child, .scroll-item:first-child {
        margin-left: 20px;
    }

    .serv-tab-item:last-child, .scroll-item:last-child {
        margin-right: 20px;
    }

    .serv-tab-item, .scroll-item {
        min-width: 80%;
    }

    .tab-panel-close {
        width: 36px;
        height: 36px;
        flex: none;
        padding: 0;
        margin-top: -5px;
        padding-left: 5px;
    }

    .serv-tab-inner {
        grid-template-columns: 1fr 1fr;
    }
}

/*причины*/
.reasons {
    background: var(--seryy-fon);
    padding: 100px 0;
}

.reasons .section-title {
    color: var(--chernyy);
}

.reasons-inner {
    margin-top: 30px;
    position: relative;
}

.reasons-item {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 8px;
}

.reasons-title {
    border: 1px solid var(--chernyy-400);
    padding: 50px 24px;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--chernyy);
    display: flex;
    justify-content: space-between;
    transition: .35s;
    cursor: pointer;
}

.reasons-title:hover {
    opacity: 1;
}

.reasons-desc {
    display: flex;
    border: 1px solid var(--chernyy-400);
}

.reasons-desc-text {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    text-align: justify;
    color: var(--chernyy);
    padding: 30px;
    padding-right: 50px;
}

.reasons-desc img {
    object-fit: cover;
    width: 45%;
    flex: 0 0 45%;
}

.reasons-desc {
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    transition: .5s;
    transform: translateY(5px);
    pointer-events: none;
    width: 66.66%;
    height: 439px;
}

.reasons-item.show .reasons-desc {
    opacity: 1;
    transform: translateY(0);
    pointer-events: all;
}

.reasons-item:not(:first-child) .reasons-title  {
    margin-top: 16px;
}

.reasons-item.show .reasons-title {
    pointer-events: none;
}

.reasons-item.show .reasons-title {
    border: 1px solid var(--zheltyy);
    background: var(--zheltyy);
}


.reasons-title svg {
    flex: none;
    transition: .35s;
}

.reasons-item.show .reasons-title svg{
    transform: rotate(45deg);
}

.reasons-desc-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.reasons-desc-text div {
    margin-bottom: 20px;
}

.reasons-actions {
    margin-top: auto;
    border-color: var(--chernyy);
    color: var(--chernyy);
}

@media(max-width: 1240px) {
    .reasons-item {
        grid-template-columns: 1fr;
    }

    .reasons-desc {
        position: relative;
        max-height: 0;
    }

    .reasons-item.show .reasons-desc {
        opacity: 1;
        transform: translateY(0);
        pointer-events: all;
        max-height: 1500px;
    }

    .reasons-desc {
        width: 100%;
    }

}

@media(max-width: 992px) {
    .reasons {
        padding: 52px 0;
    }

    .reasons-desc {
        position: relative;
        flex-direction: column;
        width: 100%;
        height: unset;
    }

    .reasons-desc img {
        width: 100%;
        flex: 100%;
    }

    .reasons-title {
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 20px;
        line-height: 100%;
        letter-spacing: -0.04em;
        color: var(--chernyy);
        padding: 30px 20px;
            align-items: center;
    }

    .reasons-desc-text {
        font-size: 15px;
        padding: 20px;
    }

    .reasons-actions {
        width: 100%;
        text-align: center;
    }
}

/*преимущества*/
.advantage {
    background: var(--chernyy);
    padding: 100px 0;
}

.advantage-inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.advantage-item {
    border: 1px solid rgba(170, 170, 170, 0.5);
    padding: 30px;
    transition: .45s;
    cursor: pointer;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
}

.advantage-item > * {
    z-index: 2;
    position: relative;
}

.advantage-plus {
    border: 1px solid rgba(170, 170, 170, 0.5);
    border-radius: 100px;
    padding: 16px 24px;
    width: 112px;
    height: 112px;
    display: grid;
    place-items: center;
    margin-left: auto;
    margin-bottom: 18px;
    transition: opacity .35s;
    opacity: 1;
}

.advantage-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
    background: var(--chernyy);
    transition: opacity .45s;
    z-index: 1;
}

.advantage-item:hover {
    border: 1px solid transparent;
}

.advantage-item:hover  .advantage-plus {
    opacity: 0;
}

.advantage-item:hover::before {
    opacity: 0;
}

.advantage-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--belyy);
    margin-bottom: 12px;
}

.advantage-desc {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 14px;
    line-height: 140%;
    letter-spacing: 0.01em;
    color: var(--belyy);
}

@media(max-width: 1240px) {
    .advantage-inner {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width: 992px) {
    .advantage {
        padding: 52px 0;
    }

    .advantage-plus {
        visibility: hidden;
    }

    .advantage-title {
        font-size: 19px;
        line-height: 140%;
    }

    .advantage-item {
        padding: 20px;
        border: 1px solid transparent;
    }

    .advantage-item:before {
        opacity: 0;
    }

    .advantage-desc {
        font-weight: 400;
    }
}

/*доктора*/
.doctors {
    background: var(--seryy-fon);
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.page-template-page-doctors .doctors {
    padding: 0 0 100px 0;
}

.doctors-inner {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 69px;
    position: relative;
    z-index: 1;
}

.doctors .section-title {
    color: var(--chernyy);
}

.doctor-btn {
    border: 1px solid var(--chernyy);
    border-radius: 100px;
    padding: 16px 24px;
    background: var(--seryy-fon);
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 14px;
    line-height: 140%;
    color: var(--chernyy);
    outline: none;
    margin-right: 16px;
    transition: .35s;
    cursor: pointer;
}

.doctor-btn:hover {
    opacity: 0.85;
}

.doctor-btn.active {
    background: var(--zheltyy);
    border-color: var(--zheltyy);
    pointer-events: none;
}

.doctors-right {
    min-width: 100%;
}

.doctor-image img {
    width: 100%;
    max-height: 335px;
    object-fit: cover;
	object-position: top;
}

.doctors-arrows button {
    padding: 0;
    outline: none;
    background: none;
    border: none;
    cursor: pointer;
    transition: .35s;
}

.doctors-arrows button:disabled {
    opacity: 0.4;
    pointer-events: none;
}

.doctors-arrows .swiper-arrow-next {
    margin-left: 16px;
}

.doctors-arrows {
    margin-top: auto;
}

.doctors-left {
    display: flex;
    flex-direction: column;
}

.doctors-box {
    margin-top: 24px;
}

.doctor-info {
    margin-top: 24px;
}

.doctor-name {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 20px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--chernyy);
}

.doctor-prof {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 14px;
    line-height: 140%;
    color: var(--chernyy);
    margin-top: 8px;
}

.doctor-rank {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 12px;
    line-height: 150%;
    color: var(--seryy);
    margin-top: 4px;
}

.doctors:before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='1122' height='785' viewBox='0 0 1122 785' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M311 1690.15V283.339V582.713M-100.744 1573L311 845.5L722.407 1573M936.204 308.316L311 578.491L-314.5 308.5M-360.74 578.491H981.729M1121 845.5C1121 1312.18 758.351 1690.5 311 1690.5C-136.351 1690.5 -499 1312.18 -499 845.5C-499 378.819 -136.351 0.5 311 0.5C758.351 0.5 1121 378.819 1121 845.5ZM-360.74 283.339H981.729V1690.5H-360.74V283.339Z' stroke='%23666666' stroke-opacity='0.2' stroke-miterlimit='22.926' /%3E%3C/svg%3E");
    width: 1122px;
    height: 785px;
    display: block;
    position: absolute;
    top: 50px;
    left: 0;
    z-index: 1;
}

@media(max-width: 992px) {
    .doctors {
        padding: 52px 0;
    }

    .doctors:before {
        display: none;
    }

    .section-subtitle {
        font-weight: 700;
        font-size: 15px;
        line-height: 150%;
    }

    .doctor-btn {
        display: block;
        width: 100%;
        margin-top: 12px;
    }

    .doctors-arrows {
        display: none;
    }

    .doctors-inner {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .doctors-box {
        margin-top: 24px;
        margin-left: -20px;
        margin-right: -20px;

    }

    .doctors-slider {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

/*этапы */
.etaps {
    padding: 100px 0;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
}

.etaps:before {
    content: '';
    background: #ffffff94;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.etaps .section-title {
    color: var(--chernyy);
    position: relative;
    z-index: 2;
}

.etaps-inner {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    row-gap: 16px;
}

.etaps-item {
    background: rgba(255, 255, 255, 0.6);
    padding: 30px 40px;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--chernyy);
    opacity: 0;
    transform: translateY(100px);
    transition: all .5s ease-out;
}

.etaps-item.show {
    opacity: 1;
    transform: translateY(0);
}

.etaps-item:nth-child(odd) {
    grid-column: 1 / 7;
    border-radius: 0 100px 0 0;
     padding: 30px 40px;
}

.etaps-item:nth-child(even) {
    grid-column: 5 / -1;
    border-radius: 0 0 0 100px;
    padding: 30px 60px;
}

@media(max-width: 1240px) {
    .etaps-item:nth-child(odd) {
        grid-column: 1 / 10;
    }

    .etaps-item:nth-child(even) {
        grid-column: 4 / -1;
    }
}

@media(max-width: 992px) {
    .etaps {
        padding: 52px 0;
    }

    .etaps-item {
        font-size: 16px;
        line-height: 140%;
    }

    .etaps-item:nth-child(odd) {
        grid-column: 1 / 11;
        padding: 16px 16px 16px 20px;
    }

    .etaps-item:nth-child(even) {
    grid-column: 2 / -1;
    border-radius: 0 0 0 100px;
    padding: 16px 20px 16px 50px;
}
}

/*бонусная программа*/
.bonus {
    background: var(--chernyy);
    padding: 100px 0;
}

.bonus-inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-top: 30px;
}

.bonus-item {
    border: 1px solid rgba(170, 170, 170, 0.5);
    padding: 30px 20px;
    transition: .45s;
    cursor: pointer;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
}

.bonus-item > * {
    z-index: 2;
    position: relative;
}

.bonus-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
    background: var(--chernyy);
    transition: opacity .45s;
    z-index: 1;
}

.bonus-item:hover {
    border: 1px solid transparent;
}

.bonus-item:hover::before {
    opacity: 0;
}

.bonus-title {
    margin-bottom: 12px;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 20px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--belyy);
}

.bonus-desc {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 14px;
    line-height: 140%;
    letter-spacing: 0.01em;
    color: var(--seryy);
}

.bonus-percent {
    margin-bottom: 250px;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 48px;
    line-height: 100%;
    letter-spacing: -0.04em;
    text-align: justify;
    color: var(--belyy);
}

.bonus .section-subtitle {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    text-align: justify;
    color: var(--belyy);
    max-width: 35%;
}

@media(max-width: 1240px) {
    .bonus-inner {
        grid-template-columns: 1fr 1fr;
    }

    .bonus-percent {
        margin-bottom: 180px;
    }
}

@media(max-width: 992px) {
    .bonus {
        padding: 52px 0;
    }

    .bonus .section-subtitle {
        max-width: 100%;
        font-weight: 400;
        font-size: 15px;
        line-height: 150%;
        text-align: left;
    }

    .bonus-item {
        border: 1px solid transparent;
    }

    .bonus-item:before {
        opacity: 0;
    }
}

/*контакная форма*/
.form {
    background: linear-gradient(129deg, #eaebed 0%, #f0f0f1 41.27%, #e6e6ed 62.12%, #a9b0b1 100%);
    position: relative;
    overflow: hidden;
}

.form:before {
    background-image: url("data:image/svg+xml,%3Csvg width='1120' height='609' viewBox='0 0 1120 609' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M810.5 1690.15V283.339V582.713M398.756 1573L810.5 845.5L1221.91 1573M1435.7 308.316L810.5 578.491L185 308.5M138.76 578.491H1481.23M1620.5 845.5C1620.5 1312.18 1257.85 1690.5 810.5 1690.5C363.149 1690.5 0.5 1312.18 0.5 845.5C0.5 378.819 363.149 0.5 810.5 0.5C1257.85 0.5 1620.5 378.819 1620.5 845.5ZM138.76 283.339H1481.23V1690.5H138.76V283.339Z' stroke='%23666666' stroke-opacity='0.3' stroke-miterlimit='22.926' /%3E%3C/svg%3E");
    content: '';
    width: 1120px;
    height: 609px;
    display: block;
    position: absolute;
    right: 0;
    top: 50px;
}

.form .section-title {
    color: var(--chernyy);
    white-space: nowrap;
}

.form-inner {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    align-items: end;
    position: relative;
    z-index: 1;
}

.form-content {
    padding: 100px 0;
    grid-column: 1 / 7;
    grid-row: 1 / -1;
}

.form-image {
    grid-column: 7 / -1;
    grid-row: 1 / -1;
}

.form-image img {
    width: 100%;
    display: block;
}

.form-box {
    margin-top: 30px;
}

.form-row + .form-row {
    margin-top: 20px;
}

input.main-input {
    border-radius: 100px;
    padding: 24px;
    border: none;
    outline: none;
    background: var(--belyy);
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 14px;
    line-height: 140%;
    color: var(--chernyy);
    width: 100%;
}

input.main-input::placeholder {
    color: var(--chernyy-200);
}

.form-row-bottom p {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

input.main-submit {
    border-radius: 30px;
    cursor: pointer;
    transition: .35s;
}

.wpcf7-spinner {
    position: absolute;
    right: -60px;
    top: 20px;
}

.wpcf7 .wpcf7-submit:disabled {
    cursor: not-allowed;
    opacity: 0.4;
}

.wpcf7 .wpcf7-submit:disabled:hover {
    background: var(--zheltyy);
}

input.main-check {
    appearance: none;
    border-radius: 8px;
    width: 24px;
    height: 24px;
    background-color: #fff;
    flex: none;
}

input.main-check:checked {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' width='100' height='100' viewBox='0 0 26 26'%3E%3Cpath fill='%234a3a28' d='M 22.566406 4.730469 L 20.773438 3.511719 C 20.277344 3.175781 19.597656 3.304688 19.265625 3.796875 L 10.476563 16.757813 L 6.4375 12.71875 C 6.015625 12.296875 5.328125 12.296875 4.90625 12.71875 L 3.371094 14.253906 C 2.949219 14.675781 2.949219 15.363281 3.371094 15.789063 L 9.582031 22 C 9.929688 22.347656 10.476563 22.613281 10.96875 22.613281 C 11.460938 22.613281 11.957031 22.304688 12.277344 21.839844 L 22.855469 6.234375 C 23.191406 5.742188 23.0625 5.066406 22.566406 4.730469 Z'%3E%3C/path%3E%3C/svg%3E");
    background-size: 24px;
    background-repeat: no-repeat;
}

.wpcf7-acceptance label {
    display: flex;
    gap: 8px;
    align-items: center;
    cursor: pointer;
}

.form .form-row {
    max-width: 580px;
}

span.wpcf7-list-item {
    margin: 0;
}

.wpcf7-acceptance {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 12px;
    line-height: 140%;
    color: var(--chernyy);
}

@media(max-width: 1720px) {
    .form-image {
        grid-column: 6 / -1;
        grid-row: 1 / -1;
    }
}

@media(max-width: 1240px)  {
    .form-image {
        display: none;
    }
}

@media(max-width: 992px) {
    .form {
        padding: 52px 0;
    }
    .form-image {
        display: none;
    }
    .form-inner {
        grid-template-columns: 1fr;
    }

    .form .section-title {
        white-space: normal;
    }

    .form-content {
        padding: 0;
    }

    .wpcf7-spinner {
        top: unset;
        bottom: 13px;
        right: 0px;
    }
}

/*квиз*/
.quiz {
    background: var(--chernyy);
    padding: 100px 0;
}

.quiz-wrapper {
    position: relative;
    width: 100%;
    background: rgba(0, 0, 0, 0.2);
    padding-bottom: 50px;
}

.quiz-progress {
    /* margin-bottom: 42px; */
    position: relative;
}

.progress-bar {
    height: 4px;
    background: #6f6f6f;
    border-radius: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
}

.progress-fill {
  height: 100%;
  background: var(--zheltyy);
  border-radius: 0;
  width: 25%;
  transition: width 0.3s ease;
}

.progress-steps {
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 2;
}

/* .progress-step {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #e0e0e0;
  position: relative;
} */

/* .progress-step.active {
  background-color: #4CAF50;
} */

.quiz-step {
    display: none;
    animation: fadeIn 0.3s ease;
    padding: 45px;
}

.quiz-step.active {
  display: block;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.quiz-navigation {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    padding: 0 45px;
}

.step-counter {
    font-family: var(--font-family);
    font-size: 14px;
    line-height: 140%;
    color: var(--belyy);
    font-weight: 500;
}

.nav-buttons p {
  display: flex;
  gap: 15px;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
}

.nav-buttons br {
    display: none;
}

.nav-buttons button {
    border: 1px solid var(--belyy);
    border-radius: 100px;
    padding: 16px 24px;
    background: none;
    cursor: pointer;
    transition: .35s;
}

.nav-buttons button:disabled {
    cursor: not-allowed;
    opacity: .2;
}

.nav-buttons button:disabled:hover {
    background: none;
    opacity: .2  !important;
    border-color: var(--belyy);
}

.nav-buttons button:disabled:hover path {
 stroke: var(--belyy);
}

.prev-btn.main-btn path {
    transition: .35s;
}

.prev-btn.main-btn:hover path {
    stroke: var(--chernyy);
}

button.prev-btn.main-btn {
    aspect-ratio: 1 / 1;
}

.submit-btn {
  display: none;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner.submit-btn.main-btn-full {
    border-radius: 30px;
    transition: .35s;
    cursor: pointer;
}

/* Стили для последнего шага */
.quiz-step[data-step="4"] .submit-btn {
  display: inline-block;
}

.quiz-step[data-step="4"] .next-btn {
  display: none;
}

.quiz-step-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--belyy);
    margin-bottom: 32px;
}

.main-quiz-checks {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 32px;
}

.main-quiz-checks label {
    display: flex;
    flex-direction: row-reverse;
    border: 1px solid var(--belyy);
    border-radius: 100px;
    padding: 24px 16px 24px 24px;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    transition: .35s;
    cursor: pointer;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 14px;
    line-height: 140%;
    letter-spacing: 0.01em;
    color: var(--belyy);

}

.main-quiz-checks label:hover {
    opacity: .85;
}

.main-quiz-checks input {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M20.5 12C20.5 16.6944 16.6944 20.5 12 20.5C7.30558 20.5 3.5 16.6944 3.5 12C3.5 7.30558 7.30558 3.5 12 3.5C16.6944 3.5 20.5 7.30558 20.5 12ZM22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12ZM11.061 15.5704L17.561 9.17681L16.439 8.03613L10.5047 13.8733L8.06571 11.4343L6.93434 12.5657L9.93434 15.5657C10.2449 15.8763 10.7479 15.8784 11.061 15.5704Z' fill='white' /%3E%3C/svg%3E");
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    flex: none;
}

.main-quiz-checks label:has(input:checked) {
    background-color: var(--zheltyy);
    color: var(--chernyy);
    border-color:  var(--zheltyy);
}

.main-quiz-checks label input:checked {
background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M20.5 12C20.5 16.6944 16.6944 20.5 12 20.5C7.30558 20.5 3.5 16.6944 3.5 12C3.5 7.30558 7.30558 3.5 12 3.5C16.6944 3.5 20.5 7.30558 20.5 12ZM22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12ZM11.061 15.5704L17.561 9.17681L16.439 8.03613L10.5047 13.8733L8.06571 11.4343L6.93434 12.5657L9.93434 15.5657C10.2449 15.8763 10.7479 15.8784 11.061 15.5704Z' fill='%23343434' /%3E%3C/svg%3E");
}

.quiz-step-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
}

.quiz-step-text {
    color: var(--belyy);
    font-size: 16px;
    line-height: 1.3;
}

.quiz-step-text br {
    margin-top: 50px;
    content: '';
    display: block;
    height: 20px;
    padding: 20px;
}

.quiz .wpcf7-acceptance label {
    color: #fff;
}

/* Адаптивность */
@media (max-width: 992px) {
    .quiz {
        padding: 52px 0;
    }

    .quiz-navigation {
        flex-direction: column;
        align-items: stretch;
    }

    .nav-buttons {
        flex-direction: column;
        width: 100%;
    }

    .prev-btn,
    .next-btn,
    .submit-btn {
        width: 100%;
        text-align: center;
    }

    .quiz-step {
        padding: 20px 16px;
    }

    .quiz-step-title {
        font-size: 20px;
        margin-bottom: 16px;
    }

    .main-quiz-checks {
        grid-template-columns: 1fr;
    }

    .main-quiz-checks label {
        font-size: 14px;
        line-height: 140%;
        padding: 12px 20px;
    }

    .quiz-navigation {
    padding: 0 20px;
}

.nav-buttons p {
    display: flex;
    width: 100%;
    justify-content: space-between;
}

button.prev-btn.main-btn, button.next-btn.main-btn {
    width: auto;
}

button.next-btn.main-btn {
    min-width: 75%;
}

.quiz-step-grid {
    grid-template-columns: 1fr;
}

.quiz-step-text {
    font-size: 14px;
    font-weight: 400;
}

.quiz-step-grid {
    grid-template-columns: 1fr;
    gap: 24px;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner.submit-btn.main-btn-full {
    max-width: 75%;
}
}


/*подвал*/
.footer-inner {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(8, 1fr);
}

.footer-inner > .footer-col {
    border: 1px solid #d2d2d2;
    margin-left: -1px;
    margin-top: -1px;
}

.footer-col.footer-logo {
    grid-row: 1 / -1;
    grid-column: 1 / 2;
    padding: 80px 0;
    display: grid;
    place-items: center;
}

.footer-col.footer-form-top {
    grid-column: 2 / 7;
    grid-row: 1 / 5;
    padding: 80px 32px 40px 32px;
    display: flex;
    flex-direction: column;
}

.footer-form-top-head {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 20px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--chernyy);
}

.to-top {
    background: none;
    border: none;
    outline: none;
    font-family: var(--font-family);
    font-weight: 800;
    font-size: 12px;
    line-height: 150%;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: right;
    color: var(--chernyy);
    display: block;
    flex: none;
    transition: .35s;
    cursor: pointer;
    opacity: 0.2;
}

.to-top svg {
    margin-right: 8px;
    vertical-align: middle;
}

.to-top:hover {
    opacity: 1;
}

.footer-form-top-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -0.04em;
    color: var(--chernyy);
    margin-top: auto;
}

.footer-form-top-title span {
    margin-left: 100px;
    display: block;
}

.footer-col.footer-col-menu {
    grid-column: 7 / 10;
    grid-row: 1 / 5;
    padding: 80px 32px 40px 32px;
}

.footer-col.footer-col-menu ul {
    column-count: 2;
    column-gap: 48px;
}

.footer-col.footer-col-menu ul li  + li {
    margin-top: 20px;
}

.footer-col-menu ul li a {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    color: var(--chernyy);
}

.footer-col-menu ul li a:hover {
    opacity: .85;
}

.footer-col.footer-col-button {
    grid-column: 10 / -1;
    grid-row: 1 / 5;
    display: grid;
    place-items: center;
    padding: 0 51px;
}

.footer-col.footer-col-button a {
    background: var(--bolotnyy-zelenyy);
    border-radius: 153px;
    padding: 95px 27px;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
    color: #fff;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 14px;
    line-height: 140%;
    color: var(--belyy);
    border-radius: 100%;
}

.footer-col.footer-col-button a:hover {
     background: var(--zheltyy);
     color: var(--chernyy);
}

.footer-col.footer-form {
    grid-column: 2 / 8;
    grid-row: 5 / 6;
    padding-left: 32px;
}
.form-rows {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.form-rows .form-row + .form-row {
    margin-left: 10px;
    margin-top: 0;
}

.form-rows .wpcf7-spinner {
    left: -28px;
    margin: 0;
    top: 39%;
}

.form-rows  .wpcf7-not-valid-tip {
    display: none;
}

.form-rows .wpcf7-not-valid {
    background: #ff00004d;
}

.footer-input {
    background: none;
    outline: none;
    border: none;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    color: var(--chernyy);
    opacity: 1;
    width: 100%;
}

.footer-submit {
    font-size: 0;
    outline: none;
    border: none;
    border-radius: 100% !important;
    background-color: var(--korichnevyy);
    stroke-width: 1px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Csvg width='16' height='12' viewBox='0 0 16 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.3308 4.22206L11.1088 0V3.44786H4.27607C3.09377 3.44786 2.08553 3.86496 1.25131 4.69917C0.4171 5.53339 0 6.54163 0 7.72393C0 8.90623 0.4171 9.91447 1.25131 10.7487C2.08553 11.5829 3.09077 12 4.26707 12H5.77044V10.4426H4.26707C3.51688 10.4426 2.87772 10.1785 2.34959 9.65041C1.82145 9.12228 1.55739 8.48012 1.55739 7.72393C1.55739 6.97374 1.82295 6.33309 2.35409 5.80195C2.88522 5.27081 3.52588 5.00525 4.27607 5.00525H11.1088V8.44411L15.3308 4.22206Z' fill='white' /%3E%3C/svg%3E%3C/svg%3E");
    height: 112px;
    width: 112px;
    display: block;
    background-repeat: no-repeat;
    background-position: 55% 55%;
    transition: .35s;
    cursor: pointer;
}

.footer-submit:hover {
    background-color: var(--chernyy);
}

.footer-col.footer-col-socials {
    grid-column: 8 / -1;
    grid-row: 5 / 6;
    display: flex;
    gap: 32px;
    align-items: center;
    justify-content: flex-end;
    padding: 0 51px 0 32px;
}

.footer-col.footer-col-socials a {
    border-radius: 100px;
    border: 1px solid var(--chernyy);
    height: 52px;
    width: 52px;
    display: grid;
    place-items: center;
}

.footer-col.footer-col-socials a:hover {
    background: var(--zheltyy);
    border-color: var(--zheltyy);
}

.footer-col.footer-col-image {
    grid-column: 2 / 7;
    grid-row: 6 / 9;
    padding: 80px 32px;
    display: grid;
    place-items: center;
}

.footer-col.footer-col-image img {
    width: 100%;
    object-fit: cover;
    border-radius: 100px;
}

.footer-col.footer-col-contacts {
    grid-column: 7 / -1;
    grid-row: 6 / 9;
    padding: 80px 32px;
    display: flex;
    flex-direction: column;
    position: relative;
}

.footer-col-contacts-top {
    display: flex;
    gap: 63px;
}

.footer-col-contacts-top span {
    font-family: var(--font-family);
    font-weight: 800;
    font-size: 12px;
    line-height: 150%;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--chernyy);
    display: block;
    margin-bottom: 12px;
    opacity: 0.4;
}

.footer-col-contacts-top a {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--chernyy);
}

.footer-col-contacts-top a:hover {
    opacity: .85;
}

.footer-col-contacts-bottom {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.footer-col-contacts-bottom-left {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 14px;
    line-height: 140%;
    color: var(--chernyy);
}

.footer-col-contacts-bottom-right * {
    font-family: var(--font-family);
    font-weight: 800;
    font-size: 12px;
    line-height: 150%;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: right;
    color: var(--chernyy-400);
}

.footer-col-contacts-bottom-right a:hover {
    color: var(--chernyy);
}

.to-top-mobile {
    display: none;
}

a.footer-dev {
    position: absolute;
    bottom: 30px;
    right: 30px;
        font-family: var(--font-family);
    font-weight: 800;
    font-size: 12px;
    line-height: 150%;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: right;
    color: var(--chernyy-400);
}

@media(max-width: 1240px) {
    .footer-form-top-title {
        font-size: 40px;
    }

    .footer-col-contacts-top a {
        font-size: 20px;
    }

    .footer-col.footer-form-top {
        padding: 40px 20px;
    }

    .footer-form-top-head {
        font-size: 16px;
    }

    .footer-col.footer-col-menu ul {
        column-count: 1;
        column-gap: 0;
    }

    .footer-col.footer-col-button a {
        padding: 10px;
        text-align: center;
    }

    .footer-col.footer-col-button {
        padding: 20px;
    }


}

@media(max-width: 992px) {
    .footer-inner {
        grid-template-rows: unset;
    }

    a.footer-dev {
        position: static;
    }

    .footer-col-contacts-bottom-left {
        order: 2;
    }

    .footer-col-contacts-bottom-right {
        order: 3;
    }

    .footer-col.footer-logo {
        grid-column: 1 / 4;
        grid-row: 1 / 2;
        padding: 24px 0;
    }

    .footer-col.footer-logo svg {
        height: 160px;
        opacity: .4;
    }

    .footer-col.footer-form-top {
        grid-column: 4 / -1;
        grid-row: 1 / 2;
        padding: 22px 20px 22px 8px;
    }

    .footer-form-top-title {
        font-size: 36px;
        line-height: 100%;
        margin-top: 52px;
    }

    .footer-form-top-title span {
        margin-left: 50px;
        display: block;
    }

    .footer-form-top-head button.to-top {
        display: none;
    }

    .footer-form-top-head {
        font-size: 14px;
        line-height: 150%;
    }

    .footer-col.footer-form {
        grid-column: 1 / -1;
        grid-row: 2 / 3;
    }

    .footer-col.footer-form {
        padding: 0;
    }

    .footer-col.footer-form .form-rows {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
    }

    .footer-col.footer-form .form-rows .form-row:first-child {
        grid-column: 1 / 4;
        grid-row: 1 / 2;
    }

    .footer-col.footer-form .form-rows .form-row:nth-child(2) {
        grid-column: 1 / 4;
        grid-row: 2 / 3;
    }

    .footer-col.footer-form .form-rows .form-row:last-child {
        grid-column: 4 / 5;
        grid-row: 1 / 3;
    }

    .footer-col.footer-form .form-rows .form-row {
        margin-left: 20px;
        margin-top: 0;
    }

    .footer-col.footer-col-menu {
        grid-row: 4 / 5;
        grid-column: 1 / -1;
        padding: 36px 20px;
    }

    .footer-col.footer-col-menu ul {
        column-count: 1;
        column-gap: 0;
    }

    .footer-col-menu ul li a {
        font-weight: 700;
        font-size: 24px;
        line-height: 140%;
    }


    .footer-col.footer-col-image {
        grid-column: 1 / -1;
        grid-row: 3 / 4;
        padding: 20px;
    }

    .footer-col.footer-col-socials {
        grid-column: 1 / 7;
        grid-row: 5 / 6;
        padding: 20px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px;
        justify-items: center;
        align-items: center;
    }

    .footer-col.footer-col-button {
        grid-column: 7 / -1;
        grid-row: 5 / 6;
        padding: 20px;
    }

    .footer-col.footer-col-button a {
        padding: 10px;
        text-align: center;
    }

    .footer-col.footer-col-contacts {
        grid-column: 1 / -1;
        grid-row: 6 / 7;
        padding: 0;
    }

    .footer-col-contacts-top {
        display: flex;
        gap: 20px;
        flex-direction: column;
        align-items: center;
        padding: 36px 20px;
        text-align: center;
        border-bottom: 1px solid #d2d2d2;
    }

    .footer-col-contacts-top span {
        margin-bottom: 0;
    }

    .footer-col-contacts-bottom {
        flex-direction: column-reverse;
        justify-content: center;
        text-align: center;
        padding: 24px 20px 41px;
    }

    .footer-col-contacts-bottom-right * {
        text-align: center;
    }

    .to-top-mobile {
        display: block;
        text-align: center;
        margin: auto;
        margin-top: 24px;
    }
}

/*страница все услуги*/
.page-header {
    padding-top: 30px;
    background: var(--seryy-fon);
}

.page-breadcrumbs {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 12px;
    line-height: 150%;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--chernyy);
}

.page-breadcrumbs span, .page-breadcrumbs a {
    color: #D7D7D7;
}

.page-breadcrumbs span.breadcrumb_last {
    color: var(--chernyy);
}

.direct-term-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 18px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--chernyy);
    display: block;
    position: relative;
    z-index: 1;
}

.direct-terms-list {
    display: flex;
    gap: 20px;
    margin-top: 80px;
}

.direct-term-item {
    transition: .35s;
    background-size: cover;
    background-size: 200%;
    background-position: center;
    overflow: hidden;
    background-color: #fff;
    border-radius: 100px;
    border: 1px solid var(--chernyy);
    padding: 18px 24px;
    position: relative;
}

a.direct-term-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
    background: #fff;
    transition: .45s;
    z-index: 1;
}

a.direct-term-item:hover, a.direct-term-item.active  {
    background-color: var(--chernyy);
}

a.direct-term-item:hover::before, a.direct-term-item.active:before {
    opacity: 0;
    background: var(--chernyy);
}

a.direct-term-item:hover .direct-term-title, a.direct-term-item.active .direct-term-title {
    color: #fff;
}

span.direct-term-item.active {
    background: var(--chernyy);
}

span.direct-term-item.active span {
 color: #fff;
}

.page-header-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -0.04em;
    color: var(--chernyy);
    margin-top: 60px;
    hyphens: auto;
}

.page-header-desc {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    color: var(--seryy);
    max-width: 60%;
    margin-top: 40px;
}

.direct-service {
    background-color: var(--seryy-fon);
    padding: 100px 0;
}

section.page-header.direct-header + .direct-service {
    padding-top: 1px;
}

.direct-service-inner .serv-tab-items {
    margin-top: 0;
}

.direct-service-inner .serv-tab-item {
    background: var(--belyy);
    border-color: var(--belyy);
}

.direct-service-inner .serv-tab-item-title a, .direct-service-inner .serv-tab-item-title {
    color: var(--chernyy);
}

.direct-service-inner .serv-tab-item-order {
    color: var(--chernyy);
    border-bottom: 1px solid var(--chernyy);
}

.direct-service-inner .serv-tab-item:hover {
    background: #ededed;
    border-color: #ededed;
}

@media(max-width: 992px){
    .page-header-title {
        font-weight: 700;
        font-size: 36px;
        line-height: 100%;
    }

    .page-header-inner-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}


/*cta*/
.cta {
    background-color: var(--chernyy);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right center;
    padding: 125px 0;
    position: relative;
    overflow: hidden;
    position: relative;
    z-index: 2;
}

.cta:before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='1122' height='803' viewBox='0 0 1122 803' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M810 1619.16V271.457V558.253M398.51 1506.94L810 810L1221.15 1506.94M1434.82 295.384L810 554.209L184.845 295.384M138.674 554.209H1480.31M1619.5 810C1619.5 1257.07 1257.07 1619.5 810 1619.5C362.925 1619.5 0.5 1257.07 0.5 810C0.5 362.925 362.925 0.5 810 0.5C1257.07 0.5 1619.5 362.925 1619.5 810ZM138.674 271.457H1480.31V1619.5H138.674V271.457Z' stroke='%23AAAAAA' stroke-opacity='0.5' stroke-miterlimit='22.926' /%3E%3C/svg%3E");
    position: absolute;
    bottom: 0;
    top: 20px;
    right: 0;
    width: 1122px;
    height: 800px;
    z-index: 1;
    width: 75%;
}

.cta-inner {
    max-width: 50%;
    margin-right: auto;
}

.cta-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -0.04em;
    text-align: left;
    color: var(--belyy);
}

.cta-subtitle {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    text-align: left;
    color: var(--belyy);
    margin-top: 30px;
}

.cta-order {
    display: inline-block;
    margin-top: 30px;
}

@media(max-width: 1720px) {
    .cta {
        background-position: 300% center;
    }
}

/*страница услуг*/
.service-header {
    position: relative;
}

.service-header:before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='1281' height='1691' viewBox='0 0 1281 1691' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.2' d='M845.5 1690.15V283.339V582.713M415.965 1573L845.5 845.5L1274.68 1573M1497.72 308.316L845.5 578.491L192.929 308.316M144.734 578.491H1545.21M1690.5 845.5C1690.5 1312.18 1312.18 1690.5 845.5 1690.5C378.819 1690.5 0.5 1312.18 0.5 845.5C0.5 378.819 378.819 0.5 845.5 0.5C1312.18 0.5 1690.5 378.819 1690.5 845.5ZM144.734 283.339H1545.21V1690.5H144.734V283.339Z' stroke='%23343434' stroke-miterlimit='22.926' /%3E%3C/svg%3E");
    position: absolute;
    bottom: 0;
    top: 30px;
    right: 0;
    width: 1281px;
    height: 1691px;
    z-index: 1;
    width: 75%;
    opacity: .35;
}

.service-header > * {
    position: relative;
    z-index: 2;
}

.direct-service .section-title {
    color: var(--chernyy);
}

.direct-service .section-subtitle {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    color: var(--seryy);
    max-width: 60%;
    margin-top: 40px;
}

.direct-service-inner {
    margin-top: 52px;
}

.page-header-inner-grid {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 30px;
    padding-bottom: 100px;
}

.page-header-inner-grid .page-header-desc {
    max-width: 90%;
}

.page-header-text {
    margin-top: 40px;
}

.page-header-text {
    margin-top: 40px;
    color: var(--chernyy);
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
}

.page-header-text > * + * {
    margin-top: 20px;
}

.page-header-text  strong {
    font-size: 110%;
}

.page-header-text ul {
    list-style: disc;
    margin-left: 30px;
}

.page-header-text ul li + li {
    margin-top: 10px;
}

.page-header-text ul li::marker {
    color: var(--zheltyy);
}

.area-group + .area-group {
    margin-top: 100px;
}


.page-header-order {
    margin-top: 30px;
    display: inline-block;
}

.seo {
    background: var(--belyy);
    padding: 100px 0;
}

.seo .section-title {
    color: var(--chernyy);
    max-width: 80%;
}

.entry-content {
    color: var(--chernyy);
    font-weight: 400;
    font-size: 16px;
    line-height: 140%;
}

.entry-content > * + * {
    margin-top: 20px;
}

.entry-content h2 {
    font-size: 40px;
    font-weight: 500;
    margin-top: 34px;
    line-height: 1.4;
    color: var(--chernyy);
}

.entry-content h3 {
    font-size: 32px;
    font-weight: 500;
    margin-top: 34px;
    line-height: 1.4;
    color: var(--chernyy);
}

.entry-content h4 {
    font-size: 26px;
    font-weight: 500;
    margin-top: 34px;
    line-height: 1.4;
    color: var(--chernyy);
}

.entry-content strong {
    font-weight: 700;
}

.entry-content em {
    font-style: italic;
}

.entry-content ul {
    list-style: disc;
    margin-left: 30px;
}

.entry-content ul li::marker {
    color: var(--zheltyy);
}

.entry-content ul li + li {
    margin-top: 10px;
}

.seo-inner {
    margin-top: 52px;
    max-width: 70%;
}

.faq {
    padding: 100px 0;
    background-color: var(--seryy-fon);
}

.faq .section-title {
    color: var(--chernyy);
    max-width: 80%;
}

.faq-inner {
    max-width: 75%;
    margin-left: auto;
}

.faq-item {
    border-bottom: 1px solid #b8b8bf;
}

.faq-question {
    font-size: 26px;
    font-weight: 500;
    padding: 40px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: .35s;
    cursor: pointer;
}

.faq-question p {
    transition: .35s;
    color: var(--chernyy);
}

.faq-question:hover p {
    opacity: .85;
}

.faq-question span {
    flex: none;
    display: block;
    transition: .35s;
    height: 38px;
    width: 38px;
    display: grid;
    place-items: center;
    background-color: transparent;
    border-radius: 100%;
}

.faq-question:hover span {
    background-color: #eee;
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: .35s;
    margin-top: 0;
    padding-left: 30px;
}

.faq-item.show .faq-answer {
    max-height: 500px;
    padding: 0 0 40px;
    padding-left: 30px;
}

.faq-item.show  .faq-question span {
    transform: rotate(45deg);
}

.video {
    background-color: var(--chernyy);
    padding: 100px 0;
}

.video-inner {
    margin-top: 52px;
}

.video-inner video {
    width: 100%;
}

.video-file-box {
    position: relative;
}

div#videoOverlay {
    background: #343434e0;
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    transition: .35s;
    cursor: pointer;
}

div#videoOverlay:hover {
    opacity: .92;
}

button#playButton {
    background: none;
    display: grid;
    place-items: center;
    width: 80px;
    height: 80px;
    border-radius: 100%;
    border: 1px solid #fff;
    outline: none;
    transition: .35s;
    cursor: pointer;
}

button#playButton svg path {
    transition: .35s;
}

button#playButton:hover, div#videoOverlay:hover button#playButton {
    background-color: var(--zheltyy);
    border-color: var(--zheltyy);
}

button#playButton:hover svg path, div#videoOverlay:hover button#playButton svg path {
   stroke: var(--chernyy);
}

div#videoOverlay.hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.video-inner iframe {
    aspect-ratio: 16 / 9;
    display: block;
    height: auto;
}

.more-directs {
    background-color: var(--chernyy);
    padding: 100px 0;
}

.more-directs-inner {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 30px;
}

a.more-directs-item {
    border: 1px solid rgba(170, 170, 170, 0.5);
    min-height: 300px;
    display: flex;
    flex-direction: column;
    transition: .35s;
}

.more-directs-image {
    margin-top: auto;
    max-height: 70%;
    max-width: 70%;
    margin-left: auto;
}

a.more-directs-item img {
    display: block;
    width: 100%;
    object-fit: contain;
}

a.more-directs-item:hover {
    background: rgba(0, 0, 0, 0.2);
    border: 1px solid rgb(42 42 42);
}

.more-directs-title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 36px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--belyy);
    margin-bottom: 16px;
    display: block;
    hyphens: auto;
    padding: 20px 20px 50px;
}



.service-images {
    background-color: var(--belyy);
    padding: 100px 0;
}

.service-images .section-title {
    color: var(--chernyy);
}

.service-images-item img {
    width: 100%;
    height: 300px;
    object-fit: cover;
}

.swiper-pagination-bullet {
    width: 10px !important;
    height: 10px !important;
    background: var(--zheltyy) !important;
    display: inline-block !important;
    opacity: 1 !important;
    cursor: pointer !important;
    transition: .35s;
}

.swiper-pagination-bullet:hover {
    opacity: 0.85;
}

.service-images-arrows .swiper-arrow {
    background: var(--zheltyy);
    width: 50px;
    height: 50px;
    border-radius: 100px;
    outline: none;
    border: none;
    cursor: pointer;
    transition: .35s;
    z-index: 1 !important;
}

.service-images-arrows .swiper-arrow-next {
    transform: rotate(180deg);
}

.service-images-arrows .swiper-arrow svg {
    width: 100%;
    height: 100%;
}

.service-images-arrows .swiper-arrow:hover {
    background: var(--chernyy-200);
}

.service-images-pagination {
    position: static !important;
    width: fit-content !important;
}

.swiper-arrows.service-images-arrows {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
}

.swiper-pagination-bullet-active {
    background-color: var(--bolotnyy-zelenyy) !important;
}

/*страница контактов*/
.has-vitru {
    position: relative;
}

.has-vitru > * {
    position: relative;
    z-index: 1;
}

.has-vitru:before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='1281' height='1691' viewBox='0 0 1281 1691' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.2' d='M845.5 1690.15V283.339V582.713M415.965 1573L845.5 845.5L1274.68 1573M1497.72 308.316L845.5 578.491L192.929 308.316M144.734 578.491H1545.21M1690.5 845.5C1690.5 1312.18 1312.18 1690.5 845.5 1690.5C378.819 1690.5 0.5 1312.18 0.5 845.5C0.5 378.819 378.819 0.5 845.5 0.5C1312.18 0.5 1690.5 378.819 1690.5 845.5ZM144.734 283.339H1545.21V1690.5H144.734V283.339Z' stroke='%23343434' stroke-miterlimit='22.926' /%3E%3C/svg%3E");
    position: absolute;
    bottom: 0;
    top: 30px;
    right: 0;
    width: 1281px;
    height: 1691px;
    z-index: 1;
    width: 75%;
    opacity: .35;
}

.contacts-header {
    overflow: hidden;
    padding-bottom: 100px;
}

.contacts-header-photo-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contacts-header-photo {
    margin-top: 52px;
}

.contacts-name {
    font-family: var(--font-family);
    font-weight: 800;
    font-size: 12px;
    line-height: 150%;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--chernyy);
    display: block;
    margin-bottom: 2px;
    opacity: 0.4;
}

.contacts-item + .contacts-item {
    margin-top: 30px;
}

.contacts-item a {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24px;
    line-height: 140%;
    letter-spacing: -0.02em;
    color: var(--chernyy);
}

.contacts-item a:hover {
    opacity: .85;
}

.contacts-item.contacts-socials a {
    border-radius: 100px;
    border: 1px solid var(--chernyy);
    height: 52px;
    width: 52px;
    display: grid;
    place-items: center;
}

.contacts-item.contacts-socials a:hover {
    background: var(--zheltyy);
    border-color: var(--zheltyy);
}

.contacts-socials-items {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-top: 12px;
}

.contacts-address {
    color: var(--chernyy);
}

.map {
    position: relative;
    z-index: 1;
    filter: grayscale(1);
    background-color: var(--seryy-fon);
}

.map iframe {
    display: block;
    width: 100%;
    height: 500px;
}

/*страница докторов*/
.doctors-page:before {
    display: none;
}

.doctors-page-inner {
    position: relative;
    z-index: 1;
}

.doctors-grid {
    margin-top: 24px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.cta + .video {
    background: var(--belyy);
}

.cta + .video .section-title {
    color: var(--chernyy);
}

/* section.page-header.service-header + .direct-service {
    padding-top: 0;
} */

.direct-service > * {
    position: relative;
    z-index: 1;
}

@media(max-width: 1240px) {
    .cta {
        background-size: cover;
        background-position: center;
    }

    .seo-inner {
        max-width: 85%;
    }

    .faq-inner {
        max-width: 85%;
    }

    .contacts-header .swiper-arrows.service-images-arrows {
        margin-top: 36px;
    }

    .contacts-header-photo {
        margin-top: 12px;
    }
}

@media(max-width: 992px) {
    .area-group + .area-group {
        margin-top: 52px;
    }

    .page-header-title {
        font-weight: 700;
        font-size: 36px;
        line-height: 100%;
        margin-top: 32px;
    }

    .page-header-inner-grid {
        grid-template-columns: 1fr;
        gap: 24px;
        padding-bottom: 32px;
    }

    .doctors-grid {
        grid-template-columns: 1fr 1fr 1fr;
        margin-left: 0;
        margin-right: 0;
    }

    .doctor-image img {
        max-height: 380px;
        aspect-ratio: 15 / 19;
    }

    .doctor-info {
        margin-top: 16px;
    }

    .doctor-name {
        font-size: 18px;
    }

    .doctor-prof {
        margin-top: 3px;
        font-size: 13px;
    }

    .page-template-page-doctors .doctors {
        padding: 0 0 52px 0;
    }

    .page-header-desc {
        max-width: 100%;
    }

    .direct-terms-list {
        display: flex;
        gap: 12px;
        margin-top: 32px;
        flex-direction: column;
    }

    .direct-service {
        padding: 1px 0 52px;
    }

    .cta-title {
        font-weight: 700;
        font-size: 28px;
        line-height: 100%;
    }

    .cta {
        background-size: cover;
        background-position: center;
        padding: 65px 0;
    }

    .cta-inner {
        max-width: 100%;
    }

    .page-header-text {
        margin-top: 0;
    }

    .service-images {
        padding: 52px 0;
    }

    .section-header {
        margin-bottom: 24px;
    }

    .swiper-arrows.service-images-arrows {
        gap: 8px;
    }

    .service-images-arrows .swiper-arrow {
        width: 40px;
        height: 40px;
    }

    .direct-service .section-subtitle {
        max-width: 100%;
        margin-top: 16px;
    }

    .seo {
        padding: 52px 0;
    }

    .entry-content h3 {
        font-size: 24px;
    }

    .seo-inner {
        margin-top: 24px;
        max-width: 100%;
    }

    .faq {
        padding: 52px 0;
    }

    .faq-inner {
        max-width: 100%;
        margin-left: unset;
    }

    .faq-question {
        font-size: 20px;
        gap: 16px;
        padding: 24px 0;
    }

    .faq-question span {
        width: 28px;
        height: 28px;
    }

    .faq-item.show .faq-answer {
        padding-left: 14px;
    }

    .video {
        padding: 52px 0;
    }

    .video-inner {
        margin-top: 0px;
    }

    .more-directs {
        padding: 52px 0;
    }

    .more-directs-inner {
        grid-template-columns: 1fr 1fr;
    }

    .more-directs-title {
        font-size: 26px;
        margin-top: unset;
        padding: 20px;
    }

    .more-directs-image {
        margin-top: auto;
        max-height: 90%;
        max-width: 90%;
        margin-left: auto;
    }

    .contacts-header {
        overflow: hidden;
        padding-bottom: 52px;
    }

}

@media(max-width: 768px) {
    .doctors-grid {
        grid-template-columns: 1fr 1fr;
    }

}


/*страница прайса*/
.price {
    background-color: var(--seryy-fon);
    padding: 0 0;
}

.price > * {
    position: relative;
    z-index: 1;
}

.price-tabs-btns {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border-bottom: 2px solid var(--zheltyy);
}

.price-tabs-btn {
    background: none;
    border: none;
    outline: none;
    font-family: var(--font-family);
    width: 100%;
    padding: 0 10px;
    padding-bottom: 18px;
    box-sizing: border-box;
    opacity: .85;
    color: var(--chernyy);
    background-color: transparent;
    border: none;
    transition: font-weight,color 0.3s ease;
    text-align: inherit;
    cursor: pointer;
    font-size: 16px;
    font-weight: 400;
    margin-bottom: -2px;
    min-height: 76px;
}

.price-tabs-btn:hover {
     opacity: 1;
}

.price-tabs-btn.active {
    font-weight: 700;
     opacity: 1;
    border-bottom: 2px solid var(--chernyy);
}

.price-tabs-btn.active:hover {
    cursor: auto;
}

.price-tabs-inner {
    margin-top: 80px;
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.price-tabs-panel {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: .35s;
}

.price-tabs-panel.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.price .section-title {
    color: var(--chernyy);
    margin-bottom: 52px;
}

.price-tabs-item {
    border-top: 1px solid #E0E0E0;
    border-left: 0;
    border-right: 0;
    padding: 40px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.price-tabs-item-title {
    font-size: 18px;
    line-height: 1.3;
}

.price-tabs-item-price {
    font-size: 20px;
    flex: none;
    max-width: 200px;
}

.price-tabs-item:first-of-type {
    border-top: none;
}

.price-tabs-item.not-price {
    padding-top: 80px;
}

.section-title + .price-tabs-item.not-price {
     padding-top: 40px;
}

.price-tabs-item.not-price + .price-tabs-item {
  border-top: none;
}

.price-tabs-item.not-price p {
    font-size: 32px;
    font-weight: 700;
}

.page-content {
    background: var(--seryy-fon);
    padding: 100px 0;
}

.page-content > * {
    position: relative;
    z-index: 1;
}

/*страница о кликнике*/
.photo {
    background: var(--seryy-fon);
    padding: 100px 0;
}

.photo .section-title {
    color: var(--chernyy);
}

.photo-slider img {
    width: 100%;
    height: 290px;
    object-fit: cover;
}

.docs {
    padding: 0 0 100px;
    background-color: var(--seryy-fon);
}

.docs .section-title {
    color: var(--chernyy);
}

.about-contacts {
    padding: 100px 0 0;
}

.about-contacts .section-title {
    color: var(--chernyy);
}

.about-contacts .section-subtitle {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 20px;
    line-height: 150%;
    color: var(--chernyy);
    max-width: 60%;
    margin-top: 40px;
    margin-bottom: 52px;
}

@media(max-width: 992px) {
    .photo {
        padding: 52px 0;
    }

    .docs {
        padding-bottom: 52px;
    }

    .direct-service-inner {
        margin-top: 24px;
    }

    .about-contacts {
        padding: 52px 0 0;
    }

    .about-contacts .section-subtitle {
        max-width: 100%;
        margin-top: 0;
    }

    .map iframe {
        height: 800px;
    }

    .page-content {
        padding: 52px 0;
    }

    .entry-content h2 {
        font-size: 28px;
        hyphens: auto;
    }

    .price-tabs-btns {
        overflow-x: auto;
        overflow-y: hidden;
        gap: 30px;
    }

    .price-tabs-btns::-webkit-scrollbar { display: none; }
    .price-tabs-btns {scrollbar-width: none;}

    .price-tabs-btn {
        margin-bottom: -10px;
    }

    .price-tabs-inner {
        margin-top: 34px;
    }

    .price .section-title {
        margin-bottom: 0px;
    }

    .price-tabs-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .price-tabs-item-title {
        font-size: 16px;
        line-height: 1.3;
    }

    .price-tabs-item-price {
        font-size: 18px;
        flex: none;
        max-width: 100%;
    }

    .price-tabs-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
        padding: 20px 0;
    }

    .price-tabs-item.not-price p {
        font-size: 22px;
        font-weight: 700;
    }

    .section-title + .price-tabs-item.not-price {
        padding-top: 20px;
        padding-bottom: 0;
    }

    .price-tabs-item.not-price {
        padding-top: 30px;
        padding-bottom: 0;
    }

    .price-tabs-btn.active {
        font-weight: 700;
        opacity: 1;
        border-bottom: none;
        color: #000;
    }
}

/*попап*/

html {
    scrollbar-gutter: stable;
}

.popup-open {
    overflow-y: hidden;
}

.popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.popup-container {
    overflow: auto;
    display: grid;
    place-items: center;
    backdrop-filter: blur(20px);
    background: #1E1E1E80;
    transition: .3s;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: 100%;
    transition: .3s;
}

.popup-show .popup-container {
    opacity: 1;
    visibility: visible;
}

.popup-content {
    background-image: linear-gradient(129deg, #eaebed 0%, #f0f0f1 41.27%, #e6e6ed 62.12%, #a9b0b1 100%);
    max-width: 692px;
    padding: 32px;
    position: relative;
}

.popup-inner-content {
    padding: 32px 76px 32px 32px;
}

.close-button {
    right: 4px;
    display: block;
    position: absolute;
    top: 26px;
    cursor: pointer;
}

.popup-content h2 {
    font-weight: 400;
    font-size: 40px;
    line-height: 100%;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.popup-content .popup-desc {
    font-weight: 500;
    font-size: 20px;
    line-height: 100%;
    margin-bottom: 30px;
    text-transform: uppercase;
    max-width: 70%;
}

@media(max-width: 1240px) {
    .popup-container {
        padding: 21px;
    }

    .popup-content {
        padding: 18px;
        position: relative;
    }

    .popup-content .popup-desc {
        font-size: 19px;
        line-height: 100%;
    }


    .popup-content h2 {
        font-weight: 500;
        font-size: 30px;
        line-height: 100%;
        text-transform: uppercase;
    }

    .close-button {
        top: 8px;
        right: 0;
    }

    .close-button svg path {
        stroke: var(--chernyy);
    }
}

@media(max-width: 992px)  {
    .form-row.form-row-bottom p {
        flex-direction: column;
        display: flex;
        gap: 20px;
        align-items: flex-start;
    }

    .popup-content h2 {
        font-size: 26px;
    }

    .popup-content .popup-desc {
        font-size: 17px;
        line-height: 1.2;
        max-width: 100%;
    }

    input.main-input {
        padding: 17px;
    }

    input.main-submit {
        width: 100%;
    }
}

/*формы */
.wpcf7-response-output {
    display: none;
}

.success-block, .error-block {
    display: flex;
    align-items: center;
    padding: 0 20px;
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
}

.success-block svg, .error-block svg {
    width: 30px;
    height: 30px;
    margin-right: 10px;
}

.hidden {
    display: none;
}

.footer-form .success-block, .footer-form .error-block {
    padding: 40px 0;
}

.quiz-step-inner .success-block p, .quiz-step-inner .error-block p {
    color: #fff;
    display: flex;
    align-items: center;
    margin-top: 0;
}

.quiz-step-inner .success-block br, .quiz-step-inner .error-block br {
    display: none;
}

section.form .success-block, section.form .error-block {
    margin-top: 80px;
}

/* страница 404*/
.error-header h1 {
    text-align: center;
    font-size: 250px;
}

.error-header h1 svg {
    width: 150px;
    height: 150px;
}

.error-btn {
    text-align: center;
    display: block;
    width: fit-content;
    margin: auto;
}

.error-header {
    padding-bottom: 100px;
    overflow: hidden;
}

@media(max-width: 992px) {
    .error-header {
        padding-bottom: 52px;
    }

    .error-header h1 {
        text-align: center;
        font-size: 140px;
    }

    .error-header h1 svg {
        width: 80px;
        height: 80px;
    }
}

/*блок разновидностей услуги*/
.vars-title {
    color: var(--chernyy);
}

.vars {
    padding: 100px 0;
}

.vars > * {
    position: relative;
    z-index: 1;
}

.page-header-text em {
    font-style: italic;
}

.vars-item .page-header-inner {
    padding-bottom: 52px;
}

.vars-item .page-header-desc, .vars-item .page-header-text {
    margin-top: 20px;
}

.vars-item + .vars-item {
    margin-top: 50px;
}

.vars + .direct-service {
    padding-top: 100px;
}

.page-header-text ol {
    list-style: num;
    margin-left: 20px;
}

.page-header-text ol li::marker {
    font-weight: 700;
    font-size: 110%;
}

@media(max-width: 992px) {
    .vars {
        padding: 52px 0;
    }

    .vars-item + .vars-item {
        margin-top: 24px;
    }

    .vars + .direct-service {
        padding-top: 52px;
    }

    .vars-item .page-header-desc, .vars-item .page-header-text {
        margin-top: 0;
    }
}
