/* ==========================================================================
   Matchreel — stili del tema
   Mobile-first. Breakpoint: 600 / 782 / 1024 / 1280.
   ========================================================================== */

:root {
	/* Colori del logo MatchReel */
	--mr-orange: #E94B19;
	--mr-magenta: #D9009E;
	--mr-navy: #04012B;
	/* Varianti per testo e pulsanti con contrasto AA su bianco */
	--mr-primary: #C4008E;
	--mr-secondary: #D63A16;
	--mr-mid: #E32D4D;
	--mr-grad: linear-gradient(60deg, #E94B19 0%, #E32D4D 45%, #D9009E 100%);
	--mr-grad-btn: linear-gradient(60deg, #D63A16 0%, #CF1F55 45%, #C4008E 100%);
	--mr-grad-light: linear-gradient(60deg, #FF8A5C 0%, #FF6FD0 100%);
	--mr-grad-soft: linear-gradient(135deg, rgba(233, 75, 25, .08) 0%, rgba(217, 0, 158, .08) 100%);
	--mr-dark: #04012B;
	--mr-dark-2: #120B45;
	--mr-text: #12102B;
	--mr-muted: #6B6882;
	--mr-border: #ECE7EE;
	--mr-surface: #FBF8FB;
	--mr-white: #FFFFFF;

	--mr-radius-sm: 12px;
	--mr-radius: 20px;
	--mr-radius-lg: 28px;
	--mr-shadow-sm: 0 1px 2px rgba(4, 1, 43, .05);
	--mr-shadow: 0 1px 2px rgba(4, 1, 43, .04), 0 16px 40px -16px rgba(4, 1, 43, .16);
	--mr-shadow-brand: 0 10px 30px -10px rgba(217, 0, 158, .5);

	--mr-wrap: 1200px;
	--mr-wrap-wide: 1320px;
	--mr-gutter: clamp(1rem, 4vw, 2rem);
	--mr-header-h: 68px;
	--mr-ease: cubic-bezier(.2, .7, .2, 1);
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
	margin: 0;
	background: var(--mr-white);
	color: var(--mr-text);
	font-family: Inter, Arial, Helvetica, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

img, svg, video { max-width: 100%; height: auto; }

a { text-underline-offset: .18em; text-decoration-thickness: 1px; }

:focus-visible {
	outline: 3px solid var(--mr-primary);
	outline-offset: 3px;
	border-radius: 6px;
}

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0;
	position: absolute !important; width: 1px; word-wrap: normal !important;
}

.mr-skip-link {
	position: absolute; left: 1rem; top: -100px; z-index: 1000;
	background: var(--mr-dark); color: #fff; padding: .75rem 1rem; border-radius: 10px;
	font-weight: 600; text-decoration: none;
}
.mr-skip-link:focus { top: 1rem; color: #fff; }

.mr-main:focus { outline: none; }

.mr-wrap {
	width: 100%;
	max-width: calc(var(--mr-wrap) + 2 * var(--mr-gutter));
	margin-inline: auto;
	padding-inline: var(--mr-gutter);
}
.mr-wrap--wide { max-width: calc(var(--mr-wrap-wide) + 2 * var(--mr-gutter)); }
.mr-wrap--narrow { max-width: calc(760px + 2 * var(--mr-gutter)); }

.mr-gradient-text {
	background: var(--mr-grad);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}

/* Testi segnaposto da completare */
.mr-placeholder { color: var(--mr-muted); font-style: italic; }
.logged-in .mr-placeholder,
.editor-styles-wrapper .mr-placeholder {
	background: #FFF7D6;
	color: #7A5B00;
	font-style: normal;
	outline: 1px dashed #E3B400;
	border-radius: 6px;
	padding: .2em .45em;
}
.mr-placeholder a { color: inherit; }

/* ---------- Pulsanti ---------- */
.mr-btn,
.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .55rem;
	min-height: 48px;
	padding: .9rem 1.5rem;
	border: 0;
	border-radius: 999px;
	background: var(--mr-grad-btn);
	color: #fff;
	font: 600 1rem/1.2 Inter, Arial, Helvetica, sans-serif;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: var(--mr-shadow-brand);
	transition: transform .2s var(--mr-ease), box-shadow .2s var(--mr-ease), filter .2s var(--mr-ease), background-color .2s;
}
.mr-btn:hover,
.wp-block-button__link:hover {
	color: #fff;
	transform: translateY(-1px);
	filter: saturate(1.15) brightness(1.05);
	box-shadow: 0 14px 34px -10px rgba(217, 0, 158, .6);
}
.mr-btn:active, .wp-block-button__link:active { transform: translateY(0); }

.mr-btn .mr-icon { width: 18px; height: 18px; }
.mr-btn--sm { min-height: 40px; padding: .6rem 1.1rem; font-size: .9375rem; box-shadow: none; }
.mr-btn--lg { min-height: 54px; padding: 1rem 1.75rem; font-size: 1.0625rem; }
.mr-btn--block { width: 100%; }

.mr-btn--ghost {
	background: transparent;
	color: var(--mr-text);
	box-shadow: inset 0 0 0 1.5px var(--mr-border);
}
.mr-btn--ghost:hover { color: var(--mr-primary); box-shadow: inset 0 0 0 1.5px var(--mr-primary); filter: none; }

.mr-btn--glass {
	background: rgba(255, 255, 255, .12);
	color: #fff;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
.mr-btn--glass:hover { background: rgba(255, 255, 255, .2); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .5); filter: none; }

/* Stili dei blocchi pulsante */
.wp-block-button.is-style-mr-outline .wp-block-button__link {
	background: #fff;
	color: var(--mr-text);
	box-shadow: inset 0 0 0 1.5px var(--mr-border);
}
.wp-block-button.is-style-mr-outline .wp-block-button__link:hover {
	color: var(--mr-primary);
	box-shadow: inset 0 0 0 1.5px var(--mr-primary);
	filter: none;
}
.wp-block-button.is-style-mr-white .wp-block-button__link {
	background: #fff;
	color: var(--mr-dark);
	box-shadow: 0 10px 30px -12px rgba(0, 0, 0, .45);
}
.wp-block-button.is-style-mr-white .wp-block-button__link:hover { color: var(--mr-primary); filter: none; }
.wp-block-button.is-style-mr-link .wp-block-button__link {
	background: none;
	box-shadow: none;
	min-height: 0;
	padding: 0;
	color: var(--mr-primary);
	font-weight: 600;
}
.wp-block-button.is-style-mr-link .wp-block-button__link::after {
	content: "→";
	transition: transform .2s var(--mr-ease);
}
.wp-block-button.is-style-mr-link .wp-block-button__link:hover { color: var(--mr-secondary); transform: none; filter: none; }
.wp-block-button.is-style-mr-link .wp-block-button__link:hover::after { transform: translateX(4px); }

.wp-block-buttons.mr-actions { gap: .75rem; margin-top: 2rem; }
.mr-actions--center,
.wp-block-buttons.mr-actions--center { justify-content: center; }

@media (max-width: 599px) {
	.wp-block-buttons.mr-actions > .wp-block-button { flex: 1 1 100%; }
	.wp-block-buttons.mr-actions .wp-block-button__link { width: 100%; }
}

/* ---------- Barra superiore ---------- */
.mr-topbar {
	background: var(--mr-dark);
	color: rgba(255, 255, 255, .86);
	font-size: .8125rem;
	position: relative;
}
.mr-topbar::after {
	content: ""; position: absolute; inset: auto 0 0 0; height: 2px; background: var(--mr-grad);
}
.mr-topbar__inner { padding-block: .55rem; }
.mr-topbar__text {
	margin: 0;
	display: flex; flex-wrap: wrap; justify-content: center; gap: .25rem .75rem;
	text-align: center;
}
.mr-topbar__link { color: #fff; font-weight: 600; text-decoration: none; white-space: nowrap; }
.mr-topbar__link:hover { color: #FF9ED9; }

/* ---------- Header ---------- */
.mr-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(255, 255, 255, .86);
	-webkit-backdrop-filter: saturate(180%) blur(14px);
	backdrop-filter: saturate(180%) blur(14px);
	border-bottom: 1px solid transparent;
	transition: border-color .2s, box-shadow .2s;
}
.admin-bar .mr-header { top: 46px; }
@media (min-width: 783px) { .admin-bar .mr-header { top: 32px; } }
@media screen and (max-width: 600px) { .admin-bar .mr-header { top: 0; } }
.mr-header.is-scrolled { border-color: var(--mr-border); box-shadow: 0 6px 24px -18px rgba(4, 1, 43, .35); }

.mr-header__inner {
	display: flex;
	align-items: center;
	gap: 1rem;
	min-height: var(--mr-header-h);
}
.mr-header__brand { flex: 0 0 auto; margin-right: auto; }

.mr-logo { display: inline-flex; align-items: center; text-decoration: none; color: var(--mr-text); }
.mr-logo__img { display: block; height: 32px; width: auto; max-width: none; }
@media (min-width: 1024px) { .mr-logo__img { height: 42px; } }
.mr-logo__placeholder {
	display: inline-flex; align-items: center; gap: .55rem;
	font-weight: 800; font-size: 1.3rem; letter-spacing: -.03em;
}
.mr-logo__dot {
	width: 26px; height: 26px; border-radius: 8px; background: var(--mr-grad);
	position: relative; flex: none;
}
.mr-logo__dot::after {
	content: ""; position: absolute; left: 10px; top: 7px;
	border-left: 9px solid #fff; border-top: 6px solid transparent; border-bottom: 6px solid transparent;
}
.mr-logo--white .mr-logo__placeholder,
.mr-logo--default-on-dark .mr-logo__placeholder { color: #fff; }
.mr-logo--default-on-dark .mr-logo__img { filter: brightness(0) invert(1); }

.mr-header__actions { display: flex; align-items: center; gap: .5rem; }
.mr-header__login {
	display: none;
	align-items: center; gap: .4rem;
	color: var(--mr-text); font-weight: 600; font-size: .9375rem;
	text-decoration: none; padding: .55rem .8rem; border-radius: 999px;
}
.mr-header__login .mr-icon { width: 18px; height: 18px; }
.mr-header__login:hover { color: var(--mr-primary); background: var(--mr-surface); }

@media (max-width: 400px) {
	.mr-header__inner { gap: .5rem; }
	.mr-header__cta { padding-inline: .8rem; font-size: .875rem; }
	.mr-logo__img { height: 27px; }
}

.mr-burger {
	display: inline-grid; place-items: center;
	width: 44px; height: 44px; padding: 0;
	border: 1px solid var(--mr-border); border-radius: 12px;
	background: #fff; color: var(--mr-text); cursor: pointer;
}
.mr-burger .mr-icon { width: 22px; height: 22px; display: block; }
.mr-burger__close { display: none; }
.mr-burger[aria-expanded="true"] .mr-burger__open { display: none; }
.mr-burger[aria-expanded="true"] .mr-burger__close { display: block; }

/* Navigazione: mobile = pannello a comparsa */
.mr-nav {
	position: fixed;
	inset: var(--mr-nav-top, 68px) 0 0 0;
	z-index: 99;
	background: #fff;
	padding: 1.25rem var(--mr-gutter) 2rem;
	overflow-y: auto;
	display: flex; flex-direction: column; gap: 1.5rem;
	opacity: 0; visibility: hidden; transform: translateY(-8px);
	transition: opacity .2s var(--mr-ease), transform .2s var(--mr-ease), visibility 0s .2s;
}
.mr-nav.is-open {
	opacity: 1; visibility: visible; transform: none;
	transition: opacity .2s var(--mr-ease), transform .2s var(--mr-ease);
}
.mr-nav__list { list-style: none; margin: 0; padding: 0; }
.mr-nav__list li { border-bottom: 1px solid var(--mr-border); }
.mr-nav__list a {
	display: block; padding: 1rem .25rem;
	color: var(--mr-text); font-size: 1.25rem; font-weight: 700; letter-spacing: -.02em;
	text-decoration: none;
}
.mr-nav__list .current-menu-item > a,
.mr-nav__list a[aria-current="page"] { color: var(--mr-primary); }
.mr-nav__mobile-actions { display: grid; gap: .75rem; }
.mr-nav__note { margin: 0; text-align: center; color: var(--mr-muted); font-size: .875rem; }
body.mr-nav-open { overflow: hidden; }

@media (min-width: 1024px) {
	.mr-burger, .mr-nav__mobile-actions { display: none; }
	.mr-header__login { display: inline-flex; }
	.mr-header__brand { margin-right: 0; }
	.mr-nav {
		position: static; inset: auto; padding: 0; background: none; overflow: visible;
		opacity: 1; visibility: visible; transform: none; transition: none;
		flex-direction: row; margin-inline: auto;
	}
	.mr-nav__list { display: flex; gap: .25rem; }
	.mr-nav__list li { border: 0; }
	.mr-nav__list a {
		position: relative;
		padding: .55rem .9rem; border-radius: 999px;
		font-size: .9375rem; font-weight: 500; letter-spacing: 0; color: #3B3852;
	}
	.mr-nav__list a:hover { color: var(--mr-text); background: var(--mr-surface); }
	.mr-nav__list .current-menu-item > a,
	.mr-nav__list a[aria-current="page"] { color: var(--mr-text); font-weight: 600; }
	.mr-nav__list .current-menu-item > a::after,
	.mr-nav__list a[aria-current="page"]::after {
		content: ""; position: absolute; left: 50%; bottom: 2px; width: 18px; height: 3px; margin-left: -9px;
		border-radius: 3px; background: var(--mr-grad);
	}
	:root { --mr-header-h: 76px; }
}

/* ---------- Hero home ---------- */
.mr-hero { padding-block: clamp(.75rem, 2vw, 1.5rem) clamp(2.5rem, 6vw, 4.5rem); }

.mr-hero__frame {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border-radius: var(--mr-radius-lg);
	background: var(--mr-dark);
	color: #fff;
	min-height: min(88svh, 720px);
	display: flex;
	align-items: flex-end;
}
@media (min-width: 1100px) {
	.mr-hero__frame { aspect-ratio: 16 / 9; min-height: 0; max-height: calc(100svh - 140px); min-height: 560px; align-items: center; }
}

.mr-hero__video {
	position: absolute; inset: 0; z-index: -2;
	width: 100%; height: 100%; object-fit: cover;
}

.mr-hero__scrim {
	position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background:
		linear-gradient(180deg, rgba(4, 1, 43, .1) 0%, rgba(4, 1, 43, .55) 45%, rgba(4, 1, 43, .92) 100%);
}
@media (min-width: 1100px) {
	.mr-hero--left .mr-hero__scrim {
		background: linear-gradient(90deg, rgba(4, 1, 43, .92) 0%, rgba(4, 1, 43, .7) 38%, rgba(4, 1, 43, .1) 72%);
	}
	.mr-hero--center .mr-hero__scrim { background: radial-gradient(ellipse at center, rgba(4, 1, 43, .75) 0%, rgba(4, 1, 43, .45) 60%, rgba(4, 1, 43, .25) 100%); }
}

/* Variante senza video: sfondo brand + mockup interfaccia */
.mr-hero--mockup .mr-hero__frame {
	background:
		radial-gradient(60% 70% at 85% 20%, rgba(217, 0, 158, .45) 0%, rgba(217, 0, 158, 0) 60%),
		radial-gradient(55% 65% at 65% 95%, rgba(233, 75, 25, .5) 0%, rgba(233, 75, 25, 0) 60%),
		var(--mr-dark);
}
.mr-hero--mockup .mr-hero__frame::before {
	content: ""; position: absolute; inset: 0; z-index: -2; opacity: .35;
	background-image: linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px);
	background-size: 44px 44px;
	-webkit-mask-image: radial-gradient(ellipse at 70% 50%, #000 0%, transparent 70%);
	mask-image: radial-gradient(ellipse at 70% 50%, #000 0%, transparent 70%);
}
.mr-hero--mockup .mr-hero__scrim { display: none; }

.mr-hero__mockup { display: none; }
@media (min-width: 1100px) {
	.mr-hero__mockup {
		display: block; position: absolute; z-index: -1;
		right: 5%; top: 50%; transform: translateY(-50%);
		width: 38%; aspect-ratio: 1 / 1;
	}
}
.mr-hcard {
	position: absolute;
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .16);
	-webkit-backdrop-filter: blur(16px);
	backdrop-filter: blur(16px);
	border-radius: 22px;
	padding: 12px;
	box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .6);
}
.mr-hcard--a { left: 6%; top: 4%; width: 58%; animation: mr-float 7s ease-in-out infinite; }
.mr-hcard--b { right: -4%; top: 46%; width: 46%; animation: mr-float 8s ease-in-out -2s infinite; }
.mr-hcard--net { left: -6%; bottom: 0; padding: 14px 16px; display: grid; gap: 10px; animation: mr-float 9s ease-in-out -4s infinite; }
.mr-hcard__screen {
	position: relative; aspect-ratio: 9 / 11; border-radius: 14px; overflow: hidden;
	background:
		radial-gradient(40% 32% at 50% 40%, rgba(255, 255, 255, .55) 0%, rgba(255, 255, 255, 0) 70%),
		linear-gradient(160deg, #F0632A 0%, #E8306A 55%, #E0129F 100%);
}
.mr-hcard--b .mr-hcard__screen { aspect-ratio: 4 / 3; background: radial-gradient(40% 40% at 50% 45%, rgba(255, 255, 255, .5) 0%, rgba(255, 255, 255, 0) 70%), linear-gradient(200deg, #1A0E4A 0%, #E94B19 100%); }
.mr-hcard__screen::after { /* silhouette */
	content: ""; position: absolute; left: 50%; bottom: 0; width: 56%; height: 58%; transform: translateX(-50%);
	background:
		radial-gradient(circle at 50% 26%, rgba(255, 255, 255, .85) 0 18%, transparent 19%),
		radial-gradient(ellipse at 50% 100%, rgba(255, 255, 255, .75) 0 48%, transparent 49%);
	opacity: .55;
}
.mr-hcard__play, .mr-mock-play {
	position: absolute; left: 50%; top: 50%; z-index: 1;
	width: 46px; height: 46px; margin: -23px 0 0 -23px; border-radius: 50%;
	background: rgba(255, 255, 255, .95);
	box-shadow: 0 10px 30px -8px rgba(0, 0, 0, .45);
}
.mr-hcard__play::after, .mr-mock-play::after {
	content: ""; position: absolute; left: 18px; top: 14px;
	border-left: 14px solid var(--mr-mid); border-top: 9px solid transparent; border-bottom: 9px solid transparent;
}
.mr-hcard__time {
	position: absolute; left: 10px; bottom: 10px; z-index: 1;
	font-size: .75rem; font-weight: 600; padding: 2px 8px; border-radius: 999px; background: rgba(4, 1, 43, .6);
}
.mr-hcard__meta { display: flex; align-items: center; gap: 10px; padding: 12px 4px 4px; }
.mr-hcard__avatar { width: 30px; height: 30px; border-radius: 50%; background: var(--mr-grad); flex: none; }
.mr-hcard__lines { display: grid; gap: 6px; flex: 1; }
.mr-hcard__lines i { display: block; height: 7px; border-radius: 4px; background: rgba(255, 255, 255, .3); }
.mr-hcard__lines i + i { width: 60%; background: rgba(255, 255, 255, .16); }
.mr-hcard__chip {
	position: absolute; left: -14px; top: 18px;
	padding: 6px 12px; border-radius: 999px; font-size: .75rem; font-weight: 600;
	background: #fff; color: var(--mr-dark); box-shadow: 0 10px 30px -10px rgba(0, 0, 0, .5);
}
.mr-hcard__label { font-size: .8125rem; font-weight: 600; color: rgba(255, 255, 255, .9); }
.mr-hcard__avatars { display: flex; }
.mr-hcard__avatars i, .mr-hcard__avatars b {
	width: 34px; height: 34px; border-radius: 50%; border: 2px solid var(--mr-dark); margin-left: -8px;
	background: linear-gradient(135deg, #F27A4A, #E94B19);
}
.mr-hcard__avatars i:first-child { margin-left: 0; }
.mr-hcard__avatars i:nth-child(2) { background: linear-gradient(135deg, #EB4DBE, #D9009E); }
.mr-hcard__avatars i:nth-child(3) { background: linear-gradient(135deg, #EE5A7E, #E32D4D); }
.mr-hcard__avatars i:nth-child(4) { background: linear-gradient(135deg, #F59A6E, #F0632A); }
.mr-hcard__avatars b { display: grid; place-items: center; background: #fff; color: var(--mr-dark); font-size: 1rem; }

@keyframes mr-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }

.mr-hero__content {
	position: relative;
	width: 100%;
	padding: clamp(1.5rem, 5vw, 4.5rem);
	padding-top: clamp(6rem, 22vh, 10rem);
}
@media (min-width: 1100px) {
	.mr-hero__content { padding-top: clamp(1.5rem, 5vw, 4.5rem); max-width: 720px; }
	.mr-hero--center .mr-hero__content { max-width: 860px; margin-inline: auto; text-align: center; }
	.mr-hero--center .mr-hero__actions { justify-content: center; }
	.mr-hero--mockup .mr-hero__content { max-width: 640px; }
}

.mr-hero__title {
	margin: .9rem 0 0;
	color: #fff;
	font-size: clamp(2.6rem, 7.5vw, 5.25rem);
	font-weight: 800;
	line-height: 1.02;
	letter-spacing: -.045em;
}
.mr-hero__title .mr-gradient-text {
	background: var(--mr-grad-light);
	-webkit-background-clip: text; background-clip: text; color: transparent;
}
.mr-hero__subtitle {
	margin: 1.25rem 0 0;
	font-size: clamp(1.125rem, 2.1vw, 1.375rem);
	font-weight: 600;
	line-height: 1.4;
	color: #fff;
	max-width: 36ch;
}
.mr-hero--center .mr-hero__subtitle { margin-inline: auto; }
.mr-hero__text { margin: .9rem 0 0; color: rgba(255, 255, 255, .78); max-width: 52ch; line-height: 1.6; }
.mr-hero--center .mr-hero__text { margin-inline: auto; }
.mr-hero__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
@media (max-width: 599px) {
	.mr-hero__actions .mr-btn { width: 100%; }
}
.mr-hero__micro {
	margin: 1rem 0 0; font-size: .875rem; color: rgba(255, 255, 255, .72);
	display: inline-flex; align-items: center; gap: .5rem;
}
.mr-hero__micro::before {
	content: ""; width: 8px; height: 8px; border-radius: 50%; background: #3DDC97;
	box-shadow: 0 0 0 4px rgba(61, 220, 151, .2);
}

.mr-hero__toggle {
	position: absolute; right: 1rem; bottom: 1rem; z-index: 2;
	width: 44px; height: 44px; border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, .35); background: rgba(4, 1, 43, .45);
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
	cursor: pointer; display: grid; place-items: center;
}
.mr-hero__toggle-icon { width: 12px; height: 14px; border-left: 4px solid #fff; border-right: 4px solid #fff; }
.mr-hero__toggle[aria-pressed="true"] .mr-hero__toggle-icon {
	width: 0; height: 0; border-right: 0; margin-left: 4px;
	border-left: 13px solid #fff; border-top: 8px solid transparent; border-bottom: 8px solid transparent;
}
@media (max-width: 1099px) {
	.mr-hero__toggle { top: 1rem; bottom: auto; }
}

/* Etichetta */
.mr-eyebrow,
p.is-style-mr-eyebrow {
	display: inline-flex; align-items: center; gap: .5rem;
	margin: 0;
	padding: .35rem .8rem .35rem .65rem;
	border-radius: 999px;
	background: var(--mr-grad-soft);
	box-shadow: inset 0 0 0 1px rgba(217, 0, 158, .18);
	color: var(--mr-primary);
	font-size: .8125rem; font-weight: 600; letter-spacing: .01em;
	line-height: 1.3;
}
.mr-eyebrow::before,
p.is-style-mr-eyebrow::before {
	content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--mr-grad); flex: none;
}
.mr-eyebrow--dark,
.is-style-mr-dark p.is-style-mr-eyebrow,
.is-style-mr-gradient p.is-style-mr-eyebrow {
	background: rgba(255, 255, 255, .1);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .2);
	color: #fff;
}

/* ---------- Contenuto a blocchi ---------- */
.mr-entry > .mr-section,
.mr-entry > .alignfull { margin-block: 0; }
.mr-entry > :first-child { margin-top: 0; }

.mr-section {
	position: relative;
	padding-top: clamp(4rem, 9vw, 7.5rem);
	padding-bottom: clamp(4rem, 9vw, 7.5rem);
}

.is-style-mr-surface { background: var(--mr-surface); }
.is-style-mr-dark {
	background:
		radial-gradient(50% 60% at 100% 0%, rgba(217, 0, 158, .22) 0%, rgba(217, 0, 158, 0) 70%),
		radial-gradient(45% 55% at 0% 100%, rgba(233, 75, 25, .22) 0%, rgba(233, 75, 25, 0) 70%),
		var(--mr-dark);
	color: rgba(255, 255, 255, .78);
}
.is-style-mr-dark h1, .is-style-mr-dark h2, .is-style-mr-dark h3 { color: #fff; }
.is-style-mr-dark .mr-gradient-text { background: var(--mr-grad-light); -webkit-background-clip: text; background-clip: text; }
.is-style-mr-dark a:not(.wp-block-button__link) { color: #FF9ED9; }

.is-style-mr-gradient { background: var(--mr-grad); color: rgba(255, 255, 255, .9); }
.is-style-mr-gradient h2, .is-style-mr-gradient h3 { color: #fff; }

.wp-block-group.is-style-mr-card {
	background: #fff; border: 1px solid var(--mr-border); border-radius: var(--mr-radius);
	padding: clamp(1.25rem, 3vw, 2rem); box-shadow: var(--mr-shadow-sm);
}

.mr-entry h2.wp-block-heading { text-wrap: balance; }
.mr-entry h3.wp-block-heading { text-wrap: balance; }

p.is-style-mr-lead {
	font-size: clamp(1.125rem, 1.8vw, 1.3125rem);
	line-height: 1.55;
	color: #3B3852;
}
.is-style-mr-dark p.is-style-mr-lead,
.is-style-mr-gradient p.is-style-mr-lead { color: rgba(255, 255, 255, .9); }

p.is-style-mr-highlight {
	position: relative;
	padding: 1rem 1.25rem 1rem 1.4rem;
	border-radius: var(--mr-radius-sm);
	background: var(--mr-grad-soft);
	color: var(--mr-text);
	font-weight: 700;
	font-size: 1.125rem;
	line-height: 1.4;
	letter-spacing: -.01em;
}
p.is-style-mr-highlight::before {
	content: ""; position: absolute; left: 0; top: 12px; bottom: 12px; width: 4px; border-radius: 4px; background: var(--mr-grad);
}
.is-style-mr-dark p.is-style-mr-highlight { background: rgba(255, 255, 255, .06); color: #fff; }

p.mr-big-quote {
	max-width: 900px;
	margin: clamp(2rem, 5vw, 3.5rem) auto;
	padding: 0;
	background: none;
	text-align: center;
	font-size: clamp(1.6rem, 3.6vw, 2.6rem);
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1.15;
	text-wrap: balance;
}
p.mr-big-quote::before { display: none; }

/* Liste con spunte / crocette */
ul.is-style-mr-check,
ul.is-style-mr-cross { list-style: none; padding: 0; margin-left: 0; }
ul.is-style-mr-check li,
ul.is-style-mr-cross li { position: relative; padding-left: 2rem; margin: .65rem 0; font-weight: 500; }
ul.is-style-mr-check li::before,
ul.is-style-mr-cross li::before {
	content: ""; position: absolute; left: 0; top: .15em;
	width: 1.3rem; height: 1.3rem; border-radius: 50%;
	background: var(--mr-grad);
}
ul.is-style-mr-check li::after {
	content: ""; position: absolute; left: .42rem; top: .38em;
	width: .35rem; height: .62rem; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg);
}
ul.is-style-mr-cross li { color: var(--mr-muted); }
ul.is-style-mr-cross li::before { background: #F2EEF3; }
ul.is-style-mr-cross li::after {
	content: "×"; position: absolute; left: 0; top: .15em; width: 1.3rem; line-height: 1.3rem; text-align: center;
	color: #9E9AAE; font-weight: 700;
}
ul.mr-inline-list { max-width: none !important; display: flex; flex-wrap: wrap; justify-content: center; gap: .25rem 1.75rem; }

/* Due sezioni bianche consecutive: niente doppio spazio */
.mr-entry > .mr-section:not([class*="is-style-mr"]):not(.mr-page-hero) + .mr-section:not([class*="is-style-mr"]) { padding-top: 0; }

/* Intestazione di sezione centrata */
.mr-section-head { text-align: center; margin-bottom: clamp(2.5rem, 5vw, 3.5rem); }
.mr-section-head > * { margin-inline: auto; }
.mr-section-head h2 { margin-top: 1rem; }
.mr-section-head p.is-style-mr-lead { max-width: 640px; }

/* Split testo + visual */
.wp-block-columns.mr-split { align-items: center; gap: clamp(2.5rem, 6vw, 5rem); }
.mr-split__text > h2 { margin-top: 1rem; }
.mr-split__text > p.is-style-mr-highlight { margin-top: 1.75rem; }
@media (min-width: 782px) {
	.mr-split--reverse .mr-split__media { order: 0; }
}
@media (max-width: 781px) {
	.mr-split--reverse .mr-split__media { order: 2; }
}

/* Card */
.wp-block-columns.mr-cards { gap: 1.25rem; }
.wp-block-column.mr-card,
.mr-card {
	position: relative;
	display: flex; flex-direction: column;
	background: #fff;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-radius);
	padding: clamp(1.5rem, 3vw, 2rem);
	box-shadow: var(--mr-shadow-sm);
	transition: transform .25s var(--mr-ease), box-shadow .25s var(--mr-ease), border-color .25s;
}
.wp-block-column.mr-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--mr-shadow);
	border-color: #F2D0E6;
}
.mr-card > h3, .mr-card > .mr-card__title { margin: 0; font-size: 1.25rem; font-weight: 700; letter-spacing: -.015em; }
.mr-card > p { margin: .65rem 0 0; color: var(--mr-muted); }
.mr-card > p.mr-card__meta {
	margin-top: auto; padding-top: 1.25rem; font-size: .875rem; color: var(--mr-primary); font-weight: 500;
}
.mr-card > .mr-card__cta { margin-top: auto; padding-top: 1.5rem; }

/* Icone delle card (maschere SVG, nessuna libreria) */
[class*="mr-ico-"]::before {
	content: "";
	display: block;
	width: 48px; height: 48px;
	margin-bottom: 1.25rem;
	border-radius: 14px;
	background:
		var(--mr-icon) center / 24px 24px no-repeat,
		var(--mr-grad);
	flex: none;
}
.mr-ico-store     { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l1.5-5h15L21 9'/%3E%3Cpath d='M3 9a3 3 0 006 0 3 3 0 006 0 3 3 0 006 0'/%3E%3Cpath d='M5 12v8h14v-8'/%3E%3Cpath d='M10 20v-5h4v5'/%3E%3C/svg%3E"); }
.mr-ico-building  { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='2'/%3E%3Cpath d='M9 7h1M14 7h1M9 11h1M14 11h1M9 15h1M14 15h1M10 21v-3h4v3'/%3E%3C/svg%3E"); }
.mr-ico-buildings { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18'/%3E%3Cpath d='M5 21V7l7-4v18'/%3E%3Cpath d='M19 21V11l-7-3'/%3E%3Cpath d='M8 9h1M8 13h1M8 17h1M15 13h1M15 17h1'/%3E%3C/svg%3E"); }
.mr-ico-user-plus { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='4'/%3E%3Cpath d='M2 21c1-4 4-6 7-6s6 2 7 6'/%3E%3Cpath d='M19 8v6M16 11h6'/%3E%3C/svg%3E"); }
.mr-ico-user      { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1.5-4 4.5-6 8-6s6.5 2 8 6'/%3E%3C/svg%3E"); }
.mr-ico-upload    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='14' height='14' rx='3'/%3E%3Cpath d='M17 10l4-2.5v9L17 14'/%3E%3Cpath d='M10 15V9M7.5 11.5L10 9l2.5 2.5'/%3E%3C/svg%3E"); }
.mr-ico-eye       { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E"); }
.mr-ico-network   { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Ccircle cx='4.5' cy='5' r='2'/%3E%3Ccircle cx='19.5' cy='5' r='2'/%3E%3Ccircle cx='4.5' cy='19' r='2'/%3E%3Ccircle cx='19.5' cy='19' r='2'/%3E%3Cpath d='M6 6.5l3.8 3.7M18 6.5l-3.8 3.7M6 17.5l3.8-3.7M18 17.5l-3.8-3.7'/%3E%3C/svg%3E"); }
.mr-ico-match     { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8.5' cy='12' r='5.5'/%3E%3Ccircle cx='15.5' cy='12' r='5.5'/%3E%3C/svg%3E"); }
.mr-ico-repeat    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 2l3 3-3 3'/%3E%3Cpath d='M4 11V9a4 4 0 014-4h12'/%3E%3Cpath d='M7 22l-3-3 3-3'/%3E%3Cpath d='M20 13v2a4 4 0 01-4 4H4'/%3E%3C/svg%3E"); }
.mr-ico-play      { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='4'/%3E%3Cpath d='M10 9l5 3-5 3z'/%3E%3C/svg%3E"); }
.mr-ico-star      { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.7 5.6 6.1.9-4.4 4.3 1 6.1L12 17l-5.4 2.9 1-6.1-4.4-4.3 6.1-.9z'/%3E%3C/svg%3E"); }
.mr-ico-help      { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M9.5 9.2a2.6 2.6 0 015 .8c0 1.8-2.5 2.2-2.5 4'/%3E%3Cpath d='M12 17.2h.01'/%3E%3C/svg%3E"); }
.mr-ico-compass   { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M15.5 8.5l-2 5-5 2 2-5z'/%3E%3C/svg%3E"); }
.mr-ico-alert     { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 00-5.4 5.4L3 18v3h3l6.3-6.3a4 4 0 005.4-5.4l-2.5 2.5-2.4-.6-.6-2.4z'/%3E%3C/svg%3E"); }
.mr-ico-credit    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='6' rx='8' ry='3'/%3E%3Cpath d='M4 6v6c0 1.7 3.6 3 8 3s8-1.3 8-3V6'/%3E%3Cpath d='M4 12v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6'/%3E%3C/svg%3E"); }
.mr-ico-id        { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='11' r='2'/%3E%3Cpath d='M6 16c.5-1.5 1.7-2.2 3-2.2s2.5.7 3 2.2M14 10h4M14 14h3'/%3E%3C/svg%3E"); }
.mr-ico-camera    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 10l5-3v10l-5-3'/%3E%3Crect x='2' y='6' width='13' height='12' rx='2'/%3E%3Ccircle cx='6.5' cy='10' r='1'/%3E%3C/svg%3E"); }
.mr-ico-send      { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 2L11 13'/%3E%3Cpath d='M22 2l-7 20-4-9-9-4z'/%3E%3C/svg%3E"); }
.mr-ico-people    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3Ccircle cx='16' cy='8' r='3'/%3E%3Cpath d='M2 20c.8-3 3.2-5 6-5 1.5 0 2.9.6 4 1.6 1.1-1 2.5-1.6 4-1.6 2.8 0 5.2 2 6 5'/%3E%3C/svg%3E"); }
.mr-ico-briefcase { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Cpath d='M8 7V5a2 2 0 012-2h4a2 2 0 012 2v2M3 13h18'/%3E%3C/svg%3E"); }
.mr-ico-bolt      { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2L4 14h7l-1 8 9-12h-7z'/%3E%3C/svg%3E"); }
.mr-ico-smile     { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M8 14.5c1 1.3 2.4 2 4 2s3-.7 4-2M9 9.5h.01M15 9.5h.01'/%3E%3C/svg%3E"); }
.mr-ico-target    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Ccircle cx='12' cy='12' r='5.5'/%3E%3Ccircle cx='12' cy='12' r='1.5'/%3E%3C/svg%3E"); }
.mr-ico-flame     { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22c4 0 7-2.7 7-6.6 0-3.4-2.3-5.4-3.6-7.4-.6 1.6-1.6 2.6-2.8 3C12.8 7.5 11 4.5 8.5 2.5 8.6 6 5 8.6 5 13.6 5 18.8 8 22 12 22z'/%3E%3C/svg%3E"); }
.mr-ico-search    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4-4'/%3E%3C/svg%3E"); }
.mr-ico-sprout    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21v-9'/%3E%3Cpath d='M12 12C12 8 9 5 4 5c0 4 3 7 8 7z'/%3E%3Cpath d='M12 14c0-3 2.5-6 8-6 0 3.5-3 6-8 6z'/%3E%3C/svg%3E"); }
.mr-ico-award     { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='6'/%3E%3Cpath d='M8.5 14l-1.5 8 5-3 5 3-1.5-8'/%3E%3C/svg%3E"); }
.mr-ico-laptop    { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='11' rx='2'/%3E%3Cpath d='M2 19h20'/%3E%3C/svg%3E"); }
.mr-ico-sparkles  { --mr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l1.8 4.7L18.5 9.5l-4.7 1.8L12 16l-1.8-4.7L5.5 9.5l4.7-1.8z'/%3E%3Cpath d='M19 15l.8 2.2L22 18l-2.2.8L19 21l-.8-2.2L16 18l2.2-.8z'/%3E%3C/svg%3E"); }

/* Step di "Come funziona" */
.wp-block-columns.mr-steps { gap: 1rem; counter-reset: mr-step; }
.wp-block-column.mr-step {
	counter-increment: mr-step;
	position: relative;
	background: #fff;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-radius);
	padding: 1.5rem;
}
.wp-block-column.mr-step::after {
	content: counter(mr-step, decimal-leading-zero);
	position: absolute; right: 1.25rem; top: 1.1rem;
	font-size: .8125rem; font-weight: 700; color: #9E9AAE; letter-spacing: .04em;
}
.mr-step > h3 { margin: 0; font-size: 1.125rem; font-weight: 700; }
.mr-step > p { margin: .5rem 0 0; color: var(--mr-muted); font-size: .9375rem; }
.mr-step[class*="mr-ico-"]::before { width: 42px; height: 42px; border-radius: 12px; margin-bottom: 1rem; }
.mr-step:last-child { border-color: transparent; background: linear-gradient(#fff, #fff) padding-box, var(--mr-grad) border-box; border: 1.5px solid transparent; }
@media (min-width: 782px) and (max-width: 1099px) {
	.wp-block-columns.mr-steps { flex-wrap: wrap !important; }
	.wp-block-columns.mr-steps > .wp-block-column { flex: 1 1 calc(33.333% - 1rem) !important; }
}

/* Pannello centrato (modello economico, contatti) */
.wp-block-group.mr-panel {
	text-align: center;
	border-radius: var(--mr-radius-lg);
	background:
		radial-gradient(60% 80% at 0% 0%, rgba(233, 75, 25, .10) 0%, rgba(233, 75, 25, 0) 60%),
		radial-gradient(60% 80% at 100% 100%, rgba(217, 0, 158, .10) 0%, rgba(217, 0, 158, 0) 60%),
		var(--mr-surface);
	border: 1px solid var(--mr-border);
	padding: clamp(2.5rem, 6vw, 4.5rem) clamp(1.25rem, 5vw, 4rem);
}
.mr-panel > * { margin-inline: auto; }
.mr-panel > h2 { margin-top: 1rem; max-width: 760px; }
.mr-panel > p.is-style-mr-lead { max-width: 640px; }
.mr-panel > p.is-style-mr-highlight { display: inline-block; max-width: 640px; text-align: left; }

/* CTA finale */
.mr-section--cta { padding-top: clamp(1rem, 3vw, 2rem); }
.wp-block-group.mr-cta-box {
	position: relative; overflow: hidden; isolation: isolate;
	text-align: center;
	border-radius: var(--mr-radius-lg);
	padding: clamp(3rem, 8vw, 5.5rem) clamp(1.25rem, 5vw, 4rem);
}
.mr-cta-box::before {
	content: ""; position: absolute; inset: 0; z-index: -1; opacity: .25;
	background-image: radial-gradient(rgba(255, 255, 255, .55) 1px, transparent 1px);
	background-size: 22px 22px;
	-webkit-mask-image: radial-gradient(ellipse at center, #000 0%, transparent 75%);
	mask-image: radial-gradient(ellipse at center, #000 0%, transparent 75%);
}
.mr-cta-box > * { margin-inline: auto; }
.mr-cta-box > h2 { max-width: 820px; font-size: clamp(2rem, 4.4vw, 3.25rem); }
.mr-cta-box > p.is-style-mr-lead { max-width: 560px; }
.mr-cta-box__micro { margin-top: 1rem; font-size: .875rem; color: rgba(255, 255, 255, .8); }

/* Hero delle pagine interne */
.mr-page-hero {
	text-align: center;
	overflow: hidden;
	isolation: isolate;
	padding-top: clamp(3.5rem, 8vw, 6.5rem);
	background:
		radial-gradient(45% 60% at 15% 0%, rgba(233, 75, 25, .12) 0%, rgba(233, 75, 25, 0) 70%),
		radial-gradient(45% 60% at 85% 10%, rgba(217, 0, 158, .12) 0%, rgba(217, 0, 158, 0) 70%),
		#fff;
}
.mr-page-hero::before {
	content: ""; position: absolute; inset: 0; z-index: -1; opacity: .6;
	background-image: linear-gradient(rgba(4, 1, 43, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(4, 1, 43, .045) 1px, transparent 1px);
	background-size: 48px 48px;
	-webkit-mask-image: radial-gradient(ellipse at 50% 0%, #000 0%, transparent 70%);
	mask-image: radial-gradient(ellipse at 50% 0%, #000 0%, transparent 70%);
}
.mr-page-hero > * { margin-inline: auto; }
.mr-page-hero h1 {
	margin-top: 1.1rem;
	max-width: 980px;
	font-size: clamp(2.3rem, 5.6vw, 4.25rem);
	line-height: 1.05;
	letter-spacing: -.04em;
	text-wrap: balance;
}
.mr-page-hero > p.is-style-mr-lead { max-width: 680px; }
.mr-page-hero > p:not([class]) { max-width: 620px; color: var(--mr-muted); }
.mr-page-hero--app,
.mr-page-hero--split { text-align: left; }
.mr-page-hero--app .mr-split__text > *,
.mr-page-hero--split .mr-split__text > * { margin-inline: 0; }
.mr-page-hero--app h1 { font-size: clamp(2.5rem, 6vw, 4.5rem); }
.mr-page-hero--split h1 { font-size: clamp(2.2rem, 4.6vw, 3.6rem); }

/* Confronto */
.wp-block-columns.mr-compare { gap: 1.25rem; max-width: 980px; margin-inline: auto !important; }
.mr-compare__col {
	border-radius: var(--mr-radius);
	padding: clamp(1.5rem, 4vw, 2.5rem);
	background: #fff;
	border: 1px solid var(--mr-border);
}
.mr-compare__col > h3 { margin: 0 0 1rem; font-size: 1.125rem; }
.mr-compare__col--old > h3 { color: var(--mr-muted); }
.mr-compare__col--new {
	background: linear-gradient(#fff, #fff) padding-box, var(--mr-grad) border-box;
	border: 2px solid transparent;
	box-shadow: var(--mr-shadow);
}
.mr-compare__col--new > h3 { font-size: 1.375rem; }
.mr-compare__col--new li { font-size: 1.0625rem; }

/* Prezzi */
.mr-free-badge {
	display: inline-flex !important; flex-wrap: wrap; justify-content: center; gap: .25rem .4rem;
	margin-top: 1.75rem !important;
	padding: .6rem 1.1rem; border-radius: 999px;
	background: #ECFDF3; color: #05603A; font-size: .9375rem;
	box-shadow: inset 0 0 0 1px #ABEFC6;
}
.mr-free-badge a { color: #05603A; font-weight: 700; }

.wp-block-columns.mr-pricing {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 1.25rem;
	margin-top: clamp(2.5rem, 6vw, 4rem) !important;
	text-align: left;
}
@media (min-width: 640px) { .wp-block-columns.mr-pricing { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .wp-block-columns.mr-pricing { grid-template-columns: repeat(4, 1fr); } }
.wp-block-columns.mr-pricing > .wp-block-column { flex-basis: auto !important; }

.mr-plan {
	position: relative;
	display: flex; flex-direction: column;
	background: #fff;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-radius);
	padding: 1.75rem;
	box-shadow: var(--mr-shadow-sm);
}
.mr-plan > * { margin: 0; }
.mr-plan__name { font-size: 1.125rem !important; font-weight: 700; }
.mr-price { margin-top: 1rem !important; color: var(--mr-muted); font-size: 1rem; }
.mr-price strong {
	color: var(--mr-text); font-size: clamp(2.2rem, 3.4vw, 2.6rem); font-weight: 800; letter-spacing: -.04em; margin-right: .15rem;
}
.mr-plan__desc { margin-top: .75rem !important; color: #3B3852; min-height: 3.2em; }
.mr-plan__list { margin-top: 1rem !important; font-size: .9375rem; }
.mr-plan__list li { margin: .4rem 0; }
.mr-plan > .mr-placeholder { margin-top: 1rem; font-size: .875rem; }
.mr-plan__cta { margin-top: auto !important; padding-top: 1.5rem; }
.mr-plan__cta .wp-block-button { width: 100%; }
.mr-plan__cta .wp-block-button__link { width: 100%; }

.mr-plan--featured {
	background: linear-gradient(#fff, #fff) padding-box, var(--mr-grad) border-box;
	border: 2px solid transparent;
	box-shadow: 0 30px 60px -30px rgba(217, 0, 158, .45);
}
.mr-plan--dark { background: var(--mr-dark); border-color: var(--mr-dark); color: rgba(255, 255, 255, .8); }
.mr-plan--dark .mr-plan__name, .mr-plan--dark .mr-price strong { color: #fff; }
.mr-plan--dark .mr-price, .mr-plan--dark .mr-plan__desc { color: rgba(255, 255, 255, .72); }
.logged-in .mr-plan--dark .mr-placeholder { background: rgba(255, 247, 214, .12); color: #FFE58A; }
.mr-pricing__note { margin-top: 1.75rem !important; color: var(--mr-muted); font-size: .9375rem; }

/* FAQ */
.wp-block-group.mr-faq { max-width: 820px; margin-inline: auto; display: grid; gap: .75rem; }
.wp-block-group.mr-faq > * { margin: 0 !important; max-width: none !important; }
details.is-style-mr-faq {
	background: #fff;
	border: 1px solid var(--mr-border);
	border-radius: 16px;
	padding: 0;
	transition: border-color .2s, box-shadow .2s;
}
details.is-style-mr-faq[open] { border-color: #F6C4E5; box-shadow: var(--mr-shadow-sm); }
details.is-style-mr-faq > summary {
	list-style: none;
	position: relative;
	cursor: pointer;
	padding: 1.15rem 3.5rem 1.15rem 1.35rem;
	font-weight: 600;
	font-size: 1.0625rem;
	line-height: 1.4;
}
details.is-style-mr-faq > summary::-webkit-details-marker { display: none; }
details.is-style-mr-faq > summary::after {
	content: "";
	position: absolute; right: 1.25rem; top: 50%;
	width: 28px; height: 28px; margin-top: -14px; border-radius: 50%;
	background:
		linear-gradient(var(--mr-primary), var(--mr-primary)) center / 12px 2px no-repeat,
		linear-gradient(var(--mr-primary), var(--mr-primary)) center / 2px 12px no-repeat,
		var(--mr-grad-soft);
	transition: transform .25s var(--mr-ease);
}
details.is-style-mr-faq[open] > summary::after {
	transform: rotate(45deg);
}
details.is-style-mr-faq > :not(summary) { margin: 0 1.35rem 1.25rem; color: #4A475F; }

/* Contatti */
.mr-contact__email { font-size: clamp(1.25rem, 2.6vw, 1.75rem); font-weight: 700; letter-spacing: -.02em; }
.mr-contact__email a { text-decoration: none; }
.mr-contact .mr-placeholder { font-size: .9375rem; }

/* Link piattaforma */
.mr-platform-link { margin-top: 1.5rem; color: var(--mr-muted); font-size: .9375rem; }
.mr-platform-url {
	display: inline-flex; align-items: center; gap: .4rem;
	margin-left: .25rem; padding: .3rem .75rem; border-radius: 999px;
	background: var(--mr-surface); box-shadow: inset 0 0 0 1px var(--mr-border);
	font-weight: 600; text-decoration: none;
}
.mr-platform-url::after { content: "↗"; font-size: .85em; }

/* ---------- Mockup decorativi ---------- */
.mr-mock-play--lg { width: 64px; height: 64px; margin: -32px 0 0 -32px; }
.mr-mock-play--lg::after { left: 25px; top: 19px; border-left-width: 19px; border-top-width: 13px; border-bottom-width: 13px; }

/* CV vs video */
.mr-mock-cv { position: relative; max-width: 480px; margin-inline: auto; aspect-ratio: 1 / .92; }
.mr-mock-cv__doc {
	position: absolute; width: 48%; aspect-ratio: 3 / 4;
	background: #fff; border: 1px solid var(--mr-border); border-radius: 16px; padding: 18px;
	display: grid; align-content: start; gap: 9px;
	box-shadow: var(--mr-shadow-sm);
}
.mr-mock-cv__doc:nth-child(1) { left: 0; top: 0; transform: rotate(-4deg); }
.mr-mock-cv__doc:nth-child(2) { left: 22%; top: 6%; transform: rotate(3deg); }
.mr-mock-cv__doc i { display: block; height: 8px; border-radius: 4px; background: #F2EEF3; }
.mr-mock-cv__doc i.s { width: 60%; }
.mr-mock-cv__label { font-size: .75rem; font-weight: 700; color: #9E9AAE; letter-spacing: .08em; margin-bottom: 4px; }
.mr-mock-cv__video {
	position: absolute; right: 0; bottom: 0; width: 58%; aspect-ratio: 4 / 5;
	border-radius: 22px; overflow: hidden;
	background:
		radial-gradient(28% 22% at 50% 38%, rgba(255, 255, 255, .7) 0 60%, transparent 62%),
		radial-gradient(48% 34% at 50% 100%, rgba(255, 255, 255, .55) 0 70%, transparent 72%),
		linear-gradient(160deg, #F0632A 0%, #E8306A 55%, #E0129F 100%);
	box-shadow: 0 30px 60px -24px rgba(217, 0, 158, .4);
	border: 4px solid #fff;
}
.mr-mock-cv__tag {
	position: absolute; left: 12px; top: 12px; padding: 5px 10px; border-radius: 999px;
	background: rgba(4, 1, 43, .55); color: #fff; font-size: .75rem; font-weight: 600;
}
.mr-mock-cv__wave {
	position: absolute; left: 12px; right: 12px; bottom: 12px; height: 28px;
	display: flex; align-items: center; gap: 4px; padding: 0 10px; border-radius: 999px;
	background: rgba(4, 1, 43, .45);
}
.mr-mock-cv__wave i { flex: 1; height: 30%; border-radius: 2px; background: #fff; opacity: .9; }
.mr-mock-cv__wave i:nth-child(2n) { height: 70%; }
.mr-mock-cv__wave i:nth-child(3n) { height: 50%; }

/* Network */
.mr-mock-network { position: relative; max-width: 440px; margin-inline: auto; }
.mr-mock-network svg { display: block; width: 100%; height: auto; }
.mr-mock-network__badge {
	position: absolute; left: 50%; top: 66%; transform: translateX(-50%);
	padding: .35rem .8rem; border-radius: 999px; background: #fff; box-shadow: var(--mr-shadow);
	font-size: .8125rem; font-weight: 700; white-space: nowrap;
}

/* Player */
.mr-mock-player {
	max-width: 520px; margin-inline: auto;
	padding: 12px; border-radius: 26px;
	background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .14);
}
.mr-mock-player__screen {
	position: relative; display: block; aspect-ratio: 16 / 10; border-radius: 18px; overflow: hidden;
	background:
		radial-gradient(60% 70% at 70% 20%, rgba(217, 0, 158, .7) 0%, rgba(217, 0, 158, 0) 70%),
		linear-gradient(200deg, #150A45 0%, #E94B19 100%);
}
.mr-mock-player__person {
	position: absolute; left: 50%; bottom: 0; width: 46%; height: 78%; transform: translateX(-50%);
	background:
		radial-gradient(circle at 50% 24%, rgba(255, 255, 255, .8) 0 17%, transparent 18%),
		radial-gradient(ellipse at 50% 100%, rgba(255, 255, 255, .7) 0 50%, transparent 51%);
	opacity: .5;
}
.mr-mock-player__bar {
	position: absolute; left: 16px; right: 16px; bottom: 16px; height: 4px; border-radius: 4px; background: rgba(255, 255, 255, .25);
}
.mr-mock-player__bar span { position: absolute; left: 0; top: 0; bottom: 0; width: 38%; border-radius: 4px; background: #fff; }
.mr-mock-player__tags { display: flex; flex-wrap: wrap; gap: 8px; padding: 14px 4px 4px; }
.mr-mock-player__tags span {
	padding: 6px 12px; border-radius: 999px; font-size: .8125rem; font-weight: 600; color: #fff;
	background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .16);
}

/* Flow */
.mr-mock-flow {
	display: flex; align-items: center; justify-content: center; gap: .5rem;
	padding: 2rem 1rem; border-radius: var(--mr-radius-lg);
	background: var(--mr-surface); border: 1px solid var(--mr-border);
}
.mr-mock-flow__step {
	display: grid; justify-items: center; gap: .5rem; font-weight: 700; font-size: .9375rem; color: var(--mr-muted);
}
.mr-mock-flow__step b {
	display: grid; place-items: center; width: 56px; height: 56px; border-radius: 18px;
	background: #fff; border: 1px solid var(--mr-border); color: var(--mr-text); font-size: 1.125rem;
}
.mr-mock-flow__step--on { color: var(--mr-text); }
.mr-mock-flow__step--on b { background: var(--mr-grad); border: 0; color: #fff; box-shadow: var(--mr-shadow-brand); }
.mr-mock-flow__line { flex: 1; max-width: 70px; height: 2px; margin-bottom: 1.6rem; background: repeating-linear-gradient(90deg, #F6C4E5 0 6px, transparent 6px 12px); }

/* Browser */
.mr-mock-browser {
	max-width: 560px; margin-inline: auto;
	border-radius: 20px; overflow: hidden; background: #fff;
	border: 1px solid var(--mr-border); box-shadow: 0 40px 80px -40px rgba(4, 1, 43, .35);
}
.mr-mock-browser__bar {
	display: flex; align-items: center; gap: 6px; padding: 12px 14px; background: var(--mr-surface); border-bottom: 1px solid var(--mr-border);
}
.mr-mock-browser__bar i { width: 10px; height: 10px; border-radius: 50%; background: #D8D2DC; }
.mr-mock-browser__url {
	flex: 1; margin-left: 10px; padding: 5px 12px; border-radius: 999px; background: #fff; border: 1px solid var(--mr-border);
	font-size: .8125rem; color: var(--mr-muted); text-align: center;
}
.mr-mock-browser__body { display: grid; grid-template-columns: 26% 1fr; min-height: 280px; }
.mr-mock-browser__side { display: grid; align-content: start; gap: 10px; padding: 16px; border-right: 1px solid var(--mr-border); }
.mr-mock-browser__side i { display: block; height: 8px; border-radius: 4px; background: #F2EEF3; }
.mr-mock-browser__logo { width: 28px; height: 28px; border-radius: 8px; background: var(--mr-grad); margin-bottom: 8px; }
.mr-mock-browser__main { padding: 16px; }
.mr-mock-browser__title { display: block; width: 50%; height: 12px; border-radius: 6px; background: #EAE5EC; margin-bottom: 14px; }
.mr-mock-browser__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.mr-mock-browser__tile {
	position: relative; aspect-ratio: 4 / 3; border-radius: 12px;
	background: linear-gradient(160deg, #F0632A 0%, #DB1E8A 100%);
}
.mr-mock-browser__tile:nth-child(2) { background: linear-gradient(160deg, #E32D4D 0%, #D9009E 100%); }
.mr-mock-browser__tile:nth-child(3) { background: linear-gradient(160deg, #1A0E4A 0%, #E94B19 100%); }
.mr-mock-browser__tile:nth-child(4) { background: linear-gradient(160deg, #D9009E 0%, #E94B19 100%); }
.mr-mock-browser__tile .mr-mock-play { transform: scale(.7); }

/* ---------- Pagine generiche, blog, 404 ---------- */
.mr-page-header { padding: clamp(3rem, 7vw, 5rem) 0 clamp(1.5rem, 3vw, 2.5rem); }
.mr-page-header__title { margin: .75rem 0 0; font-size: clamp(2.2rem, 5vw, 3.5rem); letter-spacing: -.035em; line-height: 1.08; }
.mr-entry--prose, .mr-page .mr-entry:not(:has(.mr-section)) { padding-bottom: clamp(3rem, 7vw, 5rem); }
.mr-single__media img { border-radius: var(--mr-radius-lg); width: 100%; }
.mr-loop { padding-bottom: 5rem; }
.mr-loop__grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
.mr-loop__thumb img { border-radius: 14px; margin-bottom: 1rem; aspect-ratio: 16 / 9; object-fit: cover; width: 100%; }
.mr-loop__title { font-size: 1.25rem; margin: 0; }
.mr-loop__title a { color: inherit; text-decoration: none; }
.mr-404 { padding: clamp(4rem, 12vw, 9rem) 0; text-align: center; }
.mr-404 .mr-lead { color: var(--mr-muted); font-size: 1.125rem; }
.mr-404 .mr-actions { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: center; margin-top: 2rem; }

/* ---------- Footer ---------- */
.mr-footer {
	position: relative;
	background: var(--mr-dark);
	color: rgba(255, 255, 255, .7);
	padding: clamp(3.5rem, 8vw, 5.5rem) 0 2rem;
	font-size: .9375rem;
}
.mr-footer::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 2px; background: var(--mr-grad); }
.mr-footer a { color: rgba(255, 255, 255, .82); text-decoration: none; }
.mr-footer a:hover { color: #fff; }
.mr-footer a.mr-btn { color: #fff; }

.mr-footer__grid { display: grid; gap: 2.5rem; grid-template-columns: 1fr; }
@media (min-width: 640px) {
	.mr-footer__grid--2, .mr-footer__grid--3 { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
	.mr-footer__grid--3 { grid-template-columns: 1.6fr 1fr 1fr; }
	.mr-footer__grid--2 { grid-template-columns: 1.6fr 1fr; }
}
.mr-footer__brand { display: grid; gap: .9rem; justify-items: start; max-width: 380px; }
.mr-footer__grid--1 .mr-footer__brand { justify-items: center; text-align: center; margin-inline: auto; }
.mr-footer__brand .mr-logo__img { height: 46px; }
.mr-footer__payoff {
	margin: .25rem 0 0; font-size: 1.5rem; font-weight: 800; letter-spacing: -.03em; line-height: 1.15;
	background: var(--mr-grad-light);
	-webkit-background-clip: text; background-clip: text; color: transparent;
}
.mr-footer__desc { margin: 0 0 .5rem; }
.mr-footer__title {
	margin: 0 0 1rem; color: #fff; font-weight: 700; font-size: .8125rem; letter-spacing: .08em; text-transform: uppercase;
}
.mr-footer__menu { list-style: none; margin: 0; padding: 0; display: grid; gap: .7rem; }
.mr-footer-widget + .mr-footer-widget { margin-top: 1.5rem; }

.mr-footer__bottom {
	display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem 2rem;
	margin-top: clamp(2.5rem, 6vw, 4rem); padding-top: 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, .1);
	font-size: .8125rem; color: rgba(255, 255, 255, .55);
}
.mr-footer__company p { margin: 0 0 .35rem; }
.mr-footer__legal { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; }
.mr-footer .mr-placeholder { background: rgba(255, 247, 214, .1); color: #FFE58A; outline-color: rgba(227, 180, 0, .5); }

/* ---------- Barra CTA fissa su smartphone ---------- */
.mr-sticky-cta {
	position: fixed; left: .75rem; right: .75rem; bottom: .75rem; z-index: 90;
	display: flex; align-items: center; gap: .75rem;
	padding: .6rem .6rem .6rem 1rem;
	border-radius: 999px;
	background: rgba(4, 1, 43, .92);
	-webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
	box-shadow: 0 20px 40px -16px rgba(0, 0, 0, .5);
	transform: translateY(140%);
	transition: transform .3s var(--mr-ease);
	padding-bottom: calc(.6rem + env(safe-area-inset-bottom, 0px) * .5);
}
.mr-sticky-cta[hidden] { display: none; }
.mr-sticky-cta.is-visible { transform: none; }
.mr-sticky-cta__mark { width: 32px; height: 32px; object-fit: contain; flex: none; }
.mr-sticky-cta__text { margin: 0; flex: 1; color: rgba(255, 255, 255, .85); font-size: .8125rem; line-height: 1.3; }
.mr-sticky-cta .mr-btn { flex: none; }
@media (min-width: 1024px) { .mr-sticky-cta { display: none !important; } }
@media (max-width: 1023px) { .has-mr-sticky-cta .mr-footer { padding-bottom: 6rem; } }

/* ---------- Microanimazioni ---------- */
.mr-js .mr-reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--mr-ease), transform .7s var(--mr-ease); }
.mr-js .mr-reveal.is-in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
	.mr-js .mr-reveal { opacity: 1; transform: none; }
}

/* ---------- Editor ---------- */
.editor-styles-wrapper .mr-section { padding-top: 4rem; padding-bottom: 4rem; }

/* Card dentro l'hero delle pagine interne */
.mr-page-hero .wp-block-columns.mr-cards { text-align: left; margin-top: clamp(2.5rem, 5vw, 3.5rem); }
@media (max-width: 599px) { .mr-free-badge { border-radius: 16px; } }

/* ==========================================================================
   Pagina "Per i talenti" (v1.2) — componenti aggiuntivi
   ========================================================================== */

/* Simbolo play del logo, usato come elemento ricorrente */
.mr-play-mark {
	position: absolute; left: 50%; top: 50%; z-index: 2;
	width: 64px; height: 64px; margin: -32px 0 0 -32px;
	border-radius: 50%;
	background: #fff url("../img/matchreel-mark.webp") center / 76% no-repeat;
	box-shadow: 0 12px 30px -8px rgba(4, 1, 43, .5);
	transition: transform .3s var(--mr-ease);
}
.mr-play-mark::after {
	content: ""; position: absolute; inset: -8px; border-radius: 50%;
	border: 2px solid rgba(255, 255, 255, .55);
	animation: mr-pulse 2.6s var(--mr-ease) infinite;
}
@keyframes mr-pulse { 0% { transform: scale(.9); opacity: .9; } 100% { transform: scale(1.35); opacity: 0; } }

/* Microcopy sotto le CTA */
p.mr-micro {
	display: inline-flex; align-items: center; gap: .5rem;
	margin-top: 1rem; font-size: .875rem; color: var(--mr-muted);
}
p.mr-micro::before {
	content: ""; width: 8px; height: 8px; border-radius: 50%; background: #12B76A; flex: none;
	box-shadow: 0 0 0 4px rgba(18, 183, 106, .18);
}
.is-style-mr-gradient p.mr-micro, .is-style-mr-dark p.mr-micro { color: rgba(255, 255, 255, .85); }

/* Pulsante trasparente su sfondi scuri o gradiente */
.wp-block-button.is-style-mr-ghost-light .wp-block-button__link {
	background: transparent; color: #fff; box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .6);
}
.wp-block-button.is-style-mr-ghost-light .wp-block-button__link:hover { background: rgba(255, 255, 255, .12); box-shadow: inset 0 0 0 1.5px #fff; filter: none; }

/* Mockup profilo talento (hero) */
.mr-mock-profile {
	position: relative;
	max-width: 400px; margin-inline: auto;
	padding: 14px 14px 20px;
	border-radius: 28px; background: #fff;
	border: 1px solid var(--mr-border);
	box-shadow: 0 50px 90px -40px rgba(4, 1, 43, .45), 0 0 0 8px rgba(217, 0, 158, .04);
	text-align: left;
	transform: rotate(1.5deg);
}
.mr-mock-profile__label {
	position: absolute; top: -14px; left: 24px; z-index: 3;
	padding: 5px 12px; border-radius: 999px; background: var(--mr-navy); color: #fff;
	font-size: .75rem; font-weight: 600; letter-spacing: .02em;
}
.mr-mock-profile__video {
	position: relative; display: block; aspect-ratio: 4 / 3.4; border-radius: 18px; overflow: hidden;
	background:
		radial-gradient(60% 55% at 75% 15%, rgba(255, 255, 255, .28) 0%, rgba(255, 255, 255, 0) 70%),
		linear-gradient(160deg, #F0632A 0%, #E8306A 50%, #D9009E 100%);
}
.mr-mock-profile__person, .mr-mock-phone__person, .mr-mock-cvvideo__screen::before, .mr-mosaic__tile::before {
	content: ""; position: absolute; left: 50%; bottom: 0; width: 52%; height: 80%; transform: translateX(-50%);
	background:
		radial-gradient(circle at 50% 25%, rgba(255, 255, 255, .85) 0 17%, transparent 18%),
		radial-gradient(ellipse at 50% 100%, rgba(255, 255, 255, .75) 0 50%, transparent 51%);
	opacity: .55;
}
.mr-mock-profile__dur {
	position: absolute; right: 12px; bottom: 12px; z-index: 2;
	padding: 3px 10px; border-radius: 999px; background: rgba(4, 1, 43, .6); color: #fff; font-size: .75rem; font-weight: 600;
}
.mr-mock-profile__head { display: flex; align-items: center; gap: 12px; margin-top: 16px; padding: 0 6px; }
.mr-mock-profile__avatar {
	display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; flex: none;
	background: var(--mr-grad); color: #fff; font-weight: 700; font-size: .9375rem;
	box-shadow: 0 0 0 3px #fff, 0 0 0 5px rgba(217, 0, 158, .25);
}
.mr-mock-profile__head b { display: block; font-size: 1.0625rem; color: var(--mr-text); }
.mr-mock-profile__head small { display: block; font-size: .8125rem; color: var(--mr-muted); }
.mr-mock-profile__bio { margin: 12px 6px 0 !important; font-size: .875rem; line-height: 1.5; color: #3B3852; }
.mr-mock-profile__chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 14px 6px 0; }
.mr-mock-profile__chips span {
	padding: 4px 10px; border-radius: 999px; font-size: .75rem; font-weight: 600; color: var(--mr-primary);
	background: var(--mr-grad-soft); box-shadow: inset 0 0 0 1px rgba(217, 0, 158, .16);
}
.mr-mock-profile__rows { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 14px 6px 0; }
.mr-mock-profile__rows span {
	padding: 8px 10px; border-radius: 12px; background: var(--mr-surface); font-size: .8125rem; font-weight: 600; color: var(--mr-text);
}
.mr-mock-profile__rows i { display: block; font-style: normal; font-weight: 500; font-size: .6875rem; color: var(--mr-muted); text-transform: uppercase; letter-spacing: .06em; }
.mr-mock-profile__float {
	position: absolute; right: -18px; top: 38%; z-index: 3;
	display: flex; align-items: center; gap: 8px;
	padding: 8px 12px; border-radius: 14px; background: #fff;
	box-shadow: 0 18px 40px -18px rgba(4, 1, 43, .45); border: 1px solid var(--mr-border);
	font-size: .75rem; font-weight: 600; color: var(--mr-text);
	transform: rotate(-1.5deg);
	animation: mr-float 7s ease-in-out infinite;
}
.mr-mock-profile__float::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #F04438; box-shadow: 0 0 0 4px rgba(240, 68, 56, .18); }
@media (max-width: 599px) {
	.mr-mock-profile { transform: none; }
	.mr-mock-profile__float { right: 8px; }
}
.mr-page-hero--split .mr-split__media { padding-top: 1rem; }

/* CV → informazioni / Video → persona */
.mr-mock-cvvideo {
	display: grid; grid-template-columns: 1fr auto 1.15fr; align-items: center; gap: 14px;
	max-width: 540px; margin-inline: auto;
}
.mr-mock-cvvideo__card {
	position: relative;
	padding: 16px; border-radius: 22px; background: #fff; border: 1px solid var(--mr-border); box-shadow: var(--mr-shadow-sm);
}
.mr-mock-cvvideo__card--video { border: 2px solid transparent; background: linear-gradient(#fff, #fff) padding-box, var(--mr-grad) border-box; box-shadow: 0 30px 60px -30px rgba(217, 0, 158, .45); }
.mr-mock-cvvideo__doc { display: grid; gap: 8px; padding: 12px; border-radius: 14px; background: var(--mr-surface); aspect-ratio: 3 / 3.2; align-content: start; }
.mr-mock-cvvideo__doc i { display: block; height: 7px; border-radius: 4px; background: #E6E0E9; }
.mr-mock-cvvideo__doc i:nth-child(3n) { width: 60%; }
.mr-mock-cvvideo__doc b { font-size: .6875rem; color: var(--mr-muted); letter-spacing: .1em; }
.mr-mock-cvvideo__screen {
	position: relative; display: block; aspect-ratio: 3 / 3.2; border-radius: 14px; overflow: hidden;
	background: linear-gradient(160deg, #F0632A 0%, #E8306A 50%, #D9009E 100%);
}
.mr-mock-cvvideo__screen .mr-play-mark { width: 48px; height: 48px; margin: -24px 0 0 -24px; }
.mr-mock-cvvideo ul { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 5px; }
.mr-mock-cvvideo li { padding: 3px 8px; border-radius: 999px; font-size: .6875rem; font-weight: 600; background: var(--mr-surface); color: var(--mr-muted); }
.mr-mock-cvvideo__card--video li { background: var(--mr-grad-soft); color: var(--mr-primary); }
.mr-mock-cvvideo__out { display: block; margin-top: 12px; font-size: .9375rem; font-weight: 800; letter-spacing: -.01em; color: var(--mr-muted); }
.mr-mock-cvvideo__card--video .mr-mock-cvvideo__out { color: var(--mr-text); }
.mr-mock-cvvideo__out span { color: var(--mr-primary); }
.mr-mock-cvvideo__plus {
	display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%;
	background: var(--mr-navy); color: #fff; font-weight: 700; font-size: 1.125rem;
}
@media (max-width: 599px) {
	.mr-mock-cvvideo { gap: 8px; }
	.mr-mock-cvvideo__card { padding: 10px; border-radius: 16px; }
	.mr-mock-cvvideo__plus { width: 28px; height: 28px; font-size: 1rem; }
	.mr-mock-cvvideo__out { font-size: .8125rem; }
	.mr-mock-cvvideo ul { display: none; }
}

/* Smartphone che registra + traccia del video */
.mr-phone-wrap { position: relative; max-width: 460px; margin-inline: auto; }
.mr-mock-phone {
	width: 230px; margin-left: 4%;
	padding: 10px; border-radius: 38px; background: var(--mr-navy);
	box-shadow: 0 50px 80px -40px rgba(4, 1, 43, .6);
	transform: rotate(-4deg);
}
.mr-mock-phone__screen {
	position: relative; display: block; aspect-ratio: 9 / 18.5; border-radius: 30px; overflow: hidden;
	background: radial-gradient(70% 50% at 50% 20%, rgba(255, 255, 255, .25) 0%, rgba(255, 255, 255, 0) 70%), linear-gradient(170deg, #F0632A 0%, #E8306A 45%, #D9009E 100%);
}
.mr-mock-phone__screen::before { /* notch */
	content: ""; position: absolute; left: 50%; top: 10px; width: 70px; height: 18px; margin-left: -35px; border-radius: 999px; background: var(--mr-navy); z-index: 2;
}
.mr-mock-phone__person { height: 70%; width: 70%; }
.mr-mock-phone__rec {
	position: absolute; left: 14px; top: 38px; z-index: 2;
	display: inline-flex; align-items: center; gap: 6px;
	padding: 3px 9px; border-radius: 999px; background: rgba(4, 1, 43, .55); color: #fff; font-size: .6875rem; font-weight: 700; letter-spacing: .08em;
}
.mr-mock-phone__rec::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #F04438; animation: mr-blink 1.4s steps(2, start) infinite; }
@keyframes mr-blink { to { visibility: hidden; } }
.mr-mock-phone__btn {
	position: absolute; left: 50%; bottom: 18px; z-index: 2;
	width: 54px; height: 54px; margin-left: -27px; border-radius: 50%;
	border: 4px solid #fff; background: radial-gradient(circle, #F04438 0 52%, transparent 54%);
}
.wp-block-group.mr-script-card {
	position: relative; z-index: 2;
	max-width: 300px; margin: -150px 0 0 auto !important;
	padding: 1.5rem; border-radius: var(--mr-radius); background: #fff; border: 1px solid var(--mr-border);
	box-shadow: var(--mr-shadow);
}
.mr-script-card > * { margin: 0 !important; }
.mr-script-card > h3 { font-size: 1.125rem; }
.mr-script-card > .mr-script-card__note { margin-top: .25rem !important; font-size: .8125rem; color: var(--mr-muted); }
.mr-script-card ol { margin-top: 1rem !important; padding: 0; list-style: none; counter-reset: mr-sc; display: grid; gap: .6rem; }
.mr-script-card ol li { counter-increment: mr-sc; display: flex; gap: .6rem; align-items: center; font-weight: 600; }
.mr-script-card ol li::before {
	content: counter(mr-sc); display: grid; place-items: center; flex: none;
	width: 26px; height: 26px; border-radius: 50%; background: var(--mr-grad); color: #fff; font-size: .8125rem;
}
.mr-script-card > p.mr-script-card__end { margin-top: 1rem !important; padding-top: 1rem; border-top: 1px dashed var(--mr-border); font-weight: 700; color: var(--mr-primary); }
@media (max-width: 599px) {
	.mr-mock-phone { width: 190px; }
	.wp-block-group.mr-script-card { margin: -110px 0 0 auto !important; max-width: 260px; }
}

/* Griglia di card (6–7 elementi) */
.wp-block-columns.mr-cards--grid {
	display: flex !important; flex-wrap: wrap !important; justify-content: center; gap: 1.25rem;
}
.wp-block-columns.mr-cards--grid > .wp-block-column { flex: 1 1 100% !important; max-width: 100%; }
@media (min-width: 640px) {
	.wp-block-columns.mr-cards--grid > .wp-block-column { flex: 0 1 calc(50% - .625rem) !important; }
}
@media (min-width: 1024px) {
	.wp-block-columns.mr-cards--grid > .wp-block-column { flex: 0 1 calc(33.333% - .84rem) !important; }
	.wp-block-columns.mr-cards--4 > .wp-block-column { flex: 0 1 calc(25% - .94rem) !important; }
}
.mr-cards--compact .mr-card { padding: 1.35rem 1.4rem; }
.mr-cards--compact .mr-card[class*="mr-ico-"]::before { width: 40px; height: 40px; border-radius: 12px; margin-bottom: .9rem; background-size: 20px 20px; }
.mr-cards--compact .mr-card > h3 { font-size: 1.0625rem; line-height: 1.3; }

/* Mosaico emozionale (sezione scura) */
.mr-mosaic { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; max-width: 400px; margin-inline: auto; }
.mr-mosaic__tile {
	position: relative; overflow: hidden; border-radius: 22px; aspect-ratio: 4 / 4.4;
	background: linear-gradient(165deg, #F0632A 0%, #D9009E 100%);
	box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .6);
}
.mr-mosaic__tile:nth-child(2) { margin-top: 36px; background: linear-gradient(165deg, #E8306A 0%, #5B1A8C 100%); }
.mr-mosaic__tile:nth-child(3) { margin-top: -36px; background: linear-gradient(165deg, #D9009E 0%, #2A0F5C 100%); }
.mr-mosaic__tile:nth-child(4) { background: linear-gradient(165deg, #F59A6E 0%, #E32D4D 100%); }
.mr-mosaic__tile b {
	position: absolute; left: 12px; bottom: 12px; z-index: 2;
	padding: 4px 10px; border-radius: 999px; background: rgba(4, 1, 43, .55); color: #fff; font-size: .75rem; font-weight: 600;
	-webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.mr-mosaic__tile .mr-play-mark { width: 44px; height: 44px; margin: -22px 0 0 -22px; }
.mr-mosaic__tile .mr-play-mark::after { display: none; }
.mr-mosaic__tile:hover .mr-play-mark { transform: scale(1.1); }

/* Diagramma: Talento → Profilo + Video → Matchreel → Interesse → Azienda */
.mr-flow-v {
	list-style: none; margin: 0 auto; padding: 0;
	max-width: 360px; display: grid; gap: 34px;
	counter-reset: none;
}
.mr-flow-v li {
	position: relative;
	display: flex; align-items: center; gap: 14px;
	padding: 14px 18px; border-radius: 18px; background: #fff;
	border: 1px solid var(--mr-border); box-shadow: var(--mr-shadow-sm);
	font-weight: 700; color: var(--mr-text);
}
.mr-flow-v li small { display: block; font-weight: 500; font-size: .8125rem; color: var(--mr-muted); }
.mr-flow-v li + li::before { /* freccia */
	content: ""; position: absolute; left: 50%; top: -30px; width: 2px; height: 22px; margin-left: -1px;
	background: linear-gradient(var(--mr-orange), var(--mr-magenta));
}
.mr-flow-v li + li::after {
	content: ""; position: absolute; left: 50%; top: -11px; margin-left: -5px;
	border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 7px solid var(--mr-magenta);
}
.mr-flow-v__icon {
	display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; flex: none;
	background: var(--mr-icon) center / 22px 22px no-repeat, var(--mr-grad);
}
.mr-flow-v li.is-brand {
	background: var(--mr-navy); border-color: var(--mr-navy); color: #fff;
	box-shadow: 0 24px 50px -24px rgba(4, 1, 43, .7);
}
.mr-flow-v li.is-brand small { color: rgba(255, 255, 255, .7); }
.mr-flow-v li.is-brand .mr-flow-v__icon { background: #fff url("../img/matchreel-mark.webp") center / 80% no-repeat; border-radius: 50%; }
p.mr-flow-caption { max-width: 360px; margin: 1.5rem auto 0 !important; text-align: center; font-weight: 700; color: var(--mr-text); }
p.mr-flow-caption span { display: block; font-weight: 500; color: var(--mr-muted); }

/* Teaser "Sei un talento?" in home */
.wp-block-group.mr-talent-band {
	position: relative; overflow: hidden;
	border-radius: var(--mr-radius-lg);
	border: 1px solid var(--mr-border);
	background:
		radial-gradient(40% 120% at 100% 50%, rgba(217, 0, 158, .08) 0%, rgba(217, 0, 158, 0) 70%),
		#fff;
	padding: clamp(1.75rem, 4vw, 2.5rem) clamp(1.25rem, 4vw, 2.75rem);
}
.mr-talent-band .wp-block-columns { align-items: center; gap: 1.5rem 3rem; margin: 0; }
.mr-talent-band h2 { margin-top: .75rem; font-size: clamp(1.6rem, 3vw, 2.1rem); }
.mr-talent-band p.mr-talent-band__text { margin-top: .5rem; color: var(--mr-muted); font-size: 1.0625rem; }
.mr-talent-band .mr-talent-band__cta { text-align: left; }
.mr-talent-band .wp-block-buttons { gap: .5rem 1.25rem; align-items: center; }
.mr-talent-band .mr-micro { margin-top: .75rem; }
@media (min-width: 782px) {
	.mr-talent-band .wp-block-column.mr-talent-band__cta { flex: 0 0 auto !important; }
}
.mr-flow-v__icon::before { display: none !important; }
@media (max-width: 639px) {
	/* Card della griglia talenti più compatte su smartphone: icona a sinistra */
	.wp-block-columns.mr-cards--grid { gap: .75rem; }
	.mr-cards--grid .wp-block-column.mr-card {
		display: grid; grid-template-columns: 44px 1fr; column-gap: 1rem; align-items: start;
		padding: 1.1rem 1.15rem;
	}
	.mr-cards--grid .mr-card[class*="mr-ico-"]::before { grid-row: 1 / span 2; width: 44px; height: 44px; margin: 0; border-radius: 12px; background-size: 22px 22px; }
	.mr-cards--grid .mr-card > h3 { align-self: center; }
	.mr-cards--grid .mr-card > p { margin-top: .25rem; }
}
.wp-block-group.mr-talent-band > .wp-block-columns { max-width: none !important; width: 100%; }
.mr-section.mr-section--talent { padding-bottom: clamp(1.5rem, 3vw, 2.5rem); }
@media (min-width: 782px) {
	.mr-talent-band .mr-talent-band__cta { display: flex; flex-direction: column; align-items: flex-end; }
	.mr-talent-band .mr-talent-band__cta > * { margin-inline: 0 !important; }
}
@media (max-width: 1099px) { .mr-mock-profile__float { right: 8px; } }

/* ==========================================================================
   Pre-lancio e prenotazioni (v1.3)
   ========================================================================== */

/* Contatore posti */
.mr-seats { display: inline-grid; gap: .45rem; min-width: min(100%, 340px); }
.mr-seats__label { font-size: .875rem; font-weight: 600; color: var(--mr-text); }
.mr-seats__bar { display: block; height: 8px; border-radius: 999px; background: #EFE7EF; overflow: hidden; }
.mr-seats__bar span { display: block; height: 100%; border-radius: inherit; background: var(--mr-grad); }
.mr-seats--plain { font-size: .875rem; font-weight: 600; color: var(--mr-primary); }
p.mr-seats-wrap { margin-top: 1.5rem; }
.is-style-mr-dark .mr-seats__label { color: #fff; }

/* Biglietto "-50%" nell'hero */
.mr-ticket {
	position: relative; display: grid; gap: .35rem;
	max-width: 380px; margin-inline: auto; padding: 16px 16px 22px;
	border-radius: 28px; background: #fff; border: 1px solid var(--mr-border);
	box-shadow: 0 50px 90px -40px rgba(4, 1, 43, .45);
	transform: rotate(-1.5deg);
}
.mr-ticket__video {
	position: relative; display: block; aspect-ratio: 16 / 11; border-radius: 18px; overflow: hidden; margin-bottom: .75rem;
	background: radial-gradient(60% 55% at 75% 15%, rgba(255, 255, 255, .28) 0%, rgba(255, 255, 255, 0) 70%), linear-gradient(160deg, #F0632A 0%, #E8306A 50%, #D9009E 100%);
}
.mr-ticket__badge {
	position: absolute; top: -18px; right: -14px; z-index: 3;
	display: grid; place-items: center; width: 96px; height: 96px; border-radius: 50%;
	background: var(--mr-navy); color: #fff; font-size: 1.6rem; font-weight: 800; letter-spacing: -.03em;
	box-shadow: 0 20px 40px -16px rgba(4, 1, 43, .6), inset 0 0 0 3px rgba(255, 255, 255, .15);
	transform: rotate(8deg);
}
.mr-ticket__title { padding: 0 6px; font-size: 1.25rem; font-weight: 800; letter-spacing: -.02em; color: var(--mr-text); }
.mr-ticket__sub { padding: 0 6px; font-size: .875rem; color: var(--mr-muted); }
.mr-ticket__code {
	display: grid; margin: .75rem 6px 0; padding: .8rem 1rem; border-radius: 14px;
	border: 1.5px dashed rgba(217, 0, 158, .45); background: var(--mr-grad-soft);
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 1.125rem; font-weight: 700; letter-spacing: .12em; color: var(--mr-primary);
}
.mr-ticket__code small { font-family: Inter, Arial, sans-serif; font-size: .6875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--mr-muted); font-weight: 600; }
.mr-ticket__float {
	position: absolute; left: -16px; top: 42%; z-index: 3;
	display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 14px; background: #fff;
	box-shadow: 0 18px 40px -18px rgba(4, 1, 43, .45); border: 1px solid var(--mr-border);
	font-size: .75rem; font-weight: 700; color: var(--mr-text);
	animation: mr-float 7s ease-in-out infinite;
}
.mr-ticket__float::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #F79009; box-shadow: 0 0 0 4px rgba(247, 144, 9, .2); }
@media (max-width: 599px) {
	.mr-ticket { transform: none; }
	.mr-ticket__badge { width: 76px; height: 76px; font-size: 1.25rem; right: -4px; }
	.mr-ticket__float { left: 8px; }
}

/* Prezzi barrati */
.mr-price s { color: var(--mr-muted); font-weight: 600; margin-right: .35rem; text-decoration-thickness: 2px; text-decoration-color: rgba(217, 0, 158, .6); }
.mr-plan--dark .mr-price s { color: rgba(255, 255, 255, .6); }

/* Tre step */
@media (min-width: 782px) { .wp-block-columns.mr-steps--3 > .wp-block-column { flex-basis: 0 !important; } }

/* Riquadro modulo */
.wp-block-group.mr-booking-card {
	border-radius: var(--mr-radius-lg);
	background:
		radial-gradient(50% 70% at 0% 0%, rgba(233, 75, 25, .08) 0%, rgba(233, 75, 25, 0) 60%),
		radial-gradient(50% 70% at 100% 100%, rgba(217, 0, 158, .08) 0%, rgba(217, 0, 158, 0) 60%),
		#fff;
	border: 1px solid var(--mr-border);
	box-shadow: var(--mr-shadow);
	padding: clamp(1.5rem, 4vw, 3rem);
}
.wp-block-group.mr-booking-card > .wp-block-columns { max-width: none !important; width: 100%; margin: 0; gap: 2rem 3.5rem; }
.mr-booking__intro > h2 { margin-top: 1rem; }
@media (min-width: 900px) { .wp-block-column.mr-booking__form { flex: 0 0 56% !important; } }
.mr-panel--form .mr-form, .mr-panel--form .mr-form-result { max-width: 720px; margin: 1.5rem auto 0; text-align: left; }
.mr-panel--form .mr-privacy-notice { max-width: 720px; margin: 2rem auto 0; text-align: left; }

/* Modulo */
.mr-form { display: grid; gap: 1.25rem; }
.mr-form__grid { display: grid; gap: 1rem 1.25rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .mr-form__grid { grid-template-columns: 1fr 1fr; } .mr-field--full { grid-column: 1 / -1; } }
.mr-field { margin: 0; display: grid; gap: .4rem; }
.mr-field label { font-size: .875rem; font-weight: 600; color: var(--mr-text); }
.mr-req { color: var(--mr-primary); }
.mr-opt { font-weight: 400; color: var(--mr-muted); }
.mr-field input, .mr-field select {
	width: 100%; min-height: 48px; padding: .7rem .9rem;
	border: 1.5px solid var(--mr-border); border-radius: 12px; background: #fff;
	font: 400 1rem/1.3 Inter, Arial, sans-serif; color: var(--mr-text);
	transition: border-color .15s, box-shadow .15s;
}
.mr-field input:focus, .mr-field select:focus { outline: none; border-color: var(--mr-primary); box-shadow: 0 0 0 4px rgba(217, 0, 158, .14); }
.mr-field input:user-invalid, .mr-field select:user-invalid { border-color: #D92D20; }
.mr-checks { display: grid; gap: .65rem; }
.mr-check { display: flex; gap: .65rem; align-items: flex-start; font-size: .9375rem; line-height: 1.45; color: #3B3852; cursor: pointer; }
.mr-check input { flex: none; width: 20px; height: 20px; margin: .1rem 0 0; accent-color: var(--mr-primary); }
.mr-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.mr-form__submit { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; margin: .25rem 0 0; }
.mr-form__submit .mr-btn { border: 0; }
.mr-form__note { font-size: .8125rem; color: var(--mr-muted); }
.mr-form__legal { margin: 0; font-size: .8125rem; color: var(--mr-muted); }
@media (max-width: 599px) { .mr-form__submit .mr-btn { width: 100%; } }
.mr-form-result { padding: 1rem 1.25rem; border-radius: 14px; background: var(--mr-surface); border: 1px solid var(--mr-border); }
.mr-form-result p { margin: 0; }
.mr-form-result--ok { background: #ECFDF3; border-color: #ABEFC6; color: #05603A; }
.mr-form-result--ok .mr-form-result__title { font-weight: 800; font-size: 1.125rem; margin-bottom: .35rem; }
.mr-form-result--error { background: #FEF3F2; border-color: #FECDCA; color: #B42318; margin-bottom: 1rem; }
.mr-privacy-notice p { font-size: .875rem; }

/* Condivisione */
.wp-block-group.mr-share-box { text-align: center; }
.mr-share-box > * { margin-inline: auto; }
.mr-share { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem; margin-top: 1.5rem; }
.mr-share__btn {
	display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: .55rem 1.1rem;
	border-radius: 999px; border: 1.5px solid var(--mr-border); background: #fff;
	font: 600 .9375rem/1 Inter, Arial, sans-serif; color: var(--mr-text); text-decoration: none; cursor: pointer;
	transition: border-color .15s, color .15s, transform .15s;
}
.mr-share__btn::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: currentColor; opacity: .9; }
.mr-share__btn:hover { transform: translateY(-1px); border-color: currentColor; }
.mr-share__btn--linkedin { color: #0A66C2; }
.mr-share__btn--facebook { color: #1877F2; }
.mr-share__btn--whatsapp { color: #128C4A; }
.mr-share__btn--x { color: #111; }
.mr-share__btn--email, .mr-share__btn--copy { color: var(--mr-primary); }
.mr-share__btn.is-done { background: #ECFDF3; border-color: #ABEFC6; color: #05603A; }

/* Condizioni */
.mr-section--conditions { padding-top: clamp(2rem, 5vw, 3.5rem); padding-bottom: clamp(2rem, 5vw, 3.5rem); }
.mr-conditions-box { max-width: 820px; margin-inline: auto; }
.mr-conditions { margin: 1rem 0 0; padding-left: 1.25rem; display: grid; gap: .6rem; font-size: .875rem; color: var(--mr-muted); }

/* Avviso demo (pagina App) */
.mr-demo-notice {
	max-width: var(--wp--style--global--wide-size, 1200px); margin: clamp(1.5rem, 4vw, 2.5rem) auto 0 !important;
	padding: 1.25rem 1.5rem; border-radius: var(--mr-radius);
	background: var(--mr-navy); color: rgba(255, 255, 255, .85);
	box-shadow: var(--mr-shadow);
}
.mr-demo-notice p { margin: 0 0 .5rem; }
.mr-demo-notice__title { color: #fff; font-weight: 800; font-size: 1.125rem; }
.mr-demo-notice__actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.25rem; margin: .75rem 0 0 !important; }
.mr-demo-notice__link { color: #FF9ED9; font-weight: 600; text-decoration: none; }
.mr-price s { display: block; width: max-content; margin: 0 0 .2rem; font-size: .9375rem; }
.mr-price__per { display: block; margin-top: .2rem; font-size: .9375rem; }
.mr-price s + strong { font-size: clamp(1.9rem, 2.6vw, 2.3rem); }

html { scroll-padding-top: 110px; }

/* ==========================================================================
   Tariffe: cosa include ogni piano (v1.4)
   ========================================================================== */
ul.mr-plan__features { margin: 1.1rem 0 0 !important; font-size: .9rem; }
ul.mr-plan__features li { margin: .45rem 0; padding-left: 1.75rem; font-weight: 500; line-height: 1.4; }
ul.mr-plan__features li::before { width: 1.1rem; height: 1.1rem; top: .1em; }
ul.mr-plan__features li::after { left: .36rem; top: .27em; width: .3rem; height: .55rem; }
.mr-plan--dark ul.mr-plan__features li { color: rgba(255, 255, 255, .88); }

.mr-section--plans-table { padding-top: clamp(1rem, 3vw, 2rem); }
.wp-block-group.mr-plans-table-wrap { max-width: var(--wp--style--global--wide-size, 1200px); }
.wp-block-table.mr-plans-table {
	margin: 0; overflow-x: auto; -webkit-overflow-scrolling: touch;
	border: 1px solid var(--mr-border); border-radius: var(--mr-radius); background: #fff; box-shadow: var(--mr-shadow-sm);
}
.wp-block-table.mr-plans-table table { min-width: 760px; width: 100%; border-collapse: collapse; table-layout: fixed; font-size: .9375rem; }
.wp-block-table.mr-plans-table th, .wp-block-table.mr-plans-table td {
	border: 0; border-bottom: 1px solid var(--mr-border); padding: .85rem 1rem; text-align: center; vertical-align: middle; line-height: 1.35;
}
.wp-block-table.mr-plans-table thead th {
	background: var(--mr-surface); font-size: 1rem; font-weight: 800; color: var(--mr-text); border-bottom: 2px solid var(--mr-border);
}
.wp-block-table.mr-plans-table thead th:nth-child(3) { background: linear-gradient(180deg, rgba(217, 0, 158, .08), rgba(233, 75, 25, .05)); }
.wp-block-table.mr-plans-table thead th:last-child { background: var(--mr-navy); color: #fff; }
.mr-plans-table__price { display: inline-block; margin-top: .2rem; font-weight: 600; font-size: .875rem; color: var(--mr-muted); }
.wp-block-table.mr-plans-table thead th:last-child .mr-plans-table__price { color: rgba(255, 255, 255, .7); }
.wp-block-table.mr-plans-table th:first-child, .wp-block-table.mr-plans-table td:first-child {
	width: 30%; text-align: left; font-weight: 600; color: var(--mr-text); position: sticky; left: 0; background: #fff; z-index: 1;
}
.wp-block-table.mr-plans-table thead th:first-child { background: var(--mr-surface); }
.wp-block-table.mr-plans-table tbody td:nth-child(3) { background: rgba(217, 0, 158, .035); font-weight: 600; }
.wp-block-table.mr-plans-table tbody tr:last-child td { border-bottom: 0; }
.wp-block-table.mr-plans-table tbody tr:hover td { background-color: rgba(233, 75, 25, .03); }
p.mr-plans-note { max-width: 860px; margin: 1.25rem auto 0 !important; text-align: center; font-size: .9375rem; color: var(--mr-muted); }
@media (max-width: 781px) {
	.wp-block-table.mr-plans-table th:first-child, .wp-block-table.mr-plans-table td:first-child { width: 190px; box-shadow: 6px 0 10px -8px rgba(4, 1, 43, .25); }
}
.wp-block-group.mr-plans-table-wrap > .wp-block-table { max-width: none !important; width: 100%; }
.wp-block-table.mr-plans-table thead, .wp-block-table.mr-plans-table tfoot { border: 0; }
.wp-block-table.mr-plans-table td, .wp-block-table.mr-plans-table th { hyphens: manual; overflow-wrap: normal; word-break: normal; }
@media (max-width: 781px) {
	.wp-block-group.mr-plans-table-wrap::before {
		content: "Scorri la tabella per confrontare tutti i piani →";
		display: block; margin: 0 0 .6rem; text-align: right; font-size: .8125rem; font-weight: 600; color: var(--mr-primary);
	}
}
