/* Thème ALHPI - styles repris de l'ancien site (Jupiter X + thème enfant de l'agence, 2020-2021). */

:root {
	--alhpi-vert: #379923;
	--alhpi-vert-clair: #72B464;
	--alhpi-orange: #F27D11;
	--alhpi-orange-survol: #F39322;
	--alhpi-icone-fleche: url("../icons/arrow.svg");
}

/* ---------- En-tête ---------- */
.alhpi-entete-collant {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 100;
}
.alhpi-entete {
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.1);
}
.alhpi-entete__barre {
	min-height: 162px;
	padding: 0 10%;
	max-width: 1520px;
	margin: 0 auto !important;
	box-sizing: border-box;
	align-items: center;
}
.alhpi-logo img { width: 210px; height: auto; }
.alhpi-entete__droite { gap: 60px; align-items: center; }

/* Menu principal */
.alhpi-menu { color: var(--alhpi-vert); font-size: 1.2rem; font-weight: 700; }
.alhpi-menu .wp-block-navigation__container { gap: 75px; }
.alhpi-menu .wp-block-navigation-item__content { color: var(--alhpi-vert); }
.alhpi-menu .wp-block-navigation-item__content:hover,
.alhpi-menu .current-menu-item > .wp-block-navigation-item__content { color: var(--alhpi-orange-survol); }
.alhpi-menu .wp-block-navigation__submenu-icon { width: 0.9em; height: 0.9em; margin-left: 1rem; color: var(--alhpi-vert); }
.alhpi-menu .wp-block-navigation__submenu-icon svg { stroke-width: 3; }
.alhpi-menu .has-child:hover > .wp-block-navigation__submenu-icon svg { transform: rotate(180deg); transition: transform .3s ease-out; }
.alhpi-menu .wp-block-navigation__submenu-icon svg { transition: transform .3s ease-out; }

/* Sous-menus : fond gris, liseré vert, flèche ronde, deux colonnes */
.alhpi-menu .has-child .wp-block-navigation__submenu-container {
	background: #F1F1F1 !important;
	border: 0 !important;
	border-bottom: 3px solid var(--alhpi-vert) !important;
	box-shadow: 6px 0 10px rgba(0, 0, 0, 0.5);
	font-size: 1rem;
	padding: 0;
	margin-top: 15px;
}
/* Pont invisible sur l'écart de 15px : la souris garde le survol en descendant vers le sous-menu */
.alhpi-menu .has-child .wp-block-navigation__submenu-container::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -15px;
	height: 15px;
}
.alhpi-menu .is-menu-open .wp-block-navigation__submenu-container::before { display: none; }
/* Le sous-menu déborde à gauche du bouton : en allant en diagonale vers la première colonne, la souris
   quitte le bouton. Le sous-menu reste donc ouvert 0,4 s puis s'efface (WordPress le ferme instantanément). */
.alhpi-menu .wp-block-navigation__container > .has-child > .wp-block-navigation__submenu-container {
	height: auto;
	width: auto;
	min-width: 200px;
	overflow: visible;
	transition: opacity .2s linear .4s, visibility 0s linear .6s;
}
.alhpi-menu .wp-block-navigation__container > .has-child:hover > .wp-block-navigation__submenu-container {
	z-index: 3;
	transition: opacity .1s linear, visibility 0s;
}
@media (min-width: 1024px) {
	.alhpi-menu .alhpi-menu__colonnes > .wp-block-navigation__submenu-container {
		width: 500px !important;
		display: grid !important;
		grid-template-columns: 1fr 1fr;
	}
}
.alhpi-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 15px 20px !important;
	display: flex;
	align-items: center;
	color: var(--alhpi-vert);
}
.alhpi-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content::before {
	content: "";
	flex: 0 0 20px;
	height: 20px;
	margin-right: 0.5rem;
	background: var(--alhpi-icone-fleche) no-repeat center / 20px 20px;
}
.alhpi-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color: var(--alhpi-orange-survol); }

/* Bouton Contact (enveloppe) ; sur mobile, Contact passe dans le menu */
.alhpi-bouton-contact .wp-block-button__link {
	width: 10em;
	padding: 0.55em 1em;
	font-size: 1.2rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}
.alhpi-icone-enveloppe .wp-block-button__link::before {
	content: "";
	width: 1.2rem;
	height: 1.2rem;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z'/%3E%3C/svg%3E") no-repeat center / contain;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z'/%3E%3C/svg%3E") no-repeat center / contain;
}
.alhpi-menu .alhpi-menu__contact-mobile { display: none; }
.alhpi-menu .is-menu-open .alhpi-menu__contact-mobile { display: block; }

@media (max-width: 1250px) {
	.alhpi-entete__barre { padding: 0 5% 0 10%; }
}
@media (max-width: 1150px) {
	.alhpi-menu .wp-block-navigation__container { gap: 25px; }
	.alhpi-entete__droite { gap: 25px; }
}
@media (max-width: 1024px) {
	.alhpi-entete__barre { padding: 0 30px; min-height: 110px; }
	.alhpi-logo img { width: 170px; }
}
@media (max-width: 599px) {
	.alhpi-bouton-contact { display: none; }
	.alhpi-entete__barre { min-height: 90px; }
	.alhpi-logo img { width: 150px; }
}
/* Menu mobile plein écran */
.alhpi-menu .wp-block-navigation__responsive-container.is-menu-open {
	padding: 2rem;
	background: #fff;
	color: var(--alhpi-vert);
	font-size: 1.3rem;
}
.alhpi-menu .is-menu-open .wp-block-navigation__submenu-container {
	box-shadow: none;
	border-bottom: 0 !important;
	background: transparent !important;
	margin-top: 0;
}
/* Tout aligné à gauche sur la largeur de l'écran : calé à droite comme sur ordinateur, le menu tenait
   dans une bande étroite et les libellés passaient sur deux lignes, en escalier */
.alhpi-menu .is-menu-open .wp-block-navigation__responsive-container-content,
.alhpi-menu .is-menu-open .wp-block-navigation__container,
.alhpi-menu .is-menu-open .wp-block-navigation-item,
.alhpi-menu .is-menu-open .wp-block-navigation__submenu-container {
	width: 100% !important;
	align-items: flex-start !important;
}
.alhpi-menu .is-menu-open .wp-block-navigation__submenu-container { padding: 0 0 0 1rem !important; }
.alhpi-menu .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 12px 0 !important; width: 100%; }

/* ---------- Bandeau titre de page (vert) ---------- */
.alhpi-bandeau, .is-style-bandeau {
	background: var(--alhpi-vert-clair);
	color: #fff;
	padding-top: 4rem !important;
	padding-bottom: 4rem !important;
	text-align: center;
}
.alhpi-bandeau h1, .is-style-bandeau h1,
.alhpi-bandeau .wp-block-heading, .is-style-bandeau .wp-block-heading {
	color: #fff;
	font-weight: 400;
	font-size: var(--wp--preset--font-size--titre);
	margin: 0;
}
.alhpi-bandeau p, .is-style-bandeau p { font-size: 1rem; margin-top: 1.5rem; }

/* ---------- Titres manuscrits soulignés (Kalam vert + petit trait) ---------- */
.is-style-souligne {
	font-family: var(--wp--preset--font-family--kalam);
	color: var(--alhpi-vert);
	font-weight: 400;
	font-size: var(--wp--preset--font-size--tres-grand);
	text-align: center;
}
.is-style-souligne::after {
	content: "";
	display: block;
	width: 60px;
	height: 3px;
	background: currentColor;
	margin: 0.6rem auto 0;
}
.is-style-souligne.has-text-align-left::after { margin-left: 0; }

/* ---------- Cartes (actualités) ---------- */
.alhpi-actus .wp-block-post-template { gap: 2rem 2rem; }
.alhpi-carte, .is-style-carte {
	background: #fff;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
	height: max-content;
}
.alhpi-carte__image { margin: 0; }
.alhpi-carte__image img { width: 100%; object-fit: cover; }
.alhpi-carte__corps { padding: 1.25rem 1.25rem 1rem; }
.alhpi-carte__titre {
	font-family: var(--wp--preset--font-family--kalam);
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.5;
	margin: 0 0 1rem;
}
.alhpi-carte__titre a { color: var(--alhpi-vert); }
.alhpi-carte__extrait { font-size: 0.95rem; line-height: 1.9; }
.alhpi-carte__extrait .wp-block-post-excerpt__more-text { text-align: right; margin-top: 1rem; }
.alhpi-carte__extrait .wp-block-post-excerpt__more-link { color: var(--alhpi-vert); text-decoration: underline; }
.wp-block-query-pagination { margin-top: 3rem; font-weight: 700; }
.wp-block-query-pagination-numbers { display: inline-flex; gap: 0.5rem; }
.wp-block-query-pagination a, .wp-block-query-pagination span { color: var(--alhpi-vert); }
.wp-block-query-pagination .current { color: var(--alhpi-orange); }

/* ---------- Article ---------- */
.alhpi-article__titre { font-size: 2.5rem; font-weight: 400; }
.alhpi-article__meta { font-size: 0.95rem; gap: 0.5rem; }
.alhpi-article__meta > * + *::before { content: "|"; margin-right: 0.5rem; }
.alhpi-article__meta a { color: inherit; }
.alhpi-article__date::before { content: "Posté le "; }
.alhpi-laterale__titre { font-size: 1.25rem; font-weight: 700; margin-top: 2rem; }
.alhpi-laterale__titre:first-child { margin-top: 0; }
.alhpi-laterale__actus, .alhpi-laterale__categories { list-style: none; padding: 0; font-size: 0.95rem; line-height: 1.4; }
.alhpi-laterale__actus li { margin-bottom: 1rem; }
.alhpi-laterale__actus time { display: block; color: var(--wp--preset--color--texte); margin-top: 0.25rem; }
.alhpi-laterale__categories li { margin-bottom: 0.35rem; }
@media (max-width: 781px) { .alhpi-laterale { margin-top: 3rem; } }

/* ---------- Adresse du siège (avant le pied de page) ---------- */
.alhpi-siege { color: #fff; min-height: 0 !important; }
.alhpi-siege .alhpi-siege__titre { color: #fff; font-size: 2.3rem; line-height: 52px; margin: 0; font-weight: 700; }
.alhpi-siege .alhpi-siege__texte { font-size: 1.6rem; line-height: 1.2; margin: 0; }
.alhpi-siege a { color: #fff; }
@media (max-width: 781px) { .alhpi-siege .alhpi-siege__titre { font-size: 1.8rem; } .alhpi-siege .alhpi-siege__texte { font-size: 1.3rem; } }

/* ---------- Pied de page ---------- */
.alhpi-pied a { color: #fff; }
.alhpi-pied__liens { list-style: none; padding: 0; margin: 0; font-size: 14px; font-weight: 500; line-height: 2.3; }
.alhpi-pied__adherents { text-align: right; font-size: 1rem; font-weight: 700; line-height: 1.5rem; }
.alhpi-pied__adherents a { display: inline-flex; align-items: center; gap: 20px; text-align: right; }
.alhpi-pied__adherents a::after {
	content: "";
	width: 3rem;
	height: 3rem;
	flex: 0 0 3rem;
	background: #fff;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 496 512'%3E%3Cpath d='M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 96c48.6 0 88 39.4 88 88s-39.4 88-88 88-88-39.4-88-88 39.4-88 88-88zm0 344c-58.7 0-111.3-26.6-146.5-68.2 18.8-35.4 55.6-59.8 98.5-59.8 2.4 0 4.8.4 7.1 1.1 13 4.2 26.6 6.9 40.9 6.9 14.3 0 28-2.7 40.9-6.9 2.3-.7 4.7-1.1 7.1-1.1 42.9 0 79.7 24.4 98.5 59.8C359.3 421.4 306.7 448 248 448z'/%3E%3C/svg%3E") no-repeat center / contain;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 496 512'%3E%3Cpath d='M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 96c48.6 0 88 39.4 88 88s-39.4 88-88 88-88-39.4-88-88 39.4-88 88-88zm0 344c-58.7 0-111.3-26.6-146.5-68.2 18.8-35.4 55.6-59.8 98.5-59.8 2.4 0 4.8.4 7.1 1.1 13 4.2 26.6 6.9 40.9 6.9 14.3 0 28-2.7 40.9-6.9 2.3-.7 4.7-1.1 7.1-1.1 42.9 0 79.7 24.4 98.5 59.8C359.3 421.4 306.7 448 248 448z'/%3E%3C/svg%3E") no-repeat center / contain;
}
.alhpi-pied__trait { border: 0; border-top: 1px solid rgba(255, 255, 255, 0.35) !important; opacity: 1; margin-top: 0 !important; margin-bottom: 30px !important; width: 100%; max-width: var(--wp--style--global--content-size); }
.alhpi-pied__conception { font-size: 14px; line-height: 1; margin: 0; }
.alhpi-pied__conception a { color: var(--alhpi-orange); }
@media (max-width: 781px) {
	.alhpi-pied__liens, .alhpi-pied__adherents { text-align: center; }
	.alhpi-pied__adherents a { justify-content: center; }
}

/* ---------- Établissements : pastilles de couleur, images rondes ---------- */
.alhpi-etab { text-align: center; }
.alhpi-etab .wp-block-image img, .is-style-rond img { border-radius: 50%; aspect-ratio: 1; object-fit: cover; transition: transform .3s; }
.alhpi-etab .wp-block-image { width: 80%; margin: 0 auto 20px; }
.alhpi-etab:hover .wp-block-image img { transform: scale(1.1); }
.alhpi-etab__nom {
	display: block;
	border-radius: 100px;
	color: #fff !important;
	font-style: italic;
	font-weight: 700;
	font-size: 1.2rem;
	padding: 0.4rem 1rem;
	margin: 0;
}
.alhpi-etab__nom a { color: #fff !important; }
.alhpi-etab--source .alhpi-etab__nom { background: #F39322; }
.alhpi-etab--parc .alhpi-etab__nom { background: #D23232; }
.alhpi-etab--saj .alhpi-etab__nom { background: #2CB112; }
.alhpi-etab--elan .alhpi-etab__nom { background: #616C74; }
.alhpi-etab--serdac .alhpi-etab__nom { background: #3DA2CF; }
.alhpi-etab--source:hover img { filter: grayscale(100%) brightness(100%) sepia(80%) hue-rotate(-15deg) saturate(500%) contrast(0.8); }
.alhpi-etab--parc:hover img { filter: grayscale(100%) brightness(40%) sepia(100%) hue-rotate(-50deg) saturate(700%) contrast(0.8); }
.alhpi-etab--saj:hover img { filter: grayscale(100%) brightness(60%) sepia(100%) hue-rotate(45deg) saturate(600%) contrast(0.8); }
.alhpi-etab--elan:hover img { filter: grayscale(100%) brightness(80%); }
.alhpi-etab--serdac:hover img { filter: grayscale(100%) brightness(90%) sepia(50%) hue-rotate(-195deg) saturate(800%) contrast(0.8); }

/* ---------- Accueil : raccourcis Actualités / Offres / Partenaires ---------- */
.alhpi-raccourcis { gap: 0 !important; }
.alhpi-raccourci {
	display: flex;
	align-items: center;
	min-height: 33.33%;
	flex: 1;
	margin: 0 !important;
	padding: 1rem;
	color: #fff;
	font-size: 2rem;
	line-height: 3rem;
	background: var(--alhpi-vert);
}
.alhpi-raccourci:nth-child(2) { background: var(--alhpi-vert-clair); }
.alhpi-raccourci a { color: #fff; display: flex; align-items: center; width: 100%; }
.alhpi-raccourci a::before {
	content: "";
	flex: 0 0 100px;
	height: 100px;
	margin: 0 3rem;
	background: var(--alhpi-icone) no-repeat center / contain;
}
.alhpi-raccourci--actus { --alhpi-icone: url("../icons/actus.svg"); }
.alhpi-raccourci--offres { --alhpi-icone: url("../icons/offres.svg"); }
.alhpi-raccourci--partenaires { --alhpi-icone: url("../icons/partenaires.svg"); }
.alhpi-raccourci strong { font-weight: 700; }
@media (max-width: 1440px) { .alhpi-raccourci a::before { flex-basis: 50px; height: 50px; margin: 0 1.5rem 0 1rem; } }
@media (max-width: 1150px) { .alhpi-raccourci { font-size: 1.5rem; line-height: 2rem; } }
@media (max-width: 870px) { .alhpi-raccourci { font-size: 1.25rem; line-height: 1.5rem; padding: 0.75rem; } }

/* ---------- Formulaires Contact Form 7 ---------- */
.wpcf7-text, .wpcf7-textarea, .wpcf7-email, .wpcf7-tel {
	border: 1px solid #AAB6C9;
	border-radius: 25px;
	color: #707070;
	padding: 8px 20px;
	width: 100%;
	box-sizing: border-box;
	font: inherit;
	font-size: 1rem;
	transition: all .3s ease-in-out;
}
.wpcf7-text:focus, .wpcf7-textarea:focus, .wpcf7-email:focus, .wpcf7-tel:focus { border-color: var(--alhpi-vert); outline: none; }
.wpcf7 ::placeholder { color: #AAB6C9; }
.wpcf7-submit {
	width: 100%;
	height: 3.5rem;
	font-size: 1.2rem;
	background: var(--alhpi-orange);
	border: 1px solid var(--alhpi-orange);
	border-radius: 30px;
	color: #fff;
	cursor: pointer;
}
.wpcf7-submit:hover { background: transparent; color: var(--alhpi-orange); }

/* ---------- Divers ---------- */
.alhpi-arrondi img, .alhpi-arrondi { border-radius: 10px; }
.wp-block-button.is-style-outline > .wp-block-button__link { background: transparent; }
.alhpi-section-grise { background: #F4F4F4; }

/* ---------- Contenus convertis depuis Elementor ---------- */
.alhpi-page > .wp-block-post-content > .alignfull:first-child { margin-top: 0; }
.alhpi-page .wp-block-post-content > * + * { margin-block-start: 0; }
.alhpi-section-pleine > .wp-block-columns { max-width: none !important; }
.alhpi-trait-court { margin-left: auto !important; margin-right: auto !important; border: 0; height: 3px; }
hr.wp-block-separator.has-background { border: 0; }

/* Fiche d'établissement : libellés avec liseré à gauche */
.wp-block-columns:has(> .wp-block-column[style*="border-left"]) { margin: 0 !important; gap: 0 !important; }
.wp-block-columns:has(> .wp-block-column[style*="border-left"]) p { margin: 0; padding: 1rem 0 0 2rem; font-size: 1rem; font-weight: 700; line-height: 1.2; }

/* Onglets verticaux des pages établissements */
.alhpi-onglets { display: flex; gap: 0; align-items: stretch; }
.alhpi-onglets__contenus { flex: 1 0 50%; min-width: 0; }
.alhpi-onglets__titres { flex: 1 0 50%; display: flex; flex-direction: column; gap: 0 !important; }
.alhpi-onglets__contenu { padding: 1.5rem; }
.alhpi-onglets__contenu:has(> .wp-block-image:only-child) { padding: 0; }
.alhpi-onglets__contenu .wp-block-image { margin: 0; }
.alhpi-onglets__contenu .wp-block-image img { width: 100%; height: auto; }
.alhpi-onglets__titre {
	margin: 0 !important;
	flex: 1;
	max-height: 4rem;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.4rem 0 0.4rem 5%;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	cursor: pointer;
	background: var(--alhpi-etab, var(--alhpi-vert));
}
.alhpi-onglets__titre:nth-child(even) { background: var(--alhpi-etab-clair, var(--alhpi-vert-clair)); }
.alhpi-onglets__titre .alhpi-ic { width: 32px; height: 32px; flex: 0 0 32px; margin-right: 10px; }
.alhpi-onglets__titre span { transition: padding .3s ease-out; }
.alhpi-onglets__titre.est-actif span, .alhpi-onglets__titre:hover span { padding-left: 32px; }
@media (max-width: 1024px) {
	.alhpi-onglets { flex-direction: column; }
	.alhpi-onglets__titres { order: -1; }
	.alhpi-onglets__titre { font-size: 1.2rem; }
}
.etab-source { --alhpi-etab: #F39322; --alhpi-etab-clair: #EBA554; }
.etab-parc { --alhpi-etab: #D23232; --alhpi-etab-clair: #E15858; }
.etab-saj { --alhpi-etab: #2CB112; --alhpi-etab-clair: #71C461; }
.etab-elan { --alhpi-etab: #616C74; --alhpi-etab-clair: #979EA4; }
.etab-serdac { --alhpi-etab: #3DA2CF; --alhpi-etab-clair: #71C7EE; }

/* Actualités aux couleurs d'un établissement */
.alhpi-actus--source { --alhpi-actu: #F39322; } .alhpi-actus--parc { --alhpi-actu: #D23232; } .alhpi-actus--saj { --alhpi-actu: #2CB112; }
.alhpi-actus--elan { --alhpi-actu: #616C74; } .alhpi-actus--serdac { --alhpi-actu: #3DA2CF; }
.alhpi-actus[class*="alhpi-actus--"] .alhpi-carte__titre a,
.alhpi-actus[class*="alhpi-actus--"] .wp-block-post-excerpt__more-link { color: var(--alhpi-actu, var(--alhpi-vert)); }
.alhpi-actus--sans-pagination .wp-block-query-pagination { display: none; }
.wp-block-button__link .alhpi-ic { margin-right: 15px; }

/* Accueil */
.alhpi-image-accueil img { width: 100%; height: 755px; object-fit: cover; }
@media (max-width: 1024px) { .alhpi-image-accueil img { height: 500px; } }
@media (max-width: 767px) { .alhpi-image-accueil img { height: 350px; } }
.wp-block-column:has(> .alhpi-raccourci) { display: flex; flex-direction: column; align-self: stretch; }
.wp-block-column > .alhpi-raccourci { flex: 1 1 0; min-height: 0; margin: 0 !important; }

/* Boîtes à icône (page contact), services (offres d'emploi), témoignages */
.alhpi-boite-icone { display: grid; grid-template-columns: auto 1fr; column-gap: 16px; align-items: center; }
.alhpi-boite-icone__icone { grid-row: span 2; margin: 0; width: 82px; height: 82px; border-radius: 50%; background: var(--alhpi-orange); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 26px; }
.alhpi-boite-icone__titre { margin: 0; color: #AAB6C9; font-size: 14px; }
.alhpi-boite-icone > :not(.alhpi-boite-icone__icone):not(.alhpi-boite-icone__titre) { margin: 0; color: #1D1D1D; line-height: 30px; }
.alhpi-service { background: #fff; padding: 15px 45px; text-align: center; }
.alhpi-service__icone { width: 108px; height: 108px; margin: 0 auto; border-radius: 50%; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 54px; }
.alhpi-service__titre { margin: 35px 0 9px; font-size: 22px; font-weight: 700; text-transform: uppercase; color: #333; }
.alhpi-service__texte { font-size: 14px; line-height: 22px; color: #777; }
.alhpi-temoignage { background: #fff; box-shadow: inset 0 0 16px rgba(25, 25, 25, 0.13); padding: 1.5rem; border: 0; }
.alhpi-telechargement .wp-block-button__link { border-radius: 50px; }
.wp-block-image.aligncenter.is-resized { display: block; text-align: center; }
.wp-block-image.aligncenter.is-resized img { display: inline-block; }
.wp-block-image.aligncenter.is-resized figcaption { display: block; }
/* Sections pleine largeur (accueil) : colonnes bord à bord, texte décalé de 10 % comme l'ancien site */
.alhpi-section-pleine > .wp-block-columns { width: 100%; max-width: none !important; margin: 0 !important; }

/* Accueil, bandeau de bienvenue : l'image colle à l'en-tête, seul le texte est descendu (règles de l'ancien thème enfant) */
.home .wp-block-post-content > .alhpi-section-pleine:first-child { padding-top: 0 !important; }
.home .wp-block-post-content > .alhpi-section-pleine:first-child .wp-block-column:first-child { padding-top: 5.4vw !important; padding-right: 3rem !important; }
@media (max-width: 781px) { .home .wp-block-post-content > .alhpi-section-pleine:first-child { padding-right: 1rem !important; padding-left: 1rem !important; } }

/* Pages d'établissement : pas de pagination sous les actualités (comme l'ancien site) */
[class*="etab-"] .alhpi-actus .wp-block-query-pagination { display: none; }
.alhpi-siege + * { margin-top: 0; }

/* 22/10/2026, comparaison avec l'ancien site */
/* Cartes à ombre issues d'Elementor (équipes, téléchargements) : ombre et marges de l'ancien site */
.wp-block-group.is-style-carte, .wp-block-column.is-style-carte { box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.17); padding: 1rem 1.25rem; margin-block: 0.75rem; }
.wp-block-column.is-style-carte { height: auto; }
/* Accueil sur téléphone : les colonnes s'empilent, les raccourcis reprennent leur hauteur naturelle (sinon ils se chevauchent) */
@media (max-width: 781px) {
	.wp-block-column:has(> .alhpi-raccourci) { flex-basis: 100% !important; }
	.wp-block-column > .alhpi-raccourci { flex: none; min-height: 80px; }
}
/* Espace avant le bandeau « Adresse du siège », comme l'ancien site */
.wp-block-post-content > .alhpi-siege { margin-top: 2.5rem !important; }
/* Page « L'association » : liste des sous-pages */
.alhpi-sous-pages { list-style: none; padding: 0; columns: 2; font-size: 1.15rem; line-height: 2.4; }
@media (max-width: 781px) { .alhpi-sous-pages { columns: 1; } }
/* Plan du site */
.alhpi-plan ul { padding-left: 1.25rem; line-height: 1.9; }
/* Rappel « Vous pouvez modifier votre choix » (Cookie Notice, après le choix) : barre fine, et la page
   garde sa hauteur en bas pour que la barre ne cache plus la fin du pied de page */
#cookie-notice .cookie-revoke-container { padding: 4px 16px; font-size: 13px; line-height: 20px; }
#cookie-notice .cookie-revoke-container .cn-button:not(.cn-button-custom) { padding: 4px 12px; }
body.cookies-set { padding-bottom: 35px; }

/* Encadré à la place des cartes et vidéos tant que les cookies ne sont pas acceptés (functions.php) */
.alhpi-consentement { background: var(--wp--preset--color--gris-fond); border: 1px dashed #AAB6C9; padding: 2rem 1.5rem; text-align: center; margin-block: 1rem; }
.alhpi-consentement p { margin: 0.5rem 0; }
