:root {
    --base64-check-mark: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3e%3cpath fill='%23fff' d='M11.025 0.399805C10.725 0.0998047 10.275 0.0998047 9.975 0.399805L4.35 6.02481L2.025 3.69981C1.725 3.39981 1.275 3.39981 0.975 3.69981C0.675 3.99981 0.675 4.44981 0.975 4.74981L3.825 7.5998C3.975 7.7498 4.125 7.82481 4.35 7.82481C4.575 7.82481 4.725 7.7498 4.875 7.5998L11.025 1.44981C11.325 1.14981 11.325 0.699805 11.025 0.399805Z'/%3e%3c/svg%3e");

    --color-accent: #C1121F;
    --color-accent-two: #DC3545;

    --color-main: #212529;

    --color-description: #495057;
    --color-description-two: #ADB5BD;

    --color-alternative: #FFFFFF;
    --color-alternative-two: #F8F9FA;
    --color-alternative-three: #DEE2E6;
    --color-alternative-four: #CED4DA;

    --color-border: var(--color-alternative-three);

    --mlr: calc((100% - 1440px) / 2);
    --m_mlr: 24px;
    --mb: 64px;

    --slider-mlr: 20px;
    --slider-cp: 20px;

    --transition-delay: .2s;
}

* {
    font-family: 'Onest';
    box-sizing: border-box;
    outline: none;
}

/* ::selection {
    background: var(--color-accent);
} */

::-webkit-scrollbar-button {
    background-image: none;
    background-repeat: no-repeat;
    width: 13px;
    height: 0px;
}

::-webkit-scrollbar-track {
    background-color: var(--color-alternative);
}

::-webkit-scrollbar-thumb {
    background-color: var(--color-accent);
    border-radius: 0px;
    -webkit-border-radius: 0px;
}

::-webkit-scrollbar-thumb:hover {
    background-color: var(--color-accent);
}

::-webkit-resizer {
    background-image: none;
    background-repeat: no-repeat;
    width: 12px;
    height: 0px;
}

::-webkit-scrollbar {
    width: 12px;
}

.hide-scroll {
    scrollbar-width: none;
}

.hide-scroll::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.noselect {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}

:target {scroll-margin-top: calc(var(--size-header) + 16px);}

.hidden {display: none !important;}

.o_h {overflow: hidden;}

body {
    min-height: 100vh;
    margin: 0;
}

img {max-width: 100%;}
h1, h2, h3 {font-weight: normal;}
h1, h2, h3, p, ul {margin: 0;}
iframe {display: block; width: 100%; border: none;}

object .contact-button {
    width: 100%;
}

/* Default slider */
.swiper {
    width: 100%;
    height: 100%;
}

.swiper:not(.swiper-initialized) .swiper-slide {display: none !important;}
.swiper:not(.swiper-initialized) .swiper-slide:first-child {display: grid !important;}

.swiper-button-arrow-prev {
    transform: rotateZ(180deg);
}

[class*="swiper-button-arrow"] {
    opacity:  1;
}

[class*="swiper-button-arrow"].swiper-button-disabled {
    opacity: .5;
    cursor: not-allowed;
}

.swiper-buttons-pagination,
.swiper-pagination-bullet {
    height: 2px;
}

.swiper-buttons-pagination {
    position: relative;
}

.swiper-buttons-pagination.swiper-pagination-horizontal {
    top: inherit;
    left: inherit;
    bottom: inherit;
}

.swiper-pagination-bullet {
    background-color: var(--color-main);
    position: relative;
    width: 28px;
    margin: 0 !important;
    border-radius: inherit;
}



/* Global margin */
.mlr,
.ml {margin-left: var(--mlr);}

.mlr,
.mr {margin-right: var(--mlr);}

.m_40 {margin: 40px;}
.m_24 {margin: 24px;}

.mtb_40 {margin-top: 40px; margin-bottom: 40px;}

.mt {margin-top: var(--mb);}
.mt_64 {margin-top: 64px;}
.mt_48 {margin-top: 48px;}
.mt_40 {margin-top: 40px;}
.mt_32 {margin-top: 32px;}
.mt_24 {margin-top: 24px;}
.mt_20 {margin-top: 20px;}
.mt_16 {margin-top: 16px;}
.mt_12 {margin-top: 12px;}
.mt_8 {margin-top: 8px;}

.mlr_40 {margin-left: 40px; margin-right: 40px;}

.mr_12 {margin-right: 12px;}

.mb {margin-bottom: var(--mb);}
.mb_100 {margin-bottom: 100px;}
.mb_64 {margin-bottom: 64px;}
.mb_60 {margin-bottom: 60px;}
.mb_56 {margin-bottom: 56px;}
.mb_48 {margin-bottom: 48px;}
.mb_40 {margin-bottom: 40px;}
.mb_32 {margin-bottom: 32px;}
.mb_24 {margin-bottom: 24px;}
.mb_20 {margin-bottom: 20px;}
.mb_16 {margin-bottom: 16px;}
.mb_12 {margin-bottom: 12px;}
.mb_8 {margin-bottom: 8px;}

.ml_12 {margin-left: 12px;}

/* Global padding */
.plr {padding-left: var(--mlr); padding-right: var(--mlr);}

.p_48 {padding: 48px;}
.p_40 {padding: 40px;}
.p_32 {padding: 32px;}
.p_24 {padding: 24px;}
.p_20 {padding: 20px;}
.p_16 {padding: 16px;}
.p_14 {padding: 14px;}
.p_12 {padding: 12px;}
.p_8 {padding: 8px;}
.p_4 {padding: 4px;}
.p_2 {padding: 2px;}

.ptb {padding-top: var(--mb); padding-bottom: var(--mb);}
.ptb_48 {padding-top: 48px; padding-bottom: 48px;}
.ptb_40 {padding-top: 40px; padding-bottom: 40px;}
.ptb_32 {padding-top: 32px; padding-bottom: 32px;}
.ptb_24 {padding-top: 24px; padding-bottom: 24px;}
.ptb_20 {padding-top: 20px; padding-bottom: 20px;}
.ptb_16 {padding-top: 16px; padding-bottom: 16px;}
.ptb_12 {padding-top: 12px; padding-bottom: 12px;}
.ptb_8 {padding-top: 8px; padding-bottom: 8px;}
.ptb_4 {padding-top: 4px; padding-bottom: 4px;}

.plr_40 {padding-left: 40px; padding-right: 40px;}
.plr_32 {padding-left: 32px; padding-right: 32px;}
.plr_24 {padding-left: 24px; padding-right: 24px;}
.plr_16 {padding-left: 16px; padding-right: 16px;}
.plr_12 {padding-left: 12px; padding-right: 12px;}
.plr_8 {padding-left: 8px; padding-right: 8px;}

.pt_20 {padding-top: 20px;}
.pt_16 {padding-top: 16px;}
.pt_8 {padding-top: 8px;}

.pr_40 {padding-right: 40px;}
.pr_32 {padding-right: 32px;}
.pr_16 {padding-right: 16px;}

.pb_48 {padding-bottom: 48px;}
.pb_40 {padding-bottom: 40px;}
.pb_24 {padding-bottom: 24px;}
.pb_16 {padding-bottom: 16px;}
.pb_0 {padding-bottom: 0px;}

.pl_40 {padding-left: 40px;}
.pl_32 {padding-left: 32px;}
.pl_16 {padding-left: 16px;}

/* Contact button */
.contact-button {
    background-color: transparent;
    font-size: 16px;
    white-space: nowrap;
    text-align: center;
    display: inline-block;
    min-width: 200px;
    padding: 0 20px;
    border-width: 1px;
    border-style: solid;
    border-radius: 50px;
    border-color: var(--color-border);
    overflow-x: hidden;
    cursor: pointer;
    transition: background var(--transition-delay), color var(--transition-delay), border-color var(--transition-delay);
}

.contact-button .icon,
.contact-button span {
    transition: color var(--transition-delay);
}

.contact-button,
a.contact-button {
    line-height: 46px;
}

.contact-button.cb-short {
    line-height: 40px;
    padding: 0 16px;
}

.contact-button.cb-small {
    line-height: 30px;
    padding: 0 12px;
}

.contact-button.cb-mw_a {
    min-width: auto;
}

.contact-button.bc_accent,
.contact-button.bc_main {
    color: var(--color-alternative);
}

.contact-button.bc_accent {
    background-color: var(--color-accent);
    border-color: var(--color-accent);
}

.contact-button.bc_main {
    background-color: var(--color-main);
    border-color: var(--color-main);
}

.contact-button:not(.no-hover):not([disabled]):hover {
    background-color: var(--color-accent);
    border-color: var(--color-accent);
}

.contact-button.active:not([disabled]) {
    background-color: var(--color-accent-two);
    border-color: var(--color-accent-two);
}

.contact-button:not(.no-hover):not([disabled]):hover,
.contact-button.active:not([disabled]),
.contact-button:not(.no-hover):not([disabled]):hover span,
.contact-button.active:not([disabled]) span,
.contact-button:not(.no-hover):not([disabled]):hover .icon,
.contact-button.active:not([disabled]) .icon {
    color: var(--color-alternative) !important;
}

.contact-button.bc_accent:not(.no-hover):not([disabled]):hover,
.contact-button.bc_main:not(.no-hover):not([disabled]):hover {
    background-color: var(--color-alternative);
    border-color: var(--color-border);
}

.contact-button.bc_accent:not(.no-hover):not([disabled]):hover,
.contact-button.bc_main:not(.no-hover):not([disabled]):hover,
.contact-button.bc_accent:not(.no-hover):not([disabled]):hover span,
.contact-button.bc_main:not(.no-hover):not([disabled]):hover span,
.contact-button.bc_accent:not(.no-hover):not([disabled]):hover .icon,
.contact-button.bc_main:not(.no-hover):not([disabled]):hover .icon {
    color: var(--color-accent) !important;
}

/* Default text */
a,
.link {
    color: var(--color-main);
    font-size: 16px;
    line-height: 100%;
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
    cursor: pointer;
}

a,
a span,
a .icon,
a .wrapper-icon,
a.wrapper-icon .icon {
    transition: background-color var(--transition-delay), color var(--transition-delay), border-color var(--transition-delay);
}

a:not(.no-hover):hover,
a:not(.no-hover):hover span:not(.no-hover),
a:not(.no-hover):hover .icon:not(.no-hover),
a.active {
    color: var(--color-accent);
}

a .bc_accent {transition: background-color var(--transition-delay);}

a .wrapper-icon,
[class*="swiper-button-arrow"] .wrapper-icon {transition: background-color var(--transition-delay), border-color var(--transition-delay), opacity var((var(--transition-delay)));}

a:not(.no-hover) .wrapper-icon:hover,
[class*="swiper-button-arrow"]:not(.swiper-button-disabled) .wrapper-icon:hover {background-color: var(--color-accent); border-color: var(--color-accent);}

a:not(.no-hover) .wrapper-icon:hover .icon,
[class*="swiper-button-arrow"]:not(.swiper-button-disabled) .wrapper-icon:hover .icon {color: var(--color-alternative);}

a:not(.no-hover) .wrapper-icon.wi-two:hover {background-color: var(--color-accent);}



.title,
.subtitle,
.subtitle-two,
.name,
.caption,
.text {
    color: var(--color-main);
}

.title,
.subtitle,
.subtitle-two,
.name,
.caption {
    line-height: 100%;
}

.title,
.subtitle,
.subtitle-two,
.name,
.bold,
.text.bold {
    font-weight: 600;
}

.caption,
.text,
.description,
.normal {
    font-weight: 400;
}

.title {font-size: 48px;}
.subtitle {font-size: 32px;}
.subtitle-two {font-size: 24px;}
.name {font-size: 20px;}

.caption {font-size: 20px;}

.text,
.description {
    font-size: 16px;
}

.text {
    line-height: 150%;
}

.description {
    color: var(--color-description);
    line-height: 120%;
}

.c-accent {color: var(--color-accent);}

.c-main {color: var(--color-main);}

.c-alt {color: var(--color-alternative);}
.c-alt-two {color: var(--color-alternative-two);}
.c-  {color: var(--color-alternative-three);}
.c-alt-four {color: var(--color-alternative-four);}

.c-d {color: var(--color-description);}
.c-d-two {color: var(--color-description-two);}

.nowrap {white-space: nowrap;}

.fs_32 {font-size: 32px;}
.fs_28 {font-size: 28px;}
.fs_24 {font-size: 24px;}
.fs_20 {font-size: 20px;}
.fs_16 {font-size: 16px;}
.fs_14 {font-size: 14px;}
.fs_12 {font-size: 12px;}

.lh_24 {line-height: 24px;}

.ta_s {text-align: start;}
.ta_e {text-align: end;}
.ta_c {text-align: center;}

.tt_u {text-transform: uppercase;}

.td_lt {text-decoration: line-through;}
.td_u {text-decoration: underline;}

/* Richtext */
.richtext {
    font-size: 16px;
    line-height: 150%;
    display: grid;
    align-content: start;
    justify-items: start;
    grid-auto-flow: row;
    row-gap: 16px;
}

.richtext strong {
    font-size: 18px;
}

.richtext ul {
    padding-inline-start: 24px
}

/* Text big */
.wrapper-text-big {
    --letter-size: 24px;
}

.wrapper-text-big,
.wrapper-text-big.short .text {
    max-height: calc(var(--letter-size) * 6);
}

.wrapper-text-big.short {
    position: relative;
    transition: all 2s;
}

.wrapper-text-big.short .text {
    padding-right: 4px;
    padding-bottom: var(--letter-size);
    overflow-y: scroll;
}

.wrapper-text-big.short .text::-webkit-scrollbar {width: 4px;}
.wrapper-text-big.short .text::-webkit-scrollbar-button {width: 4px;}

.wrapper-text-big.short::after,
.wrapper-text-big.short::before {
    content: '';
    position: absolute;
    right: -1px;
}

.wrapper-text-big.short::after {
    background: linear-gradient(180deg, transparent, var(--color-alternative));
    bottom: 0;
    width: 100%;
    height: var(--letter-size);
}

.wrapper-text-big.bc_alt-two.short::after {
    background: linear-gradient(180deg, transparent, var(--color-alternative-two));
}

.wrapper-text-big.short::before {
    background-color: var(--color-alternative);
    width: 6px;
    height: 100%;
    transition: background-color var(--transition-delay);
}

.wrapper-text-big.bc_alt-two.short::before {
    background-color: var(--color-alternative-two);
}

.wrapper-text-big.short:hover::before {background-color: transparent;}

/* Tag */
.tag,
.tag .text {
    font-size: 16px;
    line-height: 36px;
}

.tag {
    padding: 0 12px;
    border-radius: 50px;
}

/* Default image */
.image {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.image.bs_ctn {background-size: contain;}
.image.bs_ctn_h {background-size: auto 100%;}

.image.bpy_t {background-position-y: top;}
.image.bpy_b {background-position-y: bottom;}

.image.s_80 {width: 80px; height: 80px;}
.wrapper-icon.s_64, .image.s_64 {width: 64px; height: 64px;}
.wrapper-icon.s_48 {width: 48px; height: 48px;}
.wrapper-icon.s_40 {width: 40px; height: 40px;}
.wrapper-icon.s_32, .image.s_32, .icon.s_32 {width: 32px; height: 32px;}
.icon.s_20 {width: 20px; height: 20px;}
.icon.s_16 {width: 16px; height: 16px;}
.icon.s_12 {width: 12px; height: 12px;}

.image.w_100p {width: 100%;}

.image.h_550 {height: 550px;}
.image.h_500 {height: 500px;}
.image.h_420 {height: 420px;}
.wrapper-image.h_400, .image.h_400 {height: 400px;}
.image.h_350 {height: 350px;}
.image.h_300 {height: 300px;}

.image.s_560 {width: 560px; height: 560px;}
.image.s_150 {width: 150px; height: 150px;}
.image.s_96 {width: 96px; height: 96px;}

.image.mh_700 {min-height: 700px;}
.image.mh_570 {min-height: 570px;}

/* image-lazy */
.observer {background: none !important;}

/* Default icon */
.icon {
    width: 24px;
    height: 24px;
    transition: color var(--transition-delay);
}

.icon {fill: currentColor;}

/* Default grid */
.grid {
    display: grid;
    grid-auto-flow: column;
    gap: 24px;
}

.gaf_r {grid-auto-flow: row;}
.gaf_u {grid-auto-flow: unset;}

.grid > .line {background-color: var(--color-border);}
.grid > .line.l-two {background-color: var(--color-border-two);}

.grid > .line {width: 1px; height: 100%;}
.grid.gaf_r > .line {width: 100%; height: 1px;}

.ac_s {align-content: start;}
.ac_c {align-content: center;}
.ac_e {align-content: end;}
.ac_sb {align-content: space-between;}

.ai_s {align-items: start;}
.ai_c {align-items: center;}
.ai_e {align-items: end;}

.as_s {align-self: start;}
.as_c {align-self: center;}
.as_e {align-self: end;}
.as_str {align-self: stretch;}

.jc_s {justify-content: start;}
.jc_c {justify-content: center;}
.jc_e {justify-content: end;}
.jc_sb {justify-content: space-between;}

.ji_s {justify-items: start;}
.ji_c {justify-items: center;}
.ji_e {justify-items: end;}

.js_s {justify-self: start;}
.js_c {justify-self: center;}
.js_e {justify-self: end;}

.gac_1 {grid-auto-columns: 1fr;}

.gtc_4 {grid-template-columns: repeat(4, 1fr);}
.gtc_3 {grid-template-columns: repeat(3, 1fr);}
.gtc_2 {grid-template-columns: repeat(2, 1fr);}

.gtc_1f2f {grid-template-columns: 1fr 2fr;}

.gtc_1a {grid-template-columns: 1fr auto;}
.gtc_a1 {grid-template-columns: auto 1fr;}

.gtr_2 {grid-template-rows: repeat(2, 1fr);}
.gtr_1a {grid-template-rows: 1fr auto;}
.gtr_a1 {grid-template-rows: auto 1fr;}

.g_64 {gap: 64px;}
.g_60 {gap: 60px;}
.g_56 {gap: 56px;}
.g_48 {gap: 48px;}
.g_40 {gap: 40px;}
.g_32 {gap: 32px;}
.g_20 {gap: 20px;}
.g_16 {gap: 16px;}
.g_12 {gap: 12px;}
.g_8 {gap: 8px;}
.g_4 {gap: 4px;}
.g_2 {gap: 2px;}
.g_0 {gap: 0;}

.cg_16 {column-gap: 16px;}
.rg_8 {row-gap: 8px;}

/* Default flex */
.flex {
    display: flex;
}

.fw_w {flex-wrap: wrap;}
.fw_nw {flex-wrap: nowrap;}
.fd_c {flex-direction: column;}

/* Custom title block */
.title-link {
    position: relative;
}

.title-block {
    background-color: var(--color-alternative);
    position: relative;
    visibility: hidden;
    opacity: 0;
    transition: opacity var(--transition-delay);
}

.title-block.visible {
    visibility: visible;
}

.title-block.active {
    opacity: 1;
}

/* Default block */
.bc_main {background-color: var(--color-main);}

.bc_accent {background-color: var(--color-accent);}
.bc_accent-two {background-color: var(--color-accent-two);}

.bc_description {background-color: var(--color-description);}

.bc_alt {background-color: var(--color-alternative);}
.bc_alt-two {background-color: var(--color-alternative-two);}

/* Default border */
.border {border: 1px solid var(--color-border);}

.border-accent {border: 1px solid var(--color-accent);}
.border-main {border: 1px solid var(--color-main);}
.border-alt {border: 1px solid var(--color-alternative);}
.border-alt_two {border: 1px solid var(--color-alternative-two);}

.bb {border-bottom: 1px solid var(--color-border);}

.bw_2 {border-width: 2px;}

.br {border-radius: 50%;}

.br_50 {border-radius: 50px;}
.br_40 {border-radius: 40px;}
.br_32 {border-radius: 32px;}
.br_25 {border-radius: 25px;}
.br_24 {border-radius: 24px;}
.br_20 {border-radius: 20px;}
.br_16 {border-radius: 16px;}
.br_12 {border-radius: 12px;}
.br_8 {border-radius: 8px;}
.br_4 {border-radius: 4px;}

/* Accordeon */
.accordeon-name {
    cursor: pointer;
}

.accordeon-name .wrapper-icon {
    transition: background-color var(--transition-delay);
}

.accordeon-name .wrapper-icon .icon {
    transition: color var(--transition-delay), transform var(--transition-delay);
}

.accordeon-name.active .wrapper-icon {
    background-color: var(--color-accent);
}

.accordeon-name.active .wrapper-icon .icon {
    color: var(--color-alternative);
    transform: rotateZ(-90deg);
}

/* Modal */
body.freeze {
    overflow-y: hidden;
}

.wrapper-modal {
    background-color: rgba(0, 0, 0, .4);
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 515;
}

.wrapper-modal .modal {
    position: relative;
    height: 100%;
    overflow-y: scroll;
    z-index: 520;
}

.wrapper-modal.m-one .modal {
    top: 40%;
    left: 50%;
    width: 100%;
    max-width: 670px;
    max-height: 540px;
    transform: translate(-50%, -50%);
    border-radius: 15px;
    transition: top .6s;
}

.wrapper-modal.m-two .modal {
    top: 0;
    right: -20%;
    bottom: 0;
    width: 100%;
    max-width: 540px;
    max-height: 100vh;
    padding-right: 12px;
    transition: right .6s;
}

.wrapper-modal.m-one .modal.active {
    top: 50%;
}

.wrapper-modal.m-two .modal.active {
    right: 0;
}

/* Online consultation */
/* #oc_contact_modal {
    --color-grey: rgba(142, 137, 152, 0.24);
}

#oc_contact_modal .modal {
    display: grid;
    padding: 32px;
}

#oc_contact_modal:not(.sent) .modal {
    grid-template-rows: repeat(2, auto) 1fr;
    row-gap: 24px;
}

#oc_contact_modal .modal .close {
    top: 32px;
    right: 24px;
}

#oc_contact_modal .steps {
    background: linear-gradient(transparent 15px, var(--color-grey) 15px, var(--color-grey) 17px, transparent 17px);
    display: grid;
    grid-auto-flow: column;
    justify-content: space-between;
}

#oc_contact_modal .steps > .item {
    background-image: var(--base64-check-mark);
    background-color: var(--color-accent);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 20px;
    font-size: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    transition: background-color var(--transition-delay);
}

#oc_contact_modal .steps > .item.active,
#oc_contact_modal .steps > .item.active ~ .item {
    background-image: none;
    font-size: 14px;
    line-height: 32px;
    text-align: center;
    color: var(--color-alternative);
}

#oc_contact_modal .steps .item.active ~ .item {
    background-color: var(--color-description);
}

#oc_contact_modal .modal form {
    display: grid;
    grid-template-rows: auto 1fr;
    row-gap: 24px;
    margin-top: 0;
}

#oc_contact_modal .tabs > .item > .name {
    margin-bottom: 24px;
}

#oc_contact_modal input[name="child_date_birth"] {
    height: 50px;
}

#oc_contact_modal input:not(:last-child),
#oc_contact_modal textarea,
#oc_contact_modal .upload .drag-and-drop,
#oc_contact_modal .preview-upload .item,
#oc_contact_modal .error_upload {
    margin-bottom: 12px;
}


#oc_contact_modal .select-doctors .title-link {
    background-color: var(--color-alternative-two);
    position: relative;
    padding: 16px;
    padding-right: calc(8px + 24px + 16px);
    border-radius: 8px;
    cursor: pointer;
}

#oc_contact_modal .select-doctors .title-link .icon {
    position: absolute;
    top: 20px;
    right: 16px;
    transition: transform var(--transition-delay);
}

#oc_contact_modal .select-doctors.active .title-link .icon {
    transform: rotateX(180deg);
}

#oc_contact_modal .select-doctors .title-link .name {
    color: #1B0641;
}

#oc_contact_modal .select-doctors .wrapper-title-block {
    position: relative;
    top: -4px;
}

#oc_contact_modal .select-doctors .title-block {
    position: relative;
    max-height: calc(4 * 70px);
    padding: 0;
    top: 0;
    overflow-y: scroll;
    z-index: 530;
    transition: opacity var(--transition-delay);
}

#oc_contact_modal .select-doctors .item {
    background-color: var(--color-alternative);
    padding: 12px 16px;
    transition: background-color var(--transition-delay);
    cursor: pointer;
}

#oc_contact_modal .select-doctors .item:hover {
    background-color: var(--color-alternative-three);
}

#oc_contact_modal .select-doctors .item .text {
    font-weight: 600;
}

#oc_contact_modal .select-doctors .item .description {
    font-size: 14px;
    margin-top: 4px;
}

#oc_contact_modal .wrapper-upload {
    position: relative;
}

#oc_contact_modal .wrapper-upload .wrapper-title-block .title-block {
    position: absolute;
    top: -300px;
    right: -12px;
    left: -12px;
}

#oc_contact_modal .upload .drag-and-drop {
    background-color: var(--color-alternative-two);
    text-align: center;
    display: block;
    padding: 24px 16px;
    border: 1px dashed #FF57A1;
    border-radius: 5px;
    filter: brightness(1);
    transition: filter var(--transition-delay);
    cursor: pointer;
}

#oc_contact_modal .upload .drag-and-drop.hover {
    filter: brightness(0.95);
}

#oc_contact_modal .upload .drag-and-drop .name,
#oc_contact_modal .upload .drag-and-drop .description {
    font-size: 16px;
}

#oc_contact_modal .upload .drag-and-drop .description {
    margin-top: 12px;
}

#oc_contact_modal .preview-upload {
    display: grid;
}

#oc_contact_modal .preview-upload .item {
    display: grid;
    align-items: center;
    justify-items: start;
    grid-template-columns: auto 1fr auto;
    column-gap: 12px;
}

#oc_contact_modal .preview-upload .item img {
    max-width: 32px;
    height: 100%;
    max-height: 32px;
}

#oc_contact_modal .preview-upload .item .name {
    font-size: 16px;
    text-overflow: ellipsis;
    max-width: 100%;
    overflow: hidden;
}

#oc_contact_modal .preview-upload .item .delete {
    background-image: url('/images/icons/close-grey.svg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 24px;
    height: 24px;
    cursor: pointer;
    transition: background-image var(--transition-delay);
}

#oc_contact_modal .error_upload {
    color: var(--color-accent);
    display: grid;
    row-gap: 4px;
    margin-top: 0;
}

#oc_contact_modal .buttons {
    display: grid;
    align-self: end;
    grid-auto-flow: column;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

#oc_contact_modal .buttons .contact-button {
    display: block;
    margin: 0;
    padding: 14px;
    min-width: auto;
}

#oc_contact_modal .buttons #oc-btn-prev,
#oc_contact_modal .buttons button.disabled {
    background: var(--color-alternative-three);
    color: var(--color-description) !important;
    filter: none;
    box-shadow: none;
}

#oc_contact_modal .buttons #oc-btn-next.disabled {
    cursor: not-allowed;
}

#oc_contact_modal:not(.sent) .block-final,
#oc_contact_modal.sent .modal > .name,
#oc_contact_modal.sent .steps,
#oc_contact_modal.sent .tabs .item,
#oc_contact_modal.sent form,
#oc_contact_modal input[name="doctor"],
#oc_contact_modal input[type="file"],
#oc_contact_modal button[type="submit"] {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

#oc_contact_modal .accordeon-name .accordeon-icon {
    transform: rotate(-90deg);
    transition: transform var(--transition-delay);
}

#oc_contact_modal .accordeon-name.active .accordeon-icon {
    transform: rotate(0deg);
}

#oc_contact_modal.sent .block-final {
    display: grid;
    row-gap: 16px;
}

#oc_contact_modal.sent .block-final .image {
    background-image: url('/images/icons/sparks-accent.svg');
    justify-self: center;
    width: 64px;
    height: 64px;
} */

/* Default form fields */
::placeholder {
    color: var(--color-description);
}

input,
textarea,
button {
    background-color: transparent;
    display: block;
    border: none;
    border-radius: 0;
}

form input,
form .wrapper-rating {
    line-height: 48px;
    height: 48px;
    border-radius: 50px;
}

form input,
form textarea,
form .wrapper-rating {
    background-color: var(--color-alternative);
    font-size: 16px;
    color: var(--color-main);
    padding: 0 20px;
    border: 1px solid var(--color-border);
}

form textarea {
    /* background-image: url('/images/icons/expand.png'); */
    /* background-position: right 3px bottom 3px; */
    /* background-size: 12px; */
    /* background-repeat: no-repeat; */
    line-height: 24px;
    min-height: calc(16px * 2 + 24px);
    max-height: calc(24px * 6);
    padding-top: 8px;
    padding-bottom: 8px;
    border-radius: 25px;
    resize: vertical;
}

form input[name="first-name"],
form input[name="mail"] {
    display: none;
}

form button {
    cursor: pointer;
    transition: filter var(--transition-delay);
}

form input[type="checkbox"] + label {
    line-height: 20px;
    display: inline-block;
    position: relative;
    padding-left: 30px;
    cursor: pointer;
}

form input[type="checkbox"] + label a {
    color: var(--color-accent);
    font-size: inherit;
}

form input[type="checkbox"] + label a:hover {
    color: var(--color-accent);
}

form input[type='checkbox'] {
    position: absolute;
    left: -9999px;
}

form input[type="checkbox"] + label::before,
form input[type="checkbox"]:not(:checked) + label::before {
    background-color: transparent;
}

form input[type="checkbox"] + label::before {
    content: "";
    background-repeat: no-repeat;
    background-position: center;
    background-size: 70%;
    position: absolute;
    left: 0px;
    top: 0px;
    width: 20px;
    height: 20px;
    border: 1px solid var(--color-border);
    border-radius: 5px;
    transition: background-color var(--transition-delay), background-image var(--transition-delay), border-color var(--transition-delay);
}

form input[type="checkbox"]:checked + label::before {
    background-color: var(--color-accent);
    background-image: var(--base64-check-mark);
    border-color: var(--color-accent);
}

form button[disabled] {
    filter: brightness(0.8);
    cursor: not-allowed;
}

.rating > input {
    display: none;
}

.rating > label {
    position: relative;
    float: right;
}

.rating > label.full {
    background-image: url('/images/icons/star-fill-noactive.svg');
    background-position: left;
    background-repeat: no-repeat;
    background-size: 19px;
    color: var(--color-description);
    position: relative;
    width: 28px;
    height: 20px;
    transition: background-image var(--transition-delay);
}

/***** CSS Magic to Highlight Stars on Hover *****/

.rating > input:checked ~ label, /* show gold star when clicked */
.rating > input:checked ~ label::before,
.rating:not(:checked) > label:hover, /* hover current star */
.rating:not(:checked) > label:hover::before,
.rating:not(:checked) > label:hover ~ label,
.rating:not(:checked) > label:hover ~ label::before {
    background-image: url('/images/icons/star-fill-active.svg');
} /* hover previous stars in list */

.rating > input:checked + label:hover, /* hover current star when changing rating */
.rating > input:checked ~ label:hover,
.rating > label:hover ~ input:checked ~ label, /* lighten current selection */
.rating > input:checked ~ label:hover ~ label {
    background-image: url('/images/icons/star-fill-active.svg');
}

input[type="date"]::before {
    content: attr(data-placeholder);
    width: 100%;
}

input[type="date"]:focus::before,
input[type="date"]:valid::before { display: none }

/* Tax deduction contact form */
#td-contact-form .date-wrapper {
  position: relative;
}

#td-contact-form .date-wrapper input {
  width: 100%;
  z-index: 3;
}

#td-contact-form .fake-placeholder {
  background: var(--color-alternative);
  color: var(--color-description);
  font-size: 12px;
  position: absolute;
  left: 20px;
  top: 0;
  transform: translateY(-50%);
  z-index: 5;
}

#td-contact-form .upload .drag-and-drop {
    background-color: var(--color-alternative);
    font-size: 16px;
    line-height: 48px;
    color: var(--color-main);
    display: grid;
    height: 48px;
    padding: 0 20px;
    border: 1px solid var(--color-border);
    border-radius: 50px;
    filter: brightness(1);
    transition: filter var(--transition-delay);
    cursor: pointer;
}

#td-contact-form .upload .drag-and-drop.hover {
    filter: brightness(0.8);
}

#td-contact-form .upload .drag-and-drop .caption {
    font-size: 14px;
    padding: 4px 12px;
    border: 1px solid var(--color-border);
    border-radius: 50px;
}

#td-contact-form .preview-upload .item {
    display: grid;
    align-items: center;
    justify-items: start;
    grid-template-columns: auto 1fr auto;
    column-gap: 12px;
}

#td-contact-form .preview-upload .item img {
    max-width: 32px;
    height: 100%;
    max-height: 32px;
}

#td-contact-form .preview-upload .item .name {
    font-size: 16px;
    text-overflow: ellipsis;
    max-width: 100%;
    overflow: hidden;
}

#td-contact-form .preview-upload .item .delete {
    background-image: url('/images/icons/close-grey.svg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 24px;
    height: 24px;
    cursor: pointer;
    transition: background-image var(--transition-delay);
}

#td-contact-form .error_upload {
    color: var(--color-accent);
    display: grid;
    row-gap: 4px;
}

#td-contact-form input[type="file"] {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}



/* Header */
header {
    --menu-button-size: 3px;
    --menu-button-height: 2px;
    position: sticky;
    top: 0;
    height: var(--size-header);
    z-index: 510;
}

header .top,
header .bottom {
    position: relative;
    z-index: 507;
}

header .bottom {
    border-bottom: 1px solid transparent;
    transition: top var(--transition-delay), border-color var(--transition-delay);
}

/* header.scroll div:not(.title-block.active) ~ .bottom { */
header.scroll .bottom {
    border-color: var(--color-border);
}

/* header .title-block {
    position: absolute;
    top: calc(var(--size-header) - 100%);
    width: 100%;
    transition: all calc(var(--transition-delay) * .75);
    z-index: 504;
}

header .title-block.active {
    top: var(--size-header);
} */

header #wrapper-menu-button {
    width: 48px;
    height: 48px;
}

header #menu-button {
    position: relative;
    width: 12px;
    height: calc(var(--menu-button-height) * 3 + var(--menu-button-size) * 2);
    cursor: pointer;
}

header #menu-button > div {
    background-color: var(--color-accent);
    position: relative;
    width: 100%;
    height: var(--menu-button-height);
    opacity: 1;
    transition: background-color var(--transition-delay), opacity var(--transition-delay), top calc(var(--transition-delay)), transform calc(var(--transition-delay) * 2);
}

header #menu-button > .item-1 {top: 0px;}
header #menu-button > .item-2 {top: var(--menu-button-size);}
header #menu-button > .item-3 {top: calc(var(--menu-button-size) * 2);}

#menu-button.active > .item-1 {
    top: calc(var(--menu-button-size) + var(--menu-button-height));
    transform: rotate(135deg);
}

#menu-button.active > .item-2 {
    opacity: 0;
}

#menu-button.active > .item-3 {
    top: calc(var(--menu-button-size) - var(--menu-button-height));
    transform: rotate(45deg);
}

/* Block menu */
#menu,
.background-menu {
    position: fixed;
    bottom: 0;
    width: 100%;
    min-height: 100%;
}

#menu {
    left: -100%;
    right: 100%;
    height: calc(100% - var(--size-header) - 16px);
    padding: calc(var(--size-header) + 24px) var(--m_mlr) 16px var(--mlr);
    overflow-y: scroll;
    z-index: 505;
    transition: left calc(var(--transition-delay) * 2), right calc(var(--transition-delay) * 2);
}

.background-menu {
    background-color: rgba(0, 0, 0, 0.2);
    opacity: 0;
    visibility: hidden;
    z-index: 502;
    transition: all var(--transition-delay);
}

#menu .links {
    grid-auto-flow: row;
}

#menu .socials {
    justify-content: start;
}

body.freeze {
    overflow: hidden;
}

body.freeze header .bottom {
    border-color: var(--color-border);
    transition: border-color var(--transition-delay);
}

#menu.active {
    left: 0%;
    right: 0%;
}

.title-block.active ~ .background-menu,
#menu.active ~ .background-menu {
    opacity: 1;
    visibility: visible;
}

#menu-button.active > div {
    background-color: var(--color-accent);
}



/* breadcrumbs */
.breadcrumb {
    --column-gap: 8px;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--column-gap);
    margin: 0;
    padding: 0;
}

.breadcrumb-item {
    font-size: 16px;
}

.breadcrumb-item,
.breadcrumb-item a,
.breadcrumb-item + .breadcrumb-item:before {
    color: var(--color-description);
}

.breadcrumb-item + .breadcrumb-item:before {
    content: '|';
    padding-right: var(--column-gap);
}

.breadcrumb-item:last-child {
    color: var(--color-accent);
}



/* Block welcome */
.wrapper-block-welcome .left,
.wrapper-block-welcome .right {
    position: relative;
}

.wrapper-block-welcome .left {
    z-index: 105;
}

.wrapper-block-welcome .richt {
    z-index: 103;
}



/* Main */
main .wrapper-right {
    position: relative;
}

main .right {
    position: sticky;
    top: var(--size-header);
}



/* Block about clinic && Block clinic interiors */
.block-about_clinic .swiper-slide,
.block-clinic_interiors .swiper-slide {
    transform: scaleY(1);
    transition: transform var(--transition-delay);
}

.block-about_clinic .swiper-slide:not(.swiper-slide-active),
.block-clinic_interiors .swiper-slide:not(.swiper-slide-active) {
    transform: scaleY(.8);
}



/* Block contact form short */
.block-contact-form-short.bc_accent-two .contact-button.bc_accent {background-color: var(--color-main);}
.block-contact-form-short.bc_accent-two .contact-button:not([disabled]).bc_accent:hover {background-color: var(--color-alternative);}
.block-contact-form-short.bc_accent-two form input[type="checkbox"]:checked + label::before {
    background-color: var(--color-main);
    border-color: var(--color-main);
}
.block-contact-form-short.bc_accent-two .c-d {color: #F8D7DA;}
.block-contact-form-short.bc_accent-two .c-main {color: var(--color-alternative);}
.block-contact-form-short.bc_accent-two a:hover span.c-main {color: var(--color-main)}



/* Block services */
#services a.item:hover,
#services a.item:hover span,
#services a.item:hover .icon {
    color: inherit;
}

#services .tab-buttons .tab-button-item span {
    color: var(--color-description);
    border-bottom: 2px solid transparent;
}

#services .tab-buttons .tab-button-item.active span {
    color: var(--color-accent);
    border-color: var(--color-accent);
}

#services .tab-buttons .tab-button-item:hover span {
    color: var(--color-accent);
    border-color: var(--color-accent);
}

#services [class*="item"] {
    position: relative;
    min-height: 280px;
}

#services [class*="item"] * {
    position: relative;
    z-index: 2;
}

#services [class*="item"] .background {
    background-size: 240px;
    background-position: bottom right;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: opacity calc(2 * var(--transition-delay));
    z-index: 1;
}



/* Block doctors */
#doctors .wrapper-image {
    position: absolute;
    bottom: 0;
    z-index: 100;
}

#doctors .doctor-info {
    z-index: 120;
}

#doctors .doctor-preview .swiper-slide-thumb-active .image {
    transition: border-color var(--transition-delay);
}

#doctors .doctor-preview .swiper-slide-thumb-active .image {
    border-color: var(--color-accent);
}

#doctors .doctor-preview .swiper-buttons-pagination,
#doctors .doctor-preview .swiper-pagination-bullet {
    width: 100% !important;
}

/* Block wrapper doctors */
.wrapper-doctors .doctor {
    width: 100%;
    max-width: 470px;
    height: 100%;
    margin: auto;
}



/* Block contact form short */
.block-contact-form-short.vertical button.contact-button[name="submit"] {
    justify-self: stretch !important;
}



/* Block contacts */
.contacts .tab-button-item {
    transition: border-color var(--transition-delay);
}

.contacts .tab-button-item.active {
    border-color: var(--color-accent);
}



/* Wrapper oc_contact_modal */
/* #wrapper-oc_contact_modal {
    background-color: var(--color-accent) !important;
    background-size: auto 100%;
    background-position: center right;
    background-repeat: no-repeat;
} */



/* Works */
#works .work .wrapper-image {
    position: relative;
    overflow: hidden;
}

#works .work .wrapper-image .image-slider-arrows {
    position: absolute;
    right: 24px;
    bottom: 24px;
    left: 24px;
}



/* FAQ */
#faq .accordeon-item {
    padding-right: calc(24px + 48px + 24px);
}

#faq .accordeon-name {
    position: relative;
}

#faq .accordeon-name .wrapper-icon {
    position: absolute;
    top: 0;
    right: calc(-1 * (24px + 48px));
}

#faq .accordeon-name .wrapper-icon .icon {
    transform: rotateZ(-45deg);
}

#faq .accordeon-name.active .wrapper-icon {
    background-color: var(--color-alternative);
}

#faq .accordeon-name.active .wrapper-icon .icon {
    color: var(--color-accent);
    transform: rotateZ(0deg);
}



/* Block photo of works */
.photos-of-works .photos-of-work {
    position: relative;
    min-height: 420px;
}

.photos-of-works .photos-of-work .image,
.photos-of-works .photos-of-work .tab-buttons {
    position: relative;
}

.photos-of-works .photos-of-work .image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
}

.photos-of-works .photos-of-work .tab-buttons {
    z-index: 10;
}



/* Block documents */
#documents a.item {
    transition: border var(--transition-delay);
}

#documents a.item:hover,
#documents a.item:hover .wrapper-icon {border-color: var(--color-accent);}
#documents a.item:hover .wrapper-icon {background-color: var(--color-accent);}
#documents a.item:hover .wrapper-icon .icon {color: var(--color-alternative);}





/* Media */
@media screen and (max-width: 1488px) {
    :root {
        --mlr: var(--m_mlr);
    }
}

@media screen and (max-width: 1440px) {
    .laptopl-i {display: none !important;}

    /* Default grid */
    .ll_gaf_r {grid-auto-flow: row;}

    .ll_gtc_2 {grid-template-columns: repeat(2, 1fr);}
    .ll_gtc_1 {grid-template-columns: 1fr;}
}

@media screen and (max-width: 1200px) {
    #header_link_works {
        display: none;
    }
}

@media screen and (max-width: 1100px) {
    #header_link_reviews {
        display: none;
    }
}

@media screen and (max-width: 1024px) {
    .laptop-i {display: none !important;}



    /* Default image */
    .image.l_w_a {width: auto;}

    .image.l_h_520 {height: 520px;}
    .image.l_h_350 {height: 350px;}
    .image.l_h_260 {height: 260px;}

    .image.l_mh_a {min-height: auto;}



    /* Global margin */
    .l_mt_0 {margin-top: 0;}

    .l_mb_0 {margin-bottom: 0;}

    /* Global padding */
    .l_p_0 {padding: 0px;}



    /* Default grid */
    .l_gaf_r {grid-auto-flow: row;}

    .grid.l_gaf_r > .line {width: 100%; height: 1px;}

    .l_gtc_3 {grid-template-columns: repeat(3, 1fr);}
    .l_gtc_2 {grid-template-columns: repeat(2, 1fr);}
    .l_gtc_1 {grid-template-columns: 1fr;}

    .l_gtr_1 {grid-template-rows: 1fr;}

    .l_jc_c {justify-content: center;}
    .l_jc_sb {justify-content: space-between;}
    .l_jc_str {justify-content: stretch;}

    .l_ji_str {justify-items: stretch;}

    .l_g_24 {gap: 24px;}
    .l_g_20 {gap: 20px;}
    .l_g_16 {gap: 16px;}
    .l_g_12 {gap: 12px;}


    /* Block welcome */
    .wrapper-block-welcome .left {
        top: -40px;
    }

    .wrapper-block-welcome .right {
        grid-row: 1 / 2;
    }

    /* .wrapper-block-welcome .right .image {
        background-size: 280px auto !important;
        background-position: center top 24px !important;
    } */



    /* Block happyhour */
    .happyhour .price {
        display: flex;
        flex-wrap: wrap;
    }



    /* Block contacts */
    .contacts iframe {max-height: 530px;}
}

@media screen and (max-width: 768px) {
    :root {
        --size-story: 150px;

        --mlr: 16px;
    }

    .desktop {display: none !important;}



    /* Contact button */
    .contact-button {
        font-size: 14px;
        padding: 0px 12px;
    }

    /* Default text */
    .title {font-size: 32px;}
    .subtitle {font-size: 28px;}
    .subtitle-two {font-size: 22px;}
    .name {font-size: 20px;}

    .m_fs_36 {font-size: 36px;}
    .m_fs_28 {font-size: 28px;}
    .m_fs_24 {font-size: 24px;}
    .m_fs_20 {font-size: 20px;}
    .m_fs_14 {font-size: 14px;}

    .m_ta_c {text-align: center;}



    /* Default image */
    .image.m_w_a {width: auto;}

    .image.m_h_260 {height: 260px;}
    .image.m_h_240 {height: 240px;}

    .image.m_mh_a {min-height: auto;}

    .image.m_s_80 {width: 80px; height: 80px;}



    /* Global margin */
    .m_m_20 {margin: 20px;}

    .m_mlr {margin-left: var(--mlr); margin-right: var(--mlr);}

    .m_mlr_20 {margin-left: 20px; margin-right: 20px;}
    .m_mlr_0 {margin-left: 0; margin-right: 0;}

    .m_mt_20 {margin-top: 20px;}
    .m_mt_8 {margin-top: 8px;}
    .m_mt_0 {margin-top: 0;}

    .m_mr_20 {margin-right: 20px;}

    .m_mb_40 {margin-bottom: 40px;}
    .m_mb_16 {margin-bottom: 16px;}
    .m_mb_0 {margin-bottom: 0px;}



    /* Global padding */
    .m_plr {padding-left: var(--mlr); padding-right: var(--mlr);}

    .m_p_24 {padding: 24px;}
    .m_p_20 {padding: 20px;}
    .m_p_16 {padding: 16px;}

    .m_ptb_32 {padding-top: 32px; padding-bottom: 32px;}
    .m_ptb_24 {padding-top: 24px; padding-bottom: 24px;}
    .m_ptb_20 {padding-top: 20px; padding-bottom: 20px;}
    .m_ptb_12 {padding-top: 12px; padding-bottom: 12px;}

    .m_plr_20 {padding-left: 20px; padding-right: 20px;}
    .m_plr_0 {padding-left: 0; padding-right: 0;}

    .m_pt_32 {padding-top: 32px;}

    .m_pb_0 {padding-bottom: 0;}

    .m_pl_20 {padding-left: 20px;}



    /* Default slider */
    /* .sldr.sm-full.slick-initialized {
        position: relative;
        width: calc(100% + var(--mlr) * 2);
        right: calc(var(--mlr) * -1);
        left: calc(var(--mlr) * -1);
    } */



    /* Default grid */
    .m_gaf_r {grid-auto-flow: row;}

    .grid.m_gaf_r > .line {width: 100%; height: 1px;}

    .m_g_64 {gap: 64px;}
    .m_g_40 {gap: 40px;}
    .m_g_32 {gap: 32px;}
    .m_g_24 {gap: 24px;}
    .m_g_20 {gap: 20px;}
    .m_g_16 {gap: 16px;}
    .m_g_12 {gap: 12px;}
    .m_g_8 {gap: 8px;}
    .m_g_4 {gap: 4px;}
    .m_g_0 {gap: 0;}

    .m_gtc_2 {grid-template-columns: repeat(2, 1fr);} .m_tc_2 {grid-template-columns: repeat(2, 1fr);}
    .m_gtc_1 {grid-template-columns: repeat(1, 1fr);} .m_tc_1 {grid-template-columns: repeat(1, 1fr);}

    .m_f_w {
        display: flex;
        flex-wrap: wrap;
    }

    .m_ac_s {align-content: start;}
    .m_ac_e {align-content: end;}
    .m_ac_sb {align-content: space-between;}

    .m_jc_s {justify-content: start;}
    .m_jc_c {justify-content: center;}

    .m_ji_s {justify-items: start;}
    .m_ji_c {justify-items: center;}



    /* Default border */
    .m_br_24 {border-radius: 24px;}
    .m_br_20 {border-radius: 20px;}



    /* Modal */
    .wrapper-modal.m-one .modal {
        max-height: 620px;
    }



    /* Default form fields */
    form {
        gap: 24px;
    }



    /* Wrapper oc_contact_modal */
    /* #wrapper-oc_contact_modal {
        background-image: none;
    } */
}

@media screen and (max-width: 376px) {
    /* Block services */
    #services .top {
        grid-auto-flow: row;
    }
}

@media screen and (max-width: 360px) {
    /* Contact button */
    .contact-button {
        padding: 0px 4px;
    }
}

@media screen and (max-width: 350px) {
    :root {
        --mlr: 12px;
    }
}

@media screen and (min-width: 769px) {
    :root {
        --size-story: 200px;
    }



    .mobile {display: none !important;}



    /* Default text */
    .d_fs_56 {font-size: 56px;}
    .d_fs_48 {font-size: 48px;}
    .d_fs_40 {font-size: 40px;}
    .d_fs_32 {font-size: 32px;}
    .d_fs_28 {font-size: 28px;}
    .d_fs_24 {font-size: 24px;}
    .d_fs_20 {font-size: 20px;}
    .d_fs_18 {font-size: 18px;}
    .d_fs_14 {font-size: 14px;}



    /* Global margin */
    .d_ml {margin-left: var(--mlr);}



    /* Default image */
    /* .image.d_h_550 {height: 550px;} */



    /* Default grid */
    .d_gaf_r {grid-auto-flow: row;}

    .grid.d_gaf_r > .line {width: 1px; height: 100%;}

    .d_gtc_2 {grid-template-columns: repeat(2, 1fr);}
    .d_gtc_3 {grid-template-columns: repeat(3, 1fr);}

    .d_ai_s {align-items: start;}
    .d_ai_c {align-items: center;}

    .d_jc_s {justify-content: start;}
    .d_jc_c {justify-content: center;}
    .d_jc_e {justify-content: end;}
    .d_jc_sb {justify-content: space-between;}

    .d_js_s {justify-self: start;}
    .d_js_c {justify-self: center;}
    .d_js_e {justify-self: end;}

    .d_ji_s {justify-items: start;}
    .d_ji_c {justify-items: center;}
    .d_ji_e {justify-items: end;}

    .d_g_40 {gap: 40px;}



    /* Modal */
    body.freeze {
        margin-right: 12px;
    }



    /* Header */
    #menu {
        max-width: calc(var(--m_mlr) + 320px + var(--mlr));
    }
}

@media screen and (min-width: 1025px) {
    .laptop {display: none !important;}



    /* Contact modal */
    .wrapper-modal .modal form .contact-button {
        justify-self: start;
    }



    /* Block welcome */
    .wrapper-block-welcome .left {
        right: -12px;
    }

    .wrapper-block-welcome .right {
        left: -12px;
        /* padding-left: 24px; */
    }



    /* Block contact form short */
    .block-contact-form-short.horizontal .wrapper,
    .block-contact-form-short.horizontal .inputs {
        grid-auto-flow: column;
        gap: 12px;
    }



    /* Block doctors */
    #doctors {
        position: relative;
    }

    #doctors .top,
    #doctors .doctor-info,
    #doctors .doctor-preview {
        position: absolute;
    }

    #doctors .top,
    #doctors .doctor-info {
        top: 48px;
    }

    #doctors .top {
        left: 40px;
        z-index: 110;
    }

    #doctors .content {
        height: 700px;
    }

    #doctors .doctor-info {
        position: absolute;
        top: 48px;
        right: 40px;
        max-width: 400px;
        height: auto;
        z-index: 120;
    }

    #doctors .doctor-preview {
        right: 0;
        bottom: 40px;
        left: 0;
        max-width: calc(150px * 4 + 20px * 3);
        margin: auto;
        z-index: 130;
    }

    #doctors .doctor-preview .swiper-buttons-pagination .swiper-pagination-bullet {
        background-color: var(--color-alternative);
    }



    /* Main */
    main {grid-template-columns: 1fr 440px;}
    .contacts main {grid-template-columns: 440px 1fr;}
}

@media screen and (min-width: 1441px) {
    .laptopl {display: none !important;}
}