/*
 Theme Name:   FMC
 Theme URI:    https://eqlab.pp.ua
 Description:  FMC (Functional Medicine Clinic) Kadence Child Theme
 Author:       LCGreyAngel
 Author URI:   https://eqlab.pp.ua
 Template:     kadence
 Version:      1.0.0
 Tags:         customizable, modern, responsive-layout, gutenberg, header builder, footer builder
 Text Domain:  fmc
*/

/* Theme customization starts here
-------------------------------------------------------------- */






.header-widget-area {
    flex: 1;
    min-width: 0;
    display: flex
}

.header-widget-area>* {
    flex: 1;
    min-width: 0
}

.header-widget-area.content-valign-middle {
    align-items: center
}

.header-widget-area.content-valign-top {
    align-items: flex-start
}

.header-widget-area.content-valign-bottom {
    align-items: flex-end
}

.header-widget-area.content-align-center {
    text-align: center
}

.header-widget-area.content-align-right {
    text-align: right
}

.header-widget-area.content-align-left {
    text-align: left
}


@media screen and (max-width: 1024px) {

    .header-widget-area.content-tablet-align-center {
        text-align: center
    }


    .header-widget-area.content-tablet-align-right {
        text-align: right
    }

    .header-widget-area.content-tablet-align-left {
        text-align: left
    }

}

@media screen and (max-width: 719px) {

    .header-widget-area.content-mobile-align-center {
        text-align: center
    }

    .header-widget-area.content-mobile-align-right {
        text-align: right
    }

    .header-widget-area.content-mobile-align-left {
        text-align: left
    }

}

.site-main-header-inner-wrap.site-header-row {
	/* grid-template-columns: 154px auto; */
}

.site-header-wrap .site-header-main-section-left {
	width: 154px;
}
.site-header-wrap .site-header-main-section-right {
	align-items: center;
	/* justify-content: space-around; */
	width: 100%;
}
.site-header-wrap .site-header-bottom-section-left {
	width: 154px;
	position: relative;
}

.site-mobile-header-wrap .site-header-bottom-section-left {
	width: 58px;
	position: relative;
	margin-right: auto;
}
.site-mobile-header-wrap .site-header-bottom-section-right {
	width: 58px;
	position: relative;
	margin-left: auto;
}
.header-mobile-bottom-left {

}
.header-mobile-bottom-left select {
	font-size: inherit;
	border: none;
	padding-right: 25px;
}
.site-header-item-navgation-popup-toggle {
	position: absolute;
	/* bottom: 0; */
	right: 0;
	bottom: auto;
	top: 0;
	translate: 0 -100%;

}
.site-branding {
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: var(--global-palette9);
	border: 2px solid var(--global-palette1);
	border-radius: 50%;
}
.site-mobile-header-wrap .site-branding {
	bottom: auto;
	top: 0;
	translate: 0 -50%;
}

.wp-block-paragraph.has-text-align-center {
	text-align: center;
}

.main-navigation .primary-menu-container > ul > li.menu-item {
	font-size: 18px;
}
.main-navigation .primary-menu-container > ul > li.menu-item > a {
	padding-left: 7px;
	padding-right: 7px;
}

.header-info-row {
	gap: 40px;
}
.header-info-row-left {
	gap: 40px;
}

.site-header .site-header-inner-wrap.kadence-sticky-header.item-is-fixed.item-is-stuck {
	/* box-shadow: 0px 0px 15px 35px rgba(0, 68, 15, 0.25); */
}
.site-header .kadence-sticky-header {
	/* transition: all 0.3s ease; */
}
.site-header .kadence-sticky-header.item-is-fixed.item-is-stuck {
	box-shadow: 0px 0px 15px 1px rgba(0, 68, 15, 0.15);
}
.kadence-sticky-header.item-is-fixed.item-is-stuck .site-top-header-wrap .site-header-row-container-inner>.site-container {
	padding: 0.25rem 0;
}
.kadence-sticky-header.item-is-fixed.item-is-stuck .site-main-header-inner-wrap {
    /* height: 60px; */
    height: 54px;
    /* min-height: 60px; */
    min-height: 54px;
}
.site-branding,
.site-branding a.brand img {
	transition: all 0.3s ease;
}
.site-header-wrap .kadence-sticky-header.item-is-fixed.item-is-stuck .site-branding {
	bottom: 12px;
	/* transform: translateY(-50%); */
}
.site-header-wrap .kadence-sticky-header.item-is-fixed.item-is-stuck .site-branding a.brand img {
    max-width: 100px;
}
.kadence-sticky-header.item-is-fixed.item-is-stuck .header-info-row {
	line-height: 1.2 !important;
}

.site-header .site-mobile-header-wrap {
	/* border-bottom: 1px solid #f0eeee; */
	/* box-shadow: 0px 0px 0px 1px rgba(0, 68, 15, 0.15); */
	box-shadow: 0px 0px 0px 1px #f0eeee;

}

#mobile-drawer .drawer-header {
	align-items: flex-end;
}
#mobile-drawer .drawer-header .drawer-toggle {
	border-radius: 50%;
}
#mobile-drawer.popup-drawer .drawer-inner {
	color: var(--global-palette3);
}

#mobile-drawer.popup-drawer .drawer-inner .site-header-item-mobile-navigation {
	border-bottom: 1px solid var(--global-palette9);
	padding-bottom: 20px;
}

.header-navigation .header-menu-container ul ul.sub-menu, 
.header-navigation .header-menu-container ul ul.submenu {
	border-top: 2px solid var(--global-palette1);
}

.socialicon {
	display: flex;
	gap: 1rem;
}
.socialicon a {
	transition: all 0.3s ease;
}
.socialicon a:hover {
	opacity: 0.8;
}
.site-mobile-header-wrap .socialicon {
	gap: 0.25rem;
}


.site-header .header-cart-button {
	align-items: flex-start;
}
.site-header .header-cart-button .header-cart-total {
	position: relative;
    font-size: 14px;
    height: 18px;
    line-height: 1;
    background: var(--global-palette1);
    border-radius: 1px;
    display: flex;
	width: auto;
    min-width: 22px;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--global-palette9);
    margin-left: 6px;
    transition: all .2s ease;
}
.site-header .site-mobile-header-wrap .header-cart-button .header-cart-total {
	font-size: 8px;
	height: 14px;
	min-width: 18px;
    margin-left: 3px;
	translate: 0 -5px;
}

.site-header .header-cart-button .header-cart-total::before {
	content: '';
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	top: 50%;
	left: -10px;
	translate: 0 -50%;
	border: 5px solid transparent;
	border-right: 5px solid var(--global-palette1);
}
.site-header .site-mobile-header-wrap .header-cart-button .header-cart-total::before {
	left: -6px;
	border: 3px solid transparent;
	border-right: 3px solid var(--global-palette1);
}
.site-header .header-cart-button:hover .header-cart-total::before {
	border-right-color: var(--global-palette2);
}

.header-mobile-info-row {
	gap: 6px;
}
.header-mobile-info-row .header-mobile-info-callback,
.header-mobile-info-row .header-mobile-info-phone {
	margin-left: 58px;
	margin-right: 58px;
}

.header-mobile-bottom-left {

}


.fmc-dropdown {
	position: relative;
}
.fmc-dropdown-handler {
	cursor: pointer;
	transition: all 0.3s ease;
}
.fmc-dropdown-handler:hover {
	opacity: 0.8;
}

/* https://medium.com/@carmeladi/solving-dynamic-height-animations-with-native-css-tools-c96723db4382 */
.fmc-dropdown-body {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 1;
		
	transition: height 0.3s ease;
	/* transition-behavior: allow-discrete; */
	height: 0; 
	overflow: hidden;
	@starting-style {
		height: 0;
	}
}
.fmc-dropdown-body-content {
	padding: 1rem;
}
.fmc-dropdown.open .fmc-dropdown-body {
    height: calc-size(auto, size);
}

.site-header .fmc-dropdown {
	max-width: 350px;
}
.site-header .fmc-dropdown-body {
	max-width: 350px;
	background-color: var(--global-palette8);
}
.site-header .fmc-dropdown-body-content {
	padding: 0px 30px 22px;
}


.site-footer .widget-area .widget-title {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.2;
	margin-bottom: 30px;
	text-transform: none;
	position: relative;
	padding-left: 10px;
	border-left: 2px solid var(--global-palette1);
	color: var(--global-palette1);
}
.site-footer .widget-area ul li {
	position: relative;
	font-size: 20px;
	padding-left: 20px;
}
.site-footer .widget-area ul li::before {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	translate: 0 1rem;
	width: 10px;
	height: 10px;
	border: 1px solid currentColor;
	border-radius: 50%;
	/* margin-top: -2px; */
}
@media (max-width: 1024px) {
	.site-middle-footer-inner-wrap {
		/* padding-top: 30px; */
		/* padding-bottom: 30px; */
		/* grid-column-gap: 30px; */
		grid-row-gap: 25px;
	}


	.site-footer .widget-area .widget-title {
		font-size: 18px;
		margin-bottom: 20px;
	}
	.site-footer .widget-area ul li {
		/* position: relative; */
		/* padding-left: 20px; */
		font-size: 16px;
	}

	.site-footer .widget-area ul li::before {
		translate: 0 0.75rem;
	}
}



.header-navigation ul.menu > li[class*="mega-menu-"] {
	/* position: relative; */
	position: static;
}
.header-navigation ul ul.sub-menu.mega-menu {
	width: 100%;
	left: 0;
	top: calc( 100% - 0.75rem ); 
	/* - 0.75rem for parent li with position static */
}
.header-navigation ul ul.sub-menu.mega-menu > * {
	/* background-color: #ff0; */
	/* padding-top: 1rem; */
	/* padding-bottom: 1rem; */
}
@media (max-width: 1024px) {
	.header-navigation ul ul.sub-menu.mega-menu > * {
		padding-left: 0;
		padding-right: 0;
	}
}




.content-area .entry {
	box-shadow: none;
	border-radius: 0;
}


.background-atom {
	position: relative;
}
.background-atom::after{
	content: "";
	height: 118px;
	width: 118px;
	top: -20px;
	left: -40px;
	background: url(assets/icons/atom-icon-animated-2.svg);
	background-repeat: no-repeat;
	display: block;
	position: absolute;
	background-size: contain;
	z-index: -1;
	transition: all 0.3s ease;
}
@media screen and (max-width: 1024px){
	.background-atom::after{
		height: 60px;
		width: 60px;
		top: 0;
		left:-20px;
	}
}
.background-atom:hover::after{
	/* top: -30px; */
	left: -60px;
	/* height: 128px;
	width: 128px; */
	animation: rotate 5s linear infinite;
}
@keyframes rotate {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* testimonials */
.content-area .ti-widget.ti-goog .ti-widget-container, 
.content-area .ti-widget.ti-goog .ti-widget-container * {
	font-family: inherit;
	font-size: 18px;
	line-height: inherit;
}
.content-area .ti-reviews-container-wrapper {
	justify-content: space-between;
	gap: 30px;
}
@media (min-width: 1024px) {
	.content-area .ti-widget.ti-goog .ti-reviews-container-wrapper {
		margin: 0 !important;
	}
}
.content-area .ti-reviews-container-wrapper .ti-review-item.source-Google.ti-image-layout-thumbnail {
	flex: 1;
	max-width: none;
	padding: 0;
}
.content-area .ti-widget.ti-goog .ti-review-item>.ti-inner, 
.content-area .ti-widget.ti-goog .ti-load-more-reviews-container .ti-load-more-reviews-button {
	background-color: var(--global-palette9);
}
.content-area .ti-widget.ti-goog .ti-review-item>.ti-inner {
	border-style: solid !important;
	border-color: var(--global-palette9) !important;
	background: var(--global-palette9) !important;
	border-radius: 0 !important;
	padding: 20px !important;
	margin: 0 !important;
	display: block;
	position: relative;
}
.content-area .ti-widget.ti-goog .ti-profile-img img {
	/* width: 100px !important;
	height: 100px !important;
	display: block;
	border-radius: 120px; */
}
.content-area .ti-widget.ti-goog .ti-widget-container .ti-name {
	font-size: 18px;
	font-weight: normal;
	color: var(--global-palette3);
	}
.content-area .ti-widget.ti-goog .ti-widget-container .ti-date {
	font-size: 16px !important;
	color: var(--global-palette3);

}
.content-area .ti-widget.ti-goog .ti-reviews-container-wrapper .ti-inner>.ti-stars, 
.content-area .ti-widget.ti-goog .ti-reviews-container-wrapper .ti-popup-inner>.ti-stars {
    margin-bottom: 20px;
    margin-top: 5px;
    text-align: left;
    margin-left: 55px;
}
.content-area .ti-widget.ti-goog .ti-star {
	width: 20px !important;
	height: 20px !important;
}
.content-area .ti-widget.ti-goog .ti-review-item .ti-stars {
	height: 20px;
}
.content-area .ti-review-text-mode-scroll.ti-widget.ti-goog .ti-review-content {
	height: 170px !important;
    margin-right: -10px;
}



/* clients slider */
.wp-block-kadence-advancedgallery .kb-splide {
	--splide-nav-border: 'none';
	--splide-nav-color: var(--global-palette3);
}
.aspect-ratio-1-5.wp-block-kadence-advancedgallery .kb-gallery-ul.kb-gallery-type-carousel .kadence-blocks-gallery-item .kadence-blocks-gallery-item-inner .kb-gallery-image-contain.kadence-blocks-gallery-intrinsic.kb-gallery-image-ratio-inherit {
	padding-bottom: 20%;
}






.fmc-posts-grid {}
.fmc-posts-grid .wp-block-post > * {
	height: 100%;
	gap: 0;
	justify-content: space-between;
}
.fmc-read-more {
	transition: all 0.3s ease;
}
.fmc-posts-grid .wp-block-post:hover .fmc-read-more {
	color: var(--global-palette2);
}

.position-relative {
	position: relative;
}
.stretched-link a {
	
}
.stretched-link a::before {
	position: absolute;
	content: "";
	inset: 0;
}






/* FAQ */
.content-area .kt-blocks-accordion-icon-trigger {
	width: 60px;
	min-width: 60px;
	height: 60px;
}
.content-area .kt-accodion-icon-style-xclose .kt-blocks-accordion-icon-trigger, 
.content-area .kt-accodion-icon-style-xclosecircle .kt-blocks-accordion-icon-trigger {
	border-radius: 50%;
	border: 0px solid transparent;
}
.content-area .kt-accodion-icon-style-xclose .kt-blocks-accordion-icon-trigger::after, 
.content-area .kt-accodion-icon-style-xclose .kt-blocks-accordion-icon-trigger::before, 
.content-area .kt-accodion-icon-style-xclosecircle .kt-blocks-accordion-icon-trigger::after, 
.content-area .kt-accodion-icon-style-xclosecircle .kt-blocks-accordion-icon-trigger::before {
	height: 2px;
	width: 30px;
	top: 28px;
	left: 15px;
}
.kt-accodion-icon-style-xclose .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger, 
.kt-accodion-icon-style-xclosecircle .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger {
	background-color: var(--global-palette1);
	border-color: var(--global-palette1);
}
.kt-accodion-icon-style-xclose .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger::after, 
.kt-accodion-icon-style-xclose .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger::before, 
.kt-accodion-icon-style-xclosecircle .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger::after,
.kt-accodion-icon-style-xclosecircle .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-icon-trigger::before {
	background-color: var(--global-palette9) !important;
}
/* .content-area .wp-block-kadence-accordion {
	border-bottom: 1px solid var(--global-palette7);
} */
.wp-block-kadence-pane.kt-accordion-pane:last-child {
	border-bottom: 1px solid var(--global-palette7);
}



/* Резервуємо простір для каруселі Kadence до запуску JS */
/* Поки слайдер не ініціалізований (немає класу is-initialized) */
/* ефект завантаження */
.aspect-ratio-1-5.wp-block-kadence-advancedgallery .kb-gallery-type-carousel .kt-blocks-carousel:not(.is-initialized) {
	max-height: 60px;
    background: #f0f0f0; 
    position: relative;
}
.aspect-ratio-1-5.wp-block-kadence-advancedgallery .kb-gallery-type-carousel .kt-blocks-carousel .kt-blocks-carousel-init {
	list-style: none;
}

/* ховаємо величезні картинки, поки JS не вирівняє їх */
.aspect-ratio-1-5.wp-block-kadence-advancedgallery .kb-gallery-type-carousel .kt-blocks-carousel:not(.is-initialized) img {
    opacity: 0; 
}





/* FORMS */


/* Variables */

:root{
    --form-height: 60px;
    --form-radius: 4px;
    --form-border: #444;
    --form-focus: #111;
    --form-error: #F04438;
    --form-placeholder: #999;
    --form-disabled: #f5f5f5;
    --transition: .25s;
}

/* Row */

/* .form-row{
    margin-bottom: 24px;
} */

.form-row{
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 2rem;
}
.form-col{
	flex: 1;
    margin-bottom: 24px;
	display: flex;
	justify-content: center;

}

/* Labels */

.form-row>label{
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
}
.required{
    color: var(--form-error);
}

/* Inputs */

.wpcf7-form :is(
input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=password],
input[type=number],
select,
textarea){
    width: 100%;
    font: inherit;
    border: 1px solid var(--form-border);
    border-radius: var(--form-radius);
    transition: var(--transition);
    box-sizing: border-box;
    background: #fff;
}
.wpcf7-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.wpcf7-form select{
    height: var(--form-height);
    padding: 0 18px;
}
.wpcf7-form-control-wrap,
.wpcf7-form-control-wrap {
	width: 100%;
}
.wpcf7-form-control-wrap input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.wpcf7-form select{
	width: 100%;
}
.wpcf7-form textarea{
    min-height: 160px;
    padding: 16px 18px;
    resize: vertical;
}
.wpcf7-form ::placeholder{
    color: var(--form-placeholder);
}

/* Focus */

.wpcf7-form :is(
input,
select,
textarea):focus{
    outline: none;
    border-color: var(--form-focus);
}

/* Disabled */
.wpcf7-form :disabled{
    background: var(--form-disabled);
    opacity: .7;
}

/* Select */

.wpcf7-form select{
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpath d='M3 5l4 4 4-4'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 18px center;
    padding-right: 48px;
}

/* Icon */

.input-icon{
    position: relative;
    display: block;
	width: 100%;
}
.input-icon svg{
    position: absolute;
    left: 18px;
    top: 50%;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
    color: var(--global-palette3);
    pointer-events: none;
	z-index: 1;
}
.input-icon input{
    padding-left: 52px !important;
}

/* Checkbox */
.wpcf7-list-item{
    display: block;
    margin: 0 0 10px;
}
.wpcf7-list-item label{
    display: flex;
    gap: 10px;
    align-items: flex-start;
    cursor: pointer;
}

/* Radio */
.wpcf7-list-item input{
    margin-top: 3px;
}

/* Submit */
.wpcf7-submit{
    height: 60px;
    padding: 0 40px;
    border: 0;
    cursor: pointer;
}

/* Errors */
.wpcf7-not-valid{
    border-color: var(--form-error)!important;
}
.wpcf7-not-valid-tip{
	position: absolute;
    /* margin-top: 6px; */
    margin-top: 3px;
    color: var(--form-error);
    font-size: .875rem;
}
.wpcf7-response-output{
    margin: 30px 0 0;
}

/* Spinner */
.wpcf7-spinner{
	position: absolute;
	right: 0;
	top: 18px;
	/* translate: -50% 0; */
    vertical-align: middle;
    /* margin-left: 10px; */
    margin: 0 10px;
}
.wpcf7-form-submit-wrapper {
	position: relative;
}
.wpcf7-form-submit-wrapper [type="submit"]{
	width: 100%;
}
.w-380 {
	width: 380px;
	width: min(380px, 100%);
}

















/* 

wp-block-group site-container

wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained

wp-block-columns is-layout-flex wp-container-core-columns-is-layout-ad0e40c2 wp-block-columns-is-layout-flex
margin-top:1rem;margin-bottom:1rem;font-size:16px;line-height:1.6 




wp-block-group site-container

wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained

wp-block-columns are-vertically-aligned-top is-layout-flex wp-container-core-columns-is-layout-ad0e40c2 wp-block-columns-is-layout-flex
margin-top:1rem;margin-bottom:1rem;font-size:16px;line-height:1.6

*/



.service-item {
	height: 100%;
}
.service-item-icon {
	width: 130px;
	height:130px;
	position: absolute;
	left: 50%;
	top: 0px;
	translate: -50% 0;
}
.service-item-icon > * {
	height: 100%;
	justify-content: center;
	align-items: center;
}



