/*
 * Bloc de pré-inscription — point 5.6.
 *
 * Le thème LoveTravel impose ses propres styles à tout `input`, `button` et
 * `label` de la page. Les sélecteurs sont donc préfixés par `.amanar-preins`
 * pour gagner en spécificité sans recourir à `!important` — réservé aux deux
 * cas où le thème pose lui-même un `!important`, signalés en commentaire.
 *
 * Trois partis pris :
 *
 * - les dates se choisissent en cartes cliquables, pas en boutons radio ;
 *   la carte porte la durée, le prix et le seuil de confirmation, qu'un rond
 *   suivi d'une ligne de texte ne peut pas montrer ;
 * - les voyageurs se comptent avec des boutons, pas des listes déroulantes ;
 * - la promesse « aucun paiement » apparaît avant qu'on demande quoi que ce
 *   soit, et de nouveau sous le bouton. C'est elle qui lève le frein.
 */

/*
 * Le thème laisse ses champs en `content-box` : un `width: 100%` additionné à
 * 28 px de rembourrage déborde alors du cadre. On rétablit `border-box` sur
 * tout le bloc plutôt que champ par champ.
 */
.amanar-preins,
.amanar-preins *,
.amanar-preins *::before,
.amanar-preins *::after { box-sizing: border-box; }

.amanar-preins {
	font-family: var(--amanar-font);
	color: var(--amanar-ink);
	background: var(--amanar-surface);
	border: 1px solid var(--amanar-line);
	border-radius: 16px;
	padding: 32px 34px 30px;
	scroll-margin-top: 90px;
	max-width: 720px;
}

@media (max-width: 640px) {
	.amanar-preins { padding: 24px 20px; border-radius: 14px; }
}

/* ================================================================
 * En-tête
 * ================================================================ */

.amanar-preins .amanar-preins__oeil {
	margin: 0 0 6px;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--amanar-accent, var(--amanar-ink-soft));
}

.amanar-preins .amanar-preins__titre {
	margin: 0 0 8px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.015em;
	color: var(--amanar-ink);
}

.amanar-preins .amanar-preins__chapo {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--amanar-ink-soft);
	max-width: 54ch;
}

.amanar-preins .amanar-promesses {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	margin: 18px 0 0;
	padding: 0;
	list-style: none;
}

.amanar-preins .amanar-promesse {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--amanar-ink);
}

/* Bornage explicite : le thème agrandit tout SVG qu'il ne reconnaît pas. */
.amanar-preins .amanar-promesse svg {
	width: 16px !important;
	height: 16px !important;
	flex: 0 0 16px;
	color: var(--amanar-accent, var(--amanar-ink-soft));
}

/* ================================================================
 * Formulaire
 * ================================================================ */

.amanar-preins .amanar-preins__form {
	margin: 24px 0 0;
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.amanar-preins fieldset.amanar-bloc {
	border: 0;
	margin: 0;
	padding: 20px 0 0;
	border-top: 1px solid var(--amanar-line);
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.amanar-preins .amanar-bloc__titre {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 0;
	margin: 0 0 2px;
	font-size: 15.5px;
	font-weight: 700;
	color: var(--amanar-ink);
	float: none;
	width: auto;
}

/* Le rang numéroté : la personne voit combien d'étapes il reste. */
.amanar-preins .amanar-bloc__rang {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	border-radius: 50%;
	background: var(--amanar-accent, var(--amanar-ink));
	color: #fff;
	font-size: 12px;
	font-weight: 700;
}

/* ---------------- Choix des dates ---------------- */

.amanar-preins .amanar-departs { display: flex; flex-direction: column; gap: 10px; }

.amanar-preins .amanar-depart {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 16px;
	border: 1px solid var(--amanar-line-strong);
	border-radius: 12px;
	cursor: pointer;
	background: var(--amanar-surface);
	margin: 0;
	text-transform: none;
	letter-spacing: 0;
	font-weight: 400;
	transition: border-color 0.15s var(--amanar-ease), box-shadow 0.15s var(--amanar-ease);
}

.amanar-preins .amanar-depart:hover { border-color: var(--amanar-ink); }

/* Le bouton radio disparaît à l'œil mais reste au clavier : c'est lui qui
   porte le focus, la sélection et la contrainte « obligatoire ». */
.amanar-preins .amanar-depart > input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
	margin: 0;
	pointer-events: none;
}

.amanar-preins .amanar-depart:has(input:checked) {
	border-color: var(--amanar-accent, var(--amanar-ink));
	box-shadow: inset 0 0 0 1px var(--amanar-accent, var(--amanar-ink));
}

.amanar-preins .amanar-depart:has(input:focus-visible) {
	outline: 2px solid var(--amanar-accent, var(--amanar-ink));
	outline-offset: 2px;
}

.amanar-preins .amanar-depart__corps { flex: 1 1 auto; min-width: 0; display: block; }

.amanar-preins .amanar-depart__dates {
	display: block;
	font-size: 15.5px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--amanar-ink);
}

.amanar-preins .amanar-depart__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
	margin-top: 3px;
	font-size: 13.5px;
	color: var(--amanar-ink-soft);
}

.amanar-preins .amanar-depart__prix { font-weight: 600; color: var(--amanar-ink); }

.amanar-preins .amanar-depart__note {
	display: block;
	margin-top: 5px;
	font-size: 12.5px;
	color: var(--amanar-ink-faint);
}

.amanar-preins .amanar-depart__coche {
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1.5px solid var(--amanar-line-strong);
	border-radius: 50%;
	color: transparent;
	transition: background 0.15s var(--amanar-ease), border-color 0.15s var(--amanar-ease);
}

.amanar-preins .amanar-depart:has(input:checked) .amanar-depart__coche {
	background: var(--amanar-accent, var(--amanar-ink));
	border-color: var(--amanar-accent, var(--amanar-ink));
	color: #fff;
}

.amanar-preins .amanar-depart__coche svg { width: 13px !important; height: 13px !important; }

.amanar-preins .amanar-departs__note {
	margin: 2px 0 0;
	font-size: 12.5px;
	color: var(--amanar-ink-faint);
}

.amanar-preins .amanar-depart-unique {
	display: flex;
	align-items: baseline;
	gap: 10px;
	flex-wrap: wrap;
	margin: 0;
	padding: 13px 16px;
	border-radius: 12px;
	background: var(--amanar-surface-alt);
	font-size: 15.5px;
}

.amanar-preins .amanar-depart-unique__etiquette {
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--amanar-ink-soft);
}

/* ---------------- Champs de saisie ---------------- */

.amanar-preins .amanar-grille {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 16px;
}

@media (max-width: 640px) {
	.amanar-preins .amanar-grille { grid-template-columns: 1fr; }
}

.amanar-preins .amanar-saisie {
	margin: 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.amanar-preins .amanar-saisie--pleine { grid-column: 1 / -1; }

.amanar-preins .amanar-saisie > label {
	display: flex;
	align-items: baseline;
	gap: 7px;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--amanar-ink);
	margin: 0;
	text-transform: none;
	letter-spacing: 0;
}

.amanar-preins .amanar-facultatif {
	font-size: 12px;
	font-weight: 400;
	color: var(--amanar-ink-faint);
}

/*
 * Elementor habille tous les champs de la page depuis son réglage global :
 *
 *   .elementor-kit-7838 input:not([type="button"]):not([type="submit"])
 *
 * Les deux `:not()` comptent comme des classes : la règle pèse (0,3,1), là où
 * un `.amanar-preins input` n'en pèse que (0,1,1). Nos champs héritaient donc
 * d'un rembourrage de 15px 30px, invisible sur un champ large mais fatal sur
 * un compteur de 44 px — le chiffre sortait du cadre.
 *
 * On repasse devant avec trois classes réelles du gabarit. Pas d'`!important` :
 * Elementor n'en pose pas, et en poser ici empêcherait Ghislaine de reprendre
 * la main depuis l'éditeur si elle le souhaitait un jour.
 */
.amanar-preins .amanar-preins__form .amanar-saisie input,
.amanar-preins .amanar-preins__form .amanar-saisie textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--amanar-line-strong);
	border-radius: 10px;
	font-family: inherit;
	font-size: 15px;
	line-height: 1.4;
	color: var(--amanar-ink);
	background: var(--amanar-surface);
	box-shadow: none;
	transition: border-color 0.15s var(--amanar-ease);
}

.amanar-preins textarea { resize: vertical; min-height: 84px; }

.amanar-preins .amanar-preins__form input::placeholder,
.amanar-preins .amanar-preins__form textarea::placeholder { color: var(--amanar-ink-faint); }

.amanar-preins .amanar-preins__form input:focus,
.amanar-preins .amanar-preins__form textarea:focus {
	outline: 2px solid var(--amanar-accent, var(--amanar-ink));
	outline-offset: 1px;
	border-color: transparent;
}

/* ---------------- Compteurs de voyageurs ---------------- */

.amanar-preins .amanar-compte {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 0;
	border-bottom: 1px solid var(--amanar-line);
}

.amanar-preins .amanar-compte:last-of-type { border-bottom: 0; }

.amanar-preins .amanar-compte__texte { display: flex; flex-direction: column; gap: 2px; }

.amanar-preins .amanar-compte__texte > label {
	font-size: 15px;
	font-weight: 600;
	color: var(--amanar-ink);
	margin: 0;
	text-transform: none;
	letter-spacing: 0;
}

.amanar-preins .amanar-compte__precision { font-size: 13px; color: var(--amanar-ink-soft); }

.amanar-preins .amanar-compte__reglage { display: flex; align-items: center; gap: 6px; }

/*
 * Le thème pose `background` et `border-radius` en !important sur tout
 * `button`. Sans la même arme, ces deux ronds redeviennent des pastilles
 * dorées de 40 px. C'est le cas légitime.
 */
.amanar-preins .amanar-compte__bouton {
	width: 32px !important;
	height: 32px !important;
	min-width: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--amanar-line-strong) !important;
	border-radius: 50% !important;
	background: var(--amanar-surface) !important;
	color: var(--amanar-ink) !important;
	font-family: inherit;
	font-size: 17px;
	font-weight: 500;
	line-height: 1;
	cursor: pointer;
	box-shadow: none !important;
	transition: border-color 0.15s var(--amanar-ease), color 0.15s var(--amanar-ease);
}

.amanar-preins .amanar-compte__bouton:hover:not(:disabled) {
	border-color: var(--amanar-ink) !important;
}

.amanar-preins .amanar-compte__bouton:disabled {
	color: var(--amanar-line-strong) !important;
	cursor: default;
}

/* Trois classes, pour la même raison qu'au-dessus. */
.amanar-preins .amanar-preins__form .amanar-compte__reglage input {
	width: 46px;
	min-width: 0;
	padding: 6px 2px;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	text-align: center;
	font-family: inherit;
	font-size: 15.5px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--amanar-ink);
	-moz-appearance: textfield;
	appearance: textfield;
}

/* Les flèches natives feraient doublon avec les deux boutons. */
.amanar-preins .amanar-compte__reglage input::-webkit-outer-spin-button,
.amanar-preins .amanar-compte__reglage input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* ---------------- Consentement et envoi ---------------- */

.amanar-preins .amanar-consent {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	padding: 14px 16px;
	border-radius: 12px;
	background: var(--amanar-surface-alt);
	font-size: 13.5px;
	font-weight: 400;
	line-height: 1.55;
	color: var(--amanar-ink-soft);
	cursor: pointer;
	margin: 0;
	text-transform: none;
	letter-spacing: 0;
}

.amanar-preins .amanar-consent input {
	margin: 2px 0 0;
	flex: 0 0 auto;
	width: 16px;
	height: 16px;
	accent-color: var(--amanar-accent, var(--amanar-ink));
}

/* Même raison que les compteurs : le thème repeint tout bouton. */
.amanar-preins .amanar-envoyer {
	width: 100% !important;
	padding: 16px 20px !important;
	border: 0 !important;
	border-radius: 12px !important;
	background: var(--amanar-accent, var(--amanar-ink)) !important;
	color: #fff !important;
	font-family: inherit;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
	box-shadow: none !important;
	transition: filter 0.2s var(--amanar-ease);
}

.amanar-preins .amanar-envoyer:hover,
.amanar-preins .amanar-envoyer:focus-visible { filter: brightness(1.08); }

.amanar-preins .amanar-rassurance {
	margin: 0;
	font-size: 13px;
	line-height: 1.55;
	color: var(--amanar-ink-soft);
	text-align: center;
}

/* ================================================================
 * Retours
 * ================================================================ */

.amanar-preins .amanar-alerte {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 18px 0 0;
	padding: 13px 15px;
	border-radius: 10px;
	background: #fdf0f0;
	border: 1px solid #f0cccc;
	color: #7a2323;
	font-size: 14px;
	line-height: 1.55;
}

.amanar-preins .amanar-alerte svg {
	width: 18px !important;
	height: 18px !important;
	flex: 0 0 18px;
	margin-top: 1px;
}

/* Accusé de réception : il remplace tout le formulaire, il peut respirer. */
.amanar-preins .amanar-recu, .amanar-reservation .amanar-recu { text-align: center; padding: 12px 0 6px; }

.amanar-preins .amanar-recu__sceau, .amanar-reservation .amanar-recu__sceau {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 16px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--amanar-accent, #205020) 14%, #fff);
	color: var(--amanar-accent, #205020);
}

.amanar-preins .amanar-recu__sceau svg, .amanar-reservation .amanar-recu__sceau svg { width: 26px !important; height: 26px !important; }

.amanar-preins .amanar-recu__titre, .amanar-reservation .amanar-recu__titre {
	margin: 0 0 8px;
	font-size: 20px;
	font-weight: 700;
	color: var(--amanar-ink);
}

.amanar-preins .amanar-recu__texte, .amanar-reservation .amanar-recu__texte {
	margin: 0 auto;
	max-width: 46ch;
	font-size: 15px;
	line-height: 1.6;
	color: var(--amanar-ink-soft);
}

/* ================================================================
 * Divers
 * ================================================================ */

/* Pot de miel : hors de l'écran, hors du parcours clavier, et hors sélection —
   sans quoi il se retrouve dans le texte copié depuis la page. */
.amanar-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	user-select: none;
}

.amanar-sessions__vide {
	font-family: var(--amanar-font);
	font-size: 15px;
	color: var(--amanar-ink-soft);
	padding: 18px 20px;
	background: var(--amanar-surface-alt);
	border-radius: var(--amanar-radius);
}

.amanar-session__etat--info { text-decoration: none; }

/* ==================================================================
 * Mention reCAPTCHA
 *
 * Elle remplace le badge flottant de Google, que l'on masque plus bas.
 * Ce badge se posait par-dessus le bouton WhatsApp et, dès que le domaine
 * n'était pas déclaré dans la console Google, affichait en rouge « ERREUR
 * pour le propriétaire du site » sur toutes les pages du site.
 *
 * Masquer le badge n'est autorisé qu'accompagné de cette mention : c'est la
 * condition posée par Google, et elle est respectée ici.
 * ================================================================== */

.amanar-recaptcha-mention {
	margin: 14px 0 0;
	font-size: 12px;
	line-height: 1.5;
	color: var(--amanar-ink-faint);
	text-align: center;
}

.amanar-recaptcha-mention a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.grecaptcha-badge {
	visibility: hidden !important;
}

/* ==================================================================
 * Réservation directe : calendrier et formulaire
 *
 * Le calendrier montre l'occupation avant de demander quoi que ce soit.
 * Trois états seulement — libre, réservé, remise en état — parce qu'un
 * calendrier qui distingue six nuances ne se lit plus.
 * ================================================================== */

.amanar-reservation {
	font-family: var(--amanar-font);
	color: var(--amanar-ink);
	max-width: 760px;
	margin: 0 auto;
	padding: 32px 20px 48px;
}

.amanar-reservation__entete h2 {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.015em;
	margin: 0 0 4px;
}

.amanar-reservation__periode {
	margin: 0 0 24px;
	font-size: 15px;
	color: var(--amanar-ink-soft);
}

.amanar-reservation__succes {
	margin: 0 0 24px;
	padding: 16px 18px;
	border-radius: var(--amanar-radius);
	background: var(--amanar-surface-alt);
	border-left: 3px solid var(--amanar-accent, var(--amanar-ink));
	font-size: 15px;
	line-height: 1.6;
}

/* ---- Calendrier ---- */

.amanar-calendrier {
	margin-bottom: 32px;
}

.amanar-calendrier__mois { margin-bottom: 26px; }

.amanar-calendrier__titre {
	margin: 0 0 12px;
	font-size: 16px;
	font-weight: 700;
}

.amanar-calendrier__grille {
	display: grid;
	/*
	 * minmax(0, 1fr) et non 1fr : par défaut une case de grille ne descend pas
	 * sous la largeur de son contenu. Les cases sont des <button>, auxquels le
	 * thème donne un rembourrage — la grille refusait donc de passer sous
	 * 546 px et débordait de l'écran sur téléphone.
	 */
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 4px;
	width: 100%;
	max-width: 100%;
}

.amanar-calendrier__grille > * {
	min-width: 0;
}

.amanar-calendrier__jour-nom {
	padding: 4px 0 8px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--amanar-ink-faint);
	text-align: center;
}

.amanar-calendrier__case {
	aspect-ratio: 1;
	/* Le rembourrage du thème sur les boutons ferait déborder la grille. */
	padding: 0;
	min-width: 0;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--amanar-line);
	border-radius: 8px;
	background: var(--amanar-surface);
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	color: var(--amanar-ink);
	cursor: pointer;
	transition: background 0.12s var(--amanar-ease), border-color 0.12s var(--amanar-ease);
}

.amanar-calendrier__case:hover:not([disabled]) {
	background: var(--amanar-surface-alt);
	border-color: var(--amanar-ink);
}

/*
 * Un jour pris n'est pas seulement grisé : il est barré. La couleur seule
 * exclurait les personnes qui la distinguent mal, et le calendrier doit rester
 * lisible pour tout le monde — c'est l'esprit des séjours adaptés.
 */
.amanar-calendrier__case[disabled] {
	cursor: not-allowed;
	color: var(--amanar-ink-faint);
	background: var(--amanar-surface-alt);
	border-color: transparent;
	text-decoration: line-through;
}

.amanar-calendrier__case.est-reservee {
	background: color-mix(in srgb, var(--amanar-accent, #675064) 16%, #fff);
}

.amanar-calendrier__case.est-menage {
	background: repeating-linear-gradient(
		135deg,
		var(--amanar-surface-alt) 0 5px,
		var(--amanar-line) 5px 10px
	);
}

.amanar-calendrier__case.est-choisie,
.amanar-calendrier__case.est-entre-deux {
	background: var(--amanar-accent, var(--amanar-ink));
	border-color: var(--amanar-accent, var(--amanar-ink));
	color: #fff;
}

.amanar-calendrier__case.est-entre-deux { opacity: 0.55; }

.amanar-calendrier__vide { aspect-ratio: 1; }

.amanar-calendrier__legende {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
	margin: 14px 0 0;
	padding: 0;
	list-style: none;
	font-size: 13px;
	color: var(--amanar-ink-soft);
}

.amanar-calendrier__legende li {
	display: flex;
	align-items: center;
	gap: 7px;
}

.amanar-pastille {
	width: 14px;
	height: 14px;
	border-radius: 4px;
	border: 1px solid var(--amanar-line);
}

.amanar-pastille--libre { background: var(--amanar-surface); }
.amanar-pastille--reservee { background: color-mix(in srgb, var(--amanar-accent, #675064) 16%, #fff); }
.amanar-pastille--menage {
	background: repeating-linear-gradient(135deg, var(--amanar-surface-alt) 0 4px, var(--amanar-line) 4px 8px);
}

/* ---- Formulaire ---- */

.amanar-reservation__dates,
.amanar-reservation__identite {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 14px 18px;
	margin-bottom: 14px;
}

.amanar-reservation__note {
	margin: 0 0 18px;
	font-size: 13px;
	color: var(--amanar-ink-soft);
}

@media (max-width: 600px) {
	.amanar-reservation { padding: 24px 16px 36px; }
	.amanar-calendrier__case { font-size: 13px; border-radius: 6px; }
	.amanar-calendrier__grille { gap: 3px; }
	.amanar-calendrier__jour-nom { font-size: 10px; letter-spacing: 0; }
	.amanar-calendrier__legende { gap: 10px; font-size: 12px; }
}

/* Rien, dans le bloc de réservation, ne doit dépasser la largeur de l'écran. */
.amanar-reservation,
.amanar-calendrier,
.amanar-calendrier__mois {
	max-width: 100%;
	min-width: 0;
}

/* ==================================================================
 * Estimation du budget
 *
 * Placée juste avant le bouton : c'est le dernier chiffre que le visiteur
 * regarde avant de décider. Détachée du formulaire par un fond, pour qu'on
 * la distingue des champs à remplir.
 * ================================================================== */

.amanar-estimation {
	margin: 6px 0 18px;
	padding: 16px 18px;
	border-radius: var(--amanar-radius);
	background: var(--amanar-surface-alt);
	border-left: 3px solid var(--amanar-accent, var(--amanar-ink));
}

.amanar-estimation__libelle {
	margin: 0 0 2px;
	font-size: 13px;
	font-weight: 600;
	color: var(--amanar-ink-soft);
}

.amanar-estimation__montant {
	margin: 0 0 6px;
	font-size: 22px;
	font-weight: 700;
	color: var(--amanar-ink);
	line-height: 1.2;
}

.amanar-estimation__note {
	margin: 0;
	font-size: 12.5px;
	line-height: 1.5;
	color: var(--amanar-ink-faint);
}

/*
 * Le montant dans le bouton passe à la ligne, en plus petit et moins appuyé
 * que « Je me pré-inscris gratuitement ». La gratuité reste la promesse
 * principale ; le budget n'est qu'un repère.
 */
.amanar-envoyer__estime {
	display: block;
	margin-top: 3px;
	font-size: 12.5px;
	font-weight: 500;
	opacity: 0.85;
}

/* ==================================================================
 * Calendrier : reprendre la main sur les boutons du thème
 *
 * Les cases du calendrier sont des <button>. Le thème LoveTravel leur applique
 * « padding: 15px 30px » et une largeur fixe, depuis une feuille chargée après
 * la nôtre : la grille se calait bien sur sept colonnes de 42 px, mais chaque
 * case en réclamait 62 et débordait de l'écran sur téléphone.
 *
 * On ne peut pas gagner par l'ordre de chargement, ni par la seule
 * spécificité — d'où le !important, limité aux quelques propriétés qui posent
 * problème, et à l'intérieur du calendrier uniquement.
 * ================================================================== */

.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	box-sizing: border-box !important;
	text-transform: none !important;
	letter-spacing: normal !important;
}

.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__jour-nom,
.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__vide {
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
}

/* Sur les très petits écrans, la case doit rester lisible sans déborder. */
@media (max-width: 380px) {
	.amanar-calendrier .amanar-calendrier__grille { gap: 2px; }
	.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case { font-size: 12px; }
}

/*
 * Dès qu'il y a de la place, les mois se placent côte à côte.
 *
 * Empilés sur toute la largeur, ils donnaient des cases de 94 px : un damier
 * géant où l'on perd la lecture d'un mois d'un seul coup d'œil. Côte à côte,
 * la case retrouve une taille de calendrier et le visiteur compare ses dates
 * sans faire défiler.
 */
@media (min-width: 700px) {
	.amanar-calendrier {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
		gap: 8px 28px;
		align-items: start;
	}

	.amanar-calendrier__mois { margin-bottom: 12px; }

	.amanar-calendrier__legende { grid-column: 1 / -1; }
}

/*
 * Apparence des cases : reprise complète au thème.
 *
 * LoveTravel dessine tous les <button> en pastilles dorées. Le calendrier
 * devenait un damier d'or où « libre », « réservé » et « remise en état »
 * étaient indiscernables — et la légende ne voulait plus rien dire.
 *
 * Le même bloc à forte spécificité que ci-dessus, appliqué cette fois aux
 * couleurs et aux états.
 */
.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case {
	background: var(--amanar-surface) !important;
	background-image: none !important;
	color: var(--amanar-ink) !important;
	border: 1px solid var(--amanar-line) !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	font-weight: 600 !important;
}

.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case:hover:not([disabled]) {
	background: var(--amanar-surface-alt) !important;
	border-color: var(--amanar-ink) !important;
}

.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case[disabled] {
	cursor: not-allowed;
	color: var(--amanar-ink-faint) !important;
	background: var(--amanar-surface-alt) !important;
	border-color: transparent !important;
	text-decoration: line-through !important;
}

.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case.est-reservee {
	background: color-mix(in srgb, var(--amanar-accent, #675064) 16%, #fff) !important;
}

.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case.est-menage {
	background-image: repeating-linear-gradient(
		135deg,
		var(--amanar-surface-alt) 0 5px,
		var(--amanar-line) 5px 10px
	) !important;
}

.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case.est-choisie,
.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case.est-entre-deux {
	background: var(--amanar-accent, var(--amanar-ink)) !important;
	border-color: var(--amanar-accent, var(--amanar-ink)) !important;
	color: #fff !important;
}

@media (max-width: 600px) {
	.amanar-calendrier .amanar-calendrier__grille .amanar-calendrier__case { border-radius: 6px !important; }
}

/*
 * Formulaires de contact sur téléphone.
 *
 * Contact Form 7 pose ses champs en « width: 100% » sans « box-sizing:
 * border-box » : la bordure et le rembourrage s'ajoutent aux 100 %, et le
 * formulaire dépassait de 57 px sur un écran de 390 px, ce qui faisait
 * défiler toute la page latéralement.
 */
.wpcf7 input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.wpcf7 select,
.wpcf7 textarea,
.wpcf7-form-control-wrap {
	max-width: 100%;
	box-sizing: border-box;
}

.wpcf7 textarea {
	width: 100%;
}

/* La ligne de champs redevient une colonne quand la place manque. */
@media (max-width: 600px) {
	.wpcf7 .elementor-column,
	.wpcf7 p {
		max-width: 100%;
	}
}

/* ==================================================================
 * Bloc de réservation — mise en page en deux colonnes
 *
 * La fiche d'un hébergement loué à la nuit n'a plus de panneau latéral :
 * tout se joue ici. Le calendrier montre ce qui est libre, le formulaire
 * juste à côté enregistre la demande, et l'œil fait l'aller-retour entre
 * les deux sans faire défiler la page.
 *
 * Sur téléphone, les deux colonnes s'empilent : calendrier d'abord, puis
 * formulaire — l'ordre dans lequel on réserve.
 * ================================================================== */

.amanar-reservation__grille {
	display: grid;
	gap: 28px;
}

@media ( min-width: 900px ) {
	.amanar-reservation__grille {
		grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
		gap: 40px;
		align-items: start;
	}

	/* Le formulaire suit la lecture du calendrier. */
	.amanar-reservation__panneau {
		position: sticky;
		top: 96px;
	}
}

.amanar-reservation__panneau {
	min-width: 0;
}

/*
 * Le formulaire prend l'aspect d'une carte : un cadre net, un fond propre
 * et une ombre discrète le détachent du calendrier sans l'écraser.
 */
.amanar-reservation__form {
	padding: 22px;
	border: 1px solid var(--amanar-line);
	border-radius: 16px;
	background: var(--amanar-surface);
	box-shadow: 0 8px 26px rgba( 0, 0, 0, 0.07 );
}

/*
 * Dates et voyageurs vont ensemble : un seul encadré, des champs collés,
 * comme le sélecteur d'un site de réservation. Trois champs isolés se
 * lisaient comme trois questions sans rapport.
 */
.amanar-reservation__selecteur {
	margin: 0 0 18px;
	border: 1px solid var(--amanar-line-strong, var(--amanar-line));
	border-radius: 12px;
	overflow: hidden;
}

.amanar-reservation__selecteur .amanar-reservation__dates {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	margin: 0;
}

.amanar-reservation__selecteur .amanar-saisie {
	margin: 0;
	padding: 10px 14px;
	border-bottom: 1px solid var(--amanar-line);
}

.amanar-reservation__selecteur .amanar-reservation__dates .amanar-saisie:first-child {
	border-right: 1px solid var(--amanar-line);
}

.amanar-reservation__selecteur .amanar-saisie:last-child {
	border-bottom: 0;
}

.amanar-reservation__selecteur .amanar-saisie label {
	display: block;
	margin: 0 0 2px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--amanar-ink-faint);
}

.amanar-reservation__selecteur input {
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	font-family: inherit;
	font-size: 15px;
	color: var(--amanar-ink);
}

.amanar-reservation__selecteur input:focus {
	outline: 2px solid var(--amanar-accent, var(--amanar-ink));
	outline-offset: 3px;
	border-radius: 4px;
}

.amanar-reservation__selecteur .amanar-reservation__note {
	margin: 0;
	padding: 9px 14px;
	background: var(--amanar-surface-alt);
	font-size: 12.5px;
	color: var(--amanar-ink-soft);
}

/* Une césure douce avant les coordonnées : on change de sujet. */
.amanar-reservation__separateur {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 14px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	color: var(--amanar-ink-faint);
}

.amanar-reservation__separateur::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--amanar-line);
}

.amanar-reservation__identite {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

@media ( max-width: 480px ) {
	.amanar-reservation__identite { grid-template-columns: 1fr; }
}

.amanar-reservation__form .amanar-envoyer {
	width: 100%;
	margin-top: 16px;
}

.amanar-reservation__form .amanar-rassurance {
	margin: 10px 0 0;
	font-size: 12.5px;
	line-height: 1.5;
	text-align: center;
	color: var(--amanar-ink-soft);
}

/* Sans panneau latéral, le contenu de la fiche occupe toute la largeur. */
.amanar-fiche--sans-panneau .amanar-fiche__corps,
.amanar-fiche--sans-panneau .amanar-fiche__contenu {
	grid-column: 1 / -1;
	max-width: 100%;
}

/*
 * Champs du bloc de réservation : reprise au thème.
 *
 * LoveTravel fixe une largeur en pixels sur les champs de formulaire. Dans une
 * carte de 380 px, « Nom » et « Téléphone » sortaient du cadre. Même méthode
 * que pour le calendrier : sélecteur profond et !important sur les seules
 * propriétés de dimension.
 */
.amanar-reservation .amanar-reservation__form input:not([type="submit"]),
.amanar-reservation .amanar-reservation__form select,
.amanar-reservation .amanar-reservation__form textarea {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.amanar-reservation .amanar-reservation__selecteur input {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	height: auto !important;
}

/* Les libellés des coordonnées : discrets, et « facultatif » se détache. */
.amanar-reservation__identite label,
.amanar-reservation__form .amanar-saisie--pleine label {
	display: block;
	margin: 0 0 4px;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--amanar-ink-soft);
}

.amanar-reservation__form .amanar-facultatif {
	margin-left: 5px;
	font-size: 11px;
	font-weight: 400;
	font-style: italic;
	color: var(--amanar-ink-faint);
}

.amanar-reservation__form .amanar-saisie {
	margin: 0 0 12px;
}

.amanar-reservation__identite .amanar-saisie {
	margin: 0;
}

.amanar-reservation__form textarea {
	min-height: 84px;
	resize: vertical;
}

/* La mention Google est une note de bas de page, pas un paragraphe. */
.amanar-reservation__form .amanar-recaptcha-mention {
	margin: 10px 0 0;
	font-size: 11px;
	line-height: 1.45;
	text-align: center;
	color: var(--amanar-ink-faint);
}

.amanar-reservation__form .amanar-recaptcha-mention a {
	color: inherit;
	text-decoration: underline;
}

/* ==================================================================
 * « Écrivez-nous au sujet de ce séjour »
 *
 * Les séjours adaptés ne se pré-inscrivent pas : ils passent par Kélla
 * Voyages. La fiche n'offrait qu'un bouton vers la page Contact — un
 * détour, et un message qui arrivait sans dire de quel séjour il parlait.
 * Le formulaire est maintenant sur la fiche, et le courriel porte le nom
 * et l'adresse de la page d'où il part.
 * ================================================================== */

.amanar-contact-sejour {
	max-width: 720px;
	padding: 26px 28px 30px;
	border: 1px solid var(--amanar-line);
	border-radius: 16px;
	background: var(--amanar-surface);
	box-shadow: 0 8px 26px rgba( 0, 0, 0, 0.06 );
}

.amanar-contact-sejour h2 {
	margin: 0 0 8px;
	font-size: clamp( 20px, 2.4vw, 26px );
	line-height: 1.25;
}

.amanar-contact-sejour__intro {
	margin: 0 0 20px;
	font-size: 15px;
	line-height: 1.6;
	color: var(--amanar-ink-soft);
}

/*
 * Chaque champ sur sa ligne, pleine largeur.
 *
 * Une tentative de deux colonnes avait laissé la mention reCAPTCHA remonter
 * dans l'espace libre à droite des champs : Contact Form 7 sort ses champs
 * dans des <p> successifs, sans conteneur pour les tenir.
 */
.amanar-contact-sejour .wpcf7-form > p,
.amanar-contact-sejour .wpcf7-form > div {
	display: block;
	width: 100%;
	clear: both;
}

.amanar-contact-sejour .wpcf7-form p {
	margin: 0 0 14px;
	font-size: 13px;
	font-weight: 600;
	color: var(--amanar-ink-soft);
}

.amanar-contact-sejour .wpcf7-form input:not([type="submit"]),
.amanar-contact-sejour .wpcf7-form textarea {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	margin-top: 5px;
	padding: 11px 13px !important;
	border: 1px solid var(--amanar-line-strong, var(--amanar-line)) !important;
	border-radius: 10px !important;
	background: var(--amanar-surface) !important;
	font-family: inherit;
	font-size: 15px;
	font-weight: 400;
	color: var(--amanar-ink);
}

.amanar-contact-sejour .wpcf7-form textarea {
	min-height: 130px;
	resize: vertical;
}

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

.amanar-contact-sejour .wpcf7-form input[type="submit"] {
	min-width: 190px;
	cursor: pointer;
}

.amanar-contact-sejour .wpcf7-response-output {
	margin: 14px 0 0 !important;
	padding: 12px 14px !important;
	border-radius: 10px !important;
	font-size: 14px;
}

.amanar-contact-sejour .amanar-recaptcha-mention,
.amanar-contact-sejour .wpcf7 + p {
	margin-top: 12px;
	font-size: 11.5px;
	color: var(--amanar-ink-faint);
}

/* ==================================================================
 * Formulaires de contact — habillage commun
 *
 * Contact Form 7 sort des champs bruts, que le thème habille à peine :
 * bordures fines, coins droits, largeurs inégales — sur la page Contact,
 * le nom et l'e-mail faisaient la moitié de la largeur pendant que le
 * message la prenait toute. Les mêmes règles servent ici et sur les
 * fiches séjour, pour que le visiteur retrouve le même formulaire.
 * ================================================================== */

.wpcf7-form p {
	margin: 0 0 14px;
}

.wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.wpcf7-form select,
.wpcf7-form textarea {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 12px 14px;
	border: 1px solid var(--amanar-line-strong, rgba( 0, 0, 0, 0.18 ) );
	border-radius: 10px;
	background: #ffffff;
	font-family: inherit;
	font-size: 15px;
	line-height: 1.5;
	color: var(--amanar-ink, #222);
}

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

.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus {
	outline: 2px solid var(--amanar-accent, #675064);
	outline-offset: 2px;
	border-color: transparent;
}

.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
	color: var(--amanar-ink-faint, rgba( 0, 0, 0, 0.42 ) );
	opacity: 1;
}

.wpcf7-form input[type="submit"] {
	min-width: 200px;
	cursor: pointer;
}

/* Les messages d'erreur et de confirmation, lisibles sans être criards. */
.wpcf7-response-output {
	margin: 16px 0 0 !important;
	padding: 12px 15px !important;
	border-width: 1px !important;
	border-radius: 10px !important;
	font-size: 14px;
	line-height: 1.5;
}

.wpcf7-not-valid-tip {
	margin-top: 5px;
	font-size: 13px;
}

/*
 * La mention Google se glissait à droite des champs, dans l'espace laissé
 * libre : Contact Form 7 empile des <p> sans conteneur qui les retienne.
 */
.wpcf7 + p,
.amanar-recaptcha-mention {
	clear: both;
	margin: 12px 0 0;
	font-size: 11.5px;
	line-height: 1.5;
	color: var(--amanar-ink-faint, rgba( 0, 0, 0, 0.5 ) );
}

/*
 * Le prix en tête de la carte de réservation.
 *
 * Il ouvre la carte comme sur un site de location : le montant d'abord, ce
 * qu'il comprend juste en dessous, puis la nuit supplémentaire. Séparé des
 * champs par un filet, pour qu'on ne le lise pas comme une question de plus.
 */
.amanar-reservation__resume {
	margin: 0 0 18px;
	padding: 0 0 16px;
	border-bottom: 1px solid var(--amanar-line);
}

.amanar-reservation__prix {
	margin: 0;
	font-size: clamp( 22px, 2.6vw, 27px );
	font-weight: 700;
	line-height: 1.2;
	color: var(--amanar-ink);
}

.amanar-reservation__base {
	margin: 6px 0 0;
	font-size: 13.5px;
	line-height: 1.5;
	color: var(--amanar-ink-soft);
}

.amanar-reservation__sup {
	margin: 8px 0 0;
	padding: 7px 11px;
	border-radius: 9px;
	background: var(--amanar-surface-alt);
	font-size: 13px;
	font-weight: 600;
	color: var(--amanar-ink);
}

/* Lien vers la fiche tarifaire PDF (repas, ateliers, sorties à la carte). */
.amanar-reservation__pdf {
	margin: 10px 0 0;
	font-size: 14px;
}

.amanar-reservation__pdf a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-weight: 600;
	color: var(--amanar-accent, #c8a638);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.amanar-reservation__pdf a::after {
	content: "→";
	text-decoration: none;
}

.amanar-reservation__pdf a:hover,
.amanar-reservation__pdf a:focus-visible {
	color: var(--amanar-ink, #222222);
}

/* ==================================================================
 * Compteurs de participants : reprendre la main sur le thème
 *
 * LoveTravel applique « padding: 15px 30px » à tous les champs de
 * formulaire. Sur une case de 62 px de large, cela ne laisse aucune
 * place au chiffre : le nombre de participants était invisible, entre
 * un « − » et un « + » qui semblaient ne rien commander.
 *
 * Même remède que pour le calendrier : sélecteur profond et !important
 * sur les seules propriétés de dimension.
 * ================================================================== */

.amanar-compte .amanar-compte__reglage input[type="number"],
.amanar-preins .amanar-compte__reglage input[type="number"],
.amanar-reservation .amanar-compte__reglage input[type="number"] {
	width: 52px !important;
	min-width: 0 !important;
	max-width: 52px !important;
	height: auto !important;
	padding: 6px 2px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	box-shadow: none !important;
	text-align: center !important;
	font-family: inherit !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	color: var(--amanar-ink) !important;
	-moz-appearance: textfield;
}

/* Les flèches natives doublonnent avec les boutons − et +. */
.amanar-compte__reglage input[type="number"]::-webkit-outer-spin-button,
.amanar-compte__reglage input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.amanar-compte__reglage input[type="number"]:focus {
	outline: 2px solid var(--amanar-accent, var(--amanar-ink));
	outline-offset: 2px;
	border-radius: 6px;
}

/* ==================================================================
 * Question anti-robot du formulaire de pré-inscription.
 *
 * Volontairement sobre : c'est la dernière chose que voit le visiteur avant
 * d'envoyer, et un encadré alarmant à cet endroit ferait douter d'un
 * formulaire qu'on vient de remplir.
 * ================================================================== */

.amanar-question {
	max-width: none;
}

.amanar-question input {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.amanar-question__aide {
	display: block;
	margin-top: 4px;
	color: var(--amanar-ink-soft, #717171);
	font-size: 13px;
	line-height: 1.5;
}

/* ==================================================================
 * Question anti-robot de Contact Form 7.
 *
 * CF7 enveloppe la question dans un <label>, et le thème habille tous les
 * labels de ses formulaires comme des champs : fond gris, bordure, 20 px de
 * marge. Le champ de réponse apparaissait donc posé dans un second cadre, qui
 * ne ressemblait à aucun autre champ du formulaire. On rend au label son rôle
 * de simple libellé ; le champ, lui, garde le style des autres.
 * ================================================================== */

.wpcf7 .wpcf7-form-control-wrap label:has(.wpcf7-quiz) {
	display: block;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: inherit !important;
}

.wpcf7 .wpcf7-quiz-label {
	display: block;
	margin-bottom: 8px;
	font-size: 14px;
	text-align: left;
}

.wpcf7 input.wpcf7-quiz {
	width: 100%;
	margin-bottom: 20px;
}

/* ==================================================================
 * Formulaire « Écrivez-nous au sujet de ce séjour » (fiches séjour).
 *
 * Mêmes champs que le formulaire de contact du site ; seul l'habillage
 * change. Une carte nette, des champs hauts et arrondis qui passent au doré
 * quand on écrit, un libellé lisible pour la question anti-robot, et un bouton
 * pleine largeur à la place du petit bouton calé à gauche.
 * ================================================================== */

.amanar-fiche .amanar-contact-sejour {
	padding: 36px 36px 28px;
	border: 1px solid #e8e8e8;
	border-radius: 20px;
	background: #ffffff;
	box-shadow: 0 10px 30px rgba(28, 33, 30, 0.07);
}

.amanar-fiche .amanar-contact-sejour h2 {
	margin: 0 0 8px;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.01em;
}

.amanar-fiche .amanar-contact-sejour__intro {
	margin: 0 0 26px;
	font-size: 15px;
	line-height: 1.6;
	color: #6b6b6b;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form p {
	margin: 0;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form br {
	display: none;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form-control-wrap {
	display: block;
	margin: 0 0 14px;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="hidden"]),
.amanar-fiche .amanar-contact-sejour .wpcf7-form textarea {
	width: 100% !important;
	margin: 0 !important;
	padding: 15px 16px !important;
	border: 1px solid #dcdcdc !important;
	border-radius: 12px !important;
	background: #fafafa !important;
	font-size: 15px;
	line-height: 1.4;
	color: #222222;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form textarea {
	min-height: 150px;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form input::placeholder,
.amanar-fiche .amanar-contact-sejour .wpcf7-form textarea::placeholder {
	color: #9a9a9a;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form input:not([type="submit"]):focus,
.amanar-fiche .amanar-contact-sejour .wpcf7-form textarea:focus {
	outline: none;
	border-color: #c8a638 !important;
	background: #ffffff !important;
	box-shadow: 0 0 0 4px rgba(200, 166, 56, 0.18);
}

/* Question anti-robot : un vrai libellé au-dessus du champ. */
.amanar-fiche .amanar-contact-sejour .wpcf7-quiz-label {
	display: block;
	margin: 6px 0 8px;
	font-size: 14px;
	font-weight: 600;
	color: #222222;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form input[type="submit"] {
	width: 100% !important;
	height: 54px;
	margin: 8px 0 0 !important;
	padding: 0 20px !important;
	border: 0 !important;
	border-radius: 12px !important;
	background: #c8a638 !important;
	color: #1c211e !important;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.1s ease;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form input[type="submit"]:hover,
.amanar-fiche .amanar-contact-sejour .wpcf7-form input[type="submit"]:focus-visible {
	background: #b8962e !important;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-form input[type="submit"]:active {
	transform: translateY(1px);
}

.amanar-fiche .amanar-contact-sejour .wpcf7-spinner {
	display: block;
	margin: 10px auto 0;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-not-valid-tip {
	margin-top: 6px;
	font-size: 13px;
}

.amanar-fiche .amanar-contact-sejour .wpcf7-response-output {
	margin: 18px 0 0 !important;
	padding: 12px 16px !important;
	border-radius: 12px;
	font-size: 14px;
}

/* Mention reCAPTCHA : présente, mais discrète. */
.amanar-fiche .amanar-contact-sejour .amanar-recaptcha-mention,
.amanar-fiche .amanar-contact-sejour .wpcf7 + p {
	margin: 16px 0 0;
	font-size: 12px;
	line-height: 1.5;
	text-align: center;
	color: #9a9a9a;
}

@media (max-width: 640px) {
	.amanar-fiche .amanar-contact-sejour {
		padding: 26px 20px 22px;
		border-radius: 16px;
	}

	.amanar-fiche .amanar-contact-sejour h2 {
		font-size: 21px;
	}
}

/* ==================================================================
 * Mentions des formulaires sur petit écran.
 *
 * Mesurées à 12 px sur téléphone et tablette : sous le seuil de confort, et
 * ce sont justement les phrases qui rassurent au moment d'envoyer.
 * ================================================================== */

@media (max-width: 1024px) {
	.amanar-preins .amanar-preins__oeil,
	.amanar-preins .amanar-depart-unique__etiquette,
	.amanar-preins .amanar-facultatif,
	.amanar-reservation__form .amanar-facultatif,
	.amanar-envoyer__estime {
		font-size: 13px;
	}
}
