/**
 * Calendanse — polish UX/UI page Fonctionnalités gratuites (#2322) uniquement.
 * Ne pas charger hors body.page-id-2322 / .cd-func-landing-page.
 * Aucun impact sur #47, #2327, plugins, templates.
 */

body.page-id-2322 .cd-land-page,
body.cd-func-landing-page .cd-land-page {
	--cd-free-blue: #0b1f4d;
	--cd-free-blue-mid: #1e3a5f;
	--cd-free-radius: 10px;
	--cd-free-btn-h: 44px;
}

/* ========== Boutons unifiés (cartes + univers + notes + finale) ========== */
body.page-id-2322 .cd-land-page .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-product-universe__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-product-universe__btn--primary,
body.page-id-2322 .cd-land-page .cd-land-editorial-note .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-premium-box .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-section .cd-land-btn--primary .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: var(--cd-free-btn-h);
	padding: 0.55em 1.15em;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.2;
	border-radius: var(--cd-free-radius) !important;
	border: 1px solid var(--cd-free-blue) !important;
	background: var(--cd-free-blue) !important;
	background-image: none !important;
	color: #fff !important;
	text-decoration: none !important;
	box-shadow: none;
}

body.page-id-2322 .cd-land-page .cd-land-card__cta .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-product-universe__cta .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-product-universe__btn--secondary,
body.page-id-2322 .cd-land-page .cd-land-editorial-note .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-premium-box .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button.is-style-outline .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: var(--cd-free-btn-h);
	padding: 0.55em 1.15em;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.2;
	border-radius: var(--cd-free-radius) !important;
	border: 1px solid #cbd5e1 !important;
	background: #fff !important;
	background-image: none !important;
	color: var(--cd-free-blue) !important;
	text-decoration: none !important;
	box-shadow: none;
}

body.page-id-2322 .cd-land-page .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-land-product-universe__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-product-universe__btn--primary:hover,
body.page-id-2322 .cd-land-page .cd-land-editorial-note .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-land-premium-box .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-land-section .cd-land-btn--primary .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-land-card:hover .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: var(--cd-free-blue-mid) !important;
	border-color: var(--cd-free-blue-mid) !important;
	color: #fff !important;
}

body.page-id-2322 .cd-land-page .cd-land-card__cta .wp-block-button.is-style-outline .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-land-product-universe__cta .wp-block-button.is-style-outline .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-product-universe__btn--secondary:hover,
body.page-id-2322 .cd-land-page .cd-land-editorial-note .wp-block-button.is-style-outline .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-land-premium-box .wp-block-button.is-style-outline .wp-block-button__link:hover,
body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: #fff !important;
	color: var(--cd-free-blue) !important;
	border-color: var(--cd-free-blue) !important;
}

/* Cartes featured (fond navy) : inverser le couple pour le contraste */
body.page-id-2322 .cd-land-page .cd-land-card--featured .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-card--featured:hover .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: #fff !important;
	color: var(--cd-free-blue) !important;
	border-color: #fff !important;
}

body.page-id-2322 .cd-land-page .cd-land-card--featured .cd-land-card__cta .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-card--featured:hover .cd-land-card__cta .wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent !important;
	color: #fff !important;
	border-color: rgba(255, 255, 255, 0.55) !important;
}

/* CTA Premium : même gabarit, badge visuel plus marqué via bordure or douce */
body.page-id-2322 .cd-land-page .cd-land-card:has(a[href*="fonctionnalites-premium"]) .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 .cd-land-page .cd-land-premium-box .wp-block-button:not(.is-style-outline) .wp-block-button__link[href*="fonctionnalites-premium"],
body.page-id-2322 .cd-land-page .cd-land-premium-box .wp-block-button:not(.is-style-outline) .wp-block-button__link[href*="coach-danse-ia"] {
	border-color: #c4a574 !important;
}

body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button.is-style-outline .wp-block-button__link[href*="fonctionnalites-premium"] {
	border-color: #c4a574 !important;
	color: var(--cd-free-blue) !important;
}

/* ========== Cartes : hauteur + bouton en bas ========== */
body.page-id-2322 .cd-land-page .cd-land-grid.wp-block-group,
body.page-id-2322 .cd-land-page .cd-land-grid,
body.page-id-2322 .cd-land-page .cd-land-music-secondary {
	display: grid !important;
	align-items: stretch;
	gap: 1.1rem;
}

body.page-id-2322 .cd-land-page .cd-land-music-secondary > .cd-land-card,
body.page-id-2322 .cd-land-page .cd-land-music-secondary > .wp-block-group {
	height: 100%;
}

body.page-id-2322 .cd-land-page .cd-land-card.wp-block-group,
body.page-id-2322 .cd-land-page .cd-land-card {
	display: flex !important;
	flex-direction: column;
	height: 100%;
	min-height: 100%;
	padding: 1.2rem 1.2rem 1.05rem;
}

body.page-id-2322 .cd-land-page .cd-land-card > *:last-child {
	margin-top: auto !important;
}

body.page-id-2322 .cd-land-page .cd-land-card__list {
	margin: 0 0 1rem !important;
	padding-left: 1.15rem;
	font-size: 0.88rem;
	line-height: 1.5;
	color: #475569;
	flex: 1 1 auto;
}

body.page-id-2322 .cd-land-page .cd-land-card__list li {
	margin: 0 0 0.35rem;
}

body.page-id-2322 .cd-land-page .cd-land-card__list li:last-child {
	margin-bottom: 0;
}

body.page-id-2322 .cd-land-page .cd-land-card__text {
	margin-bottom: 0.75rem !important;
}

body.page-id-2322 .cd-land-page .cd-land-card__cta.wp-block-buttons,
body.page-id-2322 .cd-land-page .cd-land-card__cta {
	display: flex !important;
	flex-direction: column;
	gap: 0.5rem;
	width: 100%;
	margin: auto 0 0 !important;
	padding-top: 0.35rem;
}

body.page-id-2322 .cd-land-page .cd-land-card__cta .wp-block-button,
body.page-id-2322 .cd-land-page .cd-land-card__cta .wp-block-button__link {
	width: 100%;
	margin: 0;
}

/* ========== Badges Gratuit / Premium ========== */
body.page-id-2322 .cd-land-page .cd-land-card__badge {
	background: #ecfdf5;
	color: #047857;
	border: 1px solid #a7f3d0;
}

body.page-id-2322 .cd-land-page .cd-land-card__badge--compte {
	background: #e0f2fe;
	color: #0369a1;
	border-color: #bae6fd;
}

body.page-id-2322 .cd-land-page .cd-land-card__badge--mixte {
	background: #f5f0e8;
	color: #92400e;
	border-color: #e8d5b5;
}

body.page-id-2322 .cd-land-page .cd-land-card__badge--aperçu,
body.page-id-2322 .cd-land-page .cd-land-card__badge--apercu {
	background: #fff7ed;
	color: #9a3412;
	border-color: #fed7aa;
}

body.page-id-2322 .cd-land-page .cd-land-card:has(.cd-land-card__badge--mixte) {
	border-color: #e8d5b5;
}

body.page-id-2322 .cd-land-page .cd-land-card:has(a[href*="fonctionnalites-premium"]) {
	box-shadow: 0 4px 18px rgba(196, 165, 116, 0.12);
}

/* ========== Univers Dancepedia / Motion Lab / Groove ========== */
body.page-id-2322 .cd-land-page .cd-land-section--help {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
}

body.page-id-2322 .cd-land-page .cd-land-section--library,
body.page-id-2322 .cd-land-page .cd-land-section--learn {
	background: #f4f7fb;
	border: 1px solid #dbe4ef;
}

body.page-id-2322 .cd-land-page .cd-land-section--culture {
	background: #f7f5fb;
	border: 1px solid #e4e0ef;
}

body.page-id-2322 .cd-land-page .cd-land-section--music {
	background: linear-gradient(180deg, #fff 0%, #f8f5f7 100%);
	border: 1px solid #eadfe6;
}

body.page-id-2322 .cd-land-page .cd-land-product-universe,
body.page-id-2322 .cd-land-page .cd-product-universe {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 0 0 1.5rem;
	padding: 0.15rem 0 0.35rem;
}

body.page-id-2322 .cd-land-page .cd-land-product-universe__visual,
body.page-id-2322 .cd-land-page .cd-product-universe__visual {
	display: block;
	width: 100%;
	margin: 0;
	min-height: 140px;
	aspect-ratio: 16 / 7;
	max-height: 220px;
	border-radius: 14px;
	overflow: hidden;
	background-color: var(--cd-free-blue);
	background-image: var(--cd-land-ml-banner, var(--cddp-dp-hero-bg, none));
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

body.page-id-2322 .cd-land-page .cd-land-product-universe__cta.wp-block-buttons,
body.page-id-2322 .cd-land-page .cd-product-universe__cta {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.65rem;
	margin: 0 !important;
}

body.page-id-2322 .cd-land-page .cd-product-universe__btn {
	min-width: 12rem;
}

body.page-id-2322 .cd-land-page .cd-land-editorial-note {
	margin-bottom: 1.35rem;
}

body.page-id-2322 .cd-land-page .cd-land-editorial-note .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin-top: 0.85rem;
}

/* ========== Fin de page : glossaire + CTA ========== */
body.page-id-2322 .cd-land-page .cd-land-section--finale {
	padding: clamp(2rem, 4vw, 2.75rem) clamp(1.1rem, 3vw, 1.75rem) clamp(2.25rem, 5vw, 3rem);
}

body.page-id-2322 .cd-land-page .cd-land-limits {
	margin-bottom: 1.75rem !important;
}

body.page-id-2322 .cd-land-page .cd-land-premium-box {
	margin-bottom: 2rem !important;
	padding: 1.65rem 1.45rem;
}

body.page-id-2322 .cd-land-page .cd-land-product-glossary {
	margin-top: 0.5rem;
	margin-bottom: 2rem !important;
	padding: 1.25rem 1.25rem 1.35rem;
}

body.page-id-2322 .cd-land-page .cd-land-finale-cta.wp-block-buttons,
body.page-id-2322 .cd-land-page .cd-land-finale-cta {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.9rem;
	margin-top: 0.25rem !important;
}

body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button,
body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button__link {
	min-width: 12.5rem;
}

/* ========== Responsive ========== */
@media (max-width: 600px) {
	body.page-id-2322 .cd-land-page .cd-land-product-universe__visual,
	body.page-id-2322 .cd-land-page .cd-product-universe__visual {
		min-height: 110px;
		max-height: 160px;
		aspect-ratio: 16 / 8;
	}

	body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button,
	body.page-id-2322 .cd-land-page .cd-land-finale-cta .wp-block-button__link,
	body.page-id-2322 .cd-land-page .cd-product-universe__btn {
		width: 100%;
		min-width: 0;
	}

	body.page-id-2322 .cd-land-page .cd-land-card:hover {
		transform: none;
	}
}

@media (max-width: 360px) {
	body.page-id-2322 .cd-land-page .cd-land-card {
		padding: 1rem 0.9rem 0.95rem;
	}
}

/* Héros : conserver le couple rose / ghost (hors système cartes) */
body.page-id-2322 .cd-land-hero__actions .cd-land-btn--primary .wp-block-button__link {
	background: linear-gradient(135deg, #e84a7f 0%, #c026d3 100%) !important;
	border: none !important;
	color: #fff !important;
	border-radius: 999px !important;
	min-height: 48px;
}

body.page-id-2322 .cd-land-hero__actions .cd-land-btn--ghost .wp-block-button__link {
	background: transparent !important;
	border: 2px solid rgba(255, 255, 255, 0.45) !important;
	color: #fff !important;
	border-radius: 999px !important;
	min-height: 48px;
}

/* Featured navy : primaire clair pour le contraste (même rayon / hauteur) */
body.page-id-2322 .cd-land-page .cd-land-card.cd-land-card--featured .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: #fff !important;
	color: var(--cd-free-blue) !important;
	border-color: #fff !important;
}

body.page-id-2322 .cd-land-page .cd-land-card.cd-land-card--featured .cd-land-card__cta .wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent !important;
	color: #fff !important;
	border-color: rgba(255, 255, 255, 0.55) !important;
}

body.page-id-2322 .cd-land-page .cd-land-music-secondary > .cd-land-card {
	display: flex !important;
	flex-direction: column;
	min-height: 100%;
}

/* Gagner contre calendanse-mobile-fix (#page .entry-content .wp-block-button) */
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-product-universe__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-product-universe__btn--primary,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-editorial-note .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-premium-box .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-finale-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-section .cd-land-btn--primary .wp-block-button__link {
	background: #0b1f4d !important;
	color: #fff !important;
	border: 1px solid #0b1f4d !important;
	border-radius: 10px !important;
	min-height: 44px;
}

body.page-id-2322 #page .entry-content .cd-land-page .cd-land-card__cta .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-product-universe__cta .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-product-universe__btn--secondary,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-editorial-note .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-premium-box .wp-block-button.is-style-outline .wp-block-button__link,
body.page-id-2322 #page .entry-content .cd-land-page .cd-land-finale-cta .wp-block-button.is-style-outline .wp-block-button__link {
	background: #fff !important;
	color: #0b1f4d !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 10px !important;
	min-height: 44px;
}

body.page-id-2322 #page .entry-content .cd-land-page .cd-land-card.cd-land-card--featured .cd-land-card__cta .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: #fff !important;
	color: #0b1f4d !important;
	border-color: #fff !important;
}

body.page-id-2322 #page .entry-content .cd-land-page .cd-land-card.cd-land-card--featured .cd-land-card__cta .wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent !important;
	color: #fff !important;
	border-color: rgba(255, 255, 255, 0.55) !important;
}

body.page-id-2322 #page .entry-content .cd-land-hero__actions .cd-land-btn--primary .wp-block-button__link {
	background: linear-gradient(135deg, #e84a7f 0%, #c026d3 100%) !important;
	border: none !important;
	color: #fff !important;
	border-radius: 999px !important;
	min-height: 48px;
}

body.page-id-2322 #page .entry-content .cd-land-hero__actions .cd-land-btn--ghost .wp-block-button__link {
	background: transparent !important;
	border: 2px solid rgba(255, 255, 255, 0.45) !important;
	color: #fff !important;
	border-radius: 999px !important;
	min-height: 48px;
}
