/** FONT **/
@font-face{
    font-family: "virginia";
    src: url("../fonts/virginia.eot");
    src: url("../fonts/virginia.eot?#iefix")format("embedded-opentype"),
        url("../fonts/virginia.woff")format("woff"),
        url("../fonts/virginia.woff2")format("woff2"),
        url("../fonts/virginia.ttf")format("truetype"),
        url("../fonts/virginia.svg")format("svg");
    font-weight:normal;
    font-style:normal;
    font-display:swap;
}
@font-face{
    font-family: "noyh";
    src: url("../fonts/noyh.eot");
    src: url("../fonts/noyh.eot?#iefix")format("embedded-opentype"),
        url("../fonts/noyh.woff")format("woff"),
        url("../fonts/noyh.woff2")format("woff2"),
        url("../fonts/noyh.ttf")format("truetype"),
        url("../fonts/noyh.svg")format("svg");
    font-weight:normal;
    font-style:normal;
    font-display:swap;
}

/** DEFAULT **/
:root {
	--bleu: #7ED0C0;
	--blanc: #ffffff;
	--gris: #F2F2F2;
	--text1: #222222;
	--text2: #515155;
	--gradien-light: background: linear-gradient(90deg, rgba(242, 242, 242, 1) 0%, rgba(110, 209, 204, 1) 50%, rgba(43, 190, 182, 1) 100%);
	--gradient-medium: background: linear-gradient(90deg, rgba(44, 186, 174, 1) 0%, rgba(29, 150, 143, 1) 50%, rgba(21, 102, 96, 1) 100%);;
	--gradient-hard: background: linear-gradient(90deg, rgba(38, 188, 179, 1) 0%, rgba(28, 139, 133, 1) 50%, rgba(17, 79, 74, 1) 100%);;
}
body p {
	font-family: 'Work Sans' !important;
}
.page-id-2205 h1, .page-id-2205 h2, .page-id-2205 h3,
.sous-cta p {
	font-family: 'virginia' !important;
	font-weight: normal !important;
}
.elementor-button, 
.item-service .elementor-image-box-description>a {
	display: inline-block;
	overflow: hidden;
	position: relative;
}
.elementor-button:before,
.item-service .elementor-image-box-description>a:before {
	content: '';
	background: var(--text1);
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	transition: all 300ms ease-in-out;
}
.elementor-button span {
	position: relative;
	z-index: 2;
}
.elementor-button:hover:before,
.item-service .elementor-image-box-description>a:hover:before {
	top: 0 !important;
}
.elementor-button:hover span,
.item-service .elementor-image-box-description>a:hover {
	color: var(--blanc) !important;
}

/** HEADER **/
.header {
	background: var(--blanc);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	padding: 5px 40px;
	box-shadow: 0 0 10px #eee;

	.elementor-widget-wrap {
		padding: 0 !important;
	}
}

/** ACCUEIL **/
.sec>.elementor-container {
	flex-direction: column !important;
}
.service {
	.sticky-vertical {
		width: 100% !important;
		max-width: 1240px !important;
		margin: 0 auto;

		.elementor-widget-wrap {
			display: flex !important;
			justify-content: flex-start !important;
			align-items: flex-start !important;
			flex-wrap: nowrap !important;
			gap: 40px;
		}
	}
	.item-service {
		background: var(--blanc);
		width: 375px;
		min-width: 375px;
		border-radius: 16px;
		box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05);
		position: relative;
		overflow: hidden;

		.elementor-widget-container {
			position: relative;
			min-height: 500px;
			padding: 40px 40px 90px 40px !important;
			z-index: 5;
		}

		&::before {
			content: '';
    		background-image: linear-gradient(180deg, #FFFFFFD9 0%, /*#7ED0C0BA*/ #515155BA 100%);
			position: absolute;
			top: 100%;
			bottom: 0;
			left: 0;
			right: 0;
			z-index: 1;
			transition: all 400ms ease-in-out;
		}

		.elementor-image-box-description {

			a {
				position: absolute;
				bottom: 30px;
				left: 0;
				right: 0;
				display: block;
			    margin: 20px auto 0;
			    padding: 11px 30px;
			    border-radius: 6px;
			    background: var(--bleu);
			    width: 160px;
			    color: var(--blanc);

			    &:before {
			    	z-index: 0;
			    }

			    span {
			    	position: relative;
			    	z-index: 1;
			    }
			}

		}
	}
}
.item-service:hover:before {
	top: 0 !important;
}
.ct-soin>div {
	flex-direction: column !important;
}
.ct-cta {
	width: 100% !important;

	.cta {
		.sous-cta {
			width: 50% !important;
		}
	}
}
.masonry>div {
	max-width: 100% !important;
}
.masonry {
	.elementor-container {
		flex-direction: column !important;
	}

	.elementor-column {
		width: 100% !important;
	}
}
/*.sticky {
	position: sticky;
	top: 50%;
	transform: translateY(-50%);
}*/
.gal .elementor-widget-wrap {
	flex-direction: row;
}
.gal .elementor-widget-wrap>.elementor-element {
	width: calc(33.333% - 20px);
}

@media (max-width: 1024px){
	.cta {
		.sous-cta {
			width: 50% !important;
		}
	}
}
@media (max-width: 767px){
	.cta {
		.sous-cta {
			width: 100% !important;
		}
	}
	.gal .elementor-widget-wrap {
	    flex-direction: column;
	}
	.gal .elementor-widget-wrap>.elementor-element {
	    width: 100% !important;
	}
}
.ti-widget.ti-goog .ti-controls .ti-next, 
.ti-widget.ti-goog .ti-controls .ti-prev {
    background-color: var(--bleu) !important;
}

/** FOOTER **/
footer {
	display: none !important;
}
.footer {
	width: 100% !important;

	.sous-footer>div {
		max-width: 100% !important;
		flex-direction: column !important;

		.elementor-column {
			width: 100% !important;
		}
	}
}
.info {
	width: 100% !important;
}
.info>div {
	display: flex;
}
.coor>div {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
}
.coor .item-coor {
	width: 50%;
}
.footer>div {
	justify-content: center !important;
	align-items: center !important;
	flex-direction: column !important;
}
.footer>div>.elementor-column {
	width: 100% !important;
}
.foot>div {
	display: flex !important;
	flex-wrap: nowrap !important;
	justify-content: space-between !important;
	align-items: center !important;
	max-width: 1240px !important;
	margin: 0 auto !important;
}
@media (max-width: 1200px){
	.foot>div {
		flex-direction: column !important;
	}
	.foot>div .elementor-element {
		text-align: center !important;
	}
}
@media (max-width: 1024px){
	.info>div {
	    flex-direction: column !important;
	}
	.info>div>.elementor-column {
		width: 100% !important;
	}
	.footer>div {
		flex-direction: row !important;
	}
}
@media (max-width: 680px){
	.coor>div {
		flex-direction: column !important;
	}
	.coor>div .elementor-widget-container,
	.item-coor {
		padding: 0 !important;
	}
	.coor .item-coor {
	    width: 100%;
	}
}