/**
* Theme Name: Healthy Smiles Child
* Description: This is a child theme of Healthy Smiles.
* Author: cmsmasters
* Author URI: https://cmsmasters.net/
* Template: healthy-smiles
* Version: 1.1.0
*/


/* ----------------------
 * LAYOUT
 * ----------------------*/
p:last-child {
  margin-bottom: 0;
}

/* ----------------------
 * ARCHIVE
 * ----------------------*/

	/* post image */
	:root {
		--cmsmasters-archive-compact-vertical-alignment: stretch;
	}
	.cmsmasters-archive-post-media .cmsmasters-video-wrap, .cmsmasters-archive-post-media__inner, .cmsmasters-archive-post-media__inner img {
		object-fit: cover;
		object-position: center;
		height: 100%;
	}
	.cmsmasters-archive-post-media .cmsmasters-image-wrap {
		height: inherit;
	}

	/* ----- meta ----- */
	.cmsmasters-meta-data__inner, .cmsmasters-meta-data__item {
		align-items: flex-start;
		flex-direction: column;
	}
	.cmsmasters-meta-data__item > * {
		font-size: 94% !important;
	}
	.cmsmasters-meta-data__item__inner:not(:last-child) {
		margin-bottom: 4px;
	}
	.cmsmasters-archive-post-meta_first .cmsmasters-archive-post-category a {
		border-bottom: 2px solid var(--e-global-color-420696f);
	}
	.cmsmasters-postmeta[data-name="author"] .cmsmasters-postmeta__content > * {
		margin: 0 calc(var(--avatar-space) / 2) 0; 
	}
	.cmsmasters-postmeta__inner>.cmsmasters-wrap-icon {
		margin-top: -2px !important;
	}

		/* ---- counter meta ---- */
		.cmsmasters-meta-data__item .content-side.content-after {
			font-family: inherit !important;
			font-size: inherit !important;
			font-weight: inherit !important;
			line-height: inherit !important;
			letter-spacing: inherit !important;
			word-spacing: inherit !important;
		}

	/* ----- pagination ----- */
.page-numbers:not(ul) {
    border: 2px solid transparent !important;
}
.page-numbers:not(ul).current {
	border-bottom-color: var(--e-global-color-primary) !important;
}
	ul.page-numbers:hover .page-numbers:not(:hover) {
		color: var(--e-global-color-text) !important;
	}
	ul.page-numbers:hover .page-numbers:not(:hover).current {
		border-bottom-color: var(--e-global-color-secondary) !important;
	}
	ul.page-numbers:hover .page-numbers:hover, ul.page-numbers:hover .page-numbers.current:hover {
		color: var(--e-global-color-primary) !important;
		border-bottom-color: var(--e-global-color-primary) !important;
	}
	/*.elementor-widget-cmsmasters-nav-menu__main:hover > ul > li > a.elementor-widget-cmsmasters-nav-menu__item-active:not(:hover),
	.elementor-widget-cmsmasters-nav-menu__main:hover > ul > li.current-menu-ancestor > a:not(:hover), .elementor-widget-cmsmasters-nav-menu__main > ul ul a.elementor-widget-cmsmasters-nav-menu__item-active:not(:hover){
		border-color: var(--e-global-color-secondary) !important;
	}*/


/* ----------------------
 * HEADER (Elementor)
 * ----------------------*/

	/* ----- Nav Menu ----- */
	.elementor-widget-cmsmasters-nav-menu__main:hover > ul li > a:not(:hover){
		color: var(--e-global-color-text) !important;
	}
	.elementor-widget-cmsmasters-nav-menu__main:hover > ul > li > a.elementor-widget-cmsmasters-nav-menu__item-active:not(:hover),
	.elementor-widget-cmsmasters-nav-menu__main:hover > ul > li.current-menu-ancestor > a:not(:hover), .elementor-widget-cmsmasters-nav-menu__main > ul ul a.elementor-widget-cmsmasters-nav-menu__item-active:not(:hover){
		border-color: var(--e-global-color-secondary) !important;
	}


/* ----------------------
 * BREADCRUMB (Yoast)
 * ----------------------*/
.cmsmasters-breadcrumbs-type-yoast .cmsmasters-widget-breadcrumbs__content > span {
	color: var(--e-global-color-background) !important;
	font-size: var( --e-global-typography-small-font-size ) !important;
	line-height: var( --e-global-typography-small-line-height ) !important;
	margin-left: 0 !important;
	display: flex;
	flex-flow: row wrap;
}
.cmsmasters-breadcrumbs-type-yoast .cmsmasters-widget-breadcrumbs__content > span > *:not(:first-child) {
	margin-left: 4px;
}
.cmsmasters-breadcrumbs-type-yoast .cmsmasters-widget-breadcrumbs__content > span > *:not(:last-child) {
	margin-right: 2px;
}
.cmsmasters-widget-breadcrumbs__content a:is(:hover, :focus) {
	text-decoration: underline !important;
}

/* ----------------------
 * POPUP
 * ----------------------*/
.popup {
	position: fixed;
    top: 0;
    left: 0;
    height: 100dvh;
}
.closed_popup {
	z-index: -1;
	opacity: 0;
	visibility: hidden;
}
.opened_popup {
	z-index: 99999;
	opacity: 1;
	visibility: visible;
}

/* ----------------------
 * BOTTONI
 * ----------------------*/
.elementor-widget-cmsmasters-button__button {
	border-radius: 0 !important;
}

/* ----------------------
 * MODULI DI CONTATTO (Forminator)
 * ----------------------*/
.forminator-ui.forminator-custom-form[data-grid="open"] .forminator-col:not(:last-child) {
	margin-bottom: 8px !important;
}
.forminator-pagination-footer {
	margin-top: 16px !important;
	display: flex;
}
.forminator-pagination-footer[style="justify-content: flex-end;"] {
    justify-content: flex-start !important;
}

	/* ----- layout ----- 
	.forminator-col-md-6 {
		width: calc(50% - 4px);
		float: left;
	}
	.forminator-col-md-6:first-child {
		margin-right: 4px;
	}
	.forminator-col-md-6:last-child {
		margin-left: 4px;
	}*/

	/* ----- Error messages ----- */
	.forminator-error-message {
		display: block;
		padding: 4px 8px;
		/*background-color: var(--e-global-color-border); */
	}

	/* ----- Back Button ----- */
	.forminator-button-back {
		--cmsmasters-button-normal-colors-bg: var(--e-global-color-ccd9872);
		--cmsmasters-button-hover-colors-bg: var(--e-global-color-background);
		--cmsmasters-button-normal-colors-bd: var(--e-global-color-ccd9872);
		--cmsmasters-button-hover-colors-color: var(--e-global-color-ccd9872);
  		--cmsmasters-button-hover-colors-bd: var(--e-global-color-ccd9872);
	}

	/* ----- Checkbox ----- */
	.forminator-checkbox {
		float: left;
		margin-right: 8px !important;
		transform: scale(1.1);
		margin-top: -4px !important;
	}
	.forminator-checkbox__label {
		font-family: var( --e-global-typography-763baad-font-family ), Sans-serif;
		font-size: var( --e-global-typography-763baad-font-size );
		font-weight: var( --e-global-typography-763baad-font-weight );
		line-height: var( --e-global-typography-763baad-line-height );
		letter-spacing: var( --e-global-typography-763baad-letter-spacing );
		word-spacing: var( --e-global-typography-763baad-word-spacing );
	}

	/* ----- date picker ----- */
	div.ui-datepicker[data-widget-id*="cms-"] {
		width: 100%;
		max-width: 352px;
		padding: 12px;
		background-color: var(--e-global-color-alternate);
		border: 1px solid var(--e-global-color-border);
		margin-top: -32px;
	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header {
		background-color: unset !important;
	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header .ui-datepicker-title {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 8px;
		margin-bottom: 12px;
	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header > a {
		width: 50%;
		float: left;
	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header .ui-datepicker-title {
		width: 100%;
		float: left;
	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header .ui-datepicker-next {
		text-align: right;
	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header > a span {
		font-size: 0;
	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header > a span:before {
		-moz-osx-font-smoothing: grayscale;
	  -webkit-font-smoothing: antialiased;
		display: inline-block;
		font-family: 'FabricMDL2Icons';
		font-style: normal;
		font-weight: normal;
		speak: none;
		line-height: 1;
		font-size: 18px;

	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header .ui-datepicker-next span:before {
		content: "\E974";
	}
	div.ui-datepicker[data-widget-id*="cms-"] .ui-datepicker-header .ui-datepicker-prev span:before {
		content: "\E973";
	}
	table {
		margin: 0;
	}
	table td, table th {
		padding: 4px !important;
	}
	table td.disabledDate span {
		color: var(--e-global-color-border);
	}

	/* ----- dinamic cf view based on height of device ----- */
	@media screen and (min-height: 960px) {
		#CF-prenotazione-step_by_step {
			display: none;
		}
	}
	@media screen and (max-height: 959px) {
		#CF-prenotazione-full {
			display: none;
		}
	}


/* ----------------------
 * POST SLIDER (widget elementor)
 * ----------------------*/
.swiper-button .cmsmasters-wrap-icon i, .swiper-button .cmsmasters-wrap-icon i {
  width: 100%;
}