.avatar-style {
    display: block;
    position: relative
}

.avatar-style:before {
    box-shadow: inset 0 0 1px rgba(0,0,0,.25);
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    z-index: 10
}

.avatar-style:before,.avatar-style img {
    border-radius: 4px;
    width: 100%;
    height: 100%
}

.avatar-style.no-border:before {
    box-shadow: none
}

html[region] .logo-zl {
    background-size: 100% auto
}

html[region] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/en/logo/logo-default-en.svg?v=4')
}

html[region] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/en/logo/logo-white-en.svg?v=4')
}

html[region] .logo-zl.small {
    width: 148px
}

html[region] .logo-zl.medium {
    width: 218px
}

.dp-logo svg {
    display: block
}

.dp-logo.green svg path {
    fill: #00c3a5
}

.dp-logo.blue svg path {
    fill: #3d83df
}

.dp-logo.white svg path {
    fill: #fff
}

.dp-logo.dp-logo-general.small svg {
    width: 150px
}

.dp-logo.dp-logo-general.medium svg {
    width: 210px
}

.dp-logo.dp-logo-ar.small svg {
    width: 150px
}

.dp-logo.dp-logo-ar.medium svg {
    width: 210px
}

.dp-logo.dp-logo-br.small svg {
    width: 150px
}

.dp-logo.dp-logo-br.medium svg {
    width: 210px
}

.dp-logo.dp-logo-cl.small svg {
    width: 150px
}

.dp-logo.dp-logo-cl.medium svg {
    width: 210px
}

.dp-logo.dp-logo-co.small svg {
    width: 150px
}

.dp-logo.dp-logo-co.medium svg {
    width: 210px
}

.dp-logo.dp-logo-es.small svg {
    width: 150px
}

.dp-logo.dp-logo-es.medium svg {
    width: 210px
}

.dp-logo.dp-logo-cz.small svg {
    width: 167px
}

.dp-logo.dp-logo-cz.medium svg {
    width: 234px
}

.dp-logo.dp-logo-it.small svg {
    width: 150px
}

.dp-logo.dp-logo-it.medium svg {
    width: 210px
}

.dp-logo.dp-logo-mx.small svg {
    width: 150px
}

.dp-logo.dp-logo-mx.medium svg {
    width: 210px
}

.dp-logo.dp-logo-pe.small svg {
    width: 150px
}

.dp-logo.dp-logo-pe.medium svg {
    width: 210px
}

.dp-logo.dp-logo-pl.small svg {
    width: 170px
}

.dp-logo.dp-logo-pl.medium svg {
    width: 242px
}

.dp-logo.dp-logo-pt.small svg {
    width: 150px
}

.dp-logo.dp-logo-pt.medium svg {
    width: 210px
}

.dp-logo.dp-logo-tr.small svg {
    width: 191px
}

.dp-logo.dp-logo-tr.medium svg {
    width: 270px
}

html[region=general] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/general/logo/logo-default-general.svg?v=7')
}

html[region=general] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/general/logo/logo-white-general.svg?v=7')
}

html[region=general] .logo-zl.small {
    width: 150px
}

html[region=general] .logo-zl.medium {
    width: 210px
}

html[region=ar] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/ar/logo/logo-default-ar.svg?v=7')
}

html[region=ar] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/ar/logo/logo-white-ar.svg?v=7')
}

html[region=ar] .logo-zl.small {
    width: 150px
}

html[region=ar] .logo-zl.medium {
    width: 210px
}

html[region=br] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/br/logo/logo-default-br.svg?v=7')
}

html[region=br] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/br/logo/logo-white-br.svg?v=7')
}

html[region=br] .logo-zl.small {
    width: 150px
}

html[region=br] .logo-zl.medium {
    width: 210px
}

html[region=cl] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/cl/logo/logo-default-cl.svg?v=7')
}

html[region=cl] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/cl/logo/logo-white-cl.svg?v=7')
}

html[region=cl] .logo-zl.small {
    width: 150px
}

html[region=cl] .logo-zl.medium {
    width: 210px
}

html[region=co] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/co/logo/logo-default-co.svg?v=7')
}

html[region=co] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/co/logo/logo-white-co.svg?v=7')
}

html[region=co] .logo-zl.small {
    width: 150px
}

html[region=co] .logo-zl.medium {
    width: 210px
}

html[region=es] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/es/logo/logo-default-es.svg?v=7')
}

html[region=es] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/es/logo/logo-white-es.svg?v=7')
}

html[region=es] .logo-zl.small {
    width: 150px
}

html[region=es] .logo-zl.medium {
    width: 210px
}

html[region=cz] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/cz/logo/logo-default-cz.svg?v=7')
}

html[region=cz] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/cz/logo/logo-white-cz.svg?v=7')
}

html[region=cz] .logo-zl.small {
    width: 167px
}

html[region=cz] .logo-zl.medium {
    width: 234px
}

html[region=it] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/it/logo/logo-default-it.svg?v=7')
}

html[region=it] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/it/logo/logo-white-it.svg?v=7')
}

html[region=it] .logo-zl.small {
    width: 150px
}

html[region=it] .logo-zl.medium {
    width: 210px
}

html[region=mx] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/mx/logo/logo-default-mx.svg?v=7')
}

html[region=mx] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/mx/logo/logo-white-mx.svg?v=7')
}

html[region=mx] .logo-zl.small {
    width: 150px
}

html[region=mx] .logo-zl.medium {
    width: 210px
}

html[region=pe] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/pe/logo/logo-default-pe.svg?v=7')
}

html[region=pe] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/pe/logo/logo-white-pe.svg?v=7')
}

html[region=pe] .logo-zl.small {
    width: 150px
}

html[region=pe] .logo-zl.medium {
    width: 210px
}

html[region=pl] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/pl/logo/logo-default-pl.svg?v=7')
}

html[region=pl] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/pl/logo/logo-white-pl.svg?v=7')
}

html[region=pl] .logo-zl.small {
    width: 170px
}

html[region=pl] .logo-zl.medium {
    width: 242px
}

html[region=pt] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/pt/logo/logo-default-pt.svg?v=7')
}

html[region=pt] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/pt/logo/logo-white-pt.svg?v=7')
}

html[region=pt] .logo-zl.small {
    width: 150px
}

html[region=pt] .logo-zl.medium {
    width: 210px
}

html[region=tr] .logo-zl.default {
    background-image: url('//platform.docplanner.com/img/tr/logo/logo-default-tr.svg?v=7')
}

html[region=tr] .logo-zl.white {
    background-image: url('//platform.docplanner.com/img/tr/logo/logo-white-tr.svg?v=7')
}

html[region=tr] .logo-zl.small {
    width: 191px
}

html[region=tr] .logo-zl.medium {
    width: 270px
}

.map {
    border-radius: 4px;
    cursor: pointer;
    height: 200px;
    max-height: 600px;
    overflow: hidden;
    position: relative;
    width: 100%
}

.map:hover {
    opacity: .9
}

.map:hover:after {
    background: rgba(0,0,0,.4);
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10
}

.map.map-placeholder {
    align-items: center;
    background: transparent url('//platform.docplanner.com/img/general/map-placeholder/map-placeholder-300-600.jpg') 100% 100% no-repeat;
    display: flex;
    height: 100%;
    justify-content: center;
    min-height: 100px;
    text-align: center
}

.map.map-placeholder .btn {
    position: static
}

.map.map-placeholder:focus,.map.map-placeholder:hover {
    text-decoration: none
}

.map.map-xs {
    height: 140px;
    width: 140px
}

.map.map-xs .btn .svg-icon,.map.map-xs:not(.show-cta) .btn {
    display: none
}

.map.map-xs:hover:not(.map-placeholder) .btn {
    top: -80px
}

.map.map-xs:hover .btn {
    display: inline-flex;
    margin: 0 10%;
    position: relative;
    width: 80%
}

.map .btn {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 20
}

.modal-map-container {
    height: 500px;
    width: 100%
}

@media (max-width: 767px) {
    .modal-map-container {
        height:80vh
    }
}

.map-link {
    cursor: pointer
}

.H_ui {
    top: -50px
}

.H_ui .H_ib_body {
    background: #fff;
    border: 1px solid #dcdfe3;
    box-shadow: 0 12px 24px 0 rgba(0,0,0,.1);
    color: #627282;
    font-size: 15px;
    min-width: 200px;
    padding: 1em;
    z-index: 1000
}

.H_ui .H_ib_close,.H_ui .H_ib_close svg {
    fill: #98a1ab
}

.H_ui .H_ib_content {
    min-width: 20em
}

@media (max-width: 767px) {
    .object-scrollspy {
        position:fixed;
        transition: all .6s ease 0s;
        z-index: 1000
    }

    .object-scrollspy.affixed-bottom {
        bottom: 0!important
    }

    .object-scrollspy.affixed-top {
        top: 0!important
    }
}

.visit-hour-link {
    color: #1662c6;
    font-weight: 700;
    text-decoration: underline
}

.visit-hour-link:focus,.visit-hour-link:hover {
    color: #196ddd;
    outline: none
}

.visit-hour-link:active {
    outline: none
}

.visit-hour-link.btn-hover:hover {
    border-radius: 4px;
    color: #fff;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    background: #3d83df
}

body {
    background: #edeff2
}

@media (min-width: 1010px) and (max-width:1040px) {
    body {
        overflow-x:hidden!important
    }
}

[placeholder]::-webkit-input-placeholder {
    color: #98a1ab
}

[placeholder]:-moz-placeholder,[placeholder]::-moz-placeholder {
    color: #98a1ab
}

[placeholder]:-ms-input-placeholder {
    color: #98a1ab
}

[placeholder]:placeholder-shown {
    color: #98a1ab
}

[placeholder]:focus::-webkit-input-placeholder {
    color: #dcdfe3
}

[placeholder]:focus:-moz-placeholder,[placeholder]:focus::-moz-placeholder {
    color: #dcdfe3
}

[placeholder]:focus:-ms-input-placeholder {
    color: #dcdfe3
}

[placeholder]:focus:placeholder-shown {
    color: #dcdfe3
}

main[role=main] {
    padding-bottom: 10px
}

main[role=main].no-breadcrumbs {
    padding-top: 20px
}

main[role=main].bottom-breadcrumbs-on-xs {
    display: flex;
    flex-direction: column
}

@media (max-width: 767px) {
    main[role=main].bottom-breadcrumbs-on-xs {
        flex-direction:column-reverse
    }
}

.text-error {
    color: #e74c3c
}

img[data-src] {
    background: #f7f9fa;
    text-indent: -9999vh
}

img.lazyload:not([src]) {
    visibility: hidden
}

#search .form-control {
    border-radius: 0;
    border-width: 0;
    color: #1b2734;
    font-weight: 400;
    height: 40px;
    padding-right: 20px;
    position: static
}

#search .form-control[name=loc] {
    padding-right: 38px
}

#search .form-control[name=q] {
    border-radius: 4px 0 0 4px
}

#search .icon-trigger {
    cursor: pointer;
    fill: #98a1ab;
    font-size: 8px;
    position: absolute;
    right: 5px;
    top: 17px
}

#search .specialists-col {
    padding-right: 2px
}

#search .city-col {
    padding: 0 2px
}

#search .button-col {
    padding-left: 2px
}

#search .autocomplete-results-container {
    margin: 0 -1px;
    position: relative
}

@media (min-width: 768px) {
    #search .search-button {
        border-color:transparent
    }
}

@media (max-width: 767px) {
    #search .button-col,#search .city-col,#search .specialists-col {
        padding:0 10px
    }

    #search .form-control {
        border-radius: 4px
    }

    #search .autocomplete-results-container .default-autocomplete {
        margin-top: -8px;
        width: 100%
    }

    #search .typeahead.dropdown-menu {
        left: 0!important;
        width: 100%
    }
}

.transparent-background {
    background: transparent
}

hr.dotted {
    border-top: 1px dotted #98a1ab
}

.uploadcare-dialog-normal-text {
    width: 600px
}

.zl-list li {
    padding-left: 10px;
    position: relative
}

.zl-list li:before {
    color: #98a1ab;
    content: "\2022";
    font-size: 12px;
    font-weight: 700;
    left: 0;
    position: absolute;
    top: 2px
}

.container-full {
    margin: 0;
    padding: 0;
    width: 100%
}

[data-id=js-link] {
    cursor: pointer
}

.impersonate-bar {
    bottom: 0;
    position: fixed;
    width: 100%;
    z-index: 1000
}

@media (max-width: 767px) {
    .impersonate-bar--with-bottom-navbar {
        bottom:50px
    }
}

.dropdown-breadcrumb {
    width: 550px
}

.dropdown-breadcrumb__element {
    width: 50%
}

.dropdown-breadcrumb>.dropdown-breadcrumb__element>a {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    display: inline-block;
    padding-bottom: 1px;
    padding-top: 1px
}

.dropdown-breadcrumb__divider {
    width: 100%
}

#search.top-search {
    margin-top: 10px
}

#search.top-search .specialists-col {
    padding: 0 0px 0 0;
}

#search.top-search .city-col {
    padding: 0
}

#search.top-search .button-col {
    padding: 0 0 0 0px;
}

#search.top-search.is-focused .icon-trigger,#search.top-search .is-focused .icon-trigger {
    fill: #98a1ab
}

@media (min-width: 768px) {
    #search.top-search .search-field {
        /* background:rgba(0,0,0,.08); */color: #222;
        font-size: 14px;
        transition: background .4s;
    }

    #search.top-search .search-field::-webkit-input-placeholder {
        color: #fff
    }

    #search.top-search .search-field:-moz-placeholder,#search.top-search .search-field::-moz-placeholder {
        color: #fff
    }

    #search.top-search .search-field:-ms-input-placeholder {
        color: #fff
    }

    #search.top-search .search-field:placeholder-shown {
        color: #082a5c;
    }

    #search.top-search .icon-trigger {
        fill: #fff
    }

    #search.top-search .search-button {
        background: rgb(255 255 255);
        border: none;
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
        width: 44px
    }

    #search.top-search .search-button:hover {
        /* background:#00c3a5; */
        fill: #4966ca;
    }

    #search.top-search .search-button .svg-icon__search {
        margin: 0
    }

    #search.top-search.is-focused .search-field,#search.top-search .is-focused .search-field {
        background: #fff;
        color: #1b2734
    }

    #search.top-search .search-field::-webkit-input-placeholder,#search.top-search .search-field::-webkit-input-placeholder {
        color: #98a1ab
    }

    #search.top-search.is-focused .search-field:-moz-placeholder,#search.top-search .is-focused .search-field:-moz-placeholder,#search.top-search.is-focused .search-field::-moz-placeholder,#search.top-search .is-focused .search-field::-moz-placeholder {
        color: #98a1ab
    }

    #search.top-search.is-focused .search-field:-ms-input-placeholder,#search.top-search .is-focused .search-field:-ms-input-placeholder {
        color: #98a1ab
    }

    #search.top-search.is-focused .search-field:placeholder-shown,#search.top-search .is-focused .search-field:placeholder-shown {
        color: #98a1ab
    }
}

@media (max-width: 767px) {
    #search.top-search .form-control {
        border:1px solid #dcdfe3;
        border-radius: 3px;
        font-size: 15px;
        line-height: 1.33333;
        padding: 8px 15px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
    }

    #search.top-search .icon-trigger {
        right: 25px
    }

    #search.top-search .button-col,#search.top-search .city-col,#search.top-search .specialists-col {
        padding: 0 10px
    }
}

.search-filters-placeholder {
    background-color: #fff;
    border-bottom: 1px solid #dcdfe3;
    height: 50px;
    width: 100%
}

.search-filters-btn-placeholder {
    width: 100px
}

@keyframes placeholderShimmer {
    0% {
        background-position: -460px 0
    }

    to {
        background-position: 460px 0
    }
}

.search-filters-btn-placeholder.animated {
    animation-duration: 9s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-name: placeholderShimmer;
    animation-timing-function: linear;
    background: linear-gradient(90deg,#f7f9fa 10%,#edeff2 45%,#f7f9fa 90%)
}

.static-map-wrapper {
    padding-top: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

.static-map-wrapper .placeholder {
    background-color: #fff;
    border-radius: 6px;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,.05)
}

@media (min-width: 992px) {
    .new-search-listing .result-column {
        border-right:1px solid #edeff2
    }
}

.new-search-listing .result-column .dp-doctor-card .media {
    overflow: inherit
}

.new-search-listing .result-column .dp-doctor-card .media-body .h4 {
    font-size: 20px;
    line-height: 21px;
    text-shadow: 0 0 1px rgb(51 51 51 / 35%);
}

h3.h4.text-base-color.offset-bottom-0-5.display-flex-wrap a:hover {
    color: #4966ca;
    text-decoration: none;
}

.new-search-listing .result-column .dp-doctor-card .dp-doctor-card-content-indented {
    padding-left: 90px
}

.new-search-listing .result-column .dp-doctor-card.dp-doctor-card-sm .dp-doctor-card-content-indented {
    padding-left: 70px
}

.doctor-card-address .address-name,.doctor-card-address .nav-responsive {
    overflow: hidden
}

.doctor-card-address .nav-responsive:after {
    display: none
}

.doctor-card-address .nav-tabs li a:hover .svg-icon {
    fill: #3d83df
}

.doctor-card-address .nav-tabs li.online a:hover {
    color: #8870d5
}

.doctor-card-address .nav-tabs li.online a:hover .svg-icon {
    fill: #8870d5
}

.doctor-card-address .nav-tabs li.active a .svg-icon {
    fill: #3d83df
}

.doctor-card-address .nav-tabs li.active.online a {
    border-bottom: 3px solid #8870d5;
    color: #8870d5
}

.doctor-card-address .nav-tabs li.active.online a .svg-icon {
    fill: #8870d5
}

.close-map-btn {
    cursor: pointer;
    margin: 24px 20px 0 0
}

.zoom-controls-wrapper {
    background: #fff;
    box-shadow: 0 1px 4px -1px rgba(0,0,0,.3);
    cursor: pointer;
    height: 81px;
    margin: 20px 0 0 20px;
    text-align: center;
    width: 40px
}

.zoom-controls-wrapper .zoom-btn {
    background: #fff;
    height: 40px;
    width: 40px
}

.zoom-controls-wrapper .zoom-btn .zoom-icon {
    margin-top: 8px;
    transition: all .2s linear
}

.zoom-controls-wrapper .zoom-btn:hover .zoom-icon {
    fill: #1b2734
}

.zoom-controls-wrapper .separator {
    background-color: #e6e6e6;
    height: 1px;
    margin: 0 5px;
    overflow: hidden;
    position: relative;
    top: 0;
    width: 30px
}

.map-search-btn-wrapper {
    background: #fff;
    border: 1px solid #dcdfe3;
    border-radius: 3px;
    box-shadow: 0 1px 4px -1px rgba(0,0,0,.3);
    box-sizing: border-box;
    cursor: pointer;
    height: 40px;
    margin-top: 20px
}

.map-search-btn-wrapper .search-btn-text {
    margin-right: 6px
}

.map-search-btn-wrapper .svg-icon {
    height: 16px;
    transition: fill .2s linear;
    width: 16px
}

.map-search-btn-wrapper:hover .search-btn-text {
    color: #1b2734
}

.map-search-btn-wrapper:hover .svg-icon {
    fill: #1b2734
}

.bto-wrapper {
    background-color: #f2efeb;
    overflow-y: hidden
}

.bto-wrapper .bto-container {
    position: relative
}

.bto-wrapper .bto-container .bto-content-wrapper {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 100
}

.bto-wrapper .bto-container .bto-content {
    max-width: 360px;
    width: 50%
}

.bto-wrapper .bto-scene {
    height: 300px;
    position: relative;
    z-index: 10
}

.bto-wrapper .bto-scene .bto-layer {
    height: 100%;
    position: absolute;
    width: 100%
}

.bto-wrapper .bto-scene .bto-layer>div {
    position: absolute
}

.bto-wrapper .bto-scene .bto-layer>div img {
    width: 100%
}

.bto-wrapper .bto-scene .bto-layer>div img[data-src] {
    background-color: transparent!important
}

.bto-wrapper .bto-scene .bto-layer .bto-background {
    background-color: #f2efeb;
    bottom: 0;
    height: 300px;
    left: 0;
    right: 0;
    top: 0;
    width: 100%
}

.bto-wrapper .bto-scene .bto-layer .bto-stairs {
    right: 0;
    top: 0;
    width: 53%
}

.bto-wrapper .bto-scene .bto-layer .bto-bubbles {
    left: 0;
    top: 0;
    width: 37%
}

.bto-wrapper .bto-scene .bto-layer .bto-doctor {
    right: 0;
    top: -2%;
    width: 22%
}

@media (max-width: 767px) {
    .bto-wrapper {
        overflow:hidden
    }

    .bto-wrapper .bto-container .bto-content-wrapper {
        margin: 10px 0;
        position: relative
    }

    .bto-wrapper .bto-scene {
        background: #f2efeb url('//platform.docplanner.com/img/general/landing/back-to-office/modal-background.png') 100% 0 no-repeat;
        background-size: cover;
        height: 100%;
        left: 0;
        opacity: .5;
        position: absolute;
        top: 0;
        width: 100%
    }

    .bto-wrapper .bto-scene .bto-layer {
        display: none
    }
}

.bto-wrapper .bto-modal-background {
    margin: 0 -20px 30px
}

.bto-wrapper .bto-modal-background img {
    width: 100%
}

.logo-zl {
    background-position: 0;
    background-repeat: no-repeat;
    display: block;
    height: 25px
}

.logo-zl span {
    display: none
}

.logo-zl.medium {
    height: 35px
}

.footer {
    border-top: 1px solid #edeff2
}

body,html {
    height: 100%;
    /* overflow: hidden; */
}

.wrapper {
    height: auto!important;
    min-height: 100%;
    overflow-x: hidden
}

.navbar-message {
    background-color: #f3f0fa;
    color: #8870d5;
    font-weight: 500;
    padding: 15px 0
}

.navbar-message .svg-icon {
    min-width: 16px;
    top: 3px
}

.navbar-message .btn.btn-calm-light {
    background-color: #f3f0fa;
    color: #8870d5;
    border-color: #8870d5
}

.navbar-message .btn.btn-calm-light.focus,.navbar-message .btn.btn-calm-light:focus,.navbar-message .btn.btn-calm-light:hover {
    color: #8870d5;
    border-color: #8870d5;
    background-color: #e9e4f6
}

.navbar-message .btn.btn-calm-light.active,.navbar-message .btn.btn-calm-light:active,.open>.navbar-message .btn.btn-calm-light.dropdown-toggle {
    background-color: #bdade4;
    color: #8870d5;
    border-color: #8870d5
}

.navbar-message .btn.btn-calm-light.disabled,.navbar-message .btn.btn-calm-light[disabled],fieldset[disabled] .navbar-message .btn.btn-calm-light {
    background-color: #f3f0fa
}

.navbar-message .btn.btn-calm-light .badge {
    background-color: #8870d5;
    color: #f3f0fa
}

@media (max-width: 767px) {
    .navbar-message .btn {
        margin-left:36px
    }
}

.navbar-message .navbar-message-content {
    flex: 1
}

.navbar-default--homepage {
    background-color: #00c3a5
}

.navbar-default .navbar-search {
    display: block
}

.navbar-default .navbar-search .navbar-nav {
    float: none
}

.navbar-default .logo-container--with-subtitle {
    margin-top: 5px;
    position: relative
}

.navbar-default .questions-icon {
    top: 4px
}

.navbar-default.top-affixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1045
}

.navbar-brand-center-wrapper,.navbar-logo-container,.navbar-toggle>a {
    position: relative
}

.navbar-toggle>a {
    display: inline-block;
    height: 24px;
    margin-left: 15px;
    padding-top: 2px;
    top: 3px
}

.navbar-toggle>a.hamburger {
    margin-left: 6px;
    padding-top: 4px
}

.logo-container {
    line-height: 0;
    margin: 0
}

.logo-container--with-subtitle .navbar-brand {
    padding: 10px
}

.logo-container__adds {
    color: #fff;
    opacity: .8;
    position: absolute;
    right: 26px;
    top: 32px
}

.inside-icon {
    left: 5px;
    position: absolute;
    top: 5px
}

.nav-bar-top .dropdown .dropdown-menu>li .svg-icon {
    fill: #627282;
    margin-right: 10px
}

.nav-bar-top.nav-bar-top-light {
    background-color: #fff;
    border-bottom: 1px solid #edeff2
}

.nav-bar-top.nav-bar-top-light .navbar-nav>li>a {
    color: #1b2734
}

.nav-bar-top.nav-bar-top-light .navbar-nav>li .svg-icon {
    fill: #1b2734
}

.nav-bar-top.nav-bar-top-light .navbar-nav.open>li>a,.nav-bar-top.nav-bar-top-light .navbar-nav.open>li>a:focus,.nav-bar-top.nav-bar-top-light .navbar-nav.open>li>a:hover,.nav-bar-top.nav-bar-top-light .navbar-nav>li>a:focus,.nav-bar-top.nav-bar-top-light .navbar-nav>li>a:hover {
    color: #1b2734;
    opacity: .8
}

@media (min-width: 768px) and (max-width:991px) {
    .navbar-default .navbar-search {
        position:absolute;
        top: 47px;
        width: 783px
    }

    .navbar-default .navbar-search .autocomplete-results-container .default-autocomplete {
        min-width: 320px
    }
}

@media (min-width: 992px) and (max-width:1199px) {
    .container>.navbar-search {
        margin-left:inherit
    }
}

@media (min-width: 992px) {
    .navbar-default .navbar-header {
        margin-right:10px;
        width: 16%;
    }

    .navbar-default .navbar-search {
        width: 50%
    }
}

@media (max-width: 767px) {
    .navbar-search {
        margin:0
    }

    .navbar-search.in {
        overflow-y: visible
    }

    .navbar-search .navbar-search-wrapper {
        align-items: flex-start;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between
    }

    .navbar-toggle {
        z-index: 10
    }

    .navbar-toggle.left {
        left: 0;
        position: absolute
    }

    .navbar-toggle.left>a {
        margin-left: 0
    }

    .navbar-nav.nav>li {
        flex-basis: 100%
    }

    .navbar-default .navbar-nav>li.divider {
        background-color: #00c3a5
    }

    .navbar-default .navbar-search {
        display: none
    }

    .navbar-default .navbar-search.collapsing,.navbar-default .navbar-search.in {
        display: block
    }

    .navbar-default .navbar-search .search-close-btn {
        padding: 10px 0 10px 10px
    }

    .navbar-default .navbar-search .search-close-btn:active,.navbar-default .navbar-search .search-close-btn:focus {
        opacity: .8;
        outline: none
    }

    .logo-container,.logo-container--with-subtitle {
        margin: 0 auto
    }

    .navbar-brand-center-wrapper {
        position: absolute
    }

    .nav-bar-top .navbar-container {
        padding: 0
    }

    .nav-bar-top .navbar-header {
        align-items: center;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        min-height: 50px;
        padding: 0 20px;
        position: relative;
        width: 100%;
        z-index: 100
    }

    .nav-bar-top .navbar-header:after,.nav-bar-top .navbar-header:before {
        display: none
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle {
        margin: 0;
        padding: 10px 20px 5px 0px;
    }
    
    .navbar-toggle {
    float: left;
}

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger {
        height: 20px;
        margin: 0;
        padding: 0;
        top: 0;
        width: 20px
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger:active,.nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger:focus,.nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger:hover {
        opacity: .8;
        outline: none;
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger .icon-bar {
        border-radius: 1px;
        height: 2px;
        margin: 0;
        padding: 0;
        position: absolute;
        transition: all .3s ease;
        width: 100%
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger .icon-bar-one {
        top: 50%;
        transform: rotate(45deg)
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger .icon-bar-two {
        opacity: 0;
        top: calc(50% - 1px)
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger .icon-bar-three {
        bottom: auto;
        top: 50%;
        transform: rotate(-45deg)
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger.collapsed .icon-bar-one {
        top: 17%;
        transform: rotate(0)
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger.collapsed .icon-bar-two {
        opacity: 1;
        top: calc(50% - 1px)
    }

    .nav-bar-top .navbar-header .navbar-mobile-nav-toggle .hamburger.collapsed .icon-bar-three {
        bottom: 17%;
        top: auto;
        transform: rotate(0)
    }

    .nav-bar-top .navbar-header .navbar-mobile-search-toggle {
        flex-grow: 2;
        margin: 0;
        opacity: 1;
        overflow: hidden;
        padding: 0
    }

    .nav-bar-top .navbar-header .navbar-mobile-search-toggle .navbar-mobile-search-trigger {
        align-items: center;
        background: rgb(255 255 255);
        border-radius: 6px;
        color: #fff;
        display: flex;
        height: 35px;
        justify-content: space-between;
        margin: 0;
        padding: 0 10px;
        top: 0;
        width: 100%;
    }

    .nav-bar-top .navbar-header .navbar-mobile-search-toggle .navbar-mobile-search-trigger:active,.nav-bar-top .navbar-header .navbar-mobile-search-toggle .navbar-mobile-search-trigger:focus,.nav-bar-top .navbar-header .navbar-mobile-search-toggle .navbar-mobile-search-trigger:hover {
        opacity: .8;
        outline: none;
        text-decoration: none
    }

    .nav-bar-top .navbar-header .navbar-mobile-search-toggle.disabled {
        opacity: 0
    }

    .nav-bar-top .navbar-header .navbar-mobile-search-toggle.disabled .navbar-mobile-search-trigger {
        height: 0
    }

    .nav-bar-top .navbar-header .navbar-brand {
        height: 24px;
        margin-right: 10px;
        padding: 0
    }

    .nav-bar-top .navbar-header .navbar-brand>svg {
        height: 24px;
        top: 0
    }

    .nav-bar-top .navbar-collapse {
        background-color: #4966ca;
        bottom: 100vh;
        box-shadow: none;
        display: block;
        height: calc(100vh - 60px)!important;
        left: 0;
        margin: 0;
        position: fixed;
        top: auto;
        width: 100%;
        z-index: 10
    }
    
    .navbar-collapse.in {
        top: 50px;
}

    .nav-bar-top .navbar-collapse.collapsing {
        transition: none
    }

    .nav-bar-top .navbar-collapse.navbar-search {
        height: 100vh!important;
        z-index: 200
    }

    .nav-bar-top .navbar-collapse.active {
        bottom: auto;
        top: 60px
    }

    .nav-bar-top .navbar-collapse.active.navbar-search {
        top: 0
    }

    .nav-bar-top .navbar-nav {
        box-shadow: none;
        margin: 0
    }

    .nav-bar-top .navbar-nav>li {
        /* border-bottom: 1px solid #00b39b; */
        flex-basis: 100%;
    }

    .nav-bar-top .navbar-nav>li>a {
        align-items: center;
        color: #fff;
        display: flex;
        justify-content: space-between;
        padding: 10px 10px 10px 0;
    }

    .nav-bar-top .navbar-right .dropdown-item:focus,.nav-bar-top .navbar-right .dropdown-item:hover,.nav-bar-top .navbar-right .dropdown-menu>li>a:focus,.nav-bar-top .navbar-right .dropdown-menu>li>a:hover {
        background-color: transparent;
        opacity: .8
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown) .dropdown-menu {
        background: #00c3a5;
        box-shadow: none;
        display: block;
        height: 100%;
        left: 100%;
        padding: 0 20px;
        position: fixed;
        top: 60px;
        transition: left .3s ease-out;
        width: 100%
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown) .dropdown-menu .divider {
        border-top: 1px solid #00c3a5
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown) .dropdown-menu>li {
        border-bottom: 1px solid #00b39b
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown) .dropdown-menu>li>a {
        align-items: center;
        color: #fff;
        display: flex;
        line-height: 22px;
        padding: 20px 10px 20px 0
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown) .dropdown-menu>li>a:focus {
        outline: none
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown) .dropdown-menu>li .svg-icon {
        fill: #fff;
        margin-right: 10px
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown) .dropdown-menu>li:focus {
        outline: none
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown).open .dropdown-menu {
        left: 0
    }

    .nav-bar-top .dropdown:not(.search-autocomplete-dropdown).open .dropdown-menu .dropdown-header,.nav-bar-top .dropdown:not(.search-autocomplete-dropdown).open .dropdown-menu>li>a {
        padding: 20px 10px 20px 0
    }

    .nav-bar-top.nav-bar-top-light .navbar-header .navbar-mobile-nav-toggle .hamburger:active,.nav-bar-top.nav-bar-top-light .navbar-header .navbar-mobile-nav-toggle .hamburger:focus,.nav-bar-top.nav-bar-top-light .navbar-header .navbar-mobile-nav-toggle .hamburger:hover {
        opacity: 1
    }

    .nav-bar-top.nav-bar-top-light .navbar-header .navbar-mobile-nav-toggle .hamburger .icon-bar {
        background-color: #3d83df
    }

    .nav-bar-top.nav-bar-top-light .navbar-collapse {
        background-color: #fff
    }

    .nav-bar-top.nav-bar-top-light .navbar-nav>li {
        border-bottom: 1px solid #edeff2
    }

    .nav-bar-top.nav-bar-top-light .navbar-nav>li>a {
        color: #1b2734
    }

    .nav-bar-top.nav-bar-top-light .navbar-nav>li .svg-icon {
        fill: #1b2734
    }

    .nav-bar-top.nav-bar-top-light .navbar-nav.open>li>a,.nav-bar-top.nav-bar-top-light .navbar-nav.open>li>a:focus,.nav-bar-top.nav-bar-top-light .navbar-nav.open>li>a:hover,.nav-bar-top.nav-bar-top-light .navbar-nav>li>a:focus,.nav-bar-top.nav-bar-top-light .navbar-nav>li>a:hover {
        color: #1b2734;
        font-weight: 400;
        opacity: .8
    }

    .nav-bar-top.nav-bar-top-light .dropdown .dropdown-menu {
        background: #fff
    }

    .nav-bar-top.nav-bar-top-light .dropdown .dropdown-menu .divider {
        border-top: 1px solid #edeff2
    }

    .nav-bar-top.nav-bar-top-light .dropdown .dropdown-menu>li {
        border-bottom: 1px solid #edeff2
    }

    .nav-bar-top.nav-bar-top-light .dropdown .dropdown-menu>li>a {
        color: #1b2734
    }

    .nav-bar-top.nav-bar-top-light .dropdown .dropdown-menu>li .svg-icon {
        fill: #1b2734
    }

    .nav-bar-top.nav-bar-top-light .dropdown.open .dropdown-menu .dropdown-header,.nav-bar-top.nav-bar-top-light .dropdown.open .dropdown-menu>li>a {
        color: #1b2734
    }
}

.typeahead em {
    font-style: normal
}

.typeahead>.active em {
    background: transparent
}

.typeahead>.active>a {
    font-weight: 400
}

.default-autocomplete,.typeahead {
    max-height: 420px;
    max-width: 490px;
    min-width: 490px;
    overflow-y: auto;
    z-index: 1041
}

@media (max-width: 767px) {
    .default-autocomplete,.typeahead {
        max-width:100%;
        min-width: 100%;
        width: 100%
    }
}

#search .type-wrapper {
    display: block
}

@media (max-width: 767px) {
    #search .type-wrapper {
        display:none
    }
}

#search .capitalize {
    text-transform: capitalize
}

#search .prevent-shrink {
    flex-shrink: 0
}

#search .show-more {
    color: #1662c6
}

#search .text-squash {
    line-height: 1.5
}

#search .text-squeeze {
    line-height: 1.2
}

#autocomplete-default-places.default-autocomplete {
    background: #fff url(https://maps.gstatic.com/mapfiles/api-3/images/powered-by-google-on-white2.png) 97% 98% no-repeat scroll;
    padding-bottom: 0
}

html[region=hu] #profile-header #object-buttons .or {
    display: none
}

html[region=tr] #vacations-panel #added-vacation>div strong {
    margin-right: 0
}

html[region=tr] #popular-queries-short {
    background: rgba(0,0,0,.1)
}

html[region=tr] #popular-queries-short ul {
    font-size: 13px;
    line-height: 18px;
    margin-top: 5px
}

html[region=tr] #profile-header #object-buttons .btn {
    margin-right: 0!important
}

html[region=tr] .logo-container__adds {
    right: 26px;
    top: 32px
}

html[region=it] .footer address {
    white-space: nowrap
}

html[region=it] #doctor-calendars .calendar-editor table .buttons td i {
    margin: 2px 0 0 -6px
}

.floating-cookie-info {
    bottom: 0;
    left: 0;
    position: fixed;
    z-index: 1040
}

.floating-cookie-info a {
    color: #1662c6
}

.floating-cookie-info p {
    flex: 1
}

.floating-cookie-info.floating-cookie-info-hidden {
    bottom: -100%
}

.floating-cookie-info .floating-cookie-info-panel {
    border-radius: 6px;
    box-shadow: 0 0 22px 0 rgba(0,0,0,.1);
    margin-left: -10px;
    margin-right: -10px
}

.above-cookie-info {
    z-index: 4125
}

/* ============================================================
   gdeadres.ru — серверный блок фильтров и табы рейтинга.
   Подключается из catalog.php (<aside class="gd-filters">).
   ============================================================ */
.gd-filters {
    background: #fff;
    border: 1px solid #e9e9e9;
    border-radius: 8px;
    padding: 16px;
    font-size: 14px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #1b2734;
    box-sizing: border-box;
    margin-bottom: 20px;
}
.gd-filters * { box-sizing: border-box; }
.gd-filters__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 12px;
}
.gd-filters__reset {
    background: none;
    border: none;
    color: #3757c5;
    font-size: 13px;
    cursor: pointer;
    padding: 0;
}
.gd-filters__reset:hover { text-decoration: underline; }
.gd-filters__group {
    border-top: 1px solid #f0f3f6;
    padding: 10px 0 6px;
}
.gd-filters__group summary {
    cursor: pointer;
    font-weight: 600;
    padding: 4px 0;
    list-style: none;
    user-select: none;
    position: relative;
    padding-right: 22px;
}
.gd-filters__group summary::-webkit-details-marker { display: none; }
.gd-filters__group summary::after {
    content: ""; position: absolute; right: 4px; top: 50%;
    width: 8px; height: 8px;
    border-right: 2px solid #98a1ab; border-bottom: 2px solid #98a1ab;
    transform: translateY(-65%) rotate(45deg); transition: .15s;
}
.gd-filters__group[open] summary::after {
    transform: translateY(-30%) rotate(-135deg);
}
.gd-filters__list {
    list-style: none; padding: 4px 0 6px; margin: 0;
    max-height: 260px; overflow-y: auto;
}
.gd-filters__list li { margin: 0; padding: 0; }
.gd-filters__list label {
    display: flex; align-items: center; gap: 8px;
    padding: 5px 0; cursor: pointer;
    font-size: 13px; line-height: 1.35;
}
.gd-filters__list input[type=checkbox] {
    flex-shrink: 0; margin: 0; width: 16px; height: 16px; accent-color: #3757c5;
}
.gd-filters__name { flex: 1; }
.gd-filters__count {
    margin-left: auto; color: #98a1ab; font-size: 12px;
    background: #f4f6f8; padding: 1px 8px; border-radius: 10px;
}
.gd-filters__actions {
    border-top: 1px solid #f0f3f6;
    padding-top: 12px; margin-top: 8px;
}
.gd-filters__apply {
    width: 100%; height: 44px;
    background: #3757c5; color: #fff;
    border: none; border-radius: 6px;
    font-weight: 700; font-size: 15px; cursor: pointer;
    transition: .15s;
}
.gd-filters__apply:hover { background: #2c46a3; }

/* Табы рейтинга */
.gd-filters__rating {
    padding: 4px 0 12px;
    border-bottom: 1px solid #f0f3f6;
    margin-bottom: 4px;
}
.gd-filters__rating-label {
    font-weight: 600;
    margin-bottom: 8px;
}
.gd-filters__rating-tabs {
    display: flex; gap: 6px;
}
.gd-rating-tab {
    flex: 1; text-align: center; padding: 8px 0;
    border: 1px solid #d8dde3; border-radius: 6px;
    color: #1b2734; font-size: 13px; font-weight: 600;
    text-decoration: none; transition: .15s;
    background: #fff;
}
.gd-rating-tab:hover {
    border-color: #3757c5; color: #3757c5;
}
.gd-rating-tab.active {
    background: #3757c5; color: #fff; border-color: #3757c5;
}


/* SEO-текстовый блок внизу каталога */
.gd-seo-text {
    margin: 24px 0 32px;
    /* padding: 18px 22px; */
    /* background: #fff; */
    /* border: 1px solid #e9e9e9; */
    /* border-radius: 8px; */
    color: #1b2734;
    font-size: 14px;
    line-height: 1.6;
}
.gd-seo-text h2 {
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 12px;
    color: #1b2734;
}
.gd-seo-text p { margin: 0 0 10px; }
.gd-seo-text p:last-child { margin-bottom: 0; }

/* gd-filters в левой колонке — резиновая ширина */
.col-md-4 .gd-filters { margin-top: 14px; }
.gd-filters__list { max-height: 240px; }


/* ============================================================
   Горизонтальная панель фильтров над листингом (старый стиль).
   .gd-filterbar — pill-кнопки на белой полосе под navbar.
   ============================================================ */
.gd-filterbar-wrap {
    background:#fff; border-bottom:1px solid #dcdfe3;
    width:100%; position:sticky; top:0; z-index:1190;
    overflow:visible;
}
.gd-filterbar {
    width:100%; margin:0; padding:10px 24px;
    display:flex; flex-wrap:nowrap; align-items:center; gap:8px;
    font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size:14px; color:#1b2734;
    overflow:visible; -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    min-width:0;
}
.gd-filterbar::-webkit-scrollbar { display:none; }
.gd-filterbar--expanded {
    flex-wrap:wrap; overflow-x:visible;
}
.gd-filterbar * { box-sizing:border-box; }
.gd-filterbar__label { font-weight:700; color:#1b2734; margin-right:4px; }
.gd-filterbar__spacer { flex:1; }
.gd-filterbar__reset {
    background:none; border:none; color:#3757c5; cursor:pointer;
    font-size:13px; padding:6px 10px; flex-shrink:0;
}
.gd-filterbar__reset:hover { text-decoration:underline; }

/* Кнопка «Все фильтры» / «Свернуть» */
.gd-filterbar__all {
    flex-shrink:0; white-space:nowrap;
    background:#fff; border:1px solid #3757c5; border-radius:18px;
    padding:6px 14px; font-size:13px; font-weight:600; color:#3757c5;
    cursor:pointer; transition:.12s; font-family:inherit;
}
.gd-filterbar__all:hover { background:#eaf0fb; }
.gd-filterbar--expanded .gd-filterbar__all { background:#eaf0fb; }
.gd-filterbar__all.has-hidden-active { background:#3757c5; color:#fff; border-color:#3757c5; }
.gd-filterbar__all.has-hidden-active:hover { background:#2f4cb5; }
.gd-filterbar__all-badge {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 18px; height: 18px; padding: 0 4px;
    background: #fff; color: #3757c5;
    border-radius: 9px; font-size: 11px; font-weight: 700;
    margin-left: 4px; line-height: 1;
}
.gd-filterbar__total { font-size:13px; color:#5e6772; }
.gd-filterbar__total strong { color:#1b2734; font-weight:700; }

.gd-quickbar {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    margin: 14px 0 12px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.gd-quickbar::-webkit-scrollbar {
    display: none;
}
.gd-quickbar__btn {
    flex: 0 0 auto;
    border: 0;
    border-radius: 8px;
    background: #e9e9ea;
    color: #2b2d33;
    min-height: 32px;
    padding: 0 10px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    cursor: pointer;
    transition: background .12s ease, color .12s ease, box-shadow .12s ease;
    white-space: nowrap;
}
.gd-quickbar__btn:hover {
    background: #dddddf;
}
.gd-quickbar__btn.is-active {
    background: #d8ddeb;
    color: #252a34;
    box-shadow: inset 0 0 0 1px rgba(55, 87, 197, .22);
}
.gd-quickbar__btn.is-loading {
    opacity: .65;
    cursor: wait;
}

/* Quick-list (тумблеры в pill «Быстрые фильтры») */
.gd-quick-list {
    list-style: none;
    margin: 4px 0 0;
    padding: 0;
    min-width: 230px;
}
.gd-quick-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 10px 16px;
    border-bottom: 1px solid #f0f2f6;
}
.gd-quick-item:last-child {
    border-bottom: 0;
}
.gd-quick-item__label {
    font-size: 13px;
    color: #2c313a;
    line-height: 1.3;
}

/* Тумблер-кнопка */
.gd-toggle-switch {
    position: relative;
    flex-shrink: 0;
    width: 38px;
    height: 21px;
    background: #d0d5de;
    border: 0;
    border-radius: 11px;
    cursor: pointer;
    padding: 0;
    transition: background 0.22s ease;
}
.gd-toggle-switch__knob {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 15px;
    height: 15px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0,0,0,.22);
    transition: left 0.22s ease;
    pointer-events: none;
}
.gd-toggle-switch.is-active {
    background: #3757c5;
}
.gd-toggle-switch.is-active .gd-toggle-switch__knob {
    left: 20px;
}
.gd-toggle-switch.is-loading {
    opacity: .6;
    cursor: wait;
}

/* Pill-кнопка */
.gd-pill { position:relative; flex-shrink:0; }
.gd-pill[open] { z-index:1210; }
.gd-pill > summary {
    list-style:none; cursor:pointer;
    background:#fff; border:1px solid #dcdfe3; border-radius:18px;
    padding:6px 28px 6px 14px; font-size:13px; font-weight:500; color:#1b2734;
    position:relative; user-select:none; transition:.12s;
    display:inline-flex; align-items:center; gap:6px;
    white-space:nowrap;
}
.gd-pill > summary::-webkit-details-marker { display:none; }
.gd-pill > summary::after {
    content:""; position:absolute; right:12px; top:50%;
    width:6px; height:6px;
    border-right:2px solid #98a1ab; border-bottom:2px solid #98a1ab;
    transform:translateY(-65%) rotate(45deg); transition:.12s;
}
.gd-pill[open] > summary::after { transform:translateY(-30%) rotate(-135deg); }
.gd-pill > summary:hover { border-color:#3757c5; color:#3757c5; }
.gd-pill > summary:hover::after { border-color:#3757c5; }
.gd-pill.is-active > summary { background:#eaf0fb; border-color:#3757c5; color:#3757c5; }
.gd-pill.is-active > summary::after { border-color:#3757c5; }
.gd-pill[open] > summary { background:#3757c5; color:#fff; border-color:#3757c5; }
.gd-pill[open] > summary::after { border-color:#fff; }
.gd-pill__badge {
    background:#3757c5; color:#fff; font-size:11px; font-weight:700;
    border-radius:10px; padding:1px 7px; min-width:18px; text-align:center;
    line-height:1.4;
}
.gd-pill.is-active > summary .gd-pill__badge { background:#fff; color:#3757c5; }
.gd-pill[open] > summary .gd-pill__badge { background:#fff; color:#3757c5; }

/* Popup-дропдаун */
.gd-pill__pop {
    position:absolute; top:calc(100% + 6px); left:0;
    min-width:260px; max-width:360px;
    background:#fff; border:1px solid #e9e9e9; border-radius:8px;
    box-shadow:0 8px 28px rgba(0,0,0,0.12);
    padding:10px 0; z-index:1211;
}
.gd-pill__search {
    width: calc(100% - 20px);
    height: 34px;
    margin: 0 10px 8px;
    border: 1px solid #d9dee7;
    border-radius: 7px;
    padding: 0 10px;
    color: #1b2734;
    font-size: 13px;
    outline: 0;
}
.gd-pill__search:focus {
    border-color: #3757c5;
    box-shadow: 0 0 0 3px rgba(55,87,197,.10);
}
.gd-pill__list {
    list-style:none; padding:0; margin:0;
    max-height:340px; overflow-y:auto;
}
.gd-pill__list li { margin:0; }
.gd-pill__list label {
    display:flex; align-items:center; gap:10px;
    padding:8px 16px; cursor:pointer; font-size:13px; line-height:1.4;
    transition:.1s;
}
.gd-pill__list label:hover { background:#f7f9fa; }
.gd-pill__list input[type=checkbox] {
    flex-shrink:0; margin:0; width:16px; height:16px; accent-color:#3757c5;
}
.gd-metro-filter-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:16px;
    height:16px;
    flex:0 0 16px;
}
.gd-metro-filter-icon svg {
    display:block;
    width:16px;
    height:16px;
}
.gd-pill__name { flex:1; color:#1b2734; }
.gd-pill__count { color:#98a1ab; font-size:12px; flex-shrink:0; }
.gd-pill__pop-actions {
    border-top:1px solid #f0f3f6;
    padding:10px 16px 4px;
}
.gd-pill__apply {
    width:100%; height:36px; background:#3757c5; color:#fff;
    border:none; border-radius:6px; font-weight:600; font-size:13px; cursor:pointer;
}
.gd-pill__apply:hover { background:#2c46a3; }

/* Pill «Рейтинг» — внутри попапа простой список вместо чекбоксов */
.gd-rating-row {
    display:block; padding:9px 16px; text-decoration:none;
    color:#1b2734; font-size:13px; transition:.1s;
}
.gd-rating-row:hover { background:#f7f9fa; color:#3757c5; }
.gd-rating-row.active {
    background:#eaf0fb; color:#3757c5; font-weight:600;
}

@media (max-width: 768px) {
    .gd-filterbar-wrap {
        z-index: 6000;
        overflow: visible;
    }
    .gd-filterbar { padding:8px 16px; gap:6px; overflow-x:auto; overflow-y:visible; flex-wrap:nowrap; }
    .gd-filterbar__label { display:none; }
    .gd-filterbar__total { display:none; }
    .gd-quickbar {
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 8px;
        margin: 12px 0 10px;
        padding-bottom: 2px;
        -webkit-overflow-scrolling: touch;
    }
    .gd-quickbar__btn {
        flex: 0 0 auto;
        border-radius: 10px;
        min-height: 38px;
        padding: 0 13px;
        font-size: 15px;
        white-space: nowrap;
    }
    .gd-pill[open] {
        z-index: 6001;
    }
    .gd-pill[open] .gd-pill__pop {
        position: fixed;
        top: var(--gd-pill-pop-top, 120px);
        left: var(--gd-pill-pop-left, 12px);
        right: auto;
        width: var(--gd-pill-pop-width, calc(100vw - 24px));
        min-width: 0;
        max-width: none;
        max-height: calc(100vh - 130px);
        overflow: hidden;
        z-index: 6002;
    }
    .gd-pill[open] .gd-pill__list {
        max-height: calc(100vh - 230px);
    }
}

/* ============================================================
   Модалка всех фильтров
   ============================================================ */
dialog.gd-filter-modal {
    border:0;
    border-radius:12px;
    padding:0;
    width:520px;
    max-width:calc(100vw - 28px);
    max-height:80vh;
    overflow:hidden;
    box-shadow:0 18px 54px rgba(22,31,46,.24);
}
dialog.gd-filter-modal::backdrop { background:rgba(16,24,40,.46); }
.gd-filter-modal__inner {
    display:flex;
    flex-direction:column;
    max-height:80vh;
    background:#fff;
}
.gd-filter-modal__head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    padding:22px 26px 18px;
    border-bottom:1px solid #edf0f4;
}
.gd-filter-modal__title {
    margin:0;
    color:#1b2734;
    font-size:26px;
    line-height:1.15;
    font-weight:800;
}
.gd-filter-modal__subtitle {
    margin-top:4px;
    color:#6a7480;
    font-size:13px;
}
.gd-filter-modal__close {
    width:34px;
    height:34px;
    border:0;
    border-radius:50%;
    background:#eef2f7;
    color:#4f5965;
    font-size:24px;
    line-height:30px;
    cursor:pointer;
    flex-shrink:0;
}
.gd-filter-modal__close:hover { background:#e3e8f0; color:#3757c5; }
.gd-filter-modal__body {
    padding:6px 26px;
    overflow:auto;
}
.gd-filter-modal__skeleton {
    display:flex;
    flex-direction:column;
    gap:14px;
    padding:14px 0;
}
.gd-filter-modal__skeleton span {
    display:block;
    height:48px;
    border-radius:10px;
    background:linear-gradient(90deg,#eef2f6 0%,#f8fafc 45%,#eef2f6 90%);
    background-size:220% 100%;
    animation:gdFilterSkeleton 1.1s ease-in-out infinite;
}
.gd-filter-modal__skeleton span:nth-child(2) { width:92%; }
.gd-filter-modal__skeleton span:nth-child(3) { width:96%; }
.gd-filter-modal__skeleton span:nth-child(4) { width:88%; }
.gd-filter-modal__skeleton span:nth-child(5) { width:94%; }
@keyframes gdFilterSkeleton {
    0% { background-position:100% 0; }
    100% { background-position:-100% 0; }
}
.gd-filter-modal__group {
    border-bottom:1px solid #edf0f4;
    padding:14px 0;
}
.gd-filter-modal__group:last-child { border-bottom:0; }
.gd-filter-modal__group summary {
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    color:#1b2734;
    font-size:17px;
    font-weight:750;
}
.gd-filter-modal__group summary::-webkit-details-marker { display:none; }
.gd-filter-modal__group summary:after {
    content:"";
    width:9px;
    height:9px;
    border-right:2px solid #7b8490;
    border-bottom:2px solid #7b8490;
    transform:rotate(45deg);
    margin-right:4px;
}
.gd-filter-modal__group[open] summary:after { transform:rotate(-135deg); margin-top:6px; }
.gd-filter-modal__group summary em {
    font-style:normal;
    margin-left:auto;
    background:#eaf0fb;
    color:#3757c5;
    border-radius:12px;
    padding:2px 8px;
    font-size:12px;
}
.gd-filter-modal__search {
    width:100%;
    height:40px;
    margin:12px 0 8px;
    border:1px solid #d9dee7;
    border-radius:8px;
    padding:0 12px;
    color:#1b2734;
    outline:0;
}
.gd-filter-modal__search:focus { border-color:#3757c5; box-shadow:0 0 0 3px rgba(55,87,197,.12); }
.gd-filter-modal__list {
    list-style:none;
    margin:10px 0 0;
    padding:0;
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
}
.gd-filter-modal__list label,
.gd-filter-modal__rating label {
    display:flex;
    align-items:center;
    gap:9px;
    min-height:30px;
    color:#293341;
    font-size:14px;
    cursor:pointer;
}
.gd-filter-modal__list input[type=checkbox] {
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.gd-filter-modal__box {
    width:18px;
    height:18px;
    border:2px solid #c7ced8;
    border-radius:5px;
    flex-shrink:0;
    background:#fff;
}
.gd-filter-modal__list input[type=checkbox]:checked + .gd-filter-modal__box {
    background:#3757c5;
    border-color:#3757c5;
    box-shadow:inset 0 0 0 3px #fff;
}
.gd-filter-modal__name {
    flex:1;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.gd-filter-modal__count {
    margin-left:auto;
    color:#98a1ab;
    font-size:12px;
}
.gd-filter-modal__rating {
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    margin-top:12px;
}
.gd-filter-modal__foot {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    padding:16px 26px;
    border-top:1px solid #edf0f4;
    background:#fff;
}
.gd-filter-modal__reset {
    border:0;
    background:transparent;
    color:#6a7480;
    font-size:14px;
    padding:10px 12px;
    cursor:pointer;
}
.gd-filter-modal__apply {
    border:0;
    border-radius:8px;
    background:#3757c5;
    color:#fff;
    font-size:15px;
    font-weight:700;
    padding:11px 22px;
    cursor:pointer;
}
.gd-filter-modal__apply:hover { background:#2f49ad; }

@media (max-width: 640px) {
    dialog.gd-filter-modal {
        width:100vw;
        max-width:100vw;
        max-height:100vh;
        border-radius:12px 12px 0 0;
        margin:auto 0 0;
    }
    .gd-filter-modal__inner { max-height:92vh; }
    .gd-filter-modal__head { padding:18px 18px 14px; }
    .gd-filter-modal__body { padding:4px 18px; }
    .gd-filter-modal__title { font-size:22px; }
    .gd-filter-modal__list,
    .gd-filter-modal__rating { grid-template-columns:1fr; }
    .gd-filter-modal__foot { padding:14px 18px; }
    .gd-filter-modal__apply { flex:1; }
}

/* ============================================================
   Breadcrumb dropdown — увеличенный, удобный для клика
   ============================================================ */
.dropdown-menu.dropdown-breadcrumb {
    min-width:300px !important;
    box-shadow:0 8px 28px rgba(0,0,0,0.14) !important;
    border-radius:10px !important;
    border:1px solid #e8ecf0 !important;
    padding:8px 0 !important;
    display:none;
}
.dropdown.open .dropdown-menu.dropdown-breadcrumb,
li.open .dropdown-menu.dropdown-breadcrumb { display:flex !important; flex-wrap:wrap; }
.dropdown-menu.dropdown-breadcrumb .dropdown-breadcrumb__element {
    width:50%; box-sizing:border-box;
}
.dropdown-menu.dropdown-breadcrumb .dropdown-breadcrumb__element a {
    display:block; padding:10px 18px; font-size:14px; color:#1b2734;
    text-decoration:none; transition:.1s; white-space:nowrap;
    overflow:hidden; text-overflow:ellipsis;
}
.dropdown-menu.dropdown-breadcrumb .dropdown-breadcrumb__element a:hover {
    background:#f7f9fa; color:#3757c5;
}

/* ============================================================
   Баллун Яндекс-карты .gd-balloon
   ============================================================ */
[class*="ymaps"][class*="-balloon__layout"] {
    border-radius:12px !important;
    box-shadow:0 6px 24px rgba(0,0,0,0.18) !important;
    overflow:hidden !important;
}
[class*="ymaps"][class*="-balloon__content"] {
    padding:0 !important;
    border-radius:12px !important;
    overflow:hidden !important;
}
.gd-balloon {
    font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
    min-width:260px; max-width:300px;
    border-radius:12px; overflow:hidden; background:#fff; line-height:1.4;
    padding:0;
}
.gd-balloon__body { padding:12px 14px 14px; }
.gd-balloon__title {
    display:block; font-size:15px; font-weight:700;
    color:#1b2734; text-decoration:none; margin-bottom:6px; line-height:1.3;
}
.gd-balloon__title:hover { color:#3757c5; text-decoration:none; }
.gd-balloon__stars {
    display:inline-flex; gap:2px; margin-bottom:6px; align-items:center;
}
.gd-balloon__star { font-size:17px; line-height:1; }
.gd-balloon__star--full, .gd-balloon__star--half { color:#f5a623; }
.gd-balloon__star--empty { color:#ddd; }
.gd-balloon__address {
    font-size:12px; color:#5e6772; margin-bottom:8px; line-height:1.4;
}
.gd-balloon__schedule {
    font-size:12px; font-weight:500; margin-bottom:10px;
}
.gd-balloon__schedule.is-open  { color:#1c8c46; }
.gd-balloon__schedule.is-closed { color:#e03131; }
.gd-balloon__link {
    display:block; font-size:13px; font-weight:600; text-align:center;
    color:#fff; background:#3757c5; padding:8px 14px;
    border-radius:8px; text-decoration:none; transition:.12s;
}
.gd-balloon__link:hover { background:#2c46a3; }

.new-search-list .dp-doctor-card .avatar,
.new-search-list .dp-doctor-card .avatar.no-background {
    display:block;
    width:193px;
    height:156px;
    flex:0 0 193px;
    aspect-ratio:193 / 156;
    overflow:hidden;
    background:#f4f6f8;
}
.new-search-list .dp-doctor-card .avatar img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.new-search-list .dp-doctor-card .media {
    align-items: flex-start;
}

@media (max-width: 767px) {
    .new-search-list .dp-doctor-card .avatar,
    .new-search-list .dp-doctor-card .avatar.no-background {
        width:175px;
        height:175px;
        flex-basis:175px;
    }

    .new-search-list .dp-doctor-card .media-body {
        padding-top: 0;
    }

}

/* ============================================================
   Разделитель между колонкой карточек и картой
   ============================================================ */
.static-map-catalog {
    position: static !important;
    height: calc(100vh - 111px) !important;
    min-height: 520px;
    padding: 0 !important;
    margin-left: 0 !important;
    border-left:1px solid #e8ecf0;
    contain: layout paint;
    background:#eef2f6;
}
.static-map-catalog .static-map-wrapper,
.static-map-catalog #sidebar_map,
.static-map-catalog #map {
    width: 100% !important;
    height: calc(100vh - 111px) !important;
    min-height: 520px;
}
.static-map-catalog #sidebar_map {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    margin-left: 0 !important;
    z-index: 1 !important;
    visibility: visible !important;
    border-radius: 12px;
    overflow: hidden;
    background: #eef2f6;
    box-shadow: 0 1px 0 rgba(18, 31, 48, .06);
}
.static-map-catalog #map {
    min-height: 520px;
}
@media (min-width: 992px) {
    .catalog-block .search-listing-container {
        display: flex;
        align-items: stretch;
        margin-left: 0;
        margin-right: 0;
        height: calc(100vh - 111px);
    }
    .catalog-block .search-left-column {
        float: none !important;
        width: 40% !important;
        flex: 0 0 40%;
        min-width: 0;
        padding-left: 0;
        padding-right: 24px;
        height: 100%;
        overflow-y: auto;
        overflow-x: hidden;
    }
    .catalog-block .static-map-catalog {
        float: none !important;
        width: 60% !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: 0 0 60%;
        height: calc(100vh - 111px) !important;
        overflow: hidden;
        padding: 0 !important;
        margin-left: 0 !important;
    }
}
.gd-map-zoom-controls {
    position: absolute;
    right: 18px;
    top: 18px;
    z-index: 700;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 4px 16px rgba(18, 31, 48, .18);
}
.gd-map-zoom-btn {
    width: 42px;
    height: 42px;
    border: 0;
    border-bottom: 1px solid #edf0f3;
    background: #fff;
    color: #202832;
    font-size: 25px;
    font-weight: 500;
    line-height: 42px;
    text-align: center;
    cursor: pointer;
    font-family: Arial, sans-serif;
}
.gd-map-zoom-btn:last-child {
    border-bottom: 0;
}
.gd-map-zoom-btn:hover {
    background: #f5f7f9;
}
@media (max-width: 991px) {
    /* Карта скрыта по умолчанию на мобильных — открывается по кнопке как fullscreen overlay */
    .static-map-catalog {
        display: none !important;
        border-left: none;
        padding-left: 0 !important;
    }
    body.gd-map-fullscreen { overflow: hidden; }
    body.gd-map-fullscreen .static-map-catalog {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 9990 !important;
        width: 100% !important;
        height: 100vh !important;
        min-height: 100vh !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #fff;
        border-radius: 0 !important;
    }
    body.gd-map-fullscreen .static-map-catalog .static-map-wrapper,
    body.gd-map-fullscreen .static-map-catalog #sidebar_map,
    body.gd-map-fullscreen .static-map-catalog #map {
        width: 100% !important;
        height: 100vh !important;
        min-height: 100vh !important;
    }
    body.gd-map-fullscreen .map_list_button { z-index: 9995 !important; }
    body.gd-map-fullscreen .gd-navbar { display: none !important; }
    body.gd-map-fullscreen .gd-map-zoom-controls {
        top: 50% !important;
        right: 14px !important;
        bottom: auto !important;
        transform: translateY(-50%) !important;
        z-index: 9996 !important;
    }
}

/* ============================================================
   Отступы каталога (общий фикс)
   ============================================================ */
.catalog-block { padding-top:0 !important; max-width:100% !important; padding-left:0 !important; padding-right:0 !important; }
.gd-chain-page .search-listing-container { margin-top:62px !important; }
.gd-chain-page .static-map-catalog { top:62px !important; height:calc(100% - 62px) !important; }
.gd-chain-page .gd-footer { display:none !important; }
.search-listing-container { margin-top:111px !important; }
@media (max-width: 1000px) {
    .search-listing-container { margin-top:0 !important; }
}

/* ============================================================
   Нативный скелетон карточек при обновлении от карты
   ============================================================ */
.gd-bbox-empty {
    padding:22px 18px;
    color:#7b8490;
    text-align:center;
    background:#fff;
    border:1px solid #edf0f4;
    border-radius:4px;
}
.gd-catalog-skeleton-card .panel {
    pointer-events:none;
}
.gd-skeleton-avatar,
.gd-skeleton-line {
    display:block;
    border-radius:6px;
    background:linear-gradient(90deg,#f7f9fa 10%,#edeff2 45%,#f7f9fa 90%);
    background-size:460px 100%;
    animation:placeholderShimmer 1.2s linear infinite;
}
.gd-skeleton-avatar {
    width:96px;
    height:96px;
    border-radius:4px;
}
.gd-skeleton-head {
    display:flex;
    align-items:center;
    gap:12px;
    width:100%;
}
.gd-skeleton-line {
    height:13px;
    margin-bottom:10px;
}
.gd-skeleton-line--title {
    width:54%;
    height:20px;
}
.gd-skeleton-line--branch {
    width:128px;
    height:16px;
    margin-left:auto;
}
.gd-skeleton-line--category {
    width:34%;
}
.gd-skeleton-line--rating {
    width:96px;
    height:16px;
}
.gd-skeleton-line--address {
    width:74%;
}
.gd-skeleton-service-row {
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:14px;
    max-width:380px;
}
.gd-skeleton-line--service {
    width:46%;
    height:22px;
    margin:0;
}
.gd-skeleton-line--button {
    width:82px;
    height:22px;
    margin:0;
}
@media (max-width: 767px) {
    .gd-skeleton-avatar {
        width:72px;
        height:72px;
        margin-bottom:12px;
    }
    .gd-skeleton-head { align-items:flex-start; flex-direction:column; gap:2px; }
    .gd-skeleton-line--title { width:82%; }
    .gd-skeleton-line--branch { width:120px; margin-left:0; }
    .gd-skeleton-line--address { width:90%; }
    .gd-skeleton-service-row { max-width:none; }
}


/* ============================================================
   Услуги в карточке каталога
   ============================================================ */
.gd-card-service-row {
    flex-wrap: wrap;
    gap: 6px;
    min-height: 28px;
}
.gd-card-service {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    font-size: 12px;
    color: #5e6772;
    background: #f4f6fa;
    border-radius: 4px;
    padding: 2px 8px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 260px;
}
.gd-card-service__name {
    overflow: hidden;
    text-overflow: ellipsis;
}
.gd-card-service__price {
    color: #1b2734;
    font-weight: 700;
    flex-shrink: 0;
}
.gd-card-services-btn {
    font-size: 12px;
    color: #3757c5;
    background: none;
    border: 1px solid #c5d0ef;
    border-radius: 4px;
    padding: 2px 10px;
    cursor: pointer;
    white-space: nowrap;
    transition: background .12s, color .12s;
}
.gd-card-services-btn:hover {
    background: #eaf0fb;
    border-color: #3757c5;
}
.gd-card-link-chip {
    display:inline-flex;
    align-items:center;
    margin:0 8px 8px 0;
    padding:4px 10px;
    border:1px solid #d8dde6;
    border-radius:4px;
    background:#fff;
    line-height:1.4;
}
.gd-card-link-chip:hover {
    border-color:#98a5b5;
    text-decoration:none;
}
.gd-card-metro-dot {
    display:inline-block;
    width:9px;
    height:9px;
    margin-right:6px;
    border-radius:50%;
    vertical-align:middle;
}
.doctor-items .avatar-sm img {
    width:100%;
    height:100%;
    object-fit:cover;
}
.gd-card-live {
    margin: 0 0 18px;
}
.gd-card-live .panel-body {
    padding: 18px 20px 6px;
}
.gd-card-live__section {
    margin-bottom: 18px;
}
.gd-card-live__title {
    margin-bottom: 10px;
    color: #1f2937;
    font-size: 15px;
    font-weight: 700;
}
.gd-card-live__row {
    display: flex;
    align-items: baseline;
    gap: 14px;
    margin-bottom: 10px;
}
.gd-card-live__label {
    min-width: 68px;
    color: #7b8490;
    font-size: 13px;
}
.gd-card-live__value {
    color: #1f2937;
    font-weight: 700;
}
.gd-card-live__phone {
    text-decoration: none;
}
.gd-card-live__links {
    display: flex;
    flex-wrap: wrap;
}
.gd-card-service-list {
    border-top: 1px solid #edf0f4;
}
.gd-card-service-line {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 18px;
    padding: 10px 0;
    border-bottom: 1px solid #edf0f4;
    color: #2f3640;
}
.gd-card-service-line__name {
    min-width: 0;
    line-height: 1.35;
}
.gd-card-service-line__price {
    flex-shrink: 0;
    color: #1f2937;
    font-weight: 700;
    white-space: nowrap;
}
.gd-card-plain-button {
    margin-top: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #3757c5;
    font-weight: 600;
    cursor: pointer;
}
.gd-card-photo-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}
.gd-card-photo-thumb {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    padding: 0;
    border: 0;
    border-radius: 6px;
    overflow: hidden;
    background: #eef1f5;
    cursor: pointer;
}
.gd-card-photo-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.gd-card-photo-link {
    padding: 0;
    border: 0;
    overflow: hidden;
    cursor: pointer;
}
.gd-card-photo-link img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.gd-light-modal {
    display: none;
    position: fixed;
    z-index: 30000;
    inset: 0;
}
.gd-light-modal--open {
    display: block;
}
.gd-light-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(23, 30, 38, .46);
}
.gd-light-modal__dialog {
    position: relative;
    width: min(520px, calc(100vw - 32px));
    max-height: min(78vh, 720px);
    margin: 8vh auto 0;
    padding: 22px 24px 24px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 60px rgba(16, 24, 40, .22);
    overflow: auto;
}
.gd-light-modal--photo .gd-light-modal__dialog {
    width: min(860px, calc(100vw - 24px));
    padding: 16px;
    overflow: hidden;
}
.gd-light-modal__close {
    position: absolute;
    top: 10px;
    right: 12px;
    z-index: 2;
    width: 30px;
    height: 30px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #8a94a3;
    font-size: 26px;
    line-height: 30px;
    cursor: pointer;
}
.gd-light-modal__close:hover {
    color: #1f2937;
    background: #f1f3f6;
}
.gd-light-modal__title {
    margin: 0 34px 18px 0;
    color: #1f2937;
    font-size: 20px;
    font-weight: 700;
}
.gd-light-phone {
    display: block;
    padding: 12px 0;
    border-bottom: 1px solid #edf0f4;
    color: #1f2937;
    font-size: 20px;
    font-weight: 700;
}
.gd-light-service-list {
    border-top: 1px solid #edf0f4;
}
.gd-light-service {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 12px 0;
    border-bottom: 1px solid #edf0f4;
}
.gd-light-service b {
    flex-shrink: 0;
    white-space: nowrap;
}
.gd-light-photo {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 260px;
    background: #111827;
    border-radius: 6px;
    overflow: hidden;
}
.gd-light-photo img {
    display: block;
    max-width: 100%;
    max-height: 72vh;
    object-fit: contain;
}
.gd-light-photo__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 38px;
    height: 48px;
    border: 0;
    border-radius: 6px;
    background: rgba(255,255,255,.86);
    color: #1f2937;
    font-size: 34px;
    line-height: 1;
    cursor: pointer;
}
.gd-light-photo__nav--prev {
    left: 12px;
}
.gd-light-photo__nav--next {
    right: 12px;
}
.gd-light-photo__count {
    position: absolute;
    right: 14px;
    bottom: 12px;
    padding: 4px 8px;
    border-radius: 4px;
    background: rgba(17,24,39,.72);
    color: #fff;
    font-size: 12px;
}
body.gd-light-modal-open {
    overflow: hidden;
}
@media (max-width: 767px) {
    .gd-card-live .panel-body {
        padding: 16px 14px 4px;
    }
    .gd-card-photo-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .gd-light-modal__dialog {
        margin-top: 5vh;
    }
    .gd-light-service {
        display: block;
    }
    .gd-light-service b {
        display: block;
        margin-top: 4px;
    }
}
.gd-chain-link {
    display:inline-flex;
    align-items:center;
    gap:4px;
    margin-left:auto;
    padding:2px 0 2px 10px;
    border:0;
    color:#7b8490 !important;
    background:transparent;
    font-size:13px;
    font-weight:600;
    line-height:1.2;
    vertical-align:middle;
    white-space:nowrap;
}
.gd-chain-link:hover {
    color:#3757c5 !important;
    background:transparent;
    text-decoration:none;
}
.gd-chain-link__icon {
    display:inline-flex;
    align-items:center;
    color:inherit;
}
.gd-chain-link__icon svg {
    display:block;
    width:13px;
    height:13px;
    fill:currentColor;
}

/* ============================================================
   Модалка услуг
   ============================================================ */
dialog.gd-services-modal {
    border: none;
    border-radius: 12px;
    padding: 0;
    width: 480px;
    max-width: calc(100vw - 32px);
    max-height: 70vh;
    overflow: hidden;
    box-shadow: 0 8px 40px rgba(0,0,0,.18);
}
dialog.gd-services-modal::backdrop {
    background: rgba(0,0,0,.40);
}
.gd-services-modal__inner {
    display: flex;
    flex-direction: column;
    max-height: 70vh;
    padding: 24px 24px 20px;
    box-sizing: border-box;
    overflow: hidden;
}
.gd-services-modal__close {
    position: absolute;
    top: 14px;
    right: 16px;
    background: none;
    border: none;
    font-size: 22px;
    line-height: 1;
    color: #9aa3b0;
    cursor: pointer;
    padding: 2px 6px;
}
.gd-services-modal__close:hover { color: #3757c5; }
.gd-services-modal__title {
    margin: 0 0 14px;
    font-size: 17px;
    font-weight: 700;
    color: #1a1d23;
    padding-right: 28px;
}
.gd-services-body {
    overflow-y: auto;
    flex: 1;
}
.gd-services-loading,
.gd-services-empty {
    color: #9aa3b0;
    font-size: 14px;
    margin: 0;
    padding: 8px 0;
}
.gd-services-group {
    margin-bottom: 16px;
}
.gd-services-group__title {
    font-size: 12px;
    font-weight: 600;
    color: #9aa3b0;
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: 6px;
}
.gd-services-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.gd-services-list li {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 18px;
    font-size: 14px;
    color: #2c313a;
    padding: 9px 0;
    border-bottom: 1px solid #f0f2f5;
    line-height: 1.4;
}
.gd-services-list li:last-child { border-bottom: none; }
.gd-services-list__name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}
.gd-services-list__price {
    color: #1b2734;
    font-weight: 700;
    white-space: nowrap;
    flex-shrink: 0;
}

/* Native data blocks on organization card */
.media:has(a[href*="znanylekarz.pl/uslugi-zabiegi"]),
[data-id="address-426946-services"],
[data-test-id="doctor-exp-disease"],
[data-test-id="doctor-exp-disease"] + hr,
[data-test-id="doctor-exp-school"],
[data-test-id="doctor-exp-school"] + hr,
[data-test-id="doctor-exp-specialization"],
[data-test-id="doctor-exp-specialization"] + hr,
[data-test-id="doctor-exp-photo"],
[data-test-id="doctor-exp-photo"] + hr,
[data-test-id="doctor-exp-language"],
[data-test-id="doctor-exp-language"] + hr {
    display: none !important;
}
[data-id="opinion-search-vue"],
[data-id="opinions-filters-profile-reviews"],
[data-id="doctor-opinions-list"],
[data-id="opinion-load-error"],
[data-id="load-more-opinions"],
[data-id="opinions-loader"] {
    display: none !important;
}
.panel-body.opinions-list:not(.gd-reviews-list) {
    display: none !important;
}
.gd-review-hp {
    position: absolute;
    left: -10000px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
.gd-review-compose {
    border-top: 1px solid #eef1f5;
}
.gd-reviews-tabs a {
    cursor: pointer;
}
.gd-review-empty {
    padding: 8px 0 4px;
}
.gd-card-native-services p {
    margin-bottom: 10px;
}
.gd-card-hero-photos {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(120px, 1fr);
    grid-template-rows: repeat(2, minmax(120px, 1fr));
    gap: 12px;
    margin: 0 0 22px;
    padding: 16px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 1px 0 rgba(16, 24, 40, .05);
}
.gd-card-hero-photos__item {
    display: block;
    min-height: 0;
    border-radius: 8px;
    overflow: hidden;
    background: #eef1f5;
}
.gd-card-hero-photos__item--0 {
    grid-row: 1 / span 2;
}
.gd-card-hero-photos__item:only-child {
    grid-column: 1 / -1;
}
.gd-card-hero-photos__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.gd-card-native-details .media {
    margin-top: 0;
}
.gd-card-native-details .media-left {
    width: 32px;
    min-width: 32px;
    padding-right: 14px;
    color: #9aa3af;
}
.gd-card-native-details .media-heading {
    margin: 0 0 12px;
    color: #1f2937;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.35;
}
.gd-card-native-transport ul {
    margin: 0;
    padding-left: 0 !important;
    list-style: none;
}
.gd-card-coordinate-row {
    display: flex;
    align-items: baseline;
    gap: 8px;
    min-height: 28px;
    color: #5f6f82;
    font-size: 15px;
    line-height: 1.45;
}
.gd-card-coordinate-row__name {
    min-width: 0;
}
.gd-card-coordinate-row .lines {
    flex: 1 1 auto;
    min-width: 18px;
    border-bottom: 1px dotted #d9dee7;
    transform: translateY(-4px);
}
.gd-card-coordinate-row .gray {
    color: #66778a;
    font-weight: 500;
}
.gd-card-coordinate-row--route {
    cursor: pointer;
}
.gd-card-route-link {
    border: 0;
    background: transparent;
    padding: 0;
    font: inherit;
    line-height: inherit;
    color: #3757c5 !important;
    cursor: pointer;
}
.gd-card-coordinate-row--route:hover .gd-card-route-link {
    text-decoration: underline;
}
.gd-card-native-filters .media-body {
    display: grid;
    gap: 16px;
}
.gd-card-filter-group {
    margin-bottom: 0;
}
.gd-card-filter-group__title {
    margin-bottom: 7px;
    color: #8a93a2;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
    text-transform: uppercase;
}
.gd-card-filter-group__values {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    color: #30323c;
    font-size: 14px;
    line-height: 1.35;
}
.gd-card-filter-link {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 5px 10px;
    border: 1px solid #e4e8ef;
    border-radius: 4px;
    background: #f8fafc;
    color: #374151;
    text-decoration: none;
}
.gd-card-filter-link:hover {
    border-color: #c7d2fe;
    background: #f2f5ff;
    color: #3757c5;
    text-decoration: none;
}
.gd-card-filter-comma {
    display: none;
}
.gd-card-filter-extra {
    display: none;
}
.gd-card-filter-group.is-open .gd-card-filter-extra {
    display: inline-flex;
}
.gd-card-filter-more {
    display: inline-flex;
    margin-top: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #6b7280;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
    cursor: pointer;
}
.gd-card-filter-more:hover {
    color: #3757c5;
}
.gd-card-filter-group.is-open .gd-card-filter-more {
    display: none;
}
.gd-card-native-photo-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.gd-card-native-photo-list .avatar-sm {
    width: 64px;
    height: 64px;
    margin: 0 !important;
}
.gd-card-native-photo-list img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.gd-card-schedule {
    width: 100%;
}
.gd-card-schedule__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
}
.gd-card-schedule__status {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.35;
}
.gd-card-schedule__status--is-closed {
    color: #ff3b30;
}
.gd-card-schedule__status--is-open {
    color: #169b62;
}
.gd-card-schedule__toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #858585;
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
}
.gd-card-schedule__chevron {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 8px solid #c5c5c5;
    transition: transform .18s ease;
}
.gd-card-schedule.is-open .gd-card-schedule__chevron {
    transform: rotate(180deg);
}
.gd-card-schedule__body {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height .24s ease, opacity .18s ease, padding-top .24s ease, margin-top .24s ease;
}
.gd-card-schedule.is-open .gd-card-schedule__body {
    max-height: 520px;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #eeeeee;
    opacity: 1;
}
.gd-card-schedule__row {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 8px 0 8px 24px;
    color: #141414;
    font-size: 15px;
    line-height: 1.35;
}
.gd-card-schedule__row.is-today::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 16px;
    height: 3px;
    border-radius: 2px;
    background: #2667ff;
    transform: translateY(-50%);
}
.gd-card-schedule__day {
    min-width: 0;
}
.gd-card-schedule__time {
    color: #111;
    white-space: nowrap;
}
@media (max-width: 767px) {
    .gd-card-hero-photos {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 180px 96px;
        gap: 8px;
        margin-bottom: 16px;
        padding: 10px;
        border-radius: 14px;
    }
    .gd-card-hero-photos__item--0 {
        grid-column: 1 / -1;
        grid-row: auto;
    }
    .gd-card-schedule__status,
    .gd-card-schedule__toggle {
        font-size: 15px;
    }
    .gd-card-schedule__row {
        font-size: 14px;
        gap: 12px;
    }
    .gd-card-native-details .media-heading {
        font-size: 17px;
    }
    .gd-card-coordinate-row,
    .gd-card-filter-group__values,
    .gd-card-filter-more {
        font-size: 14px;
    }
}

/* ============================================================
   Статус работы организации в карточке каталога
   ============================================================ */
.gd-card-schedule {
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
    flex-shrink: 0;
}
.gd-card-schedule.is-open  { color: #1c8c46; }
.gd-card-schedule.is-closed { color: #e03131; }
.gd-card-rating-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    line-height: 1;
}
.gd-card-rating-row > a {
    display: inline-flex;
    align-items: center;
}
.gd-card-rating-row .gd-card-schedule {
    display: inline-block;
    width: auto;
    margin-left: auto;
    text-align: right;
}

.gd-card-meta {
    margin-top: 8px;
    color: #7d7d7d;
    font: 15px / 1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent;
}

.gd-card-meta .gd-card-rating-row {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 6px;
    width: auto;
    color: inherit;
    text-decoration: none;
}

.gd-card-meta .gd-card-rating-row:hover,
.gd-card-meta .gd-card-rating-row:focus {
    color: inherit;
    text-decoration: none;
}

.gd-card-meta .rating {
    flex: 0 0 auto;
}

.gd-card-rating-score {
    color: #111;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
}

.gd-card-rating-count {
    color: #8a8a8a;
    font-size: 14px;
    line-height: 1;
}

.gd-card-summary-line,
.gd-card-address-text {
    color: #7d7d7d;
    font-size: 14px;
    line-height: 1.55;
}

.gd-card-summary-line {
    margin: 0 0 4px;
}

.gd-card-meta .gd-card-schedule {
    display: inline;
    width: auto;
    margin: 0;
    font-size: inherit;
    font-weight: 600;
    text-align: left;
    white-space: normal;
}

.gd-card-meta .gd-card-schedule.is-closed {
    color: #ff3b30;
}

.gd-card-meta .gd-card-schedule.is-open {
    color: #1c8c46;
}

.gd-card-meta-dot {
    color: #8a8a8a;
    padding: 0 4px;
}

.gd-card-category {
    color: #7d7d7d;
}

.gd-card-address {
    margin-top: 4px;
}

.gd-card-address-text {
    margin: 0;
}

.gd-related-filter {
    margin: 0 0 28px;
    padding: 14px 16px;
    background: #fff;
    border-radius: 12px;
}

.gd-related-filter__title {
    margin: 0 0 15px;
    color: #1f2630;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
}

.gd-sim-cat-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
}

.gd-sim-cat {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border-radius: 12px;
    color: #2c313a;
    text-decoration: none;
    transition: background .12s;
}

.gd-sim-cat:hover,
.gd-sim-cat:focus {
    background: #fff;
    color: #2c313a;
    text-decoration: none;
}

.gd-sim-cat__thumb {
    align-items: center;
    color: #373737;
    display: flex;
    flex: 0 0 auto;
    font-size: 18px;
    font-weight: 800;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #f5f6f7;
    justify-content: center;
}

.gd-sim-cat__main {
    flex: 1;
    min-width: 0;
}

.gd-sim-cat__name {
    display: block;
    color: #3757c5;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
}

.gd-sim-cat__meta {
    display: block;
    margin-top: 2px;
    color: #8a94a3;
    font-size: 12px;
    line-height: 1.3;
}

.gd-related-filter__item--hidden {
    display: none;
}

.gd-show-all {
    display: block;
    width: 100%;
    margin-top: 12px;
    padding: 10px 16px;
    background: #dfe5f4;
    border: 0;
    border-radius: 10px;
    color: #3757c5;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background .12s;
}

.gd-show-all:hover {
    background: #d5ddf0;
}

.gd-sim-cat-list--cities .gd-sim-cat {
    background: #fff;
}

.gd-chain-tabs {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 6px;
    width: 100%;
    margin: 0 0 15px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 2px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.gd-chain-tab {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 6px;
    padding: 4px 9px;
    background: #f4f5f8;
    border: 1px solid transparent;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 500;
    color: #1f2630;
    cursor: pointer;
    white-space: nowrap;
    transition: background .12s, color .12s;
}

.gd-chain-tabs::-webkit-scrollbar {
    height: 6px;
}

.gd-chain-tabs::-webkit-scrollbar-thumb {
    background: rgba(55, 87, 197, .22);
    border-radius: 999px;
}

.gd-chain-tab:hover {
    background: #ebedef;
}

.gd-chain-tab.is-active {
    background: #3757c5;
    color: #fff;
}

.gd-chain-tab__cnt {
    font-size: 12px;
    color: #8a94a3;
    font-weight: 400;
}

.gd-chain-tab.is-active .gd-chain-tab__cnt {
    color: rgba(255,255,255,.72);
}

.gd-seo-tab-panel {
    display: none;
}

.gd-seo-tab-panel.is-active {
    display: block;
}

.gd-seo-tab-panel .gd-sim-cat-list {
    margin-top: 0;
}

@media (max-width: 767px) {
    .gd-related-filter {
        padding: 12px;
    }

    .gd-related-filter__title {
        font-size: 17px;
    }

    .gd-sim-cat-list {
        grid-template-columns: 1fr;
    }

    .gd-sim-cat {
        
    }

    .gd-sim-cat__thumb {
        width: 44px;
        height: 44px;
    }

    .gd-sim-cat__name,
    .gd-sim-cat__meta {
        font-size: 14px;
    }

    .gd-chain-tab {
        white-space: nowrap;
    }
}

.z-mt--20 {
    margin-top: 20px;
}

.paging,
.paging__control {
    align-items: center;
    display: flex;
}

.paging {
    gap: 84px;
    justify-content: center;
}

.paging__control {
    background: #f4f5f8;
    border-radius: 50%;
    cursor: pointer;
    flex-shrink: 0;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.paging__control._disabled {
    cursor: default;
    pointer-events: none;
}

.paging__control svg {
    height: 22px;
    width: 22px;
    fill: #9aa3bc;
    position: relative;
    right: 2px;
    transform: rotate(90deg);
    transition: fill .1s ease-in;
}

.paging__control:not(._disabled):hover svg {
    fill: #3757c5;
}

.z-flex {
    display: flex;
    gap: 12px;
}

.paging__page {
    align-items: center;
    border-radius: 50%;
    box-sizing: border-box;
    color: #3c4257;
    display: flex;
    font-size: 20px;
    height: 40px;
    justify-content: center;
    line-height: 28px;
    padding: 0 12px;
    text-decoration: none;
    width: 40px;
}

.paging__page:hover {
    background: #e8ecf6;
    color: #3757c5;
    text-decoration: none;
}

.paging__page._active {
    background: #3757c5;
    color: #fff;
}

.paging__dots {
    align-items: center;
    color: #8b8b98;
    display: flex;
    height: 40px;
    position: relative;
    top: 2px;
}

.paging__control._next svg {
    left: 2px;
    right: auto;
    transform: rotate(-90deg);
}

@media (max-width: 767px) {
    .paging {
        gap: 12px;
    }

    .paging__page {
        font-size: 18px;
        height: 36px;
        line-height: 24px;
        width: 36px;
    }

    .paging__control {
        height: 36px;
        width: 36px;
    }
}

/* ============================================================
   Каталог: фикс мобильного смещения
   ============================================================ */
@media (max-width: 991px) {
    .catalog-block .search-listing-container,
    .row.search-listing-container {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow-x: hidden;
    }
    .catalog-block .search-left-column,
    .col-md-4.search-left-column {
        width: 100% !important;
        float: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box;
    }
    /* Блоки ВЫШЕ списка организаций (h1, фильтры и пр.) — отступы 10px по бокам */
    .catalog-block .search-left-column > *:not(.orgs_con_chld_l):not(.content_load) {
        padding-left: 10px;
        padding-right: 10px;
        box-sizing: border-box;
    }
    .orgs_con_chld_l { padding: 0 !important; margin: 0 !important; }
    .catalog-block .container,
    .catalog-block .container-fluid {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden;
    }
    .catalog-block .row { margin-left: 0 !important; margin-right: 0 !important; }
}

/* ============================================================
   Каталог: стиль карточек как «Похожие организации» (mobile)
   ============================================================ */
.gd-mcard-photos,
.gd-mcard-actions,
.gd-mcard-cats {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

@media (max-width: 991px) {
    /* Zoon-стиль: карточки на всю ширину, разделитель сверху, без боковых отступов */
    .new-search-list { padding: 0 !important; margin: 0 !important; list-style: none !important; background: #fff; }
    .new-search-list > li {
        list-style: none;
        margin: 0 !important;
        padding: 0 !important;
    }
    .panel.panel-default {
        border: none !important;
        border-top: 1px solid #eaebf2 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: #fff !important;
        margin: 0 !important;
        padding: 10px !important;
        overflow: hidden;
    }
    .new-search-list > li:first-child .panel.panel-default { border-top: none !important; }
    .panel-body.padding-0 { padding: 0 !important; }
    .panel-body, .panel-body .row, .panel-body [class*="col-"] {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        float: none !important;
    }
    .result-column.catalog-card,
    .col-md-12.result-column,
    .padding-xs-left-3, .padding-xs-right-3 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .dp-doctor-card.dp-doctor-card-md {
        border-bottom: none !important;
        background: transparent !important;
        padding: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: visible;
        display: flex !important;
        flex-direction: column !important;
    }
    /* Явные порядки детей карточки — гарантируют визуальный порядок */
    .dp-doctor-card.dp-doctor-card-md > .gd-mcard-photos { order: 1 !important; }
    .dp-doctor-card.dp-doctor-card-md > .media { order: 2 !important; }
    .dp-doctor-card.dp-doctor-card-md > .gd-mcard-cats { order: 3 !important; }
    .dp-doctor-card.dp-doctor-card-md > .gd-mcard-actions { order: 4 !important; }
    /* Карусель фото сверху карточки — компактная (как Zoon _minified) */
    .gd-mcard-photos {
        display: flex !important;
        gap: 8px;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        margin: 0 !important;
        padding: 0 !important;
        height: 117px !important;
    }
    .gd-mcard-photos::-webkit-scrollbar { display: none; }
    .gd-mcard-photos__a {
        flex: 0 0 147px;
        display: block;
        height: 100%;
        scroll-snap-align: start;
        background: #f4f5f8;
        overflow: hidden;
        border-radius: 6px;
        outline: 1px solid rgba(61,63,85,.12);
        outline-offset: -1px;
    }
    .gd-mcard-photos__a img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }
    /* Если фото одно — на всю ширину */
    .gd-mcard-photos.gd-mcard-photos--single { padding: 0 !important; height: 160px !important; }
    .gd-mcard-photos.gd-mcard-photos--single .gd-mcard-photos__a {
        flex: 1 1 100%;
        width: 100%;
        height: 160px;
    }
    /* Скрываем дубликат-аватар слева — фото уже показаны в карусели сверху */
    .dp-doctor-card.dp-doctor-card-md .media-left { display: none !important; }
    .dp-doctor-card.dp-doctor-card-md .media {
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    .dp-doctor-card.dp-doctor-card-md .media-body {
        padding: 0 !important; margin: 0 !important;
        overflow: visible !important;
        display: block !important;
    }
    /* Чистим лишнюю информацию: услугу/цену и кнопку «Все услуги» */
    .dp-doctor-card.dp-doctor-card-md .gd-card-service-row { display: none !important; }
    /* Заголовок */
    .new-search-list .h4 {
        font-size: 18px !important;
        line-height: 1.25 !important;
        font-weight: 700 !important;
        white-space: normal !important;
    }
    .new-search-list .h4 a[itemprop="url"] {
        color: #1b2734 !important;
    }
    .new-search-list .h4 a[itemprop="url"] span { color: #1b2734 !important; }
    /* Адрес */
    .gd-card-address-text {
        font-size: 14px !important;
        line-height: 1.35 !important;
        margin: 6px 0 0 !important;
        color: #5e6772 !important;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    /* Рейтинг (звёзды + 4,9 + N отзывов) */
    .gd-card-meta { margin-top: 8px !important; }
    .gd-card-rating-row {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        text-decoration: none !important;
    }
    .gd-card-rating-score {
        font-weight: 700 !important;
        font-size: 14px !important;
        color: #1b2734 !important;
    }
    .gd-card-rating-count {
        font-size: 13px !important;
        color: #98a1ab !important;
    }
    /* Сводка (расписание + категория) — как pill-полоска */
    .gd-card-summary-line {
        margin-top: 8px !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        font-size: 13px !important;
    }
    .gd-card-summary-line .gd-card-meta-dot { display: none !important; }
    /* Закрыто — красноватый цвет (как было раньше) */
    .gd-card-schedule {
        background: rgba(224,49,49,.10);
        color: #e03131 !important;
        padding: 3px 8px;
        border-radius: 4px;
        font-weight: 600;
        font-size: 13px;
    }
    .gd-card-schedule.is-open {
        background: rgba(28,140,70,.10);
        color: #1c8c46 !important;
    }
    /* Категории — простой текст справа от расписания */
    .gd-card-summary-line {
        align-items: center !important;
    }
    .gd-card-summary-line .gd-card-category {
        background: transparent !important;
        color: #5e6772 !important;
        padding: 0 !important;
        font-size: 13px !important;
        font-weight: 400 !important;
        white-space: normal !important;
    }
    .gd-card-summary-line .gd-card-meta-dot {
        display: inline !important;
        color: #98a1ab;
        margin: 0 2px;
    }
    /* Адрес блок: убираем встроенные доктор-обёртки от docplanner */
    .doctor-card-address.gd-card-address { padding: 0 !important; margin-top: 6px !important; }
    .doctor-card-address .display-flex { display: block !important; }
    /* Кнопки действий снизу карточки (zoon-стиль) */
    .gd-mcard-actions {
        display: flex !important;
        gap: 8px;
        height: auto !important;
        overflow: visible !important;
        padding: 0 !important;
        margin-top: 14px !important;
    }
    .gd-mcard-btn {
        flex: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        height: 36px;
        border-radius: 6px;
        font-size: 15px;
        font-weight: 500;
        font-family: inherit;
        border: 0;
        cursor: pointer;
        text-decoration: none;
        line-height: 1;
        padding: 0 14px;
    }
    .gd-mcard-btn svg { width: 16px; height: 16px; fill: currentColor; flex-shrink: 0; }
    .gd-mcard-btn--call {
        background: #3757c5;
        color: #fff !important;
    }
    .gd-mcard-btn--call:hover, .gd-mcard-btn--call:focus { background: #2e4ab0; color: #fff !important; }
    .gd-mcard-btn--map {
        background: #f0f3f6;
        color: #1b2734 !important;
    }
    .gd-mcard-btn--map:hover, .gd-mcard-btn--map:focus { background: #e3e8ed; }
}
/* На десктопе мобильные блоки скрыты + восстановление порядка: summary выше address */
@media (min-width: 992px) {
    .new-search-list .dp-doctor-card.dp-doctor-card-md > .media {
        margin-top: 0 !important;
    }
    .new-search-list .dp-doctor-card.dp-doctor-card-md .media-body {
        display: flex;
        flex-direction: column;
    }
    .new-search-list .dp-doctor-card.dp-doctor-card-md .media-body > .gd-card-summary-line { order: 3; }
    .new-search-list .dp-doctor-card.dp-doctor-card-md .media-body > .doctor-card-address { order: 4; }
    .new-search-list .doctor-card-address.gd-card-address {
        display: flex;
        flex-direction: column;
    }
    .new-search-list .doctor-card-address.gd-card-address > .gd-card-summary-line {
        order: 1;
    }
    .new-search-list .doctor-card-address.gd-card-address > [data-id="address-navigation-target"] {
        order: 2;
    }
    .new-search-list .doctor-card-address.gd-card-address > .gd-card-service-row {
        order: 3;
    }
}
/* Шрифт заголовка карточки на мобильных */
@media (max-width: 1000px) {
    .new-search-listing .result-column .dp-doctor-card .media-body .h4 {
        font-size: 20px !important;
    }
}
/* Дубль .dp-doctor-card... — оставляем существующее правило ниже */
@media (max-width: 991px) {
    /* Legacy-обёртки в нормальный flow */
    .row.display-flex { display: block !important; }
    .orgs_con_chld_l { padding: 0 !important; margin: 0 !important; }
    #search-content { padding: 0 !important; }
}

/* ============================================================
   Кнопка «На карте» — стиль как card.php (FAB снизу)
   ============================================================ */
@media (max-width: 1000px) {
    .map_list_button {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 400;
        display: flex !important;
        justify-content: center;
        padding: 12px 16px 18px;
        background: #fff;
        border-top: 1px solid #e8ecf0;
        pointer-events: auto;
        box-sizing: border-box;
        box-shadow: 0 -2px 12px rgba(0,0,0,0.08);
    }
    #map_button, #list_button {
        display: inline-flex; /* без !important — JS через style="display:none" перебивает */
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
        max-width: 320px;
        padding: 14px 20px;
        border-radius: 12px;
        font-size: 15px;
        font-weight: 700;
        background: #3757c5;
        color: #fff !important;
        box-shadow: 0 4px 16px rgba(55,87,197,0.28);
        border: none;
        line-height: 1;
        height: auto;
        cursor: pointer;
        text-align: center;
        box-sizing: border-box;
    }
    #list_button {
        background: #5e6772;
        box-shadow: 0 4px 16px rgba(0,0,0,0.15);
    }
    .map_list_button_icn {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .map_list_button_icn li {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        color: #fff;
        font-size: 15px;
        font-weight: 700;
    }
    /* Иконка карты через CSS */
    #map_button .map_list_button_icn li::before {
        content: '';
        display: inline-block;
        width: 16px;
        height: 16px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='white'%3E%3Cpath d='M256 0C167.6 0 96 71.6 96 160c0 109.6 144.1 332.4 150.2 341.8 4.9 7.6 13.6 7.6 18.5 0C271 492.4 416 269.6 416 160 416 71.6 344.4 0 256 0zm0 224c-35.4 0-64-28.7-64-64s28.6-64 64-64 64 28.7 64 64-28.6 64-64 64z'/%3E%3C/svg%3E") center/contain no-repeat;
        flex-shrink: 0;
    }
    #list_button .map_list_button_icn li::before {
        content: '';
        display: inline-block;
        width: 17px;
        height: 17px;
        border: 2px solid #fff;
        border-radius: 50%;
        background:
            linear-gradient(45deg, transparent calc(50% - 1px), #fff calc(50% - 1px), #fff calc(50% + 1px), transparent calc(50% + 1px)),
            linear-gradient(-45deg, transparent calc(50% - 1px), #fff calc(50% - 1px), #fff calc(50% + 1px), transparent calc(50% + 1px));
        background-repeat: no-repeat;
        flex-shrink: 0;
    }
}

/* ============================================================
   Bottom-sheet модалка для точки на карте (мобильный fullscreen overlay)
   ============================================================ */
.gd-pointsheet {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9998;
    background: #fff;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    padding: 14px 16px 16px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #1b2734;
    animation: gd-ps-up .22s cubic-bezier(.32,.72,0,1);
    border-top: 1px solid #edf0f3;
}
.gd-pointsheet.is-open { display: block; }
@keyframes gd-ps-up {
    from { transform: translateY(100%); }
    to   { transform: translateY(0); }
}
.gd-pointsheet__close {
    position: absolute;
    top: 10px;
    right: 12px;
    width: 32px;
    height: 32px;
    border: 0;
    background: transparent;
    color: #98a1ab;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}
.gd-pointsheet__row {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding-right: 30px;
}
.gd-pointsheet__ph {
    flex: 0 0 88px;
    width: 88px;
    height: 88px;
    border-radius: 10px;
    background: #eef2f6;
    overflow: hidden;
}
.gd-pointsheet__ph img {
    width: 100%; height: 100%; object-fit: cover; display: block;
}
.gd-pointsheet__info { flex: 1; min-width: 0; }
.gd-pointsheet__title {
    font-size: 16px;
    font-weight: 700;
    color: #1b2734;
    margin: 0 0 4px;
    line-height: 1.25;
    text-decoration: none;
    display: block;
}
.gd-pointsheet__addr {
    font-size: 13px;
    color: #5e6772;
    margin: 0 0 2px;
}
.gd-pointsheet__metro {
    font-size: 13px;
    color: #5e6772;
    margin: 0 0 4px;
}
.gd-pointsheet__rating {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: #1b2734;
}
.gd-pointsheet__rating-stars {
    color: #f5a623;
    font-size: 13px;
    letter-spacing: 1px;
    line-height: 1;
}
.gd-pointsheet__rating-num { font-weight: 700; }
.gd-pointsheet__rating-cnt { color: #98a1ab; font-size: 12px; }
.gd-pointsheet__actions {
    display: flex;
    gap: 10px;
    margin-top: 12px;
}
.gd-pointsheet__btn {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 44px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 700;
    border: 0;
    cursor: pointer;
    text-decoration: none;
    font-family: inherit;
    line-height: 1;
}
.gd-pointsheet__btn--call {
    background: #3757c5;
    color: #fff !important;
}
.gd-pointsheet__btn--open {
    background: #f0f3f6;
    color: #1b2734 !important;
}
.gd-pointsheet__btn svg { width: 16px; height: 16px; fill: currentColor; }

.gd-selected-map-balloon {
    position: relative;
    width: 96px;
    height: 96px;
    transform: translate(-48px, -48px);
    pointer-events: none;
}
.gd-selected-map-balloon__pin {
    position: absolute;
    left: 24px;
    top: 24px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #9b7af2;
    box-shadow: 0 4px 14px rgba(71, 50, 132, .38);
    border: 5px solid #fff;
    z-index: 2;
}
.gd-selected-map-balloon__pin span {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 18px;
    height: 18px;
    margin: -9px 0 0 -9px;
    border-radius: 50%;
    background: #fff;
}
.gd-selected-map-balloon__wave {
    position: absolute;
    left: 24px;
    top: 24px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(155, 122, 242, .34);
    animation: gd-selected-map-pulse 1.9s ease-out infinite;
    z-index: 1;
}
.gd-selected-map-balloon__wave--two {
    animation-delay: .75s;
}
@keyframes gd-selected-map-pulse {
    0% {
        opacity: .62;
        transform: scale(.85);
    }
    70% {
        opacity: .12;
        transform: scale(1.95);
    }
    100% {
        opacity: 0;
        transform: scale(2.25);
    }
}
/* Скрываем стандартный балун Yandex когда наша модалка активна */
body.gd-map-fullscreen .ymaps-2-1-79-balloon { display: none !important; }

/* X-кнопка закрытия overlay карты */
.gd-map-closex {
    display: none;
    position: fixed;
    top: 14px;
    right: 14px;
    z-index: 10000;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff;
    border: 0;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: #1b2734;
}
.gd-map-closex svg { width: 18px; height: 18px; fill: currentColor; display: block; }
body.gd-map-fullscreen .gd-map-closex { display: inline-flex; }
