/*
Theme Name: NewHorizonsMedical
Author: HiSEO
Author URI: https://hiseo.ru/
Description: New Horizons Medical
Version: 1.0
*/

*{
    box-sizing: border-box;
    font-family: Montserrat, system-ui, sans-serif;
}
body{
	font-size: 16px;
	margin: 0;
    color: #2E4355;
}
body.noscroll{overflow: hidden;}
h1, h2, h3, h4, h5, h6{margin: 0;}
a{color: #47b4e3; text-decoration: underline; cursor: pointer;}
a:hover{color: #25bb82;}
p{margin-top: 0;}
p, pre{
	line-height: 1.7em;
}
img{max-width: 100%; height: auto;}
ul{margin: 0; padding: 0;}
ol{padding-left: 20px;}
ul li{list-style: none;}
button{outline: 0; background: none; border: 0; cursor: pointer;}
table{border: 0; border-spacing: 0;}
video{outline: none;}
video[poster]{object-fit: cover;}

.hidden{display: none !important;}

#wpadminbar{z-index: 99; position: relative;}

@media screen and (max-width: 765px){
    .desktop_only{display: none!important;}
}
@media screen and (min-width: 766px){
    .mobile_only{display: none!important;}
}

/* =========================================
                  ANIMATIONS
   ========================================= */
.loading:after {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 6px solid #fff;
    border-color: #fff transparent #fff transparent;
    animation: loading 1.2s linear infinite;
    position: absolute;
    top: calc(50% - 16px);
    left: calc(50% - 16px);
}
@keyframes loading{
  from {transform: rotate(0deg);}
  to {transform: rotate(360deg);}
}
   
@keyframes fade_in{
	from {opacity: 0;}
	to {opacity: 1;}
}
@keyframes fade_out{
	from {opacity: 1;}
	to {opacity: 0;}
}

.has-text-align-center{text-align: center;}
.has-large-font-size{font-size: 2em;}
.has-huge-font-size{font-size: 3em;}
.has-medium-font-size{font-size: 1.5em;}

/* =========================================
                  BUTTONS
   ========================================= */
.btn, .btn_white, .btn_blue{
    color: #47b4e3;
    background-color: #fff;
    font-weight: bold;
    padding: 12px 20px;
    display: inline-block;
    border-radius: 8px;
    cursor: pointer;
    text-decoration: none;
    border: 0;
    outline: 0;
}
.btn_white{
    color: #25bb82;
    background-color: #fff;
}
.btn_white:hover{
    color: #fff;
    background-color: #25bb82;
}
.btn_blue{
    color: #fff;
    background-color: #47b4e3;
}
.btn_arrow{
    border-radius: 15px;
    height: 25px;
    width: 65px;
    transition: 0.15s;
    background: no-repeat 50% 50% / 21px url(images/icons/arrow_to_right_w.svg), #333;
    color: #fff;
    display: inline-block;
    text-decoration: none;
    vertical-align: middle;
}
.btn_arrow:hover{background-position: 75% 50%;}


/* =========================================
                 HEADERS
   ========================================= */
h1, .h1{
    font-size: 2em;
    text-transform: uppercase;
}
h2, .h2{
    font-size: 1.7em;
    text-transform: uppercase;
    text-align: center;
    color: #47b4e3;
    margin-bottom: 45px;
}
.h_with_name span{display: block;}
.h_with_name .name{font-weight: 300;}
.h_with_name .name + span{color: #000;}


/* =========================================
            SHADING & BACKGROUND
   ========================================= */
.shading{position: relative;}
.shading:before{
	content: '';
	display: block;
	position: absolute;
	background: #000; opacity: 0.5;
	z-index: 0;
	width: 100%; height: 100%;
	transition: 0.2s;
	top: 0;
	left: 0;
}
.shading > *{position: relative;}
.shading > img{z-index: -2;}

.cover:not(img){
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
img.cover{
	object-fit: cover;
	transition: 0.2s;
    height: 100%;
    width: 100%;
}

.gray_gradient{background: linear-gradient(#fff, #eef0f2); padding: 1px;}
.gray_gradient.section_mg{
    padding-bottom: 70px;
    margin-bottom: 0;
}
.gray_bg{background-color: #f0f0f0; padding: 1px;}

/* =========================================
                    POPUP
   ========================================= */
#popup{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 999;
    display: grid;
    grid-template-rows: 100vh;
    grid-template-columns: 1fr;
    align-items: center;
    justify-items: center;
}
#popup .bg{
    background-color: #000000aa;
    position: absolute;
    height: 100%;
    width: 100%;
    cursor: pointer;
}
#popup .cross{
    color: #fff;
    background: no-repeat center / 10px url(images/icons/cross_w.svg), #47b4e3;
    border-radius: 50%;
    position: absolute;
    width: 20px;
    height: 20px;
    right: 6px;
    top: 6px;
    user-select: none;
    cursor: pointer;
    font-size: 2em;
    z-index: 2;
    padding: 0!important;
}
#popup .cross:hover{background-color: #25bb82;}
#popup .content{
    z-index: 1;
    position: relative;
}

/* IMAGE VIEWER */
#popup .img_viewer{
    overflow: auto;
    max-height: 100%;
}
#popup .img_viewer.zoom{
    text-align: center;
    width: 100%;
}
#popup .img_viewer img{object-fit: contain;}
#popup .img_viewer.zoom img{cursor: zoom-out;}
#popup .img_viewer:not(.zoom) img{
    cursor: zoom-in;
    max-width: 100%;
    max-height: 100%;
    padding: 30px;
}

/* VIDEO VIEWER */
#popup .video_viewer video{max-height: 80vh; max-width: 100vw;}

/* POPUP FORM */
#popup .popup_form{
    background: #fff;
    padding: 35px 25px;
    border-radius: 10px;
}

/* POPUP SLIDER */
.zoom_slider img{cursor: pointer;}
#popup .tiny-slider{text-align: center; padding: 20px 0;}
#popup .tiny-slider .controls li{
    min-width: 100px;
    width: 25vw;
    background-position: center;
}
@media screen and (max-width: 765px){
    #popup .cross{right: 10px;}
}
/* =========================================
                   BLOCKS
   ========================================= */
.container{
    max-width: 1150px;
    padding: 0 15px;
    margin: 0 auto;
} 
.narrow_content{
    max-width: 950px;
    margin: 0 auto;
}
.section_mg{
    margin-top: 80px;
    margin-bottom: 70px;
}
.section_pd{
    padding-top: 80px;
    padding-bottom: 70px;
}
.grid, .grid2, .grid3, .grid4{display: grid;}
.grid2{grid-template-columns: 1fr 1fr;}
.grid3{grid-template-columns: 1fr 1fr 1fr;}
.grid4{grid-template-columns: 1fr 1fr 1fr 1fr;}


.text_container h2{color: #000;}
.text_container img.half{width: 50%; height: auto;}
.text_container .right{float: right; margin: 0 0 20px 30px;}
.text_container .left{float: left; margin: 0 30px 20px 0;}

.wp-container-2.wp-container-2.is-layout-flex,
.wp-container-3.wp-container-3.is-layout-flex{
    align-items: flex-start;
}
.wp-container-2.wp-container-2.is-layout-flex .is-vertically-aligned-center,
.wp-container-3.wp-container-3.is-layout-flex .is-vertically-aligned-center{
    align-self: center!important;
}
.wp-container-2.wp-container-2.is-layout-flex .is-vertically-aligned-bottom,
.wp-container-3.wp-container-3.is-layout-flex .is-vertically-aligned-bottom{
    align-self: flex-end!important;
}

@media screen and (max-width: 1199px){
    .container{max-width: 980px;}
} 
@media screen and (max-width: 999px){
    body{font-size: 15px;}
    .container{max-width: 760px;}
    .narrow_content{max-width: 550px;}
    .grid2, .grid3{grid-template-columns: 1fr;}
    .grid4{grid-template-columns: 1fr 1fr;}
}
@media screen and (max-width: 765px){
    body{font-size: 14px;}
    .container{ max-width: 100%;}
    .section_pd{padding-bottom: 40px; padding-bottom: 40px;}
    .section_mg{margin-bottom: 40px; margin-bottom: 40px;}
}
@media screen and (max-width: 699px){
    .wp-container-2.wp-container-2.is-layout-flex,
    .wp-container-3.wp-container-3.is-layout-flex{
        display: block!important;
    }
}
@media screen and (max-width: 499px){
    .grid4{grid-template-columns: 1fr;}
    .text_container img.half{width: 100%; margin: 0 0 20px;}
}


/* =========================================
                   SLIDER
   ========================================= */
.tiny-slider .box{
    position: relative;
    padding: 0 30px;
}
/* controls */
.tiny-slider .controls{
    color: #fff;
    outline: none;
    margin: 0;
}
.tiny-slider .controls li{
    cursor: pointer;
    outline: none;
    position: absolute;
    z-index: 1;
    margin: 0;
    top: 0;
    height: 100%;
    width: 29px;
    background-repeat: no-repeat;
    background-size: 18px;
    font-size: 0;
    user-select: none;
}
.tiny-slider .controls li.next{
    right: 0; 
    background-position: right;
    background-image: url(images/icons/slider_arrow_r.svg);
}
.tiny-slider .controls li.prev{
    left: 0; 
    background-position: left;
    background-image: url(images/icons/slider_arrow_l.svg);
}
.tiny-slider .controls li.prev:hover{background-image: url(images/icons/slider_arrow_l_g.svg);}
.tiny-slider .controls li.next:hover{background-image: url(images/icons/slider_arrow_r_g.svg);}
.tiny-slider .controls li[aria-disabled="true"]{display: none;}
.tiny-slider .autoplay{
    z-index: 2;
    position: absolute;
    bottom: 20px;
    width: 35px;
    height: 35px;
    left: 50%;
    transform: translateX(-50%);
    outline: none;
    border-radius: 50%;
    color: #fff;
    background: #47b4e3;
    cursor: pointer;
    transition: 0.1s;
    line-height: 30px;
    padding: 0 0 0 2px;
}
.tiny-slider .autoplay *{user-select: none;}
.tiny-slider:not(:hover) .autoplay{opacity: 0.1}


/* thumbnails */
.tiny-slider .thumbnails{
    text-align: center;
    margin-top: 10px;
}
.tiny-slider .thumbnails li{
    display: inline-block;
    padding: 3px;
    outline: none;
}
.tiny-slider .thumbnails img{
    width: 40px;
    height: 40px;
    padding: 2px;
    border: 2px solid transparent;
    object-fit: cover;
    object-position: center;
    cursor: pointer;
}
.tiny-slider .thumbnails .tns-nav-active img{
    border-color: #47b4e3;
    cursor: default;
}

.tiny-slider .tns-nav{text-align: center; margin-top: 10px;}
.tiny-slider .tns-nav button{
    display: inline-block;
    width: 32px;
    height: 9px;
    border-radius: 5px;
    border: 0;
    background-color: #CDD5DD;
    margin: 4px;
    padding: 0;
}
.tiny-slider .tns-nav button.tns-nav-active{background-color: #25bb82;}

.tiny-slider .item.cover{
    background-position: top 20% left 50%;
}

/* >>>>>> Docs in slider */
#docs img{
    height: 350px;
}


/* >>>>>> History slider */
#history .description{
    color: #fff;
    background-color: #2E4355D9;
    max-width: 450px;
    padding: 50px 20px 20px;
    font-weight: 300;
    min-height: 380px;
}
#history .description h3{
    text-transform: uppercase;
    font-size: 1.7em;
    margin-bottom: 30px;
}

@media screen and (max-width: 765px){
    .tiny-slider .box{padding: 0;}
    .tiny-slider .tns-nav button{width: 9px;}
}
 
/* =========================================
			   MAIN NAVIGATION
   ========================================= */
@keyframes fix_menu{
	from {transform: translateY(-100%)}
	to {transform: translateY(0)}
}
@keyframes unfix_menu{
	from {position: fixed; transform: translateY(0)}
	to {position: fixed; transform: translateY(-100%)}
}
#master_head{position: relative; z-index: 9;}
#master_head .wrapper{
	width: 100%;
    background: #fff;
	border-bottom: 1px solid #e9e9e9;
	top: -300px;
	transition: 0.3s;
	top:0;
}
#master_head.fixed .wrapper{position: fixed; animation: fix_menu 0.2s;}
#master_head:not(.fixed) .wrapper{animation: unfix_menu 0s;}
#master_head .bg{
    width: 100vw;
    height: 100vh;
    left: 0;
    top: 0;
    position: fixed;
    background: #00000099;
    z-index: -1;
}
#master_head:not(.opened) .bg,
#master_head .mobile{display: none;}
#master_head .burger{
    cursor: pointer;
    width: 30px;
    height: 30px;
    background: no-repeat center / auto 25px url(images/icons/burger_b.svg);
    grid-area: btn;
}
#master_head.opened .burger{
    background: no-repeat center / auto 15px url(images/icons/cross.svg);
}

/* --------------------
          MENU
   ------------------ */
#master_head .main_menu{
	display: grid;
	grid-auto-flow: column;
    grid-gap: 10px;
	justify-content: end;
    align-items: center;
}
#master_head .main_menu .home_link{display: none;}
#master_head .main_menu li{position: relative;}

/* LVL 1 */
#master_head .main_menu > li > a{
    text-transform: uppercase;
	position: relative;
    font-weight: bold;   
    border-radius: 8px;
}
#master_head .main_menu > li.menu-item-has-children > a{border-radius: 8px 8px 0 0;}
#master_head .main_menu > li.menu-item-has-children > a:after{
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 6px 0 6px;
    border-color: #868686 transparent transparent transparent;
    margin: 6px 0 0 13px;
    vertical-align: text-top;
}
#master_head .main_menu > li.menu-item-has-children:hover > a:after{border-color: #fff transparent transparent transparent;}
#master_head .main_menu button{
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
    height: 40px;
    width: 30px;
    border: 0;
    outline: 0;
    padding: 0;
    display: none;
    justify-content: center;
    align-items: center;
    background: transparent;
}
#master_head .main_menu button:before{
    content: '';
    border-style: solid;
    border-width: 7px 6px 0 6px;
    border-color: #868686 transparent transparent transparent;
    transition: 0.2s;
}
#master_head .main_menu li.opened > button:before{
    transform: rotate(-90deg);
}

/* LVL 2+ */
#master_head .main_menu ul{
    background-color: #fff;
    position: absolute;
    display: none;
    z-index: 1;
    min-width: 100%;
    border-radius: 0 0 8px 8px;
    overflow: hidden;
    box-shadow: 1px 3px 1px #00000017;
}
@media(min-width: 1000px){
    #master_head .main_menu li:hover > ul{display: block;}
    #master_head .main_menu li:not(:hover) > ul{display: none!important;}
}
#master_head .main_menu ul a{
    border-radius: 0!important;
    text-align: left;
    font-weight: normal;
    text-transform: none;
    border-top: 1px solid #e7eaef;
    white-space: nowrap;
}

/* ALL LVLs */
#master_head .main_menu li > a{
    display: block;
    color: #2E4355;
    text-decoration: none;
    padding: 11px 20px;
}
#master_head .main_menu li:hover > a,
#master_head .main_menu li.contact_us > a{background-color: #47b4e3; color: #fff;}
#master_head .main_menu li.current_page_item > a{}
#master_head .main_menu li.contact_us:hover > a{background-color: #2e4355;}

/* #master_head:not(.opened) .main_menu li.menu-item-has-children:hover > a:after{border-color: #fff transparent transparent transparent;} */


/* --------------------
        TOP PANEL
   ------------------ */
#master_head .top_panel{
    background-color: #F5F6F8;
    padding: 5px 0;
}
#master_head .top_panel .container{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#master_head .top_panel .container > div{display: flex;}
#master_head .top_panel .phone{
    padding-left: 25px;
    font-weight: 500;
    font-size: 0.9em;
    background: no-repeat left 2px / 15px url(images/icons/phone_b.svg);
}
#master_head .top_panel .phone a{
    color: #2e4355;
    text-decoration: none;
}
#master_head .top_panel .phone a:hover{
    color: #47b4e3;
}
#master_head .top_panel .social_links{
    display: flex;
    height: 24px;
    font-size: 0;
}
#master_head .top_panel .social_links a,
#master_head .top_panel .account{
    width: 24px;
    height: 24px;
    display: inline-block;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin: 0 0 0 19px;
}
#master_head .top_panel .social_links .fb{background-image: url(images/icons/soc_f_b.svg)}
#master_head .top_panel .social_links .tw{background-image: url(images/icons/soc_tw_b.svg)}
#master_head .top_panel .social_links .in{background-image: url(images/icons/soc_in_b.svg)}
#master_head .top_panel .social_links .li{background-image: url(images/icons/soc_li_b.svg)}
#master_head .top_panel .account{background-image: url(images/icons/account.svg)}


/* --------------------
     OTHER STYLES
   ------------------ */
#master_head .slogan{
    background: no-repeat center / contain url(/wp-content/themes/newhorizonsmedical/images/slogan.svg);
    width: 300px;
    height: 20px;
}
#master_head .selected_city{
    padding-left: 22px;
    line-height: 20px;
    font-weight: bold;
    cursor: pointer;
    background: no-repeat left / 15px url(images/icons/map_mark_b.svg);
    margin-right: 40px;
    white-space: pre;
}
#master_head .selected_city:after{
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 6px 0 6px;
    border-color: #868686 transparent transparent transparent;
    margin: 6px 0 0 13px;
    vertical-align: text-top;
}

/* >>>>>> Desctop */
#master_head .main .container{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#master_head .main .logo img{height: 80px; padding: 15px 0;}
#master_head.min .main .logo img{height: 50px; padding: 10px 0;}

/* >>>>>> Mobile */
#master_head .mobile .container{
    display: grid; 
    align-items: center;
    padding-bottom: 8px;
    padding-top: 8px;
    grid-template: 'logo slogan btn' 'logo city btn' / 1fr auto 30px;
}
#master_head .mobile .selected_city{grid-area: city;}
#master_head .mobile .slogan{grid-area: slogan; margin-right: 20px;}
#master_head .mobile .logo{grid-area: logo; justify-self: start;}
#master_head .mobile .logo img{height: 40px;}


@media screen and (max-width: 1199px){
    #master_head .top_panel .social_links a,
    #master_head .top_panel .account{margin: 0 0 0 14px;}
    #master_head .selected_city{margin-right: 20px;}
    #master_head .top_panel .work_time span{margin-right: 8px; display: block; line-height: 12px;}
    #master_head .slogan{
        width: 170px;
        max-width: 34vw;
        background: no-repeat center / contain url(/wp-content/themes/newhorizonsmedical/images/slogan_min.svg);
    }
}
@media screen and (max-width: 999px){
    #master_head .mobile{display: block;}   
	#master_head .wrapper{top: 0;}
	#master_head.hide .wrapper{transform: translateY(-100%);}
	#master_head .desktop{
        position: fixed;
        z-index: 99;
        background: #fff;
        max-width: 100vw;
        transition: 0.2s;
        height: 100vh;
        left: -100vw;
        box-shadow: -1px 6px 6px 3px #0000001f;
    }
	#master_head.opened .desktop{left: 0;}
    #master_head .desktop .logo{display: none!important;}  
    #master_head .main_menu button{display: flex;}
	#master_head .main_menu a{
        background: none!important; 
        color: initial!important;
    }
    #master_head .main_menu{
        grid-auto-flow: row;
        margin-top: 10px;
        grid-gap: 0;
    }
	#master_head .main_menu > li{min-width: 250px;}
	#master_head .main_menu > li ul{
        position: relative;
		width: 100%;
		display: none;
		padding: 0 20px 15px;
        box-shadow: none;
	}
	#master_head .main_menu > li ul a{
		display: block;
		border-bottom: 1px solid #f4f5f7;
		padding: 8px 30px 8px 0;
	}
    /* ------------- */
    
    #master_head .main_menu > li.menu-item-has-children > a:after{display: none;}
    #master_head .desktop .slogan,
    #master_head .desktop .selected_city{display: none!important;}
    #master_head .mobile .selected_city{justify-self: end;}
    #master_head .top_panel .account{background-image: url(images/icons/account_fas.svg)}
    #master_head .top_panel .container{display: grid;}
    #master_head .top_panel .container .left_side{display: grid; grid-gap: 10px;}
    #master_head .top_panel .container .right_side{padding: 10px 0 5px;}
    #master_head .top_panel .social_links li:first-child a{margin-left: 0;}
}

@media screen and (max-width: 400px){
    #master_head .mobile .logo img {height: 32px; object-fit: contain;}
    #master_head .desktop .selected_city{display: block;}
    #master_head .mobile .selected_city{display: none;}
    #master_head .desktop .selected_city{display: block!important; margin-top: 10px;}
}


/* =========================================
              SIDEBAR NAVIGATION
   ========================================= */
.post_navigation{
    position: fixed;
    z-index: 9;
    background-color: #fff;
    padding: 30px 20px 20px;
    box-shadow: 4px 12px 12px 1px #00000012;
    transition: 0.2s;
    overflow: auto;
    width: 100%;
    max-width: 340px;
    max-height: 100vh;
    left: 0;
    top: 0;
}
.post_navigation:not(.opened){transform: translatex(-100%); box-shadow: none;}
.post_navigation .header{
    font-size: 1.7em; 
    font-weight: 700;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.post_navigation .header .cross{
    background: no-repeat center / 15px url(images/icons/cross.svg);
    cursor: pointer;
    display: inline-block;
    width: 22px;
    height: 22px;
}
.post_navigation .header .cross:hover{background-image: url(images/icons/cross_b.svg);}
.post_navigation a{
    color: #2E4355;
    text-decoration: none;
}
.post_navigation .category{margin: 30px 0 0}
.post_navigation .category > a{font-weight: 500;}
.post_navigation ul li{margin: 10px 0px;}
.post_navigation ul li:before{
    content: '';
    display: inline-block;
    width: 17px;
    height: 1px;
    background-color: #47B4E3;
    vertical-align: middle;
    margin-right: 8px;
}
.post_navigation ul a{
    color: #47B4E3;
}
.post_navigation a:hover{
    text-decoration: underline;
    color: #25bb82;
}


/* =========================================
                 MAIN FOOTER
   ========================================= */
.basement{
    background-color: #2e4355;
    padding: 30px 0 40px;
}
.basement .container{
    grid-gap: 20px;
    display: grid;
    grid-template: 'logo main main2' 'contacts social social' 'copyright agreement hiseo' / 2fr 2fr 1fr;
}
.basement p{margin: 0;}
.basement .logo{grid-area: logo;}
.basement .contacts{grid-area: contacts;}
.basement .contacts li{
    color: #fff;
    padding: 4px 0 4px 34px;
    line-height: 2em;
    background-position: left;
    background-repeat: no-repeat;
    background-size: auto 18px;
}
.basement .contacts li.phone{background-image: url(images/icons/phone_w.svg)}
.basement .contacts li.location{background-image: url(images/icons/map_mark_w.svg)}
.basement nav.main{grid-area: main;}
.basement nav.main ul.menu{
    display: grid;
    grid-template-columns: auto 1fr;
    grid-gap: 5px 50px;
    justify-items: start;
}
.basement nav.main li{display: inline-block;}
.basement nav.main a{
    text-decoration: none;
    color: #58748b;
    font-weight: 700;
    font-size: 0.8em;
    line-height: 2em;
}
.basement nav.agreement{grid-area: agreement; align-self: end;}
.basement nav.agreement li{display: inline-block; margin-right: 10px;}
.basement nav.agreement a{
    color: #58748b;
    font-size: 0.8em;
}
.basement .social_links{grid-area: social; align-self: end;}
.basement .social_links {display: flex; font-size: 0;}
.basement .social_links a{
    width: 40px;
    height: 40px;
    display: inline-block;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 25px;
}
.basement .social_links .fb{background-image: url(images/icons/soc_f_db.svg)}
.basement .social_links .tw{background-image: url(images/icons/soc_tw_db.svg)}
.basement .social_links .in{background-image: url(images/icons/soc_in_db.svg)}
.basement .social_links .li{background-image: url(images/icons/soc_li_db.svg)}
.basement .copyright{
    grid-area: copyright;
    color: #58748b;
}
.basement .copyright span{
    display: block;
    font-size: 0.8em;
    margin-bottom: 15px;
}
.basement .hiseo{
    grid-area: hiseo;
    display: flex;
    align-items: center;
    text-decoration: none;
}
.basement .hiseo img{height: 45px;}
.basement .hiseo span{
    text-transform: none;
    display: inline-block;
    margin-left: 5px;
    font-size: 0.8em;
    color: #fff;
    text-decoration: none;
}
.basement .widget1{
    grid-area: main2;
    display: flex;
    align-items: center;
    text-decoration: none;
}
@media screen and (max-width: 999px){
    .basement .container{grid-template-columns: 1fr 1fr 150px;}
}
@media screen and (max-width: 765px){
    .basement .social_links a{
        width: 30px;
        height: 30px;
        margin: 0 10px;
    }
    .basement .container{
        grid-template: 'logo' 'main' 'main2' 'contacts' 'social' 'agreement' 'copyright' 'hiseo' / 1fr;
        max-width: 300px;
        justify-items: center;
    }
}

/* =========================================
             FIRST BLOCK ON PAGE
   ========================================= */
.facade{
    color: #fff;
    position: relative;
    padding-top: 20px;
}
.facade .background{
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    z-index: -1;
}
.facade .background img{
    filter: grayscale(0.3);
    object-position: top;
}
.facade .btn{
    text-transform: uppercase;
    color: #47b4e3;
    background-color: #fff;
    font-weight: bold;
    padding: 18px 25px;
    display: inline-block;
    border-radius: 8px;
    cursor: pointer;
    text-decoration: none;
    color: #47b4e3;
    background-color: #fff;
    margin-bottom: 100px;
}
.facade h1{
    padding: 50px 0 110px;
    font-size: 2em;
    line-height: 1.7em;
    max-width: 520px;
}
.facade.low h1{padding: 20px 0 30px;}
body.home .facade.low h1{padding-bottom: 10px;}
.facade .links{
    position: absolute;
    bottom: 15px;
}
.facade .links a{
    display: inline-block;
    background-color: #2e4355;
    border-radius: 8px;
    text-transform: uppercase;
    padding: 4px 8px;
    font-size: 0.7em;
    color: #fff;
    margin-right: 15px;
    text-decoration: none;
}
.facade.map.shading:before{background-color: #074d6d;}
.facade.map{padding-bottom: 100px;}
.facade.map h1{padding: 50px 0 30px;}
.facade.map .clinics_anchors a{
    padding: 6px 14px;
    margin: 5px;
    font-weight: 600;
    background-color: #f0f1f3;
    text-decoration: underline;
}
.facade.map #search_clinic{
    width: 100%;
    padding: 15px 40px 15px 20px;
    border-radius: 7px;
    border: 0;
    outline: none;
}

.facade button{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 0;
    color: #fff;
    height: 60px;
    width: 60px;
    font-size: 0;
    transition: 0.05s;
    padding: 0;
    border-radius: 50%;
    background: no-repeat center / 15px url(images/icons/play.svg), #25bb82;
    background-position: 55% 50%;
}
.facade video{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.facade.play .container{position: absolute;}


.front_notice{
    background-color: #ff863f;
    color: #fff;
    text-align: center;
    padding: 20px 0;
    text-transform: uppercase;
    font-weight: bold;
}
.front_notice .container{position: relative;}
.front_notice span{
    color: #fff;
    text-decoration: none;
    padding: 2px 0;
    display: inline-block;
    border-bottom: 2px solid transparent;
}
.front_notice a:hover span{border-bottom: 2px solid #fff;}
.front_notice .close{
    background: no-repeat center/15px url(images/icons/cross_w.svg);
    width: 30px;
    height: 30px;
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
}
@media screen and (max-width: 999px){
    .facade button{
        top: auto;
        bottom: -5px;
        height: 40px;
        width: 40px;
    }
}
@media screen and (max-width: 765px){
    .facade h1{line-height: 1.3em; padding: 30px 0 60px;}
}

/* =========================================
                BREADCRUMBS
   ========================================= */
.breadcrumbs{
    color: #fff;
    list-style: none;
    padding: 0;
    font-size: 0.7em;
    margin: 0;
}
.breadcrumbs li{
    display: inline-block;
}
.breadcrumbs li > a,
.breadcrumbs li > span{
    background-color: #658096;
    color: #fff;
    padding: 6px 17px;
    border-radius: 8px;
    display: inline-block;
    margin: 4px 8px;
    text-decoration: none;
}
.breadcrumbs li:first-child a{margin-left: 0;}
.facade .breadcrumbs li > a, .facade .breadcrumbs li > span {background-color: rgba(101, 128, 150, 0.7);}

/* =========================================
              MULTICOLORED BOX
   ========================================= */
.multicolored{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 25px;
}
.multicolored > div{
    border-radius: 8px;
    background-color: #fff;
    display: grid;
    grid-template-columns: 1fr 3fr;
    overflow: hidden;
}
.multicolored .img{
    background-position: 10% 20%;
    background-size: cover;
}
.multicolored > div > div{
    min-height: 240px;
    padding: 22px 25px 22px 15px;
    position: relative;
}
.multicolored > div > div h3{
    font-weight: 300;
    color: #47b4e3;
    font-size: 1.6em;
    margin-bottom: 20px;
}
.multicolored .btn_arrow{
    position: absolute;
    bottom: 20px;
}
@media screen and (max-width: 999px){
    .multicolored{grid-template-columns: 1fr;}
    .multicolored > div > div{min-height: 200px;}
}

/* =========================================
              GET HELP TODAY
   ========================================= */
.get_help{
    background: url(images/default_clinic.jpg) center;
    background-size: cover;
    position: relative;
    padding: 10px 0 80px;
    text-align: center;
}
.get_help:before{
    background: #00587d;
}
.get_help h2{
    color: #fff;
    font-size: 2em;
    text-transform: none;
    margin: 70px 0 30px;
}
.get_help .phone{
    padding-left: 30px;
    background: url(images/icons/phone-w.svg) left no-repeat;
    background-size: 15px;
    font-size: 1.15em;
    color: #fff;
}
.get_help .phone:not(:hover){text-decoration: none;}
.get_help .btn{
    padding-left: 40px;
    padding-right: 40px;
    margin-top: 35px;
    font-weight: normal;
    color: #000;
}
.get_help .btn:hover{color: #25bb82;}
.get_help .btn:hover .btn_arrow{background-position: 75% 50%;}
.get_help .btn .btn_arrow{margin-left: 12px;}
@media screen and (max-width: 765px){
    .get_help .btn{
        display: inline-grid;
        justify-items: center;
        grid-gap: 8px;
        padding: 12px 25px;
        margin-top: 20px;
    }
}


/* =========================================
              ICONS WITH TEXT
   ========================================= */
.icons_with_text{grid-gap: 25px;}
.icons_with_text > div{
    background-repeat: no-repeat;
}
.icons_with_text strong{
    color: #25bb82;
    font-weight: 600;
    font-size: 1.15em;
    display: block;
}
.icons_with_text a{
    display: inline-block;
}
.icons_with_text:not(.large) > div{
    padding-left: 60px;
    background-size: 50px;
}
.icons_with_text.large > div{
    padding-top: 90px;
    background-size: 69px;
}
.icons_with_text.large strong{
    padding-bottom: 15px;
}
@media screen and (max-width: 999px){
    .icons_with_text{font-size: 0.9em;}
}
@media screen and (max-width: 765px){
    .icons_with_text{grid-template-columns: 1fr; max-width: 280px; margin: 0 auto;}
}


/* =========================================
                POST CONTENT
   ========================================= */
.post_content:after{
    content: '';
    display: table;
    clear: both;
}
.post_content .thumbnail{
    float: right;
    max-width: 40%;
    height: auto;
    object-fit: cover;
    margin: 0 0 12px 15px;
    width: 100%;
}
.post_content.contact-us .thumbnail{
    height: auto;
    max-height: 450px;
    max-width: 60%;
}
.post_content .header{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px 0 25px;
}
.post_content .header div{display: flex;}
.post_content .header h2{margin: 0;}
.post_content .header .low{font-size: 0.7em;}
.post_content .container > h2{margin-bottom: 35px;}
.post_content .container > h2:not(:first-child){margin-top: 50px;}
.post_content h3 {font-size: 1.5em; margin: 25px 0 15px;}
.post_content ul{margin-bottom: 15px;}
.post_content ul li{
    margin-bottom: 7px;
    position: relative;
    padding-left: 12px;
}
.post_content ul li:before{
    content: '';
    display: inline-block;
    background: #47b4e3;
    border-radius: 50%;
    width: 7px;
    height: 7px;
    vertical-align: middle;
    margin: 6px 6px 5px 0;
    position: absolute;
    left: 0;
}
.post_content ul li li:before{
    border: 3px solid #47b4e3;
    background: none;
    box-sizing: border-box;
}
.post_content .tiny-slider ul li:before{content: none;}
.post_content hr{
    border-style: dashed;
    border-color: #d0d0d0;
    margin: 25px 0;
}
.gallery_slider .tns-item img{height: 300px;}
.wp-block-video video{max-width: 100%; border-radius: 20px;}
.wp-block-video figcaption{
    text-align: center;
    margin: 30px 0;
    font-weight: 700;
    font-size: 1.1em;
}
.wp-block-columns{display: flex;}
.wp-block-columns .wp-block-column{flex-basis: 100%;}
@media screen and (max-width: 999px){
    .wp-block-columns{display: grid;}
}


/* =========================================
                POSTS GRID
   ========================================= */
.posts_grid{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 40px 25px;
}
.posts_grid .item{}
.posts_grid .item .poster{position: relative;}
.posts_grid .item .poster .img{
    padding-bottom: 70%;
    border-radius: 7px;
    background-size: cover;
    background-position: center;
    transition: 0.1s;
}
.posts_grid .item .poster .img:hover{transform: scale(1.04);}
.posts_grid .item a{display: block;}
.posts_grid .item .h{
    padding: 9px 0; 
    font-weight: 700;
    font-size: 1.4em;
}
.posts_grid .item .h:not(:hover){text-decoration: none; color: #2E4355;}
.posts_grid .item .cloud_btn{
    position: absolute;
    bottom: 30px;
    right: 30px;
}
.posts_grid .item footer{
    padding-top: 5px;
    border-top: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    font-size: 0.7em;
    align-self: end;
}
.posts_grid .item .views,
.post_content .views{
    background: no-repeat url(images/icons/eye.svg);
    background-position: 0 1px;
    background-size: 14px;
    height: 17px;
    display: block;
    padding-left: 22px;
    margin-left: 20px;
}

/* .posts_grid.archive .item:first-child{grid-row-end: span 2;} */
/* .posts_grid.archive .item:first-child .poster .img{padding-bottom: calc(140% + 109px);} */

.posts_grid.linked_posts{grid-template-columns: 1fr 1fr 1fr 1fr;}
.posts_grid.linked_posts .item .img{padding-bottom: 100%;}
.posts_grid.linked_posts .item.wide{grid-column-end: span 2;}
.posts_grid.linked_posts .item.wide .img{padding-bottom: calc(50% - 15px);}

.tags_cloud{margin-bottom: 30px;}
.tags_cloud > *{vertical-align: middle;}
.tags_cloud button{
    background: no-repeat center/25px url(images/icons/burger.svg);
    width: 40px;
    height: 26px;
    outline: none;
    border: 0;
}
.tags_cloud button:not(:hover){opacity: 0.6}
.cloud_btn{
    display: inline-block;
    background-color: #333;
    color: #fff;
    text-decoration: none;
    padding: 9px 20px;
    border-radius: 8px;
    margin: 6px 10px;
}
.cloud_btn:hover{background-color: #F0F1F3!important; color: #333;}
.cloud_btn:first-child{margin-left: 0;}

.cloud_btn.c_theme{background-color: #25bb82;}
.cloud_btn.c_theme:hover{color: #25bb82;}
.cloud_btn.c_science{background-color: #47b4e3;}
.cloud_btn.c_science:hover{color: #47b4e3;}


.cloud_btn.c_getting-started{background-color: #25bb82;}
.cloud_btn.c_getting-started:hover{color: #25bb82;}
.cloud_btn.c_opioid-addiction{background-color: #3e84c3;}
.cloud_btn.c_opioid-addiction:hover{color: #3e84c3;}
.cloud_btn.c_alcohol-addiction{background-color: #47b4e3;}
.cloud_btn.c_alcohol-addiction:hover{color: #47b4e3;}
.cloud_btn.c_family-involvement{background-color: #dbb059;}
.cloud_btn.c_family-involvement:hover{color: #dbb059;}
.cloud_btn.c_recovery{background-color: #bb95ce;}
.cloud_btn.c_recovery:hover{color: #bb95ce;}


.show_more{
    margin: 50px auto 0;
    display: block;
    padding: 15px 30px;
    text-transform: uppercase;
    font-weight: 600;
}
@media screen and (max-width: 999px){
    .posts_grid{grid-template-columns: 1fr 1fr!important;}
    .post_content.contact-us .thumbnail{float: none; margin: 0 0 20px 0; max-width: 100%; max-height: 100%;}
}
@media screen and (max-width: 765px){
    .post_content .thumbnail{
        float: none; 
        margin: 0 0 20px 0; 
        max-width: 100%;
    }
    .post_content .header{display: grid; grid-gap: 5px;}
    .gallery_slider .tns-item img{height: auto;}
    .posts_grid .item .cloud_btn{bottom: 15px; right: 15px;}
}
@media screen and (max-width: 599px){
    .posts_grid {grid-template-columns: 1fr!important;}
    .posts_grid.archive .item:first-child{grid-row-end: span 1;}
    .posts_grid.archive .item:first-child .poster .img {padding-bottom: 70%;}
    .posts_grid.linked_posts .item.wide{grid-column-end: span 1;}
    .posts_grid.linked_posts .item.wide .img{padding-bottom: 100%;}
    .tags_cloud .cloud_btn{
        margin: 2px;
        padding: 3px 8px;
        font-size: 0.85em;
        border-radius: 4px;
    }
}


/* =========================================
               GUIDES & FORMS
   ========================================= */
.guides_forms > p{
    text-align: center;
    margin-bottom: 30px;
}
.guides_forms .grid4{
    grid-gap: 10px;
    grid-auto-flow: dense;
}
.guides_forms .item{
    padding: 20px;
    background-color: #333;
    color: #fff;
    text-decoration: none;
    border-radius: 10px;
    align-content: end;
    display: grid;
}
.guides_forms .item.col2{grid-column-end: span 2;}
.guides_forms .item.col3{grid-column-end: span 3;}
.guides_forms .item.col4{grid-column-end: span 4;}
.guides_forms .item.row2{grid-row-end: span 2;}
.guides_forms .item.row3{grid-row-end: span 3;}
.guides_forms .item .icon{
    height: 40px;
    margin: 5px 0 15px;
    background-size: contain;
    background-repeat: no-repeat;
}
.guides_forms .item .name{
    font-weight: 600;
    font-size: 1.1em;
    margin-bottom: 7px;
}
.guides_forms .item p{
    margin-bottom: 8px;
}
@media screen and (max-width: 999px){
    .guides_forms .item.col3{grid-column-end: span 2;}
    .guides_forms .item.col4{grid-column-end: span 2;}
}
@media screen and (max-width: 499px){
    .guides_forms .item.col2{grid-column-end: span 1;}
    .guides_forms .item.col3{grid-column-end: span 1;}
    .guides_forms .item.col4{grid-column-end: span 1;}
    .guides_forms .item.row2{grid-row-end: span 1;}
    .guides_forms .item.row3{grid-row-end: span 1;}
}

/* =========================================
                   CLINICS
   ========================================= */

.tabs .buttons{text-align: center;}
.tabs .buttons button, .state_selector li{
    border: 0;
    color: #47b4e3;
    background-color: #F0F1F3;
    text-decoration: underline;
    text-transform: uppercase;
    padding: 15px 29px;
    border-radius: 8px;
    font-weight: 600;
    margin: 5px;
    position: relative;
    display: inline-block;
    cursor: pointer;
    user-select: none;
}
.tabs .buttons button.selected:after, .state_selector li.selected:after{
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 6px 0 6px;
    border-color: #47b4e3 transparent transparent transparent;
    position: absolute;
    left: 50%;
    margin-left: -3px;
    bottom: -6px;
}
.tabs .buttons button.selected, .state_selector li.selected{
    color: #fff;
    background: #47b4e3;
    text-decoration: none;
    cursor: default;
}
.tabs article{
    display: grid;
    grid-template-columns: 1fr 100px;
    grid-gap: 30px;
}
.tabs article .header{
    grid-column-end: span 2;
    background-color: #f6f8fb;
    padding: 60px 50px 85px;
    margin-top: 40px;
    position: relative;
}
.tabs article .header h3{
    padding-left: 40px;
    border-left: 7px solid #47b4e3;
}
.tabs article .header .tablet{
    height: 110%;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background-image: url(images/tablet.png);
    background-position: right 40px bottom 0px;
    background-repeat: no-repeat;
    background-size: contain;
}
.tabs article .header span{
    display: block;
    font-size: 1.5em;
}
.tabs article a{
    text-decoration: none;
    padding-top: 65px;
    background: no-repeat top/50px url(images/icons/download_docs.svg);
    text-align: center;
    color: #25bb82;
}
.tabs .item:not(.active) {
   display: none;
}  
.state_selector{margin: 40px 0 20px;}
@media(max-width: 999px){
    .tabs article .header .tablet{display: none;}
}


/* Single */
.single_clinic{
    grid-gap: 40px;
}
.single_clinic .gray_box{
    background-color: #F5F6F8;
    border-radius: 10px;
    padding: 20px 40px;
    margin-bottom: 40px;
}
.single_clinic .gray_box .rate{float: right;}
.google_list .items{height: 400px; overflow: auto;}

/* Archive */
.contacts_page .clinic_item{
    border-radius: 10px;
    border: 1px solid #F5F6F8;
    margin: 50px 0;
}
.contacts_page .clinic_item > div{padding: 40px 40px 40px 70px;}
.contacts_page .clinic_item .details .header{display: flex; justify-content: space-between;}
.clinic_item .main_info{
    border-radius: 10px 10px 0 0;
    background-color: #F5F6F8;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 40px;
    padding-bottom: 60px;
}
.clinic_item .clinic_photos{grid-area: 1 / 1;}
.clinic_item .clinic_photos .img{position: relative;}
.clinic_item .clinic_photos .cover{position: absolute;}
.clinic_item .clinic_photos .box{padding: 0;}
.clinic_item .clinic_photos li.next{background-image: url(images/icons/slider_arrow_r_w.svg); right: 15px;}
.clinic_item .clinic_photos li.prev{background-image: url(images/icons/slider_arrow_l_w.svg); left: 15px;}
.clinic_item .clinic_photos .tns-ovh{
    border-radius: 10px;
    overflow: hidden;
}
.clinic_photos .box, .clinic_photos .tns-outer, .clinic_photos .tns-ovh, .clinic_photos .tns-inner, .clinic_photos .slides, .clinic_photos .slides > div{height: 100%;}
.clinic_item.selected .clinic_details .h{border-color: #47B4E3;}
.clinic_item:not(.selected) .clinic_details .h:hover{color: #47B4E3; cursor: pointer;}
.clinic_item .clinic_details .header{
    display: flex;
    justify-content: space-between;
}
.clinic_item .reviews{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto 1fr;
    grid-gap: 5px 40px;
}
.clinic_item .reviews .grid3{grid-gap: 10px; grid-template-columns: 1fr 1fr 1fr; margin-bottom: 15px;}
.clinic_item .reviews .h{
    font-size: 1.7em;
    color: #47b4e3;
    margin-bottom: 15px;
    font-weight: 700;
    max-width: 350px;
}

/* Components */
.rate{
    display: flex;
    align-items: center;
    user-select: none;
}
.rate span{
    font-size: 0.8em;
    opacity: 0.4;
    margin: 0 4px;
}
.clinic_details .h{
    display: inline-block;
    border-bottom: 2px solid transparent;
    padding-bottom: 3px;
    font-size: 1.5em;
    font-weight: 600;
}
.clinic_details li{
    margin: 20px 0;
    padding-left: 25px;
    background-repeat: no-repeat;
    background-position: 0 2px;
}
.clinic_details li.phone{background-image: url(images/icons/phone_b.svg)}
.clinic_details li.fax{background-image: url(images/icons/fax_b.svg)}
.clinic_details li.location{background-image: url(images/icons/map_mark_b.svg)}
.clinic_details li.work_time{background-image: url(images/icons/clock_b.svg)}
.clinic_details li.work_time > span{
    display: block;
    margin-bottom: 10px
}
.clinic_details li.work_time span.closed{opacity: 0.4;}
.clinic_details .btn{
    color: #25bb82;
    padding: 15px 27px;
    margin: 0 20px 10px 0;
}
.clinic_details .btn.blue{
    background-color: #1A73E8;
    color: #fff;
    font-weight: 500;
}

.google_list{
    grid-area: 1 / 2 / span 2 / 2;
}
.google_list .item{
    padding-left: 60px;
    background-position: 5px top;
    background-size: 45px;
    background-repeat: no-repeat;
    margin-bottom: 35px;
}
.google_list .item .name{
    text-decoration: none;
    color: black;
    font-weight: 700;
}
.google_list .item .name:hover{color: #1A73E8;}
.google_list .item .rating_row{
    display: flex;
    margin: 3px 0 9px -3px;
}
.google_list .item .rating_row span{
    color: gray;
    font-size: 0.9em;
    margin-left: 5px;
    display: inline-block;
}
.rate .progressbar{
    background: repeat left / 17px url(images/icons/google_star_empty.png);
    height: 17px;
    width: 85px;
    position: relative;
}
.rate .progressbar > div{
    background: repeat left / 17px url(images/icons/google_star.png);
    height: 100%;
    display: inline-block;
}
.google_list .item .text.full .short,
.google_list .item .text:not(.full) .full{display: none;}
.google_list .item .text .more{display: inline-block;}
.google_list .item .text .more:after{
    content: 'more';
    color: #1A73E8;
    font-weight: 600;
    cursor: pointer;
    margin-top: 5px;
    display: inline-block;
    font-size: 0.9em;
}
.google_list .item .text.full .more:after{content: 'hide';}

.contacts_page .tiny-slider .tns-nav{position: absolute; width: 100%;}
.contacts_page .stickers .box{padding: 0;}
.contacts_page .stickers li.prev{left: -30px;}
.contacts_page .stickers li.next{right: -30px;}


#clinics_box{display: none;}
.clinics_popup{
    padding: 30px;
    background-color: #fff;
    max-width: 1080px;
    overflow-y: auto;
    max-height: 100vh;
}
.clinics_popup .h{
    font-weight: 700;
    color: #2E4355;
    font-size: 1.5em;
}
.clinics_popup .clinics_grid{
    grid-gap: 20px;
    margin-top: 20px;
}

@media(max-width: 999px){
    .contacts_page .clinic_item > div{grid-template-columns: 1fr; padding: 30px 20px 40px;}
    .contacts_page .tiny-slider .tns-nav{position: relative;}
    .clinic_item .reviews .google_list{grid-area: auto;}
    .clinic_item .clinic_photos{grid-area: 2 / 1; height: 350px;}
}
@media(max-width: 765px){
    .tabs .buttons button, .state_selector li,
    .clinic_details .btn{padding: 8px 14px;}
    .clinic_item .clinic_photos{height: 250px; margin: 0 -20px;}
    .clinic_item .clinic_photos .tns-ovh{border-radius: 0;}
    .clinic_item .reviews .h{max-width: 100%;}
    .contacts_page .stickers{width: calc(100vw - 47px); margin: 0 -21px 0;}
}
@media(max-width: 440px){
    .clinic_item .reviews .grid3{grid-template-columns: 1fr 1fr;}
    .clinic_item .clinic_photos{margin: 0 -36px;}
    .google_list .item{padding: 55px 0 0 0; background-position: 0 0;}
}
/* =========================================
                 INSURANCE
   ========================================= */
.insurance_box{text-align: center;}
.insurance_box img{
    height: 70px;
    margin: 0 20px 15px 0;
}

/* =========================================
            WIDE SHOT WITH IMAGE
   ========================================= */
.wide_shot{
    background-position: center;
    background-size: cover;
    color: #fff;
    display: grid;
    align-items: end;
    height: 200px;
    padding: 25px 30px;
    font-weight: bold;
    font-size: 1.2em;
    border-radius: 8px;
    margin-bottom: 60px;
}

/* =========================================
                  CAREERS
   ========================================= */
.careers h2{
    text-align: left;
    padding-bottom: 20px;
    cursor: pointer;
    margin: 0!important;
    user-select: none;
    font-size: 1.4em;
    text-transform: none;
    font-weight: 600;
    position: relative;
}
.careers h2:hover{color: #25bb82;}
.careers .career_name{
    padding-right: 40px;
}
.careers .career_name:after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 6px 0 6px;
    border-color: #868686 transparent transparent transparent;
    margin: 6px 0 0 13px;
    vertical-align: text-top;
    position: absolute;
    right: 15px;
    top: calc(50% - 7px);
}
.careers .career_name.opened:after{
    border-color: transparent transparent #868686 transparent;
    border-width: 0 6px 7px 6px;
}
.post_content.careers .container > h2:not(:first-child){padding-top: 20px;}
.post_content.careers hr{margin: 0;}
   
   
/* =========================================
                 ADVANTAGES
   ========================================= */
.advantages{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-gap: 40px;
}
.advantages.with_list{grid-template-columns: 1fr 1fr 1fr 1fr;}
.advantages .check_block{
    padding-top: 60px;
    background: no-repeat left top / 50px url(images/icons/check.svg);
}
.advantages .check_block > *{
    margin-bottom: 15px;
}
.advantages .check_block .h{
    font-weight: bold;
    font-size: 1.2em;
}
.advantages .list strong{
    display: block;
    font-size: 1.7em;
    margin-bottom: 30px;
    max-width: 150px;
}
.advantages .list li{margin: 10px 0;}
.advantages .list a{padding-right: 35px;}
.advantages .list a:hover{background: no-repeat right / 22px url(images/icons/arrow_to_right_g.svg);}
@media screen and (max-width: 999px){
    .advantages{grid-template-columns: 1fr 1fr 1fr;}
    .advantages.with_list{grid-template-columns: 1fr 1fr 1fr 1fr;}
    .advantages .list{grid-row-end: span 2;}
}
@media screen and (max-width: 599px){
    .advantages{grid-template-columns: 1fr;}
    .advantages.with_list{
        grid-template-columns: 1fr 1fr;
        justify-items: center;
        text-align: center;
    }
    .advantages.with_list .check_block{
        background-position: top;
        padding-top: 38px;
    }
    .advantages .check_block{padding-top: 6px; background-size: 30px;}
    .advantages h3{padding-left: 40px;}
}


/* =========================================
            PHOTO WITH BUTTON LINK
   ========================================= */
.photo_links{grid-gap: 25px;}
.photo_links a{
    position: relative;
    display: block;
    height: 280px;
    overflow: hidden;
}
.photo_links a:hover img{transform: scale(1.1)}
.photo_links span{
    color: #fff;
    background: no-repeat right 17px top 50% / 21px url(images/icons/arrow_to_right_w.svg), #47b4e3;
    text-transform: uppercase;
    font-weight: 600;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 15px 40px 15px 25px;
    border-radius: 0 12px 0 0;
    min-width: 220px
}

/* =========================================
                    CHART
   ========================================= */
.chart{
    display: grid;
    grid-template-columns: auto 1fr 1.3fr;
    min-height: 210px;
}
.chart .oy{
    display: flex;
    height: 100%;
    flex-flow: column;
    justify-content: space-between;
    text-align: center;
    padding-right: 5px;
}
.chart .stats{
    padding: 9px 0; 
    height: 100%;
    min-height: 170px;
}
.chart .grid{
    grid-auto-flow: column;
    align-items: end;
    grid-gap: 5px;
    border: 1px solid #eee;
    height: 100%;
}
.chart .grid > div{position: relative;}
.chart .grid > div span{
    position: absolute;
    padding: 2px 5px;
    font-size: 0.8em;
    top: -23px;
    left: 50%;
    transform: translateX(-50%);
    background: #25bb82;
    color: #fff;
    min-width: 20px;
    text-align: center;
}
.chart .grid > div:not(:hover) span{display: none;}
.chart .grid > div:hover, .chart .grid > div.hover{border-top: 5px solid #25bb82;}
.chart .grid > div.hover span{display: block;}
.chart .legend{
    margin: 10px 30px;
    display: grid;
    justify-items: start;
}
.chart .legend li{cursor: default;}
.chart .legend li:hover{color: #25bb82;}
.chart .legend li:before{
    content: '';
    display: inline-block;
    height: 20px;
    width: 20px;
    margin-right: 10px;
    margin-bottom: 2px;
    vertical-align: middle;
}
@media(max-width: 765px){
    .chart{grid-template-columns: auto 1fr;}
    .chart .legend{grid-column-end: span 2; margin: 10px 0;}
}


/* =========================================
           DIVERSITY & INCLUSION
   ========================================= */
.diversity_tabs .header{
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}
.diversity_tabs .header span{
    font-weight: 700;
    border-bottom: 2px solid #47B4E3;
    padding: 5px 10px;
    cursor: pointer;
    user-select: none;
    border-radius: 6px 6px 0 0;
}
.diversity_tabs .header span:hover{color: #47B4E3;}
.diversity_tabs .header span:after{
    content: '';
    border-style: solid;
    border-width: 4px 4px 0 4px;
    border-color: #47B4E3 transparent transparent transparent;
    display: inline-block;
    margin-left: 6px;
    vertical-align: middle;
}
.diversity_tabs .header span.opened{
    background-color: #47B4E3;
    color: #fff;
    border-radius: 6px 6px 0 0;
}
.diversity_tabs .header span.opened:after{
    border-color: #fff transparent transparent transparent; 
    transform: rotate(180deg);
}
@media(max-width: 999px){
    .diversity_tabs{display: grid; grid-template-columns: auto 1fr;}
    .diversity_tabs .header{
        display: grid; 
        margin-right: 20px; 
        align-self: start;     
        justify-content: initial;
    }
    .diversity_tabs .header span{border-radius: 0!important; border-color: #eee;}
}
@media(max-width: 765px){
    .diversity_tabs{grid-template-columns: 1fr;}
}

/* =========================================
           PHOTO & VIDEO GALLERY
   ========================================= */
.zoom_overlay{
    width: 100%;
    height: 100%;
    float: right;
    background-position: center;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    user-select: none;
}
.zoom_overlay button{
    border: 0;
    color: #fff;
    height: 60px;
    width: 60px;
    font-size: 0;
    transition: 0.05s;
    padding: 0;
    border-radius: 50%;
}
.zoom_overlay.video button{
    background: no-repeat center / 15px url(images/icons/play.svg), #25bb82;
    background-position: 55% 50%;
}
.zoom_overlay.img button{
    background: no-repeat center / 19px url(images/icons/zoom_in_w.svg), #25bb82;
}
   
.video_playlist{
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: 200px;
    grid-gap: 30px 50px;
    grid-auto-flow: dense;
}
.video_playlist .item{
    grid-column-end: span 2;
    grid-template-rows: 1fr auto;
    display: grid;
    grid-gap: 20px;
}
.video_playlist .item.m{grid-area: span 2 / span 3;}
.video_playlist .item.l{grid-area: span 2 / span 4;}
.video_playlist .item.el{grid-area: span 3 / span 6;}
.video_playlist .item label{
    text-align: center;
    grid-row-start: 2;
    font-weight: 700;
    color: #2E4355;
}
@media screen and (max-width: 999px){
    .video_playlist{grid-template-columns: repeat(4, 1fr); grid-auto-rows: 180px;}
    .video_playlist .item.m{grid-area: span 1 / span 2;}
    .video_playlist .item.el{grid-area: span 2 / span 4;}
}
@media screen and (max-width: 570px){
    .video_playlist{grid-template-columns: 1fr; grid-auto-rows: 60vw;}
    .video_playlist .item{grid-area: span 1 / span 1!important;}
}

/* =========================================
              REVIEWS BOARD
   ========================================= */
#reviews_board{
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
}
#reviews_board .header{
    position: absolute;
    height: 100%;
    display: flex;
    align-items: center;
    z-index: 2;
    color: #fff;
    max-width: 300px;
    text-shadow: 1px 2px 3px #00000090;
}
#reviews_board .header h2{
    color: #fff;
    text-align: left;
    margin: 0;
    font-size: 2em;
}
#reviews_board .box{padding: 0;}
#reviews_board .shading:before{
    background: linear-gradient(to right, #000000bb, transparent 50%);
    z-index: 1;
}
#reviews_board .box .review{
    position: relative;
    overflow: hidden;
    height: 400px;
}
#reviews_board .box .review img{
    position: absolute;
    bottom: 0;
    width: 1920px;
    max-width: none;
    left: 50%;
    transform: translateX(-50%);
}
#reviews_board .tns-nav{
    position: absolute;
    top: 35px;
    z-index: 2;
    max-width: 450px;
    text-align: left;
}
@media(max-width: 765px){
    #reviews_board .shading:before{content: none;}
    #reviews_board .header{
        height: auto;
        left: 50%;
        transform: translateX(-50%);
    }
    #reviews_board .header h2{margin: 50px 0 20px;}
    #reviews_board .box .review{height: 400px}
    #reviews_board .box .review img{width: 1250px; transform: translateX(-56%);}
    #reviews_board .tns-nav{
        top: auto;
        bottom: 20px;
        left: 0;
        width: 100%;
    }
}

/* =========================================
              CALLBACK FORM
   ========================================= */
   
.wpcf7 .ajax-loader{display: none;}
.callback_popup{
    width: 100%;
    max-width: 360px;
    background: #fff;
    border-radius: 10px;
    padding: 20px;
}
.wpcf7 form .wpcf7-response-output{margin: 0;}
.wpcf7 form.sent .wpcf7-response-output{
    border-color: #25bb82;
    background: #25bb82;
    color: #fff;
    border-radius: 5px;
}
.callback_popup .h2{margin: 0 0 10px;}
.callback_popup .row{margin-bottom: 25px;}
.callback_popup .btn_blue{
    display: block;
    color: #fff; 
    margin: 15px 0;
    padding: 15px 30px;
    text-transform: uppercase;
    font-weight: 600;
}
.form_box {display: flow-root;}
.form_box input[type=submit]{width: 100%;}
.form_box input[type=text],
.form_box input[type=tel],
.form_box select,
.form_box textarea{
    width: 100%;
    padding: 7px 12px;
    border-radius: 5px;
    border: 1px solid #aaa;
    max-height: 90px;
}
.post_content .form_box{
    display: flow-root;
    max-width: 430px;
    margin: 0 auto 70px;
    border-radius: 10px;
    box-shadow: 1px 5px 13px #33333329;
    padding: 20px;
}
.post_content .form_box .h{
    font-size: 1.7em;
    text-transform: uppercase;
    text-align: center;
    color: #47b4e3;
    display: block;
    margin: 20px 0 28px;
}

/* =========================================
              OUR TEAM & PERSONS
   ========================================= */
.our_mission{
    background-color: #eef1f4;
}

.staff_grid{grid-gap: 25px;}
.staff_grid .person{
    display: grid; 
    cursor: pointer;
    align-content: start;
}
.staff_grid .person h3{
    color: #47b4e3;
    margin: 25px 0 15px;
}
.staff_grid .person:hover h3{color: #25bb82;}
.staff_grid .person strong{margin: 0 0 11px; font-size: 0.8em;}
.staff_grid .person .photo{
    grid-row-start: 1;
    position: relative;
    height: 300px;
}
.staff_grid .person .photo img{position: absolute; object-position: top;}
   
.providers{grid-gap: 40px;}
.providers > div > *{position: relative;}
.providers > div{
    position: relative;
    background-color: #fff;
    border-radius: 8px;
    padding: 25px;
    min-height: 330px;
    cursor: pointer;
}
.providers > div:hover h3{color: #25bb82;}
.providers strong{
    font-size: 0.8em;
    display: block;
    margin: 12px 0;
}
.providers .quote{
    line-height: 1.6em;
    font-size: 0.8em;
    font-weight: 700;
    background-color: #eef1f4;
    padding: 10px;
    text-align: justify;
    border-radius: 4px;
    position: relative;
    display: inline-block;
    width: 100%;
    min-height: 60px;
}
.providers .quote:before{
    content: '';
    position: absolute;
    width: 40px;
    height: 40px;
    top: 10px;
    left: -50px;
    background: no-repeat center / 16px url('images/icons/quote.svg'), linear-gradient(#89E8C4, #25BB82);
    border-radius: 50%;
}
.providers img{
    float: right;
    width: 180px;
    margin: 0 0 10px 10px;
}

#popup .person{
    background: #fff;
    max-width: 600px;
    border-radius: 10px;
    overflow-x: hidden;
    max-height: 100vh;
}
#popup .person p{text-align: justify;}
#popup .person > div{padding: 20px 20px;}
#popup .person > div > strong{display: block; margin: 10px 0;}
#popup .person > div > .h{font-size: 1.5em; font-weight: 600;}
#popup .person > img {width: 250px; float: left; margin: 0 19px 7px 0;}
@media screen and (max-width: 999px){
    .staff_grid{grid-template-columns: 1fr 1fr;}
    .staff_grid .person .photo{height: 265px;}
    .providers > div{margin-left: 20px;}
}
@media screen and (max-width: 450px){
    .staff_grid{grid-template-columns: 1fr;}
    .staff_grid .person .photo{padding-bottom: 100%; height: auto;}
    .providers > div{
        display: grid;
        margin: 0;
        padding: 25px 15px;
        overflow: hidden;
    }
    .providers p{font-size: 0.9em;}
    .providers img{
        grid-row-start: 3;
        position: relative;
        max-width: 100vw;
        margin: 0 0 10px;
        justify-self: center;
    }
    .providers .quote{
        padding: 15px 15px 15px 50px;
        border-radius: 0;
        background-color: #d2e9f7;
    }
    .providers .quote:before{
        background-size: 14px;
        width: 30px;
        height: 30px;
        left: 10px;
        top: 14px;
    }
    .person p{text-align: justify;}
    #popup .person > img{
        float: none;
        margin: 0 auto;
        display: block;
    }
}

#fixed_contacts{
    position: fixed;
    z-index: 5;
    right: 10px;
    bottom: 10px;
    display: grid;
    grid-gap: 17px;
}
#fixed_contacts > *{
    display: block;
    border-radius: 50%;
    width: 55px;
    height: 55px;
    background-position: center;
    background-size: 28px 28px;
    background-repeat: no-repeat;
    background-color: #47b4e3;
    cursor: pointer;   
}
#fixed_contacts .phone{
    background-image: url(images/icons/phone_w.svg); 
}
#fixed_contacts .mail{
    background-image: url(images/icons/mail_w.svg); 
}
#fixed_contacts .facebook{
    background-image: url(images/icons/facebook_w.svg); 
}
@media screen and (max-width: 450px){
    #fixed_contacts > *{
        width: 30px;
        height: 30px;
        background-size: 15px 15px;
    }
}

/** ================================
              WP BLOCKS
    ================================ */
.screen-reader-text, .visually-hidden {
    height: 1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
}

/** ================================
        WP BLOCK SOCIAL LINKS
    ================================ */
.wp-block-social-links li.wp-social-link:before{content: none;}
.wp-block-social-links {
    box-sizing: border-box;
    padding-left: 0;
    padding-right: 0;
    text-indent: 0;
    margin-left: 0;
    background: none;
}
.wp-block-social-links .wp-social-link a,
.wp-block-social-links .wp-social-link a:hover {
    text-decoration: none;
    border-bottom: 0;
    box-shadow: none;
}
.wp-block-social-links .wp-social-link a {
    padding: 0.25em;
}
.wp-block-social-links .wp-social-link svg {
    width: 1em;
    height: 1em;
}
.wp-block-social-links .wp-social-link span:not(.screen-reader-text) {
    margin-left: 0.5em;
    margin-right: 0.5em;
    font-size: 0.65em;
}
.wp-block-social-links.has-small-icon-size {
    font-size: 16px;
}
.wp-block-social-links, .wp-block-social-links.has-normal-icon-size {
    font-size: 24px;
}
.wp-block-social-links.has-large-icon-size {
    font-size: 36px;
}
.wp-block-social-links.has-huge-icon-size {
    font-size: 48px;
}
.wp-block-social-links.aligncenter {
    justify-content: center;
    display: flex;
}
.wp-block-social-links.alignright {
    justify-content: flex-end;
}

.wp-block-social-link {
    display: block;
    border-radius: 9999px;
    transition: transform 0.1s ease;
    height: auto;
}
@media (prefers-reduced-motion: reduce) {
    .wp-block-social-link {
        transition-duration: 0s;
        transition-delay: 0s;
    }
}
.wp-block-social-link a {
    align-items: center;
    display: flex;
    line-height: 0;
    transition: transform 0.1s ease;
}
.wp-block-social-link:hover {
    transform: scale(1.1);
}

.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:hover, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:active, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:visited,
.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor svg {
    color: currentColor;
    fill: currentColor;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link {
    background-color: #f0f0f0;
    color: #444;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-amazon {
    background-color: #f90;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-bandcamp {
    background-color: #1ea0c3;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-behance {
    background-color: #0757fe;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-codepen {
    background-color: #1e1f26;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-deviantart {
    background-color: #02e49b;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dribbble {
    background-color: #e94c89;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dropbox {
    background-color: #4280ff;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-etsy {
    background-color: #f45800;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-facebook {
    background-color: #1778f2;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-fivehundredpx {
    background-color: #000;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-flickr {
    background-color: #0461dd;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-foursquare {
    background-color: #e65678;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-github {
    background-color: #24292d;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-goodreads {
    background-color: #eceadd;
    color: #382110;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-google {
    background-color: #ea4434;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-instagram {
    background-color: #f00075;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-lastfm {
    background-color: #e21b24;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-linkedin {
    background-color: #0d66c2;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-mastodon {
    background-color: #3288d4;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-medium {
    background-color: #02ab6c;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-meetup {
    background-color: #f6405f;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-patreon {
    background-color: #ff424d;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pinterest {
    background-color: #e60122;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pocket {
    background-color: #ef4155;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-reddit {
    background-color: #ff4500;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-skype {
    background-color: #0478d7;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-snapchat {
    background-color: #fefc00;
    color: #fff;
    stroke: #000;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-soundcloud {
    background-color: #ff5600;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-spotify {
    background-color: #1bd760;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-telegram {
    background-color: #2aabee;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tiktok {
    background-color: #000;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tumblr {
    background-color: #011835;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitch {
    background-color: #6440a4;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitter {
    background-color: #1da1f2;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vimeo {
    background-color: #1eb7ea;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vk {
    background-color: #4680c2;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-wordpress {
    background-color: #3499cd;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-whatsapp {
    background-color: #25d366;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-yelp {
    background-color: #d32422;
    color: #fff;
}
.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-youtube {
    background-color: #f00;
    color: #fff;
}