/* Personnalisations générales */

	/* Augmentation de la taille de la légende des images */
	figcaption {
	  font-size: 1.2em !important;
	}

/* Personnalisation du menu d'en-tête */

#nv-primary-navigation-main li a {
	position: relative;
	display: inline-block;
	padding-bottom: 4px;
	text-decoration: none;
	color: #605E0B;
	transition: transform 0.4s ease, color 1.2s ease;
}

#nv-primary-navigation-main li a::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0%;
	height: 3px;
	background: linear-gradient(90deg, #9d4a0d, #c1c07f, #6dc978, #a3e635);
	transition: width 0.8s ease;
	border-radius: 2px;
}

#nv-primary-navigation-main li a:hover {
	transform: scale(1.59);
	color: #a3e635;
	font-weight: bold;
}

#nv-primary-navigation-main li a:hover::after {
	width: 100%;
}

.header-main-inner div.container {
	width: 86% !important;
}

.header-main-inner div.container div.row.row--wrapper div.hfg-slot.left {
	justify-content: space-between;
}

.site-logo p {
	margin-left: 56px !important;
	color: #5fc36b;
	font-family: "Palatino Linotype","Book Antiqua",Palatino,serif;
	text-align: center;
  	margin-bottom: 20px;
  	font-size: 51px !important;
}

.nv-title-tagline-wrap small {
	margin-left: 56px !important;
	font-family: "Palatino Linotype","Book Antiqua",Palatino,serif;
}

@media (max-width: 781px) {
	.site-logo p {
  		font-size: 40px !important;
  		font-weight: bold !important;
  		line-height: 40px !important;
  		margin: 24px !important;
    	margin-left: 24px !important;
  		margin-left: 0 !important;
  		margin-right: 0 !important;
  		width: 148px !important;
	}

	.site-logo small {
		margin-left: 24px !important;
	}
}


/* Personnalisation du pied de page */

.footer-partie-gauche {
		text-align: center;
}

div.hfg-slot.left div.builder-item div.item--inner div.component-wrap div p {
	display: none;
}

#site-footer a:hover {
	color: #054f1b;
	text-decoration: underline;
}

@media (max-width: 781px) {
	#site-footer .hfg-slot.left {
  		margin-top: 45px;
	}
}

/* Personnalisation de la page d'accueil */

.page-id-154 .section-page-accueil {
	position: relative;
  	overflow: hidden;
  	display: flex;
  	flex-direction: column;
}

@media (min-width: 781px) {
  .page-id-154 .section-page-accueil {
    min-height: 100vh;
  }
}

.page-id-154 .wp-block-cover__background {
	position: absolute;
  	inset: 0;
  	z-index: 0;
  	overflow: hidden;
}

.page-id-154 .wp-block-cover__background img {
  	width: 100%;
  	height: 100%;
  	object-fit: cover;
  	object-position: center;
  	opacity: 0.6; /* pour que les cartes restent bien visibles */
  }

.page-id-154 .flip-grid {
    max-width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    padding: 2rem 1rem;
}

.page-id-154 .flip-card {
	perspective: 1000px;
    outline: none;
}

.page-id-154 .flip-card h3 {
    margin:0.5rem 0 0;
    background-color: rgba(8, 106, 74, 0.66);
    padding:0.2em 0.6em;
    border-radius:35px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.87);
    color: white;
    text-shadow: -1px -1px 0 black, 1px -1px 0 black, -1px  1px 0 black, 1px  1px 0 black;
}

.page-id-154 .flip-inner {
    position: relative;
    width: 100%;
    height: 280px;
    transition: transform 0.6s ease;
    transform-style: preserve-3d;
}

.page-id-154 .flip-front {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 1.1rem;
    text-align: center;
    font-size: 3.1rem;
  }

.page-id-154 .flip-front, .page-id-154 .flip-back {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    padding: 1rem;
    backface-visibility: hidden;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
    overflow-y: auto;
  }

.page-id-154 .flip-back {
    transform: rotateY(180deg);
    text-align: left;
    font-size: 1.25rem;
    line-height: 1.5;
    background: #774d45f2;
  }

.page-id-154 .flip-back a {
	color: rgb(79, 255, 42);
  	font-weight: bold;
}

.page-id-154 .flip-card:hover .flip-inner, .page-id-154 .flip-card:focus-within .flip-inner {
    transform: rotateY(180deg);
  }

@media (min-width: 600px) {
    .page-id-154 .flip-grid {
      grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
	.flip-grid {
        grid-template-columns: repeat(2, 1fr);
        overflow-y: auto;
        max-height: 448px;
        overflow-x: hidden;
        scrollbar-width: thin;
        scrollbar-color: #17C65B #df2a90;
        max-width: 100%;
  	}

	.page-id-154 .section-page-accueil {
		position: relative;
	}
    
    .page-id-154 .flip-front {
    	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.87);
    }

    .page-id-154 .flip-back {
    	text-align: center !important;
    }

    .page-id-154 .wp-block-cover {
    	position: relative;
	}

    .page-id-154 .wp-block-cover .wp-block-cover__image-background {
    	position: absolute;
    	object-fit: contain;
    	top: 0;
    	bottom: 0;
	}

	.wp-block-cover .wp-block-cover__inner-container {
		position: absolute;
  		width: 100%;
	}

}

@media (min-width: 1024px) {
    .page-id-154 .flip-grid {
    	grid-template-columns: repeat(3, 1fr);
    }
}

/* Personnalisation de la page Réalisations */

.en-savoir-plus a:hover {
	background-color: #592608c4 !important;
	color: #020202 !important;
}

.realisation-item .wp-block-cover:hover .wp-block-cover__background {
    opacity: 0 !important;
    transition: opacity 0.5s ease;
}

.realisation-item .wp-block-cover:hover p, .realisation-item .wp-block-cover:hover h3  {
	color: #752d2d00 !important;
}

@media (min-width: 782px) {
	.colonne-realisation-ligne1 {
		display: flex;
 		width: 100%;
 		height: 500px; /* fixer la hauteur */
	}

	.realisation-item {
 		flex: 1 1 0; /* = flex-grow: 1; flex-shrink: 1; flex-basis: 0; */
  		transition: flex-grow 1.1s ease;
  		display: flex;
  		align-items: center;
  		justify-content: center;
  		color: #4C6644;
  		overflow: hidden;
	}

	.colonne-realisation-ligne2 {
		display: flex;
 		width: 100%;
 		height: 500px; /* fixer la hauteur */
	}

	.realisation-item {
 		flex: 1 1 0; /* = flex-grow: 1; flex-shrink: 1; flex-basis: 0; */
  		transition: flex-grow 1.1s ease;
  		display: flex;
  		align-items: center;
  		justify-content: center;
  		color: #4C6644;
  		overflow: hidden;

	}

	.realisation-item:hover {
  		flex-grow: 3 !important;

	}
}

@media (max-width: 781px) {
	.page-id-99 .wp-block-buttons > .wp-block-button.wp-block-button__width-25 {
  		width: 28%;
	}

	.page-id-99 .wp-block-group.is-vertical.is-layout-flex.wp-container-core-group-is-layout-8cf370e7.wp-block-group-is-layout-flex {
		margin-bottom: 45px;
  		margin-top: 45px;
	}

	.page-id-99 .wp-block-group.is-vertical.is-layout-flex.wp-container-core-group-is-layout-8cf370e7.wp-block-group-is-layout-flex {
		font-weight: 500;
	}
}

/* Personnalisation de la page Tarifs */


.colonne-tarif {
	box-shadow: 3px 3px 10px 5px rgba(12, 12, 13, 0.29);
}

.liste-puce-tarif {
	list-style: none !important; /* on retire les puces par défaut */
  	padding-left: 1.2em !important; /* un peu d'espace à gauche pour les encoches */
}

ul.liste-puce-tarif li::before {
  	content: "✔" !important; /* ou utilise '\2713' pour le caractère Unicode */
  	color: #000 !important; /* noir */
  	font-size: 0.9em !important;
  	font-weight: normal !important;
  	margin-right: 0.5em !important;
  	display: inline-block !important;
	width: 1em !important;
}

.page-id-101 hr.wp-block-separator {
	border-top: 3px solid !important;
	margin-bottom: 0px;
}

@media (max-width: 781px) {
	.page-id-101 .wp-block-group.alignfull.has-base-background-color.has-background {
  		padding-right: 45px !important;
  		padding-left: 45px !important;
	}
}

/* Personnalisation de la page Contact */

form .nf-before-form-content {
	display: none;
}

@media (max-width: 781px) {
 .page-id-101 .wp-block-columns {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .page-id-101 .wp-block-column {
    margin-bottom: 0 !important;

  }
}