/* =========================================================
   RAVEN v1.0 : compléments au theme.json
   Charte : fond noir, turquoise #1EE7EF / #03989E, orange #FE5D26 en touches,
   Archivo (700) pour les titres, DM Sans pour le texte.
   Mouvement : transform et opacity uniquement, coupé si prefers-reduced-motion.
   ========================================================= */

:root {
	--raven-turquoise: #1EE7EF;
	--raven-turquoise-profond: #03989E;
	--raven-orange: #FE5D26;
	--raven-gris: #A6A6A6;
	--raven-gris-clair: #C9C9C9;
	--raven-bordure: #1E1E1E;
	--raven-bordure-forte: #2A2A2A;
	--raven-surface: #0A0A0A;
	--raven-surface-2: #111111;
	--raven-degrade: linear-gradient(90deg, #1EE7EF 0%, #FE5D26 100%);
	--raven-section-y: clamp(5rem, 11vw, 9rem);
	--raven-gouttiere: clamp(1.25rem, 4vw, 2.5rem);
	--raven-largeur: 75rem;
	--raven-rayon: 1.5rem;
	--raven-ease: cubic-bezier(0.2, 0.7, 0.2, 1);
	--raven-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--raven-ease-apparition: cubic-bezier(0.25, 1, 0.5, 1);
	--raven-ease-survol: cubic-bezier(0.39, 0.575, 0.565, 1);
	--raven-texte-fort: #fff;
	--raven-carte-fond: var(--raven-surface);
}

html {
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	overflow-x: clip;
}
::selection {
	background: var(--raven-turquoise);
	color: #000;
}
main section[id] {
	scroll-margin-top: 5.5rem;
}

/* Focus clavier bien visible */
:where(a, button, input, textarea, select, summary, [tabindex]):focus-visible {
	outline: 2px solid var(--raven-turquoise);
	outline-offset: 3px;
	border-radius: 4px;
}
.skip-link.screen-reader-text:focus {
	background: #fff;
	color: #000;
}

/* =========================================================
   STRUCTURE DES SECTIONS
   ========================================================= */
.raven-section {
	position: relative;
	padding: var(--raven-section-y) var(--raven-gouttiere) !important;
	margin-block: 0 !important;
}
.raven-section > * {
	max-width: var(--raven-largeur);
	margin-inline: auto !important;
}
.raven-section p {
	max-width: 70ch;
}
.raven-section + .raven-section::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: min(var(--raven-largeur), calc(100% - 2 * var(--raven-gouttiere)));
	height: 1px;
	transform: translateX(-50%);
	background: linear-gradient(90deg, transparent, var(--raven-bordure-forte) 20%, var(--raven-bordure-forte) 80%, transparent);
}

/* Surtitre (étiquette au-dessus des titres) */
.raven-surtitre {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0 0 1.25rem !important;
	font-size: 0.8125rem;
	font-weight: 500;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--raven-turquoise);
}
.raven-surtitre::before {
	content: "";
	width: 1.75rem;
	height: 2px;
	border-radius: 2px;
	background: var(--raven-degrade);
}

/* En-tête de section */
.raven-entete {
	margin-bottom: clamp(2.5rem, 5vw, 4rem) !important;
}
.raven-entete h2 {
	max-width: 22ch;
	margin: 0;
	letter-spacing: -0.02em;
}
.raven-entete--duo {
	display: grid;
	gap: 1.5rem 4rem;
	align-items: end;
}
.raven-entete--duo > p {
	margin: 0;
	font-size: 1.0625rem;
}
@media (min-width: 900px) {
	.raven-entete--duo {
		grid-template-columns: 1.1fr 0.9fr;
	}
}
h2.wp-block-heading {
	letter-spacing: -0.02em;
}

.raven-note {
	margin-top: 2.5rem !important;
	font-size: 0.8125rem;
	color: var(--raven-gris);
}

/* Liens fléchés */
.raven-lien-fleche,
.raven-offre__lien {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	color: #fff;
	font-weight: 500;
	text-decoration: none;
	background-image: var(--raven-degrade);
	background-size: 0 1px;
	background-position: 0 100%;
	background-repeat: no-repeat;
	padding-bottom: 3px;
	transition: background-size 0.4s var(--raven-ease), color 0.2s ease;
}
.raven-lien-fleche:hover,
.raven-offre__lien:hover {
	color: var(--raven-turquoise);
	background-size: 100% 1px;
}

/* =========================================================
   BOUTONS
   ========================================================= */
.wp-element-button {
	transition: background-color 0.25s ease, color 0.25s ease, transform 0.3s var(--raven-ease), box-shadow 0.3s ease;
	letter-spacing: 0.01em;
}
.wp-element-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 34px -14px rgba(30, 231, 239, 0.7);
}
.wp-block-button.is-style-outline > .wp-element-button {
	background: transparent;
	color: #fff;
	border: 1px solid var(--raven-bordure-forte);
}
.wp-block-button.is-style-outline > .wp-element-button:hover {
	border-color: var(--raven-turquoise);
	color: var(--raven-turquoise);
	box-shadow: none;
}
.raven-bouton-fleche .wp-element-button::after {
	content: "→";
	display: inline-block;
	margin-left: 0.5rem;
	transition: transform 0.3s var(--raven-ease);
}
.raven-bouton-fleche .wp-element-button:hover::after {
	transform: translateX(4px);
}

/* =========================================================
   HEADER
   ========================================================= */
.raven-header-wrap {
	position: sticky;
	top: 0;
	z-index: 50;
	background-color: rgba(0, 0, 0, 0.55) !important;
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	backdrop-filter: blur(14px) saturate(140%);
	transition: background-color 0.35s ease;
}
.admin-bar .raven-header-wrap {
	top: var(--wp-admin--admin-bar--height, 32px);
}
.raven-header-wrap.is-scrolled {
	background-color: rgba(0, 0, 0, 0.82) !important;
}
.raven-header {
	position: relative;
	transition: padding 0.35s ease;
}
.raven-header::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: var(--raven-degrade);
	opacity: 0;
	transition: opacity 0.35s ease;
}
.raven-header-wrap.is-scrolled .raven-header::after {
	opacity: 0.55;
}
.raven-header-wrap.is-scrolled .raven-header {
	padding-top: 0.6rem !important;
	padding-bottom: 0.6rem !important;
}

/* Logo : jamais sous 160 px de large (règle de la charte) */
.raven-logo img {
	width: 180px;
	min-width: 160px;
	height: auto;
	display: block;
}

.wp-block-navigation .wp-block-navigation-item__content {
	color: var(--raven-gris-clair);
	background-image: var(--raven-degrade);
	background-size: 0 2px;
	background-position: 0 100%;
	background-repeat: no-repeat;
	transition: background-size 0.3s ease, color 0.2s ease;
	padding-bottom: 3px;
}
.wp-block-navigation .wp-block-navigation-item__content:hover {
	color: #fff;
	background-size: 100% 2px;
}
.wp-block-navigation__responsive-container.is-menu-open {
	background-color: #000 !important;
	color: #fff !important;
}
/* Menu mobile ouvert : le flou du header ne doit pas enfermer le panneau fixe.
   Deux règles séparées : un navigateur sans :has() n'ignore que la seconde. */
html.has-modal-open .raven-header-wrap {
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}
.raven-header-wrap:has(.wp-block-navigation__responsive-container.is-menu-open) {
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}
.wp-block-navigation__responsive-container.is-menu-open {
	position: fixed;
	inset: 0;
	height: 100vh;
	height: 100dvh;
	overflow-y: auto;
	z-index: 100000;
}
html.has-modal-open .raven-header-wrap {
	transform: none !important;
	filter: none !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--archivo);
	font-size: var(--wp--preset--font-size--sous-titre);
	font-weight: 700;
	color: #fff;
}
/* Bouton contact du header : toujours visible, libellé court sur mobile */
.raven-libelle-court {
	display: none;
}
.raven-header-cta,
.raven-header-cta .wp-block-button,
.raven-header-cta .wp-block-button__link {
	flex-shrink: 0;
	white-space: nowrap;
}
@media (max-width: 781px) {
	.raven-header .wp-block-group {
		gap: 0.75rem !important;
	}
	.raven-header-cta .wp-block-button__link {
		padding: 0.6rem 1rem !important;
	}
	.raven-header-cta .raven-libelle-court {
		display: inline;
	}
	.raven-header-cta .raven-libelle-long {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}
}

/* =========================================================
   HERO
   ========================================================= */
.raven-hero {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	margin-block: 0 !important;
	padding: clamp(3rem, 8vw, 6.5rem) var(--raven-gouttiere) clamp(4rem, 9vw, 7rem) !important;
	min-height: min(100svh - 4.5rem, 58rem);
	display: flex;
	align-items: center;
}
.raven-hero__fond {
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
}
.raven-hero__halo {
	position: absolute;
	border-radius: 50%;
	filter: blur(90px);
	will-change: transform;
}
.raven-hero__halo--a {
	width: 46vmax;
	height: 46vmax;
	top: -22vmax;
	right: -10vmax;
	background: radial-gradient(circle, rgba(30, 231, 239, 0.32), rgba(3, 152, 158, 0.08) 60%, transparent 70%);
	animation: raven-derive-a 20s ease-in-out infinite alternate;
}
.raven-hero__halo--b {
	width: 34vmax;
	height: 34vmax;
	bottom: -20vmax;
	left: -12vmax;
	background: radial-gradient(circle, rgba(254, 93, 38, 0.18), transparent 65%);
	animation: raven-derive-b 24s ease-in-out infinite alternate;
}
@keyframes raven-derive-a {
	to { transform: translate3d(-8vmax, 6vmax, 0) scale(1.08); }
}
@keyframes raven-derive-b {
	to { transform: translate3d(10vmax, -5vmax, 0) scale(1.12); }
}
.raven-hero__grille {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 55%;
	opacity: 0.55;
	-webkit-mask-image: linear-gradient(180deg, transparent, #000 60%);
	mask-image: linear-gradient(180deg, transparent, #000 60%);
}
.raven-hero__grain {
	position: absolute;
	inset: 0;
	opacity: 0.07;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.raven-hero__inner {
	width: 100%;
	max-width: var(--raven-largeur);
	margin-inline: auto;
	display: grid;
	gap: clamp(3rem, 6vw, 4.5rem);
	align-items: center;
}
@media (min-width: 1000px) {
	.raven-hero__inner {
		grid-template-columns: 1.08fr 0.92fr;
	}
}
.raven-hero__texte > * {
	margin-block: 0 !important;
}
.raven-hero__titre {
	margin-bottom: 1.5rem !important;
	max-width: 11em;
	letter-spacing: -0.015em;
	text-wrap: balance;
}
.raven-insecable {
	white-space: nowrap;
}
/* « Meta et Google Ads, » doit tenir sur une ligne dès 360 px */
@media (max-width: 480px) {
	.raven-hero__titre {
		font-size: min(8.6vw, 2.25rem) !important;
	}
}
.raven-hero__mot {
	color: var(--raven-turquoise);
	background-image: var(--raven-degrade);
	background-size: 100% 0.08em;
	background-position: 0 92%;
	background-repeat: no-repeat;
	padding-bottom: 0.04em;
}
.raven-hero__chapo {
	max-width: 54ch;
	margin-bottom: 2.25rem !important;
	line-height: 1.6;
}
.raven-hero__actions {
	gap: 0.875rem;
	margin-bottom: 2.5rem !important;
}
.raven-hero__preuves {
	list-style: none;
	padding: 1.5rem 0 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 2rem;
	border-top: 1px solid var(--raven-bordure);
	font-size: 0.875rem;
	color: var(--raven-gris);
}
.raven-hero__preuves strong {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	color: #fff;
	margin-right: 0.25rem;
}
.raven-hero__preuves a {
	color: var(--raven-gris);
	text-decoration: none;
}
.raven-hero__preuves a:hover {
	color: #fff;
}
.raven-etoiles {
	color: var(--raven-turquoise);
	letter-spacing: 0.12em;
}

/* Visuel du hero : tableau de bord en plusieurs plans */
.raven-hero__visuel {
	position: relative;
	width: 100%;
	max-width: 36rem;
	margin-inline: auto;
	aspect-ratio: 1 / 0.9;
}
.raven-plan {
	position: absolute;
	will-change: transform;
}
.raven-plan--fond {
	inset: 8% 4% 12% 6%;
}
.raven-plan--kpi {
	left: 0;
	bottom: 2%;
	width: 50%;
}
.raven-plan--budget {
	right: 0;
	top: 0;
	width: 44%;
}
.raven-plan--puce {
	right: 4%;
	bottom: 0;
}

.raven-ecran {
	height: 100%;
	box-sizing: border-box;
	padding: 1.1rem 1.25rem 1.25rem;
	border-radius: 1.25rem;
	border: 1px solid var(--raven-bordure-forte);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0) 30%),
		rgba(10, 10, 10, 0.82);
	box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.9), 0 0 0 1px rgba(30, 231, 239, 0.04) inset;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
.raven-ecran__barre {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin-bottom: 1rem;
}
.raven-ecran__barre span {
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	background: var(--raven-bordure-forte);
}
.raven-ecran__barre em {
	margin-left: 0.5rem;
	font-style: normal;
	font-size: 0.75rem;
	color: var(--raven-gris);
}
.raven-ecran__onglets {
	display: flex;
	gap: 0.5rem;
	margin-bottom: 1.1rem;
}
.raven-ecran__onglets span {
	font-size: 0.75rem;
	padding: 0.35rem 0.75rem;
	border-radius: 999px;
	border: 1px solid var(--raven-bordure-forte);
	color: var(--raven-gris);
}
.raven-ecran__onglets .is-actif {
	color: #000;
	background: var(--raven-turquoise);
	border-color: var(--raven-turquoise);
	font-weight: 500;
}
.raven-ecran__libelle {
	margin: 0 0 0.25rem;
	font-size: 0.75rem;
	color: var(--raven-gris);
}
.raven-courbe {
	width: 100%;
	flex: 1;
	min-height: 0;
}
.raven-courbe__trait {
	stroke-dasharray: 1;
	stroke-dashoffset: 0;
}
.raven-ecran__barres {
	display: flex;
	align-items: flex-end;
	gap: 6%;
	height: 18%;
	margin-top: 0.75rem;
}
.raven-ecran__barres span {
	flex: 1;
	height: var(--h);
	border-radius: 4px 4px 0 0;
	background: linear-gradient(180deg, rgba(30, 231, 239, 0.55), rgba(3, 152, 158, 0.15));
	transform-origin: bottom;
}
.raven-ecran__barres span:last-child {
	background: linear-gradient(180deg, var(--raven-turquoise), rgba(3, 152, 158, 0.4));
}

.raven-carte-kpi {
	padding: 1.1rem 1.25rem;
	border-radius: 1.1rem;
	border: 1px solid rgba(30, 231, 239, 0.28);
	background: rgba(8, 8, 8, 0.86);
	-webkit-backdrop-filter: blur(16px);
	backdrop-filter: blur(16px);
	box-shadow: 0 30px 60px -24px rgba(0, 0, 0, 0.95), 0 0 40px -18px rgba(30, 231, 239, 0.5);
}
.raven-carte-kpi p {
	margin: 0;
}
.raven-carte-kpi__libelle {
	font-size: 0.75rem;
	color: var(--raven-gris);
}
.raven-carte-kpi__valeur {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.6vw, 2.5rem);
	line-height: 1.1;
	margin-top: 0.3rem !important;
	color: #fff;
}
.raven-plan--kpi .raven-carte-kpi__valeur {
	color: var(--raven-orange);
}
.raven-carte-kpi--compacte {
	border-color: var(--raven-bordure-forte);
	box-shadow: 0 30px 60px -24px rgba(0, 0, 0, 0.95);
}
.raven-carte-kpi--compacte .raven-carte-kpi__valeur {
	font-size: clamp(1.35rem, 2.6vw, 1.85rem);
}
.raven-carte-kpi__pied {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.6rem !important;
	font-size: 0.75rem;
	color: var(--raven-gris);
}
.raven-pastille,
.raven-puce__point {
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--raven-turquoise);
	box-shadow: 0 0 0 0 rgba(30, 231, 239, 0.6);
	animation: raven-pulse 2.4s ease-out infinite;
	flex: none;
}
@keyframes raven-pulse {
	0% { box-shadow: 0 0 0 0 rgba(30, 231, 239, 0.55); }
	70%, 100% { box-shadow: 0 0 0 10px rgba(30, 231, 239, 0); }
}
.raven-puce {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.6rem 1rem;
	border-radius: 999px;
	font-size: 0.8125rem;
	font-weight: 500;
	color: #fff;
	background: rgba(17, 17, 17, 0.9);
	border: 1px solid var(--raven-bordure-forte);
	box-shadow: 0 20px 40px -20px rgba(0, 0, 0, 0.9);
	white-space: nowrap;
}

/* Entrée du hero (une fois, au chargement) */
.raven-anim .raven-hero__texte > * {
	animation: raven-monte 1s var(--raven-ease-out) both;
}
.raven-anim .raven-hero__texte > *:nth-child(2) { animation-delay: 0.08s; }
.raven-anim .raven-hero__texte > *:nth-child(3) { animation-delay: 0.18s; }
.raven-anim .raven-hero__texte > *:nth-child(4) { animation-delay: 0.28s; }
.raven-anim .raven-hero__texte > *:nth-child(5) { animation-delay: 0.38s; }
.raven-anim .raven-plan > * {
	animation: raven-monte-plan 1.2s var(--raven-ease-out) both;
}
.raven-anim .raven-plan--fond > * { animation-delay: 0.2s; }
.raven-anim .raven-plan--kpi > * { animation-delay: 0.55s; }
.raven-anim .raven-plan--budget > * { animation-delay: 0.7s; }
.raven-anim .raven-plan--puce > * { animation-delay: 0.85s; }
.raven-anim .raven-courbe__trait {
	animation: raven-trace 2s 0.6s var(--raven-ease) both;
}
.raven-anim .raven-courbe__aire,
.raven-anim .raven-courbe__point {
	animation: raven-fondu 1s 1.6s ease both;
}
.raven-anim .raven-ecran__barres span {
	animation: raven-pousse 0.9s var(--raven-ease-out) both;
}
.raven-anim .raven-ecran__barres span:nth-child(1) { animation-delay: 0.7s; }
.raven-anim .raven-ecran__barres span:nth-child(2) { animation-delay: 0.76s; }
.raven-anim .raven-ecran__barres span:nth-child(3) { animation-delay: 0.82s; }
.raven-anim .raven-ecran__barres span:nth-child(4) { animation-delay: 0.88s; }
.raven-anim .raven-ecran__barres span:nth-child(5) { animation-delay: 0.94s; }
.raven-anim .raven-ecran__barres span:nth-child(6) { animation-delay: 1s; }
.raven-anim .raven-ecran__barres span:nth-child(7) { animation-delay: 1.06s; }
@keyframes raven-monte {
	from { opacity: 0; transform: translate3d(0, 28px, 0); }
	to { opacity: 1; transform: none; }
}
@keyframes raven-monte-plan {
	from { opacity: 0; transform: translate3d(0, 48px, 0) scale(0.96); }
	to { opacity: 1; transform: none; }
}
@keyframes raven-trace {
	from { stroke-dashoffset: 1; }
	to { stroke-dashoffset: 0; }
}
@keyframes raven-fondu {
	from { opacity: 0; }
	to { opacity: 1; }
}
@keyframes raven-pousse {
	from { transform: scaleY(0); }
	to { transform: scaleY(1); }
}

@media (max-width: 999px) {
	.raven-hero {
		min-height: 0;
	}
	.raven-hero__visuel {
		max-width: 30rem;
	}
}
@media (max-width: 480px) {
	.raven-hero__visuel {
		aspect-ratio: 1 / 1;
	}
	.raven-plan--fond {
		inset: 12% 0 16% 0;
	}
	.raven-plan--kpi {
		width: 60%;
	}
	.raven-plan--budget {
		width: 54%;
	}
	.raven-ecran__barre em {
		display: none;
	}
}

/* =========================================================
   BANDEAU DÉFILANT
   ========================================================= */
.raven-bandeau {
	overflow: hidden;
	border-top: 1px solid var(--raven-bordure);
	border-bottom: 1px solid var(--raven-bordure);
	padding: 1.25rem 0;
	background: #050505;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.raven-bandeau__piste {
	display: flex;
	width: max-content;
	animation: raven-defile 36s linear infinite;
}
.raven-bandeau:hover .raven-bandeau__piste {
	animation-play-state: paused;
}
.raven-bandeau__ligne {
	display: flex;
	align-items: center;
	gap: 2.75rem;
	padding-right: 2.75rem;
}
.raven-bandeau__mot {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: clamp(1.15rem, 2.2vw, 1.6rem);
	white-space: nowrap;
	color: #fff;
}
.raven-bandeau__mot:nth-child(4n + 3) {
	color: transparent;
	-webkit-text-stroke: 1px rgba(255, 255, 255, 0.55);
}
.raven-bandeau__sep {
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	background: var(--raven-degrade);
	flex: none;
}
@keyframes raven-defile {
	to { transform: translate3d(-50%, 0, 0); }
}

/* =========================================================
   RÉSULTATS (CHIFFRES)
   ========================================================= */
.raven-chiffres {
	list-style: none;
	padding: 0;
	margin-top: 0;
	display: grid;
	gap: 0;
	border-top: 1px solid var(--raven-bordure-forte);
}
@media (min-width: 800px) {
	.raven-chiffres {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.raven-chiffres__item {
	container-type: inline-size;
	position: relative;
	padding: 2.25rem 0 2rem;
	border-bottom: 1px solid var(--raven-bordure);
}
@media (min-width: 800px) {
	.raven-chiffres__item {
		padding: 2.75rem 2rem 0.5rem;
		border-bottom: 0;
		border-left: 1px solid var(--raven-bordure);
	}
	.raven-chiffres__item:first-child {
		border-left: 0;
		padding-left: 0;
	}
}
.raven-chiffres__item::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	width: 3.5rem;
	height: 2px;
	background: var(--raven-degrade);
}
@media (min-width: 800px) {
	.raven-chiffres__item:not(:first-child)::before {
		left: 2rem;
	}
}
.raven-chiffres__num {
	display: block;
	font-size: 0.75rem;
	letter-spacing: 0.14em;
	color: var(--raven-gris);
	margin-bottom: 1rem;
}
.raven-chiffre {
	margin: 0 0 0.75rem !important;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	/* « +10 000 € » ≈ 7,8 em : 12,5cqi garantit qu'il tient dans sa colonne */
	font-size: min(clamp(2.25rem, 3vw, 2.75rem), 12.5cqi);
	line-height: 1;
	letter-spacing: -0.015em;
	color: var(--raven-turquoise);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.raven-chiffres__item:nth-child(3) .raven-chiffre {
	color: var(--raven-orange);
}
.raven-chiffres__libelle {
	margin: 0 0 0.5rem !important;
	font-size: 1.0625rem;
	font-weight: 500;
	color: #fff;
}
.raven-chiffres__detail {
	margin: 0 !important;
	font-size: 0.9375rem;
	color: var(--raven-gris);
	max-width: 32ch !important;
}

/* =========================================================
   OFFRES (CARTES)
   ========================================================= */
.raven-offres {
	display: grid;
	gap: 1.25rem;
}
@media (min-width: 900px) {
	.raven-offres {
		grid-template-columns: repeat(3, 1fr);
	}
}
.raven-offre,
.raven-pilier,
.raven-avis-carte {
	--x: 50%;
	--y: 0%;
	position: relative;
	isolation: isolate;
	border-radius: var(--raven-rayon);
	border: 1px solid var(--raven-bordure);
	background: var(--raven-surface);
	transition: transform 0.45s var(--raven-ease), border-color 0.35s ease;
}
.raven-offre::before,
.raven-pilier::before,
.raven-avis-carte::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	border-radius: inherit;
	background: radial-gradient(420px circle at var(--x) var(--y), rgba(30, 231, 239, 0.1), transparent 60%);
	opacity: 0;
	transition: opacity 0.4s ease;
}
.raven-offre:hover,
.raven-pilier:hover,
.raven-avis-carte:hover {
	border-color: rgba(30, 231, 239, 0.35);
}
.raven-offre:hover::before,
.raven-pilier:hover::before,
.raven-avis-carte:hover::before {
	opacity: 1;
}
.raven-offre:hover {
	transform: translateY(-6px);
}
.raven-offre {
	--raven-offre-pad: clamp(1.75rem, 3vw, 2.25rem);
	display: flex;
	flex-direction: column;
	padding: var(--raven-offre-pad);
	overflow: hidden;
}
.raven-offre__visuel {
	display: block;
	width: calc(100% + 2 * var(--raven-offre-pad));
	max-width: none;
	height: auto;
	aspect-ratio: 1168 / 880;
	object-fit: cover;
	margin: calc(-1 * var(--raven-offre-pad)) calc(-1 * var(--raven-offre-pad)) 1.75rem;
}

/* Hero : photo de fond + voile noir à gauche pour la lisibilité du titre */
.raven-hero__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 70% center;
	opacity: 0.85;
}
.raven-hero__voile {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, #000 0%, rgba(0, 0, 0, 0.92) 30%, rgba(0, 0, 0, 0.55) 60%, rgba(0, 0, 0, 0.25) 100%),
		linear-gradient(0deg, #000 0%, rgba(0, 0, 0, 0) 30%);
}
@media (max-width: 999px) {
	.raven-hero__voile {
		background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.85) 55%, #000 100%);
	}
}
.raven-offre__tete {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 2.5rem;
}
.raven-offre__icone {
	display: grid;
	place-items: center;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 1rem;
	color: var(--raven-turquoise);
	background: rgba(30, 231, 239, 0.06);
	border: 1px solid rgba(30, 231, 239, 0.22);
	transition: transform 0.45s var(--raven-ease);
}
.raven-offre:hover .raven-offre__icone {
	transform: rotate(-6deg) scale(1.06);
}
.raven-offre__icone svg {
	width: 1.9rem;
	height: 1.9rem;
}
.raven-offre__num {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: 0.875rem;
	color: var(--raven-bordure-forte);
	-webkit-text-stroke: 1px #3a3a3a;
	font-size: 2.5rem;
	line-height: 1;
	color: transparent;
}
.raven-offre__accroche {
	margin: 0 0 0.5rem;
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--raven-turquoise);
}
.raven-offre__titre {
	margin: 0 0 1rem;
	font-size: var(--wp--preset--font-size--sous-titre);
}
.raven-offre__texte {
	margin: 0 0 1.5rem;
	color: var(--raven-gris);
}
.raven-offre__points {
	list-style: none;
	padding: 1.25rem 0 0;
	margin: 0 0 2rem;
	border-top: 1px solid var(--raven-bordure);
	display: grid;
	gap: 0.7rem;
	font-size: 0.9375rem;
}
.raven-offre__points li {
	display: flex;
	gap: 0.7rem;
	align-items: baseline;
}
.raven-offre__points li::before {
	content: "";
	flex: none;
	width: 0.85rem;
	height: 0.45rem;
	border-left: 2px solid var(--raven-turquoise);
	border-bottom: 2px solid var(--raven-turquoise);
	transform: rotate(-45deg) translateY(-2px);
}
.raven-offre__lien {
	margin-top: auto;
	align-self: flex-start;
}

/* =========================================================
   MÉTHODE (ÉTAPES)
   ========================================================= */
.raven-methode {
	background:
		radial-gradient(50% 60% at 0% 50%, rgba(3, 152, 158, 0.12), transparent 70%),
		#000;
}
.raven-methode__grille {
	display: grid;
	gap: 3rem 5rem;
}
@media (min-width: 960px) {
	.raven-methode__grille {
		grid-template-columns: 0.85fr 1.15fr;
		align-items: start;
	}
	.raven-methode__intro {
		position: sticky;
		top: 8rem;
	}
}
.raven-methode__intro > * {
	margin-block: 0 !important;
}
.raven-methode__intro h2 {
	margin-bottom: 1.25rem !important;
	max-width: 18ch;
}
.raven-etapes-cadre {
	position: relative;
}
.raven-etapes {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1rem;
}
.raven-etapes__rail {
	position: absolute;
	left: 1.5rem;
	top: 1.5rem;
	bottom: 1.5rem;
	width: 1px;
	background: var(--raven-bordure-forte);
	overflow: hidden;
}
.raven-etapes__remplissage {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, var(--raven-turquoise), var(--raven-orange));
	transform-origin: top;
	transform: scaleY(var(--p, 1));
}
.raven-etape {
	position: relative;
	padding: 0.5rem 0 2rem 4.75rem;
	min-height: 3rem;
}
.raven-etape__num {
	position: absolute;
	left: 0;
	top: 0;
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: 0.9375rem;
	color: var(--raven-gris);
	background: #000;
	border: 1px solid var(--raven-bordure-forte);
	transition: color 0.4s ease, background-color 0.4s ease, border-color 0.4s ease, transform 0.4s var(--raven-ease);
}
.raven-etape.is-active .raven-etape__num,
html:not(.raven-anim) .raven-etape__num {
	color: #000;
	background: var(--raven-turquoise);
	border-color: var(--raven-turquoise);
}
.raven-etape.is-active .raven-etape__num {
	transform: scale(1.06);
}
.raven-etape__titre {
	margin: 0.45rem 0 0.6rem;
	font-size: var(--wp--preset--font-size--sous-titre);
}
.raven-etape__texte {
	margin: 0;
	color: var(--raven-gris);
	max-width: 52ch;
}

/* =========================================================
   L'AGENCE
   ========================================================= */
.raven-agence__grille {
	display: grid;
	gap: 3rem 5rem;
	align-items: center;
}
@media (min-width: 960px) {
	.raven-agence__grille {
		grid-template-columns: 1.1fr 0.9fr;
	}
}
.raven-agence__texte > * {
	margin-block: 0 0 1.25rem !important;
}
.raven-agence__texte h2 {
	max-width: 18ch;
	margin-bottom: 1.5rem !important;
}
.raven-piliers {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1rem;
}
.raven-pilier {
	padding: 1.5rem 1.75rem 1.5rem 2rem;
	overflow: hidden;
}
.raven-pilier::after {
	content: "";
	position: absolute;
	left: 0;
	top: 1.5rem;
	bottom: 1.5rem;
	width: 2px;
	background: var(--raven-degrade);
	border-radius: 2px;
}
.raven-pilier:hover {
	transform: translateX(6px);
}
.raven-pilier__titre {
	margin: 0 0 0.35rem;
	font-size: 1.25rem;
}
.raven-pilier__texte {
	margin: 0;
	color: var(--raven-gris);
	font-size: 0.9375rem;
}

/* =========================================================
   AVIS : SLIDER
   ========================================================= */
.raven-avis-section {
	overflow: hidden;
}
.raven-slider__commandes {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 2rem;
}
@media (min-width: 900px) {
	.raven-slider__commandes {
		justify-content: flex-end;
	}
}
.raven-slider__source {
	margin: 0 !important;
	font-size: 0.875rem;
	color: var(--raven-gris);
}
.raven-slider__fleches {
	display: flex;
	gap: 0.6rem;
}
.raven-slider__fleche {
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	border: 1px solid var(--raven-bordure-forte);
	background: transparent;
	color: #fff;
	cursor: pointer;
	transition: border-color 0.25s ease, color 0.25s ease, background-color 0.25s ease, transform 0.3s var(--raven-ease), opacity 0.25s ease;
}
.raven-slider__fleche svg {
	width: 1.2rem;
	height: 1.2rem;
}
.raven-slider__fleche:hover:not(:disabled) {
	border-color: var(--raven-turquoise);
	color: #000;
	background: var(--raven-turquoise);
}
.raven-slider__fleche:disabled {
	opacity: 0.3;
	cursor: default;
}
.raven-slider {
	position: relative;
}
.raven-slider__piste {
	list-style: none;
	margin: 0;
	padding: 0.5rem 0 1.5rem;
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: min(86%, 27rem);
	gap: 1.25rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	overscroll-behavior-x: contain;
	scrollbar-width: none;
}
.raven-slider__piste::-webkit-scrollbar {
	display: none;
}
.raven-slider__item {
	scroll-snap-align: start;
	display: flex;
}
.raven-avis-carte {
	margin: 0;
	width: 100%;
	display: flex;
	flex-direction: column;
	padding: 2rem 2rem 1.75rem;
	overflow: hidden;
}
.raven-avis-carte__guillemet {
	position: absolute;
	top: -1.25rem;
	right: 1.25rem;
	font-family: var(--wp--preset--font-family--archivo);
	font-size: 9rem;
	line-height: 1;
	color: rgba(30, 231, 239, 0.08);
	pointer-events: none;
}
.raven-avis-carte__note {
	margin: 0 0 1.25rem !important;
	font-size: 1rem;
}
.raven-avis-carte__texte {
	margin: 0 0 2rem;
	padding: 0;
	border: 0;
	flex: 1;
}
.raven-avis-carte__texte p {
	margin: 0;
	font-size: 1.0625rem;
	line-height: 1.65;
	color: #EDEDED;
}
.raven-avis-carte__auteur {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--raven-bordure);
	font-size: 0.9375rem;
	line-height: 1.35;
}
.raven-avis-carte__initiale {
	display: grid;
	place-items: center;
	width: 2.6rem;
	height: 2.6rem;
	flex: none;
	border-radius: 50%;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	color: #000;
	background: var(--raven-turquoise);
}
.raven-avis-carte__source {
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-slider__points {
	display: flex;
	gap: 0.5rem;
	margin-top: 0.5rem;
}
.raven-slider__point {
	width: 1.5rem;
	height: 3px;
	border-radius: 3px;
	background: var(--raven-bordure-forte);
	transition: background-color 0.3s ease, width 0.3s ease;
}
.raven-slider__point.is-actif {
	width: 2.75rem;
	background: var(--raven-turquoise);
}
.raven-avis-lien {
	margin-top: 2rem !important;
}

/* =========================================================
   FAQ
   ========================================================= */
.raven-faq-grille {
	display: grid;
	gap: 2.5rem 5rem;
}
@media (min-width: 960px) {
	.raven-faq-grille {
		grid-template-columns: 0.8fr 1.2fr;
		align-items: start;
	}
	.raven-faq-intro {
		position: sticky;
		top: 8rem;
	}
}
.raven-faq-intro > * {
	margin-block: 0 0 1.25rem !important;
}
.raven-faq-liste {
	border-top: 1px solid var(--raven-bordure-forte);
}
.raven-faq-liste > * {
	margin-block: 0 !important;
}
.raven-faq {
	border-bottom: 1px solid var(--raven-bordure);
	padding: 0;
}
.raven-faq summary {
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1.5rem;
	padding: 1.5rem 0;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: 1.125rem;
	line-height: 1.35;
	transition: color 0.2s ease;
}
.raven-faq summary:hover {
	color: var(--raven-turquoise);
}
.raven-faq summary::-webkit-details-marker {
	display: none;
}
.raven-faq summary::after {
	content: "";
	flex: none;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	border: 1px solid var(--raven-bordure-forte);
	background:
		linear-gradient(var(--raven-turquoise), var(--raven-turquoise)) center / 0.75rem 1.5px no-repeat,
		linear-gradient(var(--raven-turquoise), var(--raven-turquoise)) center / 1.5px 0.75rem no-repeat;
	transition: transform 0.35s var(--raven-ease), border-color 0.3s ease;
}
.raven-faq[open] summary::after {
	transform: rotate(45deg);
	border-color: var(--raven-turquoise);
}
.raven-faq > :not(summary) {
	margin: 0 0 1.5rem;
	padding-right: 3.5rem;
}
.raven-anim .raven-faq[open] > :not(summary) {
	animation: raven-monte 0.45s var(--raven-ease-out) both;
}

/* =========================================================
   CONTACT
   ========================================================= */
.raven-cta {
	overflow: hidden;
	background:
		radial-gradient(45% 60% at 10% 50%, rgba(30, 231, 239, 0.14), transparent 70%),
		radial-gradient(40% 55% at 90% 10%, rgba(254, 93, 38, 0.1), transparent 70%),
		#000;
}
.raven-contact {
	display: grid;
	gap: 3rem 5rem;
	align-items: start;
}
@media (min-width: 960px) {
	.raven-contact {
		grid-template-columns: 0.95fr 1.05fr;
	}
}
.raven-contact__texte > * {
	margin-block: 0 0 1.5rem !important;
}
.raven-contact__titre {
	font-size: var(--wp--preset--font-size--titre-principal) !important;
	line-height: 1.05 !important;
	letter-spacing: -0.015em;
	max-width: 12ch;
}
.raven-coordonnees {
	list-style: none;
	padding: 0;
	margin: 2rem 0 0 !important;
	display: grid;
	gap: 0;
	border-top: 1px solid var(--raven-bordure);
}
.raven-coordonnees li {
	display: grid;
	grid-template-columns: 7rem 1fr;
	gap: 1rem;
	padding: 1rem 0;
	border-bottom: 1px solid var(--raven-bordure);
	align-items: baseline;
}
.raven-coordonnees__libelle {
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--raven-gris);
}
.raven-coordonnees a {
	color: #fff;
	text-decoration: none;
	word-break: break-word;
	transition: color 0.2s ease;
}
.raven-coordonnees a:hover {
	color: var(--raven-turquoise);
}
.raven-form-carte {
	position: relative;
	padding: clamp(1.5rem, 4vw, 2.5rem);
	border-radius: calc(var(--raven-rayon) + 0.25rem);
	background:
		linear-gradient(#0A0A0A, #0A0A0A) padding-box,
		linear-gradient(140deg, rgba(30, 231, 239, 0.55), rgba(42, 42, 42, 0.8) 40%, rgba(42, 42, 42, 0.8) 70%, rgba(254, 93, 38, 0.45)) border-box;
	border: 1px solid transparent;
	box-shadow: 0 50px 100px -40px rgba(0, 0, 0, 0.95);
}

/* Formulaire */
.raven-form {
	margin: 0;
	text-align: left;
}
.raven-form__ligne {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	gap: 0 1.25rem;
}
.raven-form__champ {
	margin: 0 0 1.25rem;
	max-width: none !important;
}
.raven-form label {
	display: block;
	margin-bottom: 0.45rem;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--raven-gris-clair);
}
.raven-form input,
.raven-form textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 0.9rem 1rem;
	background: #050505;
	border: 1px solid var(--raven-bordure-forte);
	border-radius: 0.85rem;
	color: #fff;
	font: inherit;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}
.raven-form input:hover,
.raven-form textarea:hover {
	border-color: #3a3a3a;
}
.raven-form textarea {
	resize: vertical;
	min-height: 8.5rem;
}
.raven-form input:focus,
.raven-form textarea:focus {
	outline: none;
	border-color: var(--raven-turquoise);
	background: #000;
	box-shadow: 0 0 0 4px rgba(30, 231, 239, 0.14);
}
.raven-form__mention {
	margin: 0 0 1.25rem;
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-form__envoi {
	margin: 0;
}
.raven-form__envoi .wp-element-button {
	width: 100%;
	border: 0;
	cursor: pointer;
	padding-block: 1.05rem;
	font-size: 0.9375rem;
}
.raven-form__retour {
	padding: 0.9rem 1rem;
	border-radius: 0.85rem;
	margin: 0 0 1.25rem;
	border: 1px solid;
}
.raven-form__retour--ok {
	border-color: var(--raven-turquoise);
	background: rgba(30, 231, 239, 0.06);
}
.raven-form__retour--erreur {
	border-color: var(--raven-orange);
	background: rgba(254, 93, 38, 0.06);
}
.raven-form__piege {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* =========================================================
   PIED DE PAGE
   ========================================================= */
.raven-footer {
	position: relative;
	isolation: isolate;
	overflow: clip;
	margin-top: 0 !important;
	padding: clamp(4rem, 9vw, 7rem) var(--raven-gouttiere) clamp(1.25rem, 3vw, 2.5rem);
}
/* Halo turquoise doux qui dépasse au-dessus de la carte */
.raven-footer::before {
	content: "";
	position: absolute;
	left: 50%;
	top: -5rem;
	z-index: -1;
	width: min(70rem, 120vw);
	aspect-ratio: 2.2;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(3, 152, 158, 0.65), rgba(3, 152, 158, 0.22) 60%, transparent);
	filter: blur(18px);
	-webkit-mask-image: linear-gradient(transparent 5rem, #000 14rem);
	mask-image: linear-gradient(transparent 5rem, #000 14rem);
	transform: translateX(-50%);
	pointer-events: none;
}
.raven-footer__cadre {
	box-sizing: border-box;
	max-width: var(--raven-largeur);
	margin-inline: auto;
	padding: clamp(1.75rem, 4vw, 3rem);
	border-radius: 24px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: #111;
	box-shadow: 0 30px 70px -40px rgba(0, 0, 0, 0.9);
}
/* Entrée : la carte monte, le halo s'allume (classes posées par raven.js) */
.raven-footer-anim .raven-footer::before {
	opacity: 0;
	transform: translateX(-50%) scale(0.85);
	transition: opacity 1.1s var(--raven-ease-apparition), transform 1.1s var(--raven-ease-apparition);
}
.raven-footer-anim .raven-footer__cadre {
	opacity: 0;
	transform: translate3d(0, 36px, 0);
	transition: opacity 0.6s var(--raven-ease-apparition), transform 0.6s var(--raven-ease-apparition);
}
.raven-footer-anim .raven-footer.is-vue::before {
	opacity: 1;
	transform: translateX(-50%) scale(1);
}
.raven-footer-anim .raven-footer.is-vue .raven-footer__cadre {
	opacity: 1;
	transform: none;
}
.raven-footer__colonnes {
	display: grid;
	gap: 2.25rem 2rem;
}
@media (min-width: 640px) {
	.raven-footer__colonnes {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.raven-footer__marque {
		grid-column: 1 / -1;
	}
}
@media (min-width: 1100px) {
	.raven-footer__colonnes {
		grid-template-columns: 1.1fr 1fr 0.7fr 1.2fr;
	}
	.raven-footer__marque {
		grid-column: auto;
	}
}
.raven-footer__colonnes > * {
	margin-block: 0 !important;
}
/* Réseaux : boutons ronds gris foncé, turquoise au survol */
.raven-footer__reseaux {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}
.raven-footer__reseaux a {
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 50%;
	color: var(--raven-gris-clair);
	background: #242424;
	transition: color 0.3s var(--raven-ease-survol), background-color 0.3s var(--raven-ease-survol), transform 0.3s var(--raven-ease-survol);
}
.raven-footer__reseaux a:hover {
	color: #000;
	background: var(--raven-turquoise);
	transform: translateY(-2px);
}
.raven-footer__reseaux svg {
	width: 1.25rem;
	height: 1.25rem;
}
.raven-footer .raven-footer__titre {
	margin: 0 0 1rem !important;
	font-family: var(--wp--preset--font-family--dm-sans);
	font-size: 0.875rem !important;
	font-weight: 500;
	line-height: 1.4 !important;
	letter-spacing: 0;
	color: var(--raven-gris);
}
.raven-footer .raven-footer-links {
	list-style: none;
	margin: 0;
	padding-left: 0;
	display: grid;
	justify-items: start;
	gap: 0.7rem;
	font-size: 0.9375rem;
	font-weight: 500;
	color: #fff;
}
.raven-footer .raven-footer-links li {
	margin: 0;
	overflow-wrap: anywhere;
}
/* Liens : une ligne turquoise se dessine au survol */
.raven-footer .raven-footer-links a {
	color: #fff;
	text-decoration: none;
	background-image: linear-gradient(var(--raven-turquoise), var(--raven-turquoise));
	background-repeat: no-repeat;
	background-position: 0 100%;
	background-size: 0 1px;
	padding-bottom: 2px;
	transition: background-size 0.3s var(--raven-ease-survol);
}
.raven-footer .raven-footer-links a:hover,
.raven-footer .raven-footer-links a:focus-visible {
	background-size: 100% 1px;
}
.raven-footer__action {
	margin-top: 1.25rem;
}
.raven-footer__action .wp-block-button__link {
	padding: 0.7rem 1.1rem !important;
	font-size: 0.8125rem;
	white-space: nowrap;
}
.raven-footer__bas {
	margin-top: clamp(1.75rem, 4vw, 2.75rem) !important;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-footer__bas p {
	margin: 0 !important;
}
/* Mobile : colonnes empilées, logo et réseaux centrés, place pour le bouton flottant */
@media (max-width: 639px) {
	.raven-footer__marque {
		text-align: center;
	}
	.raven-footer__marque .raven-logo {
		display: flex;
		justify-content: center;
	}
	.raven-footer__reseaux {
		justify-content: center;
	}
}
@media (max-width: 781px) {
	.raven-footer {
		padding-bottom: 5.5rem;
	}
}
@media (prefers-reduced-motion: reduce) {
	.raven-footer__reseaux a:hover {
		transform: none;
	}
}
/* ----- Pages simples (mentions légales, confidentialité) : largeur de lecture ~720 px ----- */
.raven-page {
	padding: clamp(3rem, 7vw, 5.5rem) var(--raven-gouttiere) clamp(2rem, 5vw, 4rem);
}
.raven-page__titre,
.raven-page__contenu {
	box-sizing: border-box;
	max-width: 45rem;
	margin-inline: auto !important;
}
.raven-page__titre {
	margin-block: 0 2rem !important;
	font-size: var(--wp--preset--font-size--titre-principal) !important;
	line-height: 1.15;
	overflow-wrap: anywhere;
}
.raven-page__contenu {
	color: var(--raven-gris-clair);
	overflow-wrap: anywhere;
}
.raven-page__contenu > * {
	max-width: none;
}
.raven-page__contenu h2 {
	margin: 2.5rem 0 0.75rem !important;
	font-size: var(--wp--preset--font-size--sous-titre) !important;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: #fff;
}
.raven-page__contenu p,
.raven-page__contenu ul {
	margin-block: 0 1rem !important;
}
.raven-page__contenu ul {
	padding-left: 1.25rem;
}
.raven-page__contenu li {
	margin-bottom: 0.5rem;
}
.raven-page__contenu a {
	color: var(--raven-turquoise);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.raven-legal-date {
	font-size: 0.875rem;
	color: var(--raven-gris);
}
.raven-form__mention a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
}
.raven-form__mention a:hover {
	color: var(--raven-turquoise);
}
/* La mention passe sous le bouton d'envoi */
.raven-form__envoi + .raven-form__mention {
	margin: 0.9rem 0 0 !important;
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
/* ----- Slider d'avis Google : note, carte, « Lire la suite » ----- */
.raven-avis-note {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0 !important;
}
.raven-avis-note__chiffre {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: 2.5rem;
	line-height: 1;
	color: #fff;
}
.raven-avis-note__detail {
	display: grid;
	gap: 0.1rem;
	font-size: 0.875rem;
	color: var(--raven-gris);
}
.raven-avis-carte__tete {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.1rem;
}
.raven-avis-carte__tete .raven-avis-carte__note {
	margin: 0 !important;
}
.raven-avis-carte__g {
	display: inline-flex;
	opacity: 0.85;
}
.raven-avis-carte__g svg {
	width: 1.15rem;
	height: 1.15rem;
}
.raven-avis-carte__guillemet {
	display: none;
}
.raven-slider.is-pret [data-avis-texte]:not(.is-ouvert) {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	line-clamp: 4;
	overflow: hidden;
}
.raven-avis-carte__suite {
	min-height: 2.75rem;
	margin-top: 0.15rem;
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
	font: inherit;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--raven-turquoise);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.raven-avis-carte__suite[hidden] {
	display: none;
}
.raven-avis-carte__texte {
	margin-bottom: 1.25rem;
}
.raven-avis-carte__photo {
	width: 2.6rem;
	height: 2.6rem;
	flex: none;
	border-radius: 50%;
	object-fit: cover;
}
.raven-avis-carte__identite {
	display: grid;
	gap: 0.1rem;
}
.raven-avis-lien.wp-block-button {
	margin-top: 2rem !important;
	display: flex;
	justify-content: center;
}
/* Mot clé ou chiffre en orange (usage réservé, voir CLAUDE.md) */
.raven-accent {
	color: var(--raven-orange);
}

/* =========================================================
   APPARITION AU DÉFILEMENT (classes posées par raven.js)
   ========================================================= */
.raven-anim .raven-reveal {
	opacity: 0;
	transform: translate3d(0, 36px, 0);
	transition:
		opacity 0.9s var(--raven-ease-out) var(--raven-delai, 0ms),
		transform 0.9s var(--raven-ease-out) var(--raven-delai, 0ms);
}
.raven-anim .raven-reveal.is-visible {
	opacity: 1;
	transform: none;
}
/* Les cartes gardent leurs transitions de survol après l'apparition */
.raven-anim .raven-offre.raven-reveal.is-visible,
.raven-anim .raven-pilier.raven-reveal.is-visible {
	transition: opacity 0.9s var(--raven-ease-out) var(--raven-delai, 0ms), transform 0.45s var(--raven-ease), border-color 0.35s ease;
}

/* =========================================================
   ACCUEIL DYNAMIQUE (raven-dynamique.js : GSAP, Lenis)
   ========================================================= */

/* Défilement fluide Lenis */
html.lenis,
html.lenis body {
	height: auto;
}
/* Indispensable : avec scroll-behavior: smooth, ScrollTrigger.refresh() mesure mal hors du haut de page */
html.raven-gsap,
.lenis.lenis-smooth {
	scroll-behavior: auto !important;
}
.lenis.lenis-stopped {
	overflow: hidden;
}

/* Titre du hero masqué le temps du découpage en mots (filet de sécurité de 2,5 s dans le head) */
/* Tout le hero attend les scripts : sinon il s'affiche puis repart de zéro avec les animations d'entrée */
.raven-attente .raven-hero__texte > *,
.raven-attente .raven-hero__visuel {
	visibility: hidden;
}
/* Le souligné de l'accent n'apparaît qu'une fois les mots révélés */
.raven-hero__mot {
	transition: background-size 0.7s var(--raven-ease-out);
}
.raven-hero__titre.is-en-revelation .raven-hero__mot {
	background-size: 0 0.08em;
	transition: none;
}
.raven-js-dyn .raven-hero__texte > .raven-hero__titre,
.raven-js-dyn .raven-hero__texte > .raven-hero__etiquettes {
	animation: none;
}
.raven-anim .raven-hero__texte > *:nth-child(6) { animation-delay: 0.48s; }

/* Vidéo du hero (si assets/video/hero.mp4 existe) : jamais sous 768 px ni si moins d'animations */
.raven-hero__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 70% center;
	opacity: 0.85;
}
@media (max-width: 767px) {
	.raven-hero__video {
		display: none;
	}
}

/* Étiquettes chiffrées autour du titre */
.raven-hero__texte {
	position: relative;
}
.raven-hero__etiquettes {
	list-style: none;
	margin: 0 0 1.75rem !important;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.875rem 0.6rem;
}
.raven-etiquette {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.55rem 0.95rem;
	border-radius: 999px;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.2;
	color: var(--raven-gris-clair);
	background: rgba(12, 12, 12, 0.78);
	border: 1px solid rgba(30, 231, 239, 0.28);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	box-shadow: 0 18px 36px -18px rgba(0, 0, 0, 0.9);
	white-space: nowrap;
	will-change: transform;
}
.raven-etiquette strong {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: 0.9375rem;
	color: #fff;
}
.raven-etiquette .raven-accent {
	color: var(--raven-orange);
}
@media (min-width: 1280px) {
	/* Grand écran : les étiquettes flottent dans la marge droite du titre */
	.raven-hero__etiquettes {
		position: absolute;
		inset: 0;
		margin: 0 !important;
		display: block;
		pointer-events: none;
		z-index: 2;
	}
	.raven-etiquette {
		position: absolute;
	}
	.raven-etiquette--a { top: 9%; right: -3.5rem; }
	.raven-etiquette--b { top: 25%; right: -6.25rem; }
	.raven-etiquette--c { top: 41%; right: -2.5rem; }
	/* Titre et sous-titre restent à gauche des étiquettes */
	.raven-hero__titre {
		max-width: 9.6em;
	}
	.raven-hero__chapo {
		max-width: 29rem;
	}
}
/* Écrans d'ordinateur peu hauts : tout le hero tient sous l'en-tête, sans réduire le titre */
@media (min-width: 1000px) and (max-height: 920px) {
	.raven-hero {
		padding-top: 1.5rem !important;
		padding-bottom: 1.5rem !important;
		min-height: calc(100svh - 9.75rem);
	}
	.raven-hero__inner,
	.raven-hero__visuel {
		margin-block-start: 0 !important;
	}
	.raven-hero__chapo {
		margin-bottom: 1.5rem !important;
	}
	.raven-liens-secondaires {
		margin-bottom: 1.5rem !important;
	}
	.raven-hero__preuves {
		padding-top: 1rem;
	}
}

/* Bouton principal : halo turquoise doux (décalé vers le bas, pas de néon) */
.raven-hero .raven-bouton-fleche,
.raven-bande-cta .raven-bouton-fleche {
	position: relative;
	isolation: isolate;
}
.raven-hero .raven-bouton-fleche::before,
.raven-bande-cta .raven-bouton-fleche::before {
	content: "";
	position: absolute;
	inset: 20% 8% -30%;
	z-index: -1;
	border-radius: 999px;
	background: radial-gradient(closest-side, rgba(30, 231, 239, 0.55), transparent);
	filter: blur(14px);
	opacity: 0.7;
	animation: raven-halo 3.2s ease-in-out infinite;
	pointer-events: none;
}
@keyframes raven-halo {
	0%, 100% { opacity: 0.45; transform: scale(0.94); }
	50% { opacity: 0.85; transform: scale(1.06); }
}
.raven-hero .raven-bouton-fleche .wp-block-button__link,
.raven-bande-cta .raven-bouton-fleche .wp-block-button__link {
	will-change: transform;
}

/* Bandes d'appel à l'action entre les sections */
.raven-bande-cta {
	position: relative;
	padding: clamp(1.5rem, 4vw, 2.5rem) var(--raven-gouttiere);
	background: #000;
}
.raven-bande-cta__inner {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	max-width: var(--raven-largeur);
	margin-inline: auto;
	display: grid;
	gap: 1.5rem;
	align-items: center;
	padding: clamp(1.75rem, 4vw, 2.75rem) clamp(1.5rem, 4vw, 3rem);
	border-radius: var(--raven-rayon);
	border: 1px solid rgba(30, 231, 239, 0.22);
	background:
		radial-gradient(60% 120% at 100% 0%, rgba(3, 152, 158, 0.28), transparent 70%),
		radial-gradient(40% 90% at 0% 100%, rgba(254, 93, 38, 0.1), transparent 70%),
		#070707;
}
.raven-bande-cta__inner::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 2px;
	background: var(--raven-degrade);
	opacity: 0.8;
}
@media (min-width: 900px) {
	.raven-bande-cta__inner {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 2.5rem;
	}
}
.raven-bande-cta__titre {
	margin: 0 !important;
	max-width: 24ch;
	font-size: clamp(1.375rem, 2.6vw, 2rem) !important;
	line-height: 1.2 !important;
	color: #fff;
	text-wrap: balance;
}
.raven-bande-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin: 0 !important;
}
.raven-bouton-wa .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}
.raven-bouton-wa svg {
	width: 1.15rem;
	height: 1.15rem;
	flex: none;
}

/* Cas clients */
.raven-cas-vedette,
.raven-cas-carte {
	--x: 50%;
	--y: 0%;
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border-radius: var(--raven-rayon);
	border: 1px solid var(--raven-bordure);
	background: var(--raven-surface);
	transition: transform 0.45s var(--raven-ease), border-color 0.35s ease;
}
.raven-cas-vedette::before,
.raven-cas-carte::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	border-radius: inherit;
	background: radial-gradient(420px circle at var(--x) var(--y), rgba(30, 231, 239, 0.12), transparent 60%);
	opacity: 0;
	transition: opacity 0.4s ease;
}
.raven-cas-vedette:hover,
.raven-cas-carte:hover {
	border-color: rgba(30, 231, 239, 0.35);
}
.raven-cas-vedette:hover::before,
.raven-cas-carte:hover::before {
	opacity: 1;
}
.raven-cas-carte:hover {
	transform: translateY(-6px);
}
.raven-cas-vedette {
	box-sizing: border-box;
	margin-top: clamp(2rem, 4vw, 3rem);
	padding: clamp(1.5rem, 4vw, 2.75rem);
	border-color: rgba(30, 231, 239, 0.3);
	background:
		radial-gradient(55% 120% at 100% 0%, rgba(3, 152, 158, 0.3), transparent 70%),
		radial-gradient(40% 80% at 0% 100%, rgba(254, 93, 38, 0.08), transparent 70%),
		var(--raven-surface);
}
.raven-cas-vedette__tete {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 0.5rem 1.5rem;
	margin-bottom: 1.5rem;
}
.raven-cas__secteur,
.raven-cas__periode {
	margin: 0 !important;
	font-size: 0.875rem;
	font-weight: 500;
}
.raven-cas__secteur {
	color: var(--raven-turquoise);
}
.raven-cas__secteur span {
	color: var(--raven-gris);
	font-weight: 400;
}
.raven-cas__periode {
	color: var(--raven-gris);
}
.raven-cas-vedette__corps {
	display: grid;
	gap: 2rem;
	align-items: end;
}
@media (min-width: 900px) {
	.raven-cas-vedette__corps {
		grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
		gap: 3rem;
	}
}
.raven-cas-vedette__chiffre {
	margin: 0 0 0.5rem !important;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: clamp(3rem, 9vw, 6rem);
	line-height: 1;
	letter-spacing: -0.02em;
	color: var(--raven-turquoise);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.raven-cas-vedette__titre {
	margin: 0 0 1rem !important;
	max-width: 28ch;
	font-size: var(--wp--preset--font-size--sous-titre) !important;
	color: var(--raven-texte-fort);
}
.raven-cas-vedette__accroche {
	margin: 0 !important;
	color: var(--raven-gris-clair);
	max-width: 52ch;
}
.raven-cas-vedette__indicateurs {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
}
.raven-cas-vedette__indicateurs li {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	padding: 1rem;
	border-radius: 1rem;
	border: 1px solid var(--raven-bordure-forte);
	background: rgba(0, 0, 0, 0.45);
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-cas-vedette__indicateurs strong {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: clamp(1.05rem, 2vw, 1.375rem);
	color: var(--raven-texte-fort);
	white-space: nowrap;
}
.raven-cas__source {
	margin: 1.5rem 0 0 !important;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--raven-gris);
}
.raven-cas-grille {
	list-style: none;
	margin: 1.25rem 0 0;
	padding: 0;
	display: grid;
	gap: 1.25rem;
}
@media (min-width: 640px) {
	.raven-cas-grille {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (min-width: 1100px) {
	.raven-cas-grille {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}
.raven-cas-carte {
	display: flex;
	flex-direction: column;
	padding: 1.75rem 1.5rem 1.5rem;
}
.raven-cas-carte__secteur {
	margin: 0 0 0.3rem !important;
	font-size: 1.125rem !important;
	line-height: 1.3 !important;
	color: var(--raven-texte-fort);
}
.raven-cas-carte__lieu {
	margin: 0 0 1.5rem !important;
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-cas-carte__cpl {
	margin: auto 0 1.25rem !important;
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0.4rem;
}
.raven-cas-carte__cpl .raven-compteur {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: clamp(2.25rem, 3.4vw, 2.75rem);
	line-height: 1;
	color: var(--raven-turquoise);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.raven-cas-carte__unite {
	font-size: 0.875rem;
	color: var(--raven-gris-clair);
}
.raven-cas-carte__details {
	margin: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.75rem;
	padding-top: 1rem;
	border-top: 1px solid var(--raven-bordure);
}
.raven-cas-carte__details dt {
	font-size: 0.75rem;
	color: var(--raven-gris);
}
.raven-cas-carte__details dd {
	margin: 0.2rem 0 0;
	font-weight: 500;
	color: var(--raven-texte-fort);
}
.raven-cas-carte .raven-cas__source {
	margin-top: 1rem !important;
}
.raven-cas__note {
	margin-top: 1.5rem !important;
}

/* Liens secondaires sous un bouton Calendly (« ou écrire un message », WhatsApp) */
.raven-liens-secondaires {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.75rem;
	margin: 0.9rem 0 0 !important;
	font-size: 0.875rem;
	color: var(--raven-gris);
}
.raven-liens-secondaires a {
	color: var(--raven-gris-clair);
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, 0.3);
	text-underline-offset: 3px;
}
.raven-liens-secondaires a:hover {
	color: var(--raven-turquoise);
	text-decoration-color: currentColor;
}
.raven-hero .raven-liens-secondaires {
	margin: -1.5rem 0 2.5rem !important;
}
.raven-bande-cta__actions .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin: 0;
}

/* Contact : carte Calendly au-dessus du formulaire */
.raven-contact__colonne {
	display: grid;
	gap: 1.25rem;
}
.raven-calendly-carte {
	display: grid;
	gap: 1.25rem;
	align-items: center;
	padding: clamp(1.25rem, 3.5vw, 2rem);
	border-radius: calc(var(--raven-rayon) + 0.25rem);
	border: 1px solid rgba(30, 231, 239, 0.35);
	background:
		radial-gradient(70% 140% at 100% 0%, rgba(3, 152, 158, 0.3), transparent 70%),
		#0A0A0A;
}
@media (min-width: 640px) {
	.raven-calendly-carte {
		grid-template-columns: minmax(0, 1fr) auto;
	}
}
.raven-calendly-carte__titre {
	margin: 0 0 0.35rem !important;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--sous-titre);
	line-height: 1.3;
	color: #fff;
}
.raven-calendly-carte__texte {
	margin: 0 !important;
	font-size: 0.9375rem;
	color: var(--raven-gris);
	max-width: 46ch;
}
.raven-contact__ou {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin: 0 !important;
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--raven-gris);
}
.raven-contact__ou::before,
.raven-contact__ou::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--raven-bordure-forte);
}

/* Bouton flottant mobile « Réserver un appel » */
.raven-flottant {
	position: fixed;
	left: 50%;
	bottom: max(1rem, env(safe-area-inset-bottom));
	z-index: 60;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.95rem 1.5rem;
	border-radius: 999px;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.2;
	color: #000;
	background: var(--raven-turquoise);
	text-decoration: none;
	white-space: nowrap;
	box-shadow: 0 14px 30px -10px rgba(0, 0, 0, 0.85), 0 6px 22px -6px rgba(30, 231, 239, 0.45);
	transform: translate3d(-50%, 160%, 0);
	opacity: 0;
	visibility: hidden;
	transition: transform 0.45s var(--raven-ease-out), opacity 0.3s ease, visibility 0s linear 0.45s;
}
.raven-flottant.is-visible {
	transform: translate3d(-50%, 0, 0);
	opacity: 1;
	visibility: visible;
	transition: transform 0.45s var(--raven-ease-out), opacity 0.3s ease, visibility 0s;
}
.raven-flottant:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
}
@media (min-width: 782px) {
	.raven-flottant {
		display: none;
	}
}

/* États pilotés par GSAP */
.raven-gsap .raven-bandeau__piste {
	animation: none;
}
.raven-gsap .raven-offre__visuel {
	will-change: transform;
}
.raven-etapes-cadre.is-pilote .raven-etapes__remplissage {
	background: linear-gradient(180deg, var(--raven-turquoise), var(--raven-turquoise-profond, #03989E));
	transform: scaleY(0.02);
}
.raven-etapes-cadre.is-pilote .raven-etape {
	opacity: 0.32;
	transition: opacity 0.5s ease;
}
.raven-etapes-cadre.is-pilote .raven-etape.is-active {
	opacity: 1;
}
.raven-etapes-cadre.is-pilote .raven-etape.is-courante .raven-etape__titre {
	color: var(--raven-turquoise);
}
.raven-etapes-cadre.is-pilote .raven-etape__titre {
	transition: color 0.4s ease;
}
.raven-gsap .raven-methode__intro {
	position: static;
}

/* =========================================================
   v1.3 : RYTHME CLAIR / SOMBRE, VIGNETTES, PARCOURS HORIZONTAL
   ========================================================= */

/* Badge de section en pilule (remplace le trait du surtitre) */
.raven-surtitre {
	gap: 0.5rem;
	padding: 0.45rem 0.95rem;
	border-radius: 999px;
	border: 1px solid rgba(30, 231, 239, 0.28);
	background: linear-gradient(180deg, rgba(30, 231, 239, 0.1), rgba(30, 231, 239, 0.02));
	font-size: 0.75rem;
	letter-spacing: 0.12em;
}
.raven-surtitre::before {
	width: 0.4rem;
	height: 0.4rem;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 0 3px rgba(30, 231, 239, 0.18);
}

/* Mot clé du titre en dégradé turquoise qui glisse doucement */
.raven-degrade-texte,
.raven-degrade-texte .raven-mot {
	background-image: linear-gradient(90deg, #1EE7EF 0%, #03989E 35%, #1EE7EF 70%, #03989E 100%);
	background-size: 200% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	animation: raven-degrade-glisse 8s linear infinite;
}
@keyframes raven-degrade-glisse {
	to { background-position: -200% 0; }
}

/* Grain très léger sur tout le fond */
body::after {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 45;
	pointer-events: none;
	opacity: 0.035;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
}

/* Halo qui dérive lentement dans certaines sections */
.raven-halo-lent {
	position: absolute;
	z-index: -1;
	width: min(60vw, 46rem);
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(30, 231, 239, 0.16), transparent);
	filter: blur(30px);
	pointer-events: none;
	animation: raven-derive 22s ease-in-out infinite alternate;
}
@keyframes raven-derive {
	0% { transform: translate3d(-8%, -6%, 0) scale(1); }
	100% { transform: translate3d(10%, 8%, 0) scale(1.15); }
}

/* ----- Sections claires (retirer .raven-section--clair pour revenir au noir) ----- */
.raven-fond-clair {
	display: none;
}
.raven-section--clair {
	--raven-fond-clair: #F4F6F6;
	--raven-texte-fort: #0A0A0A;
	--raven-turquoise: #03989E;
	--raven-accent-texte: #037C81;
	--raven-gris: #4F585A;
	--raven-gris-clair: #2E3537;
	--raven-bordure: #E1E6E6;
	--raven-bordure-forte: #CFD7D7;
	--raven-surface: #FFFFFF;
	--raven-carte-fond: #FFFFFF;
	isolation: isolate;
	color: #0A0A0A;
	background: var(--raven-fond-clair);
}
.raven-section--clair > .raven-fond-clair {
	display: block;
	position: absolute;
	inset: 0;
	z-index: -1;
	max-width: none !important;
	margin: 0 !important;
	background: var(--raven-fond-clair);
	will-change: transform;
}
.raven-gsap .raven-section--clair {
	background: transparent;
}
.raven-section--clair::before,
.raven-section--clair + .raven-section::before {
	display: none;
}
.raven-section--clair :where(h1, h2, h3, h4),
.raven-section--clair .has-gris-texte-color {
	color: var(--raven-texte-fort);
}
.raven-section--clair .has-gris-texte-color,
.raven-section--clair .raven-entete p {
	color: var(--raven-gris) !important;
}
.raven-section--clair .raven-surtitre,
.raven-section--clair .raven-cas__secteur {
	color: var(--raven-accent-texte) !important;
}
.raven-section--clair .raven-surtitre {
	border-color: rgba(3, 152, 158, 0.3);
	background: rgba(3, 152, 158, 0.07);
}
.raven-section--clair .raven-degrade-texte,
.raven-section--clair .raven-degrade-texte .raven-mot {
	background-image: linear-gradient(90deg, #03989E 0%, #037C81 35%, #0BB5BC 70%, #03989E 100%);
}
.raven-section--clair .raven-note {
	color: var(--raven-gris);
}
.raven-section--clair .raven-cas-vedette {
	background:
		radial-gradient(55% 120% at 100% 0%, rgba(30, 231, 239, 0.16), transparent 70%),
		#fff;
	border-color: rgba(3, 152, 158, 0.35);
	box-shadow: 0 30px 60px -40px rgba(3, 60, 62, 0.45);
}
.raven-section--clair .raven-cas-vedette__indicateurs li {
	background: #F4F6F6;
}
.raven-section--clair .raven-cas-carte {
	box-shadow: 0 20px 40px -32px rgba(3, 60, 62, 0.4);
}
.raven-section--clair .raven-cas-vedette::before,
.raven-section--clair .raven-cas-carte::before,
.raven-section--clair .raven-vignette::before {
	background: radial-gradient(380px circle at var(--x) var(--y), rgba(30, 231, 239, 0.14), transparent 60%);
}

/* En-tête centré (vignettes) */
.raven-entete--centre {
	text-align: center;
}
.raven-entete--centre h2,
.raven-entete--centre p {
	margin-inline: auto !important;
}
.raven-entete--centre h2 {
	max-width: 24ch;
}
.raven-entete--centre p:not(.raven-surtitre) {
	margin-top: 1.25rem !important;
	max-width: 56ch;
}

/* ----- 6 vignettes animées ----- */
.raven-vignettes__grille {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1.25rem;
}
@media (min-width: 640px) {
	.raven-vignettes__grille {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (min-width: 1024px) {
	.raven-vignettes__grille {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.raven-vignette {
	--x: 50%;
	--y: 0%;
	--vi-c: var(--raven-turquoise);
	--vi-ligne: var(--raven-bordure-forte);
	--vi-fond: var(--raven-surface-2);
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	padding: 1.25rem 1.5rem 1.75rem;
	border-radius: var(--raven-rayon);
	border: 1px solid var(--raven-bordure);
	background: var(--raven-carte-fond);
	transition: transform 0.3s var(--raven-ease-survol), border-color 0.3s var(--raven-ease-survol), box-shadow 0.3s var(--raven-ease-survol);
}
.raven-section--clair .raven-vignette {
	--vi-fond: #F1F4F4;
	box-shadow: 0 18px 40px -30px rgba(3, 60, 62, 0.35);
}
.raven-vignette::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	border-radius: inherit;
	background: radial-gradient(380px circle at var(--x) var(--y), rgba(30, 231, 239, 0.1), transparent 60%);
	opacity: 0;
	transition: opacity 0.3s var(--raven-ease-survol);
}
.raven-vignette:hover {
	transform: translateY(-5px);
	border-color: rgba(3, 152, 158, 0.4);
}
.raven-vignette:hover::before {
	opacity: 1;
}
.raven-vignette__illu {
	position: relative;
	height: 8.5rem;
	margin: 0 -1.5rem 1.25rem;
	padding: 0 1.5rem;
	display: grid;
	place-items: center;
	overflow: hidden;
	border-bottom: 1px solid var(--raven-bordure);
}
.raven-vignette__titre {
	margin: 0 0 0.5rem !important;
	font-size: 1.1875rem !important;
	line-height: 1.3 !important;
	color: var(--raven-texte-fort);
}
.raven-vignette__texte {
	margin: 0 !important;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--raven-gris);
}
/* Les micro-animations ne tournent que lorsque la vignette est visible */
.raven-vignette__illu * {
	animation-play-state: paused !important;
}
.raven-vignette.is-anime .raven-vignette__illu * {
	animation-play-state: running !important;
}

/* 1. Ciblage : lignes qui se connectent vers l'icône */
.vi-ciblage {
	width: 100%;
	max-width: 19rem;
	height: auto;
	overflow: visible;
}
.vi-ciblage__lignes path {
	stroke: var(--vi-c);
	stroke-dasharray: 260;
	stroke-dashoffset: 260;
	opacity: 0.75;
	animation: vi-trace 4.2s var(--raven-ease-apparition) infinite;
}
.vi-ciblage__lignes path:nth-child(2) { animation-delay: 0.25s; }
.vi-ciblage__lignes path:nth-child(3) { animation-delay: 0.5s; }
.vi-ciblage__lignes path:nth-child(4) { animation-delay: 0.75s; }
.vi-ciblage__lignes path:nth-child(5) { animation-delay: 1s; }
@keyframes vi-trace {
	0% { stroke-dashoffset: 260; opacity: 0; }
	15% { opacity: 0.75; }
	55%, 80% { stroke-dashoffset: 0; opacity: 0.75; }
	100% { stroke-dashoffset: 0; opacity: 0; }
}
.vi-ciblage__points circle {
	fill: var(--vi-c);
}
.vi-ciblage__cible {
	fill: var(--vi-fond);
	stroke: var(--vi-c);
	stroke-width: 1.5;
}
.vi-ciblage__onde {
	fill: none;
	stroke: var(--vi-c);
	stroke-width: 1.5;
	transform-box: fill-box;
	transform-origin: center;
	animation: vi-onde 4.2s ease-out infinite 1.6s;
	opacity: 0;
}
@keyframes vi-onde {
	0% { transform: scale(1); opacity: 0.6; }
	60%, 100% { transform: scale(1.9); opacity: 0; }
}
.vi-ciblage__icone {
	stroke: var(--vi-c);
}

/* 2. Google : barre de recherche qui se tape, puis l'annonce apparaît */
.vi-google {
	width: 100%;
	max-width: 17rem;
	display: grid;
	gap: 0.6rem;
}
.vi-google__barre {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.6rem 0.85rem;
	border-radius: 999px;
	border: 1px solid var(--vi-ligne);
	background: var(--vi-fond);
	font-size: 0.8125rem;
	color: var(--raven-texte-fort);
}
.vi-google__barre svg {
	width: 1rem;
	height: 1rem;
	flex: none;
	color: var(--raven-gris);
}
.vi-google__saisie {
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
	max-width: 0;
	animation: vi-tape 5s steps(26, end) infinite;
}
@keyframes vi-tape {
	0% { max-width: 0; }
	45%, 85% { max-width: 13rem; }
	100% { max-width: 0; }
}
.vi-google__curseur {
	width: 1.5px;
	height: 1rem;
	background: var(--vi-c);
	animation: vi-clignote 0.9s steps(2, start) infinite;
}
@keyframes vi-clignote {
	to { visibility: hidden; }
}
.vi-google__resultat {
	display: grid;
	gap: 0.35rem;
	padding: 0.65rem 0.85rem;
	border-radius: 0.85rem;
	border: 1px solid var(--vi-ligne);
	background: var(--vi-fond);
	opacity: 0;
	transform: translateY(8px);
	animation: vi-resultat 5s var(--raven-ease-apparition) infinite;
}
.vi-google__resultat b {
	justify-self: start;
	padding: 0.1rem 0.45rem;
	border-radius: 0.35rem;
	font-size: 0.6875rem;
	color: #000;
	background: var(--raven-turquoise);
}
.vi-google__resultat span {
	height: 0.4rem;
	border-radius: 1rem;
	background: var(--vi-ligne);
}
.vi-google__resultat span:last-child {
	width: 65%;
}
@keyframes vi-resultat {
	0%, 45% { opacity: 0; transform: translateY(8px); }
	55%, 88% { opacity: 1; transform: none; }
	100% { opacity: 0; transform: translateY(8px); }
}

/* 3. Calendrier : 4 publications qui se placent dans le mois */
.vi-cal {
	width: 100%;
	max-width: 11.5rem;
}
.vi-cal__tete {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 0.5rem;
	font-size: 0.75rem;
	color: var(--raven-gris);
}
.vi-cal__compte {
	color: var(--raven-texte-fort);
	font-size: 0.8125rem;
}
.vi-cal__grille {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 0.3rem;
}
.vi-cal__grille span {
	aspect-ratio: 1;
	border-radius: 0.35rem;
	background: var(--vi-fond);
	border: 1px solid var(--vi-ligne);
}
.vi-cal__post {
	position: relative;
}
.vi-cal__post::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: var(--raven-turquoise);
	transform: scale(0);
	animation: vi-post-remplit 6s var(--raven-ease-apparition) infinite;
	animation-delay: inherit;
}
.vi-cal__post--1 { animation-delay: 0.6s; }
.vi-cal__post--2 { animation-delay: 1.2s; }
.vi-cal__post--3 { animation-delay: 1.8s; }
@keyframes vi-post-remplit {
	0%, 8% { transform: scale(0); }
	18%, 85% { transform: scale(1); }
	100% { transform: scale(0); }
}

/* 4. Leads : notifications qui arrivent une à une */
.vi-leads {
	width: 100%;
	max-width: 16rem;
	display: grid;
	gap: 0.3rem;
}
.vi-leads__ligne {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.3rem 0.6rem;
	line-height: 1.2;
	border-radius: 0.75rem;
	border: 1px solid var(--vi-ligne);
	background: var(--vi-fond);
	font-size: 0.6875rem;
	color: var(--raven-gris);
	opacity: 0;
	transform: translateY(10px);
	animation: vi-notif 6s var(--raven-ease-apparition) infinite;
}
.vi-leads__ligne:nth-child(2) { animation-delay: 0.5s; }
.vi-leads__ligne:nth-child(3) { animation-delay: 1s; }
@keyframes vi-notif {
	0% { opacity: 0; transform: translateY(10px); }
	10%, 80% { opacity: 1; transform: none; }
	92%, 100% { opacity: 0; transform: translateY(-6px); }
}
.vi-leads__ligne i {
	width: 0.5rem;
	height: 0.5rem;
	flex: none;
	border-radius: 50%;
	background: var(--raven-turquoise);
}
.vi-leads__ligne span {
	display: grid;
	flex: 1;
	line-height: 1.3;
}
.vi-leads__ligne b {
	font-size: 0.75rem;
	color: var(--raven-texte-fort);
}
.vi-leads__ligne em {
	font-style: normal;
	font-weight: 700;
	color: var(--raven-turquoise);
}

/* 5. Rapport : courbe qui se dessine, infobulle avec le vrai chiffre */
.vi-rapport {
	position: relative;
	width: 100%;
	max-width: 19rem;
	height: 6.5rem;
}
.vi-rapport svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}
.vi-rapport__grille {
	stroke: var(--vi-ligne);
	stroke-width: 1;
}
.vi-rapport__aire {
	fill: var(--raven-turquoise);
	opacity: 0;
	animation: vi-aire 5.5s ease infinite;
}
@keyframes vi-aire {
	0%, 35% { opacity: 0; }
	55%, 88% { opacity: 0.14; }
	100% { opacity: 0; }
}
.vi-rapport__courbe {
	stroke: var(--raven-turquoise);
	stroke-width: 2.5;
	stroke-linecap: round;
	stroke-dasharray: 1;
	stroke-dashoffset: 1;
	vector-effect: non-scaling-stroke;
	animation: vi-courbe 5.5s var(--raven-ease-apparition) infinite;
}
@keyframes vi-courbe {
	0% { stroke-dashoffset: 1; }
	45%, 88% { stroke-dashoffset: 0; }
	100% { stroke-dashoffset: 0; opacity: 0; }
}
.vi-rapport__point {
	position: absolute;
	right: -0.3rem;
	top: 18%;
	width: 0.7rem;
	height: 0.7rem;
	border-radius: 50%;
	background: var(--raven-orange);
	box-shadow: 0 0 0 4px rgba(254, 93, 38, 0.2);
	opacity: 0;
	animation: vi-apparait 5.5s var(--raven-ease-apparition) infinite;
}
.vi-rapport__bulle {
	position: absolute;
	right: 0.6rem;
	top: 34%;
	display: grid;
	gap: 0.1rem;
	padding: 0.45rem 0.7rem;
	border-radius: 0.65rem;
	border: 1px solid var(--vi-ligne);
	background: var(--raven-carte-fond);
	box-shadow: 0 12px 24px -14px rgba(0, 0, 0, 0.5);
	font-size: 0.6875rem;
	color: var(--raven-gris);
	opacity: 0;
	animation: vi-apparait 5.5s var(--raven-ease-apparition) infinite;
}
.vi-rapport__bulle b {
	font-family: var(--wp--preset--font-family--archivo);
	font-size: 1rem;
	color: var(--raven-texte-fort);
}
@keyframes vi-apparait {
	0%, 45% { opacity: 0; transform: translateY(6px); }
	55%, 88% { opacity: 1; transform: none; }
	100% { opacity: 0; }
}

/* 6. Rendez-vous : un créneau se choisit, la confirmation arrive */
.vi-rdv {
	width: 100%;
	max-width: 16.5rem;
	display: grid;
	gap: 0.6rem;
}
.vi-rdv__carte {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	padding: 0.7rem 0.85rem;
	border-radius: 0.9rem;
	border: 1px solid var(--vi-ligne);
	background: var(--raven-carte-fond);
	box-shadow: 0 14px 28px -18px rgba(0, 0, 0, 0.55);
	opacity: 0;
	transform: translateY(10px) scale(0.97);
	animation: vi-confirme 5s var(--raven-ease-apparition) infinite;
}
@keyframes vi-confirme {
	0%, 38% { opacity: 0; transform: translateY(10px) scale(0.97); }
	48%, 88% { opacity: 1; transform: none; }
	100% { opacity: 0; transform: translateY(-6px); }
}
.vi-rdv__icone {
	display: grid;
	place-items: center;
	width: 2.25rem;
	height: 2.25rem;
	flex: none;
	border-radius: 0.65rem;
	color: var(--raven-turquoise);
	background: rgba(30, 231, 239, 0.12);
}
.vi-rdv__icone svg {
	width: 1.25rem;
	height: 1.25rem;
}
.vi-rdv__coche {
	stroke-dasharray: 12;
	stroke-dashoffset: 12;
	animation: vi-coche 5s var(--raven-ease-apparition) infinite;
}
@keyframes vi-coche {
	0%, 48% { stroke-dashoffset: 12; }
	60%, 100% { stroke-dashoffset: 0; }
}
.vi-rdv__texte {
	display: grid;
	font-size: 0.6875rem;
	color: var(--raven-gris);
	line-height: 1.35;
}
.vi-rdv__texte b {
	font-size: 0.8125rem;
	color: var(--raven-texte-fort);
}
.vi-rdv__creneaux {
	display: flex;
	gap: 0.4rem;
}
.vi-rdv__creneaux span {
	flex: 1;
	padding: 0.35rem 0;
	border-radius: 0.5rem;
	border: 1px solid var(--vi-ligne);
	background: var(--vi-fond);
	text-align: center;
	font-size: 0.6875rem;
	color: var(--raven-gris);
}
.vi-rdv__choisi {
	position: relative;
	overflow: hidden;
	animation: vi-choisi 5s var(--raven-ease-apparition) infinite;
}
@keyframes vi-choisi {
	0%, 20% { color: var(--raven-gris); border-color: var(--vi-ligne); }
	30%, 88% { color: var(--raven-turquoise); border-color: var(--raven-turquoise); }
	100% { color: var(--raven-gris); border-color: var(--vi-ligne); }
}

/* ----- Mot géant qui glisse derrière les chiffres ----- */
.raven-resultats {
	overflow: clip;
}
.raven-mot-geant {
	position: absolute;
	left: 0;
	top: 50%;
	z-index: -1;
	max-width: none !important;
	margin: 0 !important;
	transform: translate3d(0, -50%, 0);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: clamp(7rem, 22vw, 20rem);
	line-height: 1;
	letter-spacing: -0.03em;
	white-space: nowrap;
	color: transparent;
	-webkit-text-stroke: 1px rgba(30, 231, 239, 0.14);
	pointer-events: none;
	user-select: none;
	will-change: transform;
}
.raven-resultats {
	isolation: isolate;
}

/* ----- Parcours client en défilement horizontal (section Méthode) ----- */
.raven-parcours {
	padding-inline: 0 !important;
	overflow: clip;
	isolation: isolate;
	background: #000;
}
.raven-parcours > * {
	max-width: none !important;
}
.raven-parcours__ecran {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
}
.raven-parcours__scene {
	min-width: 0;
}
@media (max-width: 767px) {
	.raven-parcours__intro {
		order: -1;
	}
}
.raven-parcours__intro {
	padding-inline: var(--raven-gouttiere);
	max-width: var(--raven-largeur);
	width: 100%;
	margin-inline: auto;
	box-sizing: border-box;
}
.raven-parcours__intro h2 {
	max-width: 16ch;
	margin: 0 0 1rem !important;
	font-size: clamp(1.75rem, 3.6vw, 3rem) !important;
	line-height: 1.12 !important;
}
.raven-parcours__intro p:not(.raven-surtitre) {
	margin: 0 !important;
	max-width: 46ch;
	color: var(--raven-gris);
}
.raven-parcours__scene {
	position: relative;
}
.raven-parcours__chaine {
	position: absolute;
	left: 0;
	top: 50%;
	z-index: 0;
	width: 300vw;
	max-width: none !important;
	height: clamp(11rem, 34vh, 20rem);
	margin: 0 !important;
	transform: translate3d(0, -50%, 0);
	background-image: var(--chaine-mobile);
	background-repeat: repeat-x;
	background-size: auto 100%;
	background-position: 0 50%;
	mix-blend-mode: screen;
	opacity: 0.85;
	pointer-events: none;
	will-change: transform;
}
@media (min-width: 768px) {
	.raven-parcours__chaine {
		background-image: var(--chaine);
	}
}
.raven-parcours__flou {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 1;
	width: 12vw;
	pointer-events: none;
}
.raven-parcours__flou--g {
	left: 0;
	background: linear-gradient(90deg, #000, transparent);
}
.raven-parcours__flou--d {
	right: 0;
	background: linear-gradient(-90deg, #000, transparent);
}
/* Base (mobile, sans JS, moins d'animations) : carrousel glissable */
.raven-parcours__piste {
	position: relative;
	z-index: 2;
	list-style: none;
	margin: 0;
	padding: 1.5rem var(--raven-gouttiere) 2rem;
	display: flex;
	gap: 1rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-padding-inline: var(--raven-gouttiere);
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}
.raven-parcours__piste::-webkit-scrollbar {
	display: none;
}
.raven-etape-carte {
	flex: 0 0 min(80vw, 19rem);
	scroll-snap-align: start;
	box-sizing: border-box;
	padding: 1.5rem 1.5rem 1.75rem;
	border-radius: var(--raven-rayon);
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0)) border-box,
		rgba(14, 14, 14, 0.88);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	box-shadow: 0 30px 60px -30px rgba(0, 0, 0, 0.9);
}
.raven-etape-carte__num {
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	margin-bottom: 1.5rem;
	border-radius: 50%;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	color: #000;
	background: var(--raven-turquoise);
}
.raven-etape-carte__titre {
	margin: 0 0 0.6rem !important;
	font-size: var(--wp--preset--font-size--sous-titre) !important;
}
.raven-etape-carte__texte {
	margin: 0 !important;
	font-size: 0.9375rem;
	color: var(--raven-gris);
}
/* Ordinateur avec GSAP : section épinglée, la piste glisse avec le défilement */
@media (min-width: 768px) {
	.raven-gsap .raven-parcours {
		padding-block: 0 !important;
	}
	.raven-gsap .raven-parcours__ecran {
		height: 100vh;
		min-height: 36rem;
		grid-template-rows: 1fr auto;
		gap: 0;
		padding-block: 6rem 4rem;
		box-sizing: border-box;
	}
	.raven-gsap .raven-parcours__scene {
		grid-row: 1;
		align-self: stretch;
	}
	.raven-gsap .raven-parcours__intro {
		grid-row: 2;
		position: relative;
		z-index: 3;
	}
	.raven-gsap .raven-parcours__piste {
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		overflow: visible;
		padding: 0 0 0 46vw;
		gap: clamp(2rem, 5vw, 5rem);
		align-items: center;
		scroll-snap-type: none;
		will-change: transform;
	}
	.raven-gsap .raven-etape-carte {
		flex-basis: 21rem;
	}
	.raven-gsap .raven-etape-carte:nth-child(odd) {
		transform: translateY(-34%);
	}
	.raven-gsap .raven-etape-carte:nth-child(even) {
		transform: translateY(34%);
	}
}

.raven-etape-carte {
	transition: border-color 0.3s var(--raven-ease-survol), box-shadow 0.3s var(--raven-ease-survol);
}
.raven-etape-carte.is-active {
	border-color: rgba(30, 231, 239, 0.45);
	box-shadow: 0 30px 60px -30px rgba(0, 0, 0, 0.9), 0 0 0 1px rgba(30, 231, 239, 0.15);
}
.raven-etape-carte__num {
	transition: transform 0.3s var(--raven-ease-survol);
}
.raven-etape-carte.is-active .raven-etape-carte__num {
	transform: scale(1.08);
}
.raven-services,
.raven-avis-section {
	isolation: isolate;
	overflow: clip;
}
/* Halos gardés dans la hauteur de leur section : overflow: clip couperait net leur lueur */
.raven-halo-lent--services {
	top: 10%;
	right: -15%;
}
.raven-halo-lent--avis {
	bottom: 14%;
	left: -18%;
}
.raven-section > .raven-halo-lent {
	max-width: none !important;
	margin: 0 !important;
}

/* ----- Offres en cartes tarifs (maquette inspirée de voxr.ai/pricing) ----- */
.raven-tarifs {
	isolation: isolate;
	overflow: clip;
}
.raven-tarifs h2 .raven-degrade-texte {
	display: block;
}
.raven-tarifs__grille {
	list-style: none;
	margin: 0;
	padding: 1.5rem 0 0;
	display: grid;
	gap: 1.25rem;
	align-items: start;
}
@media (min-width: 960px) {
	.raven-tarifs__grille {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: center;
	}
}
.raven-tarif {
	--x: 50%;
	--y: 0%;
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	padding: 2rem 1.75rem 2.25rem;
	border-radius: var(--raven-rayon);
	border: 1px solid var(--raven-bordure-forte);
	background:
		radial-gradient(60% 40% at 100% 0%, rgba(30, 231, 239, 0.06), transparent 70%),
		linear-gradient(180deg, #121212, #0A0A0A);
	transition: transform 0.3s var(--raven-ease-survol), border-color 0.3s var(--raven-ease-survol), box-shadow 0.3s var(--raven-ease-survol);
}
.raven-tarif::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	border-radius: inherit;
	background: radial-gradient(360px circle at var(--x) var(--y), rgba(30, 231, 239, 0.12), transparent 60%);
	opacity: 0;
	transition: opacity 0.3s var(--raven-ease-survol);
}
.raven-tarif:hover {
	transform: translateY(-6px);
	border-color: rgba(30, 231, 239, 0.45);
	box-shadow: 0 30px 60px -36px rgba(30, 231, 239, 0.35);
}
.raven-tarif:hover::before {
	opacity: 1;
}
/* Carte mise en avant : plus haute, bord en dégradé turquoise animé, halo */
.raven-tarif--vedette {
	padding-block: 2.75rem 3rem;
	border: 1px solid transparent;
	background:
		radial-gradient(70% 45% at 50% 0%, rgba(30, 231, 239, 0.16), transparent 70%) padding-box,
		linear-gradient(180deg, #0F1B1C, #0A0A0A) padding-box,
		conic-gradient(from var(--raven-angle, 0deg), #1EE7EF, #03989E, rgba(30, 231, 239, 0.15), #03989E, #1EE7EF) border-box;
	box-shadow: 0 40px 90px -40px rgba(30, 231, 239, 0.45);
	animation: raven-bord-tourne 6s linear infinite;
}
@property --raven-angle {
	syntax: "<angle>";
	initial-value: 0deg;
	inherits: false;
}
@keyframes raven-bord-tourne {
	to { --raven-angle: 360deg; }
}
.raven-tarif--vedette:hover {
	border-color: transparent;
}
@media (min-width: 960px) {
	.raven-tarif--vedette {
		transform: scale(1.04);
	}
	.raven-tarif--vedette:hover {
		transform: scale(1.04) translateY(-6px);
	}
}
.raven-tarif__badge {
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0 !important;
	padding: 0.35rem 0.9rem;
	border-radius: 999px;
	transform: translate(-50%, -50%);
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	white-space: nowrap;
	color: #000;
	background: var(--raven-turquoise);
	box-shadow: 0 8px 24px -6px rgba(30, 231, 239, 0.6);
}
.raven-tarif__nom {
	margin: 0 0 0.4rem !important;
	font-size: var(--wp--preset--font-size--sous-titre) !important;
}
.raven-tarif__cible {
	margin: 0 0 1.5rem !important;
	font-size: 0.9375rem;
	color: var(--raven-gris);
}
.raven-tarif__prix {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.15rem 0.4rem;
	margin: 0 0 1.5rem !important;
	color: #fff;
}
.raven-tarif__des {
	width: 100%;
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-tarif__montant {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: clamp(2rem, 3.4vw, 2.75rem);
	line-height: 1.05;
}
.raven-tarif__periode {
	font-size: 0.9375rem;
	color: var(--raven-gris);
}
.raven-tarif__action .wp-block-button__link {
	width: 100%;
	box-sizing: border-box;
	justify-content: center;
	text-align: center;
}
.raven-tarif__separateur {
	width: 100%;
	height: 1px;
	margin: 1.75rem 0 1.5rem;
	border: 0;
	background: var(--raven-bordure-forte);
}
.raven-tarif__prefixe {
	margin: 0 0 0.9rem !important;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--raven-turquoise);
}
.raven-tarif__inclus {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.75rem;
	font-size: 0.9375rem;
	color: var(--raven-gris-clair);
}
.raven-tarif__inclus li {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	line-height: 1.45;
}
.raven-tarif__inclus svg {
	width: 1.15rem;
	height: 1.15rem;
	flex: none;
	margin-top: 0.1rem;
	fill: rgba(30, 231, 239, 0.12);
	stroke: var(--raven-turquoise);
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
/* Cartes en cascade à l'entrée (propriété translate, séparée du scale de la carte mise en avant) */
.raven-js-dyn .raven-tarif {
	opacity: 0;
	translate: 0 50px;
	transition: transform 0.3s var(--raven-ease-survol), border-color 0.3s var(--raven-ease-survol), box-shadow 0.3s var(--raven-ease-survol), opacity 0.6s var(--raven-ease-apparition), translate 0.6s var(--raven-ease-apparition);
}
.raven-js-dyn .raven-tarif:nth-child(2) { transition-delay: 0s, 0s, 0s, 0.12s, 0.12s; }
.raven-js-dyn .raven-tarif:nth-child(3) { transition-delay: 0s, 0s, 0s, 0.24s, 0.24s; }
.raven-js-dyn .raven-tarif.is-vue {
	opacity: 1;
	translate: 0 0;
}
/* Coches qui apparaissent une à une quand la carte entre dans l'écran (classe posée par raven.js) */
.raven-js-dyn .raven-tarif__inclus li {
	opacity: 0;
	transform: translateX(-8px);
	transition: opacity 0.6s var(--raven-ease-apparition), transform 0.6s var(--raven-ease-apparition);
	transition-delay: calc(0.25s + var(--i, 0) * 0.08s);
}
.raven-js-dyn .raven-tarif.is-vue .raven-tarif__inclus li {
	opacity: 1;
	transform: none;
}
.raven-tarifs__garanties {
	list-style: none;
	margin: 2.5rem 0 0;
	padding: 1.5rem 0 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	gap: 1rem 2rem;
	border-top: 1px solid var(--raven-bordure);
}
.raven-tarifs__garanties li {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	font-size: 0.9375rem;
	color: var(--raven-gris-clair);
}
.raven-tarifs__garanties svg {
	width: 1.5rem;
	height: 1.5rem;
	flex: none;
	fill: none;
	stroke: var(--raven-turquoise);
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.raven-tarifs__mention {
	text-align: center;
	margin-inline: auto !important;
}
@media (prefers-reduced-motion: reduce) {
	.raven-tarif--vedette {
		animation: none !important;
	}
	.raven-js-dyn .raven-tarif__inclus li {
		opacity: 1 !important;
		transform: none !important;
	}
}

/* Offres : onglets, interrupteur, exclusions, options à la carte */
.raven-tarifs__onglets {
	display: flex;
	justify-content: center;
	gap: 0.35rem;
	width: fit-content;
	margin: 0 auto 1.25rem;
	padding: 0.3rem;
	border-radius: 999px;
	border: 1px solid var(--raven-bordure-forte);
	background: #0A0A0A;
}
.raven-tarifs__onglets[hidden],
.raven-tarifs__bascule[hidden] {
	display: none;
}
.raven-tarifs__onglet,
.raven-tarifs__bascule button {
	min-height: 2.75rem;
	border: 0;
	border-radius: 999px;
	cursor: pointer;
	font: inherit;
	font-weight: 500;
	background: transparent;
	transition: color 0.3s var(--raven-ease-survol), background-color 0.3s var(--raven-ease-survol);
}
.raven-tarifs__onglet {
	padding: 0.55rem 1.75rem;
	font-size: 0.9375rem;
	color: var(--raven-gris-clair);
}
.raven-tarifs__onglet[aria-selected="true"] {
	color: #000;
	background: var(--raven-turquoise);
}
.raven-tarifs__groupe {
	margin: 2rem 0 1rem !important;
	text-align: center;
	font-size: var(--wp--preset--font-size--sous-titre) !important;
}
.is-onglets .raven-tarifs__groupe {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0 !important;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}
.raven-tarifs__panneau {
	border-radius: var(--raven-rayon);
}
.raven-tarifs__panneau[hidden] {
	display: none;
}
.is-onglets .raven-tarifs__panneau:not([hidden]) {
	animation: raven-panneau 0.5s var(--raven-ease-apparition);
}
@keyframes raven-panneau {
	from { opacity: 0; transform: translate3d(0, 14px, 0); }
	to { opacity: 1; transform: none; }
}
.raven-tarifs__bascule {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0.25rem;
	width: fit-content;
	max-width: 100%;
	margin: 0 auto 1.5rem;
	padding: 0.25rem;
	border-radius: 999px;
	border: 1px solid var(--raven-bordure);
}
.raven-tarifs__bascule button {
	padding: 0.4rem 1.1rem;
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-tarifs__bascule button[aria-pressed="true"] {
	color: #fff;
	background: var(--raven-bordure-forte);
}
.raven-tarifs__bascule em {
	margin-left: 0.2rem;
	font-style: normal;
	font-weight: 700;
	color: var(--raven-orange);
}
.raven-tarif__condition {
	width: 100%;
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-tarif__montant {
	font-variant-numeric: tabular-nums;
}
.raven-tarif__exclu {
	color: #6F6F6F;
}
.raven-tarif__exclu > span {
	text-decoration: line-through;
	text-decoration-color: rgba(255, 255, 255, 0.2);
}
.raven-tarif__inclus .raven-tarif__exclu svg {
	fill: none;
	stroke: #6F6F6F;
}
.raven-options {
	margin-top: clamp(2.5rem, 5vw, 4rem) !important;
}
.raven-options__titre {
	margin: 0 0 1.25rem !important;
	text-align: center;
	font-size: var(--wp--preset--font-size--sous-titre) !important;
}
.raven-options__grille {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	max-width: 58rem;
	margin-inline: auto !important;
	gap: 1rem;
}
.raven-option {
	display: flex;
	flex-direction: column;
	padding: 1.25rem;
	border-radius: 1.1rem;
	border: 1px solid var(--raven-bordure);
	background: var(--raven-surface);
	transition: transform 0.3s var(--raven-ease-survol), border-color 0.3s var(--raven-ease-survol);
}
.raven-option:hover {
	transform: translateY(-4px);
	border-color: rgba(30, 231, 239, 0.35);
}
.raven-option svg {
	width: 1.6rem;
	height: 1.6rem;
	margin-bottom: 0.9rem;
	fill: none;
	stroke: var(--raven-turquoise);
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.raven-option__titre {
	margin: 0 0 0.35rem !important;
	font-size: 1rem !important;
	line-height: 1.3 !important;
}
.raven-option__detail {
	margin: 0 0 1rem !important;
	font-size: 0.8125rem;
	color: var(--raven-gris);
}
.raven-option__prix {
	margin: auto 0 0 !important;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: 1.0625rem;
	color: #fff;
}
.raven-tarifs__garanties {
	grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}
.raven-tarif__conditions {
	margin-top: 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px dashed var(--raven-bordure-forte);
	font-size: 0.8125rem;
	line-height: 1.5;
	color: var(--raven-gris);
}
.raven-tarif__conditions-titre {
	margin: 0 0 0.4rem !important;
	font-weight: 500;
	color: var(--raven-gris-clair);
}
.raven-tarif__conditions ul {
	margin: 0;
	padding: 0 0 0 1rem;
	display: grid;
	gap: 0.35rem;
}
/* Mobile : 5 premières lignes, puis « Voir tout le détail » (bouton créé par raven.js) */
.raven-tarif__deplier {
	display: none;
}
@media (max-width: 767px) {
	.raven-tarif__inclus.is-replie li:nth-child(n+6) {
		display: none;
	}
	.raven-tarif__deplier {
		display: inline-flex;
		align-self: flex-start;
		min-height: 2.75rem;
		align-items: center;
		margin-top: 0.35rem;
		padding: 0;
		border: 0;
		background: none;
		cursor: pointer;
		font: inherit;
		font-size: 0.875rem;
		font-weight: 500;
		color: var(--raven-turquoise);
		text-decoration: underline;
		text-underline-offset: 3px;
	}
}
/* 2 cartes par onglet, bien centrées */
@media (min-width: 960px) {
	.raven-tarifs__grille {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: stretch;
		max-width: 58rem;
		margin-inline: auto;
		gap: 2rem;
	}
}
/* Onglet avec une seule offre (Google Ads) : carte unique centrée */
.raven-tarifs__grille:has(> li:only-child) {
	grid-template-columns: minmax(0, 30rem);
	justify-content: center;
}
@media (max-width: 559px) {
	.raven-tarifs__bascule {
		flex-direction: column;
		width: 100%;
		box-sizing: border-box;
		border-radius: 1.5rem;
	}
	.raven-tarifs__bascule button {
		width: 100%;
		padding: 0.4rem 0.75rem;
	}
}
/* Mobile : cartes empilées dans l'ordre du markup (Acquisition puis Croissance), options en carrousel */
@media (max-width: 959px) {
	.raven-tarif--vedette {
		margin-top: 0.75rem;
	}
	.raven-options__grille {
		display: flex;
		max-width: none;
		margin-inline: calc(-1 * var(--raven-gouttiere)) !important;
		padding: 0 var(--raven-gouttiere) 0.5rem;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: var(--raven-gouttiere);
		scrollbar-width: none;
	}
	.raven-options__grille::-webkit-scrollbar {
		display: none;
	}
	.raven-option {
		flex: 0 0 min(68vw, 15rem);
		scroll-snap-align: start;
	}
}
@media (prefers-reduced-motion: reduce) {
	.is-onglets .raven-tarifs__panneau:not([hidden]) {
		animation: none !important;
	}
}

/* ----- Bandeau « Ils nous font confiance » (logos clients) ----- */
.raven-logos {
	padding: clamp(1.75rem, 4vw, 2.75rem) 0;
	border-bottom: 1px solid var(--raven-bordure);
	background: #000;
}
.raven-logos__titre {
	margin: 0 auto 1.5rem !important;
	padding-inline: var(--raven-gouttiere);
	text-align: center;
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--raven-gris);
}
.raven-logos__fenetre {
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}
.raven-logos__piste {
	display: flex;
	width: max-content;
	animation: raven-logos-defile 70s linear infinite;
}
.raven-logos__fenetre:hover .raven-logos__piste {
	animation-play-state: paused;
}
@keyframes raven-logos-defile {
	to { transform: translate3d(-50%, 0, 0); }
}
.raven-logos__liste {
	display: flex;
	align-items: center;
	gap: clamp(2.5rem, 5vw, 4.5rem);
	margin: 0;
	padding: 0 clamp(1.25rem, 2.5vw, 2.25rem);
	list-style: none;
}
.raven-logos__item {
	flex: none;
	display: flex;
	align-items: center;
}
.raven-logos__item img {
	display: block;
	width: auto;
	height: clamp(2rem, 3.2vw, 2.75rem);
	max-width: 11rem;
	object-fit: contain;
	opacity: 0.7;
	transition: opacity 0.3s var(--raven-ease-survol), filter 0.3s var(--raven-ease-survol);
}
/* Logos d'une couleur sur fond transparent : passés en blanc pour rester lisibles sur le noir */
.raven-logos__item--silhouette img {
	filter: brightness(0) invert(1);
}
/* Logos dont le fond fait partie du dessin : en niveaux de gris */
.raven-logos__item--badge img {
	filter: grayscale(1);
	border-radius: 0.6rem;
}
.raven-logos__item img:hover {
	opacity: 1;
	filter: none;
}
@media (prefers-reduced-motion: reduce) {
	.raven-logos__piste {
		width: auto;
		animation: none !important;
	}
	.raven-logos__liste {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 1.5rem;
	}
	.raven-logos__liste[aria-hidden="true"] {
		display: none;
	}
	.raven-logos__fenetre {
		-webkit-mask-image: none;
		mask-image: none;
	}
}

/* ----- Appel final : demi-sphère lumineuse qui respire derrière le contact ----- */
.raven-cta {
	overflow: clip;
	isolation: isolate;
}
.raven-cta::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -55vw;
	z-index: -1;
	width: 110vw;
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(3, 152, 158, 0.32), rgba(3, 152, 158, 0.08) 60%, transparent);
	transform: translateX(-50%);
	-webkit-mask-image: linear-gradient(#000 25%, transparent 50%);
	mask-image: linear-gradient(#000 25%, transparent 50%);
	animation: raven-respire 7s ease-in-out infinite;
	pointer-events: none;
}
@keyframes raven-respire {
	0%, 100% { opacity: 0.65; transform: translateX(-50%) scale(1); }
	50% { opacity: 1; transform: translateX(-50%) scale(1.05); }
}

/* =========================================================
   MOINS D'ANIMATIONS
   ========================================================= */
@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		animation-delay: 0ms !important;
		transition-duration: 0.01ms !important;
	}
	.raven-bandeau__piste,
	.raven-hero .raven-bouton-fleche::before,
	.raven-bande-cta .raven-bouton-fleche::before,
	.raven-hero__halo,
	.raven-pastille,
	.raven-puce__point {
		animation: none !important;
	}
	.raven-slider__piste {
		scroll-behavior: auto;
	}
	.raven-hero__video {
		display: none;
	}
	.raven-flottant {
		transition: none;
	}
	/* Vignettes, halos, dégradés : état final immobile */
	.raven-vignette__illu *,
	.raven-degrade-texte,
	.raven-degrade-texte .raven-mot,
	.raven-halo-lent,
	.raven-cta::after {
		animation: none !important;
	}
	.vi-ciblage__lignes path,
	.vi-rapport__courbe,
	.vi-rdv__coche {
		stroke-dashoffset: 0 !important;
	}
	.vi-google__saisie {
		max-width: 13rem;
	}
	.vi-google__resultat,
	.vi-leads__ligne,
	.vi-rapport__point,
	.vi-rapport__bulle,
	.vi-rdv__carte {
		opacity: 1 !important;
		transform: none !important;
	}
	.vi-rapport__aire {
		opacity: 0.14;
	}
	.vi-cal__post::after {
		transform: none !important;
	}
	.raven-offre:hover,
	.raven-pilier:hover,
	.wp-element-button:hover {
		transform: none;
	}
}
