/*
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: 0;
	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;
}

/* 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-navbar-logo {
	width: clamp(141px, 14.5vw, 210px) !important;
}

.ccma-header a {
	width: 100%;
}

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

.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: 99;
	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;
}

/* breadcrumb */

.ccma-breadcrumb {
	background-color: var(--wp--preset--color--vert) !important;
	border-radius: 30px;
	line-height: 1em;
}
.ccma-breadcrumb ol { 
	list-style: none;
	margin: 0; 
	padding: 0.25em 1.15em 0 1.15em;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 0;
	letter-spacing: 0.05em !important;
}
.ccma-breadcrumb-item { 
	display: inline; 
}

.ccma-breadcrumb-sep-item { 
	display: inline; 
	padding: 0.15em 0.25em; 
	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 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 {
	color: var(--wp--preset--color--beige);
	border: 1px solid var(--wp--preset--color--vert);
	border-radius: 15px;
}

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

header + main {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	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%;
}

/* 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;
}

/*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;
}
/*
section.ccma-page-children-composition {
	max-width: none !important;
}

section.ccma-page-children-composition .ccma-query-children-of-current-page {
	max-width: none !important;
}

section.ccma-page-children-composition .ccma-query-children-of-current-page figure,
section.ccma-page-children-composition figure.ccma-dynamic-page-illustration {
	width: 100% !important;
	max-width: 50vw;
}

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

.wp-block-post-template > li:nth-child(even) .ccma-query-row-children > div {
	padding-left: 12.5vw;
}*/

/* 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: 15px 14px 8px 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: 300 !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: 999;
	/*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 *****************/


@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;
	padding-top: 0 !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);
	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 ;
	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: 520px;
	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;
}

/* 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;
}*/

/* 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;
}

/* Main section */
.ccma-territory-section.wp-block-group {
	position: relative;
	gap: 0;

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

	overflow: visible;
	box-sizing: border-box;
	display: flex;
  	justify-content: end;
  	gap: 16vw;
}

/* Left content */
.ccma-territory-section__content {
	position: relative;
	z-index: 4;
	align-items: flex-start;
	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 {
	/*width: 35.278vw;*/
	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: 0;
	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;
}

/* 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;
}*/

/* 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;
}

.ccma-territory-section {
	position: relative;
	display: flex;
	justify-content: center;
	gap: clamp(2rem, 5vw, 6rem);
	overflow: hidden;
	box-sizing: border-box;
}

/* Left content */
.ccma-territory-section__content {
	position: relative;
	z-index: 2;
	flex: 0 1 520px;
}

/* Right visual area */
.ccma-territory-section__visual {
	position: relative;
	z-index: 1;
	flex: 0 1 640px;
	min-width: 0;
	display: grid;
	place-items: center;
	box-sizing: border-box;
}

/* Blob behind the map */
/*.ccma-territory-section__blob {
	position: absolute;
	z-index: 0;
	inset: 60% auto auto 50%;
	width: clamp(420px, 48vw, 760px);
	max-width: none;
	transform: translate(-48%, -50%);
	pointer-events: none;
}*/

/* If your custom SVG block wraps the actual SVG */
.ccma-territory-section__blob svg,
.ccma-simple-svg-block.ccma-territory-section__blob svg {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
}

/* Map above the blob */
.ardeche_map {
	position: relative;
	z-index: 1;
	width: min(100%, 420px);
	margin: 0;
}

.ardeche_map img {
	display: block;
	width: 23vw;
	height: auto;
	margin: auto;
}

@media (max-width: 900px) {
	.ccma-territory-section {
		flex-direction: column;
		align-items: stretch;
		padding-right: var(--wp--preset--spacing--80);
	}

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

	.ccma-territory-section__visual {
		flex-basis: auto;
		width: 100%;
		min-height: 420px;
	}

	.ccma-territory-section__blob {
		width: clamp(420px, 90vw, 680px);
		transform: translate(-50%, -50%);
	}

	.ardeche_map {
		width: min(78vw, 360px);
	}
}

@media (max-width: 560px) {
	.ccma-territory-section {
		padding-left: var(--wp--preset--spacing--40);
		padding-right: var(--wp--preset--spacing--40);
	}

	.ccma-territory-section__visual {
		min-height: 340px;
	}

	.ccma-territory-section__blob {
		width: 520px;
	}

	.ardeche_map {
		width: min(82vw, 300px);
	}
}

/* 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, 1fr) minmax(420px, 1.5fr);
	align-items: start;
	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, 1fr) minmax(360px, 1fr);
}

.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;
}

.ccma-contact-form {
	width: 80%;
	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.1em;
	top: -0.1em;
	width: 24px;
	height: 24px;
	background-color: currentColor;
	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 width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.54 22.351L11.61 22.391L11.638 22.407C11.749 22.467 11.8733 22.4985 11.9995 22.4985C12.1257 22.4985 12.25 22.467 12.361 22.407L12.389 22.392L12.46 22.351C12.8511 22.1191 13.2328 21.8716 13.604 21.609C14.5651 20.9305 15.463 20.1667 16.287 19.327C18.231 17.337 20.25 14.347 20.25 10.5C20.25 8.31196 19.3808 6.21354 17.8336 4.66637C16.2865 3.11919 14.188 2.25 12 2.25C9.81196 2.25 7.71354 3.11919 6.16637 4.66637C4.61919 6.21354 3.75 8.31196 3.75 10.5C3.75 14.346 5.77 17.337 7.713 19.327C8.53664 20.1667 9.43427 20.9304 10.395 21.609C10.7666 21.8716 11.1485 22.1191 11.54 22.351ZM12 13.5C12.7956 13.5 13.5587 13.1839 14.1213 12.6213C14.6839 12.0587 15 11.2956 15 10.5C15 9.70435 14.6839 8.94129 14.1213 8.37868C13.5587 7.81607 12.7956 7.5 12 7.5C11.2044 7.5 10.4413 7.81607 9.87868 8.37868C9.31607 8.94129 9 9.70435 9 10.5C9 11.2956 9.31607 12.0587 9.87868 12.6213C10.4413 13.1839 11.2044 13.5 12 13.5Z' fill='%23F7F1E1'/%3E%3C/svg%3E%0A");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;

	mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.54 22.351L11.61 22.391L11.638 22.407C11.749 22.467 11.8733 22.4985 11.9995 22.4985C12.1257 22.4985 12.25 22.467 12.361 22.407L12.389 22.392L12.46 22.351C12.8511 22.1191 13.2328 21.8716 13.604 21.609C14.5651 20.9305 15.463 20.1667 16.287 19.327C18.231 17.337 20.25 14.347 20.25 10.5C20.25 8.31196 19.3808 6.21354 17.8336 4.66637C16.2865 3.11919 14.188 2.25 12 2.25C9.81196 2.25 7.71354 3.11919 6.16637 4.66637C4.61919 6.21354 3.75 8.31196 3.75 10.5C3.75 14.346 5.77 17.337 7.713 19.327C8.53664 20.1667 9.43427 20.9304 10.395 21.609C10.7666 21.8716 11.1485 22.1191 11.54 22.351ZM12 13.5C12.7956 13.5 13.5587 13.1839 14.1213 12.6213C14.6839 12.0587 15 11.2956 15 10.5C15 9.70435 14.6839 8.94129 14.1213 8.37868C13.5587 7.81607 12.7956 7.5 12 7.5C11.2044 7.5 10.4413 7.81607 9.87868 8.37868C9.31607 8.94129 9 9.70435 9 10.5C9 11.2956 9.31607 12.0587 9.87868 12.6213C10.4413 13.1839 11.2044 13.5 12 13.5Z' fill='%23F7F1E1'/%3E%3C/svg%3E%0A");
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
}

/** PULLQUOTE BLOCK **/

/* Pullquote CCMA */
.wp-block-pullquote.is-style-ccma-big-quotes {
	position: relative;
	border: 0;
	color: var(--wp--preset--color--contrast, #252525);
	background: transparent;
	text-align: center;
	overflow: visible;
	padding-top: var(--wp--preset--spacing--60) !important;
}

.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);
}

.wp-block-pullquote.is-style-ccma-big-quotes blockquote {
	padding: 4vw;
}

/* Grand guillemet ouvrant */
.wp-block-pullquote.is-style-ccma-big-quotes blockquote::before {
	content: "";
	position: absolute;
	left: -4vw;
  	top: -4vw;
	width: clamp(60px,8vw, 200px);
	height: clamp(60px,8vw, 200px);
	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: -4vw;
	bottom: 4vw;
	width: clamp(60px,8vw, 200px);
  	height: clamp(60px,8vw, 200px);
	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);
	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;

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

	background-color: var(--wp--preset--color--beige, #f7f1e1);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 28px 28px;

	width: 28px;
	height: 28px;
	transition: transform 0.2s ease, background-color 0.2s ease;
	transform: rotate(180deg);
	/* flèche vers le bas */
	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");
}

/* État ouvert : flèche vers le haut */
.wp-block-details.is-style-ccma-accordion[open] > summary::after {
	transform: rotate(0deg);
	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");
}

.wp-block-details.is-style-ccma-accordion[open] p {
	padding-bottom: 0.8em;
	padding-top: 0.2em;
}

: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: 99;

	top: 1px;
	left: 50%;
	width: 101vw;
	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;
}


.ccma-commune-map__svg {
	display: block;
	width: 100%;
	height: auto;
}

.ccma-commune-map__area {
	stroke: #f7f1e1;
	stroke-width: 0;
	transition-duration: 1s;
	vector-effect: non-scaling-stroke;
}

.ccma-commune-map__area:hover {
	fill: var(--wp--preset--color--vert-900) !important;
}

.ccma-commune-map {
	position: relative;
	z-index: 1;
	width: min(100%, 720px);
}

.ccma-commune-map__svg {
	display: block;
	width: 100%;
	height: auto;
}

.ccma-random-commune__map #Calque_3 {
	font-weight: 400 !important;
}

/* Accordéon des communes */

.ccma-communes-accordion {
	width: 100%;
}

.ccma-communes-accordion__template {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.ccma-communes-accordion__template li {
	margin-top: 0;
}

.ccma-communes-accordion__item {
	border: 1px solid var(--wp--preset--color--vert, #6A855A);
	border-radius: 16px;
	overflow: visible;
	background: transparent;
}

.ccma-communes-accordion__item .ccma-commuunes-accordion_habitants {
	gap: 0 !important;
}

.ccma-communes-accordion__item > summary {
	font-family: var(--wp--preset--font-family--sagace);
	font-weight:500;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 0 2rem 0;
	cursor: pointer;
	list-style: none;
	color: var(--wp--preset--color--beige, #f7f1e1);
	line-height: 1.15;
  	text-decoration-line: underline;
	text-decoration-thickness: 40%;
	-webkit-text-decoration-color: #3A4932;
	-webkit-text-decoration-color: #3A4932;
	text-decoration-color: #3A4932;
	text-underline-offset: -15%;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

.ccma-communes-accordion__item > summary::-webkit-details-marker {
	display: none;
}

.ccma-communes-accordion__item > summary::after {
	content: "";
	display: inline-flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 46px;
	width: 46px;
	height: 46px;

	background-image: url("data:image/svg+xml,%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='46' height='46' rx='15' fill='%232A3524'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M23 4.3125C12.6787 4.3125 4.3125 12.6787 4.3125 23C4.3125 33.3212 12.6787 41.6875 23 41.6875C33.3212 41.6875 41.6875 33.3212 41.6875 23C41.6875 12.6787 33.3212 4.3125 23 4.3125ZM31.2033 24.0158C31.4725 23.7463 31.6237 23.3809 31.6237 23C31.6237 22.6191 31.4725 22.2537 31.2033 21.9842L25.4533 16.2342C25.3217 16.0929 25.163 15.9797 24.9867 15.9011C24.8104 15.8225 24.62 15.7803 24.427 15.7769C24.234 15.7735 24.0423 15.809 23.8633 15.8813C23.6843 15.9536 23.5217 16.0612 23.3852 16.1977C23.2487 16.3342 23.1411 16.4968 23.0688 16.6758C22.9965 16.8548 22.961 17.0465 22.9644 17.2395C22.9678 17.4325 23.01 17.6229 23.0886 17.7992C23.1672 17.9755 23.2804 18.1342 23.4217 18.2658L26.7183 21.5625H15.8125C15.4313 21.5625 15.0656 21.714 14.796 21.9835C14.5265 22.2531 14.375 22.6188 14.375 23C14.375 23.3812 14.5265 23.7469 14.796 24.0165C15.0656 24.286 15.4313 24.4375 15.8125 24.4375H26.7183L23.4217 27.7342C23.2804 27.8658 23.1672 28.0245 23.0886 28.2008C23.01 28.3771 22.9678 28.5675 22.9644 28.7605C22.961 28.9535 22.9965 29.1452 23.0688 29.3242C23.1411 29.5032 23.2487 29.6658 23.3852 29.8023C23.5217 29.9388 23.6843 30.0464 23.8633 30.1187C24.0423 30.191 24.234 30.2265 24.427 30.2231C24.62 30.2197 24.8104 30.1775 24.9867 30.0989C25.163 30.0203 25.3217 29.9071 25.4533 29.7658L31.2033 24.0158Z' fill='%23F7F1E1'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;

	border: 0;
	border-radius: 0;

	transform: rotate(0deg);
	transition: transform 180ms ease;
}

.ccma-communes-accordion__item[open] > summary::after {
	content: "";
	transform: rotate(-90deg);
}

.ccma-communes-accordion__body {
	overflow:visible;
	align-items: flex-start;
	margin-block-start: 0;
}

.ccma-communes-accordion__image {
	margin: 0;
	overflow: hidden;
	align-self: center;
	width: 90%;
}

.ccma-communes-accordion__image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 180px;
	object-fit: cover;
}

.ccma-communes-accordion__content {
	color: var(--wp--preset--color--beige, #f7f1e1) !important;
	font-family: Inter !important;
}

.ccma-communes-accordion__content ul.is-style-ccma-list-pin li::before {
	font-size: 1.6em;
	top: 0em;
	left: 0em;
}

.ccma-communes-accordion__post-content, .ccma-communes-accordion__post-content p, .ccma-communes-accordion__meta-value {
	color: var(--wp--preset--color--beige, #f7f1e1);
}

.ccma-communes-accordion__title {
	margin-top: 0;
	margin-bottom: 1rem;
	color: var(--wp--preset--color--noir, #2A2A2A);
}

.ccma-communes-accordion__meta-list {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.ccma-communes-accordion__meta-label,
.ccma-communes-accordion__meta-value {
	margin: 0;
	line-height: 1.25;
}

.ccma-communes-accordion__meta-label {
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

@media (max-width: 760px) {

	.ccma-communes-accordion__meta-row {
		grid-template-columns: 1fr;
		gap: 0.15rem;
	}
}

a.ccma-inline-round-block {
	text-decoration: none;
}

.ccma-communes-accordion__location {
	display: flex !important;
	align-items: baseline;
	flex-wrap: nowrap !important;
	gap: 0.4em;
	margin: 0;
}

.ccma-communes-accordion__location p {
	margin: 0;
	line-height: 1.4;
}

.ccma-communes-accordion__location-address,
.ccma-communes-accordion__location-postal-code {
	flex: 0 1 auto;
}

.ccma-communes-accordion__location-title {
	flex: 0 0 auto;
	font-weight: 700;
}

/* Séparateurs entre les trois valeurs. */
.ccma-communes-accordion__location-address::after,
.ccma-communes-accordion__location-postal-code::after {
	content: "·";
	margin-left: 0.4em;
	opacity: 0.65;
}

@media (max-width: 600px) {
	.ccma-communes-accordion__location {
		flex-wrap: wrap !important;
		row-gap: 0.1em;
	}
}

.ccma-metamorph-svg {
	display: block;
	width: 115px;
	height: 115px;
	overflow: visible;
	color: var(--wp--preset--color--vert, #6a855a);

	transform-box: fill-box;
	transform-origin: center;

	animation: ccma-metamorph-motion 5s ease-in-out infinite;
}

@keyframes ccma-metamorph-motion {
	0%,
	100% {
		transform: rotate(0deg) scale(1);
	}

	34% {
		transform: rotate(2deg) scale(1.025, 0.98);
	}

	67% {
		transform: rotate(-2deg) scale(0.98, 1.025);
	}
}

@keyframes metamorph {
	0% {
		border-radius:
			50% 65% 75% 55% /
			70% 75% 65% 50%;
	}

	34% {
		border-radius:
			60% 75% 55% 60% /
			65% 60% 80% 70%;
	}

	67% {
		border-radius:
			50% 70% 60% 70% /
			80% 50% 70% 60%;
	}

	100% {
		border-radius:
			50% 65% 75% 55% /
			70% 75% 65% 50%;
	}
}

/* ==========================================================
   Paragraph — Small
   ========================================================== */

p.is-style-small {
	font-family:
		var(--wp--preset--font-family--inter),
		"Inter",
		sans-serif;

	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: 23px;
	letter-spacing: 0;
}


/* ==========================================================
   Paragraph — Smaller
   ========================================================== */

p.is-style-smaller {
	font-family:
		var(--wp--preset--font-family--inter),
		"Inter",
		sans-serif;

	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 20px;
	letter-spacing: 0;
}

.ccma-background-blob {
	fill: #d2dccc;
	pointer-events: none;
}

.ccma-random-commune__panel[hidden] {
	display: none !important;
}

.ccma-random-commune__map a {
	cursor: pointer;
}

/*
 * Default commune shape.
 * !important is used because your SVG contains embedded styles.
 */
.ccma-random-commune__map
	svg
	.ccma-commune-map__area {
	fill: #6a855a !important;
	transition:
		fill 180ms ease,
		opacity 180ms ease;
}

/* Selected commune shape. */
.ccma-random-commune__map
	svg
	.ccma-commune-map__area.is-active {
	fill: #2a3524 !important;
}

/* Default labels. */
.ccma-random-commune__map
	#Calque_3
	[class*="ccma-commune-map__area--"]
	text {
	fill: #2a3524 !important;
	transition:
		fill 180ms ease,
		opacity 180ms ease;
}

/* Selected commune label. */
.ccma-random-commune__map
	#Calque_3
	[class*="ccma-commune-map__area--"].is-active
	text {
	fill: #6a855a !important;
}


/********** CCMA RANDOM COMMUNE ***************/


.ccma-random-commune {
	display: flex;
	align-items: center;
	gap: clamp(2rem, 6vw, 6rem);
	width: 100%;
}

.ccma-random-commune__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	right: 0;
}

.ccma-random-commune__title {
	margin: 0;
}

.ccma-random-commune__description {
	max-width: 36vw;
}

.ccma-random-commune__person {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.ccma-random-commune__person-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	color: var(--wp--preset--color--vert, #6A855A);
	line-height: 0;
}

.ccma-random-commune__person-icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

.ccma-random-commune__person-name {
	margin: 0;
}

.ccma-random-commune__list a {
	color: inherit;
}

.ccma-random-commune__population {
	color: var(--wp--preset--color--vert, #6A855A);
	font-weight: 700;
}

.ccma-random-commune__figure {
	flex: 0 1 520px;
	margin: 0;
}

.ccma-random-commune__image {
	display: block;
	width: 100%;
	height: auto;
}

@media (max-width: 800px) {
	.ccma-random-commune {
		flex-direction: column;
		align-items: flex-start;
	}

	.ccma-random-commune__figure {
		width: 100%;
	}
}


.ccma-random-commune__visual {
	position: absolute;
	display: grid;
	place-items: center;
	width: clamp(372px, 50vw, 967px);
	right: 0;
	margin: 0;
	height: 100%;
}

.ccma-random-commune__visual .ccma-random-commune__map {
	position: absolute;
	right: 0;
	width: clamp(320px, 48vw, 960px);
	pointer-events: none;
	line-height: 0;
	overflow: visible !important
}

.ccma-random-commune__map-blob svg {
	display: block;
	width: 100%;
	height: auto;
}

/* ==========================================================
   Commune panels
   ========================================================== */



/* ==========================================================
   Interactive map shapes
   ========================================================== */

.ccma-random-commune__map
	#Calque_2
	.ccma-commune-map__area {
	cursor: pointer;
	fill: #6a855a !important;

	transition:
		fill 180ms ease,
		opacity 180ms ease,
		filter 180ms ease;
}

.ccma-random-commune__map
	#Calque_2
	.ccma-commune-map__area:hover {
	fill: #536b48 !important;
}

.ccma-random-commune__map
	#Calque_2
	.ccma-commune-map__area:focus-visible {
	fill: #536b48 !important;
	outline: none;
	filter: drop-shadow(
		0 0 2px rgb(42 53 36 / 70%)
	);
}

/* Currently selected commune. */
.ccma-random-commune__map
	#Calque_2
	.ccma-commune-map__area.is-active {
	fill: #2a3524 !important;
}

/* Shape without a matching commune panel. */
.ccma-random-commune__map
	#Calque_2
	.ccma-commune-map__area.is-disabled {
	cursor: default;
	opacity: 0.45;
	pointer-events: none;
}


/* ==========================================================
   Optional active label
   ========================================================== */

.ccma-random-commune__map
	#Calque_3
	[data-commune-label].is-active
	text {
	fill: #6a855a !important;
}

.ccma-random-commune__panel[hidden] {
	display: none !important;
	align-self: center;
}

.ccma-random-commune__map
	#Calque_2
	.ccma-commune-map__area {
	pointer-events: auto;
	cursor: pointer;
	fill: #6a855a !important;
}

.ccma-random-commune__map
	#Calque_2
	.ccma-commune-map__area.is-active {
	fill: #2a3524 !important;
}

.ccma-background-blob-svg,
.ccma-background-blob {
	pointer-events: none;
}

.ccma-random-commune__map #Calque_3 {
	pointer-events: none;
}

.ccma-random-commune__map
	#Calque_2
	[data-commune-slug] {
	pointer-events: all;
	cursor: pointer;
}

.ccma-random-commune__map
	#Calque_3
	[data-commune-label]
	text {
	fill: #2a3524 !important;
	transition: fill 180ms ease;
}
/*
.ccma-random-commune__map
	#Calque_3
	[data-commune-label].is-active
	text {
	stroke: #000000;
  	stroke-opacity: 25%;
	stroke-width: 0.5px;
}
*/
.ccma-random-commune__map
	#Calque_3
	[data-commune-label].is-active
	text {
	fill: var(--wp--preset--color--beige) !important;;
}

/* ==========================================================
   Commune content carousel
   ========================================================== */

.ccma-random-commune__content {
	position: relative;
	width: 100%;
	min-height: clamp(372px, 50vw, 967px);
	height: clamp(372px, 50vw, 967px);
	transition: 1s height;
	align-self: center;
	justify-self: center;
	justify-content: center;
	width: clamp(372px, 38vw, 967px);
}

.ccma-random-commune__panel {
	width: 100%;
	opacity: 0;
	visibility: hidden;
	transform: translateX(0);
	align-self: center;
}

.ccma-random-commune__panel[hidden] {
	display: none !important;
	align-self: center;
}

.ccma-random-commune__panel.is-active {
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
	pointer-events: auto;
	align-self: center;
}

/*
 * During a transition, both panels occupy the same space.
 */
.ccma-random-commune__content.is-transitioning {
	overflow: hidden;

	transition:
		height 480ms cubic-bezier(0.22, 1, 0.36, 1);
}

.ccma-random-commune__content.is-transitioning
	.ccma-random-commune__panel {
	position: absolute;
	inset: 0;
	width: 100%;
	margin: 0;

	transition:
		transform 480ms cubic-bezier(0.22, 1, 0.36, 1),
		opacity 300ms ease;

	will-change:
		transform,
		opacity;
}

/* New panel starts on the right. */
.ccma-random-commune__panel.is-entering-from-right {
	opacity: 0;
	visibility: visible;
	transform: translateX(100%);
	pointer-events: none;
}

/* New panel starts on the left. */
.ccma-random-commune__panel.is-entering-from-left {
	opacity: 0;
	visibility: visible;
	transform: translateX(-100%);
	pointer-events: none;
}

/* Current panel leaves through the left. */
.ccma-random-commune__panel.is-leaving-to-left {
	opacity: 0;
	visibility: visible;
	transform: translateX(-100%);
	pointer-events: none;
}

/* Current panel leaves through the right. */
.ccma-random-commune__panel.is-leaving-to-right {
	opacity: 0;
	visibility: visible;
	transform: translateX(100%);
	pointer-events: none;
}


.ccma-random-commune__info-item::before {
	color: var(--wp--preset--color--vert);
}

/* ==========================================================
   Reduced-motion accessibility
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
	.ccma-random-commune__content.is-transitioning,
	.ccma-random-commune__content.is-transitioning
		.ccma-random-commune__panel {
		transition-duration: 1ms !important;
	}
}

.ccma-blob-section {
	/* Easy adjustment points */
	--ccma-blob-width: clamp(520px, 50vw, 1050px);
	--ccma-blob-height: clamp(380px, 40vw, 760px);
	--ccma-blob-color: #d2dccc;

	position: relative;
	isolation: isolate;
	overflow: visible;

	width: 23vw;
}

.ccma-blob-section::after {
	content: "";

	position: absolute;
	z-index: -1;

	width: var(--ccma-blob-width);
	height: var(--ccma-blob-height);

	right: clamp(-260px, -15vw, -80px);
	bottom: -1vw;

	display: block;

	background-color: var(--ccma-blob-color);

	border-radius:
		61% 39% 46% 54%
		/
		42% 48% 52% 58%;

	transform-origin: center;

	animation:
		ccma-metamorph 12s
		ease-in-out
		infinite alternate;

	pointer-events: none;
}

footer .ccma-footer__inner .ccma-blob-section::after {
	background-color: var(--wp--preset--color--beige);
	width: 200%;
	height: 100%;
	right: -60%;
	bottom: 0%;
}

@media (max-width: 781px) {
	footer .ccma-footer__inner .ccma-blob-section.ardeche_map img {
		width: 62vw;

	}

	footer .ccma-footer__inner .ccma-blob-section {
		width: 100%;
	}
	footer .ccma-footer__inner .ccma-blob-section::after {
		background-color: var(--wp--preset--color--beige);
		width: 100%;
		height: 100%;
		right: 0;
		bottom: 0;
	}
}

@keyframes ccma-metamorph {
	0% {
		border-radius:
			61% 39% 46% 54%
			/
			42% 48% 52% 58%;

		transform:
			translate3d(0, 0, 0)
			rotate(0deg)
			scale(1);
	}

	25% {
		border-radius:
			48% 52% 61% 39%
			/
			55% 38% 62% 45%;

		transform:
			translate3d(-1.5%, 1%, 0)
			rotate(1deg)
			scaleX(1.03)
			scaleY(0.98);
	}

	50% {
		border-radius:
			39% 61% 43% 57%
			/
			48% 60% 40% 52%;

		transform:
			translate3d(1%, -1.5%, 0)
			rotate(-1deg)
			scaleX(0.98)
			scaleY(1.03);
	}

	75% {
		border-radius:
			55% 45% 58% 42%
			/
			39% 51% 49% 61%;

		transform:
			translate3d(-1%, -0.5%, 0)
			rotate(0.5deg)
			scaleX(1.02)
			scaleY(1.01);
	}

	100% {
		border-radius:
			46% 54% 38% 62%
			/
			57% 42% 58% 43%;

		transform:
			translate3d(1.5%, 1%, 0)
			rotate(-0.5deg)
			scaleX(1.04)
			scaleY(0.97);
	}
}

.is-style-text-subtitle {
  max-width: 686px;
  margin: auto;
}

.ccma-breadcrumb-item span {
	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-date-carousel {
	--ccma-date-carousel-duration: 650ms;
	--ccma-date-carousel-line: rgb(247 241 225 / 75%);
	--ccma-date-carousel-active: #394b34;

	overflow: hidden;
}

/* =========================================================
   Frise des dates
   ========================================================= */

.ccma-date-carousel__timeline {
	width: 100%;
	max-width: var(--wp--style--global--wide-size, 1340px);

	margin-inline: auto;
	margin-bottom: clamp(40px, 6vw, 80px);

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

	scrollbar-width: none;
}

.ccma-date-carousel__timeline::-webkit-scrollbar {
	display: none;
}

.ccma-date-carousel__timeline-inner {
	--ccma-date-progress: 10%;

	position: relative;

	display: flex;
	align-items: flex-start;

	width: max-content;
	min-width: 100%;
}

/* Ligne générale */

.ccma-date-carousel__timeline-inner::before,
.ccma-date-carousel__timeline-inner::after {
	content: "";

	position: absolute;
	z-index: 0;

	top: 38px;
	left: 0;

	height: 3px;

	pointer-events: none;
}

.ccma-date-carousel__timeline-inner::before {
	width: 100%;
	background-color: var(--ccma-date-carousel-line);
}

.ccma-date-carousel__timeline-inner::after {
	width: var(--ccma-date-progress);
	background-color: var(--ccma-date-carousel-active);

	transition:
		width var(--ccma-date-carousel-duration)
		cubic-bezier(0.22, 1, 0.36, 1);
}

/* Bouton de date */

.ccma-date-carousel__tab {
	position: relative;
	z-index: 1;

	flex: 1 0 150px;

	min-width: 150px;
	height: 62px;

	margin: 0;
	padding: 0 12px;

	color: var(--wp--preset--color--beige);
	background: transparent;

	border: 0;

	font: inherit;
	font-weight: 600;
	text-align: center;

	cursor: pointer;

	transition: color 200ms ease;
	padding-bottom: 2em;
}

.ccma-date-carousel__tab span {
	display: block;
}

/* Point sur la ligne */

.ccma-date-carousel__tab::after {
	content: "";

	position: absolute;

	top: 32px;
	left: 50%;

	width: 13px;
	height: 13px;

	background-color: var(--wp--preset--color--beige);

	border: 3px solid var(--wp--preset--color--vert);
	border-radius: 50%;

	transform: translateX(-50%);

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

.ccma-date-carousel__tab.is-active {
	color: var(--ccma-date-carousel-active);
}

.ccma-date-carousel__tab.is-active::after {
	background-color: var(--ccma-date-carousel-active);
	transform: translateX(-50%) scale(1.08);
}

.ccma-date-carousel__tab:focus-visible {
	outline: 2px solid var(--wp--preset--color--beige);
	outline-offset: 4px;
	border-radius: 4px;
}

/* =========================================================
   Carrousel
   ========================================================= */

.ccma-date-carousel__viewport {
	width: 100%;
	max-width: var(--wp--style--global--wide-size, 1340px);

	margin-inline: auto;

	overflow: hidden;

	transition:
		height 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.ccma-date-carousel__track {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: flex-start;

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

	margin: 0;
	padding: 0;

	transform: translate3d(0, 0, 0);

	transition:
		transform var(--ccma-date-carousel-duration)
		cubic-bezier(0.22, 1, 0.36, 1);

	will-change: transform;
}

.ccma-date-carousel__panel {
	display: flex !important;
	flex: 0 0 100% !important;
	flex-wrap: nowrap !important;
	align-items: center;

	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;

	gap: clamp(32px, 7vw, 100px);

	margin: 0 !important;
	padding: 0;

	box-sizing: border-box;
}

.ccma-date-carousel__panel > * {
	min-width: 0;
}

/* Image */

.ccma-date-carousel__media {
	flex: 0 0 min(42%, 480px);

	width: min(42%, 480px);
	margin: 0 !important;
}

.ccma-date-carousel__media img {
	display: block;

	width: 100%;
	height: auto;

	aspect-ratio: 3 / 4;
	object-fit: cover;
}

/* Texte */

.ccma-date-carousel__content {
	flex: 1 1 0;

	min-width: 0;
	margin: 0 !important;
}

.ccma-date-carousel__content > :first-child {
	margin-top: 0;
}

.ccma-date-carousel__content > :last-child {
	margin-bottom: 0;
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 781px) {
	.ccma-date-carousel {
		padding-inline: 24px !important;
	}

	.ccma-date-carousel__timeline {
		margin-bottom: 36px;
	}

	.ccma-date-carousel__tab {
		flex-basis: 120px;
		min-width: 120px;
	}

	.ccma-date-carousel__panel {
		flex-direction: column;
		align-items: stretch;

		gap: 30px;
	}

	.ccma-date-carousel__media {
		flex-basis: auto;

		width: min(100%, 420px);
		margin-inline: auto !important;
	}

	.ccma-date-carousel__content {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ccma-date-carousel__track,
	.ccma-date-carousel__viewport,
	.ccma-date-carousel__timeline-inner::after {
		transition-duration: 1ms !important;
	}
}

/* Random commune block */

.ccma-random-commune__info-item .ccma-random-commune__info-text,
.ccma-random-commune__info-item .ccma-random-commune__info-text a {
	color: var(--wp--preset--color--vert-800) !important;	
}


/* 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;
		justify-content: space-evenly;
  		width: 100%;
	}

	.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;
	}
}