
/* For old browsers */
@supports (not(--css: variables))
{
    .supports-error
    {
        display: flex !important;
    }
}

/* For IE */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
    .supports-error
    {
        display: flex !important;
    }
}


/*------------------
    Reset styles
------------------*/
*
{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

*:before,
*:after
{
    box-sizing: border-box;
}

html
{
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;
}

body
{
    margin: 0;

    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
    -webkit-tap-highlight-color: transparent;
    text-decoration-skip: objects;
    text-rendering: optimizeLegibility;
}

img
{
    border-style: none;
}

textarea
{
    overflow: auto;
}

input,
textarea,
input:active,
textarea:active,
button
{
    margin: 0;

    -webkit-border-radius: 0;
            border-radius: 0;
         outline: none transparent !important;
    box-shadow: none;

    -webkit-appearance: none;
            appearance: none;
    -moz-outline: none !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button
{
    margin: 0;

    -webkit-appearance: none;
}

input[type=number]
{
    -moz-appearance: textfield;
}

:focus
{
    outline: 0;
}

:hover,
:active
{
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-touch-callout: none;
}


::-ms-clear
{
    display: none;
}



/*-------------------
    Global styles
-------------------*/
:root
{
    --font-family: "Onest", sans-serif;

    --scroll_width: 10px;
}


.clear
{
    clear: both;
}


.left
{
    float: left;
}


.right
{
    float: right;
}


html
{
    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;

    scrollbar-width: thin;
}

body
{
    color: #204F63;
    font: 18px/1.17 var(--font-family);

    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;

    background: #fff;
}


button
{
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;

    display: inline-block;

    cursor: pointer;
    vertical-align: top;

    border: none;
    background: none;
}


.wrap
{
    position: relative;

    display: flex;
    overflow: clip;
    flex-direction: column;

    min-height: 100%;
}

.main
{
    flex: 1 0 auto;
}


.cont
{
    position: relative;

    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 20px;
}

.cont_big{
    max-width: 1400px;
}


.lazyload
{
    opacity: 0;

    transition: opacity .5s linear;
}

.lazyload.loaded
{
    opacity: 1;
}


._flex
{
    display: flex;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}


.supports-error
{
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;

    font-family: "Arial", sans-serif;
    font-size: 20px;
    line-height: 30px;

    display: none;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;

    width: 100%;
    height: 100%;
    padding: 20px;

    text-align: center;

    background: #FFF;
}

.supports-error.show
{
    display: flex;
}

/*------------
    mini-modal
------------*/
.mini-modal
{
    position: relative;
}

.mini-modal__modal
{
    position: absolute;
    z-index: 80;
    top: calc(100% + 10px);
    left: 0;

    visibility: hidden;

    pointer-events: none;

    opacity: 0;

    transition: opacity .2s linear, visibility .2s linear;
}

.mini-modal__modal._active
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}

.mini-modal__close
{
    display: none;
}


/*------------
    Header
------------*/
.header{
    position: relative;
    z-index: 60;
    background: #fff;
}

.header__top{
	padding: 6px 0;
}

.header__top .cont{
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	align-content: center;
	gap: 10px;
}

.header__logo-link{
	display: inline-block;
	text-decoration: none;
}

.header__logo-link img{
	display: block;
	max-width: 158px;
}

.header__logo-slogan{
	font-weight: 500;
	font-size: 10px;
	line-height: 1.6;
	margin-top: 2px;
	color: #666; /* gps recommend - было  #858585 */
}

.header__adres{
	align-items: center;
	align-content: center;
	flex-wrap: nowrap;
	max-width: 264px;
}

.header__adres-icon{
	border: 1px solid #D4E6EC;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	flex-shrink: 0;
	margin-right: 8px;
}

.header__adres-icon img{
	display: block;
	max-width: 100%;
	max-height: 100%;
}

.header__adres-title{
	font-weight: 500;
	font-size: 12px;
	line-height: 1.33;
	color: #666; /* gps recommend - было  #858585 */
	white-space: nowrap;
	align-items: center;
	align-content: center;

}
.header__adres-title img{
	display: block;
	width: 12px;
	margin-left: 4px;
	flex-shrink: 0;
	margin-top: -2px;
}

.header__adres-text{
	font-weight: 500;
	font-size: 12px;
	line-height: 1.33;
	color: #204F63;
}


.header__contact{
	align-items: center;
	align-content: center;
	flex-wrap: nowrap;
}

.header__contact-icon{
	border: 1px solid #D4E6EC;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	flex-shrink: 0;
	margin-right: 8px;
}

.header__contact-icon img{
	display: block;
	max-width: 100%;
	max-height: 100%;
}

.header__contact-title{
	font-weight: 500;
	font-size: 12px;
	line-height: 1.33;
	color: #666; /* gps recommend - было  #858585 */
}

.header__contact-text{
	font-weight: 500;
	font-size: 16px;
	line-height: normal;
	color: #204F63;
}

.header__contact-text a{
	text-decoration: none;
	color: currentColor;
    display: inline-block;
}

.header__btns{
	flex-wrap: nowrap;
	gap: 10px;
	flex-shrink: 0;
}

.header__write{
	width: 198px;
	padding: 0 15px;
	background: #204F63;
	border-radius: 8px;

	font-weight: 500;
	font-size: 16px;
	color: #fff;
	line-height: 51px;
	height: 51px;
	text-decoration: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	align-content: center;
	flex-wrap: nowrap;
	transition: background.2s linear;
}

.header__write-icon{
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	width: 41px;
	height: 41px;
	flex-shrink: 0;
	margin-right: 10px;
}

.header__write-icon img{
	display: block;
	max-width: 100%;
	max-height: 100%;
}

.header__write-text{
	line-height: 1;
	text-align: left;
}

@media (any-hover: hover){
	.header__write:hover{
		background: #193E4D;
	}
}

.header__request {
	width: 210px;
	padding: 0 15px;
	background: #1986AC;
	font-weight: 500;
	font-size: 16px;
	color: #fff;
	line-height: 51px;
	text-decoration: none;
	border-radius: 8px;
	transition: background .2s linear;
}
@media (any-hover: hover){
	.header__request:hover{
		background: #204F63;
	}
}

.header__info{
    box-shadow: 0 -3px 13px 0 rgba(0, 0, 0, 0.03);
    background: #fff;
    border-top: 1px solid #F2F2EF;
    position: relative;
}

.header__info-mob{
    display: none;
}

.header__info .cont{
    position: static;
}

.header-menu{
    justify-content: space-between;
}

.header-menu__link{
    display: block;
    font-weight: 400;
    font-size: 18px;
    line-height: 52px;
    color: #204F63;
    text-decoration: none;
    position: relative;
    transition: color .2s linear;
}

.header-menu__link._sub .header-menu__link-span{
    padding-left: 24px;
}

.header-menu__link-span{
    position: relative;
    display: inline-block;
}

.header-menu__link-burger{
    position: absolute;
    left: 0;
    top: 50%;
    width: 16px;
    height: 10px;
    margin-top: -5px;
    display: block;
    stroke: currentColor;
}

.header-menu__link-number{
    position: absolute;
    right: -12px;
    top: 11px;
    min-width: 14px;
    background: #E84242;
    line-height: 14px;
    border-radius: 7px;
    color: #fff;
    font-size: 9px;
    font-weight: 500;
    text-align: center;
    padding: 0 2px;
}

@media (any-hover: hover){
    .header-menu__item:hover .header-menu__link{
        color: #1986AC;
    }
}

.header-menu__link._active{
    color: #1986AC;
}

.header__bot{
    background: #F2F2EF;
}

.header-list{
    justify-content: space-between;
}

.header-list__link{
    display: block;
    font-size: 16px;
    color: #204F63;
    line-height: 46px;
    text-decoration: none;
    transition: color .2s linear;
}

@media (any-hover: hover){
    .header-list__link:hover{
        color: #1986AC;
    }
}

.mob-phone{
    display: none;
}

.mob-menu-btn
{
    display: none;
}

.header__mob{
    display: none;
}


.submenu{
    position: absolute;
    z-index: 98;
    top: 100%;
    left: 0;
    visibility: hidden;
    width: 100%;
    height: 666px;
    max-height: calc(100vh - 140px);
    opacity: 0;
    background: #F2F2EF;
    transition: visibility .2s linear, opacity .2s linear;
    overflow: hidden;
    pointer-events: none;
}

.submenu._show {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.submenu .cont{
    height: 100%;
}

.submenu__wrap{
    position: relative;
    height: 100%;
}

.submenu__close{
    position: absolute;
    right: 20px;
    top: 40px;
    width: 22px;
    height: 22px;
    color: #1986AC;
    z-index: 10;
    transition: color .2s linear;
}

.submenu__close svg{
    display: block;
    width: 100%;
    height: 100%;
    fill: currentColor;
}

@media (any-hover: hover){
    .submenu__close:hover{
        color: #204F63;
    }
}

.submenu__items{
    overflow: hidden;
    overflow-y: auto;
    width: 297px;
    height: 100%;
    padding: 32px 0;
    margin-left: -20px;
}

.submenu__item::before{
    content: '';
    position: absolute;
    left: 277px;
    top: 0;
    width: 5000px;
    height: 100%;
    background: #fff;
    opacity: 0;
    visibility: hidden;
    transition: visibility .2s linear, opacity .2s linear;
}

.submenu__item._active-pc::before{
    opacity: 1;
    visibility: visible;
}

.submenu__link{
    display: block;
    padding: 14px 20px;
    border-radius: 10px 0 0 10px;
    /*font-weight: 500;
    font-size: 24px;*/
    line-height: 1.08;
    color: rgba(32, 79, 99, 0.6);
    text-decoration: none;
    transition: background .2s linear, color .2s linear;
}

.submenu__item._active-pc .submenu__link{
    background-color: #fff;
    color: #204F63;
}

.submenu__list{
    position: absolute;
    left: 277px;
    top: 0;
    width: calc(100% - 277px);
    height: 100%;
    overflow: hidden;
    overflow-y: auto;
    padding: 35px 0 35px 35px;
    background: #fff;
    opacity: 0;
    visibility: hidden;
    transition: visibility .2s linear, opacity .2s linear;
}

.submenu__item._active-pc .submenu__list{
    opacity: 1;
    visibility: visible;
}

.submenu__list-title{
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
}

.submenu__list-flex{
  /*  margin-top: 19px;*/
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 20px;
}

.header-submenu{
    flex-wrap: nowrap;
    gap: 20px;
    padding-top: 11px;
}

.header-submenu__title{
    font-weight: 500;
}

.header-submenu__title a{
    color: currentColor;
    text-decoration: none;
    transition: color .2s linear;
}

@media (any-hover: hover){
    .header-submenu__title a:hover{
        color: #1986AC;
    }
}

.header-submenu__sector{
    margin-top: 25px;
}

.header-submenu__sector + .header-submenu__sector{
    margin-top: 45px;
}

.header-submenu__subtitle{
    font-weight: 500;
    font-size: 14px;
    line-height: normal;
    color: rgba(32, 79, 99, 0.6);
    text-transform: uppercase;
}

.header-submenu__subtitle a{
    color: rgba(32, 79, 99, 0.6);
    text-decoration: none;
    transition: color .2s linear;
}

@media (any-hover: hover){
    .header-submenu__subtitle a:hover{
        color: #204F63;
    }
}

.header-submenu__item{
    font-size: 16px;
    line-height: normal;
    margin-top: 25px;
}

.header-submenu__link{
    color: #204F63;
    text-decoration: none;
    border: 1px solid transparent;
    transition: border .2s linear;
}

@media (any-hover: hover){
    .header-submenu__link:hover{
        border-bottom-color: currentColor;
    }
}

.header-product{
    flex-shrink: 0;
    width: 36.26%;
    border-radius: 20px;
    background: #D4E6EC;
    padding: 25px;
}

.header-product__name{
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
}

.header-product__name a{
    text-decoration: none;
    color: currentColor;
    transition: color .2s linear;
}

@media (any-hover: hover){
    .header-product__name a:hover{
        color: #1986AC;
    }
}

.header-product__desc{
    margin-top: 15px;
    font-size: 16px;
    line-height: normal;
}

.header-product__prices{
    align-items: flex-end;
    align-content: flex-end;
    gap: 6px 12px;
    margin-top: 20px;
}

.header-product__price{
    font-weight: 500;
    font-size: 40px;
    line-height: 1;
}

.header-product__oldprice{
    font-weight: 500;
    font-size: 24px;
    text-decoration: line-through;
    color: rgba(11, 50, 67, 0.4);
    line-height: 1;
    padding-bottom: 4px;
}

.header-product__thumb{
    margin-top: 6px;
    margin-left: -25px;
    width: calc(100% + 25px);
    height: 225px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.header-product__thumb img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.header-product .btn-blue_h{
    margin-top: 14px;
    width: 100%;
}


.fix-btns{
	display: none;
}

.overlay 
{
    position: fixed;
    z-index: 50;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: auto;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .4);
}

.overlay._show{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
/*------------
    BTNS
------------*/
.btn-wrap{
    margin-top: 50px;
    text-align: center;
}

.btn-blue
{
    font-weight: 500;
    font-size: 18px;
    text-align: center;
    color: #fff;
    line-height: 63px;
    text-decoration: none;
    display: inline-block;
    vertical-align: top;

    border-radius: 8px;
    background: #1986AC;
    padding: 0 16px;

    transition: background .2s linear;
}

.btn-blue_h{
    font-size: 20px;
    line-height: 67px;
    padding: 0 25px;
}

.btn-light{
    font-weight: 500;
    font-size: 18px;
    text-align: center;
    color: #204F63;
    line-height: 63px;
    text-decoration: none;
    display: inline-block;
    vertical-align: top;

    border-radius: 8px;
    background: #D4E6EC;
    padding: 0 16px;

    transition: background .2s linear, color .2s linear;
}

.btn-light_h{
    font-size: 20px;
    line-height: 67px;
    padding: 0 25px;
}

.btn-white{
    font-weight: 500;
    font-size: 18px;
    text-align: center;
    color: #204F63;
    line-height: 63px;
    text-decoration: none;
    display: inline-block;
    vertical-align: top;

    border-radius: 8px;
    background: #fff;
    padding: 0 16px;

    transition: background .2s linear, color .2s linear;
}

.btn-white em{
    font-style: normal;
}

.btn-white_h{
    font-size: 20px;
    line-height: 67px;
    padding: 0 25px;
}

.btn-bord{
    border: 1px solid #204F63;
    border-radius: 8px;
    display: inline-block;
    font-weight: 500;
    font-size: 18px;
    line-height: 61px;
    text-align: center;
    padding: 0 15px;
    color: #204F63;
    text-decoration: none;
    border-radius: 8px;

    transition: background .2s linear, color .2s linear;
}

.btn-bord_h{
    font-size: 20px;
    line-height: 65px;
    padding: 0 25px;
}

.btn-dashed{
    font-weight: 500;
    font-size: 14px;
    text-decoration: none;
    line-height: normal;
    color: #1986AC;
    display: inline-block;
    border-bottom: 1px dashed currentColor;
    transition: border .2s linear;
    padding-bottom: 2px;
}


@media (any-hover: hover)
{
    .btn-blue:hover
    {
        background: #204F63;
    }

    .btn-light:hover{
        background: #1986AC;
        color: #fff;
    }

    .btn-white:hover
    {
        background: #1986AC;
        color: #fff;
    }

    .btn-bord:hover{
        background: #204F63;
        color: #fff;
    }

    .btn-dashed:hover{
        border-bottom-color: transparent;
    }
}

/*------------
    breadcrumbs
------------*/
.breadcrumbs_pad{
    padding: 25px 0 54px;
}

.breadcrumbs + ._marg{
    margin-top: 0;
}

.breadcrumbs{
    font-weight: 500;
    font-size: 14px;
    color: #1986AC;
    line-height: normal;
}

.breadcrumbs a{
    color: #204F63;
    text-decoration: none;
    transition: color .2s linear;
}

@media (any-hover: hover){
    .breadcrumbs a:hover{
        color: #1986AC;
    }
}

.breadcrumbs__step{
    color: #204F63;
}


.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0;
    margin: 0;
    list-style: none;
}

.breadcrumb li {
    display: inline-flex;
    align-items: center;
    list-style: none;
}

.breadcrumb li:not(:last-child)::after {
    content: "/";
    margin: 0 8px;
    color: inherit; /* или задайте конкретный цвет */
}


/*----------------
    Typography
----------------*/
.text-block > :last-child
{
    margin-bottom: 0 !important;
}

.text-block{
/*    font-size: 16px;
    line-height: 1.15;*/
}

.text-block_small{
    max-width: 610px;
}

.text-block h1
{
	font-weight: 400;
    font-size: 58px;
    line-height: .95;
    color: #204F63;
    margin-bottom: 25px;
}

.text-block h2
{
	font-weight: 400;
    font-size: 46px;
    line-height: 1.13;
    color: #204F63;
    margin-bottom: 25px;
}

.text-block h3
{
	font-weight: 500;
    font-size: 32px;
    line-height: 1;
    color: #204F63;
    margin-bottom: 25px;
}

.text-block h4
{
	font-weight: 500;
    font-size: 24px;
    line-height: 1.08;
    color: #204F63;
    margin-bottom: 25px;
}

.text-block h5
{
	font-weight: 500;
    font-size: 18px;
    line-height: 1.17;
    color: #204F63;
    margin-bottom: 25px;
}

.text-block p
{
    margin-bottom: 15px;
}

.text-block img
{
    display: block;
    max-width: 100%;
    border-radius: 30px;
    margin-bottom: 20px;
}

.text-block .top-service__bot-icon img {
    border-radius: 0px;
    margin-bottom: 0px;
    
}

.text-block a
{
    color: #1986AC;

    text-decoration: none;

    border-bottom: 1px solid;

    transition: border .2s linear;
}

@media (any-hover: hover)
{
    .text-block a:hover
    {
        border-color: transparent;
    }
}

.text-block ul
{
    margin-bottom: 25px;
    list-style: none;
}

.text-block ul li{
    position: relative;
    padding-left: 30px;
    line-height: 1.33;
}

.text-block ul li + li{
    margin-top: 20px;
}

.text-block ul li::before{
    content: '';
    position: absolute;
    left: 2px;
    top: 3px;
    width: 16px;
    height: 16px;
    border-radius: 50px;
    background: #1986AC;
}

.text-block ol {
    margin-bottom: 25px;
    list-style: none;
    counter-reset: item;
}

.text-block ol li {
    position: relative;
    padding-left: 35px;
    line-height: 1.2;
    counter-increment: item;
}

.text-block ol li + li {
    margin-top: 20px;
}

.text-block ol li::before {
    content: counter(item);
    position: absolute;
    left: 2px;
    top: 3px;
    width: 22px;
    height: 22px;
    border-radius: 50px;
    background: #1986AC;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    text-align: center;
    line-height: 22px;
}

.text-block__cols{
    justify-content: space-between;
    gap: 22px;
}

.text-block__coll{
    width: 51.64%;
}

.text-block__colr{
    width: calc(48.16% - 22px);
}

.text-block__col{
    width: calc(100%/2 - 11px);
}

.text-block__coll > :last-child,
.text-block__colr > :last-child,
.text-block__col > :last-child{
    margin-bottom: 0;
}

.text-block__cols ._blue{
    background: #D4E6EC;
    border-radius: 20px;
    padding: 25px;
}

.text-block__cols ._gray{
    background: #F2F2EF;
    border-radius: 20px;
    padding: 25px;
}


/*------------------
    Form elements
------------------*/
::-webkit-input-placeholder
{
    color: rgba(32, 79, 99, 0.6);

    opacity: 1;
}

::-moz-placeholder
{
    color: rgba(32, 79, 99, 0.6);

    opacity: 1;
}

:-moz-placeholder
{
    color: rgba(32, 79, 99, 0.6);

    opacity: 1;
}

:-ms-input-placeholder
{
    color: rgba(32, 79, 99, 0.6);

    opacity: 1;
}

.form__line
{
    margin-bottom: 20px;
}

.form__field
{
    position: relative;
}

.form .form__input
{
    color: #204F63;
    font: 16px/1.31 var(--font-family);

    display: block;

    width: 100%;
    height: 63px;
    padding: 0 20px;

    border: 1px solid rgba(32, 79, 99, 0.3);
    border-radius: 8px;
    backdrop-filter: blur(10px);
    background: rgba(248, 248, 248, 0.3);

    transition: border .2s linear;
}

.form .form__textarea
{
    color: #204F63;
    font: 16px/1.31 var(--font-family);

    display: block;

    width: 100%;
    height: 140px;
    padding: 20px;

    border: 1px solid rgba(32, 79, 99, 0.3);
    border-radius: 8px;
    backdrop-filter: blur(10px);
    background: rgba(248, 248, 248, 0.3);
	resize: none;

    transition: border .2s linear;
}


.form .form__textarea.error,
.form .form__input.error{
	border-color: #F52121 !important;
}

.form .form__input:disabled,
.form .form__textarea:disabled
{
    cursor: default;
    pointer-events: none;

    opacity: .7;
}

.error-text
{
    color: #F52121;
    font-size: 12px;
	line-height: 1.3;

    margin-top: 6px;
}

.checkbox_marg{
    margin-bottom: 10px;
}

.checkbox_dot{
    width: 20px;
}

.checkbox input[type=checkbox]
{
    display: none;
}

.checkbox__label
{
    position: relative;

    display: inline-block;

    cursor: pointer;
    vertical-align: top;
}

.checkbox_dot .checkbox__label{
    display: block;
}

.checkbox__text
{
    position: relative;
    color: #204F63;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.4;
    display: block;
    padding-left: 21px;
    cursor: pointer;
    transition: .2s linear;
}


.form.open .checkbox__text
{
    font-size: inherit;
    padding-left: 0px;
    
}
.form.open .checkbox__text::before {
    top:5px;
}

.form.open .checkbox__text a {color:#1986AC;font-weight:400;}

.checkbox_dot .checkbox__text{
    width: 20px;
    height: 20px;
}

.checkbox__text::before
{
    content: "";

    position: absolute;
    top: 0;
    left: 0;

    width: 15px;
    height: 15px;

    cursor: pointer;

    border: 1px solid #204F63;
    border-radius: 2px;

    transition: background .2s linear, border .2s linear;
}

.checkbox_dot .checkbox__text::before{
    width: 20px;
    height: 20px;
    border-color: #D0D5DD;
    border-radius: 6px;
}

input[type=checkbox]:checked + .checkbox__text::before
{
    background: #204F63;
}

.checkbox_dot input[type=checkbox]:checked +  .checkbox__text::before{
    background: #1986AC;
    border-color: #1986AC;
}

.checkbox__text::after
{
    content: "";
    position: absolute;
    top: 0;
    left: 0;

    width: 15px;
    height: 15px;

    cursor: pointer;

    opacity: 0;
    background: url(../images/check.svg) 50% no-repeat;

    transition: opacity .2s linear;
}

.checkbox_dot .checkbox__text::after{
    width: 20px;
    height: 20px;
    background-size: 12px auto;
}

input[type=checkbox]:checked + .checkbox__text::after
{
    opacity: 1;
}

.checkbox__text a{
    color: currentColor;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid currentColor;
    transition: .2s linear;
}

/* Стили для радио-кнопок */
.form__field[data-type="radio-group"] {
    color: #204F63;
    font: 16px/1.31 var(--font-family);
    
    -webkit-appearance: auto; 
    appearance: auto;
    width: 100%;
    min-height: 0;
    padding: 2px 20px;
   
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 15px;
    
    
    backdrop-filter: blur(10px);
    background: rgba(248, 248, 248, 0.3);
    
    transition: border .2s linear;
}
.form__field[data-type="radio-group"] input {
    appearance: auto;
}

.form textarea.form__input {
    margin-top:16px;
    padding:10px 20px;
}
@media (any-hover: hover){
    .checkbox__text a:hover{
        border-bottom-color: transparent;
    }
}

.form__submit{
	margin-top: 25px;
}

.form__submit_center{
	text-align: center;
}

.form__submit-btn{
    min-width: 234px;
}


.select-wrap
{
    position: relative;
}

.select-wrap select
{
    position: absolute;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;

    opacity: 0;
}

.select-wrap .nice-select
{
    position: relative;

    display: block;
}

.select-wrap .nice-select.disabled
{
    pointer-events: none;
}

.select-wrap .nice-select.open
{
    z-index: 15;
}

.select-wrap .nice-select .current
{
    position: relative;
    z-index: 4;

    color: rgba(32, 79, 99, 0.6);
    font-size: 16px;
    line-height: 61px;

    display: block;
    overflow: hidden;

    height: 63px;
    padding: 0 40px 0 20px;

    cursor: pointer;
    white-space: nowrap;
    text-overflow: ellipsis;

    border: 1px solid rgba(32, 79, 99, 0.3);
    border-radius: 8px;
    backdrop-filter: blur(10px);
    background: rgba(248, 248, 248, 0.3);

    transition: border .2s linear, color .2s linear;
}

@media (any-hover: hover)
{
    .select-wrap .nice-select .current:hover
    {
        border-color: #1986AC;
    }
}

.select-wrap .nice-select.open .current,
.select-wrap .nice-select .current.selected
{
    color: #204F63;
}

.select-wrap .nice-select .current:after
{
    content: "";

    position: absolute;
    top: 50%;
    right: 18px;

    margin-top: -5px;

    border-top: 10px solid #1986AC;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;

    transition: border .2s linear;
}

.select-wrap .nice-select.open .current:after
{
    transform: rotate(180deg);
}

.select-wrap .nice-select .list
{
    position: absolute;
    z-index: 9;
    top: calc(100% + 5px);
    left: 0;

    visibility: hidden;
    overflow: hidden;

    min-width: 100%;

    pointer-events: none;

    opacity: 0;
	border: 1px solid rgba(32, 79, 99, 0.3);
    background: #FFF;
    box-shadow: 0 4px 4px 0 rgba(191, 191, 191, .25);
	border-radius: 8px;

    transition: opacity .2s linear;
}

.select-wrap .nice-select.open .list
{
    visibility: visible;

    pointer-events: all;

    opacity: 1;
}

.select-wrap .nice-select .list .scrollbar
{
    overflow: hidden;
    overflow-y: auto;

    max-height: 360px;
    padding: 13px 0;

    scrollbar-width: thin;
}

.modal .select-wrap .nice-select .list .scrollbar{
    max-height: 200px;
}

.select-wrap .nice-select .list .list_item
{
    position: relative;

    color: rgba(32, 79, 99, 0.6);
    font-size: 16px;
    line-height: 1.5;

    padding: 7px 20px;

    cursor: pointer;

    transition: color .2s linear;
}

.select-wrap .nice-select .list .list_item:empty
{
    display: none;
}

.select-wrap .nice-select .list .list_item:hover,
.select-wrap .nice-select .list .list_item.selected
{
    color: #204F63;
}

.select-wrap .nice-select .list .list_item.selected
{
    font-weight: 500;
}

.select-wrap .nice-select .list .list_item.disabled{
    display: none;
}



/*---------------
	Page head
---------------*/

.main-title, .indicat-cont h2, h1.main-title
{
	font-weight: 400;
    font-size: 46px;
    line-height: 1.13;
    color: #204F63;
    margin-bottom:24px;
}
.main-title a, .indicat-cont h2, h1.main-title a
{
	color: #204F63;
	text-decoration:none;
}
.main-title a:hover, .indicat-cont h2 a:hover, h1.main-title a:hover
{
	text-decoration:underline;
}

.main-title_center{
    text-align: center;
}

.main-title_white{
    color: #fff;
}

.main-title__smile{
    font-size: 32px;
}

.main-title__light, .main-title span, h2 span{
    color: #1986AC;
}

.main-title_slider{
    padding-right: 120px;
}

.small-title{
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
}

.main-subtitle
{
	font-weight: 600;
    font-size: 18px;
    line-height: 1;
    color: #204F63;
    margin-top: 23px;
}

.main-subtitle_center{
    text-align: center;
}

.inner-subtitle{
    margin-top: 20px;
    font-size: 14px;
    line-height: normal;
    max-width: 790px;
}


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

.page-title{
    font-size: 58px;
    font-weight: 400;
    line-height: .95;
    color: #204F63;
}

.page-title span{
    color: #1986AC;
}

/*--------------
    Fancybox
--------------*/
.fancybox__backdrop
{
    background: rgba(0, 0, 0, .4);
}

.fancybox__slide.has-html
{
    padding: 16px;
}

._top-modal .fancybox__slide.has-html{
	padding-top: 38px;
}

.fancybox__slide.has-html.has-iframe
{
    padding-top: 60px;
}

._top-modal .fancybox__slide .f-button[data-fancybox-close]{
	right: 0;
	top: -30px;
	width: auto;
	padding-left: 30px;
	height: 20px;
	background: transparent;
	border-radius: 0;
	color: #fff;
}

._top-modal .fancybox__slide .f-button[data-fancybox-close]::after{
	content: attr(title);
	display: block;
}

._top-modal .fancybox__slide .f-button[data-fancybox-close] svg{
	width: 12px;
	height: 13px;
	position: absolute;
	left: 5px;
	top: 50%;
	margin-top: -7.5px;
}

.fancybox__slide .f-button[data-fancybox-close]
{
	font-weight: 400;
	font-size: 14px;
	line-height: 1.5;
	top: 20px;
	right: 20px;
	background: transparent;
    color: #1986AC;
	width: 22px;
	height: 22px;
	border-radius: 0;

    transition: color .2s linear, background .2s linear;
}

@media (any-hover: hover)
{
    .fancybox__slide .f-button[data-fancybox-close]:hover
    {
        color: #204F63;
    }

	._top-modal .fancybox__slide .f-button[data-fancybox-close]:hover{
		background: transparent;
		color: #D0C7C0;
	}
}

 .fancybox__slide .f-button[data-fancybox-close] svg{
	width: 100%;
	height: 100%;
}

.has-iframe.fancybox__slide .f-button[data-fancybox-close]
{
    top: -36px;
    right: 0;

    color: #FFF;
}

.has-iframe .f-html{
	padding: 0;
}

.fancybox__content :focus
{
    outline: none !important;
    box-shadow: none !important;
}

.fancybox__button--thumbs,
.fancybox__button--zoom
{
    display: none;
}

.fancybox__thumbs
{
    display: none;
}

.fancybox__loader {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.9);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 10;
	font-family: sans-serif;
	font-size: 16px;
	color: #444;
}



/*------------------------
	Slider controls
------------------------*/
.swiper
{
    position: relative;
    overflow: hidden; /* add 240726*/
    margin-right: 0;
    margin-left: 0;
}

.swiper_visible
{
    overflow: visible;
    margin-top: 25px;
}

.swiper-overflow
{
    overflow: hidden;
}

.swiper-wrapper
{
    height: auto;
}

.swiper-vertical > .swiper-wrapper
{
    height: 100%;
}

.slider-button-prev,
.slider-button-next
{
    position: absolute;
    z-index: 10;
    top: 50%;

    color: #1986AC;

    display: flex;
    overflow: hidden;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;

    width: 38px;
    height: 38px;
    margin-top: -19px;

    cursor: pointer;

    border: none;
    border-radius: 50%;
    background: #fff;

    transition: color .2s linear, background .2s linear;
}

.slider-button-prev._light,
.slider-button-next._light{
    background-color: #D4E6EC;
}

@media (any-hover: hover)
{
    .slider-button-prev:hover,
    .slider-button-next:hover
    {
        z-index: 11;

        background-color: #1986AC;
		color: #fff;
        box-shadow: none;
    }
}

.slider-button-prev svg,
.slider-button-next svg
{
    display: block;

    width: 7px;
    height: 14px;

    fill: none;
    stroke: currentColor;
}

.slider-button-prev
{
    left: 40px;

    transform: rotate(180deg);
}

.slider-button-next
{
    right: 40px;
}

.slider-button-prev._top,
.slider-button-next._top{
    margin-top: 0;
    top: -70px;
}

.slider-button-next._top{
    right: 0;
}

.slider-button-prev._top{
    left: auto;
    right: 53px;
}

.slider-button-prev.swiper-button-disabled,
.slider-button-next.swiper-button-disabled
{
    cursor: default;
    pointer-events: none;

    opacity: .5;
}

.swiper-button-lock
{
    display: none;
}

.slider-pagination
{
    position: absolute;
    z-index: 9;
    bottom: 20px;
    left: 0;

    display: none;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;

    width: 100%;
    padding: 0;

    text-align: center;

    transition: 300ms opacity, 300ms visibility;
}

.slider-pagination._bot{
	position: relative;
	bottom: 0;
	margin-top: 11px;
}

.slider-pagination.swiper-pagination-lock
{
    display: none !important;
}

.slider-dot
{
    position: relative;

    display: block;

    width: 10px;
    height: 10px;
    margin: 0;
    padding: 0;

    border-radius: 10px;
    background: rgba(70, 69, 73, 0.5);
    box-shadow: none;

    transition: background .2s linear, height .2s linear, width .2s linear;

    appearance: none;
}

.slider-dot + .slider-dot
{
    margin-left: 7px;
}

.slider-pagination-clickable .slider-dot
{
    cursor: pointer;
}

@media (any-hover: hover)
{
    .slider-dot:hover
    {
        background: #464549;
    }
}

.slider-dot.slider-dot_active
{
    background: #464549;
}

.swiper-scrollbar
{
    transition: opacity 0s .1s linear;
}

.swiper .swiper-scrollbar
{
    position: relative;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 23px;
    background: none;

    border-bottom: 1px solid #EAECF0;
    border-radius: 0;
    padding-top: 1px;
}

.swiper .swiper-scrollbar-drag
{
    background: #EAECF0;
    margin-top: 7px;
    height: 6px;
}

/*------------------------
	Start
------------------------*/
._marg{
    margin-top: 80px;
}

.first-section{
    margin-top: 30px;
}

.main-banner{
    padding: 0 30px 0 40px;
    background: #F2F2EF;
    border-radius: 30px;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: nowrap;
}

.main-banner__coll{
    padding: 56px 0;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}

.main-banner__title, .main-banner__title h1{
    font-weight: 400;
    font-size: 58px;
    line-height: .95;
    display:inline;
   /* color: #204F63;*/
}

.main-banner__title span{
    color: #1986AC;
}

.main-banner__desc{
    margin-top: 25px;
    max-width: 510px;
}

.main-banner__info{
    margin-top: 45px;
    max-width: 399px;
    background: #fff;
    border-radius: 8px;
    padding: 12px;
    flex-wrap: nowrap;
    align-items: center;
    align-content: center;
}

.main-banner__info-icon{
    width: 60px;
    height: 60px;
    background: #F2F2EF;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    flex-shrink: 0;
    margin-right: 15px;
    padding: 5px;
}

.main-banner__info-icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.main-banner__btn{
    margin-top: auto;
    padding-top: 30px;
}

.main-banner__colr{
    width: 34.42%;
    flex-shrink: 0;
    position: relative;
    align-self: flex-end;
    padding-top: 30px;
}

.main-banner__photo{
    display: block;
    max-width: 100%;
}

.main-banner__doctor{
    position: absolute;
    left: -30.85%;
    bottom: 56px;

    backdrop-filter: blur(41.400001525878906px);
    background: rgba(255, 255, 255, 0.58);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 15px;
    padding: 19px;
    width: 356px;
}

.main-banner__doctor-name{
    font-weight: 500;
    font-size: 24px;
    line-height: 1.08;
    color: #204F63;
}

.main-banner__doctor-desc{
    font-weight: 500;
    font-size: 14px;
    line-height: normal;
    color: #6b6b6b;
    margin-top: 10px;
}


.certificates__bg{
    border-radius: 30px;
    padding: 50px;
    background: #D4E6EC;
}

.certificates__slider .swiper-overflow{
    overflow: clip;
    overflow-clip-margin: 20px;
}

.certificate__img{
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    padding: 38px 22px;
    aspect-ratio: 1/1.1156;
}

.certificate__img img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.certificate__name{
    font-weight: 500;
    margin-top: 15px;
}

.certificate__desc{
    font-size: 14px;
    line-height: normal;
    color: #666; /* gps recommend - было  #858585 */
    margin-top: 10px;
}


.video{
    position: relative;
    border-radius: 30px;
    overflow: hidden;
    display: block;
    width: 100%;

    margin-top: 25px;
}

.video img{
    display: block;
    width: 100%;
    aspect-ratio: 1/.5453;
    object-fit: cover;
}

.video__play{
    position: absolute;
    left: 50%;
    top: 50%;
    backdrop-filter: blur(10px);
    background: rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    width: 140px;
    height: 140px;
    border-radius: 50%;
    margin: -70px 0 0 -70px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    transition: background-color .2s linear, border-color .2s linear;
}

.video__play span{
    width: 74px;
    height: 74px;
    border-radius: 50%;
    background: #1986AC url(../images/play.svg) 50% no-repeat;
    transition: background-color .2s linear;
}

@media (any-hover: hover){
    .video:hover .video__play{
        background-color: rgba(0, 0, 0, 0.3);
        border-color: rgba(255, 255, 255, 0.4);
    }

    .video:hover .video__play span{
        background-color: #204F63;
    }
}


.main-services__bg{
    padding: 50px;
    border-radius: 30px;
    background: #204F63;
}

.main-services__grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-top: 25px;
}

.main-services__item{
    background-color: #F2F2EF;
    padding: 24px 25px;
    border-radius: 15px;
    --color1-service:#204F63;
    --color2-service:#666; /* gps recommend - было  #858585 */
    --color3-serviceh:#fff;
    --color4-serviceh:#1986AC;
    color: var(--color1-service);
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
}

.main-services__item._light{
    background-color: #D4E6EC;
}

.main-services__item._blue{
    background-color: #1986AC;
    --color1-service:#fff;
    --color2-service:#fff;
    --color3-serviceh:#204F63;
    --color4-serviceh:#204F63;
}

.main-services__item:nth-child(2),
.main-services__item:nth-child(8){
    grid-column: span 2;
}

.main-services__item:nth-child(3){
    grid-row: span 2;
}

.main-services__item.all:nth-child(2),
.main-services__item.all:nth-child(8){
    grid-column: span 1;
}
.main-services__item.all:nth-child(3){
    grid-row: span 1;
}

.main-services__icon{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    width: 100%;
    height: 52px;
}

.main-services__icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.main-services__name{
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
    margin-top: 15px;
    width: 100%;
}
.main-services__name a {color:inherit; text-decoration:none;}
.main-services__name a:hover {text-decoration:underline;}

.main-services__label{
    margin-top: 15px;
    color: var(--color2-service);
    width: 100%;
}

.main-services__price{
    margin-top: 15px;
    font-weight: 500;
    font-size: 24px;
    line-height: 1.08;
    width: 100%;
}

.main-services__bot{
    padding-top: 20px;
    margin-top: auto;
    flex-wrap: nowrap;
    gap: 10px;
    align-items: center;
    align-content: center;
}

.main-services__btn{
    border: 1px solid currentColor;
    border-radius: 12px;
    padding: 0 14px;
    flex-shrink: 0;
    font-weight: 500;
    font-size: 16px;
    line-height: 50px;
    text-decoration: none;
    text-align: center;
    color: currentColor;
    transition: background .2s linear, color .2s linear, border-color .2s linear;
}

@media (any-hover: hover){
    .main-services__btn:hover{
        background-color: var(--color1-service);
        border-color: var(--color1-service);
        color: var(--color3-serviceh);
    }
}

.main-services__more{
    width: 167px;
    text-align: center;
    font-weight: 500;
    font-size: 16px;
    line-height: 52px;
    color: currentColor;
    transition: color .2s linear;
}

.main-services__more span{
    display: inline-block;
    position: relative;
    padding-right: 26px;
}

.main-services__more svg{
    position: absolute;
    right: 0;
    top: 50%;
    display: block;
    width: 16px;
    height: 8px;
    margin-top: -4px;
    fill: currentColor;
}

@media (any-hover: hover){
    .main-services__more:hover{
        color: var(--color4-serviceh);
    }
}


.advantages__grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 25px;
}

.advantages__item{
    background-color: #F2F2EF;
    padding: 25px;
    border-radius: 15px;
    --color1-adv:#204F63;
    --color2-adv:#666; /* gps recommend - было  #858585 */
    color: var(--color1-adv);
    display: flex;
    flex-direction: column;
    min-height: 194px;
}

.advantages__item._light{
    background-color: #D4E6EC;
}

.advantages__item._blue{
    background-color: #204F63;
    --color1-adv:#fff;
    --color2-adv:rgba(255, 255, 255, 0.7);
}

.advantages__item:nth-child(5),
.advantages__item:nth-child(6){
    grid-column: span 2;
}

.advantages__item:nth-child(4){
    grid-row: span 2;
}

.advantages__top{
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 100%;
    flex-grow: 1;
    gap: 16px;
}

.advantages__name{
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
}

.advantages__icon{
    width: 83px;
    height: 78px;
    flex-shrink: 0;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.advantages__icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.advantages__desc{
    font-size: 16px;
    line-height: 1.13;
    color: var(--color2-adv);
    margin-top: 20px;
}

.advantages__list{
    margin-top: 20px;
    font-size: 16px;
    line-height: 1.13;
    color: var(--color2-adv);
    margin-left: 24px;
}



.main-calculate__bg{
    border-radius: 30px;
    background: #D4E6EC;
    padding: 50px 40px 0;
}

.main-calculate__bot{
    margin-top: 33px;
    text-align: center;
}

.main-calculate__btn{
    min-width: 242px;
    position: relative;
}

.main-calculate__img{
    margin: -43px auto 0;
    display: block;
    max-width: 680px;
    width: 100%;
    aspect-ratio: 1/.4162;
}


.interior .main-title{
    margin: 0 auto;
    max-width: 1280px;
}

.interior__slider{
    margin-top: 25px;
    border-radius: 30px;
}

.interior__img{
    display: block;
    border-radius: 30px;
    overflow: hidden;
}

.interior__img img{
    display: block;
    width: 100%;
    aspect-ratio: 1/.456;
    object-fit: cover;
}

.comment .video{
    border-radius: 15px;
    margin: 0;
}

.comment .video img{
    aspect-ratio: 1/.832;
}

.comment .video__play{
    width: 82px;
    height: 82px;
    margin: -41px 0 0 -41px;
}

.comment .video__play span{
    width: 44px;
    height: 44px;
    background-size: 20px auto;
}

.comment__img{
    border-radius: 15px;
    overflow: hidden;
    display: block;
}

.comment__img img{
    display: block;
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1/.832;
}

.comment__title{
    font-weight: 500;
    margin-top: 15px;
}

.comment__desc{
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.29;
    color: #666; /* gps recommend - было  #858585 */
}

.technology__img{
    border-radius: 15px;
    overflow: hidden;
    display: block;
}

.technology__img img{
    display: block;
    width: 100%;
    aspect-ratio: 1/.83;
    object-fit: cover;
}

.technology__bot{
    margin-top: 15px;
    flex-wrap: nowrap;
    padding: 10px;
    border-radius: 15px;
    background: #F2F2EF;
}

.technology__icon{
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    flex-shrink: 0;
    margin-right: 15px;

    width: 60px;
    height: 60px;
    background: #D4E6EC;
    border-radius: 50%;
}

.technology__icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.technology__name{
    align-self: center;

    font-weight: 500;
}


.consultation__grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-top: 25px;
}

.consultation__item{
    min-height: 213px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    background: #F2F2EF;
    padding: 25px;
    border-radius: 15px;

    --bg-cons: #204F63;
    --color1-cons: #204F63;
    --color2-cons: #fff;
    color: var(--color1-cons);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.consultation__item._light{
    background: #D4E6EC;
}

.consultation__item._blue{
    background: #204F63;
    --bg-cons: #F2F2EF;
    --color1-cons: #fff;
    --color2-cons: #204F63;
}


.consultation__number{
    width: 60px;
    line-height: 60px;

    background: var(--bg-cons);
    color: var(--color2-cons);
    font-weight: 500;
    font-size: 20px;
    text-align: center;
    border-radius: 8px;
}

.consultation__desc{
    padding-top: 20px;
    margin-top: auto;
    font-weight: 500;
}

.consultation__img{
    width: calc(100% + 50px);
    margin: -25px;

    object-fit: cover;
    display: block;
    aspect-ratio: 1/.5;
    object-position: 50% 0;
    flex-grow: 1;
}


.review-yandex{
    margin-top: 25px;
}

.review-yandex__img{
    display: block;
    width: 100%;
    aspect-ratio: 1/.3711;
    border-radius: 30px;
}


.media-about-us__slider .swiper-overflow{
    overflow: clip;
    overflow-clip-margin: 15px;
}

.media-about-us__grid{
    gap: 25px 0;
    margin-top: 25px;
    align-items: stretch;
    align-content: stretch;
    margin-left: -25px;
}

.media-about-us__item{
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    background: #fff;
    border-radius: 15px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.media-about-us__grid .media-about-us__item{
    width: calc(100%/3 - 25px);
    margin-left: 25px;
}

.media-about-us__slider  .media-about-us__item{
    height: auto;
}

.media-about-us__img{
    display: block;
}

.media-about-us__img img{
    display: block;
    width: 100%;
    aspect-ratio: 1/.4854;
    object-fit: cover;
}

.media-about-us__pad{
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.media-about-us__date span{
    display: inline-block;
    border: 1px solid rgba(58, 81, 95, 0.4);
    backdrop-filter: blur(10px);
    background: #D4E6EC;
    line-height: 22px;
    padding: 0 9px;
    font-size: 10px;
    border-radius: 11px;
}

.media-about-us__name{
    margin-top: 14px;

    font-weight: 500;
    font-size: 20px;
    line-height: 1.15;
}

.media-about-us__name a{
    color: #204F63;
    text-decoration: none;
    transition: color .2s linear;
}

@media (any-hover: hover){
    .media-about-us__name a:hover{
        color: #1986AC;
    }
}

.media-about-us__desc{
    margin-top: 10px;

    font-size: 14px;
    line-height: 1.29;
    color: #666; /* gps recommend - было  #858585 */
}

.media-about-us__bot{
    margin-top: auto;
    padding-top: 42px;
}

.media-about-us__more{
    display: inline-block;
    padding-right: 26px;
    font-weight: 500;
    font-size: 16px;
    line-height: normal;
    text-decoration: none;
    color: #204F63;
    position: relative;
    transition: color .2s linear;
}

.media-about-us__more svg{
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -4px;
    width: 16px;
    height: 8px;
    fill: currentColor;
}

@media (any-hover: hover){
    .media-about-us__more:hover{
        color: #1986AC;
    }
}


.media-contacts__grid{
    display: grid;
    grid-template-columns: calc(48.9% - 44px) 25.55% 25.55%;
    gap: 22px;
    margin-top: 30px;
}

.media-contacts__item{
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    background: #F2F2EF;
    border-radius: 15px;
    padding: 25px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.media-contacts__item._light{
    background: #D4E6EC;
}

.media-contacts__grid_inner .media-contacts__item._light{
    grid-column: span 2;
}

.media-contacts__img{
    width: calc(100% + 50px);
    margin: -25px;

    object-fit: cover;
    display: block;
    aspect-ratio: 1/.725;
    object-position: 50% 0;
    flex-grow: 1;
}

.media-contacts__icon{
    height: 60px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.media-contacts__icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.media-contacts__box{
    padding-top: 20px;
    margin-top: auto;
}

.media-contacts__metro{
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}

.media-contacts__metro-icon{
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    flex-shrink: 0;
    margin-right: 12px;
    width: 32px;
    height: 32px;
}

.media-contacts__metro-icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.media-contacts__metro-name{
    font-size: 16px;
    line-height: normal;
}

.media-contacts__adres{
    margin-top: 10px;
}

.media-contacts__time{
    margin-top: 10px;
    color: #1986AC;
}

.media-contacts__map{
    height: 458px;
    margin-top: 22px;
    border-radius: 20px;
    overflow: hidden;

    filter: grayscale(100%);
}


.section-case__item{
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
    /*height: auto;*/
     width: 100%;
    
}

.section-case__coll{
    width: calc(50% - 26px);
    padding: 25px;
    border-radius: 20px;
    background: #D4E6EC;
    display: flex;
    flex-direction: column;
   
}

.section-case__title{
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
}

.section-case__title a{
    color:inherit;
    text-decoration:none;
}
.section-case__title a:hover {
    border-bottom: 1px solid #000;
}     

.section-case__desc{
    margin-top: 15px;
    font-size: 16px;
    line-height: 1.3;
    flex: 1; /* Чтобы занимал все свободное место */
    min-height: 60px; /* Минимальная высота даже если пустой */
}

.section-case__desc > :last-child{
    margin-bottom: 0 !important;
}

.section-case__desc p{
    margin-bottom: 18px;
}

.section-case__doctor{
    padding: 30px 0 0;
    margin: auto 0;
    flex-wrap: nowrap;
}

.section-case__doctor-photo{
    flex-shrink: 0;
    margin-right: 15px;
    width: 65px;
    height: 65px;
}

.section-case__doctor-photo img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.section-case__doctor-box{
    align-self: center;
}

.section-case__doctor-name{
    font-weight: 500;
}

.section-case__doctor-name a{
	color: currentColor;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border .2s linear;
}

@media (any-hover: hover){
	.section-case__doctor-name a:hover{
		border-bottom-color: currentColor;
	}
}

.section-case__doctor-position{
    font-size: 14px;
    line-height: 1.29;
    color: #666; /* gps recommend - было  #858585 */
    margin-top: 10px;
}

.section-case__more{
    display: inline-block;
    padding-right: 26px;
    font-weight: 500;
    font-size: 16px;
    line-height: normal;
    text-decoration: none;
    color: #204F63;
    position: relative;
    transition: color .2s linear;
}

.section-case__more svg{
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -4px;
    width: 16px;
    height: 8px;
    fill: currentColor;
}

@media (any-hover: hover){
    .section-case__more:hover{
        color: #1986AC;
    }
}

.section-case__colr{
    width: calc(50% + 2px);
}

.before-after{
    overflow: hidden;
    border-radius: 20px;
}

.before-after img{
    display: block;
    width: 100%;
    aspect-ratio: 1/.6745;
    object-fit: cover;
}


.specialists__slider .swiper-overflow{
    overflow: clip;
    overflow-clip-margin: 15px;
}

.specialist{
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    border: 1px solid #F2F2EF;
    background: #fff;
    border-radius: 15px;
    padding: 6px 16px 19px;
    display: flex;
    flex-direction: column;
	position: relative;
}

.specialists__slider .specialist{
    height: auto;
}

.specialist__photo{
    position: relative;
    overflow: hidden;
    width: 100%;
    margin-bottom: -5px;
    display: block; /* gps recomend */
    padding: 5px; /* gps recomend  увеличиваем область */
}

.specialist__photo:before{
    content: '';
    position: absolute;
    left: -40px;
    bottom: -52px;
    width: calc(100% + 80px);
    height: 100px;
    filter: blur(17px);
    background: #fff;
    z-index: 1;
}

.specialist__photo img{
    display: block;
    width: 100%;
    aspect-ratio: 1/1.05;
    object-fit: cover;
}

.specialist__play{
    position: absolute;
    right: 19px;
    top: 19px;
    backdrop-filter: blur(10px);
    background: rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    transition: background-color .2s linear, border-color .2s linear;
}

.specialist__play span{
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #1986AC url(../images/play.svg) 50%/12px auto no-repeat;
    transition: background-color .2s linear;
}



.specialists__grid {
    gap: 25px 0;
    margin-top: 25px;
    align-items: stretch;
    align-content: stretch;
    width:100%;
    /*margin-left: -25px;*/
}

.specialists__grid  .specialist{
    width: calc(100%/4 - 25px);
    margin-left: 25px;
}


.section-case__grid {
    gap: 25px 0;
    margin-top: 25px;
    align-items: stretch;
    align-content: stretch;
}

@media (any-hover: hover){
    .specialist__play:hover{
        background-color: rgba(0, 0, 0, 0.3);
        border-color: rgba(255, 255, 255, 0.4);
    }

    .specialist__play:hover span{
        background-color: #204F63;
    }
}

.specialist__experience{
    position: absolute;
    left: 3px;
    bottom: 17px;
    backdrop-filter: blur(10px);
    background: #D4E6EC;
    border: 1px solid #204F63;

    border-radius: 12px;
    padding: 0 9px;
    color: #204F63;
    text-decoration: none;
    font-weight: 500;
    font-size: 10px;
    line-height: 22px;
    z-index: 2;
}

.specialist__pad{
    padding-left: 3px;
    padding-right: 3px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1;
}

.specialist__name{
    width: 100%;
    font-weight: 500;
    position: relative;
    padding: 10px 0 5px; /* gps recommend */
}

.specialist__name a{
    color: #204F63;
    text-decoration: none;
    transition: color .2s linear;
}

@media (any-hover: hover){
    .specialist__name a:hover{
        color: #1986AC;
    }
}

.specialist__position{
    margin-top: 10px;
    font-size: 14px;
    line-height: normal;
    color: #666; /* gps recommend - было  #858585 */
}

.specialist__bot{
    margin-top: auto;
    width: 100%;
    padding-top: 16px; /*26 */
    
}

.specialist__btn-bord{
    line-height: 50px;
    font-size: 14px;
    width: 100%;
    
    display: block; /* gps recomend */
 /*   padding: 12px 20px; /* gps recomend увеличиваем кнопку */
    min-height: 44px; /* gps recomend минимальная высота для касания */
    min-width: 48px; /* gps recomend */
}


.top-services .main-title {
    margin: 0 auto;
    max-width: 1280px;
}

.top-services__slider{
	margin-top: 25px;
}

.top-service{
    background: #F2F2EF;
    border-radius: 30px;
    padding: 48px 40px 54px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
}

.top-service__coll{
    width: 52.73%;
    padding-top: 6px;
    padding-left: 68px;
}

.top-service__coll.inner{  padding-left: 20px; }

.top-service__top{
    font-weight: 500;
    font-size: 14px;
    line-height: 19px;
    margin-bottom: 35px;
}

.top-service__top span{
    padding: 9px 13px;
    background: #fff;
    border-radius: 50px;
    display: inline-block;
}

.top-service__desc{
    margin-top: 15px;
}

.top-service__desc > :last-child{
    margin-bottom: 0 !important;
}

.top-service__desc p{
    margin-bottom: 18px;
}

.top-service__prices{
    align-items: flex-end;
    align-content: flex-end;
    gap: 6px 12px;
    margin-top: 25px;
}

.top-service__price{
    font-weight: 500;
    font-size: 40px;
    line-height: 1;
}

.top-service__oldprice{
    font-weight: 500;
    font-size: 24px;
    text-decoration: line-through;
    color: rgba(11, 50, 67, 0.4);
    line-height: 1;
    padding-bottom: 4px;
}

.top-service__btn{
    margin-top: 25px;
}

.top-service__btn .btn-bord{
    line-height: 48px;
    font-size: 16px;
    min-width: 172px;
}

.top-service__bot{
    border-radius: 12px;
    padding: 20px;
    background: #fff;
    margin-top: 35px;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
    gap: 25px;
}

.top-service__bot-coll{
    flex-shrink: 0;
    width: 305px;
    align-self: center;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}

.top-service__bot-icon{
    width: 38px;
    height: 46px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    flex-shrink: 0;
    margin-right: 15px;
}

.top-service__bot-icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.top-service__bot-title{
    font-size: 12px;
    line-height: 1.33;
    color: #96a5aa;
}

.top-service__bot-time{
    margin-top: 10px;
    font-weight: 500;
}

.top-service__bot-btn{
    width: 234px;
}

.top-service__bot-btn .btn-blue{
    padding: 0;
    width: 100%;
}

.top-service__colr{
    width: 47.27%;
}

.top-service__img{
    position: relative;
    /*aspect-ratio: 1/.9025;*/
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    align-content: flex-end;
    flex-wrap: wrap;
}

.top-service__img img{
    display: block;
    max-width: 100%;
    max-height: 100%;
    height: 100%;
}

.top-service__img img.loaded{
    height: auto;
}

.top-service__time{
    position: absolute;
    bottom: 84px;
    right: 40px;
    width: 165px;
    padding: 6px 15px;
    flex-wrap: nowrap;
    background: #fff;
    border-radius: 50px;
    align-items: center;
    align-content: center;
}

.top-service__time-circle{
    width: 34px;
    height: 34px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    flex-shrink: 0;
    margin-right: 10px;
    padding: 7px;
}

.top-service__time-circle::before{
    content: '';
    position: absolute;
    left: .2px;
    top: .2px;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3.6px solid #1986AC;
}

.top-service__time-circle svg{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    stroke: #ECECEC;
    stroke-width: 4px;
    stroke-linecap: round;
    stroke-dasharray: 182px;
    transform: rotate(90deg);
}

.top-service__time-circle img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.top-service__time-text{
    font-weight: 500;
    font-size: 18px;
    line-height: 1.06;
}


.prices__bg{
    background-color: #F2F2EF;
    padding: 40px;
    border-radius: 30px;
}

.prices__grid{
    margin-top: 45px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.prices__item{
    min-height: 243px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    border-radius: 15px;
    background: #fff;
    padding: 25px;
    position: relative;
    overflow: hidden;
    
    --prices_bg: #204F63;
    --prices_color1: #204F63;
    --prices_color2: #666; /* gps recommend - было  #858585 */
    --prices_color3: #fff;
}

.prices__item._light{
    background-color: #D4E6EC;
}

.prices__item._dark{
    background-color: #204F63;
    
    --prices_bg: #fff;
    --prices_color1: #fff;
    --prices_color2: #F2F2EF;
    --prices_color3: #204F63;
}

.prices__item-img{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.prices__check{
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    background: var(--prices_bg);
    color: var(--prices_color3);
    border-radius: 10px;
    margin-bottom: 25px;
}

.prices__check svg{
    display: block;
    width: 22px;
    height: 22px;
    fill: currentColor;
}

.prices__name{
    font-weight: 500;
    font-size: 18px;
    color: var(--prices_color1);
}

.prices__desc{
    margin-top: 5px;
    font-size: 12px;
    line-height: 1.33;
    color: var(--prices_color2);
}


.price-services__bg{
    padding: 40px;
    border-radius: 30px;
    background: #F2F2EF;
}

.price-services .btn-wrap{
    margin-top: 25px;
}

.price-services .btn-wrap .btn-light{
    padding-left: 34px;
    padding-right: 34px;
}

.cats_marg{
    margin-top: 25px;
}

.cats{
    gap: 10px;
}

.cats__item{
    min-height: 49px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    padding: 6px 16px;
    background: #D4E6EC;
    border-radius: 8px;
    font-weight: 500;
    font-size: 14px;
    line-height: normal;
    color: #204F63;
    text-decoration: none;
    transition: background .2s linear, color .2s linear;
}

@media (any-hover: hover){
    .cats__item:hover{
        background: #204F63;
        color: #fff;
    }
}

.cats__item._active{
    background: #204F63;
    color: #fff;
}

.cats__item._hide{
    display: none;
}

.cats__item._hide._show{
    display: flex;
}


.stickers{
    gap: 10px;
}

.table-price .stickers{
    position: absolute;
    left: 0;
    top: 9px;
}

.table-price ._hide,
.table-price ._no{
    display: none;
}

.table-price ._no._show{
    display: table-row;
}

.price-services__more span + span{
    display: none;
}

.price-services__more._active span{
    display: none;
}

.price-services__more._active span + span{
    display: inline;
}

.sticker{
    padding: 0 10px;
    font-weight: 500;
    font-size: 10px;
    line-height: 23px;
    color: #fff;
    border-radius: 50px;
    background: #ED8E8E;
}

.table-price{
    width: 100%;
    border-collapse: collapse;
    margin-top: 5px;
}

.table-price th{
    padding-top: 20px;
    padding-bottom: 19px;

    font-weight: 500;
    font-size: 32px;
    line-height: 1;
    text-align: left;
    border-bottom: 1px solid #D4E6EC;
}

.table-price td{
    padding-left: 60px;
    padding-top: 9px;
    padding-bottom: 9px;
    border-top: 1px solid #D4E6EC;
    border-bottom: 1px solid #D4E6EC;
    position: relative;
}

.table-price td:first-child{
    padding-left: 0;
}

.table-price .tr_rel td{
    padding-top: 37px;
}

.table-price__info-flex{
    flex-wrap: nowrap;
    gap: 5px;
}

.table-price__name{
    font-size: 16px;
    line-height: normal;
}

.tooltip{
    width: 16px;
    flex-shrink: 0;
    display: inline-block;
    position: relative;
}

.table-price .tooltip{
    margin-top: 2.5px;
}

.tooltip__icon{
    width: 100%;
    aspect-ratio: 1;
    color: #1986AC;
    transition: color .2s linear;
}

.tooltip__icon svg{
    display: block;
    width: 100%;
    height: 100%;
    fill: currentColor;
}

@media (any-hover: hover){
    .tooltip__icon:hover{
        color: #204F63;
    }
}

.tooltip__wrap{
    position: absolute;
    left: 8px;
    top: calc(100% + 4px);
    border: 1px solid #F2F2EF;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);

    width: 240px;
    padding: 14px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 50;
}

.tooltip:hover .tooltip__wrap{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.tooltip__list{
    font-size: 12px;
    line-height: 1.33;
}

.tooltip__list ul {
    list-style: none;
}

.tooltip__list li{
    padding-left: 19px;
    position: relative;
    display: block;
}

.tooltip__list li + li{
    margin-top: 10px;
}

.tooltip__list li::before{
    content: '';
    position: absolute;
    left: 2px;
    top: 1.5px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #D4E6EC;
}

.table-price__btn .btn-light{
    font-size: 12px;
    line-height: 31px;
    border-radius: 4px;
    padding: 0 16px;
}

.table-price__prices-flex{
    gap: 18px;
    justify-content: flex-end;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}

.table-price__oldprice{
    font-weight: 500;
    font-size: 16px;
    text-decoration: line-through;
    text-align: right;
    color: rgba(133, 133, 133, 0.6);
    white-space: nowrap;
    flex-shrink: 0;
}

.table-price__price{
    font-weight: 500;
    font-size: 20px;
    line-height: 1.3;
    text-align: right;
    color: #1986AC;
    white-space: nowrap;
    flex-shrink: 0;
}


.review__bg{
    margin-top: 25px;
    padding: 25px 132px 25px 25px;
    position: relative;
    overflow: hidden;
    background: #F2F2EF;
    border-radius: 30px;
}

.review__bg::before{
    content: '';
    position: absolute;
    top: 27px;
    right: 28px;
    width: 176px;
    height: 126px;
    background: url(../images/quote.svg) 50%/contain no-repeat;
}

.review__wrap{
    position: relative;
}

.review__title{
    margin-bottom: 15px;
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
}

.review__desc{
    max-width: 688px;
}

.review__bot{
    margin-top: 45px;
}

.review__user{
    font-weight: 500;
}

.review__info{
    margin-top: 5px;
    color: #666; /* gps recommend - было  #858585 */
}


.stages-work_marg
{
	margin-top: 25px;
}

.stages-work__bg{
    padding: 50px;
    border-radius: 40px;
    background: #F2F2EF;
    gap: 25px;
    justify-content: space-between;
    flex-wrap: nowrap;
}

.stages-work__bg-green
{
	background: #D4E6EC;
	border-radius: 30px;
	padding: 25px;
}

.stages-work__colr{
    width: 67.47%;
    flex-shrink: 0;
}

.stages-work__item{
    padding-bottom: 45px;
    gap: 25px;
    flex-wrap: nowrap;
    position: relative;
}

.stages-work__item::before{
    content: '';
    position: absolute;
    left: 24.5px;
    top: 0;
    width: 1px;
    height: 100%;
    background: rgba(25, 134, 172, 0.5);
}

.stages-work__item:last-child{
    padding-bottom: 0;
}

.stages-work__item:last-child:before{
    display: none;
}

.stages-work__number{
    width: 50px;
    line-height: 50px;
    text-align: center;
    color: #fff;
    font-weight: 500;
    font-size: 24px;
    border-radius: 10px;
    background: #1986AC;
    flex-shrink: 0;
    position: relative;
}

.stages-work__box{
    width: 100%;
}

.stages-work__title{
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
}

.stages-work__desc{
    margin-top: 10px;
    color: #666; /* gps recommend - было  #858585 */
    line-height: normal;
}

.stages-work__desc-medium
{
	width: 100%;
	align-self: center;
}

.stages-work__img{
    margin-top: 25px;
}

.stages-work__img img{
    display: block;
    border-radius: 15px;
    width: 187px;
    aspect-ratio: 1/.733;
}


.service-info__flex{
    flex-wrap: nowrap;
    gap: 25px;
}

.service-info__coll{
    width: 100%;
}

.service-info__colr{
    width: 47.58%;
    flex-shrink: 0;
}


.service-info__slider{
    border-radius: 30px;
}

.service-info__img{
    width: 100%;
    display: block;
    text-decoration: none;
    aspect-ratio: 1/.6848;
    border-radius: 30px;
    overflow: hidden;
}

.service-info__img img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.service-info__slider .slider-button-prev{
    left: 25px;
}

.service-info__slider .slider-button-next{
    right: 25px;
}

.service-thumbs{
    margin-top: 10px;
}

.service-info__btn{
    margin-top: 25px;
    width: 100%;
    padding: 0;
}

.service-thumbs__img{
    display: block;
    width: 100%;
    aspect-ratio: 1/.773;
    position: relative;
}

.service-thumbs__img::after{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    border: 1px solid transparent;
    transition: border .2s linear;
}

.swiper-slide-thumb-active .service-thumbs__img::after{
    border-color: #1986AC;
}

.service-thumbs__img img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.service-thumbs .swiper-slide{
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
}

.service-thumbs .slider-button-prev{
    left: 10px;
}

.service-thumbs .slider-button-next{
    right: 10px;
}


.service-info__items{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

.service-info__item{
    display: flex;
    flex-direction: column;
    padding: 15px;
    border-radius: 15px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    background: #fff;
}

.service-info__item-dot{
    width: 15px;
    height: 15px;
    background: #204F63;
    border-radius: 50%;
    margin-bottom: 20px;
}

.service-info__item-title{
    font-weight: 500;
    font-size: 24px;
    line-height: 1.08;
    margin-bottom: auto;
}

.service-info__item-desc{
    margin-top: 20px;
    font-size: 16px;
    line-height: normal;
    color: #666; /* gps recommend - было  #858585 */
}

.service-info__info{
    padding: 35px;
    background: #F2F2EF;
    border-radius: 30px;
    margin-top: 25px;
}

.service-info__info-item + .service-info__info-item{
    margin-top: 25px;
}

.service-info__info-icon{
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #DB584C;
    color: #fff;
    margin-bottom: 25px;
}

.service-info__info-icon._green{
    background-color: #87bfa5;
}

.service-info__info-icon svg{
    width: 22px;
    height: 22px;
    fill: currentColor;
}

.service-info__info-desc{
    margin-top: 10px;
    line-height: normal;
    color: #666; /* gps recommend - было  #858585 */
}


.service-info__doctor{
    margin-top: 25px;
    padding: 35px;
    border-radius: 30px;
    background: #D4E6EC;
}

.rvice-info__doctor-flex{
    margin-top: 15px;
    flex-wrap: nowrap;
}
.text-block__coll .rvice-info__doctor-flex{
    margin-top: 0;
}
.text-block__coll .service-info__doctor{
    margin-top: 0px;
    margin-bottom: 25px;
    padding: 20px 30px;
    border-radius: 30px;
    background: #D4E6EC;
}

a.rvice-info__doctor-photo {border-bottom:0;}

.rvice-info__doctor-photo{
    flex-shrink: 0;
    margin-right: 10px;
    width: 73px;
    height: 73px;
}

.rvice-info__doctor-photo img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}


.rvice-info__doctor-box .specialist__experience {
     position: inherit; 
     left: 0; 
     bottom: 0;
     backdrop-filter: inherit;
     background: #f2f2f2;
     border: 1px solid #204F63; 
     border-radius: 12px; 
     width:fit-content;
     padding: 4px 9px; 
     margin-top:10px;
     color: #204F63; 
     text-decoration: none;
     font-weight: 400; 
     font-size: 16px;
     line-height: 25px; 
     z-index: 2;
}

.rvice-info__doctor-box .service-info__service-link {
    border-bottom:0;
    border-radius: 12px; 
    padding: 4px 9px; 
    line-height:20px;
}
.rvice-info__doctor-box .service-info__service-link span {
    border-bottom: 0;
}

.rvice-info__doctor-box .service-info__service-flex {
    margin-top: 10px;
    gap: 10px;
}

.rvice-info__doctor-box{
    align-self: center;
}

.rvice-info__doctor-name{
    font-size: 24px;
    line-height: 1.08;
    font-weight: 500;
}

.rvice-info__doctor-name a{
	color: currentColor;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border .2s linear;
}

@media (any-hover: hover){
	.rvice-info__doctor-name a:hover{
		border-bottom-color: currentColor;
	}
}

.rvice-info__doctor-position{
    font-size: 16px;
    color: #666; /* gps recommend - было  #858585 */
    margin-top: 5px;
    line-height: normal;
}


.service-info__service{
    margin-top: 25px;
    padding: 35px;
    border-radius: 30px;
    background: #D4E6EC;
}

.service-info__service-flex{
    margin-top: 15px;
    gap: 15px;
}

.service-info__service-link{
    padding: 0 10px;
    line-height: 35px;
    background: #F2F2EF;
    border-radius: 50px;
    text-decoration: none;
    color: #204F63;
    font-size: 16px;
}

.service-info__service-link span{
    line-height: normal;
   /* border-bottom: 1px solid #B3C2C5;
    transition: border .2s linear;*/
}
.service-info__service-link a {
    color: #204F63;
    border-bottom: 1px solid rgba(32, 79, 99, .3);
    text-decoration: none;
}

@media (any-hover: hover){
    .service-info__service-link:hover span{
        border-bottom-color: transparent;
    }
}

.service-top__flex{
    gap: 30px;
    align-items: stretch;
    align-content: stretch;
}

.service-top__coll{
    width: calc(50% - 30px);
    background: #D4E6EC;
    border-radius: 30px;
    padding: 40px;
}

.service-top .page-title{
    max-width: 535px;
}

.service-top_inner .page-title{
    max-width: none;
}

.service-top__desc{

    max-width: 535px;
    margin-top: 20px;
    line-height: normal;
}

.service-top__prices{
    margin-top: 35px;
    align-items: flex-end;
    align-content: flex-end;
    gap: 6px 14px;
}

.service-top__price{
    font-weight: 500;
    font-size: 40px;
    line-height: 1;
}

.service-top__oldprice{
    font-size: 24px;
    text-decoration: line-through;
    line-height: 1.3;
    color: rgba(11, 50, 67, 0.4);
}

.service-top__bot{
    flex-wrap: nowrap;
    align-items: center;
    align-content: center;
    margin-top: 34px;
    border-radius: 12px;
    padding: 20px;
    background: #fff;
    gap: 20px;
}

.service-top__bot-coll{
    flex-wrap: nowrap;
    width: 100%;
    gap: 15px;
    align-items: center;
    align-content: center;
}

.service-top__icon{
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    width: 38px;
    height: 46px;
    flex-shrink: 0;
}

.service-top__icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.service-top__info{
    font-size: 12px;
    line-height: 1.33;
    color: #96a5aa;
}

.service-top__time{
    line-height: 1.17;
    color: #0b3243;
    margin-top: 10px;
}

.service-top__bot-colr{
    width: 199px;
    flex-shrink: 0;
}

.service-top__btn{
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}

.service-top__box{
    margin-top: 35px;
    display: inline-block;
    border-radius: 10px;
    padding: 15px;
    background: #fff;
}

.service-top__box-title{
    font-weight: 500;
    font-size: 14px;
    line-height: 1.5;
    color: rgba(133, 133, 133, 0.6);
}

.service-top__box-price{
    font-weight: 500;
    font-size: 35px;
    margin-top: 5px;
    line-height: .8;
}

.service-top__list{
    margin-top: 35px;
}

ul.service-top__list, .service-top__list ul{
    margin-top: 35px;
    list-style: none;
}

ul.service-top__list li, .service-top__list ul li{
    line-height: 1.33;
    position: relative;
    padding-left: 30px;
}

ul.service-top__list li + li, .service-top__list ul li + li{
    margin-top: 23px;
}

ul.service-top__list li::before, .service-top__list ul li::before{
    content: '';
    position: absolute;
    left: 2px;
    top: 3px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #1986AC;
}

.service-top__wrap{
    margin-top: 35px;
}

.service-top__colr{
    width: 50%;
}

.service-top__img{
    display: block;
    width: 100%;
    height: auto;
    min-height: 100%;
    /*aspect-ratio: 1/0.809;*/
    object-fit: cover;
    border-radius: 30px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
}


.content_marg{
    margin-top: 40px;
}

.content__flex{
    flex-wrap: nowrap;
    gap: 35px;
    align-items: stretch;
    align-content: stretch;
}

.content__coll{
    width: calc(76.56% - 35px);
}

.content__colr{
    width: 23.44%;
    flex-shrink: 0;
}

.aside{
    position: sticky;
    left: 0;
    top: 10px;
    width: 100%;

    border: 1px solid #F2F2EF;
    border-radius: 15px;
    padding: 20px 20px 0;

    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
    background: #FFFFFF;
}

.aside__title{
    margin-bottom: 18px;
    font-weight: 500;
    font-size: 24px;
    line-height: 1.08;
}

.aside__list{
    max-height: 600px;
    overflow: hidden;
    overflow-y: auto;
    padding-right: 20px;
    padding-bottom: 20px;
}

.aside__list::-webkit-scrollbar
{
    width: 4px;
    height: 4px;

    background-color: transparent;
    border-radius: 4px;
}

.aside__list::-webkit-scrollbar-thumb
{
    background-color: #1986AC;
    border-radius: 4px;
}

.aside__item + .aside__item{
    margin-top: 15px;
}

.aside__link{
    width: 100%;
    font-size: 16px;
    color: #666; /* gps recommend - было  #858585 */
    text-align: left;
    max-width: 208px;
    transition: color .2s linear;
}
.aside.art{padding: 0px;}
.aside.art .aside__list {padding: 20px;}
.aside.art .aside__link{
    width: 100%;
    max-width: 100%;
}
.aside.art .aside__list ul {margin:0;}
.aside.art .aside__list li {
	position: relative;
	padding-left: 25px; 
	margin-bottom: 5px; 
	cursor:pointer;
}
.aside.art .aside__list li:last-child {
	margin-bottom: 0;
}
.text-block .aside.art .aside__list ul li::before {
	background:none;
	border-radius:none;
	content: "\2014"; /* Длинное тире — */
	position: absolute;
	left: 0;
	top: 0;
	color: inherit;
}


@media (max-width: 768px) {
    .aside.art .aside__list {padding: 20px;}
    .aside.art .aside__list li {
	padding-left: 22px; 
	margin-bottom: 0px; 
	}
}
    
@media (any-hover: hover){
    .aside__link:hover{
        color: #1986AC;
    }
}
.aside__link.active{ 
	color: #1986AC; 
}


.what-this__flex{
    justify-content: space-between;
}

.what-this__coll{
    width: 57%;
    max-width: 532px;
}

.what-this__list, .what-this__coll ul{
    margin-top: 25px;
    list-style: none;
}

.what-this__list li, .what-this__coll ul li{
    position: relative;
    padding-left: 30px;
    line-height: 1.33;
}

.what-this__list li + li, .what-this__coll ul li + li{
    margin-top: 25px;
}

.what-this__list li::before, .what-this__coll ul li::before{
    content: '';
    position: absolute;
    left: 2px;
    top: 3px;
    width: 16px;
    height: 16px;
    border-radius: 50px;
    background: #1986AC;
}

.what-this__colr{
    width: calc(43% - 20px);
    max-width: 378px;
}

.what-this__img{
    background: #D4E6EC;
    border-radius: 30px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
    aspect-ratio: 1/.86;
    padding: 0 43px;
}

.what-this__img img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}


.inner-advantages__grid{
    margin-top: 25px;
    gap: 17px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}


.inner-advantages__item{
    padding: 25px;
    background: #F2F2EF;
    border-radius: 20px;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: nowrap;
    gap: 14px;
    min-height: 194px;

    --color_adv_t: #204F63;
    --color_adv_d: #666; /* gps recommend - было  #858585 */
}

.inner-advantages__item_blue{
    background-color: #204F63;

    --color_adv_t: #fff;
    --color_adv_d: rgba(255,255,255,.7);
}

.inner-advantages__box{
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.inner-advantages__title{
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
    color: var(--color_adv_t);
    width:100%;
}

.inner-advantages__desc{
    margin-top: auto;

    font-size: 16px;
    line-height: 1.13;
    color: var(--color_adv_d);
}

.inner-advantages__icon{
    flex-shrink: 0;
    width: 86px;
    height: 85px;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.inner-advantages__icon img{
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.content__coll .section-case__coll {
    width: calc(50% - 22px);
}

/* .content__coll .section-case__title{
    font-size: 23px;
    line-height: 1;
}

.content__coll .section-case__desc{
    margin-top: 13px;
    font-size: 11px;
    line-height: 1.13;
}

.content__coll .section-case__more{
    font-size: 11px;
    padding-right: 20px;
}

.content__coll .section-case__more svg {
    margin-top: -3px;
    width: 12px;
    height: 6px;
}

.content__coll .section-case__doctor-photo{
    width: 47px;
    height: 47px;
    margin-right: 11px;
}

.content__coll .section-case__doctor-name{
    font-size: 13px;
}

.content__coll .section-case__doctor-position{
    font-size: 10px;
    margin-top: 8px;
}

.content__coll .section-case__doctor{
    padding: 15px 0;
}

.content__coll .section-case .btn-wrap{
    margin-top: 25px;
    text-align: left;
} */


.inner-service__item.swiper-slide{
    width: 360px;
}

.inner-service__item{
    border-radius: 20px;
    background: #F2F2EF;
    padding: 25px 23px;
    display: flex;
    flex-direction: column;
}

.inner-service__name{
    font-weight: 500;
    font-size: 24px;
    line-height: 1.08;
    color: #1986AC;
    width: 100%;
}

.inner-service__name a{
    color: #1986AC;
    text-decoration: none;
    border-bottom: 1px solid currentColor;
    transition: border .2s linear;
}

@media (any-hover: hover){
    .inner-service__name a:hover{
        border-bottom-color: transparent;
    }
}

.inner-service__desc{
    margin-top: 10px;
    font-size: 16px;
    line-height: normal;
    width: 100%;
}

.inner-service__prices{
    margin-top: 10px;
}

.inner-service__prices-title{
    font-size: 14px;
    line-height: normal;
    color: #666; /* gps recommend - было  #858585 */
}

.inner-service__price{
    font-weight: 500;
    font-size: 24px;
    line-height: 1.08;
    color: #204F63;
    margin-top: 15px;
}

.inner-service__bot{
    width: 100%;
    padding-top: 10px;
    margin-top: auto;
    flex-wrap: nowrap;
    gap: 10px;
    align-items: center;
    align-content: center;
}

.inner-service__btn{
    border: 1px solid currentColor;
    border-radius: 12px;
    padding: 0 14px;
    flex-shrink: 0;
    font-weight: 500;
    font-size: 16px;
    line-height: 50px;
    text-decoration: none;
    text-align: center;
    color: currentColor;
    transition: background .2s linear, color .2s linear, border-color .2s linear;
}

@media (any-hover: hover){
    .inner-service__btn:hover{
        background-color: #204F63;
        border-color: #204F63;
        color: #fff;
    }
}

.inner-service__more{
    width: 104px;
    flex-grow: 1;
    text-align: center;
    font-weight: 500;
    font-size: 16px;
    line-height: 52px;
    color: currentColor;
    transition: color .2s linear;
}

.inner-service__more span{
    display: inline-block;
    position: relative;
    padding-right: 26px;
}

.inner-service__more svg{
    position: absolute;
    right: 0;
    top: 50%;
    display: block;
    width: 16px;
    height: 8px;
    margin-top: -4px;
    fill: currentColor;
}

@media (any-hover: hover){
    .inner-service__more:hover{
        color: #1986AC;
    }
}

.inner-service__bot{
    margin-top: 25px;
    text-align: center;
}

.inner-service__bot .btn-light{
    padding: 0 16px;
}


.similar-services__flex{
    margin-top: 25px;
    gap: 17px;
    justify-content: center;
}

.similar-services__item{
    line-height: 35px;
    padding: 0 10px;
    border-radius: 30px;
    background: #F2F2EF;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    color: #204F63;
}

.similar-services__item span{
    display: inline-block;
    line-height: normal;
    border-bottom: 1px solid #B3C2C5;
    transition: border .2s linear;
}

@media (any-hover: hover){
    .similar-services__item:hover span{
        border-bottom-color: transparent;
    }
}

.similar-services__bot{
    margin-top: 25px;
    text-align: center;
}


.make-appointment_marg{
    margin-top: 120px;
}

.make-appointment__bg{
    background: #D4E6EC;
    border-radius: 30px;
    justify-content: space-between;
    align-items: flex-end;
    align-content: flex-end;
}

.make-appointment__coll{
    width: 60%;
    padding: 50px;
    align-self: flex-start;
}

.make-appointment__box{
    max-width: 474px;
}

.make-appointment__desc{
    margin-top: 25px;
}

.make-appointment__bot{
    margin-top: 55px;
}

.make-appointment__btn{
    min-width: 243px;
}

.make-appointment__colr{
    width: 40%;
    max-width: 450px;
    aspect-ratio: 1/1.2223;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
    margin-top: -6.2%;
}

.make-appointment__colr img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 0;
    border-radius: 0 30px 30px 0;
}


.inner-img__bg{
    box-shadow: 0 4px 11px 0 rgba(0, 0, 0, 0.1);
    background: #fff;

    border-bottom: 10px solid #e31e24;
    border-radius: 15px;
    padding: 25px 25px 15px;
}

.inner-img__text{
    max-width: 945px;
}

.inner-img__text p{
    margin-bottom: 25px;
}

.inner-img__text b, .inner-img__text strong{
    font-weight: 900;
    color: #e31e24;
}

.inner-img__text > :last-child{
    margin-bottom: 0 !important;
}


.pagination{
    margin-top: 35px;
    justify-content: center;
    gap: 5px;
}

.pagination a{
    display: block;
    line-height: 28px;
    padding: 0 4px;
    text-align: center;
    font-size: 14px;
    color: #204F63;
    text-decoration: none;
    border-radius: 3px;
    min-width: 28px;
    transition: color .2s linear, background .2s linear;
}

@media (any-hover: hover){
    .pagination a:hover{
        color: #fff;
        background: #1986AC;
    }
}

.pagination a.active{
    color: #fff;
    background: #1986AC;
}

.pagination__link + .pagination__link{
    margin-left: 10px;
}


.table-slider .swiper-slide{
    width: auto;
    min-width: 100%;
    height: auto;
}

.main-table, .text-block table {
    width: 100%;
    border-collapse: collapse;
    margin: 30px 0 35px;
}

.main-table th, .text-block table th{
    border-bottom: 1px solid #eaecf0;
    padding: 11px 0 11px 23px;
    background: #fcfcfd;

    font-weight: 500;
   /*font-size: 12px;
    line-height: 1.4;*/
    color: #000;
    text-align: left;
    background:#D4E6EC;
}

.main-table .th-title, .text-block table th.th-title{
    padding-top: 20px;
    padding-bottom: 20px;
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
    background: transparent;
}

.main-table td, .text-block table td{
    border-bottom: 1px solid #babcb0;
    padding: 11px 0 11px 23px;

   /* font-size: 14px;
    line-height: 1.43;*/
    color: #204F63;
}

.main-table td span, .text-block table td span{
    color: #101828;
}

.info-sticker span{
    display: inline-block;
    vertical-align: top;
    font-size: 12px;
    line-height: 22px;
    color: #037847 !important;
    padding: 0 8px 0 20px;
    border-radius: 16px;
    position: relative;
    background-color: #ECFDF3;
}

.info-sticker span::before{
    content: '';
    position: absolute;
    left: 7px;
    top: 50%;
    width: 6px;
    height: 6px;
    margin-top: -3px;
    border-radius: 50%;
    background-color: #14BA6D;
}

.info-sticker_inactive span{
    color: #364254 !important;
    background-color: #F2F4F7;
}

.info-sticker_inactive span::before{
    background-color: #6C778B;
}

.main-table_th{
    table-layout: fixed;
    width: 43px;
}

.main-table_td{
    table-layout: fixed;
    width: 43px;
}

.button-up
{
    position: fixed;
    z-index: 120;
    left: 50%;
    margin-left: 700px;
    bottom: 120px;
    display: none;
}

.button-up.hide{
	display: none !important;
}

.button-up__btn
{
    position: relative;

    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;

    width: 50px;
    height: 50px;
    color: #fff;

    transition: .2s linear;

    border-radius: 50%;
    background: #204F63;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.05);
}

.button-up__btn:hover
{
    background-color: #D4E6EC;
    color: #204F63;
}

.button-up__btn svg{
    display: block;
    width: 9px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    transform: rotate(-90deg);
    margin-top: -2px;
}
/* commit */

.doctor-info__bg
{
	border-radius: 30px;
	background: #F2F2EF;
	padding: 0 44px;
}

.doctor-info__cols
{
	justify-content: space-between;
	align-items: stretch;
	align-content: stretch;
	max-width: 1208px;
	margin-left: auto;
}

.doctor-info__coll
{
	width: calc(52% - 15px);
	padding-top: 44px;
	padding-bottom: 44px;
}

.doctor-info__colr
{
	width: calc(48% - 15px);
	align-self: flex-end;

	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	align-content: flex-end;
	flex-wrap: wrap;
	position: relative;
	padding-right: 30px;
}

.doctor-info__img
{
	margin-top: -25px;
	position: relative;
	overflow: hidden;
}

.doctor-info__img::after
{
	position: absolute;
	content: '';
	bottom: -160px;
	right: -130px;

	width: 354px;
	height: 346px;

	background: #F2F2EF;
	border-radius: 50%;

	filter: blur(80px);
	pointer-events: none;
}

.doctor-info__img::before
{
	position: absolute;
	content: '';
	bottom: -184px;
	left: -170px;

	width: 354px;
	height: 346px;

	background: #F2F2EF;
	border-radius: 50%;

	filter: blur(80px);
	pointer-events: none;
}

.doctor-info__img img
{
	display: block;
	max-width: 100%;
	max-height: 100%;
}

.doctor-info__spec
{
	font-size: 14px;
}

.doctor-info__spec span
{
	display: inline-block;
	background: #fff;
	line-height: 37px;
	padding-left: 15px;
	padding-right: 15px;
	border-radius: 10000px;
}

.doctor-info__name
{
	margin-top: 25px;
}

.doctor-info__items
{
	margin: 10px 0 0 -15px;
}

.doctor-info__item
{
	margin: 15px 0 0 15px;
	font-size: 14px;
}

.doctor-info__link
{
	text-decoration: none;
	color: currentColor;
	line-height: 35px;
	background: #fff;
	padding-left: 10px;
	padding-right: 10px;
	border-radius: 10000px;
	display: inline-block;
	transition: background .2s linear, color .2s linear;
}

.doctor-info__link span, span.doctor-info__link a
{
	border-bottom: 1px solid rgba(32, 79, 99, .3);
	transition: border .2s linear;
	color: currentColor;
	text-decoration: none;


}

@media (any-hover: hover)
{
	.doctor-info__link:hover
	{
		background: #204F63;
		color: #fff;
	}

	.doctor-info__link:hover span
	{
		border-color: #fff;
	}
}

.doctor-info__desc
{
	margin-top: 25px;
	font-size: 14px;
}

.doctor-info__btns
{
	margin: 25px 0 0 -20px;
}

.doctor-info__btn
{
	margin: 20px 0 0 20px;
}

.doctor-info__btns .btn-blue
{
	line-height: 50px;
	min-width: 172px;
	font-size: 16px;
}

.doctor-info__btns .btn-bord
{
	line-height: 48px;
	min-width: 172px;
	font-size: 16px;
}

.doctor-info__video span
{
	display: inline-block;
	position: relative;
	padding-left: 38px;
}

.doctor-info__video span::before
{
	position: absolute;
	content: '';
	top: 50%;
	left: 0;

	display: block;

	width: 28px;
	height: 28px;

	margin-top: -14px;

	background: url(../images/play2.svg) 50% no-repeat;
}

/*------------
    imp-info
------------*/

.imp-info__bg
{
	padding: 25px;
	border-radius: 20px;
	background: #D4E6EC;
}

.imp-info__bg_light{
    background: #F2F2EF;
}

.imp-info {margin-bottom:45px;}
.imp-info .text-block
{
	max-width: 1210px;
}

.text-block.text-block_size
{
	font-size: 18px;
	line-height: normal;
}


/*------------
    experience
------------*/

.experience__items
{
	margin-top: 5px;
	justify-content: space-between;
	align-items: stretch;
	align-content: stretch;
}

.experience__item
{
	width: calc(100%/2 - 10px);
	border-radius: 20px;
	background: #F2F2EF;
	padding: 25px 23px;
	margin-top: 20px;
}

.experience__item._item-width
{
	background: #D4E6EC;
	width: 100%;
}
.experience__item a {
    color: #204F63;
}
.experience__item a:hover {
    color: #3485A1;;
}

.experience__title
{
	color: #1986AC;
	font-size: 24px;
	line-height: 1.08;
	font-weight: 500;
	margin-bottom: 10px;
}

.experience .text-block p
{
	margin-bottom: 7px;
}

.experience__list li
{
	list-style: none;
	position: relative;
	padding-left: 28px;
}

.experience__list li + li
{
	margin-top: 16px;
}

.experience__list li::before
{
	position: absolute;
	content: '';
	top: 2px;
	left: 0;

	display: block;

	width: 16px;
	height: 16px;

	border-radius: 50%;
	background: #D4E6EC;
}

.experience__item._item-width .experience__list li::before
{
	background: #1986AC;
}

/*------------
    reviews-doctor
------------*/

.reviews-doctor__item
{
	width: 360px;
	background: #F2F2EF;
	border-radius: 20px;
	padding: 25px 23px;
	height: auto;
}

.reviews-doctor__patient-photo
{
	width: 52px;
	height: 52px;
}

.reviews-doctor__patient-photo img 
{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.reviews-doctor__patient-name
{
	margin-top: 30px;
	color: #1986AC;
	font-size: 24px;
	line-height: 1.08;
	font-weight: 500;
}

.reviews-doctor__patient-desc
{
	margin-top: 10px;
	font-size: 16px;
	line-height: normal;
}

/*------------
    contacts-page
------------*/

.contacts-page__box
{
	margin-top: 45px;
}

.contacts-page__grid
{
	align-items: stretch;
	align-content: stretch;
	margin: -22px 0 0 -22px;
}

.contacts-page__item
{
	width: calc(100%/3 - 22px);
	margin: 22px 0 0 22px;
	border-radius: 20px;
	background: #F2F2EF;
	padding: 25px;

	display: flex;
	flex-direction: column;
}

.contacts-page__item._green-item
{
	background: #D4E6EC;
}

.contacts-page__icon
{
	height: 73px;

	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap: wrap;
}

.contacts-page__icon img
{
	display: block;
	max-width: 100%;
	max-height: 100%;
}

.contacts-page__info
{
	flex: 1 0 auto;

	margin-top: 20px;

	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.contacts-page__phone + .contacts-page__phone
{
	margin-top: 15px;
}

.contacts-page__phone
{
	font-size: 28px;
	line-height: 1.14;
}

.contacts-page__phone a
{
	color: #204F63;
	text-decoration: none;
}

.contacts-page__adres
{
	font-size: 24px;
	line-height: 1.08;
}

.contacts-page__adres span
{
	font-size: 20px;
}

.contacts-page__info-title
{
	font-size: 32px;
	line-height: 1;
	font-weight: 500;
}

.contacts-page__time
{
	margin-top: 15px;
	color: #666; /* gps recommend - было  #858585 */
	line-height: 1.16;
}

.contacts-page__details-title
{
	color: #666; /* gps recommend - было  #858585 */
	line-height: normal;
}

.contacts-page__details-desc
{
	margin-top: 15px;
	line-height: 1.33;
}

.contacts-page__details-desc a
{
	text-decoration: none;
	color: #204F63;
	border-bottom: 1px solid #204F63;
	transition: border .2s linear;
}

@media (any-hover: hover)
{
	.contacts-page__details-desc a:hover
	{
		border-bottom-color: transparent;
	}
}


.contacts-page__cols
{
	justify-content: space-between;
	align-items: stretch;
	align-content: stretch;
}

.contacts-page__coll
{
	border-radius: 30px;
	background: #F2F2EF;
	padding: 35px;

	width: calc(51.45% - 12.5px);
}

.contacts-page__get-title
{
	font-size: 32px;
	line-height: 1;
	font-weight: 500;
}

.contacts-page__get-adres
{
	margin-top: 25px;
	line-height: 1.16;
}

.contacts-page__colr
{
	border-radius: 30px;
	overflow: hidden;
	position: relative;

	width: calc(48.55% - 12.5px);
}

.contacts-page__img
{
	position: absolute;
	top: 0;
	left: 0;

	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
}

.contacts-page__get-item
{
	margin-top: 25px;
	background: #fff;
	border-radius: 20px;
	padding: 22px 20px;
}

.contacts-page__get-open
{
	line-height: 1.33;
	padding-left: 28px;
	position: relative;
	cursor: pointer;
}

.contacts-page__get-open::before
{
	position: absolute;
	content: '';
	top: 3px;
	left: 1px;

	display: block;

	width: 17px;
	height: 17px;
	border-radius: 50%;

	background: #1986AC;
	transition: background-color .2s linear;
}

.contacts-page__get-open::after
{
	position: absolute;
	content: '';
	top: 9px;
	left: 5px;

	display: block;

	width: 9px;
	height: 6px;

	background: url(../images/ic_arrow.svg) 50% no-repeat;
}


@media (any-hover: hover)
{
	.contacts-page__get-open:hover::before
	{
		background-color: #204F63;
	}
}

.contacts-page__get-item._active .contacts-page__get-open::after
{
	transform: rotate(180deg);
	top: 8px;
}

.contacts-page__get-data
{
	padding-top: 10px;
}

.accord__data
{
	display: none;
}

.contacts-page__get-list li + li
{
	margin-top: 2px;
}

.contacts-page__get-list li
{
	list-style: none;
	color: #666; /* gps recommend - было  #858585 */
	position: relative;
	line-height: normal;
	padding-left: 27px;
}

.contacts-page__get-list li::before
{
	position: absolute;
	content: '';
	top: 9px;
	left: 11px;

	display: block;

	width: 4px;
	height: 4px;

	border-radius: 50%;

	background: #858585;
	
}

/*------------
    details-info
------------*/

.details-info__bg
{
	background: #F2F2EF;
	border-radius: 30px;
	padding: 25px;
	margin-top: 25px;
}

.details-info__item + .details-info__item
{
	margin-top: 15px;
}

.details-info__item
{
	line-height: normal;
}

.details-info__item div + div
{
	margin-top: 1px;
}

.details-info__item span
{
	font-weight: 500;
}

/*------------
    indicat-cont
------------*/

.indicat-cont__box + .indicat-cont__box
{
	margin-top: 50px;
}

.indicat-cont__item
{
	margin-top: 25px;
}

.check-list-bg
{
	background: #F2F2EF;
	border-radius: 20px;
	padding: 28px 25px;
}

.check-list li + li
{
	margin-top: 18px;
}

.check-list li
{
	list-style: none;
	padding-left: 31px;
	position: relative;
	line-height: 1.33;
}

.check-list li::before
{
	position: absolute;
	content: '';
	top: 3px;
	left: 3px;

	display: block;

	width: 16px;
	height: 16px;
	border-radius: 50%;
	
	background: #87BFA5;
}

.check-list li::after
{
	position: absolute;
	content: '';
	top: 7px;
	left: 6px;

	display: block;

	width: 10px;
	height: 9px;
	
	background: url(../images/ic_check.svg) 50% no-repeat;
}

.cross-list-border
{
	border-radius: 20px;
	border: 1px solid #D4E6EC;
	padding: 25px;
}

.cross-list li + li
{
	margin-top: 15px;
}

.cross-list li
{
	list-style: none;
	padding-left: 31px;
	position: relative;
	line-height: 1.33;
}

.cross-list li::before
{
	position: absolute;
	content: '';
	top: 3px;
	left: 3px;

	display: block;

	width: 16px;
	height: 16px;
	
	background: url(../images/ic_cross.svg) 50% no-repeat;
}

.indicat-cont__note
{
	margin-top: 15px;
	border-radius: 20px;
	background: #FCEDED;
	padding: 20px;
	line-height: 1.33;
}


.indicat-cont__cols
{
	justify-content: space-between;
}

.indicat-cont__coll
{
	width: calc(41.86% - 17.5px);
}

.indicat-cont__img
{
	border-radius: 30px;
	background: #D4E6EC;
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	align-content: flex-end;
	flex-wrap: wrap;
	padding-top: 16px;
	padding-right: 5px;
    aspect-ratio: 1/1.006;
}

.indicat-cont__img img
{
	display: block;
	max-width: 100%;
	max-height: 100%;
    height: 100%;
}

.indicat-cont__img img.loaded{
    height: auto;
}

.indicat-cont__colr
{
	width: calc(58.14% - 17.5px);
}


.circle-list
{
	margin-top: 25px;
}

.circle-list li + li
{
	margin-top: 28px;
}

.circle-list li
{
	list-style: none;
	padding-left: 29px;
	position: relative;
	line-height: 1.33;
}

.circle-list li::before
{
	position: absolute;
	content: '';
	top: 3px;
	left: 1px;

	display: block;

	width: 16px;
	height: 16px;
	border-radius: 50%;
	
	background: #1986AC;
}

.circle-list__title, .indicat-cont__box ul li span 
{
	line-height: 1.16;
	font-weight: 700;
	margin-bottom: 10px;
	display: block;
}


/*------------
    faq
------------*/

.accordion__data
{
    display: none;
}

.faq__item
{
	margin-top: 15px;
	background: #F2F2EF;
	border-radius: 20px;
	padding: 25px;
}

.faq__open
{
	cursor: pointer;
	line-height: 1.08;
	font-weight: 500;
	font-size: 24px;

	display: flex;
	justify-content: space-between;
	align-items: center;
	align-content: center;
	flex-wrap: nowrap;
}

.faq__open-btn
{
	flex-shrink: 0;
	position: relative;

	width: 50px;
	height: 50px;
	margin-left: 20px;

	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;

	background: #fff;
	border-radius: 50%;
	transition: background .2s linear;
}

.faq__open-arrow
{
	position: absolute;
	content: '';
	top: 50%;
	left: 50%;

	display: block;

	width: 14px;
	height: 14px;
	
	margin-top: -9px;
	margin-left: -7px;

	transform: rotate(45deg);

	border-bottom: 3px solid #204F63;
	border-right: 3px solid #204F63;
	transition: border .2s linear, opacity .2s linear;
}

.faq__open-check
{
	position: absolute;
	content: '';
	top: 50%;
	left: 50%;

	width: 18px;
	height: 14px;

	margin-top: -6px;
	margin-left: -9px;

	display: block;

	fill: #204F63;
	stroke: #204F63;
	transition: stroke .2s linear, fill .2s linear, opacity .2s linear;
}

.faq__open-close
{
	position: absolute;
	content: '';
	top: 50%;
	left: 50%;

	width: 26px;
	height: 26px;

	margin-top: -13px;
	margin-left: -13px;

	display: block;
	opacity: 0;
	transition: opacity .2s linear;
}

.faq__open-close span 
{
    position: relative;
    display: block;
    width: 100%;
    height: 3px;
    background: #1986AC;
    border-radius: 2px;
}

.faq__open-close span:nth-child(1) 
{
    top: 12px;
    transform: rotate(45deg);
}

.faq__open-close span:nth-child(2) 
{
    top: 9px;
    transform: rotate(-45deg);
}

@media (any-hover: hover)
{
	.faq__open:hover .faq__open-btn
	{
		background: #204F63;
	}

	.faq__open:hover .faq__open-arrow
	{
		border-color: #fff;
	}

	.faq__open:hover .faq__open-check
	{
		fill: #fff;
		stroke: #fff;
	}
}

.faq__item._active .faq__open .faq__open-btn
{
	background: #D4E6EC;
}

.faq__item._active .faq__open .faq__open-arrow,
.faq__item._active .faq__open .faq__open-check
{
	opacity: 0;
}

.faq__item._active .faq__open .faq__open-close
{
	opacity: 1;
}

.faq__data
{
	padding-top: 20px;
}

.faq__desc
{
	line-height: normal;
}
.faq__desc a 
{
	color:#204F63;
}
.faq__desc a:hover 
{
	color: #3485A1;
}

/*------------
    Footer
------------*/
.footer{
    background: #204F63;
    border-radius: 30px 30px 0 0;
    margin-top: 50px;
    padding: 40px 0 35px;
}

.footer__flex{
    margin-top: 35px;
    gap: 60px 30px;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
}

.footer__title{
    font-weight: 700;
    font-size: 16px;
    line-height: 1.33;
    color: #fff;
    width: 100%;
}

.footer__title a{
    color: #fff;
    border-bottom: 1px solid transparent;
    transition: border .2s linear;
    text-decoration: none;
}

@media (any-hover: hover){
    .footer__title a:hover{
        border-bottom-color: currentColor;
    }
}

.footer__list{
    display: flex;
    flex-direction: column;
}

.footer__list-items{
    width: 100%;
}

.footer__list-item{
    margin-top: 10px;

    font-size: 16px;
    line-height: 1.33;
    color: #c7c7c7;
}

.footer__list-link{
    color: #c7c7c7;
    border-bottom: 1px solid transparent;
    transition: border .2s linear, color .2s linear;
    text-decoration: none;
}

@media (any-hover: hover){
    .footer__list-link:hover{
        color: #FFF;
        border-bottom-color: currentColor;
    }
}

.footer__rating{
    margin-top: 35px;
    height: 35px;

    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.footer__rating img{
    display: block;
    max-width: 100%;
    max-height: 100%;
    border-radius: 5px;
}

.footer__contact{
    width: 224px;
    flex-shrink: 0;
}

.footer__time{
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.33;
    color: #fff;
}

.footer__phone{
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.33;
    color: #fff;
}

.footer__phone a{
    color: currentColor;
    text-decoration: none;
}

.footer__mail{
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.33;
    color: #fff;
}

.footer__mail a{
    color: currentColor;
    text-decoration: none;
}

.footer__adres{
    margin-top: 35px;
    font-size: 16px;
    line-height: 1.33;
    color: #fff;
}

.footer__contact-info{
	margin-top: 15px;
    font-size: 14px;
    line-height: 1.33;
    color: #fff;
}

.footer__bot{
    margin-top: 50px;
    flex-wrap: nowrap;
    align-items: flex-end;
    align-content: flex-end;
}

.footer__info{
    font-size: 12px;
    line-height: 1.33;
    color: #fff;

    max-width: 965px;
    margin-right: 52px;
}

.footer__info-item + .footer__info-item{
    margin-top: 15px;
}

.footer__info-item_mob{
	display: none;
}

.footer__version{
    margin-left: auto;
    flex-shrink: 0;

    font-size: 16px;
    line-height: normal;
    color: #fff;
}

.footer__version_mob{
    display: none;
}

.footer__version a{
    color: currentColor;
    text-decoration: none;
    border-bottom: 1px solid currentColor;
    transition: border .2s linear;
}

@media (any-hover: hover){
    .footer__version a:hover{
        border-bottom-color: transparent;
    }
}


/*------------
    Modal
------------*/
.modal
{
    position: relative;
    z-index: 3;

    display: none;
    visibility: visible !important;

    width: 1106px;
    max-width: 100%;
    padding: 0;

    border-radius: 20px;
    background: #FFF;
}

.modal_small{
	width: 615px;
}

.modal__wrap{
	width: 100%;
}

.modal__wrap._flex{
    align-items: stretch;
    align-content: stretch;
    flex-wrap: nowrap;
}

.modal__photo{
    width: 44.4%;
    flex-shrink: 0;
}

.modal__photo img{
    display: block;
    width: 100%;
    aspect-ratio: 1/.81;
    min-height: 100%;
    object-fit: cover;
    object-position: 50% 0;
    border-radius: 20px 0 0 20px;
}

.modal__pad{
	padding: 35px;
    width: 100%;
}

.modal_small .modal__pad{
	padding-left: 30px;
	padding-right: 30px;
}

.modal__title
{
	font-weight: 400;
    font-size: 46px;
    line-height: 1.13;
    color: #204F63;
}

.modal__title_center{
	text-align: center;
}

.modal__title br{
    display: none;
}

.modal__title span{
    display: inline-block;
}

.modal__subtitle{
	font-size: 18px;
	line-height: 1.17;
	color: #204F63;

	margin-top: 10px;
}

.modal__subtitle_center{
	text-align: center;
}

.modal .form{
    margin-top: 20px;
}

.modal_small .form{
	margin-left: auto;
	margin-right: auto;
	max-width: 542px;
}

@media (max-width: 1499px)
{
    body{
        zoom: .9;
    }
}

@media (max-width: 1399px)
{
    .button-up{
        left: auto;
        margin-left: 0;
        right: 5px;
        bottom: 120px;
    }
}

.fancybox__dialog {
height: 100%;
}


.similar-services__item._hidden {
    display: none;
}


.div_share {margin-top:30px;}

/* ===== ГОРИЗОНТАЛЬНАЯ ФОРМА ===== */
.grey_bg {
	background: #D4E6EC;
	margin: 40px 0;
	border-radius: 20px;
}
.gorizont_form {
	padding: 30px 30px;
}
.gorizont_form__title {
	flex: 0 0 auto;
}
.gorizont_form__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
}
/* Поле телефона - растягивается */
.gorizont_form__field {
	flex: 1 1 250px;
	min-width: 220px;
}
.gorizont_form__input {
	background: #fff !important;
}
.gorizont_form__input:focus {
	outline: none;
}
/* Кнопка - фиксированная ширина */
.gorizont_form__btn {
	min-width: 180px;
}
/* Чекбокс - на всю ширину, с отступом сверху */
.gorizont_form__checkbox {margin-top: 18px;}
.gorizont_form__checkbox .checkbox__text {
	padding-left: 26px;
}
.gorizont_form__checkbox .checkbox__text::before {
	width: 18px;
	height: 18px;
	top: 0;
}
.gorizont_form__checkbox .checkbox__text::after {
	width: 18px;
	height: 18px;
	top: 0;
}


/* ===== АДАПТИВ ===== */
/* Планшеты и маленькие ноутбуки */
@media (max-width: 992px) {
	.gorizont_form__field {min-width: 200px;}
	.gorizont_form__btn {min-width: 250px;}
	.gorizont_form__title  {width:100%}
}

/* Мобильные устройства */
@media (max-width: 768px) {
	.grey_bg {
		border-radius: 16px;
		margin:30px 0;
	}
	.gorizont_form {padding: 20px 20px;}
	
	.gorizont_form__title {
		flex: 1 1 auto;
		min-width: 0;
		text-align: center;
		margin-bottom: 0px;
	}
	/* Перестраиваем колонки в вертикальный ряд */
	.gorizont_form__row {
		flex-direction: column;
		align-items: stretch;
		gap: 15px;
	}
	
	/* Поле телефона - первое */
	.gorizont_form__field {
		order: 1;
		flex: 1 1 auto;
		min-width: 0;
	}
	/* Чекбокс - второе (между полем и кнопкой) */
	.gorizont_form__checkbox {
		order: 2;
		margin-top: 10px;
		width: 100%;
		max-width: 100%;
	}
	.gorizont_form__checkbox .checkbox__text {
		font-size: 12px;
		padding-left: 24px;
		margin:10px 0 10px;
	}
	/* Кнопка - третья */
	.gorizont_form__btn {
		order: 3;
		min-width: 120px;
		width: 100%;
		height:50px;
		line-height:50px;
	}
	.gorizont_form__checkbox .checkbox__text::before {
		width: 16px;
		height: 16px;
	}
	.gorizont_form__checkbox .checkbox__text::after {
		width: 16px;
		height: 16px;
		background-size: 10px auto;
	}
}

/* Маленькие телефоны */
@media (max-width: 480px) {
	.grey_bg {
		border-radius: 12px;
	}
	.gorizont_form {
		padding: 20px 18px;
	}
	.gorizont_form__row {
		gap: 12px;
	}
	.gorizont_form__checkbox .checkbox__text {
		padding-left: 22px;
		margin:0;
	}
	.gorizont_form__checkbox .checkbox__text::before {
		width: 14px;
		height: 14px;
		top: 1px;
	}
	.gorizont_form__checkbox .checkbox__text::after {
		width: 14px;
		height: 14px;
		background-size: 9px auto;
		top: 1px;
	}
}


/* ============================================================
   IMPLANTS
   ============================================================ */
.implants .main-title {
    max-width:80%;
}
.implants__slider .swiper-wrapper {
    align-items: stretch; /* Растягиваем все слайды по высоте */
}
.implants__slider .swiper-slide {
    width: calc(25% - 15px);
    max-width: 280px;
    height: auto; /* Автоматическая высота */
    display: flex;
}
@media (max-width: 1023px) {
    .implants__slider .swiper-slide {
        width: calc(33% - 15px);
    }    
}
@media (max-width: 768px) {
    .implants__slider .swiper-slide {
        width: calc(50% - 15px);
    }    
}
@media (max-width: 480px) {
    .implants__slider .swiper-slide {
        width: calc(75% - 15px);
    }    
}
/*@media (min-width: 1024px) {
    .implants__slider .swiper-slide {
        width: calc(25% - 20px);
    }
}*/

.implant__card {
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.02);
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform .3s ease, box-shadow .3s ease;
    width: 100%;
}

/*@media (any-hover: hover) {
    .implant__card:hover {
        transform: translateY(-5px);
        box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    }
}*/

.implant__logo-wrap {
    padding: 20px;
    text-align: center;
    min-height: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom: 1px solid #F2F2EF;
}

.implant__logo {
    max-height: 70px;
    max-width: 100%;
    object-fit: contain;
}

.implant__image-wrap {
    padding: 15px 10px;
    text-align: center;
    background: #F2F2EF;
}

.implant__image {
    width: 100%;
    max-height: 200px;
    object-fit: cover;
    border-radius: 8px;
}

.implant__body {
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.implant__name {
    font-weight: 500;
    font-size: 18px;
    line-height: 1.17;
    color: #204F63;
}
.implant__name a {
    color: #204F63;
    text-decoration:none;
}
.implant__name a:hover {
    text-decoration:underline;
}

.implant__country {
    font-size: 14px;
    color: #858585;
    margin-top: 5px;
}

.implant__desc {
    font-size: 14px;
    line-height: 1.3;
    color: #666;
    margin-top: 10px;
    flex-grow: 1;
}

.implant__price {
    font-weight: 500;
    font-size: 20px;
    color: #1986AC;
    margin-top: 12px;
    border-top: 1px solid #F2F2EF;
}

.implant__btn {
    margin-top: 15px;
    width: 100%;
    text-align: center;
    font-size: 16px;
    line-height: 50px;
    flex-shrink: 0; /* Кнопка не сжимается */
}

.section-case__bot {margin-top:30px;}

/* Сетка дипломов */
.certificates__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin-top: 30px;
}

/* Элемент сетки - делает все карточки одинаковой высоты */
.certificates__item {
    flex-direction: column;
    height: 100%;
}
.certificates__item img {border-radius:0;}

.certificates__item .certificate__img {
    margin: auto 0;
    height:300px;
}

/* ===== АДАПТИВ ===== */

@media (max-width: 992px) {
    .certificates__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 576px) {
    .certificates__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }
}


/* Карта сайта */
.sitemap {
    padding: 20px 0;
}
.sitemap ul {
    padding: 0;
    margin:4px 0;
}
.sitemap ul li {
    padding: 6px 0 0px 10px;
    line-height:1;
}
.sitemap ul li:before {
    height:0;
    width:0;
}
.text-block .sitemap ul li + li {
    margin-top: 0px;
}
/* Уровни вложенности */
.sitemap .level-1 {
    padding-left: 0;
}

.sitemap .level-2 {
    padding-left: 10px;
}

.sitemap .level-3 {
    padding-left: 20px;
}

.sitemap .level-4 {
    padding-left: 30px;
}

.sitemap .level-5 {
    padding-left: 40px;
}

/* Элементы */
.sitemap__item {
    margin: 4px 0;
    padding: 2px 0;
    position: relative;
}

/* Дополнительные отступы для мобильных */
@media (max-width: 768px) {
    .sitemap .level-2 {
        padding-left: 15px;
    }
    
    .sitemap .level-3 {
        padding-left: 30px;
    }
    
    .sitemap .level-4 {
        padding-left: 45px;
    }
    
    .sitemap .level-5 {
        padding-left: 60px;
    }
    
    .sitemap__link {
        font-size: 14px;
    }
}


/* Стили для результатов поиска */
.srch {margin-bottom: 14px;}
.srch:last-child {margin-bottom: 0;}
.srch:hover {border-color: rgba(32, 79, 99, 0.3)};

/* Ссылка */
.srch a {
    color: #204F63;
    font: 16px/1.31 var(--font-family);
    transition: color .2s linear;
}
.srch a:hover {
    color: #1986AC;
}

/* Обертка для списка результатов */
.search-results {
    padding: 10px 0;
}

.cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.85);
  -webkit-box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.08);
          box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.08);
  z-index: 9999;
  display: none;
}

.cookie-banner__content {
  margin: 0 auto;
  padding: 20px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  gap: 10px;
}

.cookie-banner__title {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}

.cookie-banner__text {
  font-size: 14px;
  line-height: 1.5;
  margin: 0;
  font-weight:500;
  color: #666;
}
.cookie-banner__text a {
    color: #204F63;
}
.cookie-banner__text a:hover {
    color: #1986AC;
}

.cookie-banner__buttons {
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.cookie-banner__buttons button {
    color: #FEFEFE;
    font-size: 15px;
    font-weight: 500;
    border-radius: 4px;
    background: #1986AC;
    padding: 8px 10px;
}

.cookie-banner__buttons button:hover
{
	background: #204F63;
}

/* Стили для подсветки чекбокса при invalid состоянии */
/* ===== КАСТОМНЫЙ ЧЕКБОКС ===== */
.checkbox {
    position: relative;
    margin-bottom: 15px;
}

/* Скрываем стандартный чекбокс */
/*.checkbox input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
    z-index: -1;
}*/

/* Лейбл */
.checkbox__label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    line-height: 1.4;
    color: #333;
}

/* Кастомный чекбокс */
.checkbox__label::before {
    content: '';
    position: absolute;
    left: 0;
    top: 2px;
    width: 20px;
    height: 20px;
    border: 2px solid #ccc;
    border-radius: 4px;
    background: #fff;
    transition: all 0.3s ease;
}

/* Галочка */
.checkbox input[type="checkbox"]:checked + .checkbox__label::after {
    content: '✓';
    position: absolute;
    left: 4px;
    top: 2px;
    color: #fff;
    font-size: 16px;
    line-height: 1;
}

.checkbox input[type="checkbox"]:checked + .checkbox__label::before {
    background: #1986AC;
    border-color: #1986AC;
}

/* ===== ОШИБКА (через класс .error) ===== */
/*.checkbox.error .checkbox__text {
    color: #d32f2f;
}

.checkbox.error .checkbox__text a {
    color: #d32f2f;
}

.checkbox.error .checkbox__label::before {
    border-color: #d32f2f !important;
    background: #fff5f5;
}

.checkbox.error .checkbox__error {
    display: block;
}
*/
/* Сообщение об ошибке */
.checkbox__error {
    display: none;
    color: #d32f2f;
    font-size: 13px;
    margin-top: 5px;
    padding: 4px 8px;
    background: rgba(211, 47, 47, 0.05);
    border-radius: 4px;
}
.checkbox.error .checkbox__error {
    display: block;}

.checkbox__text {padding-left:0;}
.checkbox__text:before {display:none;}