/*
Theme Name: CCMA 2026
Theme URI: https://example.com/ccma2026
Author: Clément Jouffre
Author URI: https://example.com
Description: Thème autonome CCMA 2026 dérivé de Twenty Twenty-Five.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 1.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ccma2026
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * IMPORTANT: This file is only served on the frontend when `SCRIPT_DEBUG` is enabled;
 * in most instances, the `style.min.css` file will be served. It is not recommended that you
 * use the Theme File Editor to modify this stylesheet. Instead, add the necessary style
 * overrides via "Additional CSS" in the Site Editor.
 */

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */


.ccma-territory-section.wp-block-group {
	position: relative;
	display: grid !important;
	grid-template-columns: minmax(280px, 430px) minmax(420px, 1fr);
	align-items: center;
	justify-content: center;
	gap: clamp(2rem, 5vw, 5rem);
	min-height: clamp(440px, 48vw, 560px);
	overflow: hidden;
	box-sizing: border-box;
}

.ccma-territory-section__blob {
	position: absolute;
	z-index: 1;
	right: max(-9vw, -140px);
	top: 50%;
	width: min(55vw, 720px);
	transform: translateY(-50%);
	line-height: 0;
	pointer-events: none;
}

.ccma-territory-section__map {
	position: relative;
	z-index: 2;
	justify-self: center;
	align-self: center;
	width: min(34vw, 420px);
	margin: 0 !important;
	line-height: 0;
	pointer-events: none;
}

.ccma-territory-section__content {
	position: relative;
	z-index: 3;
	align-items: flex-start !important;
	max-width: 430px;
	gap: 0 !important;
}

a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

/*
 * Prevents unnecessary scrollbars while handling long lines of preformatted text.
 * https://core.trac.wordpress.org/ticket/63875
 */
:where(pre) {
	overflow-x: auto;
}

/* ==== CCMA 2026 custom styles ==== */
/* Put small custom CSS here if needed. For block themes, prefer theme.json for most styling. */

/* header */

.ccma-header svg {
	display: block;
	margin-block-start: 0 !important;
}

.ccma-vague-beige {
	background-image: url("./assets/svg/vague-beige.svg");
	background-size: 101%;
	background-repeat: no-repeat;
	background-position: bottom;
	height: 12vh;
	position: absolute;
	transform: translateY(-12vh);
	z-index: 9999;
	width: 101vw;
}

.ccma-vague-vert {
	background-image: url("./assets/svg/vague-vert.svg");
	background-size: 101%;
	background-repeat: no-repeat;
	background-position: bottom;
	width: 101vw;
}

.ccma-svg-block.wp-block-ccma-svg {
  color: transparent;
}

.ccma-header .wp-block-cover__image-background {
	object-position: 50% 100% !important;
}

/* mega menu overlay */

.ccma-header {
	position: relative;
	z-index: 20;
}

section.ccma-mega-menu {
	position: fixed;
	inset: 0;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100%;
	margin-top: 0 !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition:
		opacity 0.25s ease,
		transform 0.25s ease,
		visibility 0s linear 0.25s;
	background-color: var(--wp--preset--color--vert) !important;
}


.ccma-mega-menu.is-open {
	display: block;
}


.ccma-mega-menu-content {
	min-height: 100dvh;
	height: 100dvh;
	display: flex;
	flex-direction: column;
	overflow-y: auto;
	box-sizing: border-box;
}


.ccma-mega-menu-columns {
	flex: 1 1 auto;
	align-content: start;
}

section.ccma-mega-menu.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
	transition:
		opacity 0.25s ease,
		transform 0.25s ease,
		visibility 0s linear 0s;
}

.ccma-mega-menu-block {
	display: none;
}

.ccma-mega-menu-columns {
	padding-top: 1.2rem;
	margin-block-start: 0 !important;
}

.ccma-mega-menu-overlay {
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.12);
	margin-block-start: 0 !important;
}

.ccma-mega-menu-overlay__inner {
	position: relative;
	min-height: 100vh;
	background: #6a855a;
	overflow-y: auto;
}

.ccma-mega-menu-toggle {
	background: transparent;
	border: 0;
	padding: 0;
	cursor: pointer;
	height: 45px !important;
}

.ccma-mega-menu-toggle__svg {
	display: block;
	width: 69px !important;
	height: auto;
}

.ccma-mega-menu-close {
	background: transparent;
	border: 0;
	font-size: 2rem;
	cursor: pointer;
}

body.ccma-mega-menu-open {
	overflow: hidden;
}

@media only screen and (min-device-width : 980px) {
	.ccma-mega-menu .wp-block-group-is-layout-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.ccma-query-children-of-current-page.grand-childs ul {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

@media only screen and (max-device-width : 980px) {
	.ccma-mega-menu .wp-block-group-is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.ccma-query-children-of-current-page.grand-childs ul {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media only screen and (max-device-width : 480px) {
	.ccma-mega-menu .wp-block-group-is-layout-grid {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	.ccma-query-children-of-current-page.grand-childs ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.wp-block-search__inside-wrapper {
	display: flex;
	align-items: end;
	background-color: var(--wp--preset--color--beige) !important;
	padding: 0 !important;
	height: 45px !important;
}

.wp-block-search__button {
	padding-top: 9px !important;
	padding-bottom: 9px !important;
	padding-right: 0.7em !important;
}

.wp-block-search__input {
	background-color: transparent !important;
	font-family: var(--wp--preset--font-family--sagace) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--vert) !important;
	height: 34px;
	padding-top: 0;
	padding-bottom: 5px;
	padding-left: 24px;
	padding-right: 24px;
	line-height: 34px;
	box-sizing: border-box;
	border: none;
	appearance: none;
	-webkit-appearance: none;
}

.wp-block-search__input::placeholder {
	line-height: 80px;
	font-family: var(--wp--preset--font-family--sagace) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--vert) !important;
}

.wp-block-search__button .search-icon {
	display: block;
	width: 1em;
	height: 1em;
	flex: 0 0 1em;
}

.ccma-page-list-parent {
	margin-bottom: 15px;
}

.ccma-page-list-parent-title {
	margin: 0;
}

.ccma-page-list-parent-title a {
	font-family: var(--wp--preset--font-family--sagace) !important;
	color: var(--wp--preset--color--beige) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 800 !important;
	line-height: 1em;
	text-decoration: none;
}

.ccma-page-list-parent-title a:hover {
	text-decoration: underline solid inherit 2px !important;
	color: var(--wp--preset--color--beige) !important;
}

.wp-block-pages-list__item.has-child {
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--small) !important;
	padding-bottom: 21px !important;
}

.wp-block-pages-list__item {
	line-height: 1.6;
}

a.wp-block-pages-list__item__link {
	font-size: inherit;
	font-weight: inherit;
	font-family: inherit;
	color: inherit;
	text-decoration: none;
}

ul.wp-block-page-list, ul.wp-block-navigation__submenu-container {
	font-size: var(--wp--preset--font-size--smaller) !important;
	font-weight: 300 !important;
	list-style: none;
	padding-left: 0;
}

.ccma-mega-menu-overlay h4 a {
  display: inline;
  background-image: linear-gradient(var(--wp--preset--color--vert-900), var(--wp--preset--color--vert-900));
  background-repeat: no-repeat;
  background-position: 0 80%;
  background-size: 100% 0.3em;
}

.ccma-mega-menu-overlay h4 a:hover {
  text-decoration: none !important;
  background-image: linear-gradient(var(--wp--preset--color--vert-900), var(--wp--preset--color--vert-900));
}

.ccma-mega-menu-overlay a {
	text-decoration: none !important;
}

.ccma-mega-menu-overlay a:hover {
	text-decoration: underline !important;
}



.ccma-mega-menu  h4 a {
  display: inline;
  background-image: linear-gradient(var(--wp--preset--color--vert-900), var(--wp--preset--color--vert-900));
  background-repeat: no-repeat;
  background-position: 0 88%;
  background-size: 100% 0.35em;
  text-decoration: none !important;
}

.ccma-mega-menu h4 a:hover {
  text-decoration: none !important;

}

.ccma-mega-menu a {
	text-decoration: none !important;
}

.ccma-mega-menu a:hover {
	text-decoration: underline !important;
}

/* breadcrumb */

.ccma-breadcrumb {
	background-color: var(--wp--preset--color--vert) !important;
	padding: 0.24em 0.68em 0.2em 0.68em;
	border-radius: 999px;
	line-height: 1em;
}
.ccma-breadcrumb ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: row; flex-wrap: wrap; gap: 0; }
.ccma-breadcrumb-item { display: inline; }
.ccma-breadcrumb-sep-item { 
	display: inline; 
	line-height: 1em;
	padding: 0 0.15em; 
	font-size: larger;
	color: var(--wp--preset--color--beige) !important;
}
.ccma-breadcrumb a { 
	text-decoration: none;
	font-family: var(--wp--preset--font-family--sagace) !important;
	color: var(--wp--preset--color--beige) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 400 !important;
	line-height: 1.4em;
 }
.ccma-breadcrumb a:hover { 
	text-decoration: underline; 
	color: var(--wp--preset--color--beige) !important;
}

/* header */

/** index **/

.header-title h1,.header-title h2,.header-title h3,.header-title h4,.header-title h5,.header-title h6 {
  display: inline;
  background-image: linear-gradient(var(--wp--preset--color--vert), var(--wp--preset--color--vert));
  background-repeat: no-repeat;
  background-position: 0 70%;
  background-size: 100% 0.3em;
  cursor: default;
}

h1.underline-none {
	background-image: none !important;
}

header .wp-block-search__inside-wrapper, .not-found-search .wp-block-search__inside-wrapper {
	background-color: #FFFFFF !important;
}

header .wp-block-search__inside-wrapper button, .not-found-search .wp-block-search__inside-wrapper button  {
	background-color: #FFFFFF !important;
}

header + main {
	margin-bottom: var(--wp--preset--spacing--60);
	padding-bottom: 2em;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* footer */

.ccma-footer__main-link-icon {
	background-color: beige;
	border-radius: 99px 84px 99px 68px;
	padding: 0.9em 0.8em;
}

.ccma-footer {
	color: #fff;
}

.ccma-footer-top {
	margin-bottom: 40px;
}

.ccma-footer-columns {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

.ccma-footer-col h3 {
	margin-bottom: 12px;
	font-weight: 700;
}

.ccma-footer-col ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.ccma-footer-col li {
	margin-bottom: 6px;
}

.ccma-footer-col a {
	color: inherit;
	text-decoration: none;
}

.ccma-footer-col a:hover {
	text-decoration: underline;
}

.ccma-footer figure {
	line-height: 0;
}

.ccma-footer__inner {
	align-items: center !important;
	flex-wrap: nowrap !important;
	padding-left: 8vw !important;
}

.ccma-footer-column-links a {
	text-decoration: none;
	border-bottom: 2px solid var(--wp--preset--color--beige);
	padding-bottom: 1px;
}

.ccma-footer-column-links figure {
	padding: 12px 10px;
}

.ccma-footer-column-links figure img {
	vertical-align: center;
}

.ccma-footer__main-link:hover a {
	text-decoration: none;
	border-bottom: none;
}

/* SVG Blocks Plugin */

.ccma-svg-block svg {
	display: block;
	max-width: 100%;
	height: auto;
}

/* Le Mag' */

.wp-block-post-featured-image {
	width: 100% !important;
}

/* Cards */

.ccma-post-card-img {
	aspect-ratio: 1/1.77 !important;
	min-width: 14em;
}

.ccma-post-card-title {
	position: absolute;
  	transform: translateX(-16%) translateY(-70%);
	width: 18%;
	min-width: 8em;
}

.ccma-postcard-more-wrapper {
	width: 100% !important;
}

/* FOOTER PAGE IMG*/

/*.wp-site-blocks main + .wp-block-template-part {
	position: absolute;
	transform: translateY(-10em);
}

.ccma-footer-page-img {
	position: relative;
  	z-index: 999;
  	transform: translate(10vw, 20vw);
  	width: 80vw;
}

.ccma-footer-page-img > a {
	width: 100%;
}

.ccma-footer-page-img img {
 	width: 100%;
}*/

/* Footer : permet à l’image de remonter sur la vague */
footer.ccma-footer {
	position: absolute;
  	transform: translateY(-24vw);
}

/* Figure image mise en avant du footer */
.ccma-footer-page-img {
	position: relative;
	z-index: 3;
	width: 84vw;
	/*width: min(84vw, 1024px);*/
	margin: clamp(-6.5rem, -7vw, -3rem) auto 0 auto !important;
	padding: 0;
	position: absolute;
  	transform: translateX(8vw) translateY(-8vw);
}

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

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

/* Texte superposé */
.ccma-footer-page-img__label {
	position: absolute;
	top: clamp(1.2rem, 2.2vw, 2rem);
	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);
	font-weight: 700;
	line-height: 1;
	text-decoration-line: underline;
	text-decoration-thickness: 0.18em;
	/*text-underline-offset: -0.09em;*/
	text-decoration-inset: auto;
	text-decoration-color: var(--wp--preset--color--vert, #6a855a);
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.18);
}

/* 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 {
	transform: scale(1.025);
}

.ccma-footer-page-img__image {
	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;
	}
}

/*main.wp-block-post-content > * { margin-top: var(--wp--preset--spacing--50) !important; }
main.wp-block-post-content > *:first-child { margin-top: 0 !important; }
*/


.wp-block-cover {
	background-color: white;
}

.wp-block-post-template > li:nth-child(even) .ccma-query-row-children {
	flex-direction: row-reverse !important;
}
.wp-block-post-template > li .ccma-query-row-children .wp-block-post-excerpt__excerpt {
	max-width : 50vw !important;
}

body.ccma-has-grandchildren .ccma-smart-layout-level-2 {
	display: none !important;
}

body.ccma-no-grandchildren .ccma-smart-layout-level-1 {
	display: none !important;
}

/* ELUS CARDS */

.ccma-elu-featured-card {
	gap: 7.5vw;
	align-items: center;
	padding: 0 14vw;
}

.ccma-elu-featured-media {
	flex: 0 0 30vw;
	max-width: 30vw;
	padding: 0 !important;
}

.ccma-elu-featured-media .wp-block-post-featured-image {
	margin: 0;
	width: 100%;
}

.ccma-elu-featured-media .wp-block-post-featured-image img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.ccma-elu-featured-content {
	flex: 1 1 auto;
	align-items: flex-start;
	gap: 0.35rem;
}

.ccma-elu-featured-function {
	margin: 0;
	font-size: 2rem;
	line-height: 2;
	color: var(--wp--preset--color--vert);
	font-family: var(--wp--preset--font-family--rocksalt) !important;
	font-weight: 400;
	letter-spacing: 0.02em;
}

.ccma-elu-featured-function a {
	color: inherit;
	text-decoration: none;
	pointer-events: none;
}

.ccma-elu-featured-name {
	margin: 0;
	font-size: clamp(2rem, 3vw, 3.2rem);
	line-height: 0.95;
	font-weight: 700;
}

.ccma-elu-featured-excerpt {
	margin-top: 0.75rem;
	max-width: 34rem;
	font-size: 1.1rem;
	line-height: 1.55;
}

.ccma-elu-featured-excerpt p {
	margin: 0;
}

@media (max-width: 900px) {
	.ccma-elu-featured-card {
		flex-wrap: wrap !important;
		gap: 2rem;
	}

	.ccma-elu-featured-media {
		flex: 0 0 100%;
		max-width: 100%;
	}

	.ccma-elu-featured-content {
		width: 100%;
	}
}

.ccma-elu-vp-section {
	background: var(--wp--preset--color--vert);
	padding: clamp(2rem, 4vw, 3.5rem);
	color: var(--wp--preset--color--beige);
	position: relative !important;
	overflow: visible !important;
	padding: 2em 14vw !important;
  	margin-top: 3em;
}

.ccma-elu-vp-header {
	margin-bottom: 1.75rem;
	gap: 2rem;
	align-items: flex-start;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	position: relative !important;
	z-index: 30 !important;
}

.ccma-elu-vp-heading {
	gap: 0.15rem;
}

.ccma-elu-vp-kicker {
	margin: 0;
	color: var(--wp--preset--color--beige);
	font-family: var(--wp--preset--font-family--rocksalt) !important;
	font-weight: 400;
	letter-spacing: 0.02em;
	font-size: clamp(1.7rem, 2vw, 2.2rem);
	line-height: 2;
}

.ccma-elu-vp-title {
	margin: 0;
	color: var(--wp--preset--color--beige);
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1;
	font-weight: 500;
}

.ccma-elu-vp-nav {
	display: flex;
	gap: 0.45rem;
	align-items: center;
	padding-top: 0.5rem;
	position: relative !important;
	z-index: 40 !important;
}

.ccma-elu-vp-nav-btn {
	position: relative !important;
	z-index: 50 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	/*border: 2px solid rgba(247, 241, 225, 0.9);*/
	border-radius: 15px;
	background: transparent;
	color: var(--wp--preset--color--beige);
	font-size: 1rem;
	line-height: 1;
	cursor: pointer;
	transition: transform 0.18s ease, background-color 0.18s ease, color 0.18s ease;
}

.ccma-elu-vp-nav-btn:hover {
	/*background: var(--wp--preset--color--beige);*/
	color: var(--wp--preset--color--vert);
	transform: translateY(-1px);
}

.ccma-elu-vp-query {
	--ccma-vp-bleed-left: 0px;
	--ccma-vp-bleed-right: 120px;
	position: relative !important;
	z-index: 1 !important;
	margin: 0 0 0 0 !important;
	overflow: visible !important;
	max-width: none !important;
}

.ccma-elu-vp-track {
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	gap: 1rem;

	margin-top: 0;
	margin-bottom: 0;
	margin-left: calc(var(--ccma-vp-bleed-left) * -1);
	margin-right: calc(var(--ccma-vp-bleed-right) * -1);

	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	padding-left: var(--ccma-vp-bleed-left);
	padding-right: var(--ccma-vp-bleed-right);

	width: calc(100% + var(--ccma-vp-bleed-left) + var(--ccma-vp-bleed-right));
	box-sizing: border-box;

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

	scroll-snap-type: x proximity;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-ms-overflow-style: none;

	position: relative;
	z-index: 1;
}

.ccma-elu-vp-track::-webkit-scrollbar {
	display: none;
}

.ccma-elu-vp-track > li {
	flex: 0 0 clamp(180px, 25vw, 315px);
	margin: 0;
	scroll-snap-align: start;
	list-style: none !important;
}

.ccma-elu-vp-card {
	position: relative !important;
	z-index: 1 !important;
	gap: 0.75rem;
	padding: 0;
	background: transparent;
	align-items: center !important;
}

.ccma-elu-vp-media {
	margin: 0;
	width: 100%;
}

.ccma-elu-vp-media img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.ccma-elu-vp-card-body {
	position: relative !important;
	z-index: 1 !important;
	gap: 0.2rem;
	align-items: center;
	text-align: center;
}

.ccma-elu-vp-name {
	margin: 0;
	font-size: 1rem;
	line-height: 1.15;
	font-weight: 500;
	color: var(--wp--preset--color--beige);
}

.ccma-elu-vp-name a {
	color: inherit;
	text-decoration: none;
}

.ccma-elu-vp-name a:hover {
	text-decoration: underline;
}

.ccma-elu-vp-role {
	margin: 0;
	font-size: 0.95rem;
	line-height: 1.2;
	color: var(--wp--preset--color--beige);
	opacity: 0.95;
}

.ccma-elu-vp-role a {
	color: inherit;
	text-decoration: none;
	pointer-events: none;
}

.ccma-elu-vp-no-results {
	color: var(--wp--preset--color--beige);
	margin: 0;
}

@media (max-width: 781px) {
	.ccma-elu-vp-header {
		flex-wrap: wrap !important;
	}

	.ccma-elu-vp-query {
		--ccma-vp-bleed-right: 72px;
	}

	.ccma-elu-vp-track > li {
		flex-basis: clamp(160px, 55vw, 220px);
	}
}

/* Conteneur des boutons */
.ccma-elu-vp-nav {
	display: flex;
	align-items: center;
	gap: 0.45rem;
}

/* Boutons */
.ccma-elu-vp-nav-btn {
	display: inline-block;
	width: 45px;
	height: 45px;
	padding: 0;
	border: 0;
	border-radius: 15px;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 45px 45px;
	cursor: pointer;

	/* Masque les caractères ← et → présents dans le HTML */
	font-size: 0;
	line-height: 0;

	transition:
		transform 0.2s ease,
		opacity 0.2s ease;
}

.ccma-elu-vp-nav-btn:hover,
.ccma-elu-vp-nav-btn:focus-visible {
	transform: translateY(-1px);
}

/*.ccma-elu-vp-nav-btn:focus-visible {
	outline: 2px solid var(--wp--preset--color--beige, #f7f1e1);
	outline-offset: 3px;
}*/

/* Flèche précédente */
.ccma-elu-vp-nav-prev {
	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 x='1.5' y='1.5' width='42' height='42' rx='13.5' stroke='%23F7F1E1' stroke-width='3'/%3E%3Cpath d='M23 13.5L14 22.5L23 31.5M14 22.5H31' stroke='%23F7F1E1' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Flèche suivante */
.ccma-elu-vp-nav-next {
	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 x='1.5' y='1.5' width='42' height='42' rx='13.5' stroke='%23F7F1E1' stroke-width='3'/%3E%3Cpath d='M22 13.5L31 22.5L22 31.5M14 22.5H31' stroke='%23F7F1E1' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.ccma-elu-delegues-section {
	background: var(--wp--preset--color--beige);
	color: var(--wp--preset--color--contrast, #222);
	padding: clamp(2rem, 4vw, 3.5rem);
	padding: 2em 14vw !important;
  	margin-top: 3em;
}

.ccma-elu-delegues-header {
	margin-bottom: 1.75rem;
	gap: 2rem;
	align-items: flex-start;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
}

.ccma-elu-delegues-kicker {
	margin: 0;
	color: var(--wp--preset--color--vert) !important;
	font-family: var(--wp--preset--font-family--rocksalt) !important;
	font-weight: 400;
	letter-spacing: 0.02em;
	font-size: clamp(1.8rem, 2vw, 2.3rem);
	line-height: 1;
}

.ccma-elu-delegues-title {
	margin: 0;
	color: var(--wp--preset--color--contrast, #222);
	font-size: clamp(2rem, 3vw, 3.1rem);
	line-height: 1;
	font-weight: 700;
}

.ccma-elu-delegues-query {
	margin: 0 0 0 0 !important;
	max-width: none !important;
}

.ccma-elu-delegues-grid {
	row-gap: 2.2rem;
	column-gap: 1rem;
}

.ccma-elu-delegues-grid > li {
	margin: 0;
	list-style: none;
}

.ccma-elu-delegues-card {
	gap: 0.7rem;
	padding: 0;
	background: transparent;
}

.ccma-elu-delegues-media {
	margin: 0;
	width: 100%;
}

.ccma-elu-delegues-media img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.ccma-elu-delegues-card-body {
	gap: 0.15rem;
	align-items: center;
	text-align: center;
}

.ccma-elu-delegues-name {
	margin: 0;
	font-size: 1rem;
	line-height: 1.15;
	font-weight: 700;
	color: var(--wp--preset--color--vert);
}

.ccma-elu-delegues-name a {
	color: inherit;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.12em;
}

.ccma-elu-delegues-role {
	margin: 0.1rem 0 0;
	font-size: 0.95rem;
	line-height: 1.2;
	color: var(--wp--preset--color--contrast, #222);
}

.ccma-elu-delegues-role a {
	color: inherit;
	text-decoration: none;
	pointer-events: none;
}

.ccma-elu-delegues-no-results {
	margin: 0;
}

@media (max-width: 1200px) {
	.ccma-elu-delegues-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 900px) {
	.ccma-elu-delegues-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 640px) {
	.ccma-elu-delegues-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}


/* ACTUS CAROUSEL */

.ccma-actus-mag-section {
	position: relative;
	overflow: visible !important;
}

/* Header */
.ccma-actus-mag-header {
	display: grid !important;
	grid-template-columns: minmax(180px, 260px) minmax(320px, 480px);
	align-items: start;
	justify-content: start;
	gap: clamp(2rem, 5vw, 4rem);
	margin-left: var(--ccma-mag-gutter) !important;
	margin-right: var(--ccma-mag-gutter) !important;
	max-width: none !important;
}

.ccma-actus-mag-heading {
	gap: 0 !important;
	align-items: flex-start !important;
}

.ccma-actus-mag-heading .wp-block-heading {
	margin: 0;
	line-height: 1;
}

.ccma-actus-mag-heading .wp-block-heading:first-child {
	margin-bottom: 0.15em;
}

.ccma-actus-mag-intro {
	max-width: 460px;
	margin: 0 !important;
	line-height: 1.25;
}

/* Query wrapper */
.ccma-actus-mag-query {
	position: relative;
	overflow: visible !important;
}

/* Horizontal carousel track */
.ccma-actus-mag-track {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;

	gap: clamp(2rem, 4vw, 5rem);

	width: 100vw;
	max-width: none !important;

	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;

	padding-top: 1.8rem !important;
	padding-right: max(8vw, var(--wp--preset--spacing--70, 4rem)) !important;
	padding-bottom: 2.8rem !important;
	padding-left: max(8vw, var(--wp--preset--spacing--70, 4rem)) !important;

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

	scroll-snap-type: x mandatory;
	scroll-padding-left: max(8vw, var(--wp--preset--spacing--70, 4rem));
	-webkit-overflow-scrolling: touch;

	box-sizing: border-box;
	list-style: none;
}

/* Hide scrollbar visually */
.ccma-actus-mag-track {
	scrollbar-width: none;
}

.ccma-actus-mag-track::-webkit-scrollbar {
	display: none;
}

/* Gutenberg post-template li */
.ccma-actus-mag-track > .wp-block-post {
	flex: 0 0 clamp(230px, 23vw, 290px);
	width: clamp(230px, 23vw, 290px);
	scroll-snap-align: start;
}

/* Card */
.ccma-actus-mag-card {
	position: relative;
	display: flex !important;
	flex-direction: column;
	align-items: stretch !important;
	gap: 0 !important;
	width: 100%;
	margin: 0;
	overflow: visible;
}

/* Category pill */
.ccma-actus-mag-category {
	position: absolute;
	z-index: 3;
	top: -1.15rem;
	right: -1.6rem;

	margin: 0;
	padding: 0.75em 1.1em;

	border-radius: 12px;
	background: color-mix(in srgb, var(--wp--preset--color--contrast, #1f2d1f) 88%, black);
	color: var(--wp--preset--color--vert);

	font-size: 0.9rem;
	line-height: 1;
}

.ccma-actus-mag-category a {
	color: var(--wp--preset--color--vert);
	text-decoration: none;
	font-size: var(--wp--preset--font-size--small);
}

/* Image */
/* Fixed media height instead of fixed image width */
.ccma-actus-mag-media {
	width: 100%;
	height: 593px;
	margin: 0 !important;
	overflow: hidden;
	aspect-ratio: auto !important;
}

.ccma-actus-mag-media img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center;
}

@media (max-width: 900px) {
	.ccma-actus-mag-media {
		height: 360px;
	}
}

@media (max-width: 520px) {
	.ccma-actus-mag-media {
		height: 320px;
	}
}

/* Title bubble */
.ccma-actus-mag-title {
	position: relative;
	z-index: 2;

	width: calc(100% - 3.2rem);
	margin: -2.65rem 0 0 -2.2rem !important;

	border-radius: 10px !important;
	background: var(--wp--preset--color--beige, #f7f1e1);
	color: var(--wp--preset--color--vert, #6a855a);

	box-sizing: border-box;
	line-height: 1.05;
}

.ccma-actus-mag-title a {
	display: block;
	color: inherit !important;
	text-decoration: none;
}

/* Round arrow attached to the title */
.ccma-actus-mag-title::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -2.05rem;
	width: 2.15rem;
	height: 2.15rem;
	transform: translateY(-50%);

	border-radius: 999px;
	background-color: var(--wp--preset--color--contrast, #1f2d1f);
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 10H15M10.5 5L15.5 10L10.5 15' stroke='%23F7F1E1' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.2rem 1.2rem;
	pointer-events: none;
}

/* Footer */
.ccma-actus-mag-footer {
	display: flex !important;
	align-items: center;
	justify-content: space-between !important;
	gap: 2rem;

	margin-top: 1.2rem;
	margin-left: var(--ccma-mag-gutter) !important;
	margin-right: var(--ccma-mag-gutter) !important;
	max-width: none !important;
}

/* Carousel controls */
.ccma-actus-mag-controls {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-left: auto;
	margin-right: 9vw;
}

.ccma-actus-mag-arrow {
	width: 45px;
	height: 45px;
	padding: 0;
	border: 0;
	border-radius: 15px;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 45px 45px;
	cursor: pointer;
}

/* Flèche précédente */
.ccma-actus-mag-arrow--prev {
	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 x='1.5' y='1.5' width='42' height='42' rx='13.5' stroke='%23F7F1E1' stroke-width='3'/%3E%3Cpath d='M23 13.5L14 22.5L23 31.5M14 22.5H31' stroke='%23F7F1E1' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Flèche suivante */
.ccma-actus-mag-arrow--next {
	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 x='1.5' y='1.5' width='42' height='42' rx='13.5' stroke='%23F7F1E1' stroke-width='3'/%3E%3Cpath d='M22 13.5L31 22.5L22 31.5M14 22.5H31' stroke='%23F7F1E1' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.ccma-actus-mag-arrow:hover,
.ccma-actus-mag-arrow:focus-visible {
	background-color: color-mix(in srgb, var(--wp--preset--color--beige, #f7f1e1) 16%, transparent);
	transform: translateY(-1px);
}

.ccma-actus-mag-arrow:focus-visible {
	outline: 2px solid var(--wp--preset--color--beige, #f7f1e1);
	outline-offset: 3px;
}

/* No results */
.ccma-actus-mag-no-results {
	margin-left: var(--ccma-mag-gutter);
	color: var(--wp--preset--color--beige, #f7f1e1);
}

/* Responsive */
@media (max-width: 900px) {
	.ccma-actus-mag-section {
		--ccma-mag-gutter: 6vw;
	}

	.ccma-actus-mag-header {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.ccma-actus-mag-intro {
		max-width: 620px;
	}

	.ccma-actus-mag-track > .wp-block-post {
		flex-basis: 240px;
		width: 240px;
	}

	.ccma-actus-mag-title {
		margin-left: 0 !important;
		width: calc(100% - 2.2rem);
	}

	.ccma-actus-mag-category {
		right: -0.8rem;
	}

	.ccma-actus-mag-footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.ccma-actus-mag-controls {
		margin-left: 0;
		margin-right: 0;
	}
}

/* Force all carousel cards to align from the same top line */
.ccma-actus-mag-track {
	align-items: flex-start !important;
}

/* Reset WordPress post-template item behavior */
.ccma-actus-mag-track > .wp-block-post {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	align-self: flex-start !important;
}

/* Make every card start at the same vertical point */
.ccma-actus-mag-card {
	position: relative;
	display: flex !important;
	flex-direction: column;
	align-items: stretch !important;
	justify-content: flex-start !important;
	height: auto;
	margin: 0 !important;
	padding: 0 !important;
}

/* Make the media area identical on every card */
.ccma-actus-mag-media {
	display: block;
	width: 100%;
	margin: 0 !important;
	aspect-ratio: 2 / 3;
	overflow: hidden;
}

.ccma-actus-mag-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Prevent variable title height from moving the card itself */
.ccma-actus-mag-title {
	flex: 0 0 auto;
}

/* Liste de catégories en pills */
.wp-block-categories.categories-pills,
.categories-pills.wp-block-categories-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	padding: 0;
	margin: 0;
	list-style: none;
}

/* Items */
.categories-pills .cat-item {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Liens en pills */
.categories-pills .cat-item a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 11px 14px 7px 14px !important;
	border: 2px solid var(--wp--preset--color--vert);
	border-radius: 15px !important;
	color: var(--wp--preset--color--vert);
	background: transparent;
	text-decoration: none;
	font-family: var(--wp--preset--font-family--sagace);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 400 !important;
	line-height: 1.2;
	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		border-color 0.2s ease;
}

/* Hover / focus */
.categories-pills .cat-item a:hover,
.categories-pills .cat-item a:focus-visible {
	background: var(--wp--preset--color--vert);
	color: var(--wp--preset--color--beige);
	text-decoration: none;
}

/* Catégorie courante si WordPress ajoute current-cat */
.categories-pills .cat-item.current-cat > a,
.categories-pills .cat-item.current-cat-parent > a {
	background: var(--wp--preset--color--vert);
	color: var(--wp--preset--color--beige);
}



/***************** Header fixe ****************/

header.ccma-navbar.wp-block-template-part.ccma-fixed-navbar.is-scrolled {
	position: fixed;
	top: var(--wp--preset--spacing--40);
	left: 0;
	right: 0;
	width: 100%;
	z-index: 9999;
	/*background: color-mix(in srgb, var(--wp--preset--color--beige, #f7f1e1) 92%, transparent);*/
	transition:
		background-color 0.5s ease,
		box-shadow 0.5s ease,
		transform 0.5s ease;
}

/**************** STYLES *****************/

.is-style-text-subtitle {
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
}

/*.wp-block-post-content > * {
	padding-left: 14vw !important;
	padding-right: 14vw !important;
}*/

@media (max-width: 781px) {
  .ccma-footer__inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
    padding-left: var(--wp--preset--spacing--40, 1.5rem) !important;
    padding-right: var(--wp--preset--spacing--40, 1.5rem) !important;
    gap: var(--wp--preset--spacing--60, 2rem) !important;
	text-align: center !important;
  }

  .ccma-footer__inner > .wp-block-group,
  .ccma-footer__col,
  .ccma-footer-column-links {
    width: 100% !important;
    max-width: none !important;
    flex-basis: 100% !important;
    flex-grow: 1 !important;
    box-sizing: border-box;
  }

  .ccma-footer__col {
    align-items: center !important;
  }

  .ccma-footer-column-links {
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 1rem;
  }

  .ccma-footer__main-link {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
    justify-content: flex-start !important;
  }

  .ccma-footer__main-link h4 {
    flex: 1 1 auto;
  }

  .ccma-footer__main-link a {
    display: inline-block;
    width: 100%;
  }

  .ccma-footer__col .wp-block-group.is-nowrap {
    flex-wrap: wrap !important;
  }

  .ccma-footer__col .ccma-clickable-block {
    width: 100% !important;
    justify-content: space-between !important;
    box-sizing: border-box;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

.wp-block-post-template .entry-content p {
	padding-left: 0 !important;
	padding-right: 0 !important;
	min-height: 4em;
}

.wp-block-query-pagination-previous-arrow,
.wp-block-query-pagination-next-arrow {
	display: inline-block;
	width: 45px;
	height: 45px;
	margin: 0;
	font-size: 0;
	line-height: 0;
	vertical-align: middle;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

/* Flèche page suivante */
.wp-block-query-pagination-next-arrow::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 224 224' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='18' width='209' height='209' rx='62' fill='%236A855A'/%3E%3Cpath d='M37 121H177M116 64L177 121L116 178' stroke='%23F7F1E1' stroke-width='12' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Flèche page précédente */
.wp-block-query-pagination-previous-arrow::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 224 224' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='translate(224 0) scale(-1 1)'%3E%3Crect x='0' y='18' width='209' height='209' rx='62' fill='%236A855A'/%3E%3Cpath d='M37 121H177M116 64L177 121L116 178' stroke='%23F7F1E1' stroke-width='12' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E");
}

.footer-fluid > , .cccma-footer.wp-block-template-part {
	position: absolute;
  	transform: translateY(-20%);
}

/* Territory section */
.ccma-territory-section {
	position: relative;
	display: grid !important;
	grid-template-columns: minmax(280px, 430px) minmax(420px, 1fr);
	align-items: center;
	justify-content: center;
	gap: clamp(2rem, 5vw, 5rem);
	min-height: clamp(440px, 48vw, 560px);
	margin-inline: auto;
	padding-top: clamp(2rem, 4vw, 4rem);
	padding-bottom: clamp(2rem, 4vw, 4rem);
	overflow: hidden;
	box-sizing: border-box;
}

/* Left text column */
.ccma-territory-section__content {
	position: relative;
	z-index: 3;
	align-items: flex-start !important;
	max-width: 430px;
	gap: 0 !important;
}

/* Eyebrow */
.ccma-territory-section__content > .wp-block-heading:first-child {
	margin: 0 0 0.2rem 0;
	line-height: 1;
}

/* Main title */
.ccma-territory-section__content > .wp-block-heading:nth-child(2) {
	margin: 0 0 1.4rem 0;
	line-height: 1.05;
}

/* Paragraph */
.ccma-territory-section__content p {
	max-width: 390px;
	margin-top: 0;
	margin-bottom: 1.8rem;
	line-height: 1.25;
}

/* Hide accidental duplicated paragraph */
.ccma-territory-section__content p + p {
	display: none;
}

/* Stats row */
.ccma-territory-section__stats {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: flex-end;
	justify-content: flex-start;
	gap: clamp(0.8rem, 1.8vw, 1.8rem);
	margin-top: 1.2rem;
}

/* Stat SVG blocks */
.ccma-territory-section__stats .ccma-simple-svg-block {
	display: block;
	line-height: 0;
}

.ccma-territory-section__stats svg {
	display: block;
	width: auto;
	max-width: 100%;
	height: clamp(64px, 7vw, 98px);
}

/* Large background blob */
.ccma-territory-section__blob {
	position: absolute;
	z-index: 1;
	right: max(-9vw, -140px);
	top: 50%;
	width: min(55vw, 720px);
	transform: translateY(-50%);
	line-height: 0;
	pointer-events: none;
}

.ccma-territory-section__blob svg {
	display: block;
	width: 100%;
}

.ardeche_map {
	z-index: 9999;
	transform: translateX(50%);
}

/* Map image over the blob */
.ccma-territory-section__map {
	position: relative;
	z-index: 2;
	justify-self: center;
	align-self: center;
	width: min(34vw, 420px);
	margin: 0 !important;
	line-height: 0;
	pointer-events: none;
}

.ccma-territory-section__map img {
	display: block;
	width: 100%;
	height: auto;
	border: 0 !important;
}

/* Prevent WordPress figure spacing from interfering */
.ccma-territory-section figure {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* Responsive */
@media (max-width: 960px) {
	.ccma-territory-section {
		grid-template-columns: 1fr;
		gap: 2rem;
		padding-left: 6vw !important;
		padding-right: 6vw !important;
		overflow: visible;
	}

	.ccma-territory-section__content {
		max-width: 100%;
	}

	.ccma-territory-section__content p {
		max-width: 640px;
	}

	.ccma-territory-section__blob {
		position: absolute;
		right: -22vw;
		top: auto;
		bottom: 0;
		width: min(95vw, 680px);
		transform: none;
		opacity: 0.85;
	}

	.ccma-territory-section__map {
		width: min(72vw, 360px);
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.ccma-territory-section__stats {
		flex-wrap: wrap;
	}
}

@media (max-width: 640px) {
	.ccma-territory-section {
		padding-top: 2rem;
		padding-bottom: 3rem;
	}

	.ccma-territory-section__stats {
		gap: 0.8rem;
	}

	.ccma-territory-section__stats svg {
		height: 72px;
		max-width: 100%;
	}

	.ccma-territory-section__map {
		width: min(82vw, 320px);
	}

	.ccma-territory-section__blob {
		right: -36vw;
		width: 120vw;
	}
}

/* Main section */
.ccma-territory-section.wp-block-group {
	position: relative;
	display: grid !important;
	grid-template-columns: minmax(520px, 560px) 1fr;
	align-items: center;
	gap: clamp(2rem, 4vw, 5rem);

	min-height: clamp(440px, 42vw, 560px);
	margin-left: auto;
	margin-right: auto;
	padding-top: clamp(2.5rem, 4vw, 4.5rem);
	padding-bottom: clamp(2.5rem, 4vw, 4.5rem);

	overflow: hidden;
	box-sizing: border-box;
}

/* Left content */
.ccma-territory-section__content {
	position: relative;
	z-index: 4;
	align-items: flex-start !important;
	width: 100%;
	max-width: 560px;
	gap: 0 !important;
}

/* Small handwritten title */
.ccma-territory-section__content > .wp-block-heading:first-child {
	margin: 0 0 0.2rem 0;
	line-height: 1;
}

/* Main title */
.ccma-territory-section__content > .wp-block-heading:nth-child(2) {
	margin: 0 0 1.6rem 0;
	line-height: 1.05;
	white-space: nowrap;
}

/* Text */
.ccma-territory-section__content p {
	max-width: 430px;
	margin: 0 0 1.6rem 0;
	line-height: 1.28;
}

/* Stats */
.ccma-territory-section__stats {
	position: relative;
	z-index: 5;
	display: flex !important;
	flex-wrap: nowrap;
	align-items: flex-end;
	justify-content: flex-start;
	gap: clamp(0.7rem, 1.2vw, 1.2rem);
	width: max-content;
	max-width: none;
	margin-top: 1.6rem;
	overflow: visible;
}

/* Stat blocks */
.ccma-territory-section__stats .ccma-simple-svg-block {
	flex: 0 0 auto;
	display: block;
	line-height: 0;
	overflow: visible;
}

/* Important: scale the stat SVGs down */
.ccma-territory-section__stats svg {
	display: block;
	width: auto;
	height: clamp(58px, 6.2vw, 180px);
	max-width: none;
}

/* Map */
.ccma-territory-section__map {
	position: relative;
	z-index: 3;
	justify-self: center;
	align-self: center;

	width: min(34vw, 420px);
	margin: 0 !important;
	line-height: 0;
	pointer-events: none;
}

.ccma-territory-section__map img {
	display: block;
	width: 100%;
	height: auto;
	max-width: none;
	border: 0 !important;
}

/* Background blob */
.ccma-territory-section__blob {
	position: absolute;
	z-index: 1;
	top: 50%;
	right: max(-14vw, -210px);

	width: min(62vw, 860px);
	transform: translateY(-50%);
	line-height: 0;
	pointer-events: none;
}

.ccma-territory-section__blob svg {
	display: block;
	width: 100%;
	max-width: none;
}

/* Keep the map above the blob */
.ccma-territory-section__map {
	z-index: 2;
}

/* Make sure figures do not add unwanted margins */
.ccma-territory-section figure {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* TABLEAU */

.wp-block-table.is-style-stripes {
	border-radius: 14px 14px 0 0;
}

.wp-block-table.is-style-stripes thead {
	background-color: var(--wp--preset--color--vert);
  	color: var(--wp--preset--color--beige);
	font-weight: 500;
	border-bottom: 0 !important;
}

.wp-block-table.is-style-stripes tbody tr {
  color: var(--wp--preset--color--vert) !important;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(2n+1) {
  background-color: #ffffff;
}

/** CONTACT ***/

/* Page contact */
.ccma-contact-page {
	background: var(--wp--preset--color--beige, #f7f1e1);
	overflow: hidden;
}

.ccma-contact-page__inner {
	padding-top: clamp(3rem, 6vw, 5rem);
	padding-bottom: clamp(3rem, 6vw, 5rem);
}

/* Top section */
.ccma-contact-page__top {
	display: grid !important;
	grid-template-columns: minmax(280px, 380px) minmax(420px, 1fr);
	align-items: start;
	gap: clamp(3rem, 8vw, 8rem);
	margin-bottom: clamp(3rem, 6vw, 5rem);
}

.ccma-contact-page__info {
	align-items: flex-start !important;
	gap: 1em !important;
}

.ccma-contact-page__eyebrow {
	margin: 0 0 0.1rem 0;
	line-height: 1;
	font-size: clamp(1.15rem, 1.6vw, 1.7rem);
}

.ccma-contact-page__title {
	margin: 0 0 1.4rem 0;
	line-height: 1.05;
}

.ccma-contact-page__intro {
	max-width: 340px;
	margin: 0 0 1.5rem 0;
	line-height: 1.25;
}

/* Contact list */
.ccma-contact-list {
	display: grid;
	gap: 0.75rem;
	max-width: 370px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.95rem;
	line-height: 1.25;
}

.ccma-contact-list li {
	display: grid;
	grid-template-columns: 1rem 1fr;
	gap: 0.7rem;
	align-items: start;
}

.ccma-contact-list__icon {
	width: 0.7rem;
	height: 0.7rem;
	margin-top: 0.18rem;
	border-radius: 999px;
	background: var(--wp--preset--color--vert, #6a855a);
	position: relative;
}

.ccma-contact-list__icon::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 0.28rem;
	height: 0.28rem;
	border-radius: inherit;
	background: var(--wp--preset--color--beige, #f7f1e1);
	transform: translate(-50%, -50%);
}

.ccma-contact-list a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

/* Map placeholder */
.ccma-contact-page__map {
	width: 100%;
}

.ccma-contact-map-placeholder {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: clamp(280px, 35vw, 430px);
	background: #dddddd;
	color: #b9b9b9;
}

.ccma-contact-map-placeholder__icon {
	width: clamp(3.5rem, 6vw, 5rem);
	height: auto;
}

/* Bottom section */
.ccma-contact-page__bottom {
	display: grid !important;
	grid-template-columns: minmax(280px, 430px) minmax(360px, 1fr);
	align-items: center;
	gap: clamp(3rem, 7vw, 7rem);
}

.ccma-contact-page__illustration {
	margin: 0 !important;
	align-self: end;
}

.ccma-contact-page__illustration img {
	display: block;
	width: 100%;
	height: auto;
}

/* Form */
.ccma-contact-page__form-wrap {
	align-items: flex-start !important;
	gap: 0 !important;
	max-width: 420px;
}

.ccma-contact-form {
	width: min(100%, 420px);
	margin-top: 1.2rem;
}

.ccma-contact-form__field {
	margin: 0 0 1.1rem 0;
}

.ccma-contact-form label {
	display: block;
	margin-bottom: 0.4rem;
	font-weight: 700;
	font-size: 0.95rem;
	color: var(--wp--preset--color--contrast, #252525);
}

.ccma-contact-form input,
.ccma-contact-form textarea {
	display: block;
	width: 100%;
	border: 0;
	border-radius: 10px;
	background: #fff;
	color: var(--wp--preset--color--contrast, #252525);
	padding: 0.8rem 1rem;
	font: inherit;
	box-sizing: border-box;
}

.ccma-contact-form textarea {
	resize: vertical;
	min-height: 150px;
}

.ccma-contact-form input::placeholder,
.ccma-contact-form textarea::placeholder {
	color: #b8b8b8;
}

.ccma-contact-form input:focus,
.ccma-contact-form textarea:focus {
	outline: 2px solid var(--wp--preset--color--vert, #6a855a);
	outline-offset: 2px;
}

.ccma-contact-form__submit {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	margin-top: 0.2rem;
	padding: 0.4rem 0.75rem;
	border: 1px solid var(--wp--preset--color--vert, #6a855a);
	border-radius: 999px;
	background: transparent;
	color: var(--wp--preset--color--vert, #6a855a);
	font: inherit;
	font-size: 0.9rem;
	cursor: pointer;
}

.ccma-contact-form__submit-icon {
	display: inline-grid;
	place-items: center;
	width: 1rem;
	height: 1rem;
	border-radius: 999px;
	background: var(--wp--preset--color--vert, #6a855a);
	color: var(--wp--preset--color--beige, #f7f1e1);
	font-size: 0.75rem;
	line-height: 1;
}

.ccma-contact-form__submit:hover,
.ccma-contact-form__submit:focus-visible {
	background: var(--wp--preset--color--vert, #6a855a);
	color: var(--wp--preset--color--beige, #f7f1e1);
}

.ccma-contact-form__submit:hover .ccma-contact-form__submit-icon,
.ccma-contact-form__submit:focus-visible .ccma-contact-form__submit-icon {
	background: var(--wp--preset--color--beige, #f7f1e1);
	color: var(--wp--preset--color--vert, #6a855a);
}

/* Responsive */
@media (max-width: 900px) {
	.ccma-contact-page__top,
	.ccma-contact-page__bottom {
		grid-template-columns: 1fr;
	}

	.ccma-contact-page__map {
		order: 2;
	}

	.ccma-contact-page__info {
		order: 1;
	}

	.ccma-contact-page__illustration {
		max-width: 420px;
		margin-inline: auto !important;
	}

	.ccma-contact-page__form-wrap {
		max-width: 100%;
	}

	.ccma-contact-form {
		width: 100%;
	}
}


/*** custom pins lists ****/

.wp-block-list.is-style-ccma-list-check,
.wp-block-list.is-style-ccma-list-dot,
.wp-block-list.is-style-ccma-list-arrow,
.wp-block-list.is-style-ccma-list-pin,
.wp-block-list.is-style-ccma-list-leaf {
	list-style: none;
	padding-left: 0;
	margin-left: 0;
}

.wp-block-list.is-style-ccma-list-check li,
.wp-block-list.is-style-ccma-list-dot li,
.wp-block-list.is-style-ccma-list-arrow li,
.wp-block-list.is-style-ccma-list-pin li,
.wp-block-list.is-style-ccma-list-leaf li {
	position: relative;
	padding-left: 1.8em;
	margin-bottom: 0.65em;
	line-height: 1.35;
}

.wp-block-list.is-style-ccma-list-check li::before,
.wp-block-list.is-style-ccma-list-dot li::before,
.wp-block-list.is-style-ccma-list-arrow li::before,
.wp-block-list.is-style-ccma-list-pin li::before,
.wp-block-list.is-style-ccma-list-leaf li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.18em;
	width: 1em;
	height: 1em;
	background-color: var(--wp--preset--color--vert, #6a855a);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.wp-block-list.is-style-ccma-list-pin li::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2.5a7 7 0 0 0-7 7c0 5.2 7 12 7 12s7-6.8 7-12a7 7 0 0 0-7-7Zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5Z' fill='black'/%3E%3C/svg%3E");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;

	mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2.5a7 7 0 0 0-7 7c0 5.2 7 12 7 12s7-6.8 7-12a7 7 0 0 0-7-7Zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5Z' fill='black'/%3E%3C/svg%3E");
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
}

/** PULLQUOTE BLOCK **/

/* Pullquote CCMA */
.wp-block-pullquote.is-style-ccma-big-quotes {
	position: relative;
	margin: clamp(2rem, 5vw, 4rem) auto;
	padding: clamp(2.5rem, 15vw, 554rem) clamp(2rem, 16vw, 55rem) 0;
	border: 0;
	color: var(--wp--preset--color--contrast, #252525);
	background: transparent;
	text-align: center;
	overflow: visible;
}

.wp-block-pullquote.is-style-ccma-big-quotes blockquote {
	position: relative;
	margin: 0;
	padding: 0;
	border: 0;
}

.wp-block-pullquote.is-style-ccma-big-quotes p {
	max-width: 920px;
	margin: 0 auto;
	font-size: clamp(1.35rem, 2vw, 2rem);
	font-style: italic;
	font-weight: 400;
	line-height: 1.25;
	text-align: center;
	color: var(--wp--preset--color--contrast, #252525);
}

/* Grand guillemet ouvrant */
.wp-block-pullquote.is-style-ccma-big-quotes blockquote::before {
	content: "";
	position: absolute;
	left: clamp(-1rem, -2vw, -0.2rem);
	top: clamp(-2.9rem, -4vw, -2rem);
	width: 12vw;
	height: 10vw;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	pointer-events: none;
	z-index: -1;
	background-image: url("data:image/svg+xml;utf8,%3Csvg width='95' height='75' viewBox='0 0 95 75' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M35.038 36.9983C32.028 34.6083 28.698 32.9883 25.048 31.7383L25.328 31.8083C23.928 31.4183 22.978 30.5783 22.328 29.1483C22.008 28.3483 22.098 27.3183 22.568 26.5283C23.128 25.4083 23.738 24.3083 24.388 23.2383C27.288 18.2283 32.018 14.0183 36.468 10.3883C36.738 10.1683 38.878 8.28833 39.138 8.06833C39.358 7.88833 39.598 7.55833 39.668 7.34833C39.708 7.22833 39.678 7.23833 39.698 7.31833C39.698 7.32833 39.698 7.34833 39.718 7.35833C39.698 7.34833 39.768 7.42833 39.678 7.29833L39.328 6.77833C38.798 6.02833 38.188 5.25833 37.588 4.72833C37.678 4.76833 37.588 4.72833 37.378 4.78833C37.198 4.83833 36.938 4.94833 36.678 5.10833C22.858 14.9583 7.85796 27.9283 6.31796 45.8983C5.35796 53.3683 9.45796 60.5683 15.388 64.9583C19.168 67.8083 23.978 68.0983 28.618 66.9583C42.398 63.6383 45.838 45.5483 35.048 36.9883L35.038 36.9983ZM38.428 32.4083C49.338 40.0883 50.898 57.5283 41.618 67.1283C35.518 73.5983 25.758 76.1683 17.288 73.5383C13.058 72.2183 9.57796 69.2883 6.70796 66.0383C-5.51204 52.7183 0.747963 33.3083 11.278 21.0183C16.288 15.0583 22.138 9.94833 28.348 5.33833C31.898 3.11833 36.728 -2.49167 41.008 1.68833C42.158 2.87833 43.028 3.95833 43.838 5.35833C44.758 7.21833 44.118 9.36833 42.918 10.7683C42.208 11.6183 40.348 13.0883 39.518 13.8583L35.318 17.6183C31.888 20.7183 29.198 24.5783 27.288 28.7883L27.148 29.0783C27.518 28.4083 27.398 27.3783 27.018 26.8883C26.908 26.7883 26.618 26.6783 26.398 26.6383C30.618 27.8483 34.878 29.7683 38.438 32.4083H38.428Z' fill='%236A855A'/%3E%3Cpath d='M88.7478 50.109C88.9578 42.599 84.0178 36.809 77.3878 33.629C75.2778 32.499 73.0878 31.899 70.9278 30.669C69.4678 29.769 69.3178 27.969 69.9778 26.529C70.0478 26.409 70.3878 25.769 70.4578 25.629C74.0978 18.399 80.2778 13.089 86.2678 7.96899C86.4978 7.75899 86.7178 7.38899 86.7378 7.19899C86.7378 7.18899 86.7178 7.25899 86.7478 7.37899C86.7678 7.43899 86.7778 7.50899 86.8278 7.57899C86.8378 7.63899 86.9578 7.76899 86.8278 7.59899L84.9578 5.23899L84.7278 4.93899L84.6078 4.78899C84.6078 4.78899 84.4978 4.64899 84.5578 4.72899C84.6878 4.88899 84.7878 4.92899 84.7978 4.93899C84.8378 4.95899 84.6678 4.90899 84.5378 4.93899C76.9678 9.85899 69.3578 16.459 63.5578 23.529C58.4878 29.709 54.6978 36.999 53.7378 44.919C53.3778 47.929 53.4378 51.069 54.3978 53.929C56.6278 60.049 61.9278 66.249 68.4478 67.409C79.1278 69.169 89.2278 61.459 88.7578 50.119L88.7478 50.109ZM94.4478 50.009C95.4478 65.059 81.9378 76.399 67.2678 74.229C57.9278 72.649 50.7378 64.629 47.8778 55.949C46.5078 51.559 46.5978 46.889 47.4278 42.439C50.5878 25.459 64.2878 12.899 77.7378 3.47899C79.0078 2.57899 80.4278 1.65899 81.7378 0.798994C83.3278 -0.141006 85.0678 -0.261006 86.8378 0.488994C87.5678 0.778994 88.3378 1.53899 88.8178 2.25899L90.6478 4.65899C92.5178 6.93899 91.1778 10.289 89.0778 11.829C87.1778 13.429 85.1978 15.049 83.3878 16.669C80.0978 19.589 77.3478 22.799 75.2378 26.549C74.8578 27.179 74.5078 27.919 74.1678 28.579C74.2778 28.339 74.2578 28.339 74.2678 28.309C74.3578 27.989 73.9878 27.089 73.5878 26.839C84.3478 30.499 94.0978 37.039 94.4578 50.019L94.4478 50.009Z' fill='%236A855A'/%3E%3C/svg%3E");
}

/* Grand guillemet fermant */
.wp-block-pullquote.is-style-ccma-big-quotes blockquote::after {
	content: "";
	position: absolute;
	right: clamp(-1rem, -2vw, -0.2rem);
	bottom: clamp(-2.8rem, -4vw, -2rem);
	width: 12vw;
	height: 10vw;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	pointer-events: none;
	z-index: -1;
	background-image: url("data:image/svg+xml;utf8,%3Csvg width='95' height='75' viewBox='0 0 95 75' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='translate(95 75) scale(-1 -1)'%3E%3Cpath d='M35.038 36.9983C32.028 34.6083 28.698 32.9883 25.048 31.7383L25.328 31.8083C23.928 31.4183 22.978 30.5783 22.328 29.1483C22.008 28.3483 22.098 27.3183 22.568 26.5283C23.128 25.4083 23.738 24.3083 24.388 23.2383C27.288 18.2283 32.018 14.0183 36.468 10.3883C36.738 10.1683 38.878 8.28833 39.138 8.06833C39.358 7.88833 39.598 7.55833 39.668 7.34833C39.708 7.22833 39.678 7.23833 39.698 7.31833C39.698 7.32833 39.698 7.34833 39.718 7.35833C39.698 7.34833 39.768 7.42833 39.678 7.29833L39.328 6.77833C38.798 6.02833 38.188 5.25833 37.588 4.72833C37.678 4.76833 37.588 4.72833 37.378 4.78833C37.198 4.83833 36.938 4.94833 36.678 5.10833C22.858 14.9583 7.85796 27.9283 6.31796 45.8983C5.35796 53.3683 9.45796 60.5683 15.388 64.9583C19.168 67.8083 23.978 68.0983 28.618 66.9583C42.398 63.6383 45.838 45.5483 35.048 36.9883L35.038 36.9983ZM38.428 32.4083C49.338 40.0883 50.898 57.5283 41.618 67.1283C35.518 73.5983 25.758 76.1683 17.288 73.5383C13.058 72.2183 9.57796 69.2883 6.70796 66.0383C-5.51204 52.7183 0.747963 33.3083 11.278 21.0183C16.288 15.0583 22.138 9.94833 28.348 5.33833C31.898 3.11833 36.728 -2.49167 41.008 1.68833C42.158 2.87833 43.028 3.95833 43.838 5.35833C44.758 7.21833 44.118 9.36833 42.918 10.7683C42.208 11.6183 40.348 13.0883 39.518 13.8583L35.318 17.6183C31.888 20.7183 29.198 24.5783 27.288 28.7883L27.148 29.0783C27.518 28.4083 27.398 27.3783 27.018 26.8883C26.908 26.7883 26.618 26.6783 26.398 26.6383C30.618 27.8483 34.878 29.7683 38.438 32.4083H38.428Z' fill='%236A855A'/%3E%3Cpath d='M88.7478 50.109C88.9578 42.599 84.0178 36.809 77.3878 33.629C75.2778 32.499 73.0878 31.899 70.9278 30.669C69.4678 29.769 69.3178 27.969 69.9778 26.529C70.0478 26.409 70.3878 25.769 70.4578 25.629C74.0978 18.399 80.2778 13.089 86.2678 7.96899C86.4978 7.75899 86.7178 7.38899 86.7378 7.19899C86.7378 7.18899 86.7178 7.25899 86.7478 7.37899C86.7678 7.43899 86.7778 7.50899 86.8278 7.57899C86.8378 7.63899 86.9578 7.76899 86.8278 7.59899L84.9578 5.23899L84.7278 4.93899L84.6078 4.78899C84.6078 4.78899 84.4978 4.64899 84.5578 4.72899C84.6878 4.88899 84.7878 4.92899 84.7978 4.93899C84.8378 4.95899 84.6678 4.90899 84.5378 4.93899C76.9678 9.85899 69.3578 16.459 63.5578 23.529C58.4878 29.709 54.6978 36.999 53.7378 44.919C53.3778 47.929 53.4378 51.069 54.3978 53.929C56.6278 60.049 61.9278 66.249 68.4478 67.409C79.1278 69.169 89.2278 61.459 88.7578 50.119L88.7478 50.109ZM94.4478 50.009C95.4478 65.059 81.9378 76.399 67.2678 74.229C57.9278 72.649 50.7378 64.629 47.8778 55.949C46.5078 51.559 46.5978 46.889 47.4278 42.439C50.5878 25.459 64.2878 12.899 77.7378 3.47899C79.0078 2.57899 80.4278 1.65899 81.7378 0.798994C83.3278 -0.141006 85.0678 -0.261006 86.8378 0.488994C87.5678 0.778994 88.3378 1.53899 88.8178 2.25899L90.6478 4.65899C92.5178 6.93899 91.1778 10.289 89.0778 11.829C87.1778 13.429 85.1978 15.049 83.3878 16.669C80.0978 19.589 77.3478 22.799 75.2378 26.549C74.8578 27.179 74.5078 27.919 74.1678 28.579C74.2778 28.339 74.2578 28.339 74.2678 28.309C74.3578 27.989 73.9878 27.089 73.5878 26.839C84.3478 30.499 94.0978 37.039 94.4578 50.019L94.4478 50.009Z' fill='%236A855A'/%3E%3C/g%3E%3C/svg%3E");
}

.wp-block-pullquote.is-style-ccma-big-quotes cite {
	display: block;
	width: min(100%, 920px);
	margin: clamp(1.6rem, 3vw, 2.4rem) auto 0;
	padding-top: 0.6rem;
	font-size: clamp(1rem, 1.3vw, 1.25rem);
	font-style: normal;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
	color: var(--wp--preset--color--contrast, #252525);
}

/* Nettoyage des styles natifs WordPress */
.wp-block-pullquote.is-style-ccma-big-quotes,
.wp-block-pullquote.is-style-ccma-big-quotes blockquote {
	border-top: 0;
	border-bottom: 0;
}

/* Liste d'accordéons */
.ccma-accordion-list {
	display: grid;
	gap: 0;
}

/* Bloc Details */
.wp-block-details.is-style-ccma-accordion {
	position: relative;
	margin: 0;
	padding: 0;
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--vert, #6a855a);
	color: var(--wp--preset--color--contrast, #252525);
	background: transparent;
	min-width: 24em;
	width: 72%;
}

/* Titre cliquable */
.wp-block-details.is-style-ccma-accordion > summary {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;

	min-height: 2.7rem;
	padding: 0.55rem 2.8rem 0.55rem 0;

	color: var(--wp--preset--color--vert, #6a855a);
	font-size: var(--wp--preset--font-size--medium, 1rem);
	font-weight: 500;
	line-height: 1.2;

	cursor: pointer;
	list-style: none;
}

/* Supprime le marqueur natif */
.wp-block-details.is-style-ccma-accordion > summary::-webkit-details-marker {
	display: none;
}

.wp-block-details.is-style-ccma-accordion > summary::marker {
	content: "";
}

/* Bouton rond à droite */
.wp-block-details.is-style-ccma-accordion > summary::after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;

	width: 1.45rem;
	height: 1.45rem;
	border-radius: 999px;

	background-color: var(--wp--preset--color--vert, #6a855a);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 0.85rem 0.85rem;

	transform: translateY(-50%);
	transition: transform 0.2s ease, background-color 0.2s ease;

	/* flèche vers le bas */
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7L9 11L13 7' stroke='%23F7F1E1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* État ouvert : flèche vers le haut */
.wp-block-details.is-style-ccma-accordion[open] > summary::after {
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 11L9 7L13 11' stroke='%23F7F1E1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Contenu ouvert */
.wp-block-details.is-style-ccma-accordion > *:not(summary) {
	max-width: 760px;
	margin: 0;
	padding: 0 3rem 1.1rem 0;

	color: var(--wp--preset--color--contrast, #252525);
	font-size: var(--wp--preset--font-size--medium, 1rem);
	line-height: 1.35;
}

/* Premier bloc ouvert : espace plus proche du mockup */
.wp-block-details.is-style-ccma-accordion[open] > summary {
	padding-bottom: 0.4rem;
}

:root {
	--ccma-content-width: var(--wp--style--global--content-size, 840px);
	--ccma-wide-width: var(--wp--style--global--wide-size, 1200px);
	--ccma-container-gutter: clamp(1rem, 14vw, 24rem);
}

/* Full viewport width */
.wp-block-group.is-style-ccma-vague-vert, 
.wp-block-group.is-style-ccma-vague-beige,
.wp-block-group.is-style-ccma-default-vert,
.wp-block-group.is-style-ccma-default-beige {
	position: relative;
	overflow: visible !important;
	width: 100vw;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	box-sizing: border-box;
	padding-top: 60px;
	padding-bottom: 0px;
	padding-left: var(--wp--preset--spacing--80);
	padding-right: var(--wp--preset--spacing--80);
}


.wp-block-group.is-style-ccma-vague-vert, 
.wp-block-group.is-style-ccma-vague-beige {
	margin-top: clamp(48px, 6.45vw, 193px);
}

.wp-block-group.is-style-ccma-vague-vert::before, .wp-block-group.is-style-ccma-vague-beige::before {
	content: "";
	position: absolute;
	z-index: 999;

	top: 0;
	left: 50%;

	width: 100vw;
	height: clamp(48px, 6.45vw, 193px);

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

	-webkit-mask-image: url("data:image/svg+xml,%3Csvg  viewBox='0 0 1440 93' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1442 92.9997H-4.16211V42C43.9994 42 56.283 79.0015 162.999 79.9997C269.716 80.9979 281.999 24 361.999 24C421.999 24 463.32 79.0015 583.999 79.9997C704.678 80.9979 721.999 0 841.999 0C907.999 0 ９74.９９９ 57 1055 57C1103 57 1133 31 1200 31C1285 31 1307 63 1352 63C13９７ 63 142９.２６ 37.９１４６ 144２ 45.３１４４V９２.９９９７Z' fill='black'/%3E%3C/svg%3E");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: bottom center;
	-webkit-mask-size: cover;

	mask-image: url("data:image/svg+xml,%3Csvg  viewBox='0 0 1440 93' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1442 92.9997H-4.16211V42C43.9994 42 56.283 79.0015 162.999 79.9997C269.716 80.9979 281.999 24 361.999 24C421.999 24 463.32 79.0015 583.999 79.9997C704.678 80.9979 721.999 0 841.999 0C907.999 0 974.999 57 1055 57C1103 57 1133 31 1200 31C1285 31 1307 63 1352 63C1397 63 1429.26 37.9146 1442 45.3144V92.9997Z' fill='black'/%3E%3C/svg%3E");
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: cover;

	pointer-events: none;
}

.wp-block-group.is-style-ccma-vague-vert::before {
	background-color: var(--wp--preset--color--vert, #6a855a);
}

.wp-block-group.is-style-ccma-vague-beige::before {
	background-color: var(--wp--preset--color--beige, #f7f1e1);
}


.wp-block-group.is-style-ccma-vague-vert, .wp-block-group.is-style-ccma-default-vert {
	background-color: var(--wp--preset--color--vert, #6a855a);
}

.wp-block-group.is-style-ccma-vague-beige, .wp-block-group.is-style-ccma-default-beige {
	background-color: var(--wp--preset--color--beige, #f7f1e1);
}


/* Normal contained width */
.wp-block-group.is-style-ccma-contained-width {
	width: min(
		calc(100vw - (var(--ccma-container-gutter) * 2)),
		var(--ccma-content-width)
	);
	max-width: var(--ccma-content-width) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
	padding-top: 60px;
	padding-bottom: 60px;
}

/* Wide contained width */
.wp-block-group.is-style-ccma-wide-width {
	width: min(
		calc(100vw - (var(--ccma-container-gutter) * 2)),
		var(--ccma-wide-width)
	);
	max-width: var(--ccma-wide-width) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
	padding-top: 60px;
	padding-bottom: 60px;
}