/*
 * Arc en Pierre — styles spécifiques au site
 *
 * Sources : thème historique Avada 3.9.3 et capture MHTML de référence.
 * Ces règles portent uniquement les différences métier ; Avada 7 reste
 * responsable de sa grille, de ses composants et de son CSS généré.
 */

:root {
	--aep-brown-dark: #3c2b1e;
	--aep-brown: #513f31;
	--aep-brown-light: #a9937b;
	--aep-green: #55a098;
	--aep-title-border-top: #685b4e;
	--aep-title-border-bottom: #a9937b;
}

html,
body {
	overflow-x: hidden;
	scrollbar-color: #937d6b #f5f5f5 !important;
	scrollbar-width: thin;
}

/*
 * La bande à droite est la scrollbar native, pas un débordement horizontal.
 * Avada la recolorait en gris foncé après le thème enfant : la piste reprend
 * donc explicitement le gris très clair de la page.
 */
html::-webkit-scrollbar,
body::-webkit-scrollbar {
	width: 10px !important;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
	background: #f5f5f5 !important;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
	background: #937d6b !important;
	border: 2px solid #f5f5f5 !important;
	border-radius: 999px !important;
}

html.aep-intro-lock {
	overflow: hidden;
}

/* Introduction de l'accueil : indépendante du header et du footer Avada. */
.aep-intro {
	align-items: center;
	background: #fff;
	cursor: pointer;
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: clamp(1.5rem, 6vw, 5rem);
	position: fixed;
	transition: opacity 500ms ease;
	z-index: 100020;
}

.aep-intro.is-visible {
	opacity: 1;
}

.aep-intro.is-leaving {
	opacity: 0;
	pointer-events: none;
}

.aep-intro__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	max-height: 100%;
	max-width: min(32rem, 82vw);
	text-align: center;
}

.aep-intro__logo {
	display: block;
	height: auto;
	max-height: min(68vh, 32rem);
	max-width: 100%;
	width: min(31rem, 72vw);
}

.aep-intro__enter {
	background: var(--aep-brown);
	border: 2px solid var(--aep-brown);
	border-radius: 999px;
	color: #fff;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	letter-spacing: .04em;
	padding: .75rem 1.4rem;
	transition: background-color 180ms ease, color 180ms ease;
}

.aep-intro__enter:focus-visible,
.aep-intro__enter:hover {
	background: #fff;
	color: var(--aep-brown);
	outline: none;
}

@media (prefers-reduced-motion: reduce) {
	.aep-intro {
		transition: none;
	}
}

/* --------------------------------------------------------------------------
 * Bandeaux, images et classes Fusion historiques présentes dans les contenus.
 * ----------------------------------------------------------------------- */
.titre_nico {
	background: url('../images/bg_titre.png') 0 0 / cover repeat scroll transparent;
	border-bottom: .2em solid var(--aep-title-border-bottom) !important;
	border-top: .2em solid var(--aep-title-border-top) !important;
	padding: 30px !important;
}

/*
 * Avada 7 applique ensuite ses variables de conteneur sur .fusion-fullwidth.
 * Les valeurs !important sont intentionnelles : ce sont les valeurs du
 * contenu historique, qui doivent primer sur les valeurs par défaut du
 * conteneur Fusion, sans modifier le parent.
 */
.fusion-fullwidth.titre_nico {
	background-color: transparent !important;
	background-image: url('../images/bg_titre.png') !important;
	background-position: 0 0 !important;
	background-repeat: repeat !important;
	background-size: cover !important;
}

.post-content .titre_nico,
.titre_nico * {
	color: #fff !important;
}

.post-content .titre_nico h2::after {
	display: none;
}

.titre_nico * {
	margin: 0 !important;
}

.titre_nico .fusion-row {
	max-width: 1920px !important;
	text-align: center;
}

.titre_nico .fusion-row h2 {
	font-family: Raleway, Arial, Helvetica, sans-serif !important;
	font-weight: 100 !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 10px !important;
	text-align: left !important;
	width: 74%;
}

#deco,
.margtopnull {
	margin-top: 0 !important;
}

.img-header {
	height: 200px;
}

.marginleft20px {
	margin-left: 20px;
}

/* Classe héritée du contenu historique : ne pas l'utiliser pour de nouveaux titres. */
.dispnone {
	display: none !important;
}

.half_img {
	margin-bottom: 0 !important;
}

.half_img:nth-of-type(2) {
	margin-right: 1%;
	width: 49%;
}

.half_img:nth-of-type(3) {
	margin-left: 1%;
	margin-right: 0;
	width: 49%;
}

.maxwidth .fusion-row {
	max-width: 1400px !important;
}

.maxwidth .fusion-row .fusion-one-half:nth-of-type(1) .fusion-column-wrapper p {
	margin-right: 0 !important;
	text-align: left !important;
}

.maxwidth .fusion-row .fusion-one-half:nth-of-type(2) .fusion-column-wrapper p {
	margin-left: 0 !important;
	text-align: left !important;
}

/* --------------------------------------------------------------------------
 * Titres éditoriaux : portage des règles historiques dans le markup Avada 7.
 * ----------------------------------------------------------------------- */
.post-content h2,
.post-content h3 {
	color: var(--aep-brown-dark);
	font-family: Times, "Times New Roman", serif !important;
	position: relative;
}

.entry-title a {
	color: #000 !important;
}

/* Titres des cartes du shortcode Actualités / archives. */
#main .fusion-blog-shortcode .fusion-post-content > .blog-shortcode-post-title,
#main .fusion-blog-shortcode .fusion-post-content > .blog-shortcode-post-title > a,
#main .fusion-blog-layout-grid .fusion-post-content > h2.entry-title,
#main .fusion-blog-layout-grid .fusion-post-content > h2.entry-title > a {
	color: #000 !important;
	font-family: Times, "Times New Roman", serif !important;
	font-size: 20px !important;
	font-weight: 800 !important;
	line-height: 33px !important;
}

/* Filet historique sous les titres de contenus, sauf la grille Actualités. */
.single .post h2::after,
.post-content h2::after {
	background: #baaea6;
	bottom: -15px;
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	width: 100px;
}

.page-id-2360 .post-content h2::after,
.post-content .titre_nico h2::after {
	display: none;
}

/* --------------------------------------------------------------------------
 * Index « Réalisations » et classes historiques de cartes.
 * ----------------------------------------------------------------------- */
.aep-realisations-archive {
	background: #fff;
	padding: clamp(2rem, 4vw, 3rem) 0;
}

.aep-realisations-archive__header {
	margin-bottom: 2rem;
}

.aep-realisations-archive__description > :last-child {
	margin-bottom: 0;
}

.aep-realisations-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
}

.aep-realisations-card,
.bloc_categ {
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
}

.aep-realisations-card {
	box-shadow: 0 3px 16px rgb(60 43 30 / 14%);
	transition: box-shadow 180ms ease, transform 180ms ease;
}

.aep-realisations-card:focus-within,
.aep-realisations-card:hover {
	box-shadow: 0 8px 24px rgb(60 43 30 / 22%);
	transform: translateY(-2px);
}

.aep-realisations-card__link {
	color: inherit;
	display: block;
	height: 100%;
	text-decoration: none;
}

.aep-realisations-card__media,
.layer_real {
	background: #f5f5f5;
	display: grid;
	max-height: 220px;
	overflow: hidden;
	place-items: center;
}

.aep-realisations-card__image,
.bloc_categ img {
	display: block;
	height: 220px;
	object-fit: cover;
	width: 100% !important;
}

.aep-realisations-card__title,
.bloc_categ h2 {
	color: var(--aep-brown);
	font-size: 1.1rem;
	margin: 0;
	padding: 1rem 1.15rem 1.15rem;
	text-align: left;
}

/* Compatibilité visuelle avec l'ancien template catégorie. */
.bloc_categ {
	display: inline-block;
	margin-bottom: 1em;
	margin-left: 1em;
	min-width: 32%;
	padding: 0 !important;
}

.bloc_categ h2 {
	margin-left: 1em;
	margin-top: .5em !important;
}

.imgrounded_categ,
.imgrounded_categ * {
	border-radius: 10px !important;
}

#post-1619 {
	float: left;
	text-align: center;
}

/*
 * Accueil historique (page 8) : les blocs `.masonryitem` sont des divs de
 * contenu Fusion, pas un reliquat à masquer. Avada 7 les rend sans le vieux
 * JavaScript de maçonnerie ; les laisser visibles reconstitue la mosaïque.
 */

.post-8 .masonryitem img {
	border-radius: 10px;
	margin-bottom: .5em;
	margin-top: .5em;
	width: 100%;
}

.post-8 .masonryitem a {
	background-color: #49311e;
	border-radius: .5em;
	color: #fff !important;
	padding: 1em;
	text-shadow: none;
}

.masonryitem h3,
.masonryitem p {
	color: #49311e !important;
	text-shadow: 0 0 5px #fff;
}

.post-8 .masonryitem p {
	line-height: 1.4em;
	margin-bottom: 0;
	margin-left: auto;
	margin-right: auto;
	text-align: justify;
	width: 88%;
}

.post-8 .masonryitem h3 + p {
	font-weight: 700;
}

.post-8 .masonryitem h2 {
	color: #000;
	margin: 0 0 0 13px;
}

/* Footer : signature historique, sans surcharger footer.php du parent. */
.fusion-footer-widget-area,
.fusion-footer-copyright-area {
	background-color: #937d6b !important;
	border-color: #937d6b !important;
}

/* Avada conserve une zone de widgets vide ; le footer historique n’en avait pas. */
.fusion-footer-widget-area:not(:has(.widget)) {
	display: none !important;
}

.fusion-footer-widget-area *,
.fusion-footer-copyright-area * {
	color: #fff !important;
	line-height: 30px;
}

.fusion-copyright-notice {
	background-image: url('../images/signature-julien-blanc.svg');
	background-position: center right;
	background-repeat: no-repeat;
	background-size: contain;
	height: 50px;
	padding-bottom: 10px;
	padding-top: 10px;
}

@media (max-width: 800px) {
	.titre_nico {
		padding: 10px !important;
	}

	.titre_nico .fusion-row h2 {
		width: 100%;
	}

	.img-header {
		height: 160px;
	}

	.half_img:nth-of-type(2),
	.half_img:nth-of-type(3) {
		margin-left: 0;
		margin-right: 0;
		width: 100%;
	}

	.fusion-copyright-notice {
		background-position: center bottom;
		background-size: min(180px, 65%);
		height: 130px;
		padding-bottom: 44px;
		text-align: center;
	}

}

p a {
    color: #5b432a !important
}
