/* CCMA ADMIN OVERRIDES */

.wp-core-ui .button-primary.hover, .wp-core-ui .button-primary:hover {
  background: var(--wp--preset--color--vert) !important;
  color: var(--wp--preset--color--beige);
  border: none;
}


/* =========================
   CCMA typography presets
========================= */

/* Special headings */

.has-display-1-font-size {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight: 500;
	line-height: 1.111em; /* 80 / 72 */
}

.has-display-2-font-size {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight: 500;
	line-height: 1.156em; /* 52 / 45 */
}

.has-display-3-font-size {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight: 500;
	line-height: 1.214em; /* 34 / 28 */
}

.has-display-4-font-size {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight: 500;
	line-height: 1.208em; /* 29 / 24 */
}

.has-display-5-font-size {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight: 500;
	line-height: 1.278em; /* 23 / 18 */
}

.has-display-6-font-size {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight: 500;
	line-height: 1.333em; /* 16 / 12 */
}

.has-display-7-font-size {
	font-family: var(--wp--preset--font-family--rock-salt);
	font-weight: 500;
	line-height: 1.2em; /* 120% */
}

/* Headings */

.has-heading-h4-font-size {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight: 400;
	line-height: 1.273em; /* 28 / 22 */
}

.has-heading-h5-font-size {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight: 400;
	line-height: 1.333em; /* 24 / 18 */
}

/* Body */

.has-body-large-font-size {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 500;
	line-height: 1.455em; /* 32 / 22 */
}

.has-body-default-font-size {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 500;
	line-height: 1.444em; /* 26 / 18 */
}

.has-body-small-font-size {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 500;
	line-height: 1.438em; /* 23 / 16 */
}

.has-body-smaller-font-size {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 500;
	line-height: 1.667em; /* 20 / 12 */
}

.has-text-single-uppercase-font-size {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 500;
	line-height: 1.8em; /* 18 / 10 */
	text-transform: uppercase;
}

/******************* HEADINGS TEXT DECORATION *********************************/

/**** COLORATION DYNAMIQUE HEADER H1 TITLE 

header h1, header h2 {
	position: relative;
	display: inline-block;
	line-height: 1;
	color: var(--wp--preset--color--beige);
	z-index: 0;
}

header h1::after, header h2::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0.08em;

	height: 0.32em;
	background-color: var(--wp--preset--color--vert);

	z-index: 2;
	pointer-events: none;
}
*/
/* Base commune */

.header-title h1 {
	max-width: 848px;
  	line-height: 1.1em;
}

/* Header clair : texte vert + soulignage beige */
body.ccma-navbar-use-green .header-title h1,
body.ccma-header-is-light .header-title h1 {
	color: var(--wp--preset--color--vert) !important;
	text-decoration: underline;
    text-decoration-color: currentcolor;
    text-decoration-thickness: auto;
	text-decoration-thickness: 20px;
	-webkit-text-decoration-color: var(--wp-preset--color--beige, #f7f1e1);
	-webkit-text-decoration-color: var(--wp-preset--color--beige, #f7f1e1);
	text-decoration-color: var(--wp-preset--color--beige, #f7f1e1);
	text-underline-offset: -8px;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

/* Header sombre : texte beige + soulignage vert */
body.ccma-navbar-use-light .header-title h1,
body.ccma-header-is-dark .header-title h1 {
	color: var(--wp--preset--color--beige) !important;
	text-decoration: underline;
    text-decoration-color: currentcolor;
    text-decoration-thickness: auto;
	text-decoration-thickness: 20px;
	-webkit-text-decoration-color: var(--wp-preset--color--vert-800, #3A4932);
	-webkit-text-decoration-color: var(--wp-preset--color--vert-800, #3A4932);
	text-decoration-color: var(--wp-preset--color--vert-800, #3A4932);
	text-underline-offset: -8px;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

/*
body.ccma-navbar-use-green .header-title h1::after,
body.ccma-header-is-light .header-title h1::after {
	background-color: var(--wp--preset--color--beige) !important;
}


body.ccma-navbar-use-light .header-title h1::after,
body.ccma-header-is-dark .header-title h1::after {
	background-color: var(--wp--preset--color--vert) !important;
}*/

.wp-site-blocks header.wp-block-template-part {
	position: relative;
	z-index: 9999
}

/*******************  CCMA MEGA MENU OVERLAY  *********************************/

.ccma-navigation-overlay {
	min-height: 100vh;
	width: 100%;
	box-sizing: border-box;
	overflow-y: auto;
	z-index: 9999;
}

.ccma-navigation-overlay__top {
	width: 100%;
	box-sizing: border-box;
}

.ccma-mega-menu-columns {
	box-sizing: border-box;
	width: 100%;
	padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60);
	gap: var(--wp--preset--spacing--50);
}

.ccma-mega-menu-columns .wp-block-page-list {
	margin: 0;
	padding-left: 0;
	list-style: none;
}

.ccma-mega-menu-columns .wp-block-page-list .wp-block-pages-list__item {
	padding-bottom: 0.4em;
}

@media (max-width: 900px) {
	.ccma-mega-menu-columns {
		flex-direction: column;
		padding-right: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}

	.ccma-mega-menu-columns > .wp-block-column {
		flex-basis: 100% !important;
		width: 100%;
	}

	.ccma-mega-menu-column-large .wp-block-columns {
		flex-direction: column;
		gap: 0;
	}

	.ccma-mega-menu-column-large .wp-block-column {
		flex-basis: 100% !important;
		width: 100%;
	}
}

/* =========================
   Navigation overlay / mega-menu
========================= */

/* Le conteneur natif de la superposition doit passer au-dessus de toute la page */
.wp-block-navigation__responsive-container.is-menu-open {
	position: fixed !important;
	inset: 0 !important;
	z-index: 999999 !important;

	background-color: var(--wp--preset--color--beige) !important;
}

/* Le dialogue interne reste au-dessus du fond */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
	position: relative;
	z-index: 999;
}

/* Le contenu du mega-menu reste au-dessus de son propre fond */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	position: relative;
	z-index: 3;
}

/* Bouton de fermeture au-dessus de tout le contenu du menu */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	position: relative;
	z-index: 4;
}

/*********   CCMA MEGA MENU NAVIGATION BAR **********/

.ccma-navbar {
	width: 100%;
	box-sizing: border-box;
}

.ccma-mega-header__inner {
	width: 100%;
	box-sizing: border-box;
	padding-right: var(--wp--preset--spacing--60);
	padding-left: var(--wp--preset--spacing--60);
}

.ccma-mega-header__branding img {
	display: block;
	max-height: 90px;
	width: auto;
}

.ccma-mega-header__tools {
	gap: var(--wp--preset--spacing--30);
}

/* Bouton d'ouverture natif du bloc Navigation */
.ccma-mega-menu-navigation .wp-block-navigation__responsive-container-open {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 69px;
	height: 45px;
	padding: 0;
	border: 0;
	border-radius: 15px;
	background: #D2DCCC;
	color: #6A855A;
	cursor: pointer;
}

/* On masque l'icône hamburger native */
.ccma-mega-menu-navigation .wp-block-navigation__responsive-container-open svg {
	display: none;
}

/* On recrée tes 3 lignes */
.ccma-mega-menu-navigation .wp-block-navigation__responsive-container-open::before {
	content: "";
	display: block;
	width: 34px;
	height: 20px;
	background:
		linear-gradient(#6A855A, #6A855A) 0 0 / 34px 2px no-repeat,
		linear-gradient(#6A855A, #6A855A) 0 9px / 34px 2px no-repeat,
		linear-gradient(#6A855A, #6A855A) 0 18px / 34px 2px no-repeat;
}

/* Évite que le conteneur responsive natif parasite ton affichage */


@media (max-width: 900px) {
	.ccma-mega-header__inner {
		padding-right: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}

	.ccma-mega-header__tools {
		gap: var(--wp--preset--spacing--20);
	}

	.ccma-mega-header__tools .wp-block-search {
		max-width: 220px;
	}
}

/**** CCMA MEGA MENU NAVIGATION BAR - CLOSE ****/

.ccma-overlay-close,
.ccma-overlay-close button,
.ccma-overlay-close .wp-block-navigation-overlay-close {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 45px;
	height: 45px;
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	color: transparent;
	font-size: 0;
	line-height: 0;
	cursor: pointer;
}

.ccma-overlay-close::before,
.ccma-overlay-close button::before,
.ccma-overlay-close .wp-block-navigation-overlay-close::before {
	content: "";
	display: block;
	width: 45px;
	height: 45px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg width='45' height='45' viewBox='0 0 45 45' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='44.0417' height='45' rx='15' fill='%23D2DCCC'/%3E%3Cline y1='-1' x2='34' y2='-1' transform='matrix(-0.707107 -0.707107 -0.707107 0.707107 34.0417 35.0416)' stroke='%236A855A' stroke-width='2'/%3E%3Cline y1='-1' x2='34' y2='-1' transform='matrix(0.707107 -0.707107 -0.707107 -0.707107 10 34)' stroke='%236A855A' stroke-width='2'/%3E%3C/svg%3E");
}

.ccma-overlay-close svg {
	display: none;
}

/******** COLORATION DYNAMIQUE NAVBAR ************/

:root {
	--ccma-navbar-green: #6A855A;
	--ccma-navbar-cream: #F7F1E1;
}

/* Logo : vert -> crème si le header est sombre */
body.ccma-navbar-use-light .ccma-navbar-logo svg [fill="#6A855A"],
body.ccma-navbar-use-light .ccma-navbar-logo svg [fill="#6a855a"] {
	fill: var(--ccma-navbar-cream) !important;
}

body.ccma-navbar-use-light .ccma-navbar-logo svg [stroke="#6A855A"],
body.ccma-navbar-use-light .ccma-navbar-logo svg [stroke="#6a855a"] {
	stroke: var(--ccma-navbar-cream) !important;
}


body.home .ccma-navbar-logo svg [fill="#6A855A"],
body.home .ccma-navbar-logo svg [stroke="#6A855A"] {
	fill: var(--ccma-navbar-green) !important;
}

/*
 * Icônes chat/recherche :
 * - le fond vert devient crème
 * - le pictogramme crème devient vert
 * Sinon le pictogramme deviendrait invisible.
 */
body.ccma-navbar-use-light .ccma-navbar-icon svg rect[fill="#6A855A"],
body.ccma-navbar-use-light .ccma-navbar-icon svg rect[fill="#6a855a"] {
	fill: var(--ccma-navbar-cream) !important;
}

body.ccma-navbar-use-light .ccma-navbar-icon svg path[fill="#F7F1E1"],
body.ccma-navbar-use-light .ccma-navbar-icon svg path[fill="#f7f1e1"] {
	fill: var(--ccma-navbar-green) !important;
}

body.ccma-navbar-use-light .ccma-navbar-icon svg [stroke="#F7F1E1"],
body.ccma-navbar-use-light .ccma-navbar-icon svg [stroke="#f7f1e1"] {
	stroke: var(--ccma-navbar-green) !important;
}

/* État normal : on garde explicitement le vert */
body.ccma-navbar-use-green .ccma-navbar-logo svg [fill="#F7F1E1"],
body.ccma-navbar-use-green .ccma-navbar-logo svg [fill="#f7f1e1"] {
	fill: var(--ccma-navbar-green) !important;
}

body.home .ccma-navbar-icon svg rect[fill="#6A855A"],
body.home .ccma-navbar-logo svg [stroke="#6A855A"] {
	fill: var(--ccma-navbar-green) !important;
}

body.home .ccma-navbar-icon svg rect[fill="#6A855A"],
body.home .ccma-navbar-logo svg [stroke="#6A855A"] {
	fill: var(--ccma-navbar-green) !important;
}

body.home .ccma-navbar-icon svg path[fill="#F7F1E1"],
body.home .ccma-navbar-icon svg path[fill="#f7f1e1"] {
	fill: var(--ccma-navbar-cream) !important;
}

/* Optionnel : hamburger natif */
body.ccma-navbar-use-light .ccma-mega-menu-navigation .wp-block-navigation__responsive-container-open {
	background: #D2DCCC !important;
	color: var(--ccma-navbar-green) !important;
}

body.ccma-navbar-use-light .ccma-mega-menu-navigation .wp-block-navigation__responsive-container-open::before {
	background:
		linear-gradient(var(--ccma-navbar-green), var(--ccma-navbar-green)) 0 0 / 34px 2px no-repeat,
		linear-gradient(var(--ccma-navbar-green), var(--ccma-navbar-green)) 0 9px / 34px 2px no-repeat,
		linear-gradient(var(--ccma-navbar-green), var(--ccma-navbar-green)) 0 18px / 34px 2px no-repeat !important;
}

body.home .ccma-mega-menu-navigation .wp-block-navigation__responsive-container-open {
	background: #D2DCCC !important;
	color: var(--ccma-navbar-green) !important;
}

body.home .ccma-mega-menu-navigation .wp-block-navigation__responsive-container-open::before {
	background:
		linear-gradient(var(--ccma-navbar-green), var(--ccma-navbar-green)) 0 0 / 34px 2px no-repeat,
		linear-gradient(var(--ccma-navbar-green), var(--ccma-navbar-green)) 0 9px / 34px 2px no-repeat,
		linear-gradient(var(--ccma-navbar-green), var(--ccma-navbar-green)) 0 18px / 34px 2px no-repeat !important;
}


/************  CORRECTIF EMPILEMENT MODAL / COVER WAVE *******************/

.ccma-header {
	position: relative;
	overflow: visible;
	z-index: 1;
}

.ccma-header .wp-block-cover__inner-container {
	position: relative;
	z-index: 3;
}

.ccma-header::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0vh;
	height: 12vh;
	background: var(--ccma-header-wave-bg, var(--wp--preset--color--beige));
	z-index: 2;
	pointer-events: none;

	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 93' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1440 93H0V42.0001C49.6214 42.0001 62.2774 79.0018 172.229 80C282.18 80.9982 294.836 24.0001 377.261 24.0001C439.08 24.0001 481.653 79.0018 605.991 80C730.328 80.9982 748.174 0 871.812 0C939.813 0 1008.84 57.0002 1091.27 57.0002C1140.72 57.0002 1171.63 31.0001 1240.66 31.0001C1328.24 31.0001 1366 63.5 1397 63.5C1428 63.5 1440 58 1440 58V93Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 93' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1440 93H0V42.0001C49.6214 42.0001 62.2774 79.0018 172.229 80C282.18 80.9982 294.836 24.0001 377.261 24.0001C439.08 24.0001 481.653 79.0018 605.991 80C730.328 80.9982 748.174 0 871.812 0C939.813 0 1008.84 57.0002 1091.27 57.0002C1140.72 57.0002 1171.63 31.0001 1240.66 31.0001C1328.24 31.0001 1366 63.5 1397 63.5C1428 63.5 1440 58 1440 58V93Z' fill='black'/%3E%3C/svg%3E");

	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.ccma-mega-menu-navigation {
	position: relative;
	z-index: 10;
}

/* Titre */
.header-title h1 {
	cursor: default;
}

/* Header clair 
body.ccma-header-is-light .header-title h1::after {
	color: var(--wp--preset--color--vert) !important;
	background-color: var(--wp--preset--color--beige) !important;
}*/

body.ccma-header-is-light .header-title .ccma-breadcrumb,
body.ccma-header-is-light .header-title .ccma-breadcrumb a,
body.ccma-header-is-light .header-title .ccma-breadcrumb-sep {
	color: var(--wp--preset--color--beige) !important;
}

/* Header sombre 
body.ccma-header-is-dark .header-title h1::after {
	color: var(--wp--preset--color--beige) !important;
	background-color: var(--wp--preset--color--vert) !important;
}*/

body.ccma-header-is-dark .header-title .ccma-breadcrumb,
body.ccma-header-is-dark .header-title .ccma-breadcrumb a,
body.ccma-header-is-dark .header-title .ccma-breadcrumb-sep {
	color: var(--wp--preset--color--beige) !important;
}

/******** FOOTER *********/

/* =========================
   Footer / zone de transition
========================= */

.ccma-footer {
	margin-block-start: 0 !important;
}

/*
 * Le parent du footer colore la zone derrière la vague.
 * C’est cette couleur qui sera visible dans les parties transparentes du masque.
 */
.wp-block-template-part:has(.ccma-footer-surface) {
	position: relative;
	padding-top: 12vw;
	background-color: var(--ccma-footer-wave-backdrop-bg, var(--wp--preset--color--beige));
	margin-top: 0 !important;
}

/*
 * Le bloc footer commence après la zone de transition.
 * Important : plus de margin-top ici.
 */
.ccma-footer-surface {
	position: relative;
	z-index: 1;
	overflow: visible;
	margin-top: 0 !important;
	background-color: var(--wp--preset--color--vert);
}

/*
 * La vague elle-même.
 * Cette couleur est celle de la forme visible.
 */
.ccma-footer-surface::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -7vw;
	height: 7vw;

	background-color: var(--ccma-footer-wave-shape-bg, var(--wp--preset--color--vert));

	z-index: 2;
	pointer-events: none;

	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 93' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1440 93H0V42.0001C49.6214 42.0001 62.2774 79.0018 172.229 80C282.18 80.9982 294.836 24.0001 377.261 24.0001C439.08 24.0001 481.653 79.0018 605.991 80C730.328 80.9982 748.174 0 871.812 0C939.813 0 1008.84 57.0002 1091.27 57.0002C1140.72 57.0002 1171.63 31.0001 1240.66 31.0001C1328.24 31.0001 1366 63.5 1397 63.5C1428 63.5 1440 58 1440 58V93Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 93' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1440 93H0V42.0001C49.6214 42.0001 62.2774 79.0018 172.229 80C282.18 80.9982 294.836 24.0001 377.261 24.0001C439.08 24.0001 481.653 79.0018 605.991 80C730.328 80.9982 748.174 0 871.812 0C939.813 0 1008.84 57.0002 1091.27 57.0002C1140.72 57.0002 1171.63 31.0001 1240.66 31.0001C1328.24 31.0001 1366 63.5 1397 63.5C1428 63.5 1440 58 1440 58V93Z' fill='black'/%3E%3C/svg%3E");

	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

/* Le contenu du footer reste au-dessus */
.ccma-footer-surface > * {
	position: relative;
	z-index: 3;
}


/* Footer : permet à l’image de remonter sur la vague */

/* Figure image mise en avant du footer */
.wp-block-image.ccma-footer-page-img {
	position: absolute;
	display: block;
	z-index: 4;

	width: 84vw;
	max-width: none;
	height: 25vw !important;

	overflow: hidden;

	box-sizing: border-box;

	padding: 0;
	line-height: 0;

	transform: translate(10%, -55%);
}

/* Lien pleine surface */
.ccma-footer-page-img__link {
	position: relative;
	display: block;
	overflow: hidden;
	color: var(--wp--preset--color--beige, #f7f1e1);
	text-decoration: none;
	width: 100%;
  	height: 100%;
}

/* Image recadrée comme un bandeau */
.ccma-footer-page-img__image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center center !important;
}

/* Texte superposé */
.ccma-footer-page-img__label {
	font-family: var(--wp--preset--font-family--sagace);
  	font-weight: 400;
	position: absolute;
	top: clamp(1.2rem, 18.2vw, 3rem);
  	left: clamp(1.4rem, 3vw, 2.4rem);
	z-index: 2;
	display: inline-block;
	color: var(--wp--preset--color--beige, #f7f1e1);
	font-size: clamp(1.4rem, 2.2vw, 2.2rem);
	line-height: 1;
	text-decoration: underline;
    text-decoration-color: currentcolor;
    text-decoration-thickness: auto;
	text-decoration-thickness: 35%;
	-webkit-text-decoration-color: var(--wp-preset--color--vert, #6a855a);
	-webkit-text-decoration-color: var(--wp-preset--color--vert, #6a855a);
	text-decoration-color: var(--wp-preset--color--vert, #6a855a);
	text-underline-offset: -10.5%;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

/* Hover léger */
.ccma-footer-page-img__link:hover .ccma-footer-page-img__image,
.ccma-footer-page-img__link:focus-visible .ccma-footer-page-img__image,
.ccma-actus-mag-card:hover .ccma-actus-mag-media img,
.ccma-archive-actus li:hover img {
	transform: scale(1.025);
}
.ccma-archive-actus li figure {
	overflow: hidden;
}
.ccma-footer-page-img__image,
.ccma-actus-mag-media img,
.ccma-archive-actus li:hover img  {
	transition: transform 0.35s ease;
}

/* Accessibilité focus */
.ccma-footer-page-img__link:focus-visible {
	outline: 3px solid var(--wp--preset--color--beige, #f7f1e1);
	outline-offset: 4px;
}

/* Responsive */
@media (max-width: 700px) {
	.ccma-footer-page-img {
		width: 84vw;
		margin-top: -3rem !important;
	}

	.ccma-footer-page-img + div {
		flex-basis: 34vw;
	}

	.ccma-footer-page-img__link {
		height: 210px;
	}

	.ccma-footer-page-img__label {
		max-width: calc(100% - 2rem);
		font-size: 1.5rem;
	}
}

/* =========================
   Petits-enfants de pages
========================= */

.ccma-page-children-block {
	width: 100%;
}

.ccma-page-children-list {
	display: grid !important;
	grid-template-columns: repeat(var(--ccma-page-children-columns, 4), minmax(0, 1fr)) !important;
	gap: 1em var(--wp--preset--spacing--50);
	list-style: none;
	margin: 0;
	padding: 0;
}

.ccma-page-children-list li a .ccma-svg-bg-shape {
	--ccma-svg-icon-width: 61px;
  	--ccma-svg-icon-height: 71px;
  	--ccma-svg-bg-width: 103.72px;
  	--ccma-svg-bg-height: 126.72px;

}

.ccma-page-children-item {
	margin: 0;
}

.ccma-page-children-title {
	margin: 0;
}

.ccma-page-children-title a {
	text-decoration: none;
}

/* Responsive */
@media (max-width: 900px) {
	.ccma-page-children-list {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 560px) {
	.ccma-page-children-list {
		grid-template-columns: 1fr !important;
	}
}

.ccma-page-children-composition .ccma-query-children-of-current-page .ccma-query-row-children .ccma-query-children-of-current-item li.ccma-page-children-item .ccma-svg-link-label {
	height: 100%;
}

.ccma-page-children-composition .ccma-query-children-of-current-page .ccma-query-row-children .ccma-query-children-of-current-item li.ccma-page-children-item .ccma-svg-inner .ccma-svg-bg-shape {
	transform: scale(0.7);
	align-self: center;
  	justify-self: center;
	width: 85% !important;
}

.ccma-page-children-composition .ccma-query-children-of-current-page .ccma-query-row-children .ccma-query-children-of-current-item li.ccma-page-children-item .ccma-svg-inner .ccma-svg-stage {
	transform: scale(0.6);
	align-self: center;
  	justify-self: center;
}

/*******************  CCMA PAGE MAIN PADDINGS  *********************************/


main .wp-block-post-content section:first-of-type {
	padding-top: var(--wp--preset--spacing--30) !important;
}

main .wp-block-post-content section:last-of-type {
	padding-bottom: var(--wp--preset--spacing--60) !important;
}

/******************  CCMA MEGA-MENU CLOSE BUTTON  *********************************/

/* =========================
   Mega-menu close toggle
========================= */

.ccma-mega-menu-close-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 45px;
	height: 45px;

	padding: 0;
	margin: 0;

	border: 0;
	border-radius: 15px;

	
	background-color: #d2dccc;
	color: var(--wp--preset--color--vert);

	cursor: pointer;
}

.ccma-mega-menu-close-toggle__icon {
	display: grid;
	place-items: center;

	width: 45px;
	height: 45px;

	line-height: 0;
	color: inherit;
}

.ccma-mega-menu-close-toggle__icon svg {
	display: block;
	width: 26px;
	height: 26px;
	color: currentColor;
	stroke: var(--wp--preset--color--vert);
	stroke-width: 2px;
}

.ccma-mega-menu-close-toggle:hover,
.ccma-mega-menu-close-toggle:focus-visible {
	background-color: #d2dccc;
	color: var(--wp--preset--color--vert);
}

.ccma-mega-menu-close-toggle:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}


/*********** CCMA MEGA MENU NAVBAR SEARCH BLOCK OVERRIDE  *********************************/

header nav .wp-block-search__button-inside .wp-block-search__inside-wrapper {
	border: 0;
	border-radius: 15px;
	background-color: var(--wp--preset--color--beige) !important;
}
header nav .wp-block-search__input {
	font-weight: 400;
	padding-bottom: 0.5em;
}

.wp-block-search__input::placeholder {
	font-weight: 300;
}

header nav .wp-block-search__button-inside .wp-block-search__inside-wrapper button {
	border: 0;
	background: var(--wp--preset--color--beige) !important;
	color: var(--wp--preset--color--vert) !important;
}

header nav .wp-block-search__button-inside.wp-block-search__icon-button.wp-block-search {
  width: 34.653vw;
}

/* ==========================================================
   Pagination de requête — apparence ccma-inline-round
   ========================================================== */

.ccma-query-pagination {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--30, 20px);
	width: 100%;
	margin-top: var(--wp--preset--spacing--50, 48px);
}

/*
 * Les blocs Previous et Next sont directement des liens <a>.
 */
.ccma-query-pagination .wp-block-query-pagination-previous,
.ccma-query-pagination .wp-block-query-pagination-next {
	--ccma-pagination-bg-color: var(
		--wp--preset--color--beige,
		#f7f1e1
	);
	--ccma-pagination-text-color: var(
		--wp--preset--color--vert,
		#6a855a
	);
	--ccma-pagination-icon-size: 27px;
	--ccma-pagination-min-height: 56px;
	--ccma-pagination-radius: 15px;
	--ccma-pagination-gap: 16px;

	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ccma-pagination-gap);

	min-height: var(--ccma-pagination-min-height);
	margin: 0;
	padding: 8px 18px;

	border: 2px solid var(--ccma-pagination-text-color);
	border-radius: var(--ccma-pagination-radius);

	background-color: var(--ccma-pagination-bg-color);
	color: var(--ccma-pagination-text-color) !important;

	font-family:
		var(--wp--preset--font-family--sagace),
		sans-serif;
	font-size: clamp(1rem, 0.92rem + 0.42vw, 1.34rem);
	font-style: normal;
	font-weight: 300;
	line-height: 1;
	letter-spacing: -0.035em;

	text-decoration: none !important;
	box-sizing: border-box;
	cursor: pointer;

	transition:
		transform 180ms ease,
		box-shadow 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease;
}
/*
 * Le bouton suivant reste à droite lorsqu’il est seul.
 */
.ccma-query-pagination .wp-block-query-pagination-next {
	margin-left: auto;
	padding-left: 22px;
}

/*
 * Le bouton précédent reste à gauche lorsqu’il est seul.
 */
.ccma-query-pagination .wp-block-query-pagination-previous {
	margin-right: auto;
	padding-right: 22px;
}

/* Icône SVG commune aux boutons précédent et suivant. */
.ccma-query-pagination .wp-block-query-pagination-next::after,
.ccma-query-pagination .wp-block-query-pagination-previous::before {
	content: "";

	display: block;
	flex: 0 0 var(--ccma-pagination-icon-size);

	width: var(--ccma-pagination-icon-size);
	height: var(--ccma-pagination-icon-size);

	background-color: var(--ccma-pagination-text-color);

	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='-2 -2 28.625 28.625' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12.3125 0C5.51221 0 0 5.51221 0 12.3125C0 19.1128 5.51221 24.625 12.3125 24.625C19.1128 24.625 24.625 19.1128 24.625 12.3125C24.625 5.51221 19.1128 0 12.3125 0ZM17.7174 12.9818C17.8947 12.8042 17.9944 12.5635 17.9944 12.3125C17.9944 12.0615 17.8947 11.8208 17.7174 11.6432L13.9289 7.85474C13.8422 7.76169 13.7376 7.68705 13.6215 7.63529C13.5053 7.58352 13.3799 7.55569 13.2527 7.55344C13.1255 7.5512 12.9992 7.57459 12.8813 7.62223C12.7633 7.66986 12.6562 7.74077 12.5663 7.8307C12.4763 7.92064 12.4054 8.02777 12.3578 8.1457C12.3102 8.26363 12.2868 8.38995 12.289 8.51712C12.2913 8.64429 12.3191 8.76971 12.3709 8.88588C12.4226 9.00206 12.4973 9.10662 12.5903 9.19333L14.7624 11.3654H7.57692C7.32573 11.3654 7.08483 11.4652 6.90721 11.6428C6.72959 11.8204 6.62981 12.0613 6.62981 12.3125C6.62981 12.5637 6.72959 12.8046 6.90721 12.9822C7.08483 13.1598 7.32573 13.2596 7.57692 13.2596H14.7624L12.5903 15.4317C12.4973 15.5184 12.4226 15.6229 12.3709 15.7391C12.3191 15.8553 12.2913 15.9807 12.289 16.1079C12.2868 16.235 12.3102 16.3614 12.3578 16.4793C12.4054 16.5972 12.4763 16.7044 12.5663 16.7943C12.6562 16.8842 12.7633 16.9551 12.8813 17.0028C12.9992 17.0504 13.1255 17.0738 13.2527 17.0716C13.3799 17.0693 13.5053 17.0415 13.6215 16.9897C13.7376 16.9379 13.8422 16.8633 13.9289 16.7703L17.7174 12.9818Z'/%3E%3C/svg%3E");

	mask-image: url("data:image/svg+xml,%3Csvg viewBox='-2 -2 28.625 28.625' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12.3125 0C5.51221 0 0 5.51221 0 12.3125C0 19.1128 5.51221 24.625 12.3125 24.625C19.1128 24.625 24.625 19.1128 24.625 12.3125C24.625 5.51221 19.1128 0 12.3125 0ZM17.7174 12.9818C17.8947 12.8042 17.9944 12.5635 17.9944 12.3125C17.9944 12.0615 17.8947 11.8208 17.7174 11.6432L13.9289 7.85474C13.8422 7.76169 13.7376 7.68705 13.6215 7.63529C13.5053 7.58352 13.3799 7.55569 13.2527 7.55344C13.1255 7.5512 12.9992 7.57459 12.8813 7.62223C12.7633 7.66986 12.6562 7.74077 12.5663 7.8307C12.4763 7.92064 12.4054 8.02777 12.3578 8.1457C12.3102 8.26363 12.2868 8.38995 12.289 8.51712C12.2913 8.64429 12.3191 8.76971 12.3709 8.88588C12.4226 9.00206 12.4973 9.10662 12.5903 9.19333L14.7624 11.3654H7.57692C7.32573 11.3654 7.08483 11.4652 6.90721 11.6428C6.72959 11.8204 6.62981 12.0613 6.62981 12.3125C6.62981 12.5637 6.72959 12.8046 6.90721 12.9822C7.08483 13.1598 7.32573 13.2596 7.57692 13.2596H14.7624L12.5903 15.4317C12.4973 15.5184 12.4226 15.6229 12.3709 15.7391C12.3191 15.8553 12.2913 15.9807 12.289 16.1079C12.2868 16.235 12.3102 16.3614 12.3578 16.4793C12.4054 16.5972 12.4763 16.7044 12.5663 16.7943C12.6562 16.8842 12.7633 16.9551 12.8813 17.0028C12.9992 17.0504 13.1255 17.0738 13.2527 17.0716C13.3799 17.0693 13.5053 17.0415 13.6215 16.9897C13.7376 16.9379 13.8422 16.8633 13.9289 16.7703L17.7174 12.9818Z'/%3E%3C/svg%3E");

	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	-webkit-mask-position: center;
	mask-position: center;

	-webkit-mask-size: contain;
	mask-size: contain;

	transition:
		transform 180ms ease,
		background-color 180ms ease;
}

/*
 * Masque les éventuelles flèches générées nativement par WordPress
 * pour éviter d’avoir deux icônes.
 */
.ccma-query-pagination
	.wp-block-query-pagination-previous-arrow,
.ccma-query-pagination
	.wp-block-query-pagination-next-arrow {
	display: none;
}

.ccma-query-pagination .wp-block-query-pagination-previous:focus-visible,
.ccma-query-pagination .wp-block-query-pagination-next:focus-visible {
	outline-offset: 4px;
}


.ccma-query-pagination .wp-block-query-pagination-previous:hover,
.ccma-query-pagination .wp-block-query-pagination-next:hover {

	border: 2px solid var(--ccma-pagination-bg-color);
	border-radius: var(--ccma-pagination-radius);

	background-color: var(--ccma-pagination-text-color);
	color: var(--ccma-pagination-bg-color) !important;

}
.ccma-query-pagination .wp-block-query-pagination-previous:after:hover,
.ccma-query-pagination .wp-block-query-pagination-next:after:hover {
	background-color: var(--ccma-pagination-bg-color) !important;
}
/* Mobile. */
@media (max-width: 600px) {
	.ccma-query-pagination {
		align-items: stretch;
	}

	.ccma-query-pagination .wp-block-query-pagination-previous,
	.ccma-query-pagination .wp-block-query-pagination-next {
		--ccma-pagination-min-height: 52px;
		--ccma-pagination-gap: 12px;

		max-width: 100%;
		padding: 8px 15px 8px 18px;
		font-size: 1rem;
	}
}

/* Icône du bloc Accordéon natif. */
.wp-block-accordion-heading__toggle-icon {
	display: inline-block;
	flex: 0 0 28px;

	width: 28px;
	height: 28px;

	/* Masque le caractère "+" sans supprimer le span. */
	overflow: hidden;
	color: transparent;
	font-size: 0;
	line-height: 0;

	background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 13.6875C0 21.2472 6.12779 27.375 13.6875 27.375C21.2472 27.375 27.375 21.2472 27.375 13.6875C27.375 6.12779 21.2472 0 13.6875 0C6.12779 0 0 6.12779 0 13.6875ZM14.4315 7.67904C14.2341 7.48187 13.9665 7.37112 13.6875 7.37112C13.4085 7.37112 13.1409 7.48187 12.9435 7.67904L8.73192 11.8906C8.62848 11.987 8.54551 12.1032 8.48796 12.2324C8.43041 12.3615 8.39947 12.5009 8.39698 12.6423C8.39448 12.7837 8.42049 12.9241 8.47344 13.0552C8.5264 13.1863 8.60522 13.3054 8.7052 13.4054C8.80518 13.5054 8.92427 13.5842 9.05537 13.6371C9.18647 13.6901 9.3269 13.7161 9.46827 13.7136C9.60964 13.7111 9.74906 13.6802 9.87822 13.6226C10.0074 13.5651 10.1236 13.4821 10.22 13.3787L12.6346 10.964L12.6346 18.9519C12.6346 19.2312 12.7455 19.499 12.943 19.6964C13.1405 19.8939 13.4083 20.0048 13.6875 20.0048C13.9667 20.0048 14.2345 19.8939 14.432 19.6964C14.6295 19.499 14.7404 19.2312 14.7404 18.9519L14.7404 10.964L17.155 13.3787C17.2514 13.4821 17.3676 13.5651 17.4968 13.6226C17.6259 13.6802 17.7654 13.7111 17.9067 13.7136C18.0481 13.7161 18.1885 13.6901 18.3196 13.6371C18.4507 13.5842 18.5698 13.5054 18.6698 13.4054C18.7698 13.3054 18.8486 13.1863 18.9016 13.0552C18.9545 12.9241 18.9805 12.7837 18.978 12.6423C18.9755 12.5009 18.9446 12.3615 18.887 12.2324C18.8295 12.1032 18.7465 11.987 18.6431 11.8906L14.4315 7.67904Z' fill='%236A855A'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;

	/* Flèche vers le bas lorsque l’accordéon est fermé. */
	transform: rotate(180deg);

	transition: transform 200ms ease;
}

/* Flèche vers le haut lorsque l’accordéon est ouvert. */
.wp-block-accordion-item.is-open
	.wp-block-accordion-heading__toggle-icon,
.wp-block-accordion-heading__toggle[aria-expanded="true"]
	.wp-block-accordion-heading__toggle-icon {
	transform: rotate(0deg);
}

.wp-block-accordion-heading__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	width: 100%;
}

.wp-block-accordion-item {
	border-bottom: 1px solid var(--wp--preset--color--vert);
}

.wp-block-accordion-panel {
	padding-bottom: 15px;
  	padding-top: 20px;
  	margin-block-start: 0;
}

.wp-block-accordion-heading {
	
	font-weight: 400;
}

.wp-block-accordion-heading__toggle-title {
	flex: 1;
	text-align: left;
}

/* Open accordion: arrow points upward. */
.wp-block-accordion-item.is-open
	> .wp-block-accordion-heading
	.wp-block-accordion-heading__toggle-icon {
	transform: rotate(0deg) !important;
}

.wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title {
  text-decoration: none;
}

.ccma-territory-section__blob .ccma-metamorph-svg {
	display: block;

	width: 100%;
	height: 100%;
	max-width: none;

	color: var(--wp--preset--color--vert-clair, #d2dccc);
}

.ccma-territory-section__blob .ccma-metamorph-svg path {
	transform-box: fill-box;
	transform-origin: center;
}

.ccma_agenda_arrow.ccma_agenda_arrow--left, .ccma_agenda_arrow.ccma_agenda_arrow--right {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	color: #6a855a;

	/* Hide any existing text content. */
	font-size: 0;
	line-height: 0;
}

/* Hide an existing icon or SVG inside the button. */
.ccma_agenda_arrow.ccma_agenda_arrow--left, .ccma_agenda_arrow.ccma_agenda_arrow--right {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/*
 * Masque uniquement l’icône SVG d’origine,
 * sans la retirer du flux.
 */
.ccma_agenda_arrow > svg {
	opacity: 0;
}

/*
 * Nouvelle icône.
 */

.ccma_agenda_arrow::before {
	content: "";

	position: absolute;
	top: 50%;
	left: 50%;

	width: 28px;
	height: 24px;

	background-color: #6a855a;

	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M15.3933 0.318692C15.5953 0.114623 15.869 0 16.1544 0C16.4398 0 16.7135 0.114623 16.9154 0.318692L27.685 11.2159C27.8867 11.4202 28 11.6972 28 11.9859C28 12.2747 27.8867 12.5517 27.685 12.756L16.9154 23.6532C16.8168 23.7602 16.698 23.8461 16.5658 23.9057C16.4337 23.9652 16.2911 23.9972 16.1465 23.9998C16.0019 24.0024 15.8583 23.9755 15.7242 23.9207C15.5901 23.8659 15.4683 23.7843 15.366 23.6808C15.2637 23.5774 15.1831 23.4541 15.129 23.3184C15.0748 23.1827 15.0482 23.0374 15.0507 22.8911C15.0533 22.7447 15.0849 22.6004 15.1438 22.4668C15.2027 22.3331 15.2875 22.2128 15.3933 22.113L24.3249 13.0756H1.07696C0.791332 13.0756 0.517403 12.9608 0.315434 12.7565C0.113465 12.5521 0 12.2749 0 11.9859C0 11.6969 0.113465 11.4197 0.315434 11.2154C0.517403 11.011 0.791332 10.8962 1.07696 10.8962H24.3249L15.3933 1.85883C15.1917 1.6545 15.0784 1.37753 15.0784 1.08876C15.0784 0.799982 15.1917 0.523014 15.3933 0.318692Z' fill='black'/%3E%3C/svg%3E")
		center / contain no-repeat;

	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M15.3933 0.318692C15.5953 0.114623 15.869 0 16.1544 0C16.4398 0 16.7135 0.114623 16.9154 0.318692L27.685 11.2159C27.8867 11.4202 28 11.6972 28 11.9859C28 12.2747 27.8867 12.5517 27.685 12.756L16.9154 23.6532C16.8168 23.7602 16.698 23.8461 16.5658 23.9057C16.4337 23.9652 16.2911 23.9972 16.1465 23.9998C16.0019 24.0024 15.8583 23.9755 15.7242 23.9207C15.5901 23.8659 15.4683 23.7843 15.366 23.6808C15.2637 23.5774 15.1831 23.4541 15.129 23.3184C15.0748 23.1827 15.0482 23.0374 15.0507 22.8911C15.0533 22.7447 15.0849 22.6004 15.1438 22.4668C15.2027 22.3331 15.2875 22.2128 15.3933 22.113L24.3249 13.0756H1.07696C0.791332 13.0756 0.517403 12.9608 0.315434 12.7565C0.113465 12.5521 0 12.2749 0 11.9859C0 11.6969 0.113465 11.4197 0.315434 11.2154C0.517403 11.011 0.791332 10.8962 1.07696 10.8962H24.3249L15.3933 1.85883C15.1917 1.6545 15.0784 1.37753 15.0784 1.08876C15.0784 0.799982 15.1917 0.523014 15.3933 0.318692Z' fill='black'/%3E%3C/svg%3E")
		center / contain no-repeat;

	transform:
		translate(-50%, -50%);

	transform-origin: center;
	pointer-events: none;
}
 
.ccma_agenda_arrow--left::before {	
	transform:
		translate(-50%, -50%)
		scaleX(-1);

}

.wp-block-button__link {
	border-width: 2px;
	padding: 16px;
	color: transparent;
  	border-color: var(--wp--preset--color--vert);
}

.ccma-footer__bottom a {
	font-size: var(--wp--preset--font-size--body-small) !important;
	font-style: normal !important;
  	font-weight: 400 !important; 
	text-decoration-color: transparent;
	text-underline-offset: 1px !important;
}
.ccma-footer__bottom a:hover {
	text-decoration-style: solid !important;
	text-decoration-color: var(--wp--preset--color--beige) !important;
	text-decoration-thickness: 1px !important;
}

.ccma-categories-carousel {
	--ccma-categories-gap: 12px;

	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center;
	justify-content: space-between;

	width: 100%;
	gap: 24px;

	overflow: visible;
}

/* Zone horizontalement scrollable */
.ccma-categories-carousel .categories-pills {
	display: flex !important;
	flex: 1 1 auto;
	flex-wrap: nowrap !important;
	align-items: center;

	/*
	 * Indispensable dans un parent display:flex :
	 * autorise la liste à devenir plus étroite que son contenu.
	 */
	min-width: 0;
	width: auto;
	max-width: 100%;

	gap: var(--ccma-categories-gap);

	margin: 0;
	padding: 5px 2px;

	overflow-x: auto;
	overflow-y: hidden;

	list-style: none;

	scroll-behavior: smooth;
	scroll-snap-type: x proximity;
	scroll-padding-inline: 2px;
	overscroll-behavior-inline: contain;

	scrollbar-width: none;
}

.ccma-categories-carousel .categories-pills::-webkit-scrollbar {
	display: none;
}

/* Une catégorie conserve sa largeur naturelle */
.ccma-categories-carousel .categories-pills > .cat-item {
	flex: 0 0 auto;

	width: auto;
	min-width: max-content;

	margin: 0 !important;
	padding: 0;

	scroll-snap-align: start;
}

/* Le lien reste sur une seule ligne */
.ccma-categories-carousel .categories-pills > .cat-item > a {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	white-space: nowrap;
}

/* Les contrôles ne doivent jamais rétrécir */
.ccma-categories-carousel__controls {
	display: flex;
	flex: 0 0 auto;
	align-items: center;

	gap: 10px;
	margin: 0;
}

/* État désactivé */
.ccma-categories-carousel .carrousel-arrow:disabled {
	opacity: 0.3;
	cursor: default;
	pointer-events: none;
}

/* Masque les contrôles lorsque toutes les catégories sont visibles */
.ccma-categories-carousel:not(.has-overflow)
	.ccma-categories-carousel__controls {
	display: none;
}

h5.archive-actus-post-title a {
	line-height: 1;
	text-decoration: underline;
    text-decoration-color: var(--wp--preset--color--vert-200);
	text-decoration-thickness: 35% !important;
	-webkit-text-decoration-color: var(--wp--preset--color--vert-200);
	text-decoration-color: var(--wp--preset--color--vert-200);
	text-underline-offset: -10.5% !important;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

.ccma-pagination-inline.ccma-pagination-inline--previous .ccma-inline-round-inner {
	flex-direction: row-reverse !important;
}

.ccma-pagination-inline--previous .ccma-inline-round-icon {
	transform: rotate(180deg);
}

.full-width-img img {
	width: 100%;
}

.ccma-square-grid > div {
	width: 100%;
	height: auto !important;
	aspect-ratio: 1 / 1;

	box-sizing: border-box;
	align-self: flex-start;

	overflow: hidden;
}/*
.ccma-square-grid > div * {
	margin-top: auto;
}*/
.ccma-square-grid > div h5 {
	margin-top: 0;
	
	text-decoration: underline;
    text-decoration-color: currentcolor;
    text-decoration-thickness: auto;
	text-decoration-color: currentcolor;
	text-decoration-thickness: auto;
	text-decoration-thickness: 35%;
	-webkit-text-decoration-color: var(--wp-preset--color--vert-800, #3A4932);
	-webkit-text-decoration-color: var(--wp-preset--color--vert-800, #3A4932);
	text-decoration-color: var(--wp-preset--color--vert-800, #3A4932);
	text-underline-offset: -10.5%;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}
.ccma-square-grid > div > :last-child {
	margin-top: 0;
}

.ccma-contact-form {
	position: relative;
}

.ccma-contact-form__honeypot {
	position: absolute !important;
	left: -10000px !important;

	width: 1px !important;
	height: 1px !important;

	overflow: hidden !important;
}

button.ccma-contact-form__submit {
	appearance: none;

	margin: 0;
	padding: 0;

	color: inherit;
	font: inherit;
	text-align: inherit;

	border: 0;

	cursor: pointer;
}

button.ccma-contact-form__submit:disabled {
	opacity: 0.55;
	cursor: wait;
}

.ccma-contact-form__notice {
	margin-bottom: 24px;
	padding: 16px 20px;

	border-radius: 10px;
}

.ccma-contact-form__notice--success {
	color: var(--wp--preset--color--vert);
	background: var(--wp--preset--color--beige);
}

.ccma-contact-form__notice--error {
	color: #842029;
	background: #f8d7da;
}

.ccma-square-grid {
	align-items: stretch;
}

/* Perspective container */
.ccma-flip-card {
	position: relative;

	width: 100%;
	min-width: 0;
	aspect-ratio: 1 / 1;

	perspective: 1200px;
}

/* Element that actually rotates */
.ccma-flip-card__inner {
	position: relative;

	width: 100%;
	height: 100%;

	transform-style: preserve-3d;
	transform: rotateY(0deg);

	transition:
		transform 700ms
		cubic-bezier(0.22, 1, 0.36, 1);

	will-change: transform;
}

/* Flipped state */
.ccma-flip-card.is-flipped .ccma-flip-card__inner {
	transform: rotateY(180deg);
}

/* Both faces occupy exactly the same space */
.ccma-flip-card__face {
	position: absolute !important;
	inset: 0;

	display: flex !important;
	flex-direction: column;

	width: 100%;
	height: 100%;
	min-height: 0;

	margin: 0 !important;

	box-sizing: border-box;
	overflow: auto;

	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;

	transform-style: preserve-3d;
}

.ccma-flip-card__front h5 + p {
	margin-top: auto;
}

/* Prevent visual flickering between the two faces */
.ccma-flip-card__front {
	justify-content: space-between;
	transform: rotateY(0deg) translateZ(1px);
}

.ccma-flip-card__back {
	justify-content: center;
	transform: rotateY(180deg) translateZ(1px);
}

/* Slight depth for the inner content */
.ccma-flip-card__face > * {
	position: relative;
	transform: translateZ(24px);
}

/* Keep the final front element at the bottom */
/*
.ccma-flip-card__front > :last-child,
.ccma-flip-card__back > :last-child {
	margin-top: auto;
}*/

/* Optional visual indication */
.ccma-flip-card__hint {
	text-decoration: underline;
	text-underline-offset: 4px;
}

/* Focus indicator */
.ccma-flip-card:focus-visible {
	outline: 3px solid var(--wp--preset--color--vert);
	outline-offset: 5px;
	border-radius: 14px;
}

@media (prefers-reduced-motion: reduce) {
	.ccma-flip-card__inner {
		transition-duration: 1ms;
	}
}

.ccma-flip-card__back {
	background-color: var(--wp--preset--color--vert-200) !important;
}