/*
Theme Name: Annick Combier
Theme URI: https://www.annickcombier.com
Author: Olivier
Description: Thème bloc sur mesure pour le site d'Annick Combier — autrice, ateliers d'écriture, Écrisud. Direction « carnet de voyage » : papier recyclé, lavis d'aquarelle, écriture manuscrite, fougère et grenouille.
Version: 0.5.0
Requires at least: 6.6
Requires PHP: 8.1
License: GPL-2.0-or-later
Text Domain: annick
*/

/* ---------- Fondations ---------- */

:root {
	--ac-accent: var(--wp--preset--color--accent);           /* vert grenouille */
	--ac-accent-fonce: var(--wp--preset--color--accent-fonce);
	--ac-evenement: var(--wp--preset--color--evenement);     /* orangé, pour rehausser les dates */
	--ac-livre: var(--wp--preset--color--livre);
	--ac-carnet: var(--wp--preset--color--carnet);
	--ac-sepia: var(--wp--preset--color--sepia);
	--ac-texte: var(--wp--preset--color--contrast);
	--ac-discret: var(--wp--preset--color--discret);
	--ac-blanc: var(--wp--preset--color--blanc-papier);
	--ac-trait: rgba(43, 38, 34, 0.14);
	--ac-manuscrit: var(--wp--preset--font-family--caveat);
	--ac-marge: clamp(20px, 4vw, 48px);
}

/* Fond papier recyclé : photo de Kiwihug (Unsplash, licence Unsplash), choisie
   par Olivier, rendue raccordable et éclaircie (outils/papier-tuile.py). */
body {
	position: relative;
	overflow-x: hidden;
	background-color: var(--wp--preset--color--base);
	background-image: url("assets/img/papier.jpg");
	background-repeat: repeat;
	background-size: 1200px 1200px;
}

.wp-site-blocks {
	position: relative;
	min-height: 100vh;
}

/* La fougère d'origine, collée en haut à droite, passe sous l'en-tête
   (titre et menu restent au-dessus, le menu sur son papier blanc). */
.wp-site-blocks::before {
	content: "";
	position: absolute;
	top: 0;
	right: -60px;
	width: clamp(200px, 38vw, 500px);
	aspect-ratio: 760 / 250;
	background: url("assets/img/fougere.png") no-repeat right top / contain;
	pointer-events: none;
	z-index: 0;
}

/* La grenouille, ancrée sur le bord gauche (masquée sur petit écran). */
.wp-site-blocks::after {
	content: "";
	position: absolute;
	top: 1100px;
	left: 0;
	width: 104px;
	aspect-ratio: 200 / 230;
	background: url("assets/img/grenouille.png") no-repeat left top / contain;
	pointer-events: none;
	z-index: 0;
}

@media (max-width: 760px) {
	.wp-site-blocks::after {
		display: none;
	}
	.wp-site-blocks::before {
		top: 0;
		right: -90px;
		opacity: 0.8;
	}
}

.ac-conteneur,
.ac-entete-site,
.ac-pied {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	max-width: 1040px;
	margin-inline: auto;
	padding-inline: var(--ac-marge);
}

.ac-conteneur > * + *,
.ac-principal > * + * {
	margin-block-start: 0;
}

a {
	color: var(--ac-accent);
}

a:hover {
	color: var(--ac-accent-fonce);
}

a:focus-visible,
button:focus-visible {
	outline: 2px solid var(--ac-accent);
	outline-offset: 3px;
}

img {
	max-width: 100%;
	height: auto;
}

/* ---------- Lavis d'aquarelle (couleur par type de contenu) ---------- */

.w-titre { --ac-lavis: url("assets/img/lavis-titre.webp"); }
.w-evenement { --ac-lavis: url("assets/img/lavis-evenement.webp"); }
.w-livre { --ac-lavis: url("assets/img/lavis-livre.webp"); }
.w-carnet { --ac-lavis: url("assets/img/lavis-carnet.webp"); }

/* ---------- Images de une : posées sur un lavis, bord de papier déchiré ---------- */

.ac-photo {
	--ac-h: 240px;
	position: relative;
	display: inline-block;
	isolation: isolate;
	width: fit-content;
	max-width: calc(100% - 28px);
	margin: 8px 22px 18px 6px !important;
	transform: rotate(var(--ac-rot, 0deg));
}

.ac-photo__lavis {
	position: absolute;
	z-index: -1;
	left: -9%;
	top: -7%;
	width: 126%;
	height: 124%;
	background: var(--ac-lavis, url("assets/img/lavis-titre.webp")) center / 100% 100% no-repeat;
}

.ac-photo__ombre {
	display: block;
	filter: drop-shadow(0 6px 7px rgba(60, 40, 20, 0.22));
}

.ac-photo__tirage {
	display: block;
	padding: 10px;
	background: var(--ac-blanc);
	-webkit-mask: url("assets/img/bord-dechire.svg") 0 0 / 100% 100% no-repeat;
	mask: url("assets/img/bord-dechire.svg") 0 0 / 100% 100% no-repeat;
}

.ac-photo__tirage a {
	display: block;
}

.ac-photo__tirage img {
	display: block;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: var(--ac-h) !important;
	object-fit: contain;
}

/* ---------- En-tête et navigation ---------- */

.ac-entete-site {
	z-index: 3;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px 40px;
	padding-block: clamp(22px, 3vw, 34px);
}

.ac-entete-site .wp-block-site-title {
	margin: 0;
	font-family: var(--ac-manuscrit);
	font-weight: 700;
	font-size: clamp(42px, 3vw + 22px, 60px);
	line-height: 1;
}

.ac-entete-site .wp-block-site-title a {
	color: var(--ac-accent);
	text-decoration: none;
}

.ac-nav {
	gap: 6px 30px;
	font-size: 16px;
}

.ac-nav .wp-block-navigation-item__content {
	position: relative;
	display: inline-block;
	padding: 8px 2px;
	color: var(--ac-texte);
	text-decoration: none;
}

.ac-nav .wp-block-navigation-item__content:hover {
	color: var(--ac-accent);
}

/* Page en cours : entourée à la plume. */
.ac-nav .current-menu-item > .wp-block-navigation-item__content {
	color: var(--ac-accent);
}

.ac-nav .current-menu-item:not(.ac-nav-bouton) > .wp-block-navigation-item__content::before {
	content: "";
	position: absolute;
	inset: -2px -14px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 44' preserveAspectRatio='none'%3E%3Cpath d='M10 24 C 8 10, 46 4, 74 6 S 116 14, 112 26 S 72 42, 42 39 S 4 31, 12 17' fill='none' stroke='%233d6a2c' stroke-width='1.8' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
	pointer-events: none;
}

/* Contact : un vrai bouton. */
.ac-nav .ac-nav-bouton > .wp-block-navigation-item__content {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 0 22px;
	background: var(--ac-accent);
	color: #ffffff;
	border-radius: 255px 16px 225px 16px / 16px 225px 16px 255px;
	box-shadow: 3px 4px 0 -1px var(--ac-texte);
	font-weight: 500;
}

.ac-nav .ac-nav-bouton > .wp-block-navigation-item__content:hover {
	background: var(--ac-accent-fonce);
	color: #ffffff;
}

@media (max-width: 760px) {
	.ac-entete-site {
		flex-direction: column;
		align-items: flex-start;
	}
	.ac-nav {
		gap: 2px 20px;
	}
}

/* ---------- Titres ---------- */

.is-style-manuscrit,
h1.is-style-manuscrit,
h2.is-style-manuscrit {
	width: fit-content;
	margin: 0 0 28px -18px;
	padding: 4px 18px 2px;
	font-family: var(--ac-manuscrit) !important;
	font-weight: 700 !important;
	line-height: 1.1;
	color: var(--ac-texte);
	background: var(--ac-lavis, url("assets/img/lavis-titre.webp")) center / 100% 100% no-repeat;
}

h1.is-style-manuscrit,
.ac-titre-page {
	font-size: clamp(50px, 3vw + 32px, 66px) !important;
}

h2.is-style-manuscrit {
	font-size: clamp(42px, 1.5vw + 32px, 52px) !important;
}

.is-style-manuscrit.ac-discret {
	color: var(--ac-texte);
	--ac-lavis: url("assets/img/lavis-carnet.webp");
}

.ac-section-titre {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 12px 16px;
	margin-bottom: 30px;
}

.ac-section-titre > * {
	margin-block: 0 !important;
}

/* ---------- Boutons au trait irrégulier ---------- */

.ac-bouton,
.wp-block-button__link,
.wpcf7-form input[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 46px;
	padding: 0 26px;
	border: 0;
	background: var(--ac-accent);
	color: #ffffff !important;
	font: inherit;
	font-size: 16px;
	font-weight: 500;
	text-decoration: none !important;
	border-radius: 255px 16px 225px 16px / 16px 225px 16px 255px;
	box-shadow: 3px 4px 0 -1px var(--ac-texte);
	cursor: pointer;
}

.ac-bouton:hover,
.wp-block-button__link:hover,
.wpcf7-form input[type="submit"]:hover {
	background: var(--ac-accent-fonce);
}

/* Lien secondaire (« Tout l'agenda », bouton contour). */
.ac-lien-tout a,
.ac-pd__tout,
.ac-bouton-trait,
.is-style-outline .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 22px;
	border: 1.6px solid var(--ac-texte);
	background: transparent;
	color: var(--ac-texte) !important;
	text-decoration: none !important;
	border-radius: 16px 225px 16px 255px / 255px 16px 225px 16px;
	box-shadow: none;
	font-size: 16px;
}

.ac-lien-tout a:hover,
.ac-pd__tout:hover,
.ac-bouton-trait:hover,
.is-style-outline .wp-block-button__link:hover {
	border-color: var(--ac-accent);
	color: var(--ac-accent) !important;
	background: transparent;
}

.ac-lien-tout {
	margin: 0;
}

/* ---------- Dates, types, lieux : à la main ---------- */

.ac-date,
.ac-type,
.ac-pd__date,
.ac-agenda__date,
.ac-carnet__date,
.ac-liste--compacte .wp-block-post-date {
	margin: 0;
	font-family: var(--ac-manuscrit);
	font-weight: 500;
	font-size: 26px;
	line-height: 1.1;
	letter-spacing: 0;
	text-transform: none;
	color: var(--ac-evenement);
}

.ac-type--livre { color: var(--ac-livre); }
.ac-type--post,
.ac-carnet__date,
.ac-liste--compacte .wp-block-post-date { color: var(--ac-carnet); }

.ac-lieu {
	margin: 0;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--ac-manuscrit);
	font-size: 23px;
	line-height: 1.2;
	color: var(--ac-sepia);
}

.ac-lieu::before {
	content: "";
	flex: 0 0 auto;
	width: 19px;
	height: 19px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.5c-1-2.2-6.3-7.4-6.3-11.6a6.3 6.3 0 0 1 12.6 0c0 4.2-5.3 9.4-6.3 11.6z' fill='none' stroke='%236b4a2b' stroke-width='1.6' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='9.8' r='2.2' fill='none' stroke='%236b4a2b' stroke-width='1.6'/%3E%3C/svg%3E") center / contain no-repeat;
}

.ac-sous-titre {
	margin: 0;
	font-size: 16px;
	line-height: 1.5;
	color: #4a423c;
}

/* ---------- Accueil ---------- */

.ac-intro {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px 72px;
	padding-block: clamp(40px, 5vw, 68px) clamp(64px, 7vw, 96px);
}

.ac-intro .wp-block-post-content {
	display: contents;
}

.ac-intro p {
	flex: 999 1 420px;
	margin: 0;
	font-size: clamp(22px, 1.2vw + 15px, 29px);
	line-height: 1.5;
	font-style: italic;
	color: #3a332e;
}

.ac-intro figure,
.ac-intro .wp-block-image {
	flex: 0 0 auto;
	margin: 0;
}

/* Le paragraphe qui porte le portrait (et le nom) passe à droite, en tirage aquarellé. */
.ac-intro p:has(img) {
	transition: transform 0.35s ease, filter 0.35s ease;
	flex: 0 0 auto;
	order: 2;
	font-size: 0;
	font-style: normal;
	text-align: center;
	position: relative;
	isolation: isolate;
	padding: 10px;
	transform: rotate(2deg);
}

.ac-intro p:has(img)::before {
	content: "";
	position: absolute;
	z-index: -1;
	left: -12%;
	top: -9%;
	width: 130%;
	height: 126%;
	background: url("assets/img/lavis-carnet.webp") center / 100% 100% no-repeat;
}

/* Le portrait réagit au survol comme les autres photos. */
.ac-intro p:has(img)::before {
	transition: transform 0.45s ease;
}

@media (hover: hover) {
	.ac-intro p:has(img):hover {
		transform: rotate(0deg) translateY(-5px) scale(1.02);
		filter: drop-shadow(0 12px 12px rgba(60, 40, 20, 0.22));
	}
	.ac-intro p:has(img):hover::before {
		transform: scale(1.07) rotate(-2deg);
	}
}

.ac-intro p:has(img) img {
	float: none !important;
	display: block;
	margin: 0;
	width: auto;
	max-height: 230px;
	padding: 10px;
	background: var(--ac-blanc);
	-webkit-mask: url("assets/img/bord-dechire.svg") 0 0 / 100% 100% no-repeat;
	mask: url("assets/img/bord-dechire.svg") 0 0 / 100% 100% no-repeat;
}

.ac-section {
	padding-bottom: 56px;
}

.ac-section-une:not(:has(.wp-block-post)) {
	display: none;
}

/* Grille de cartes (À la une). Les images, de tailles différentes, sont posées
   sur une même ligne de base ; le texte commence au même niveau. */
.ac-grille {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(270px, 100%), 1fr));
	gap: 56px 48px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ac-grille > .wp-block-post {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 0;
}

.ac-grille:not(.ac-livres) > .wp-block-post:has(> .ac-photo) {
	display: grid;
	grid-template-rows: 290px;
	align-content: start;
	row-gap: 10px;
}

.ac-grille:not(.ac-livres) > .wp-block-post > .ac-photo {
	align-self: end;
	justify-self: start;
	margin-bottom: 26px !important;
}

.ac-grille .wp-block-post-title {
	margin: 0;
	font-size: 24px;
	line-height: 1.25;
	font-weight: 600;
}

.ac-grille .wp-block-post-title a,
.ac-liste .wp-block-post-title a {
	color: var(--ac-texte);
	text-decoration: none;
}

.ac-grille .wp-block-post-title a:hover,
.ac-liste .wp-block-post-title a:hover {
	color: var(--ac-accent);
}

/* Liste de lignes (À venir, derniers articles). */
.ac-liste {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ac-liste > .wp-block-post {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px 44px;
	margin: 0;
	padding: 6px 0 12px;
}

.ac-liste .ac-photo {
	--ac-h: 170px;
	flex: 0 0 auto;
	margin-block: 6px 10px !important;
}

.ac-liste .ac-ligne-texte {
	flex: 999 1 300px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.ac-liste .ac-ligne-texte > * {
	margin: 0;
}

.ac-liste .wp-block-post-title {
	margin: 0;
	font-size: 28px;
	line-height: 1.2;
	font-weight: 600;
}

.ac-liste--compacte > .wp-block-post {
	align-items: baseline;
	padding: 12px 0;
	gap: 2px 28px;
}

.ac-liste--compacte .wp-block-post-date {
	flex: 0 0 150px;
	font-size: 24px;
}

.ac-liste--compacte .wp-block-post-title {
	flex: 999 1 260px;
	font-size: 20px;
	font-weight: 400;
}

.ac-vide {
	color: var(--ac-discret);
	font-style: italic;
}

/* ---------- Fiches (article, page, événement, livre) ---------- */

.ac-deux-colonnes {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 48px 64px;
	padding-bottom: 72px;
}

.ac-principal {
	flex: 999 1 560px;
	min-width: 0;
}

.ac-deux-colonnes > .ac-pd {
	flex: 1 1 260px;
	position: sticky;
	top: 24px;
	margin-top: clamp(36px, 4vw, 56px);
}

.ac-entete {
	display: flex;
	flex-wrap: wrap-reverse;
	align-items: center;
	gap: 36px 64px;
	padding-block: clamp(36px, 4vw, 56px) 56px;
}

.ac-entete__texte {
	flex: 999 1 360px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ac-entete__texte > * {
	margin: 0 !important;
}

.ac-entete__texte .wp-block-post-title {
	font-size: clamp(36px, 2.4vw + 22px, 52px);
	line-height: 1.1;
	font-weight: 600;
}

.ac-entete .ac-photo {
	--ac-h: 340px;
	flex: 0 0 auto;
}

.ac-entete .ac-date {
	font-size: clamp(27px, 0.8vw + 21px, 33px);
}

.ac-retour {
	font-size: 15px;
}

.ac-prose {
	max-width: 720px;
	font-size: 18px;
	line-height: 1.85;
}

.ac-prose > * {
	margin-block: 0 22px;
}

/* Les images du texte : tirage à bord déchiré, comme les images de une. */
.ac-prose img:not(.emoji):not([width="1"]) {
	box-sizing: border-box;
	height: auto;
	padding: 9px;
	background: var(--ac-blanc);
	-webkit-mask: url("assets/img/bord-dechire.svg") 0 0 / 100% 100% no-repeat;
	mask: url("assets/img/bord-dechire.svg") 0 0 / 100% 100% no-repeat;
}

.ac-prose figcaption,
.ac-prose .wp-caption-text {
	font-family: var(--ac-manuscrit);
	font-size: 21px;
	line-height: 1.2;
	color: var(--ac-sepia);
}

.ac-prose .wp-caption {
	max-width: 100%;
}

.ac-prose .aligncenter {
	display: block;
	margin-inline: auto;
}

.ac-prose .alignleft {
	float: left;
	margin: 6px 28px 12px 0;
}

.ac-prose .alignright {
	float: right;
	margin: 6px 0 12px 28px;
}

.ac-prose::after {
	content: "";
	display: block;
	clear: both;
}

/* Citations : en italique, plus grandes, entre deux traits d'encre verte ;
   l'auteur écrit à la main. */
.ac-prose blockquote,
.ac-prose .wp-block-quote {
	margin: 40px auto;
	padding: 24px 8px 20px;
	max-width: 34em;
	border: 0 !important;
	background:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 8' preserveAspectRatio='none'%3E%3Cpath d='M2 5 C 30 2, 70 7, 118 3' fill='none' stroke='%233d6a2c' stroke-width='1.8' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") top center / 120px 8px no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 8' preserveAspectRatio='none'%3E%3Cpath d='M2 3 C 40 7, 80 2, 118 5' fill='none' stroke='%233d6a2c' stroke-width='1.8' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") bottom center / 120px 8px no-repeat;
	font-style: italic;
	font-size: 1.22em;
	line-height: 1.55;
	text-align: center;
}

.ac-prose blockquote p {
	margin: 0 0 0.5em;
	text-align: center !important;
}

.ac-prose blockquote p:last-of-type {
	margin-bottom: 0;
}

.ac-prose blockquote cite {
	display: block;
	margin-top: 12px;
	font-family: var(--ac-manuscrit);
	font-style: normal;
	font-weight: 700;
	font-size: 24px;
	color: var(--ac-accent);
}

/* « Voir aussi » en fin de page. */
.ac-voir-aussi {
	margin-top: 48px;
	padding-top: 22px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 10' preserveAspectRatio='none'%3E%3Cpath d='M1 6 C 160 3, 330 8, 520 5 S 820 4, 999 6' fill='none' stroke='%232b2622' stroke-opacity='.35' stroke-width='1.4' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") top / 100% 10px no-repeat;
}

.ac-voir-aussi__titre {
	margin: 0 0 6px;
	font-family: var(--ac-manuscrit);
	font-weight: 700;
	font-size: 30px;
	color: var(--ac-accent);
}

.ac-voir-aussi ul {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 28px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ac-voir-aussi li {
	margin: 0;
}

.ac-voir-aussi a::after {
	content: " →";
}

.ac-voisins {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 16px 32px;
	margin-top: 56px;
	padding-top: 26px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 10' preserveAspectRatio='none'%3E%3Cpath d='M1 6 C 160 3, 330 8, 520 5 S 820 4, 999 6' fill='none' stroke='%232b2622' stroke-opacity='.35' stroke-width='1.4' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") top / 100% 10px no-repeat;
	font-size: 16px;
}

.ac-voisins > * {
	margin: 0;
}

/* Événement : texte à gauche ; infos pratiques puis prochaines dates à droite.
   Sur mobile : infos, texte, prochaines dates. */
.ac-evenement__corps {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	grid-template-areas: "texte infos" "texte dates";
	grid-template-rows: auto 1fr;
	gap: 48px 64px;
	padding-bottom: 72px;
}

.ac-evenement__corps > .wp-block-post-content {
	grid-area: texte;
}

.ac-evenement__corps > .ac-infos {
	grid-area: infos;
}

.ac-evenement__corps > .ac-pd {
	grid-area: dates;
	align-self: start;
}

@media (max-width: 760px) {
	.ac-evenement__corps {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas: "infos" "texte" "dates";
		grid-template-rows: auto;
	}
}

.ac-inscription {
	margin: 12px 0 0;
}

/* Infos pratiques : sans encadré, intitulés à la main. */
.ac-infos {
	display: flex;
	flex-direction: column;
	gap: 22px;
	font-size: 16px;
	line-height: 1.5;
}

.ac-infos__liste {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 14px 18px;
	align-items: baseline;
	margin: 0;
}

.ac-infos__ligne {
	display: contents;
}

.ac-infos__ligne dt {
	font-family: var(--ac-manuscrit);
	font-weight: 600;
	font-size: 24px;
	line-height: 1;
	color: var(--ac-accent);
}

.ac-infos__ligne dd {
	margin: 0;
}

/* La carte, découpée comme un tirage. */
.ac-carte {
	height: 200px;
	margin: 6px 6px 0 2px;
	background: #e7ece2;
	transform: rotate(-1deg);
	-webkit-mask: url("assets/img/bord-dechire.svg") 0 0 / 100% 100% no-repeat;
	mask: url("assets/img/bord-dechire.svg") 0 0 / 100% 100% no-repeat;
}

.ac-infos__liens {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Prochaines dates : un itinéraire en pointillés, une épingle par étape. */
.ac-pd {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.ac-pd__titre-bloc {
	width: fit-content;
	margin: 0 0 4px -18px;
	padding: 4px 18px 2px;
	font-family: var(--ac-manuscrit);
	font-weight: 700;
	font-size: 38px;
	line-height: 1.1;
	color: var(--ac-texte);
	background: url("assets/img/lavis-evenement.webp") center / 100% 100% no-repeat;
}

.ac-pd__liste {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 22px;
	margin: 0;
	padding: 0 0 0 34px;
	list-style: none;
}

.ac-pd__liste::before {
	content: "";
	position: absolute;
	left: 9px;
	top: 12px;
	bottom: -8px;
	width: 10px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 200' preserveAspectRatio='none'%3E%3Cpath d='M5 0 C 2 50, 8 100, 5 200' fill='none' stroke='%236b4a2b' stroke-width='1.6' stroke-dasharray='2 6' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}

.ac-pd__item {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.ac-pd__item::before {
	content: "";
	position: absolute;
	left: -36px;
	top: 2px;
	width: 22px;
	height: 22px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.5c-1-2.2-6.3-7.4-6.3-11.6a6.3 6.3 0 0 1 12.6 0c0 4.2-5.3 9.4-6.3 11.6z' fill='%23f8f6f0' stroke='%23c24a1f' stroke-width='1.6' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='9.8' r='2.2' fill='%23c24a1f'/%3E%3C/svg%3E") center / contain no-repeat;
}

.ac-pd__date {
	font-size: 24px;
}

.ac-pd__titre {
	font-size: 18px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--ac-texte);
	text-decoration: none;
}

.ac-pd__titre:hover {
	color: var(--ac-accent);
}

.ac-pd__lieu {
	font-size: 15px;
	color: var(--ac-discret);
}

.ac-pd__tout {
	align-self: flex-start;
	margin: 8px 0 0 34px;
}

/* ---------- Page Agenda ---------- */

.ac-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 12px;
	margin: 0 0 48px;
}

.ac-chip {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0 18px;
	border: 1.4px solid rgba(43, 38, 34, 0.45);
	border-radius: 16px 225px 16px 255px / 255px 16px 225px 16px;
	font-size: 15px;
	color: var(--ac-texte);
	text-decoration: none !important;
}

.ac-chip:hover {
	border-color: var(--ac-accent);
	color: var(--ac-accent);
}

.ac-chip.is-active {
	border-color: var(--ac-accent);
	background: var(--ac-accent);
	color: #ffffff;
}

.ac-agenda__avenir {
	padding-bottom: 64px;
}

.ac-agenda__avenir > .is-style-manuscrit {
	--ac-lavis: url("assets/img/lavis-evenement.webp");
}

.ac-agenda__riche {
	display: flex;
	flex-direction: column;
	gap: 36px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ac-agenda__lien {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 26px 56px;
	color: var(--ac-texte) !important;
	text-decoration: none !important;
}

.ac-agenda__lien .ac-photo {
	--ac-h: 210px;
	flex: 0 0 auto;
}

.ac-agenda__lien:hover .ac-agenda__titre {
	color: var(--ac-accent);
}

.ac-agenda__texte {
	flex: 999 1 300px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.ac-agenda__titre {
	font-size: 28px;
	line-height: 1.2;
	font-weight: 600;
}

.ac-agenda__extrait {
	font-size: 16px;
	line-height: 1.6;
	color: #4a423c;
}

.ac-agenda__annee {
	margin: 36px 0 6px;
	font-family: var(--ac-manuscrit);
	font-weight: 700;
	font-size: 34px;
	line-height: 1;
	color: var(--ac-accent);
}

.ac-agenda__compact {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ac-agenda__compact > li {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 2px 24px;
	padding: 10px 0;
	font-size: 18px;
}

.ac-agenda__compact a {
	color: var(--ac-texte);
	text-decoration: none;
}

.ac-agenda__compact a:hover {
	color: var(--ac-accent);
}

.ac-agenda__compact .ac-lieu {
	display: inline;
	font-size: 20px;
}

.ac-agenda__compact .ac-lieu::before {
	display: none;
}

.ac-agenda__date {
	flex: 0 0 160px;
	font-size: 23px;
}

/* ---------- Livres ---------- */

.ac-livres {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
	gap: 56px 48px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ac-livres > .wp-block-post {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	grid-template-rows: auto auto 1fr;
	align-content: start;
	column-gap: 28px;
	row-gap: 6px;
	align-items: start;
	margin: 0;
}

.ac-livres > .wp-block-post > * {
	grid-column: 2;
	margin: 0;
}

.ac-livres > .wp-block-post > .ac-photo {
	grid-column: 1;
	grid-row: 1 / span 3;
	align-self: start;
}

.ac-livres .ac-photo {
	--ac-h: 190px;
	margin-top: 0 !important;
}

.ac-livres .ac-sous-titre {
	font-size: 15px;
	color: var(--ac-livre);
}

.ac-livres .wp-block-post-title {
	margin: 0;
	font-size: 22px;
	font-weight: 600;
}

.ac-livres .wp-block-post-title a {
	color: var(--ac-texte);
	text-decoration: none;
}

.ac-presentation {
	font-size: 16px;
	line-height: 1.6;
	color: #4a423c;
}

.ac-presentation > p {
	margin: 0 0 6px;
}

.ac-entete__texte .ac-presentation {
	font-size: 17px;
}

.ac-livres .wp-block-post-excerpt {
	margin: 0;
	font-size: 16px;
	line-height: 1.6;
	color: #4a423c;
}

.ac-livres .wp-block-post-excerpt__excerpt {
	margin: 0;
}

/* ---------- Pagination, formulaires ---------- */

.wp-block-query-pagination {
	margin-top: 32px;
	gap: 16px;
}

.ac-contact label,
.wpcf7-form label {
	display: flex;
	flex-direction: column;
	gap: 6px;
	font-family: var(--ac-manuscrit);
	font-size: 24px;
	line-height: 1.1;
	color: var(--ac-accent);
}

.ac-contact input[type="text"],
.ac-contact input[type="email"],
.ac-contact textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form textarea {
	box-sizing: border-box;
	width: 100%;
	max-width: 640px;
	min-height: 46px;
	padding: 10px 12px;
	border: 1.4px solid rgba(43, 38, 34, 0.35);
	border-radius: 4px 10px 6px 12px / 10px 4px 12px 6px;
	background: rgba(255, 253, 248, 0.85);
	font-family: var(--wp--preset--font-family--lora);
	font-size: 16px;
	color: var(--ac-texte);
}

.ac-contact input:focus,
.ac-contact textarea:focus,
.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
	outline: 2px solid var(--ac-accent);
	outline-offset: 1px;
}

/* ---------- Pied de page ---------- */

.ac-pied {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	gap: 24px 48px;
	margin-top: 40px;
	padding-block: 56px 44px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 10' preserveAspectRatio='none'%3E%3Cpath d='M1 6 C 160 3, 330 8, 520 5 S 820 4, 999 6' fill='none' stroke='%232b2622' stroke-opacity='.35' stroke-width='1.4' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") top / 100% 10px no-repeat;
	font-size: 15px;
	color: var(--ac-discret);
}

.ac-pied::before {
	content: "";
	position: absolute;
	right: clamp(20px, 6vw, 90px);
	top: -46px;
	width: 92px;
	height: 92px;
	background: url("assets/img/feuille.png") center / contain no-repeat;
	transform: rotate(-18deg);
	pointer-events: none;
}

.ac-pied > *,
.ac-pied__signature > * {
	margin: 0 !important;
}

.ac-pied__signature {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.ac-pied__nom {
	font-family: var(--ac-manuscrit);
	font-weight: 700;
	font-size: 40px;
	line-height: 1.1;
}

.ac-pied__nom a {
	color: var(--ac-accent);
	text-decoration: none;
}

.ac-lavis-titre {
	display: inline-block;
	margin-left: -18px;
	padding: 2px 18px;
	background: url("assets/img/lavis-carnet.webp") center / 100% 100% no-repeat;
}

.ac-pied__liens {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 26px;
}

.ac-pied__liens a {
	color: var(--ac-texte);
	text-decoration: none;
}

.ac-pied__liens a:hover {
	color: var(--ac-accent);
}

/* ---------- Petits écrans ---------- */

@media (max-width: 760px) {
	.ac-deux-colonnes > .ac-pd {
		position: static;
		margin-top: 0;
	}

	.ac-entete .ac-photo {
		--ac-h: 280px;
	}

	.ac-grille:not(.ac-livres) > .wp-block-post:has(> .ac-photo) {
		grid-template-rows: auto;
	}

	.ac-liste .ac-photo,
	.ac-agenda__lien .ac-photo {
		--ac-h: 220px;
	}
}

/* ---------- Carnet : tous les articles, par année ---------- */

.ac-carnet__annees {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 22px;
	margin: 0 0 8px;
	font-family: var(--ac-manuscrit);
	font-size: 26px;
}

.ac-carnet__annee {
	margin: 40px 0 8px;
	font-family: var(--ac-manuscrit);
	font-weight: 700;
	font-size: 36px;
	line-height: 1;
	color: var(--ac-carnet);
	scroll-margin-top: 24px;
}

.ac-carnet__liste {
	display: flex;
	flex-direction: column;
	gap: 28px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ac-carnet__lien {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 22px 48px;
	color: var(--ac-texte) !important;
	text-decoration: none !important;
}

.ac-carnet__lien .ac-photo {
	--ac-h: 160px;
	flex: 0 0 auto;
}

.ac-carnet__lien:hover .ac-carnet__titre {
	color: var(--ac-accent);
}

.ac-carnet__texte {
	flex: 999 1 280px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.ac-carnet__titre {
	font-size: 25px;
	line-height: 1.25;
	font-weight: 600;
}

.ac-carnet__extrait {
	font-size: 16px;
	line-height: 1.6;
	color: #4a423c;
}


/* ---------- Survol des photos : la photo se redresse, se soulève, le lavis s'étale ---------- */

.ac-photo {
	transition: transform 0.35s ease;
}

.ac-photo__lavis {
	transition: transform 0.45s ease;
}

.ac-photo__ombre {
	transition: filter 0.35s ease;
}

@media (hover: hover) {
	.ac-photo:hover {
		transform: rotate(0deg) translateY(-5px) scale(1.02);
	}
	.ac-photo:hover .ac-photo__lavis {
		transform: scale(1.07) rotate(-2deg);
	}
	.ac-photo:hover .ac-photo__ombre {
		filter: drop-shadow(0 12px 12px rgba(60, 40, 20, 0.28));
	}
}

@media (prefers-reduced-motion: reduce) {
	.ac-photo,
	.ac-photo__lavis,
	.ac-photo__ombre,
	.ac-avenir__photo,
	.ac-avenir__etape {
		transition: none !important;
	}
}

/* ---------- Accueil : « À venir » (0, 1, 2 ou 3 dates) ---------- */

.ac-avenir__quand {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 2px 16px;
}

.ac-une-mot {
	display: inline-block;
	font-family: var(--ac-manuscrit);
	font-weight: 700;
	font-size: 21px;
	line-height: 1.1;
	color: var(--ac-accent);
	transform: rotate(-3deg);
}

.ac-une-mot::before {
	content: "★ ";
}

.ac-avenir__titre {
	margin: 0;
	font-size: 24px;
	line-height: 1.25;
	font-weight: 600;
}

.ac-avenir__titre a {
	color: var(--ac-texte);
	text-decoration: none;
}

.ac-avenir__titre a:hover {
	color: var(--ac-accent);
}

.ac-avenir__image,
.ac-avenir__photo {
	text-decoration: none;
}

/* Aucune date : un mot, écrit à la main */
.ac-avenir__vide {
	margin: 0;
	font-family: var(--ac-manuscrit);
	font-size: 28px;
	line-height: 1.3;
	color: var(--ac-sepia);
}

/* Une date : « Prochain rendez-vous » mis en avant */
.ac-avenir__seul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 36px 64px;
}

.ac-avenir__seul .ac-photo {
	--ac-h: 280px;
}

.ac-avenir__texte {
	flex: 999 1 340px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}

.ac-avenir__seul .ac-date {
	font-size: 30px;
}

.ac-avenir__seul .ac-avenir__titre {
	font-size: 32px;
}

.ac-avenir__extrait {
	margin: 4px 0 0;
	font-size: 17px;
	line-height: 1.6;
	color: var(--ac-discret);
}

.ac-avenir__boutons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	margin: 8px 0 0;
}

/* Deux dates : un diptyque relié par le pointillé */
.ac-avenir__duo {
	position: relative;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 40px 72px;
}

.ac-avenir__duo::before {
	content: "";
	position: absolute;
	left: 32%;
	right: 32%;
	top: 120px;
	height: 10px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 10' preserveAspectRatio='none'%3E%3Cpath d='M0 5 C 80 1, 150 9, 220 5 S 340 2, 400 6' fill='none' stroke='%236b4a2b' stroke-width='1.6' stroke-dasharray='2 6' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}

.ac-avenir__item {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
}

.ac-avenir__item .ac-avenir__image {
	display: flex;
	align-items: flex-end;
	min-height: 250px;
	margin-bottom: 10px;
}

.ac-avenir__item .ac-photo {
	--ac-h: 220px;
}

/* Trois dates : la photo suit la date survolée, les dates sur une route en pointillé */
.ac-avenir__route {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 36px 64px;
}

.ac-avenir__photos {
	position: relative;
	flex: 0 0 auto;
	width: min(360px, 100%);
	height: 262px;
}

.ac-avenir__photo {
	position: absolute;
	left: 0;
	bottom: 0;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.35s ease;
}

.ac-avenir__photo .ac-photo {
	--ac-h: 220px;
	margin: 0 !important;
}

.ac-avenir__photo.is-defaut {
	opacity: 1;
	pointer-events: auto;
}

.ac-avenir__route:has(.ac-avenir__etape:hover) .ac-avenir__photo {
	opacity: 0;
	pointer-events: none;
}

.ac-avenir__route:has(.ac-avenir__etape:nth-child(1):hover) .ac-avenir__photo:nth-child(1),
.ac-avenir__route:has(.ac-avenir__etape:nth-child(2):hover) .ac-avenir__photo:nth-child(2),
.ac-avenir__route:has(.ac-avenir__etape:nth-child(3):hover) .ac-avenir__photo:nth-child(3) {
	opacity: 1;
	pointer-events: auto;
}

.ac-avenir__route.sans-photo .ac-avenir__photos {
	display: none;
}

.ac-avenir__etapes {
	position: relative;
	flex: 999 1 380px;
	display: flex;
	flex-direction: column;
	gap: 26px;
	margin: 0;
	padding: 0 0 0 46px;
	list-style: none;
}

.ac-avenir__etapes::before {
	content: "";
	position: absolute;
	left: 10px;
	top: 14px;
	bottom: 10px;
	width: 10px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 200' preserveAspectRatio='none'%3E%3Cpath d='M5 0 C 2 50, 8 100, 5 200' fill='none' stroke='%236b4a2b' stroke-width='1.6' stroke-dasharray='2 6' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}

.ac-avenir__etape {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 3px;
	transition: transform 0.25s ease;
}

.ac-avenir__etape::before {
	content: "";
	position: absolute;
	left: -46px;
	top: 2px;
	width: 26px;
	height: 26px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.5c-1-2.2-6.3-7.4-6.3-11.6a6.3 6.3 0 0 1 12.6 0c0 4.2-5.3 9.4-6.3 11.6z' fill='%23f8f6f0' stroke='%23c24a1f' stroke-width='1.6' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='9.8' r='2.2' fill='%23c24a1f'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform 0.25s ease;
}

.ac-avenir__etape .ac-lieu::before {
	display: none;
}

@media (hover: hover) {
	.ac-avenir__etape:hover {
		transform: translateX(6px);
	}
	.ac-avenir__etape:hover::before {
		transform: translateY(-3px) scale(1.12);
	}
	.ac-avenir__etape:hover .ac-avenir__titre a {
		color: var(--ac-accent);
	}
}

@media (max-width: 760px) {
	.ac-avenir__duo::before {
		display: none;
	}
	.ac-avenir__photos {
		height: auto;
	}
	.ac-avenir__photo {
		display: none;
		position: static;
	}
	.ac-avenir__photo.is-defaut {
		display: block;
	}
	.ac-avenir__seul .ac-photo {
		--ac-h: 220px;
	}
}

/* ---------- Images des textes : agrandissement ---------- */

.ac-prose img.ac-zoomable {
	cursor: zoom-in;
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}

@media (hover: hover) {
	.ac-prose img.ac-zoomable:hover {
		transform: translateY(-4px) rotate(0deg);
	}
}

.ac-agrandir__lien {
	cursor: zoom-in;
}

html.ac-vue-ouverte {
	overflow: hidden;
}

.ac-vue {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 18px;
	padding: 76px 96px 34px;
	background: var(--ac-base, #f8f6f0) url("assets/img/papier.jpg") repeat;
	box-sizing: border-box;
}

.ac-vue[hidden] {
	display: none;
}

.ac-vue__figure {
	--ac-h: calc(100vh - 210px);
	margin: 0 !important;
	max-width: 100%;
	transform: rotate(-0.6deg);
}

.ac-vue__figure:hover {
	transform: rotate(-0.6deg);
}

.ac-vue__figure .ac-photo__lavis {
	left: -6%;
	top: -5%;
	width: 112%;
	height: 110%;
}

.ac-vue__figure img {
	max-width: calc(100vw - 230px) !important;
}

.ac-vue__legende {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	gap: 4px 24px;
	margin: 0;
	font-family: var(--ac-manuscrit);
	font-size: 26px;
	color: var(--ac-sepia);
	text-align: center;
}

.ac-vue__compte {
	font-size: 21px;
	color: var(--ac-discret);
}

.ac-vue__bouton {
	position: absolute;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 46px;
	min-height: 46px;
	padding: 0 18px;
	border: 1.6px solid var(--ac-texte);
	border-radius: 16px 225px 16px 255px / 255px 16px 225px 16px;
	background: var(--ac-blanc);
	color: var(--ac-texte);
	font: inherit;
	font-size: 16px;
	cursor: pointer;
}

.ac-vue__bouton:hover,
.ac-vue__bouton:focus-visible {
	border-color: var(--ac-accent);
	color: var(--ac-accent);
}

.ac-vue__fermer {
	top: 22px;
	right: 28px;
}

.ac-vue__prec,
.ac-vue__suiv {
	top: 50%;
	width: 56px;
	height: 56px;
	padding: 0;
	margin-top: -40px;
	font-size: 26px;
}

.ac-vue__prec {
	left: 22px;
}

.ac-vue__suiv {
	right: 22px;
}

.ac-vue--seule .ac-vue__prec,
.ac-vue--seule .ac-vue__suiv,
.ac-vue--seule .ac-vue__compte {
	display: none;
}

@media (max-width: 760px) {
	.ac-vue {
		padding: 70px 16px 90px;
	}
	.ac-vue__figure {
		--ac-h: calc(100vh - 250px);
	}
	.ac-vue__figure img {
		max-width: calc(100vw - 60px) !important;
	}
	.ac-vue__prec,
	.ac-vue__suiv {
		top: auto;
		bottom: 22px;
		margin: 0;
	}
}


/* ---------- Formulaire de contact ---------- */

.ac-contact {
	display: flex;
	flex-direction: column;
	gap: 20px;
	max-width: 640px;
}

.ac-contact__champ {
	margin: 0;
}

.ac-contact__requis {
	font-size: 18px;
	color: var(--ac-discret);
}

.ac-contact__hp {
	position: absolute !important;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.ac-contact__envoi {
	margin: 4px 0 0;
}

.ac-contact__retour {
	margin: 0;
	padding: 14px 18px;
	border-radius: 6px 14px 8px 16px / 14px 6px 16px 8px;
	font-size: 17px;
	line-height: 1.5;
}

.ac-contact__retour--ok {
	background: rgba(61, 106, 44, 0.1);
	border: 1.4px solid var(--ac-accent);
	color: var(--ac-accent-fonce);
}

.ac-contact__retour--erreur {
	background: rgba(194, 74, 31, 0.08);
	border: 1.4px solid var(--ac-evenement);
	color: var(--ac-texte);
}

.ac-contact label {
	flex-direction: row;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0 8px;
}
