/* НАЧАЛО СТИЛЯ ДЛЯ ТЕЛЕФОНОВ И АДРЕСОВ В ВЕРХНЕМ МЕНЮ */
/* =====================================================
   КОНТЕЙНЕР КОНТАКТОВ
===================================================== */

.header__contacts{
    display:flex;
    justify-content:center;
    align-items:center;

    width:100%;
    max-width:1200px;

    margin:15px auto 25px;
    padding:0;

    background:#fff;

    border-radius:24px;

    box-shadow:
        0 8px 30px rgba(0,0,0,.04);
}

/* =====================================================
   ОДИН ФИЛИАЛ
===================================================== */

.header__contacts-wrapper{
    flex:1;

    position:relative;

    display:flex;
    flex-direction:column;

    align-items:center;
    justify-content:center;

    min-height:140px;

    padding:25px 15px;

    overflow:visible;
}

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

.header__contacts-wrapper:not(:last-child)::after{
    content:"";

    position:absolute;

    right:0;
    top:50%;

    width:1px;
    height:90px;

    transform:translateY(-50%);

    background:#edf1f4;
}

/* =====================================================
   ТЕЛЕФОН
===================================================== */

.header__contacts-phone{
    margin-bottom:14px;
}

.header__contacts-phone a{
    display:block;

    font-size:58px;
    line-height:1;
    font-weight:300;

    color:#1f2328;

    text-decoration:none;

    letter-spacing:-2px;

    white-space:nowrap;

    transition:.2s ease;
}

.header__contacts-phone a:hover{
    color:#20b3c9;
}

/* =====================================================
   АДРЕС
===================================================== */

.header__contacts-text{
    text-align:center;
    overflow:visible;
}

.header__contacts-address{
    position:relative;

    display:inline-flex;
    align-items:center;

    font-size:18px;
    line-height:1.5;
    font-weight:500;

    color:#6d7378 !important;

    text-decoration:none;

    transition:.2s ease;
}

.header__contacts-address:hover{
    color:#ff2f92 !important;
}

/* =====================================================
   СТРЕЛКА
===================================================== */

.header__contacts-arrow{
    margin-left:0;

    opacity:0;

    color:#ff2f92;

    transition:
        opacity .2s ease,
        margin-left .2s ease;
}

.header__contacts-address:hover .header__contacts-arrow{
    opacity:1;
    margin-left:8px;
}

/* =====================================================
   ПОДСКАЗКА
===================================================== */

.header__contacts-address::before{
    content:attr(data-tooltip);

    position:absolute;

    left:50%;
    bottom:calc(100% + 14px);

    transform:
        translateX(-50%)
        translateY(6px);

    padding:12px 18px;

    min-width:210px;

    background:#ffffff;

    border:1px solid #dfe6eb;

    border-radius:12px;
    color:#2f3439;
    font-size:18px;
    font-weight:600;

    line-height:1.4;

    text-align:center;

    white-space:nowrap;

    letter-spacing:0;

    box-shadow:
        0 12px 30px rgba(0,0,0,.08);

    opacity:0;
    visibility:hidden;

    transition:
        opacity .2s ease,
        transform .2s ease;

    pointer-events:none;

    z-index:99999;
}

.header__contacts-address:hover::before{
    opacity:1;
    visibility:visible;

    transform:
        translateX(-50%)
        translateY(0);
}

/* =====================================================
   НОУТБУКИ
===================================================== */

@media (max-width:1400px){

    .header__contacts{
        max-width:1100px;
    }

    .header__contacts-phone a{
        font-size:52px;
    }

    .header__contacts-address{
        font-size:17px;
    }
}

/* =====================================================
   ПЛАНШЕТЫ И ТЕЛЕФОНЫ
===================================================== */

@media (max-width:1100px){

    .header__contacts{
        flex-direction:column;
        max-width:95%;
    }

    .header__contacts-wrapper{
        width:100%;
        min-height:auto;
        padding:22px 15px;
    }

    .header__contacts-wrapper:not(:last-child)::after{
        display:none;
    }

    .header__contacts-phone a{
        font-size:44px;
    }

    .header__contacts-address{
        font-size:16px;
    }

    .header__contacts-address::before{
        min-width:180px;
        font-size:13px;
    }
}
/* КОНЕЦ СТИЛЯ ДЛЯ ТЕЛЕФОНОВ И АДРЕСОВ В ВЕРХНЕМ МЕНЮ */
/* Планшеты */

@media (max-width:1200px){

    .header__contacts{
        gap:20px;
        padding:15px;
    }

    .header__contacts-phone a{
        font-size:34px;
    }

    .header__contacts-wrapper{
        padding:10px 15px;
    }
}

/* Телефоны */

@media (max-width:768px){

    .header__contacts{
        flex-direction:column;
        gap:0;
    }

    .header__contacts-wrapper{
        width:100%;
        justify-content:center;
        padding:18px 0;
    }

    .header__contacts-wrapper:not(:last-child):after{
        display:none;
    }

    .header__contacts-phone a{
        font-size:32px;
    }

    .header__contacts-text{
        text-align:left;
    }
}


@media (max-width: 1190px){
    .is-mobile {
        display: block
    }
    .is-desktop {
        display: none;
    }
}
@media (min-width: 1191px){
    .is-mobile {
        display: none;
    }
    .is-desktop {
        display: block;
    }
}
.w100 {
    width:100%;
    margin: 5px 0;
}
.w67{
    width:65.8%;
    margin: 5px;
}
.w50{
    width:49%;
    margin: 5px;
}
.w33{
    width:32.9%;
    margin: 0px 5px 0px 0;
}
.w25{
    width:24%;
    margin: 5px 5px 5px 0;
}
.is-mt-3{
    margin-top: 1.5rem;
}
.is-radius{
    border-radius: 13px;
}
.is-pb-0{
    padding-bottom:0!important;
}
.is-mb-0{
    margin-bottom:0!important;
}

.slogan_default a {text-decoration: none;color: deeppink;}
p {margin-bottom: 23px;line-height: normal;}
h2{margin: 10px 0;font-size: 22px;font-weight: 500;}
em{font-style:italic;color:#999;}
ol, ul {list-style: circle;}
li{margin: 10px 0px 10px 30px;}
.paragraph_default a{text-decoration: none;color: #f09;
}
.header__nav-link {
    color: #f09;
    font-size: 16px;
    margin-right: 7px;
}
.category__link_active {
    display: block;
    padding: 9px 14px;
    color: #999;
    border: 2px dotted #999;
}

.doctor .paragraph_grey{color: #000;margin-bottom: 5px;font-weight: 700;}

.questions__block>.paragraph_default{    padding: 0px 5px 10px;}
.questions__answer-block {
    margin-top: 0px;
    padding: 15px;
    border-radius: 5px;
    box-shadow: 0 6px 21px 0 rgba(65,65,65,.2);
    margin-left: 5%;
    background-color:#fbfbf8;
}

.questions__answer-block p {
    padding: 5px 10px;
    line-height: 1.5em;
    font-size: 18px;
}

input:-webkit-autofill, input:-webkit-autofill:focus input:-webkit-autofill, input:-webkit-autofill:hover, select:-webkit-autofill, select:-webkit-autofill:focus, select:-webkit-autofill:hover, textarea:-webkit-autofill, textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus{    -webkit-text-fill-color: #000;}





@media (max-width: 420px){
.analysis__heading {
    font-size: 16px;
    border-bottom: 1px dotted #f09;
}
.header__nav-link {
    color: #f09;
    font-size: 17px;
    margin-right: 7px;
}
.header__nav-link {
    margin: 9px 0;
    font-size: 21px;
    font-weight: 500;
}
.header__contacts-text {
    text-align: center;
    margin-top: 3px;
    font-size: 16px;
}
.header__contacts-phone {
    font-size: 20px;
    margin-right: 10px;
    font-weight: 400;
}
.popup-form.active {
    transform: scale(.85);
}
.form-record__input, .select-styled {font-size: 17px;}
.popup-form .form-record__heading {font-weight: 300;}
.form-record h1 {font-size: 18px;}
.banner {
    /* background-size: 100% 300%; */
    padding-bottom: 50%;
    background-repeat: no-repeat;
    width: 100%;
    border-radius: 5px;
    width: 100%;
}
.vk{
    visibility:hidden;
}
}
@media (min-width: 421px) and (max-width: 767px){
   .banner {
    /* background-size: 100% 300%; */
    padding-bottom: 50%;
    background-repeat: no-repeat;
    width: 100%;
    border-radius: 5px;
    width: 100%;
} 
.vk{
    visibility:hidden;
}
}
@media (max-width: 1190px){
.analysis__block {width:100%}
}


@media (min-width:1141px) and (max-width:1440px){
p {margin-bottom: 0px;line-height: normal;}
    .header__contacts-phone{text-align: right;font-size: 14px;width: 49%;font-weight: 400;}
    
    .header__logo {
    margin-right: 30px;
    max-width: 180px;
}

    .our-masters__link {
    margin-bottom: 25px;
    color: #42929d;
    font-size: 20px;
    font-weight: 500;
}
.form-record h1 {
    font-size: 28px;
    margin-bottom: 20px;
}
.form-record .formHorizontal_item.startRow {
    flex-basis: 100%;
    margin-bottom: 20px;
    padding-left: 0;
}
.paragraph_default {color: #000;font-size: 18px;line-height: 1.5em;}
.paragraph_block{margin-top: 20px;font-size: 18px;}

.form-record {
    padding: 25px 25px 50px;
    border-radius: 5px;
    background: linear-gradient(180deg,#3b95b6 0,#3a5b6c);
    box-shadow: 0 8px 15px 0 rgba(65,65,65,.5);
}
.analysis__accordion {flex-basis:70%;}
.mb-1 {margin-bottom: 1rem;font-size: 24px;}
.wrapper_small {max-width: 877px;margin: 0 auto;}
.section__heading{font-size: 35px;}
.doctor__about h1, .doctor__about h2{font-size: 32px;}
.direction-doctor__position {margin-top: 20px;color: #333;font-size: 14px;}
#filterQuestions .analysis__inner {font-size: 18px;line-height: initial;}
}
@media (min-width:1441px){
    
    a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 250%;
    font: inherit;
    vertical-align: baseline;
}
*, body {
    font-family: Circe,sans-serif;
    font-weight: 400;
}
h1{margin: 10px 0;font-size: 32px;font-weight: 700;}
h2{margin: 10px 0;font-size: 22px;font-weight: 500;}
ol, ul {list-style: circle;}
li{margin: 20px 0px 10px 30px;}
strong{font-weight: 700;}
.wrapper {
    max-width: 1441px;
    margin: 0 auto;
    padding: 0 15px;
}
.paragraph_default {
    color: #000;
    font-size: 20px;
    line-height: 1.5em;
}
.paragraph_block{margin-top: 20px;font-size: 20px;}
.header__nav-link {
    color: #f09;
    font-size: 20px;
    margin-right: 7px;
	font-weight: 700;
}
.category__link {
    display: none;
    font-size: 19px;}

.header__logo {
    margin-right: 60px;
    max-width: 220px;
}
.header__contacts-phone{text-align:right;font-size:17px;width:48%;font-weight: 400;}
.header__contacts-link_purple {margin-top: 0px;display: inline-block;}
.header__contacts-text{font-size: 16px;}

.direction-doctor__surname {
    font-size: 24px;
}
.direction-doctor__fullname {
    font-size: 18px;
}
.doctor__about h1, .doctor__about h2{font-size: 38px;}
.direction-doctor__submit {
    border: 0;
    display: none;
    border-radius: 5px;
    background-color: #72bf24;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    width: 100%;
    height: 50px;
}
.our-masters__link {
    margin-bottom: 25px;
    color: #42929d;
    font-size: 24px;
    font-weight: 500;
}
.form-record h1 {
    font-size: 28px;
    margin-bottom: 17px;
}
.doctor form h1 {
    margin-bottom: 20px!important;
    margin-top: 0px!important;
}

.form-record {
    padding: 35px 25px 35px;
    border-radius: 5px;
    background: linear-gradient(180deg,#3b95b6 0,#3a5b6c);
    box-shadow: 0 8px 15px 0 rgba(65,65,65,.5);
}
.custom-select select{font-size: 18px;}
.questions__input, .questions__input+.select-styled{font-size: 18px;}
.form-record__submit{font-size: 18px;font-weight: 500;}
.form-record__input, .select-styled{font-size: 18px;}
.popup-form{max-width: 815px;}
.popup-form.active {top: 0;bottom: 0;overflow: auto;padding: 3%;}
.mb-1 {margin-bottom: 1rem;font-size: 24px;}
.slogan_default{line-height: 1.7em;font-size: 18px;}
.analysis__accordion {flex-basis:70%;}
.analysis__heading {font-size: 22px;border-bottom: 2px dotted #f09;display: inline-block;}
.direction-doctor__position{margin-top: 15px;color: #000;font-size: 17px;font-weight: 500;}
.wrapper_small {max-width: 877px;margin: 0 auto;}
.section__heading{font-size: 35px;}
.questions p {font-size: 20px;line-height: initial;}
#filterQuestions .analysis__inner {font-size: 20px;line-height: initial;}
}

.formThanks {
    position: fixed!important;
}



#cookie_note p{
    margin: 0;
    font-size: 1rem;
    text-align: left;
    color: #fff;
}
.btn-accept{
    color:#fff; 
    border:1px solid #ccc;
    background-color:#646464;
    max-height:30px;
    border-radius: 3px;
    padding:2px 5px;
    min-width:100px;
}
.cookie_accept{
    width:20%;
}
@media (min-width: 576px){
    #cookie_note.show{
        display: flex;
    }
    
    #cookie_note{
    display: none;
    position: fixed;
    bottom: 15px;
    left: 50%;
    max-width: 90%;
    transform: translateX(-50%);
    padding: 20px;
    background: rgba(43,43,43,.97);
    border-radius: 20px;
    box-shadow: 2px 3px 30px rgba(0, 0, 0, 0.4);
}
}

@media (max-width: 575px){
    #cookie_note.show{
        display: block;
        text-align: left;
    }
    #cookie_note{
    display: none;
    position: fixed;
    bottom: 15px;
    left: 7%;
    max-width: 100%;
    transform: translateX(-3%);
    padding: 20px;
    background: rgba(43,43,43,.97);
    border-radius: 20px;
    box-shadow: 2px 3px 30px rgba(0, 0, 0, 0.4);
}
}

/* NATIVE COLLABSABLE */
details summary::-webkit-details-marker{display:none}details > summary{list-style:none;text-transform:none;outline:none;font-size:1rem;font-size:22px;border-bottom:1px dashed #000;padding-bottom:2px;margin-bottom:10px;display:inline-block}details > summary:hover{cursor:pointer}details{transition:.3s linear all;position:relative;outline:none}details summary:after{/transition:.3s linear all;content:"";position:absolute;margin-left:1rem;top:.2rem;width:12px;height:12px;border-top:2px solid gray;border-right:2px solid gray;transform:rotate(135deg)}details[open] summary:after{content:"";position:absolute;top:.6rem;width:12px;height:12px;border-top:2px solid gray;border-right:2px solid gray;transform:rotate(-45deg)}details > div{padding-top:0;padding-bottom:1.5rem}

/* Doverie v17: one contact list is used for desktop and mobile.
   Generic .map__contacts rules in style.bundle.css already handle positioning. */
.map__contacts_unified {
    display: block;
    z-index: 20;
}

/* The Yandex map is rendered after the contacts block in the DOM.
   Keep the single contact panel above the map on desktop. */
@media (min-width: 1001px) {
    .map__contacts_unified {
        position: absolute;
        top: 50%;
        left: 40px;
        transform: translateY(-50%);
        z-index: 20;
    }

    #map {
        position: relative;
        z-index: 1;
    }
}

@media (max-width: 1000px) {
    .map__contacts_unified {
        position: static;
        width: 100%;
        transform: none;
        z-index: auto;
    }

    .map__contacts_unified .map__content-heading-block {
        padding-left: 0;
    }
}

/* Doverie v18.2 permanent map overlay guard. Do not remove. */
.mapBlock .map__contacts_unified {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 30 !important;
}
@media (min-width: 1001px) {
    .mapBlock .map__contacts_unified {
        position: absolute !important;
        top: 50% !important;
        left: 40px !important;
        transform: translateY(-50%) !important;
        z-index: 30 !important;
    }
    .mapBlock #map {
        position: relative !important;
        z-index: 1 !important;
    }
}
@media (max-width: 1000px) {
    .mapBlock .map__contacts_unified {
        position: static !important;
        width: 100% !important;
        transform: none !important;
        z-index: auto !important;
    }
}

