/**
 * Hero Conversion (Type A) CSS
 * Variantes: Homepage, Academie, Prepa, Suite IA
 * Uses theme.json design tokens for consistency
 */

/* ==========================================================================
   BASE HERO
   ========================================================================== */

.hero-conversion {
	position: relative;
	overflow: hidden;
	background: linear-gradient(180deg, #FFFFFF 0%, #FAF5FF 50%, #F3E8FF 100%);
}


/* Grid layout */
.hero-conversion__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--wp--preset--spacing--xl);
	align-items: center;
}

/* ==========================================================================
   BADGE
   ========================================================================== */

.hero-conversion__badge {
	display: inline-flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	background: rgba(124, 58, 237, 0.1) !important;
	border: 1px solid rgba(124, 58, 237, 0.2);
	color: var(--wp--preset--color--secondary) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--full) !important;
	margin-bottom: var(--wp--preset--spacing--md) !important;
	width: fit-content;
}

/* Tech variant badge */
.hero-conversion--tech .hero-conversion__badge {
	background: linear-gradient(135deg, rgba(124, 58, 237, 0.12) 0%, rgba(59, 130, 246, 0.12) 100%) !important;
	border-color: rgba(124, 58, 237, 0.25);
}

/* ==========================================================================
   TITLE
   ========================================================================== */

.hero-conversion__title {
	font-size: clamp(2rem, 1.5rem + 2.5vw, 3rem) !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
	margin-bottom: var(--wp--preset--spacing--md) !important;
}

.hero-conversion__title mark {
	background: var(--wp--preset--gradient--cta-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ==========================================================================
   SUBTITLE
   ========================================================================== */

.hero-conversion__subtitle {
	font-size: clamp(16px, 1rem + ((1vw - 3.2px) * 0.208), 18px) !important;
	color: var(--wp--preset--color--text-gray) !important;
	line-height: 1.7 !important;
	margin-bottom: var(--wp--preset--spacing--lg) !important;
	max-width: 500px;
}

/* ==========================================================================
   FEATURES LIST
   ========================================================================== */

.hero-conversion__features {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--xs);
	margin-bottom: var(--wp--preset--spacing--md) !important;
}

.hero-conversion__features--inline {
	flex-direction: row;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--md);
}

.hero-conversion__feature {
	display: flex !important;
	align-items: center !important;
	gap: var(--wp--preset--spacing--xs);
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-gray) !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}

.hero-conversion__feature-icon {
	width: 22px;
	height: 22px;
	min-width: 22px;
	background: var(--wp--preset--color--success);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: white;
	font-size: var(--wp--preset--font-size--caption);
}

/* ==========================================================================
   PROOF (STARS + RATING)
   ========================================================================== */

.hero-conversion__proof {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--sm);
	margin-bottom: var(--wp--preset--spacing--md) !important;
}

.hero-conversion__stars {
	color: #FBBF24;
	font-size: var(--wp--preset--font-size--medium) !important;
	letter-spacing: 2px;
	margin: 0 !important;
}

.hero-conversion__rating {
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin: 0 !important;
}

.hero-conversion__students {
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

/* ==========================================================================
   CTA BUTTONS
   ========================================================================== */

.hero-conversion__cta {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--sm);
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

.hero-conversion__cta .wp-block-button__link {
	padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 500 !important;
	letter-spacing: 0.3px;
	border-radius: var(--wp--custom--border-radius--md) !important;
	transition: all 0.2s ease;
}

/* Primary button with gradient */
.hero-conversion__cta .is-style-primary .wp-block-button__link {
	background: var(--wp--preset--gradient--cta-gradient) !important;
	box-shadow: var(--wp--preset--shadow--cta);
}

.hero-conversion__cta .is-style-primary .wp-block-button__link:hover {
	box-shadow: var(--wp--preset--shadow--cta-hover);
	transform: translateY(-2px);
}

/* Outline button */
.hero-conversion__cta .is-style-outline .wp-block-button__link {
	background: white !important;
	color: var(--wp--preset--color--text-dark) !important;
	border: 1.5px solid var(--wp--preset--color--border) !important;
}

.hero-conversion__cta .is-style-outline .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--text-dark) !important;
	transform: translateY(-1px);
}

/* ==========================================================================
   MENTIONS (checkmarks)
   ========================================================================== */

.hero-conversion__mentions {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--md);
	font-size: var(--wp--preset--font-size--small) !important;
}

.hero-conversion__mention {
	display: flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

.hero-conversion__mention-check {
	color: var(--wp--preset--color--text-muted);
	font-size: var(--wp--preset--font-size--small);
}

/* ==========================================================================
   URGENCY BANNER
   ========================================================================== */

.hero-conversion__urgency {
	display: flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	background: rgba(245, 158, 11, 0.08) !important;
	color: #D97706 !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 500 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--md) !important;
	margin-bottom: var(--wp--preset--spacing--md) !important;
}

/* ==========================================================================
   VISUAL AREA
   ========================================================================== */

.hero-conversion__visual {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

/* Browser Mockup (dark) */
.hero-conversion__mockup {
	position: relative;
	background: var(--wp--preset--color--text-dark);
	border-radius: var(--wp--custom--border-radius--lg);
	overflow: hidden;
	box-shadow: 0 20px 25px rgba(0, 0, 0, 0.15);
}

.hero-conversion__mockup-header {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--sm);
	background: var(--wp--preset--color--text-dark);
}

.hero-conversion__mockup-dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
}

.hero-conversion__mockup-dot--red {
	background: var(--wp--preset--color--error);
}

.hero-conversion__mockup-dot--yellow {
	background: var(--wp--preset--color--warning);
}

.hero-conversion__mockup-dot--green {
	background: var(--wp--preset--color--success);
}

.hero-conversion__mockup-body {
	aspect-ratio: 16/10;
	background: linear-gradient(180deg, #1A1A1A 0%, #2D2D2D 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.35);
	font-size: var(--wp--preset--font-size--small);
	padding: var(--wp--preset--spacing--md);
}

/* Mockup CTA label below */
.hero-conversion__mockup-cta {
	display: flex;
	justify-content: center;
	margin-top: var(--wp--preset--spacing--sm);
}

.hero-conversion__mockup-label {
	background: var(--wp--preset--color--muted) !important;
	color: var(--wp--preset--color--text-muted) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 500 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--full) !important;
	border: 1px solid var(--wp--preset--color--border) !important;
	margin: 0 !important;
}

/* Video container */
.hero-conversion__video {
	position: relative;
	background: var(--wp--preset--color--text-dark);
	border-radius: var(--wp--custom--border-radius--lg);
	overflow: hidden;
	aspect-ratio: 16/9;
	box-shadow: 0 20px 25px rgba(0, 0, 0, 0.15);
	transform: perspective(1000px) rotateY(-4deg) rotateX(2deg);
	transition: transform 0.4s ease;
}

.hero-conversion__video:hover {
	transform: perspective(1000px) rotateY(0) rotateX(0);
}

.hero-conversion__video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* WordPress embed block inside video container */
.hero-conversion__video .wp-block-embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
}

.hero-conversion__video .wp-block-embed__wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.hero-conversion__video figure {
	margin: 0;
}

.hero-conversion__video-inner {
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #1A1A1A 0%, #2D2D2D 100%);
	display: flex;
	align-items: center;
	justify-content: center;
}

.hero-conversion__video-play {
	width: 72px;
	height: 72px;
	background: rgba(255, 255, 255, 0.95);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.2s ease;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.hero-conversion__video-play:hover {
	transform: scale(1.1);
}

.hero-conversion__video-play svg {
	width: 28px;
	height: 28px;
	fill: var(--wp--preset--color--primary);
	margin-left: 4px;
}

.hero-conversion__video-label {
	position: absolute;
	bottom: var(--wp--preset--spacing--sm);
	left: 50%;
	transform: translateX(-50%);
	background: rgba(0, 0, 0, 0.7);
	color: white !important;
	font-size: var(--wp--preset--font-size--caption) !important;
	font-weight: 500 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--full) !important;
	backdrop-filter: blur(4px);
	white-space: nowrap;
	margin: 0 !important;
}

/* Product Mockup (white) */
.hero-conversion__product-mockup {
	position: relative;
	background: white;
	border-radius: var(--wp--custom--border-radius--lg);
	overflow: hidden;
	box-shadow: 0 20px 25px rgba(0, 0, 0, 0.15);
	border: 1px solid rgba(229, 231, 235, 0.5);
	aspect-ratio: 4/3;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* ==========================================================================
   TECH VARIANT (Suite IA)
   ========================================================================== */

.hero-conversion--tech .hero-conversion__mockup {
	transform: perspective(1000px) rotateY(-4deg) rotateX(2deg);
	transition: transform 0.4s ease;
}

.hero-conversion--tech .hero-conversion__mockup:hover {
	transform: perspective(1000px) rotateY(0) rotateX(0);
}

.hero-conversion--tech .hero-conversion__mockup-body {
	background: linear-gradient(135deg, #0F0F1A 0%, #1A1A2E 50%, #16213E 100%);
}


/* ==========================================================================
   STATS (optional, used with Homepage)
   ========================================================================== */

.hero-conversion__stats {
	display: grid;
	grid-template-columns: repeat(3, auto);
	gap: var(--wp--preset--spacing--xl);
	margin-top: var(--wp--preset--spacing--xl) !important;
	padding-top: var(--wp--preset--spacing--xl);
	border-top: 1px solid rgba(124, 58, 237, 0.08);
}

.hero-conversion__stat-value {
	font-size: clamp(1.5rem, 1rem + 2vw, 2.25rem) !important;
	font-weight: 800 !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin-bottom: 2px !important;
	line-height: 1.1 !important;
}

.hero-conversion__stat-label {
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 1000px) {
	.hero-conversion__grid {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--lg);
	}

	.hero-conversion__visual {
		order: 2;
	}

	.hero-conversion__content {
		order: 1;
	}

	.hero-conversion__features--inline {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--wp--preset--spacing--xs);
	}

	.hero-conversion__stats {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--wp--preset--spacing--md);
		text-align: center;
	}

	.hero-conversion__stat-value {
		font-size: 1.5rem !important;
	}

	.hero-conversion__stat-label {
		font-size: var(--wp--preset--font-size--caption) !important;
	}
}

@media (max-width: 600px) {
	.hero-conversion__title {
		font-size: 1.75rem !important;
		line-height: 1.15 !important;
	}

	.hero-conversion__subtitle {
		margin-bottom: var(--wp--preset--spacing--md) !important;
	}

	.hero-conversion__badge {
		font-size: var(--wp--preset--font-size--caption) !important;
		padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xs) !important;
	}

	.hero-conversion__cta {
		flex-direction: column;
		gap: var(--wp--preset--spacing--xs);
	}

	.hero-conversion__cta .wp-block-button {
		width: 100%;
	}

	.hero-conversion__cta .wp-block-button__link {
		width: 100%;
		justify-content: center;
	}

	.hero-conversion__mentions {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--wp--preset--spacing--xs);
	}

	.hero-conversion__proof {
		flex-wrap: wrap;
		gap: var(--wp--preset--spacing--xs);
	}

	.hero-conversion__video-play {
		width: 56px;
		height: 56px;
	}

	.hero-conversion__video-play svg {
		width: 22px;
		height: 22px;
	}

	.hero-conversion__urgency {
		font-size: var(--wp--preset--font-size--small) !important;
		padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	}

	.hero-conversion--tech .hero-conversion__mockup,
	.hero-conversion__video {
		transform: none;
	}
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	.hero-conversion__cta .wp-block-button__link,
	.hero-conversion__video-play,
	.hero-conversion--tech .hero-conversion__mockup {
		animation: none !important;
		transition: none !important;
	}
}
/**
 * Hero Archive (Type C) CSS
 * Variantes: Blog, Cours, Fiches, Search
 * Uses theme.json design tokens for consistency
 */

/* ==========================================================================
   BASE HERO ARCHIVE
   ========================================================================== */

.hero-archive {
	position: relative;
	overflow: hidden;
	background: linear-gradient(180deg, #FFFFFF 0%, #FAF5FF 50%, #F3E8FF 100%);
	text-align: center;
}


/* ==========================================================================
   BADGE
   ========================================================================== */

.hero-archive__badge {
	display: inline-flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	background: rgba(124, 58, 237, 0.1) !important;
	border: 1px solid rgba(124, 58, 237, 0.2);
	color: var(--wp--preset--color--secondary) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--full) !important;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

/* ==========================================================================
   TITLE
   ========================================================================== */

.hero-archive__title {
	font-size: clamp(1.75rem, 1.25rem + 2vw, 2.5rem) !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

.hero-archive__title mark {
	background: var(--wp--preset--gradient--cta-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ==========================================================================
   SUBTITLE
   ========================================================================== */

.hero-archive__subtitle {
	font-size: clamp(16px, 1rem + ((1vw - 3.2px) * 0.208), 18px) !important;
	color: var(--wp--preset--color--text-gray) !important;
	line-height: 1.6 !important;
	margin-bottom: var(--wp--preset--spacing--lg) !important;
	max-width: 600px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* ==========================================================================
   SEARCH BAR
   ========================================================================== */

.hero-archive__search {
	max-width: 560px;
	margin: 0 auto var(--wp--preset--spacing--md) !important;
}

.hero-archive__search .wp-block-search__inside-wrapper {
	background: white;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--border-radius--lg);
	padding: var(--wp--preset--spacing--xs);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.hero-archive__search .wp-block-search__inside-wrapper:focus-within {
	border-color: var(--wp--preset--color--secondary);
	box-shadow: 0 4px 12px rgba(124, 58, 237, 0.15);
}

.hero-archive__search .wp-block-search__input {
	border: none !important;
	background: transparent !important;
	padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-dark);
}

.hero-archive__search .wp-block-search__input::placeholder {
	color: var(--wp--preset--color--text-muted);
}

.hero-archive__search .wp-block-search__input:focus {
	outline: none !important;
	box-shadow: none !important;
}

.hero-archive__search .wp-block-search__button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: var(--wp--preset--gradient--cta-gradient) !important;
	color: white !important;
	border: none !important;
	padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md) !important;
	border-radius: var(--wp--custom--border-radius--md) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 500 !important;
	cursor: pointer;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.hero-archive__search .wp-block-search__button:hover {
	opacity: 0.9;
	transform: translateY(-1px);
}

/* Icon-only button variant */
.hero-archive__search .wp-block-search__button.has-icon {
	padding: var(--wp--preset--spacing--sm) !important;
}

.hero-archive__search .wp-block-search__button svg {
	fill: white;
	width: 20px;
	height: 20px;
}

/* ==========================================================================
   STATS ROW
   ========================================================================== */

.hero-archive__stats {
	display: flex;
	justify-content: center;
	gap: var(--wp--preset--spacing--lg);
	flex-wrap: wrap;
}

.hero-archive__stat {
	display: flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

.hero-archive__stat strong {
	color: var(--wp--preset--color--text-dark);
	font-weight: 600;
}

/* ==========================================================================
   CATEGORY TAGS (uses design system is-style-tag-*)
   ========================================================================== */

.hero-archive__categories {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--xs);
	margin-top: var(--wp--preset--spacing--md) !important;
}

/* ==========================================================================
   SEARCH RESULTS VARIANT
   ========================================================================== */

.hero-archive--search .hero-archive__query {
	color: var(--wp--preset--color--secondary);
	font-weight: 600;
}

.hero-archive--search .hero-archive__count {
	font-size: var(--wp--preset--font-size--body-large) !important;
	color: var(--wp--preset--color--text-gray) !important;
	margin-bottom: var(--wp--preset--spacing--md) !important;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 600px) {
	.hero-archive {
		padding: var(--wp--preset--spacing--lg) var(--wp--preset--spacing--md) !important;
	}

	.hero-archive__title {
		font-size: 1.5rem !important;
	}


	.hero-archive__search .wp-block-search__inside-wrapper {
		flex-direction: column;
		gap: var(--wp--preset--spacing--xs);
	}

	.hero-archive__search .wp-block-search__button {
		width: 100%;
		justify-content: center;
	}

	.hero-archive__stats {
		flex-direction: column;
		gap: var(--wp--preset--spacing--sm);
	}
}
/**
 * Hero Produit (Type B) CSS
 * Variantes: B1 Cours, B1bis Support, B3 Pack
 * Uses theme.json design tokens for consistency
 */

/* ==========================================================================
   BASE HERO PRODUIT
   ========================================================================== */

.hero-produit {
	position: relative;
	background: linear-gradient(180deg, #FFFFFF 0%, #FAF5FF 50%, #F3E8FF 100%);
	overflow: hidden;
}

.hero-produit__container {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}

.hero-produit__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--wp--preset--spacing--xl);
	align-items: flex-start;
}

/* Layout inversé (visuel à gauche) pour B3 Pack */
.hero-produit__grid--reversed .hero-produit__content {
	order: 2;
}

.hero-produit__grid--reversed .hero-produit__visual {
	order: 1;
}

/* ==========================================================================
   BADGE
   ========================================================================== */

.hero-produit__badge {
	display: inline-flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	background: rgba(124, 58, 237, 0.1) !important;
	border: 1px solid rgba(124, 58, 237, 0.2);
	color: var(--wp--preset--color--secondary) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--full) !important;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
	width: fit-content;
}

/* ==========================================================================
   TITLE
   ========================================================================== */

.hero-produit__title {
	font-size: clamp(1.75rem, 1.25rem + 2vw, 2.5rem) !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
	margin-bottom: var(--wp--preset--spacing--xs) !important;
}

.hero-produit__title mark {
	background: var(--wp--preset--gradient--cta-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ==========================================================================
   META (niveau, semestre)
   ========================================================================== */

.hero-produit__meta {
	font-size: var(--wp--preset--font-size--medium) !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--text-gray) !important;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

/* ==========================================================================
   SUBTITLE
   ========================================================================== */

.hero-produit__subtitle {
	font-size: clamp(16px, 1rem + ((1vw - 3.2px) * 0.208), 18px) !important;
	color: var(--wp--preset--color--text-gray) !important;
	line-height: 1.7 !important;
	margin-bottom: var(--wp--preset--spacing--md) !important;
	max-width: 520px;
}

/* ==========================================================================
   TAGS (uses design system is-style-tag-*)
   ========================================================================== */

.hero-produit__tags {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--xs);
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

/* ==========================================================================
   PROOF (STARS + RATING)
   ========================================================================== */

.hero-produit__proof {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	margin-bottom: var(--wp--preset--spacing--md) !important;
}

.hero-produit__stars {
	color: #FBBF24;
	font-size: var(--wp--preset--font-size--medium) !important;
	letter-spacing: 2px;
	margin: 0 !important;
}

.hero-produit__rating {
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin: 0 !important;
}

.hero-produit__rating-count {
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

/* ==========================================================================
   FEATURES ✓
   ========================================================================== */

.hero-produit__features {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--xs);
	margin-bottom: var(--wp--preset--spacing--md) !important;
}

.hero-produit__feature {
	display: flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-gray) !important;
	margin: 0 !important;
}

.hero-produit__feature-icon {
	color: var(--wp--preset--color--success);
	font-size: var(--wp--preset--font-size--medium);
	flex-shrink: 0;
}

/* ==========================================================================
   CARD LATÉRALE (B1 — cours, B1bis — support)
   ========================================================================== */

.hero-produit__card {
	background: white;
	border-radius: var(--wp--custom--border-radius--lg);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
	overflow: hidden;
}

.hero-produit__card-visual {
	aspect-ratio: 16/9;
	background: linear-gradient(180deg, #1A1A1A 0%, #2D2D2D 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.35);
	font-size: var(--wp--preset--font-size--small);
	position: relative;
}

.hero-produit__card-visual--violet {
	background: linear-gradient(135deg, #7C3AED 0%, #5B21B6 100%);
	color: rgba(255, 255, 255, 0.6);
}

.hero-produit__card-body {
	padding: var(--wp--preset--spacing--md);
}

.hero-produit__card-title {
	font-size: var(--wp--preset--font-size--medium) !important;
	font-weight: 700 !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

.hero-produit__card-features {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--xs);
	margin-bottom: var(--wp--preset--spacing--md) !important;
}

.hero-produit__card-feature {
	display: flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-gray) !important;
	margin: 0 !important;
}

.hero-produit__card-feature-icon {
	color: var(--wp--preset--color--success);
	font-size: var(--wp--preset--font-size--medium);
}

/* ==========================================================================
   PRIX
   ========================================================================== */

.hero-produit__price-row {
	display: flex;
	align-items: baseline;
	gap: var(--wp--preset--spacing--xs);
	flex-wrap: wrap;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

.hero-produit__price {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.25rem) !important;
	font-weight: 800 !important;
	color: var(--wp--preset--color--text-dark) !important;
	line-height: 1.1 !important;
	margin: 0 !important;
}

.hero-produit__price-period {
	font-size: var(--wp--preset--font-size--medium) !important;
	font-weight: 500 !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

.hero-produit__price-savings {
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--success) !important;
	font-weight: 500 !important;
	margin-bottom: var(--wp--preset--spacing--xs) !important;
}

.hero-produit__price-details {
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

/* ==========================================================================
   CTA
   ========================================================================== */

.hero-produit__cta {
	margin-bottom: var(--wp--preset--spacing--xs) !important;
}

.hero-produit__cta .wp-block-button__link {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md) !important;
	font-size: var(--wp--preset--font-size--medium) !important;
	font-weight: 600 !important;
	border-radius: var(--wp--custom--border-radius--md) !important;
	background: var(--wp--preset--gradient--cta-gradient) !important;
	box-shadow: var(--wp--preset--shadow--cta);
	transition: all 0.2s ease;
}

.hero-produit__cta .wp-block-button__link:hover {
	box-shadow: var(--wp--preset--shadow--cta-hover);
	transform: translateY(-2px);
}

.hero-produit__cta-mentions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--sm);
	font-size: var(--wp--preset--font-size--caption) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin-top: var(--wp--preset--spacing--xs) !important;
}

.hero-produit__cta-mention {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--xs);
	font-size: var(--wp--preset--font-size--caption) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

/* ==========================================================================
   MOCKUP PRODUIT (B3 — Pack)
   ========================================================================== */

.hero-produit__mockup {
	position: relative;
	background: white;
	border-radius: var(--wp--custom--border-radius--lg);
	overflow: hidden;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
	border: 1px solid rgba(229, 231, 235, 0.5);
}

.hero-produit__mockup-main {
	aspect-ratio: 4/3;
	background: var(--wp--preset--color--muted);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--text-muted);
	font-size: var(--wp--preset--font-size--small);
}

.hero-produit__mockup-badge {
	position: absolute;
	top: var(--wp--preset--spacing--sm);
	right: var(--wp--preset--spacing--sm);
	background: var(--wp--preset--color--success);
	color: white !important;
	font-size: var(--wp--preset--font-size--caption) !important;
	font-weight: 600 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--full) !important;
	margin: 0 !important;
}

/* Galerie miniatures */
.hero-produit__thumbnails {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--wp--preset--spacing--xs);
	margin-top: var(--wp--preset--spacing--sm) !important;
}

.hero-produit__thumb {
	height: 80px;
	background: white;
	border: 2px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--border-radius--md);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--wp--preset--font-size--caption) !important;
	color: var(--wp--preset--color--text-muted) !important;
	cursor: pointer;
	transition: border-color 0.2s ease;
	text-align: center;
	line-height: 1.2;
	padding: var(--wp--preset--spacing--xs);
	margin: 0 !important;
}

.hero-produit__thumb:hover,
.hero-produit__thumb--active {
	border-color: var(--wp--preset--color--primary) !important;
}

/* ==========================================================================
   SPECS GRID 2×2
   ========================================================================== */

.hero-produit__specs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1px;
	background: var(--wp--preset--color--border);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--border-radius--lg);
	overflow: hidden;
	margin-top: var(--wp--preset--spacing--sm) !important;
}

.hero-produit__spec {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--xs);
	padding: var(--wp--preset--spacing--sm);
	background: white;
}

.hero-produit__spec-icon {
	font-size: var(--wp--preset--font-size--body-large) !important;
	flex-shrink: 0;
	margin: 0 !important;
}

.hero-produit__spec-content {
	display: flex;
	flex-direction: column;
}

.hero-produit__spec-title {
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin: 0 !important;
}

.hero-produit__spec-desc {
	font-size: var(--wp--preset--font-size--caption) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

/* ==========================================================================
   GARANTIE
   ========================================================================== */

.hero-produit__guarantee {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--sm);
	background: rgba(16, 185, 129, 0.06);
	border: 1px solid rgba(16, 185, 129, 0.2);
	border-radius: var(--wp--custom--border-radius--lg);
	padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
	margin-top: var(--wp--preset--spacing--sm) !important;
}

.hero-produit__guarantee-icon {
	width: 36px;
	height: 36px;
	min-width: 36px;
	background: var(--wp--preset--color--success);
	border-radius: var(--wp--custom--border-radius--full);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--wp--preset--font-size--medium);
}

.hero-produit__guarantee-title {
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin: 0 0 2px 0 !important;
}

.hero-produit__guarantee-desc {
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-gray) !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 1000px) {
	.hero-produit__grid {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--lg);
	}

	.hero-produit__grid--reversed .hero-produit__content {
		order: 1;
	}

	.hero-produit__grid--reversed .hero-produit__visual {
		order: 2;
	}
}

@media (max-width: 600px) {
	.hero-produit {
		padding: var(--wp--preset--spacing--lg) var(--wp--preset--spacing--sm) !important;
	}

	.hero-produit__title {
		font-size: clamp(1.625rem, 6vw, 1.875rem) !important; /* 26px → 30px */
	}

	.hero-produit__meta {
		font-size: var(--wp--preset--font-size--small) !important;
	}


	.hero-produit__badge {
		font-size: var(--wp--preset--font-size--caption) !important;
		padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xs) !important;
	}

	.hero-produit__price {
		font-size: 1.75rem !important;
	}

	.hero-produit__thumbnails {
		grid-template-columns: repeat(4, 1fr);
	}

	.hero-produit__thumb {
		height: 64px;
		font-size: 10px !important;
	}

	.hero-produit__specs {
		font-size: var(--wp--preset--font-size--small) !important;
	}

	.hero-produit__guarantee {
		padding: var(--wp--preset--spacing--sm);
	}
}
/**
 * Hero Simple (Type D) CSS
 * Template unique centré: Badge + Titre + Sous-titre + Séparateur gradient
 * Uses theme.json design tokens for consistency
 */

/* ==========================================================================
   BASE HERO SIMPLE
   ========================================================================== */

.hero-simple {
	position: relative;
	background: linear-gradient(180deg, #FFFFFF 0%, #FAFAFE 50%, #F5F3FF 100%);
	text-align: center;
	padding-top: var(--wp--preset--spacing--xl);
	padding-bottom: var(--wp--preset--spacing--xl);
}

.hero-simple__container {
	max-width: 720px;
	margin: 0 auto;
}

/* ==========================================================================
   BADGE
   ========================================================================== */

.hero-simple__badge {
	display: inline-flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	background: rgba(124, 58, 237, 0.1) !important;
	border: 1px solid rgba(124, 58, 237, 0.2);
	color: var(--wp--preset--color--secondary) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--full) !important;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

/* ==========================================================================
   TITLE
   ========================================================================== */

.hero-simple__title {
	font-size: var(--wp--preset--font-size--heading-1) !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	max-width: 640px;
	margin-left: auto !important;
	margin-right: auto !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

/* ==========================================================================
   SUBTITLE
   ========================================================================== */

.hero-simple__subtitle {
	font-size: clamp(16px, 1rem + ((1vw - 3.2px) * 0.208), 18px) !important;
	color: var(--wp--preset--color--text-gray) !important;
	line-height: 1.7 !important;
	max-width: 640px;
	margin-left: auto !important;
	margin-right: auto !important;
	margin-bottom: 0 !important;
}

/* ==========================================================================
   SEPARATOR (gradient line)
   ========================================================================== */

.hero-simple__separator {
	width: 48px;
	height: 3px;
	background: var(--wp--preset--gradient--cta-gradient);
	border-radius: var(--wp--custom--border-radius--full);
	margin: var(--wp--preset--spacing--md) auto 0;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 600px) {
	.hero-simple {
		padding: var(--wp--preset--spacing--lg) var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
	}

	.hero-simple__badge {
		font-size: var(--wp--preset--font-size--caption) !important;
	}

	.hero-simple__title {
		font-size: var(--wp--preset--font-size--heading-1) !important;
	}

	max-width: 640px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* ==========================================================================
   EDITOR FIXES
   ========================================================================== */

.editor-styles-wrapper .hero-simple__container p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
/**
 * Hero Article (Type E) CSS
 * E1 - Fond lilas avec badge, titre, meta, auteur et image
 */

/* ==========================================================================
   BASE
   ========================================================================== */

.hero-article {
	position: relative;
	background: linear-gradient(180deg, #FFFFFF 0%, #FAFAFE 50%, #F5F3FF 100%);
	text-align: center;
	padding: var(--wp--preset--spacing--xl);
}

.hero-article__container {
	max-width: 720px;
	margin: 0 auto;
}

/* ==========================================================================
   BADGE
   ========================================================================== */

.hero-article__badge {
	display: inline-flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	background: rgba(124, 58, 237, 0.1) !important;
	border: 1px solid rgba(124, 58, 237, 0.2);
	color: var(--wp--preset--color--secondary) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
	border-radius: var(--wp--custom--border-radius--full) !important;
	margin-bottom: var(--wp--preset--spacing--xs) !important;
}

.hero-article__badge a {
	color: var(--wp--preset--color--secondary) !important;
	text-decoration: none !important;
}

.hero-article__badge a:hover {
	opacity: 0.8;
}

/* ==========================================================================
   TITLE
   ========================================================================== */

.hero-article__title {
	font-size: var(--wp--preset--font-size--heading-1) !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin-bottom: 0 !important;
	max-width: 640px;
	margin-inline: auto;
}

/* ==========================================================================
   AUTHOR BLOCK (wrapper date + auteur)
   ========================================================================== */

.hero-article__author-block {
	display: inline-flex !important;
	flex-direction: column;
	align-items: flex-start !important;
	gap: var(--wp--preset--spacing--md) !important;
	margin-bottom: 0 !important;
}

/* ==========================================================================
   META (date + temps de lecture)
   ========================================================================== */

.hero-article__meta-row {
	display: flex !important;
	align-items: center;
	gap: var(--wp--preset--spacing--xs) !important;
}

.hero-article__meta-spacer {
	width: 40px !important;
	min-width: 40px !important;
	height: 1px !important;
	margin: 0 !important;
	visibility: hidden;
}

.hero-article__meta {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
}

.hero-article__meta,
.hero-article__meta p {
	font-size: var(--wp--preset--font-size--small) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

.hero-article__meta-separator {
	color: var(--wp--preset--color--border) !important;
}

/* ==========================================================================
   AUTHOR
   ========================================================================== */

.hero-article__author {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
}

.hero-article__author-avatar,
.hero-article__author-initials {
	width: 40px;
	min-width: 40px;
	height: 40px;
	border-radius: var(--wp--custom--border-radius--full);
}

.hero-article__author-avatar {
	overflow: hidden;
}

.hero-article__author-avatar img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}

.hero-article__author-initials {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--wp--preset--color--secondary);
	color: white !important;
	font-weight: 700 !important;
	font-size: var(--wp--preset--font-size--small) !important;
	margin: 0 !important;
}

.hero-article__author-info {
	text-align: left;
	gap: 2px !important;
}

.hero-article__author-name {
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--text-dark) !important;
	margin: 0 !important;
}

.hero-article__author-role {
	font-size: var(--wp--preset--font-size--caption) !important;
	color: var(--wp--preset--color--text-muted) !important;
	margin: 0 !important;
}

/* ==========================================================================
   IMAGE
   ========================================================================== */

.hero-article__image {
	width: 100%;
	margin-bottom: var(--wp--preset--spacing--sm) !important;
}

.hero-article__image img {
	width: 100%;
	aspect-ratio: 16/9;
	object-fit: cover;
	border-radius: 16px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
}

/* ==========================================================================
   CTA BAR
   ========================================================================== */

.hero-article__cta {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	background: rgba(124, 58, 237, 0.05) !important;
	border: 1px solid rgba(124, 58, 237, 0.12);
	border-radius: var(--wp--custom--border-radius--full);
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm) !important;
}

.hero-article__cta,
.hero-article__cta p {
	font-size: var(--wp--preset--font-size--small) !important;
	margin: 0 !important;
}

.hero-article__cta a {
	color: var(--wp--preset--color--secondary) !important;
	font-weight: 600 !important;
	text-decoration: none;
}

.hero-article__cta a:hover {
	text-decoration: underline;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 600px) {
	.hero-article {
		padding: var(--wp--preset--spacing--lg) var(--wp--preset--spacing--sm);
	}

	.hero-article__badge,
	.hero-article__meta,
	.hero-article__meta p,
	.hero-article__cta,
	.hero-article__cta p {
		font-size: var(--wp--preset--font-size--caption) !important;
	}

	.hero-article__meta-spacer,
	.hero-article__author-avatar,
	.hero-article__author-initials {
		width: 36px !important;
		min-width: 36px !important;
		height: 36px !important;
	}

	.hero-article__author-initials {
		font-size: var(--wp--preset--font-size--caption) !important;
	}

	.hero-article__image img {
		border-radius: 12px;
	}

	.hero-article__cta {
		flex-direction: column;
		text-align: center;
		padding: var(--wp--preset--spacing--sm) !important;
	}
}

/* ==========================================================================
   EDITOR FIXES
   ========================================================================== */

.editor-styles-wrapper .hero-article__meta p,
.editor-styles-wrapper .hero-article__author p,
.editor-styles-wrapper .hero-article__cta p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
/**
 * Fonctionnalités Pattern CSS
 * Pattern A : Grille de cards avec emoji
 */

/* Titre gradient */
.fonctionnalites-section h2 mark {
	background: var(--wp--preset--gradient--brand-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ==========================================================================
   CARDS
   ========================================================================== */

/* Equal height columns (Pattern A & B) */
.fonctionnalites-grid .wp-block-column,
.fonctionnalites-detailed .wp-block-column {
	display: flex;
	flex-direction: column;
}

.fonctionnalites-card {
	flex: 1;
	transition: transform 150ms ease, box-shadow 150ms ease;
}

.fonctionnalites-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
}

/* Icon container */
.fonctionnalites-card__icon {
	width: 48px;
	height: 48px;
	border-radius: var(--wp--custom--border-radius--md);
}

.fonctionnalites-card__icon p {
	margin: 0 !important;
	line-height: 1;
}

/* Title */
.fonctionnalites-card__title {
	margin-top: 0 !important;
}

/* Description */
.fonctionnalites-card__desc {
	margin: 0 !important;
	line-height: 1.5;
}

/* ==========================================================================
   PATTERN B - DETAILED CARDS
   ========================================================================== */

.fonctionnalites-detailed-card {
	position: relative;
	flex: 1;
	transition: border-color 150ms ease;
}

.fonctionnalites-detailed-card:hover {
	border-color: var(--wp--preset--color--secondary) !important;
}

/* Number badge */
.fonctionnalites-detailed-card__number {
	position: absolute;
	top: var(--wp--preset--spacing--md);
	right: var(--wp--preset--spacing--md);
	width: 28px;
	height: 28px;
	background: var(--wp--preset--color--muted);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 !important;
}

/* List with checkmarks */
.fonctionnalites-detailed-card__list {
	list-style: none !important;
	margin: 0 !important;
}

.fonctionnalites-detailed-card__list li {
	position: relative;
	padding-left: var(--wp--preset--spacing--sm);
	padding-top: 4px;
	padding-bottom: 4px;
	line-height: 1.4;
}

.fonctionnalites-detailed-card__list li::before {
	content: '✓';
	position: absolute;
	left: 0;
	color: var(--wp--preset--color--success);
	font-weight: 600;
}

/* Link */
.fonctionnalites-detailed-card__link a {
	color: var(--wp--preset--color--primary);
	text-decoration: none;
}

.fonctionnalites-detailed-card__link a:hover {
	text-decoration: underline;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 1000px) {
	.fonctionnalites-grid.wp-block-columns {
		flex-wrap: wrap !important;
	}

	.fonctionnalites-grid .wp-block-column {
		flex-basis: calc(50% - var(--wp--preset--spacing--sm)) !important;
	}

	/* Pattern B: 1 column on tablet */
	.fonctionnalites-detailed .wp-block-column {
		flex-basis: 100% !important;
	}
}

@media (max-width: 600px) {
	.fonctionnalites-section {
		padding: var(--wp--preset--spacing--md) !important;
	}

	.fonctionnalites-grid .wp-block-column {
		flex-basis: 100% !important;
	}
}
/**
 * P12 - Features Grid
 */

/* Container with shadow */
.features-block__inner {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Features Grid - 3 columns */
.features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px 48px;
}

/* Feature Item */
.feature-item {
    gap: 12px !important;
}

.feature-item__icon {
    width: 24px;
    height: 24px;
    min-width: 24px;
    background: var(--wp--preset--color--success);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 14px;
    font-weight: bold;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
    margin: 0 !important;
}

.feature-item__content {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.feature-item__content .wp-block-group {
    gap: 2px;
}

.feature-item__title {
    font-size: 15px;
    font-weight: 600;
    color: var(--wp--preset--color--text-dark);
    margin: 0 !important;
}

.feature-item__desc {
    font-size: 14px;
    font-weight: 400;
    color: var(--wp--preset--color--text-muted);
    margin: 0 !important;
}

/* Bonus Banner */
.features-bonus {
    background: rgba(124, 58, 237, 0.05);
    border: 2px dashed var(--wp--preset--color--secondary);
    border-radius: 12px;
    padding: 16px 24px;
    gap: 16px !important;
}

.features-bonus__icon {
    width: 32px;
    height: 32px;
    min-width: 32px;
    background: var(--wp--preset--color--success);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 18px;
    font-weight: bold;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
    margin: 0 !important;
}

.features-bonus__content {
    flex: 1;
    font-size: 15px;
    color: var(--wp--preset--color--text-gray);
    margin: 0 !important;
}

.features-bonus__content strong {
    color: var(--wp--preset--color--text-dark);
}

.features-bonus__content a {
    color: var(--wp--preset--color--secondary);
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

.features-bonus__content a:hover {
    color: var(--wp--preset--color--primary);
}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width: 1024px) {
    .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .features-block__inner {
        padding: var(--wp--preset--spacing--lg) !important;
    }

    .features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 16px;
    }

    .feature-item__title {
        font-size: 14px;
    }

    .feature-item__desc {
        font-size: 13px;
    }

    .features-bonus {
        flex-direction: column !important;
        text-align: center;
        gap: 12px !important;
    }
}

@media (max-width: 480px) {
    .features-grid {
        gap: 16px 12px;
    }

    .feature-item__icon {
        width: 20px;
        height: 20px;
        min-width: 20px;
        font-size: 12px;
    }

    .feature-item {
        gap: 8px !important;
    }
}
/**
 * Pain Points Cards CSS
 * Variantes 6 et 4 pain points
 * Harmonisé avec solution-card (variables theme.json)
 */

/* Titre gradient (commun) */
.pain-section h2 mark {
	background: var(--wp--preset--gradient--brand-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ==========================================================================
   CARDS PAIN POINTS (COMMUN)
   ========================================================================== */

/* Equal height columns */
.pain-grid-6 .wp-block-column,
.pain-grid-4 .wp-block-column {
	display: flex;
	flex-direction: column;
}

.pain-card {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	transition: transform 150ms ease, box-shadow 150ms ease;
}

.pain-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
}

/* Icône 48×48 */
.pain-card__icon {
	width: 48px;
	height: 48px;
	min-width: 48px;
	border-radius: var(--wp--custom--border-radius--md);
	margin-bottom: var(--wp--preset--spacing--sm);
}

.pain-card__icon p {
	margin: 0 !important;
	line-height: 1;
}

.pain-card__title {
	margin: 0 0 var(--wp--preset--spacing--xs) 0 !important;
	font-family: var(--wp--preset--font-family--poppins);
	font-size: var(--wp--preset--font-size--heading-4) !important;
}

.pain-card__description {
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--poppins);
	font-size: var(--wp--preset--font-size--small) !important;
	line-height: var(--wp--custom--line-height--body);
}

/* ==========================================================================
   BANDEAU PRÉ-SOLUTION
   ========================================================================== */

.pain-banner,
.editor-styles-wrapper .pain-banner {
	margin-top: 48px !important;
	margin-block-start: 48px !important;
}

.pain-banner__title {
	margin: 0 !important;
}

.pain-banner__text {
	margin: 0 !important;
	opacity: 0.9;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 1000px) {
	.pain-grid-6 .wp-block-columns {
		flex-wrap: wrap !important;
	}

	.pain-grid-6 .wp-block-column {
		flex-basis: calc(50% - var(--wp--preset--spacing--md) / 2) !important;
	}

	.pain-grid-4.wp-block-columns {
		flex-wrap: wrap !important;
	}

	.pain-grid-4 > .wp-block-column {
		flex-basis: calc(50% - var(--wp--preset--spacing--md) / 2) !important;
	}
}

@media (max-width: 600px) {
	.pain-section {
		padding: var(--wp--preset--spacing--md) !important;
	}

	.pain-grid-6 .wp-block-column,
	.pain-grid-4 > .wp-block-column {
		flex-basis: 100% !important;
	}

	.pain-card {
		padding: var(--wp--preset--spacing--sm) !important;
	}

	.pain-card__icon {
		font-size: 36px;
	}

	.pain-card__title {
		font-size: 1rem !important;
	}

	.pain-card__description {
		font-size: var(--wp--preset--font-size--caption) !important;
	}

	.pain-banner {
		padding-left: var(--wp--preset--spacing--md) !important;
		padding-right: var(--wp--preset--spacing--md) !important;
	}
}


/* Force spacing before banner inside constrained layout */
.pain-section .pain-banner.wp-block-group {
	margin-top: 48px !important;
	margin-block-start: 48px !important;
}
/**
 * P11 - Comparaison (all variants)
 */

/* =====================================================
   GRADIENT TEXT
   ===================================================== */
.gradient-text {
    background: var(--wp--preset--gradient--cta-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* =====================================================
   V1: COMPARISON CARDS
   ===================================================== */
.comparison-card {
    transition: all 0.3s ease;
}

.comparison-card:hover {
    transform: translateY(-4px);
}

.comparison-card--negative:hover {
    box-shadow: 0 8px 30px rgba(239, 68, 68, 0.1);
}

.comparison-card--positive:hover {
    box-shadow: 0 8px 30px rgba(16, 185, 129, 0.2);
}

.comparison-card__icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    margin: 0 !important;
}

.comparison-card--negative .comparison-card__icon {
    background: var(--wp--preset--color--muted);
}

.comparison-card--positive .comparison-card__icon {
    background: rgba(16, 185, 129, 0.15);
}

.comparison-card:hover .comparison-card__icon {
    transform: scale(1.1) rotate(5deg);
}

.comparison-card--positive:hover .comparison-card__icon {
    background: rgba(16, 185, 129, 0.25);
    box-shadow: 0 4px 15px rgba(16, 185, 129, 0.3);
}

/* Comparison lists */
.comparison-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--sm);
}

.comparison-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 15px;
    color: var(--wp--preset--color--text-gray);
    padding: 8px;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.comparison-list li:hover {
    transform: translateX(4px);
}

.comparison-list--negative li:hover {
    background: rgba(0, 0, 0, 0.02);
}

.comparison-list--positive li:hover {
    background: rgba(16, 185, 129, 0.08);
}

.comparison-list li::before {
    min-width: 20px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: bold;
    margin-top: 2px;
    transition: all 0.2s ease;
}

.comparison-list--negative li::before {
    content: '✕';
    background: rgba(239, 68, 68, 0.1);
    color: var(--wp--preset--color--error);
}

.comparison-list--negative li:hover::before {
    background: var(--wp--preset--color--error);
    color: white;
    box-shadow: 0 2px 8px rgba(239, 68, 68, 0.3);
    transform: scale(1.15);
}

.comparison-list--positive li::before {
    content: '✓';
    background: var(--wp--preset--color--success);
    color: white;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
}

.comparison-list--positive li:hover::before {
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.4);
    transform: scale(1.15);
}

/* =====================================================
   TABLE WRAPPER (shared)
   ===================================================== */
.comparison-table-wrapper {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    transition: all 0.3s ease;
}

.comparison-table-wrapper:hover {
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.comparison-table-wrapper .wp-block-table {
    margin: 0;
}

.comparison-table-wrapper table {
    width: 100%;
    border-collapse: collapse;
}

.comparison-table-wrapper th,
.comparison-table-wrapper td {
    padding: 16px 24px;
    text-align: left;
    border-bottom: 1px solid var(--wp--preset--color--border);
    transition: all 0.2s ease;
}

.comparison-table-wrapper tbody tr:last-child td {
    border-bottom: none;
}

.comparison-table-wrapper tbody tr:hover {
    background: var(--wp--preset--color--background);
}

/* =====================================================
   V2: AVANT/APRÈS TABLE
   ===================================================== */
.comparison-table-avant-apres thead th {
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.comparison-table-avant-apres thead th:first-child {
    background: var(--wp--preset--color--muted);
    color: var(--wp--preset--color--text-dark);
}

.comparison-table-avant-apres thead th:nth-child(2) {
    background: var(--wp--preset--color--error-bg);
    color: var(--wp--preset--color--error);
}

.comparison-table-avant-apres thead th:nth-child(3) {
    background: var(--wp--preset--color--success-bg);
    color: var(--wp--preset--color--success);
}

.comparison-table-avant-apres tbody td {
    font-size: 15px;
}

.comparison-table-avant-apres tbody td:first-child {
    font-weight: 600;
    color: var(--wp--preset--color--text-dark);
    background: var(--wp--preset--color--background);
}

.comparison-table-avant-apres tbody tr:hover td:first-child {
    background: var(--wp--preset--color--muted);
}

.comparison-table-avant-apres td:nth-child(2) {
    color: var(--wp--preset--color--error);
}

.comparison-table-avant-apres td:nth-child(3) {
    color: var(--wp--preset--color--success);
    font-weight: 500;
}

/* =====================================================
   V3: MULTI-COLUMN TABLE
   ===================================================== */
.comparison-table-multi thead th {
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.comparison-table-multi thead th:first-child {
    text-align: left;
    background: var(--wp--preset--color--muted);
    color: var(--wp--preset--color--text-dark);
}

.comparison-table-multi thead th:nth-child(2) {
    background: var(--wp--preset--color--primary);
    color: white;
    box-shadow: 0 4px 20px rgba(176, 0, 29, 0.3);
}

.comparison-table-multi thead th:nth-child(3),
.comparison-table-multi thead th:nth-child(4) {
    background: var(--wp--preset--color--muted);
    color: var(--wp--preset--color--text-dark);
}

.comparison-table-multi tbody td {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
}

.comparison-table-multi tbody td:first-child {
    text-align: left;
    font-size: 15px;
    font-weight: 600;
    color: var(--wp--preset--color--text-dark);
    background: var(--wp--preset--color--background);
}

.comparison-table-multi tbody tr:hover td:first-child {
    background: var(--wp--preset--color--muted);
}

.comparison-table-multi tbody td:nth-child(2) {
    color: var(--wp--preset--color--success);
    background: rgba(176, 0, 29, 0.03);
}

.comparison-table-multi tbody tr:hover td:nth-child(2) {
    background: rgba(176, 0, 29, 0.08);
}

.comparison-table-multi tbody td:nth-child(3),
.comparison-table-multi tbody td:nth-child(4) {
    color: var(--wp--preset--color--text-muted);
}

/* Price row */
.comparison-table-multi tbody tr:last-child td:nth-child(2) {
    font-size: 15px;
    font-weight: 700;
}

/* =====================================================
   V4: DARK HEADER TABLE
   ===================================================== */

/* Spacing before CTA button */
.comparison-table-wrapper + .wp-block-group {
    margin-top: var(--wp--preset--spacing--xl) !important;
}

.comparison-table-dark thead th {
    background: var(--wp--preset--color--text-dark) !important;
    color: white !important;
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.comparison-table-dark thead th:first-child {
    text-align: left;
}

.comparison-table-dark thead th:nth-child(2) {
    background: var(--wp--preset--gradient--cta-gradient) !important;
    box-shadow: 0 4px 20px rgba(176, 0, 29, 0.4);
}

.comparison-table-dark tbody td {
    text-align: center;
    font-size: 14px;
    color: var(--wp--preset--color--text-gray);
}

.comparison-table-dark tbody td:first-child {
    text-align: left;
    font-weight: 600;
    color: var(--wp--preset--color--text-dark);
    background: var(--wp--preset--color--background);
}

.comparison-table-dark tbody tr:hover td:first-child {
    background: var(--wp--preset--color--muted);
}

.comparison-table-dark tbody td:nth-child(2) {
    background: rgba(176, 0, 29, 0.03);
    font-weight: 500;
    color: var(--wp--preset--color--text-dark);
}

.comparison-table-dark tbody tr:hover td:nth-child(2) {
    background: rgba(176, 0, 29, 0.08);
}

/* Price row */
.comparison-table-dark tbody tr:last-child td:nth-child(2) {
    font-weight: 700;
    color: var(--wp--preset--color--primary);
}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width: 781px) {
    .comparaison-cards .wp-block-columns {
        flex-direction: column !important;
    }

    .comparison-table-wrapper th,
    .comparison-table-wrapper td {
        padding: 12px 16px;
        font-size: 13px;
    }

    .comparison-list li {
        font-size: 14px;
    }

    .comparison-table-multi tbody td {
        font-size: 16px;
    }
}
/**
 * P14 - Steps Timeline (Comment ça marche)
 */

/* =====================================================
   HEADER
   ===================================================== */
.section-steps__header {
    text-align: center;
}

.section-steps__badge {
    display: inline-block;
    background: rgba(124, 58, 237, 0.1) !important;
    color: var(--wp--preset--color--secondary) !important;
    font-size: 13px !important;
    font-weight: 600;
    padding: 8px 16px !important;
    border-radius: 9999px !important;
    border: none !important;
    margin: 0 auto var(--wp--preset--spacing--sm) !important;
}

.section-steps__title {
    font-size: var(--wp--preset--font-size--heading-2) !important;
    font-weight: 700;
    margin-bottom: var(--wp--preset--spacing--sm) !important;
}

.section-steps__title .gradient-text {
    background: linear-gradient(135deg, var(--wp--preset--color--primary) 0%, #DC2626 50%, var(--wp--preset--color--secondary) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.section-steps__subtitle {
    font-size: var(--wp--preset--font-size--body-large) !important;
    max-width: 500px;
    margin: 0 auto !important;
}

/* =====================================================
   DESKTOP: Timeline horizontale
   ===================================================== */
.steps-horizontal {
    position: relative;
    align-items: flex-start !important;
}

.steps-horizontal > .wp-block-group,
.steps-horizontal > .step-item,
.steps-horizontal .step-item.wp-block-group {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-block-start: 0 !important;
}

.steps-horizontal .step-item > *:first-child,
.steps-horizontal .step-item > p:first-child,
.steps-horizontal .step-item__circle {
    margin-top: 0 !important;
    margin-block-start: 0 !important;
}

/* Force all step items to align circles at same position */
.steps-horizontal.wp-block-group {
    align-items: flex-start !important;
}

.steps-horizontal > * {
    align-self: flex-start !important;
}

/* Ligne de connexion gradient */
.steps-horizontal::before {
    content: '';
    position: absolute;
    top: 28px;
    left: 70px;
    right: 70px;
    height: 3px;
    background: linear-gradient(90deg, var(--wp--preset--color--primary) 0%, var(--wp--preset--color--secondary) 100%);
    border-radius: 2px;
    z-index: 0;
}

.step-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    flex: 1;
    max-width: 220px;
    position: relative;
    z-index: 1;
    padding-top: 0 !important;
    margin-top: 0 !important;
    gap: 0 !important;
    --wp--style--block-gap: 0 !important;
}

.step-item.wp-block-group > *:not(.step-item__circle) {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}

/* Cercle numéroté - gradient */
.step-item__circle,
p.step-item__circle {
    width: 56px;
    height: 56px;
    min-width: 56px;
    min-height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 16px 0 !important;
    margin-block-start: 0 !important;
    margin-block-end: 16px !important;
    padding: 0 !important;
    background: linear-gradient(135deg, var(--wp--preset--color--primary) 0%, #DC2626 50%, var(--wp--preset--color--secondary) 100%);
    color: white;
    box-shadow: 0 4px 14px rgba(124, 58, 237, 0.4);
    transition: all 0.3s ease;
}

.step-item:hover .step-item__circle {
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(124, 58, 237, 0.5);
}

/* Étape finale - Succès (fond vert) */
.step-item--success .step-item__circle,
.step-item__circle--check {
    background: var(--wp--preset--color--success) !important;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.4) !important;
}

.step-item--success:hover .step-item__circle {
    box-shadow: 0 6px 20px rgba(16, 185, 129, 0.5) !important;
}

.step-item__title {
    font-size: 16px;
    font-weight: 600;
    color: var(--wp--preset--color--text-dark);
    margin: 0 0 8px !important;
}

.step-item__desc {
    font-size: 14px;
    font-weight: 400;
    color: var(--wp--preset--color--text-muted);
    line-height: 1.5;
    margin: 0 0 12px !important;
}

/* Badge info */
.step-item__info {
    display: inline-block !important;
    background: var(--wp--preset--color--muted) !important;
    font-size: 12px !important;
    font-weight: 500;
    color: var(--wp--preset--color--text-gray) !important;
    padding: 6px 12px !important;
    border-radius: 9999px !important;
    margin: 0 !important;
    white-space: nowrap;
}

.step-item__info strong {
    color: var(--wp--preset--color--secondary) !important;
}

/* =====================================================
   MOBILE: Timeline verticale (cachée par défaut)
   ===================================================== */
.steps-vertical {
    display: none;
    flex-direction: column;
    position: relative;
    padding-left: 80px;
}

/* Ligne verticale gradient */
.steps-vertical::before {
    content: '';
    position: absolute;
    left: 27px;
    top: 28px;
    bottom: 28px;
    width: 3px;
    background: linear-gradient(180deg, var(--wp--preset--color--primary) 0%, var(--wp--preset--color--secondary) 100%);
    border-radius: 2px;
}

.step-item-vertical {
    position: relative;
    padding-bottom: 40px;
    gap: 24px !important;
}

.step-item-vertical:last-child {
    padding-bottom: 0;
}

/* Cercle vertical */
.step-item-vertical__circle {
    position: absolute;
    left: -80px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    background: linear-gradient(135deg, var(--wp--preset--color--primary) 0%, #DC2626 50%, var(--wp--preset--color--secondary) 100%);
    color: white;
    flex-shrink: 0;
    box-shadow: 0 4px 14px rgba(124, 58, 237, 0.4);
    margin: 0 !important;
}

/* Étape finale vertical - Succès */
.step-item-vertical--success .step-item-vertical__circle,
.step-item-vertical__circle--check {
    background: var(--wp--preset--color--success) !important;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.4) !important;
}

.step-item-vertical__content {
    padding-top: 8px;
}

.step-item-vertical__title {
    font-size: 18px;
    font-weight: 600;
    color: var(--wp--preset--color--text-dark);
    margin: 0 0 8px !important;
}

.step-item-vertical__desc {
    font-size: 14px;
    font-weight: 400;
    color: var(--wp--preset--color--text-muted);
    line-height: 1.6;
    margin: 0 0 12px !important;
}

.step-item-vertical__info {
    display: inline-block !important;
    background: var(--wp--preset--color--muted) !important;
    font-size: 13px !important;
    font-weight: 500;
    color: var(--wp--preset--color--text-gray) !important;
    padding: 8px 14px !important;
    border-radius: 9999px !important;
    margin: 0 !important;
    white-space: nowrap;
}

.step-item-vertical__info strong {
    color: var(--wp--preset--color--secondary) !important;
}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width: 900px) {
    .section-steps__title {
        font-size: 28px;
    }

    .steps-horizontal {
        display: none !important;
    }

    .steps-vertical {
        display: flex;
    }
}

@media (max-width: 480px) {
    .section-steps__title {
        font-size: 24px;
    }

    .step-item-vertical__circle {
        width: 48px;
        height: 48px;
        font-size: 16px;
        left: -68px;
    }

    .steps-vertical {
        padding-left: 68px;
    }

    .steps-vertical::before {
        left: 23px;
    }
}
/* ==================== MARKETING SOLUTION GRID ==================== */

/* Grille 4 colonnes - hauteur égale */
.solution-grid-4 {
    align-items: stretch;
}

.solution-grid-4 > .wp-block-column {
    display: flex;
}

.solution-grid-4 .wp-block-jurible-solution-card {
    height: 100%;
}
/**
 * P10 - CTA Final
 * Section CTA final avec gradient, prix et boutons
 */

/* Container */
.cta-final {
	text-align: center;
}

/* Content */
.cta-final__content {
	gap: var(--wp--preset--spacing--sm);
}

/* Title */
.cta-final__title {
	margin-bottom: 0;
}

/* Subtitle */
.cta-final__subtitle {
	opacity: 0.9;
	margin-bottom: 0;
}

/* Price block */
.cta-final__price-block {
	gap: var(--wp--preset--spacing--xs);
	align-items: baseline;
}

.cta-final__price-old {
	opacity: 0.7;
	margin-bottom: 0;
}

.cta-final__price {
	margin-bottom: 0;
}

.cta-final__price-period {
	opacity: 0.8;
	margin-bottom: 0;
}

/* Promo badge */
.cta-final__promo {
	display: inline-flex;
	margin-top: var(--wp--preset--spacing--sm);
}

.cta-final__promo p {
	margin-bottom: 0;
}

/* Alert urgence */
.cta-final__alert {
	display: inline-flex;
	animation: pulse 2s infinite;
}

.cta-final__alert p {
	margin-bottom: 0;
}

@keyframes pulse {
	0%, 100% {
		opacity: 1;
	}
	50% {
		opacity: 0.8;
	}
}

/* Buttons */
.cta-final__buttons {
	flex-wrap: wrap;
}

/* Button primary white (sur gradient) */
.cta-final .is-style-primary-white .wp-block-button__link {
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--primary);
	font-weight: 600;
	transition: all var(--wp--custom--transition--default);
	box-shadow: var(--wp--preset--shadow--md);
}

.cta-final .is-style-primary-white .wp-block-button__link:hover {
	background-color: var(--wp--preset--color--muted);
	transform: translateY(-2px);
	box-shadow: var(--wp--preset--shadow--lg);
}

/* Button ghost white (sur gradient) */
.cta-final .is-style-ghost-white .wp-block-button__link {
	background-color: rgba(255, 255, 255, 0.15);
	color: var(--wp--preset--color--white);
	font-weight: 500;
	border: 1px solid rgba(255, 255, 255, 0.3);
	transition: all var(--wp--custom--transition--default);
}

.cta-final .is-style-ghost-white .wp-block-button__link:hover {
	background-color: rgba(255, 255, 255, 0.25);
	border-color: rgba(255, 255, 255, 0.5);
}

/* Mentions */
.cta-final__mentions {
	gap: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
}

.cta-final__mention {
	margin-bottom: 0;
	opacity: 0.9;
}

/* Responsive */
@media (max-width: 600px) {
	.cta-final__price-block {
		flex-wrap: wrap;
		justify-content: center;
	}

	.cta-final__buttons {
		flex-direction: column;
		width: 100%;
	}

	.cta-final__buttons .wp-block-button {
		width: 100%;
	}

	.cta-final__buttons .wp-block-button__link {
		width: 100%;
		justify-content: center;
	}

	.cta-final__mentions {
		flex-direction: column;
		gap: var(--wp--preset--spacing--xs);
	}
}
/**
 * P05 - Quelle Offre Choisir
 * Flip cards interactives
 */

/* Container */
.quelle-offre__grid {
    margin-top: var(--wp--preset--spacing--md);
}

/* Flip Card Container */
.flip-card {
    perspective: 1000px;
    cursor: pointer;
    height: 320px;
}

.flip-card__inner {
    position: relative;
    width: 100%;
    height: 100%;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    transform-style: preserve-3d;
}

/* Flipped state */
.flip-card.flipped .flip-card__inner {
    transform: rotateY(180deg);
}

/* Front and Back faces */
.flip-card__front,
.flip-card__back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--wp--preset--color--border);
    overflow: hidden;
    padding: var(--wp--preset--spacing--sm);
    box-sizing: border-box;
}

.flip-card__front *,
.flip-card__back * {
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.flip-card .wp-block-button {
    max-width: 100%;
}

.flip-card .wp-block-button__link {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.flip-card__front {
    z-index: 2;
}

.flip-card__back {
    transform: rotateY(180deg);
    z-index: 1;
}

/* Hint text */
.flip-card__hint,
.flip-card__hint-back {
    opacity: 0.7;
    transition: opacity 0.2s ease;
}

.flip-card:hover .flip-card__hint {
    opacity: 1;
}

/* Tag white style for back cards */
.is-style-tag-white {
    display: inline-block;
    padding: 4px 12px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 100px;
    font-weight: 600;
    color: #fff;
}

/* Button on back - prevent card flip when clicking */
.flip-card__back .wp-block-button__link {
    position: relative;
    z-index: 10;
}

/* Responsive */
@media (max-width: 781px) {
    .flip-card {
        height: 280px;
    }

    .quelle-offre__grid.wp-block-columns {
        flex-wrap: wrap;
    }

    .quelle-offre__grid .wp-block-column {
        flex-basis: calc(50% - var(--wp--preset--spacing--md) / 2) !important;
    }

    .flip-card__front,
    .flip-card__back {
        padding: var(--wp--preset--spacing--sm);
        gap: var(--wp--preset--spacing--xs);
    }

    .flip-card__back .wp-block-button__link {
        font-size: 0.8rem;
        padding: 8px 16px;
    }
}

@media (max-width: 480px) {
    .quelle-offre__grid .wp-block-column {
        flex-basis: 100% !important;
    }

    .flip-card {
        height: 260px;
    }

    .flip-card__front,
    .flip-card__back {
        padding: var(--wp--preset--spacing--sm) !important;
    }

    .flip-card .wp-block-button__link {
        font-size: 13px !important;
        padding: 8px 14px !important;
    }
}
/**
 * P06 - Produits Complémentaires
 * Cards avec highlight gradient border
 */

/* Grid responsive */
@media (max-width: 781px) {
    .produits-complementaires__grid.wp-block-columns {
        flex-direction: column;
    }

    .produits-complementaires__grid .wp-block-column {
        flex-basis: 100% !important;
    }
}

/* Card icon - ensure inline display */
.produit-card__icon {
    display: inline-block;
    width: auto;
}

/* Highlight card - gradient border */
.produit-card--highlight {
    border: 2px solid transparent !important;
    background:
        linear-gradient(white, white) padding-box,
        linear-gradient(135deg, #EDE9FE 0%, #7C3AED 100%) border-box !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.06);
}

.produit-card--highlight:hover {
    box-shadow:
        0 10px 15px rgba(0, 0, 0, 0.1),
        0 4px 6px rgba(0, 0, 0, 0.05),
        0 4px 14px rgba(124, 58, 237, 0.3);
}

/* Card hover effect */
.produit-card {
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.produit-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
}

/* ==========================================================================
   Related Products - Card title line clamp
   ========================================================================== */

.related-products-section .card-product h3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 4.2em; /* 3 lines × 1.4 line-height */
}

/* ==========================================================================
   Add to Cart Button - Related Products
   ========================================================================== */

.card-product__add-btn {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

.card-product__add-btn sc-product-buy-button,
.card-product__add-btn sc-button,
.card-product__add-btn button,
.card-product__add-btn .wp-block-button__link,
.card-product__add-btn .wp-element-button,
.card-product__add-btn a {
    background: var(--wp--preset--color--white) !important;
    color: var(--wp--preset--color--text-dark) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    border-radius: var(--wp--preset--border-radius--full) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    padding: 8px 16px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.card-product__add-btn:hover sc-button,
.card-product__add-btn:hover button,
.card-product__add-btn:hover .wp-block-button__link,
.card-product__add-btn:hover .wp-element-button,
.card-product__add-btn:hover a {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

/* ==========================================================================
   Related Products - Mobile Grid (2 columns)
   ========================================================================== */

@media (max-width: 781px) {
    /* Force 2 columns on mobile */
    .related-products-section .wp-block-surecart-product-template {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: var(--wp--preset--spacing--sm) !important;
    }

    /* Uniform card height */
    .related-products-section .card-product {
        display: flex;
        flex-direction: column;
        height: 100%;
    }

    /* Let info section grow to push content evenly */
    .related-products-section .card-product > .wp-block-group:last-child {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
    }

    /* Push price to bottom */
    .related-products-section .card-product > .wp-block-group:last-child > .wp-block-group:last-child {
        margin-top: auto;
    }

    /* Smaller image aspect ratio on mobile */
    .related-products-section .card-product .wp-block-cover {
        aspect-ratio: 1/1 !important;
    }

    /* Smaller text on mobile */
    .related-products-section .card-product h3 {
        font-size: var(--wp--preset--font-size--small) !important;
        min-height: 3.6em; /* 3 lines */
    }
}
/**
 * P07 - Pricing Académie
 */

/* Divider */
.pricing-academie__divider {
    width: calc(100% - 96px);
    margin: var(--wp--preset--spacing--md) auto;
}

/* Responsive - 2 colonnes par ligne sur mobile */
@media (max-width: 781px) {
    .pricing-academie__features {
        padding-left: var(--wp--preset--spacing--md) !important;
        padding-right: var(--wp--preset--spacing--md) !important;
    }

    .pricing-academie__features .wp-block-columns {
        flex-wrap: wrap !important;
        flex-direction: row !important;
        justify-content: center !important;
    }

    .pricing-academie__features .wp-block-columns > .wp-block-column {
        flex-basis: calc(50% - var(--wp--preset--spacing--sm)) !important;
        flex-grow: 0 !important;
    }
}

@media (max-width: 540px) {
    .pricing-academie__features {
        padding-left: var(--wp--preset--spacing--sm) !important;
        padding-right: var(--wp--preset--spacing--sm) !important;
    }
}

/**
 * Commerce 09 - Pricing Comparatif Homepage
 */

/* Hero Card Académie — bordure gradient dashed */
.pricing-hero-card {
    position: relative;
    border: 2px dashed transparent !important;
    background:
        linear-gradient(white, white) padding-box,
        var(--wp--preset--gradient--brand-gradient) border-box !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1), 0 1px 2px rgba(0,0,0,0.06);
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.pricing-hero-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 15px rgba(0,0,0,0.1), 0 4px 6px rgba(0,0,0,0.05);
}

/* Badge Populaire — position absolue top-left */
.pricing-hero-card__badge {
    position: absolute !important;
    top: -14px;
    left: 24px;
    background: var(--wp--preset--gradient--brand-gradient);
    padding: 6px 16px;
    border-radius: 9999px;
    z-index: 1;
}

/* Product cards en bas — hover */
.section-pricing-comparatif-homepage .product-card {
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.section-pricing-comparatif-homepage .product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 4px 6px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.06);
}

/* Boutons alignés en bas des cards */
.section-pricing-comparatif-homepage .product-card > .wp-block-buttons {
    margin-top: auto !important;
}

/* Grid 4 colonnes - hauteur égale */
.pricing-comparatif__grid {
    align-items: stretch !important;
}

.pricing-comparatif__grid > .wp-block-column {
    display: flex;
    flex-direction: column;
}

/* Card de base */
.pricing-comparatif__card {
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.pricing-comparatif__card:hover {
    transform: translateY(-4px);
}

.pricing-comparatif__card .pricing-comparatif__card-content {
    display: flex;
    flex-direction: column;
    flex: 1;
    height: 100%;
}

/* Featured card (Académie) */
.pricing-comparatif__card--featured {
    position: relative;
    background: linear-gradient(white, white) padding-box,
                var(--wp--preset--gradient--brand-gradient) border-box;
    border: 2px solid transparent;
    border-radius: 12px;
    transform: scale(1.02);
    box-shadow: 0 4px 14px rgba(176, 0, 29, 0.2);
    overflow: hidden;
}

.pricing-comparatif__card--featured:hover {
    transform: scale(1.02) translateY(-4px);
    box-shadow: 0 10px 15px rgba(0,0,0,0.1), 0 4px 14px rgba(176, 0, 29, 0.2);
}

/* Ribbon gradient */
.pricing-comparatif__ribbon {
    background: var(--wp--preset--gradient--brand-gradient);
    margin: -2px -2px 0 -2px;
    border-radius: 10px 10px 0 0;
}

/* Cards standards - bordure et hover */
.pricing-comparatif__card--secondary:hover,
.pricing-comparatif__card--success:hover,
.pricing-comparatif__card--warning:hover {
    box-shadow: 0 4px 6px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.06);
}

/* CTA Gradient style */
.is-style-cta-gradient .wp-block-button__link {
    background: var(--wp--preset--gradient--brand-gradient) !important;
    color: #fff !important;
    border: none !important;
}

.is-style-cta-gradient .wp-block-button__link:hover {
    filter: brightness(1.1);
    transform: translateY(-1px);
}

/* CTA hover couleurs par produit */
.pricing-cta--secondary .wp-block-button__link:hover {
    border-color: var(--wp--preset--color--secondary) !important;
    color: var(--wp--preset--color--secondary) !important;
    background: var(--wp--preset--color--secondary-bg) !important;
}

.pricing-cta--success .wp-block-button__link:hover {
    border-color: var(--wp--preset--color--success) !important;
    color: var(--wp--preset--color--success-text) !important;
    background: var(--wp--preset--color--success-bg) !important;
}

.pricing-cta--warning .wp-block-button__link:hover {
    border-color: var(--wp--preset--color--warning) !important;
    color: var(--wp--preset--color--warning-text) !important;
    background: #FEF3C7 !important;
}

/* Responsive */
@media (max-width: 1100px) {
    .pricing-comparatif__grid {
        flex-wrap: wrap !important;
    }

    .pricing-comparatif__grid > .wp-block-column {
        flex-basis: calc(50% - var(--wp--preset--spacing--md) / 2) !important;
        flex-grow: 0 !important;
        margin-bottom: var(--wp--preset--spacing--md);
    }

    .pricing-comparatif__card--featured {
        transform: scale(1);
    }

    .pricing-comparatif__card--featured:hover {
        transform: translateY(-4px);
    }
}

@media (max-width: 600px) {
    .pricing-comparatif__grid > .wp-block-column {
        flex-basis: 100% !important;
    }
}

/* Responsive Homepage variant */
@media (max-width: 782px) {
    .pricing-hero-card .wp-block-columns {
        flex-direction: column !important;
    }

    .pricing-hero-card .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
    }

    .section-pricing-comparatif-homepage .wp-block-columns.are-vertically-aligned-stretch {
        flex-direction: column !important;
    }

    .section-pricing-comparatif-homepage .wp-block-columns.are-vertically-aligned-stretch > .wp-block-column {
        flex-basis: 100% !important;
        margin-bottom: var(--wp--preset--spacing--md);
    }
}
/**
 * Reassurance Patterns CSS
 */

/* ==========================================================================
   VERSION COMPLÈTE
   ========================================================================== */

.reassurance-full {
	box-shadow: none !important;
	border: none !important;
	border-radius: var(--wp--custom--border-radius--lg) !important;
}

.reassurance-full__row {
	align-items: center !important;
}

.reassurance-full__row p {
	margin: 0 !important;
}

/* Séparateurs verticaux */
.reassurance-full__col {
	position: relative;
	padding: 0 var(--wp--preset--spacing--md) !important;
}

.reassurance-full__col:not(:last-child)::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 50px;
	background: var(--wp--preset--color--border, #E5E7EB);
}

.reassurance-full__stars {
	color: var(--wp--preset--color--warning);
	letter-spacing: 2px;
}

.reassurance-full__divider {
	margin: var(--wp--preset--spacing--md) 0 !important;
	background: var(--wp--preset--color--border, #E5E7EB) !important;
}

.reassurance-full__partners {
	justify-content: center !important;
	max-width: 400px;
	margin: 0 auto !important;
}

.reassurance-full__partners p {
	margin-bottom: calc(var(--wp--preset--spacing--xs) / 2) !important;
}

.reassurance-full__partner-logo img {
	height: 40px !important;
	width: auto !important;
}

/* ==========================================================================
   VERSION MINIMALISTE
   ========================================================================== */

.reassurance-minimal p {
	margin: 0 !important;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 900px) {
	.reassurance-full__col::after {
		display: none;
	}
}

@media (max-width: 600px) {
	.reassurance-full {
		padding: var(--wp--preset--spacing--md) !important;
	}

	.reassurance-full__row,
	.reassurance-full__partners {
		flex-direction: column !important;
	}

	.reassurance-full__col {
		flex-basis: 100% !important;
		padding: var(--wp--preset--spacing--sm) 0 !important;
	}

	.reassurance-minimal {
		flex-direction: column !important;
		align-items: center !important;
	}
}
/**
 * FAQ Pattern CSS
 * Uses theme.json design tokens for consistency
 */

/* ==========================================================================
   FAQ SECTION
   ========================================================================== */

.faq-section {
	border-radius: var(--wp--custom--border-radius--lg);
}

/* Titre gradient */
.faq-section h2 mark {
	background: var(--wp--preset--gradient--brand-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ==========================================================================
   FAQ ITEMS (Details block)
   ========================================================================== */

.faq-list {
	margin-bottom: var(--wp--preset--spacing--lg) !important;
}

.faq-item {
	border: 1px solid var(--wp--preset--color--border, #E5E7EB);
	border-radius: var(--wp--custom--border-radius--lg);
	margin-bottom: calc(var(--wp--preset--spacing--xs) / 2);
	overflow: hidden;
	transition: border-color 150ms ease;
}

.faq-item:hover {
	border-color: var(--wp--preset--color--secondary);
}

.faq-item[open] {
	border-color: var(--wp--preset--color--secondary);
}

/* Question (summary) */
.faq-item summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--wp--preset--spacing--md);
	font-size: 16px;
	font-weight: 600;
	color: var(--wp--preset--color--text-dark, #1A1A1A);
	cursor: pointer;
	transition: background-color 150ms ease;
	list-style: none;
}

.faq-item summary::-webkit-details-marker {
	display: none;
}

.faq-item summary::after {
	content: '▼';
	font-size: var(--wp--preset--font-size--caption);
	color: var(--wp--preset--color--text-muted, #9CA3AF);
	background: var(--wp--preset--color--muted, #F3F4F6);
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: all 150ms ease;
}

.faq-item summary:hover {
	background: var(--wp--preset--color--muted, #F9FAFB);
}

.faq-item[open] summary {
	background: var(--wp--preset--color--secondary-bg);
}

.faq-item[open] summary::after {
	background: var(--wp--preset--color--secondary);
	color: #fff;
	transform: rotate(180deg);
}

/* Answer */
.faq-item > *:not(summary) {
	padding: 0 var(--wp--preset--spacing--md) var(--wp--preset--spacing--md);
}

.faq-item p {
	margin: 0 !important;
	line-height: 1.7;
}

/* ==========================================================================
   FAQ FOOTER
   ========================================================================== */

.faq-footer {
	border-radius: var(--wp--custom--border-radius--lg);
	text-align: center;
}

.faq-footer p {
	margin: 0 !important;
}

.faq-footer p:first-child {
	margin-bottom: var(--wp--preset--spacing--xs) !important;
}

.faq-footer a {
	color: var(--wp--preset--color--primary);
	text-decoration: none;
}

.faq-footer a:hover {
	color: var(--wp--preset--color--secondary);
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 600px) {
	.faq-section {
		padding: var(--wp--preset--spacing--md) !important;
	}

	.faq-item summary {
		padding: var(--wp--preset--spacing--sm);
		font-size: var(--wp--preset--font-size--small);
	}

	.faq-item > *:not(summary) {
		padding: 0 var(--wp--preset--spacing--sm) var(--wp--preset--spacing--sm);
		font-size: var(--wp--preset--font-size--small);
	}
}
/**
 * P09 - Trust Bar Logos
 * Bandeau de confiance avec logos universités
 */

/* Container */
.trust-bar {
	background: var(--wp--preset--color--accent-bg);
	text-align: center;
}

/* Title */
.trust-bar__title {
	margin-bottom: 0;
}

/* Logos container */
.trust-bar__logos {
	gap: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xl);
	max-width: 1100px;
	margin: 0 auto;
}

/* Individual logo wrapper */
.trust-bar__logo {
	transition: transform var(--wp--custom--transition--slow);
}

.trust-bar__logo:hover {
	transform: translateY(-2px);
}

/* Placeholder style (bordure dashed) */
.trust-bar__placeholder {
	height: var(--wp--custom--logo--height);
	padding: 0 var(--wp--preset--spacing--sm);
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1.5px dashed var(--wp--preset--color--border-muted);
	border-radius: var(--wp--custom--border-radius--md);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: 500;
	color: var(--wp--preset--color--border-muted);
	margin-bottom: 0;
	transition: all var(--wp--custom--transition--slow);
}

.trust-bar__logo:hover .trust-bar__placeholder {
	border-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--secondary);
}

/* When using actual images */
.trust-bar__logo img,
.trust-bar__logo .wp-block-image img {
	height: var(--wp--custom--logo--height);
	width: auto;
	max-width: 150px;
	object-fit: contain;
	filter: grayscale(100%);
	opacity: 0.45;
	transition: all var(--wp--custom--transition--slow);
}

.trust-bar__logo:hover img,
.trust-bar__logo:hover .wp-block-image img {
	filter: grayscale(0%);
	opacity: 1;
}

/* Responsive */
@media (max-width: 782px) {
	.trust-bar {
		padding: var(--wp--preset--spacing--lg) var(--wp--preset--spacing--sm);
	}

	.trust-bar__title {
		font-size: var(--wp--preset--font-size--caption) !important;
		margin-bottom: var(--wp--preset--spacing--md) !important;
	}

	.trust-bar__logos {
		gap: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--md);
	}

	.trust-bar__placeholder {
		height: var(--wp--custom--avatar--sm);
		padding: 0 var(--wp--preset--spacing--xs);
		font-size: 9px;
	}

	.trust-bar__logo img,
	.trust-bar__logo .wp-block-image img {
		height: var(--wp--custom--avatar--sm);
	}
}
/**
 * Contenu Patterns CSS
 * Patterns B, C, D, E, F
 */

/* Titre gradient (commun) */
.contenu-section h2 mark {
	background: var(--wp--preset--gradient--brand-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ==========================================================================
   PATTERN B - CONTENU CHIFFRÉ (fond noir)
   ========================================================================== */

/* Equal height columns */
.contenu-chiffre .wp-block-column {
	display: flex;
	flex-direction: column;
}

.contenu-chiffre__card {
	flex: 1;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	transition: transform 150ms ease, background 150ms ease;
}

.contenu-chiffre__card:hover {
	transform: translateY(-4px);
	background: rgba(255, 255, 255, 0.08);
}

.contenu-chiffre__icon {
	width: 48px;
	height: 48px;
	background: var(--wp--preset--gradient--brand-gradient);
	border-radius: var(--wp--custom--border-radius--md);
	margin-bottom: var(--wp--preset--spacing--sm);
}

.contenu-chiffre__icon p {
	margin: 0 !important;
	line-height: 1;
}

.contenu-chiffre__number {
	margin: 0 0 4px 0 !important;
	line-height: 1;
}

.contenu-chiffre__label {
	margin: 0 0 var(--wp--preset--spacing--xs) 0 !important;
}

.contenu-chiffre__desc {
	margin: 0 !important;
	line-height: 1.5;
}

.contenu-chiffre__tag {
	display: inline-block;
	margin-top: var(--wp--preset--spacing--xs) !important;
	margin-bottom: 0 !important;
	padding: 4px 10px;
	background: var(--wp--preset--color--success);
	color: #fff;
	font-size: var(--wp--preset--font-size--caption);
	font-weight: 600;
	text-transform: uppercase;
	border-radius: var(--wp--custom--border-radius--sm);
}

/* ==========================================================================
   PATTERN C - LISTE MATIÈRES
   ========================================================================== */

/* Equal height columns and cards */
.contenu-matieres-grid .wp-block-column {
	display: flex;
	flex-direction: column;
}

.contenu-matieres__item {
	flex: 1;
	gap: var(--wp--preset--spacing--sm) !important;
	transition: border-color 150ms ease, background 150ms ease;
}

.contenu-matieres__item:hover {
	border-color: var(--wp--preset--color--secondary) !important;
	background: var(--wp--preset--color--secondary-light) !important;
}

.contenu-matieres__icon {
	width: 36px;
	height: 36px;
	min-width: 36px;
	border-radius: var(--wp--custom--border-radius--sm);
}

.contenu-matieres__icon p {
	margin: 0 !important;
	line-height: 1;
}

.contenu-matieres__name {
	margin: 0 !important;
}

.contenu-matieres__footer strong {
	color: var(--wp--preset--color--primary) !important;
}

/* ==========================================================================
   PATTERN D - STATS + SOMMAIRE
   ========================================================================== */

.contenu-fiche__stat p {
	margin: 0 !important;
}

.contenu-fiche__stat-number + p {
	margin-top: 4px !important;
}

.contenu-fiche__theme-title {
	margin: 0 0 var(--wp--preset--spacing--xs) 0 !important;
}

.contenu-fiche__theme-items {
	list-style: none !important;
	margin: 0 !important;
}

.contenu-fiche__theme-items li {
	position: relative;
	padding-left: var(--wp--preset--spacing--sm);
	padding-top: 4px;
	padding-bottom: 4px;
	line-height: 1.4;
}

.contenu-fiche__theme-items li::before {
	content: '•';
	position: absolute;
	left: 0;
	color: var(--wp--preset--color--text-muted);
}

/* ==========================================================================
   PATTERN E - SOMMAIRE SIMPLE
   ========================================================================== */

.contenu-sommaire__item {
	transition: border-color 150ms ease, background 150ms ease;
}

.contenu-sommaire__item:hover {
	border-color: var(--wp--preset--color--secondary) !important;
	background: var(--wp--preset--color--secondary-light) !important;
}

.contenu-sommaire__item p {
	margin: 0 !important;
}

/* ==========================================================================
   PATTERN F - PROGRAMME MODULES
   ========================================================================== */

.contenu-programme__module-number {
	width: 36px;
	height: 36px;
	min-width: 36px;
	background: var(--wp--preset--gradient--brand-gradient);
	border-radius: 50%;
}

.contenu-programme__module-number p {
	margin: 0 !important;
	line-height: 1;
}

.contenu-programme__module-items {
	list-style: none !important;
	margin: 0 !important;
}

.contenu-programme__module-items li {
	position: relative;
	padding-left: var(--wp--preset--spacing--sm);
	padding-top: 6px;
	padding-bottom: 6px;
	line-height: 1.4;
}

.contenu-programme__module-items li::before {
	content: '•';
	position: absolute;
	left: 0;
	color: var(--wp--preset--color--primary);
	font-weight: bold;
}

.contenu-programme__bonus-items {
	list-style: none !important;
	margin: 0 !important;
}

.contenu-programme__bonus-items li {
	position: relative;
	padding-left: var(--wp--preset--spacing--sm);
	padding-top: 4px;
	padding-bottom: 4px;
}

.contenu-programme__bonus-items li::before {
	content: '✓';
	position: absolute;
	left: 0;
	color: var(--wp--preset--color--success);
	font-weight: 600;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 1000px) {
	.contenu-chiffre .wp-block-column {
		flex-basis: calc(50% - var(--wp--preset--spacing--sm)) !important;
	}

	.contenu-fiche.wp-block-columns {
		flex-direction: column !important;
	}

	.contenu-fiche .wp-block-column {
		flex-basis: 100% !important;
	}
}

@media (max-width: 600px) {
	.contenu-section {
		padding: var(--wp--preset--spacing--md) !important;
	}

	.contenu-chiffre .wp-block-column {
		flex-basis: 100% !important;
	}

	.contenu-programme__module-items {
		padding-left: 0 !important;
		margin-top: var(--wp--preset--spacing--sm) !important;
	}

	.contenu-chiffre__card {
		text-align: center;
	}

	.contenu-chiffre__icon {
		margin-left: auto;
		margin-right: auto;
	}
}
/**
 * P01 - Section Paragraphe
 * Sections de contenu texte avec variantes
 */

/* ═══════════════════════════════════════
   LISTE EMOJI
   ═══════════════════════════════════════ */

.section-paragraphe__list {
	list-style: none;
	padding-left: 0 !important;
}

.section-paragraphe__list li {
	padding: 6px 0;
}

/* ═══════════════════════════════════════
   BLOCKQUOTE
   ═══════════════════════════════════════ */

.section-paragraphe__quote {
	font-weight: 700;
	font-style: italic;
	color: var(--wp--preset--color--text-gray);
	border-left: 3px solid var(--wp--preset--color--primary);
	padding-left: var(--wp--preset--spacing--md);
	margin: var(--wp--preset--spacing--md) 0;
}

.section-paragraphe__quote p {
	margin-bottom: 0;
}

/* ═══════════════════════════════════════
   VARIANTE CARD
   Note: Bordure 1px arrondie gérée via les attributs du bloc WordPress
   Pas de shadow sur cette variante
   ═══════════════════════════════════════ */

/* ═══════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════ */

@media (max-width: 782px) {
	.section-paragraphe__card {
		padding: var(--wp--preset--spacing--md) !important;
	}
}
/**
 * P02 - Bloc Texte + Média
 * Section 2 colonnes avec texte et image/vidéo
 */

/* ═══════════════════════════════════════
   IMAGE HOVER EFFECT
   ═══════════════════════════════════════ */

.bloc-texte-media__image img {
	transition: box-shadow 200ms ease, transform 200ms ease;
	box-shadow: var(--wp--preset--shadow--sm);
}

.bloc-texte-media__image img:hover {
	box-shadow: var(--wp--preset--shadow--lg);
	transform: translateY(-2px);
}

/* ═══════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════ */

@media (max-width: 782px) {
	.bloc-texte-media .wp-block-columns {
		flex-direction: column;
	}

	.bloc-texte-media .wp-block-column {
		flex-basis: 100% !important;
	}
}
/**
 * P13 - Stats Section
 */

/* =====================================================
   SOMMAIRE HEADER ALIGNMENT
   ===================================================== */

.contenu-fiche__right > h3 {
	display: flex;
	align-items: center;
	gap: 0.5em;
}

/* Separate icon from text for better alignment */
.contenu-fiche__right > h3::before {
	content: "☰";
	line-height: 1;
}

/* Grid margin reset */
.section-stats__grid {
    margin: 0 !important;
}

/* Separator line between items */
.section-stats__item {
    position: relative;
}

.section-stats__item:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 64px;
    background: rgba(255, 255, 255, 0.2);
}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width: 781px) {
    .section-stats__grid {
        flex-wrap: wrap !important;
        gap: var(--wp--preset--spacing--lg) var(--wp--preset--spacing--md) !important;
    }

    .section-stats__grid > .wp-block-column {
        flex-basis: calc(50% - var(--wp--preset--spacing--sm)) !important;
        flex-grow: 0 !important;
    }

    .section-stats__grid h3 {
        font-size: 32px !important;
    }

    .section-stats__grid p {
        font-size: 13px !important;
    }

    /* Hide all separators on mobile */
    .section-stats__item::after {
        display: none !important;
    }
}

@media (max-width: 480px) {
    .section-stats__grid h3 {
        font-size: 28px !important;
    }

    .section-stats__grid p {
        font-size: 12px !important;
    }
}

/* =====================================================
   SOMMAIRE ACCORDION (wp:details native block)
   ===================================================== */

.contenu-fiche__accordion {
    border: none;
}

.contenu-fiche__accordion > summary {
    display: inline-flex;
    align-items: center;
    gap: var(--wp--preset--spacing--xs);
    padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm);
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
    font-size: var(--wp--preset--font-size--small);
    font-weight: 600;
    border-radius: var(--wp--preset--border-radius--md);
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease;
    list-style: none;
}

.contenu-fiche__accordion > summary::-webkit-details-marker {
    display: none;
}

.contenu-fiche__accordion > summary::after {
    content: " ↓";
}

.contenu-fiche__accordion[open] > summary::after {
    content: " ↑";
}

.contenu-fiche__accordion > summary:hover {
    background: var(--wp--preset--color--primary-hover);
    transform: translateY(-1px);
}

/* Spacing between summary and content */
.contenu-fiche__accordion > summary + .wp-block-group {
    margin-top: var(--wp--preset--spacing--md) !important;
}

/* Animation on open */
.contenu-fiche__accordion[open] > .wp-block-group {
    animation: accordionSlide 0.3s ease;
}

@keyframes accordionSlide {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/**
 * Enseignants Patterns CSS
 * Styles pour les effets impossibles avec les blocs natifs WordPress
 */

/* ==========================================================================
   ÉQUIPE TEASER - Avatars empilés
   ========================================================================== */

.equipe-teaser__avatars {
	gap: 0 !important;
}

.equipe-teaser__avatars .wp-block-image {
	margin-left: -12px;
}

.equipe-teaser__avatars .wp-block-image:first-child {
	margin-left: 0;
}

.equipe-teaser__avatar img {
	width: 48px !important;
	height: 48px !important;
	border: 3px solid #ffffff;
	border-radius: var(--wp--custom--border-radius--full);
	object-fit: cover;
}

.equipe-teaser__avatar-more {
	margin-left: -12px;
	width: 48px;
	height: 48px;
	border: 3px solid #ffffff;
	border-radius: var(--wp--custom--border-radius--full);
}

/* Photo de groupe wrapper - border-radius */
.equipe-teaser__photo-wrapper {
	border-radius: var(--wp--preset--border-radius--lg);
	overflow: hidden;
}

/* Photo de groupe - sans bordure */
.equipe-teaser__photo img {
	border: none !important;
	border-radius: 0 !important;
}

/* ==========================================================================
   ENSEIGNANT SPÉCIFIQUE - Avatar et liste
   ========================================================================== */

.enseignant-avatar img {
	width: 96px !important;
	height: 96px !important;
	border-radius: var(--wp--custom--border-radius--full);
	object-fit: cover;
}

.enseignant-credentials {
	list-style: none !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
}

.enseignant-credentials li {
	position: relative;
	padding-left: 28px !important;
	margin-bottom: 4px;
}

.enseignant-credentials li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 0;
	color: var(--wp--preset--color--success, #10B981);
	font-weight: 600;
	font-size: 14px;
	line-height: inherit;
}


/* ==========================================================================
   ÉQUIPE VIDÉO - Cartes
   ========================================================================== */

.equipe-video__card {
	transition: box-shadow 200ms ease, transform 200ms ease;
}

.equipe-video__card:hover {
	box-shadow: 0 4px 6px rgba(0,0,0,0.1);
	transform: translateY(-4px);
}

.equipe-video__card a {
	text-decoration: none;
}

.equipe-video__card a:hover {
	text-decoration: underline;
}

.equipe-video__img {
	flex-shrink: 0;
}

.equipe-video__img img {
	width: 140px !important;
	height: 140px !important;
	border-radius: var(--wp--custom--border-radius--lg);
	object-fit: cover;
}

/* ==========================================================================
   ÉQUIPE GRILLE - Page Nos enseignants
   ========================================================================== */

.equipe-grille__card {
	border: 1px solid var(--wp--preset--color--border);
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(0,0,0,0.1);
	transition: box-shadow 200ms ease, transform 200ms ease;
}

.equipe-grille__card:hover {
	box-shadow: 0 10px 15px rgba(0,0,0,0.1), 0 4px 6px rgba(0,0,0,0.05);
	transform: translateY(-3px);
}

.equipe-grille__header {
	padding: var(--wp--preset--spacing--md);
	padding-bottom: var(--wp--preset--spacing--sm);
	text-align: center;
}

.equipe-grille__header--fondateur {
	background: var(--wp--preset--gradient--brand-gradient);
}

.equipe-grille__header--intervenant {
	background: var(--wp--preset--color--muted);
}

.equipe-grille__badge {
	color: #ffffff;
	margin: 0 !important;
}

.equipe-grille__header--intervenant .equipe-grille__badge {
	color: var(--wp--preset--color--text-muted);
}

.equipe-grille__avatar {
	margin: var(--wp--preset--spacing--sm) auto 0 !important;
}

.equipe-grille__avatar img {
	width: 80px !important;
	height: 80px !important;
	border-radius: var(--wp--custom--border-radius--full);
	border: 3px solid rgba(255,255,255,0.3);
	object-fit: cover;
}

.equipe-grille__header--intervenant .equipe-grille__avatar img {
	border-color: var(--wp--preset--color--border);
}

.equipe-grille__body > * {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--xs);
}

.equipe-grille__body > *:last-child {
	margin-bottom: 0;
}

.equipe-grille__tags {
	margin-top: calc(var(--wp--preset--spacing--xs) / 2) !important;
	margin-bottom: var(--wp--preset--spacing--xs) !important;
}

.equipe-grille__tags .is-style-tag-secondary {
	margin: 0 !important;
}

.equipe-grille__linkedin a {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
	color: var(--wp--preset--color--secondary);
	text-decoration: none;
}

.equipe-grille__linkedin a::before {
	content: '';
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%237C3AED' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.5 2h-17A1.5 1.5 0 002 3.5v17A1.5 1.5 0 003.5 22h17a1.5 1.5 0 001.5-1.5v-17A1.5 1.5 0 0020.5 2zM8 19H5v-9h3zM6.5 8.25A1.75 1.75 0 118.3 6.5a1.78 1.78 0 01-1.8 1.75zM19 19h-3v-4.74c0-1.42-.6-1.93-1.38-1.93A1.74 1.74 0 0013 14.19a.66.66 0 000 .14V19h-3v-9h2.9v1.3a3.11 3.11 0 012.7-1.4c1.55 0 3.36.86 3.36 3.66z'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	flex-shrink: 0;
}

.equipe-grille__linkedin a:hover {
	color: var(--wp--preset--color--primary);
}

.equipe-grille__linkedin a:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%23B0001D' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.5 2h-17A1.5 1.5 0 002 3.5v17A1.5 1.5 0 003.5 22h17a1.5 1.5 0 001.5-1.5v-17A1.5 1.5 0 0020.5 2zM8 19H5v-9h3zM6.5 8.25A1.75 1.75 0 118.3 6.5a1.78 1.78 0 01-1.8 1.75zM19 19h-3v-4.74c0-1.42-.6-1.93-1.38-1.93A1.74 1.74 0 0013 14.19a.66.66 0 000 .14V19h-3v-9h2.9v1.3a3.11 3.11 0 012.7-1.4c1.55 0 3.36.86 3.36 3.66z'/%3E%3C/svg%3E");
}

/* ==========================================================================
   COMMUN - Gradient text H2
   ========================================================================== */

.enseignant-section h2 mark,
.equipe-teaser-section h2 mark,
.equipe-video-section h2 mark,
.equipe-grille-section h2 mark,
.related-products-section h2 mark {
	background: var(--wp--preset--gradient--brand-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 1024px) {
	.equipe-video__img img {
		width: 100px !important;
		height: 100px !important;
	}
}


@media (max-width: 600px) {
	.equipe-video__card {
		flex-direction: column !important;
		align-items: center !important;
		text-align: center;
	}

	.equipe-video__img {
		order: -1;
		margin-bottom: var(--wp--preset--spacing--sm) !important;
	}

	.equipe-video__img img {
		width: 80px !important;
		height: 80px !important;
	}
}

/* Fix: avatar ne doit pas être écrasé dans le flex */
.enseignant-section .enseignant-avatar {
  flex-shrink: 0;
}
.enseignant-section .enseignant-avatar img {
  width: 120px !important;
  height: 120px !important;
  object-fit: cover;
}

/* ==================== ARTICLE FEATURED ==================== */

/* Reset du padding par défaut du ul post-template */
.article-featured-query .wp-block-post-template {
    padding-left: 0;
    margin: 0;
    list-style: none;
}

.article-featured {
    border: 1px solid var(--wp--preset--color--border);
    box-shadow: var(--wp--preset--shadow--sm);
    overflow: hidden;
    transition: var(--wp--custom--transition--default);
}

.article-featured:hover {
    box-shadow: var(--wp--preset--shadow--lg);
    transform: translateY(-4px);
}

.article-featured .wp-block-columns {
    margin-bottom: 0;
    gap: 0;
}

.article-featured .wp-block-post-featured-image {
    margin: 0;
    height: 100%;
    min-height: 320px;
}

.article-featured .wp-block-post-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Responsive */
@media (max-width: 782px) {
    .article-featured .wp-block-post-featured-image {
        min-height: 220px;
    }

    .article-featured .wp-block-columns {
        gap: 0 !important;
    }

    .article-featured .wp-block-column {
        padding-left: var(--wp--preset--spacing--md) !important;
        padding-right: var(--wp--preset--spacing--md) !important;
    }

    .article-featured .wp-block-column:first-child {
        padding: 0 !important;
    }
}
/* ==================== ARTICLES GRID ==================== */

/* Reset du padding par défaut du ul post-template */
.articles-grid-query .wp-block-post-template,
.archive-query .wp-block-post-template,
.search-query .wp-block-post-template {
    padding-left: 0;
    margin: 0;
    list-style: none;
}

/* Responsive grille */
@media (max-width: 1000px) {
    .articles-grid-query .wp-block-post-template.is-layout-grid,
    .archive-query .wp-block-post-template.is-layout-grid,
    .search-query .wp-block-post-template.is-layout-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 600px) {
    .articles-grid-query .wp-block-post-template.is-layout-grid,
    .archive-query .wp-block-post-template.is-layout-grid,
    .search-query .wp-block-post-template.is-layout-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Card Article */
.card-article {
    box-shadow: var(--wp--preset--shadow--sm);
    overflow: hidden;
    transition: var(--wp--custom--transition--default);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.card-article:hover {
    box-shadow: var(--wp--preset--shadow--lg);
    transform: translateY(-4px);
}

/* Image */
.card-article .wp-block-post-featured-image {
    margin: 0;
    height: 180px;
    overflow: hidden;
}

.card-article .wp-block-post-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Content */
.card-article > .wp-block-group:last-child {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* Title clamp 2 lines */
.card-article .wp-block-post-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Excerpt clamp 2 lines */
.card-article .wp-block-post-excerpt__excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
}

.card-article .wp-block-post-excerpt {
    margin-bottom: 0;
}

/* Footer push to bottom */
.card-article > .wp-block-group:last-child > .wp-block-group:last-child {
    margin-top: auto !important;
}

/* Read more link */
.card-article__link {
    font-size: 14px;
    font-weight: 500;
    color: var(--wp--preset--color--primary);
    text-decoration: none;
    transition: all 150ms ease;
}

.card-article__link:hover {
    color: var(--wp--preset--color--primary-hover, #8B0016);
}

/* ==================== CATEGORY TAGS ==================== */
/* Styles pour post-terms (catégories) basés sur le design system */

.card-article .wp-block-post-terms {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

/* Masquer la catégorie fourre-tout "Tous les articles" */
.card-article .wp-block-post-terms a[href*="blog-droit"] {
    display: none;
}

.card-article .wp-block-post-terms a {
    display: inline-block;
    padding: 6px 14px;
    border-radius: 9999px;
    font-size: 12px;
    font-weight: 600;
    color: white;
    text-decoration: none;
    background: var(--wp--preset--color--secondary); /* Défaut violet */
    transition: opacity 150ms ease;
}

.card-article .wp-block-post-terms a:hover {
    opacity: 0.9;
}

/* Couleurs par catégorie (basées sur le slug) */
.card-article .wp-block-post-terms a[href*="methodologie"] {
    background: var(--wp--preset--color--success);
}

.card-article .wp-block-post-terms a[href*="conseils"] {
    background: var(--wp--preset--color--info);
}

.card-article .wp-block-post-terms a[href*="culture"] {
    background: var(--wp--preset--color--warning);
}

.card-article .wp-block-post-terms a[href*="orientation"] {
    background: var(--wp--preset--color--error);
}

.card-article .wp-block-post-terms a[href*="examens"],
.card-article .wp-block-post-terms a[href*="concours"] {
    background: #8B5CF6; /* Violet clair */
}

.card-article .wp-block-post-terms a[href*="vie-etudiante"] {
    background: var(--wp--preset--color--info);
}

.card-article .wp-block-post-terms a[href*="actualites"] {
    background: var(--wp--preset--color--warning);
}

/* Matières juridiques - toutes en violet secondary */
.card-article .wp-block-post-terms a[href*="droit-"] {
    background: var(--wp--preset--color--secondary);
}

/* ==================== BUTTON OUTLINE DARK ==================== */
/* Style spécifique pour "Voir tous les articles" */

.wp-block-button.is-style-outline-dark .wp-block-button__link {
    background: var(--wp--preset--color--white);
    color: var(--wp--preset--color--text-dark);
    border: 1px solid var(--wp--preset--color--border);
    box-shadow: none;
}

.wp-block-button.is-style-outline-dark .wp-block-button__link:hover {
    background: var(--wp--preset--gradient--brand-gradient);
    color: var(--wp--preset--color--white);
    border-color: transparent;
}
/* ==================== ARTICLES LIES ==================== */

/* Reset du padding par defaut du ul post-template */
.articles-lies-query .wp-block-post-template {
    padding-left: 0;
    margin: 0;
    list-style: none;
}

/* Responsive grille */
@media (max-width: 1000px) {
    .articles-lies-query .wp-block-post-template.is-layout-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 600px) {
    .articles-lies-query .wp-block-post-template.is-layout-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ==================== CARD ARTICLE SIMPLE ==================== */
/* Variante simplifiee sans extrait */

.card-article--simple .wp-block-post-title {
    margin-bottom: 12px;
}
/* ==================== PAGE 404 ==================== */

/* Liens utiles */
.page-404__links a {
    color: var(--wp--preset--color--text-muted);
    text-decoration: none;
    transition: color 150ms ease;
}

.page-404__links a:hover {
    color: var(--wp--preset--color--primary);
}

/* Responsive */
@media (max-width: 600px) {
    .page-404 h1 {
        font-size: 100px !important;
        letter-spacing: -2px !important;
    }

    .page-404 h2 {
        font-size: 28px !important;
    }

    .page-404 .wp-block-buttons {
        flex-direction: column;
        width: 100%;
    }

    .page-404 .wp-block-button {
        width: 100%;
    }

    .page-404 .wp-block-button__link {
        width: 100%;
        justify-content: center;
    }
}
