/* ============================================================
   WPMove Marketing Blocks — Child Theme
   Toutes les couleurs passent par les tokens --wp-* de wpmove-tokens.css.
   ============================================================ */

/* ---------- Auth pages: vertical breathing room ---------- */
.entry-content:has(.wpmove-wrap--auth) {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

/* ---------- Full-height layout (footer collé en bas sur courtes pages) ---------- */
.wp-site-blocks {
	display: flex;
	flex-direction: column;
	min-height: 100dvh;
}

.wp-site-blocks > main {
	flex: 1;
}

/* ---------- Header ---------- */
header.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
}

.wpmove-header {
	--wp--elements-link-color: var(--wp--preset--color--base);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--medium);
	transition: box-shadow 0.2s ease;
}

.wpmove-header.is-scrolled {
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
}

.wpmove-header__brand,
.wpmove-footer__brand-title {
	gap: 8px;
}

.wpmove-header .wp-block-site-logo img {
	border-radius: 10px;
}

.wpmove-header .wp-block-site-title a,
.wpmove-header .wp-block-navigation a,
.wpmove-header .wp-block-navigation .wp-block-navigation-item__content,
.wpmove-header .wp-block-navigation-submenu__toggle {
	color: #fff !important;
	text-decoration: none;
}

.wpmove-header .wp-block-site-title a {
	font-weight: 700;
}

.wpmove-header .wp-block-navigation__container {
	gap: var(--wp--preset--spacing--40);
}

/* Mobile menu toggle icon */
.wpmove-header .wp-block-navigation__responsive-container-open svg,
.wpmove-header .wp-block-navigation__responsive-container-close svg {
	stroke: #fff;
}

/* Mobile menu overlay — fond clair, liens sombres */
.wpmove-header .wp-block-navigation__responsive-container.is-menu-open {
	background-color: #fff !important;
}

.wpmove-header .wp-block-navigation__responsive-container.is-menu-open a,
.wpmove-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
.wpmove-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle {
	color: #0F172A !important;
}

.wpmove-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
	stroke: #0F172A;
}

/* Dark mode — overlay fond sombre, liens clairs */
:root[data-theme="dark"] .wpmove-header .wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp-bg, #0B0E14) !important;
}

:root[data-theme="dark"] .wpmove-header .wp-block-navigation__responsive-container.is-menu-open a,
:root[data-theme="dark"] .wpmove-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
:root[data-theme="dark"] .wpmove-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle {
	color: var(--wp-text, #E5E9F0) !important;
}

:root[data-theme="dark"] .wpmove-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
	stroke: var(--wp-text, #E5E9F0);
}

/* ---------- Footer ---------- */
.wpmove-footer {
	margin-top: 0;
}

.wpmove-footer__cols {
	padding-top: var(--wp--preset--spacing--70);
	padding-bottom: var(--wp--preset--spacing--60);
	gap: var(--wp--preset--spacing--60);
}

.wpmove-footer__brand {
	gap: var(--wp--preset--spacing--20);
	max-width: 280px;
}

.wpmove-footer__brand .wp-block-site-logo img {
	border-radius: 8px;
}

.wpmove-footer__brand .wp-block-site-title a {
	color: var(--wp--preset--color--base) !important;
	font-weight: 700;
	text-decoration: none;
}

.wpmove-footer__tagline {
	color: var(--wp--preset--color--main-accent);
}

.wpmove-footer__nav-col {
	gap: var(--wp--preset--spacing--20);
}

.wpmove-footer__nav-title {
	font-weight: 600;
	font-size: 13px;
	color: var(--wp--preset--color--base);
	margin: 0;
}

.wpmove-footer__nav-links {
	gap: var(--wp--preset--spacing--10);
	font-size: var(--wp--preset--font-size--small);
}

.wpmove-footer__nav-links p {
	margin-block-start: 0;
	margin-block-end: 0.4em;
}

.wpmove-footer__nav-links a {
	color: var(--wp--preset--color--main-accent);
	text-decoration: none;
}

.wpmove-footer__nav-links a:hover {
	color: var(--wp--preset--color--base);
}

.wpmove-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	padding-top: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--40);
	gap: var(--wp--preset--spacing--small);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--main-accent);
}

/* ---------- Prose pages (Politique de confidentialité, Contact…) ---------- */
.wpmove-prose {
	max-width: 680px;
	margin-left: auto;
	margin-right: auto;
	padding: var(--wp--preset--spacing--xx-large) var(--wp--preset--spacing--medium);
}

/* ---------- Shared section padding ---------- */
.wpmove-hero,
.wpmove-section,
.wpmove-cta {
	padding-top: var(--wp--preset--spacing--xx-large);
	padding-bottom: var(--wp--preset--spacing--xx-large);
	padding-left: var(--wp--preset--spacing--medium);
	padding-right: var(--wp--preset--spacing--medium);
}

.wpmove-section--bordered {
	border-top: 1px solid var(--wp-border);
}

/* ---------- Hero ---------- */
.wpmove-hero {
	text-align: center;
}

.wpmove-hero .wp-block-heading {
	font-size: clamp(2.5rem, 6vw, 4rem);
	line-height: 1.15;
}

.wpmove-hero__subtitle {
	font-size: var(--wp--preset--font-size--large);
	color: #c8c8d0; /* section toujours sombre : teinte figée intentionnelle */
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
	margin-top: var(--wp--preset--spacing--medium);
}

.wpmove-hero__buttons {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--small);
	margin-top: var(--wp--preset--spacing--medium);
}

.wpmove-hero__buttons .wp-block-button__link,
.wpmove-cta__buttons .wp-block-button__link {
	padding: 14px 32px;
	border-radius: var(--wp-radius-sm);
}

/* Boutons primaires Gutenberg — indigo au lieu du noir Ollie */
/* Spécificité (0,2,1) pour passer au-dessus du global stylesheet d'Ollie */
body .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background-color: var(--wp-accent, #4F46E5);
	color: #fff;
}

body .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
	background-color: var(--wp-accent-hover, #4338CA);
	color: #fff;
}

/* Bouton outline sur fond lavande (hero light) — indigo pour être visible */
.has-main-accent-background-color .wp-block-button.is-style-outline .wp-block-button__link,
.wpmove-hero .is-style-outline .wp-block-button__link {
	border: 2px solid var(--wp-accent);
	color: var(--wp-accent);
	background: transparent;
}

.has-main-accent-background-color .wp-block-button.is-style-outline .wp-block-button__link:hover,
.wpmove-hero .is-style-outline .wp-block-button__link:hover {
	background: rgba(79, 70, 229, 0.08);
}

/* Dark mode : hero devient sombre, outline en blanc */
:root[data-theme="dark"] .has-main-accent-background-color .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: rgba(255, 255, 255, 0.5);
	color: var(--wp-text);
}

:root[data-theme="dark"] .has-main-accent-background-color .wp-block-button.is-style-outline .wp-block-button__link:hover {
	border-color: rgba(255, 255, 255, 0.9);
	background: transparent;
}

/* Nav — tous les liens sans soulignement */
.wpmove-header .wp-block-navigation a {
	text-decoration: none !important;
}

/* Nav — lien actif */
.wpmove-header .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content {
	border-bottom: 2px solid var(--wp-accent);
	padding-bottom: 2px;
}

/* ---------- Section prose ---------- */
.wpmove-section > .wp-block-paragraph {
	max-width: 680px;
	margin-left: auto;
	margin-right: auto;
}

/* ---------- Feature cards ---------- */

/* Cartes "étapes" (wp-block-group inline-styled dans colonnes stretch) */
.wp-block-columns.are-vertically-aligned-stretch > .wp-block-column > .wp-block-group {
	height: 100%;
}

/* Colonnes contenant une card : hauteur uniforme */
.wp-block-columns:has(.wpmove-card__icon) {
	align-items: stretch;
}

.wp-block-column:has(> .wpmove-card__icon) {
	display: flex;
	flex-direction: column;
}

.wpmove-card,
.wp-block-column:has(> .wpmove-card__icon) {
	border: 1px solid var(--wp-border);
	border-radius: var(--wp-radius);
	padding: var(--wp--preset--spacing--medium);
	background: var(--wp-surface);
	transition: border-color 0.15s ease;
	text-align: center;
}

.wp-block-column:has(> .wpmove-card__icon) .wpmove-card__icon {
	margin-left: auto;
	margin-right: auto;
}

.wp-block-column:has(> .wpmove-card__icon) .wp-block-heading {
	text-align: center;
}

.wpmove-card:hover,
.wp-block-column:has(> .wpmove-card__icon):hover {
	border-color: var(--wp-border-strong);
}

.wpmove-card__icon {
	font-size: 1.5rem;
	line-height: 1;
	margin-bottom: 0;
}

.wpmove-card__icon svg {
	width: 2rem;
	height: 2rem;
	display: block;
	color: var(--wp-accent);
}

/* ---------- Steps (How it works) ---------- */
.wpmove-step__number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	background: var(--wp-accent-subtle);
	color: var(--wp-accent);
	border-radius: 50%;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1;
	margin: 0 auto 0.75rem;
}

/* ---------- Pricing (landing teaser) ---------- */
.wpmove-pricing-cols {
	align-items: stretch;
}

.wpmove-pricing-card {
	border: 1px solid var(--wp-border);
	border-radius: var(--wp-radius);
	padding: var(--wp--preset--spacing--large);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--medium);
	background: var(--wp-surface);
	transition: border-color 0.15s ease;
}

.wpmove-pricing-card.is-featured {
	border-color: var(--wp-accent);
	box-shadow: 0 0 0 1px var(--wp-accent);
}

.wpmove-pricing-card__price {
	font-size: 2.25rem;
	font-weight: 700;
	margin: 0;
}

/* ---------- Badges (Soon / Beta) ---------- */
.wpmove-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2em 0.6em;
	border-radius: 999px;
	font-size: 0.7rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	vertical-align: middle;
	position: relative;
	top: -1px;
}

.wpmove-badge--soon {
	background: var(--wp-accent);
	color: #fff;
}

.wpmove-badge--beta {
	background: var(--wp-accent-subtle);
	color: var(--wp-accent);
}

/* ---------- CTA ---------- */
.wpmove-cta {
	text-align: center;
}

.wpmove-cta__subtitle {
	color: #c8c8d0; /* section toujours sombre : teinte figée intentionnelle */
	margin-left: auto;
	margin-right: auto;
	max-width: 620px;
	margin-top: var(--wp--preset--spacing--medium);
}

.wpmove-cta__buttons {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--small);
	margin-top: var(--wp--preset--spacing--large);
}

/* ---------- Liens en dark mode (contenu prose) ---------- */
/* Exclure les boutons Gutenberg (.wp-element-button) pour ne pas écraser leur couleur */
:root[data-theme="dark"] .entry-content a:not(.wp-element-button):not(.wp-block-button__link):not(.wpmove-btn),
:root[data-theme="dark"] .wp-block-paragraph a:not(.wp-element-button):not(.wp-block-button__link):not(.wpmove-btn),
:root[data-theme="dark"] .wp-block-list a:not(.wp-element-button):not(.wp-block-button__link):not(.wpmove-btn) {
	color: var(--wp-accent);
}

:root[data-theme="dark"] .entry-content a:not(.wp-element-button):not(.wp-block-button__link):not(.wpmove-btn):hover,
:root[data-theme="dark"] .wp-block-paragraph a:not(.wp-element-button):not(.wp-block-button__link):not(.wpmove-btn):hover,
:root[data-theme="dark"] .wp-block-list a:not(.wp-element-button):not(.wp-block-button__link):not(.wpmove-btn):hover {
	color: var(--wp-accent-hover);
}

/* ---------- Dark mode overrides ---------- */
:root[data-theme="dark"] .has-main-accent-background-color {
	background-color: var(--wp-bg-subtle, #11151D) !important;
	color: var(--wp-text, #E5E9F0);
}

/* Outline button on dark hero in dark mode — stays visible */
:root[data-theme="dark"] .has-main-accent-background-color .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: rgba(255, 255, 255, 0.35);
	color: var(--wp-text, #E5E9F0);
}

/* Separator — invisible en dark sinon (ligne sombre sur fond sombre) */
:root[data-theme="dark"] .wp-block-separator {
	border-color: var(--wp-border, #252B38);
	color: var(--wp-border, #252B38);
}
