/* Académie de Beauté — stili del tema (caricati anche nell'editor) */

html {
	scroll-padding-top: 130px;
}
@media (prefers-reduced-motion: no-preference) {
	html {
		scroll-behavior: smooth;
	}
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Sezioni una sotto l'altra, senza spazi bianchi tra intestazione, contenuto e piè di pagina */
.wp-site-blocks > * + * {
	margin-block-start: 0;
}
.wp-block-post-content > .alignfull {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* Titoli: le parole in corsivo prendono il colore principale */
:where(h1, h2, h3) em {
	color: var(--wp--preset--color--accent);
	font-style: italic;
}

/* ---------- Intestazione ---------- */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 50;
}
.academie-header {
	background: rgba(255, 255, 255, 0.96);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.academie-nav .wp-block-navigation-item__content {
	color: #3d3632;
	text-decoration: none;
	padding-block: 12px;
}
.academie-nav .wp-block-navigation-item__content:hover,
.academie-nav .wp-block-navigation-item__content:focus-visible {
	color: var(--wp--preset--color--accent);
}
.academie-nav .academie-nav-cta > .wp-block-navigation-item__content {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base);
	padding: 12px 20px;
	border-radius: var(--wp--custom--radius);
	min-height: 44px;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
}
.academie-nav .academie-nav-cta > .wp-block-navigation-item__content:hover,
.academie-nav .academie-nav-cta > .wp-block-navigation-item__content:focus-visible {
	background: var(--wp--preset--color--accent-dark);
	color: var(--wp--preset--color--base);
}
.academie-nav .wp-block-navigation__responsive-container-open,
.academie-nav .wp-block-navigation__responsive-container-close {
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
}
.academie-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
	gap: 8px;
}

/* ---------- Testi ricorrenti ---------- */
.is-style-eyebrow {
	font-size: 12px !important;
	font-weight: 600;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent);
	margin-block-end: 0;
}
.is-style-eyebrow + :where(h1, h2) {
	margin-block-start: 14px;
}
.academie-label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--wp--preset--color--label);
	margin: 0;
}
.academie-display {
	font-family: var(--wp--preset--font-family--display);
	font-size: 22px;
	line-height: 1.2;
	margin: 0;
}
.academie-num {
	font-family: var(--wp--preset--font-family--display);
	font-size: 30px;
	line-height: 1;
	color: var(--wp--preset--color--accent);
	margin: 0;
}
h3.academie-h-sans {
	font-family: var(--wp--preset--font-family--body);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0;
	margin-block: 10px 6px;
}
.academie-rule {
	border-top: 1px solid var(--wp--preset--color--ink);
	padding-top: 18px;
}
.academie-rule > * + * {
	margin-block-start: 0;
}
.academie-textlink a {
	display: inline-block;
	color: var(--wp--preset--color--ink);
	text-decoration: none;
	border-bottom: 1px solid currentColor;
	padding: 12px 0 4px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.academie-textlink a:hover,
.academie-textlink a:focus-visible {
	color: var(--wp--preset--color--accent);
}
.academie-intro-side {
	max-width: 420px;
	margin: 0;
}

/* ---------- Pulsanti ---------- */
/* Grigio di base, colore pieno con testo bianco al passaggio */
.wp-block-button.is-style-grigio .wp-block-button__link {
	background: var(--wp--preset--color--stone);
	border-color: var(--wp--preset--color--stone);
	color: var(--wp--preset--color--muted);
}
.wp-block-button.is-style-grigio .wp-block-button__link:hover,
.wp-block-button.is-style-grigio .wp-block-button__link:focus-visible {
	background: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base);
}
/* Bianco, per le fasce colorate */
.wp-block-button.is-style-chiaro .wp-block-button__link {
	background: var(--wp--preset--color--base);
	border-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--ink);
}
.wp-block-button.is-style-chiaro .wp-block-button__link:hover,
.wp-block-button.is-style-chiaro .wp-block-button__link:focus-visible {
	background: var(--wp--preset--color--ink);
	border-color: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--base);
}
.wp-block-button__link {
	min-height: 44px;
	box-sizing: border-box;
}
a:focus-visible,
.wp-element-button:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 3px;
}
.academie-cta a:focus-visible,
.academie-footer a:focus-visible {
	outline-color: var(--wp--preset--color--base);
}

/* ---------- Apertura ---------- */
.academie-hero-media {
	position: relative;
}
.academie-hero-media .wp-block-image {
	margin: 0;
}
.academie-hero-media .wp-block-image img {
	width: 100%;
}
.academie-floating-card {
	position: absolute;
	left: -24px;
	bottom: 32px;
	max-width: 280px;
	padding: 20px 24px;
	border-radius: var(--wp--custom--radius);
	box-shadow: 0 18px 40px rgba(30, 26, 24, 0.12);
	margin: 0 !important;
}
.academie-floating-card > * + * {
	margin-block-start: 6px;
}
@media (max-width: 781px) {
	.academie-floating-card {
		position: relative;
		left: auto;
		bottom: auto;
		margin: -48px 16px 0 !important;
	}
	.academie-hero-media .wp-block-image img {
		height: 380px !important;
	}
}

/* ---------- Striscia dei brand ---------- */
.academie-brand-strip {
	border-top: 1px solid var(--wp--preset--color--line);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.academie-brand-strip .wp-block-image {
	margin: 0;
}

/* ---------- Brand ---------- */
.academie-brand-tile {
	min-height: 380px;
	background: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius);
	padding: 24px;
	box-sizing: border-box;
	margin-block-end: 22px;
}
.academie-brand-tile .wp-block-image {
	margin: 0;
	max-width: 70%;
}
.academie-brand-tile .wp-block-image img {
	height: auto;
}
h3.academie-brand-name {
	font-size: 36px;
	letter-spacing: 0.04em;
	margin-block-start: 8px;
}

/* ---------- Schede (sale) ---------- */
.academie-card {
	border-radius: var(--wp--custom--radius);
	overflow: hidden;
	height: 100%;
}
.academie-card > .wp-block-image {
	margin: 0;
}
.academie-card > .wp-block-image img {
	width: 100%;
	border-radius: 0;
}
.academie-card > * + * {
	margin-block-start: 0;
}

/* ---------- Formazione: riquadri divisi da linee sottili ---------- */
.academie-lines {
	gap: 1px !important;
	background: var(--wp--preset--color--line);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius);
	overflow: hidden;
}
.academie-lines > * {
	background: var(--wp--preset--color--base);
	padding: 32px;
	margin: 0 !important;
}
.academie-lines > * > * + * {
	margin-block-start: 8px;
}

/* ---------- Galleria ---------- */
.wp-block-cover.is-light .wp-block-cover__inner-container {
	color: var(--wp--preset--color--muted);
}

/* ---------- Fascia colorata ---------- */
.academie-cta .is-style-eyebrow {
	color: rgba(255, 255, 255, 0.85);
}
.academie-cta-quote {
	font-style: italic;
	line-height: 1.15;
	margin-block: 20px 28px;
}

/* ---------- Contatti ---------- */
.academie-map {
	background: var(--wp--preset--color--soft);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius);
	padding: 28px;
}
.academie-map > * + * {
	margin-block-start: 10px;
}
.academie-map .wp-block-buttons {
	margin-block-start: 18px;
}
.wp-block-group.is-style-scheda {
	background: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius);
	box-shadow: var(--wp--custom--shadow);
	padding: clamp(24px, 4vw, 40px);
}
.academie-contatti-placeholder {
	margin-top: 20px;
	padding: 20px;
	border: 1px dashed var(--wp--preset--color--warm-grey);
	background: var(--wp--preset--color--soft);
	color: var(--wp--preset--color--muted);
	font-size: 15px;
	border-radius: var(--wp--custom--radius);
}

/* ---------- Piè di pagina ---------- */
.academie-footer a {
	color: var(--wp--preset--color--greige);
	text-decoration: none;
}
.academie-footer a:hover {
	color: var(--wp--preset--color--base);
	text-decoration: underline;
}
.academie-footer .academie-label {
	color: var(--wp--preset--color--warm-grey);
	margin-block-end: 12px;
}
.academie-footer .wp-block-image {
	margin: 0;
}
.academie-copyright {
	border-top: 1px solid #3d3632;
	padding-top: 24px;
	margin-block-start: var(--wp--preset--spacing--60) !important;
	color: var(--wp--preset--color--warm-grey);
}

/* ---------- Tabelle (cookie policy) ---------- */
.wp-block-table table {
	font-size: 15px;
	border-collapse: collapse;
}
.wp-block-table th {
	background: var(--wp--preset--color--soft);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: left;
}
.wp-block-table th,
.wp-block-table td {
	border: 1px solid var(--wp--preset--color--line);
	padding: 12px 14px;
	vertical-align: top;
}
@media (max-width: 600px) {
	.wp-block-table {
		overflow-x: auto;
	}
	.wp-block-table table {
		min-width: 560px;
	}
}

@media (max-width: 600px) {
	.wp-block-cover.is-light {
		min-height: 260px !important;
	}
}

/* Menu a tutto schermo sul telefono */
.academie-nav .wp-block-navigation__responsive-container.is-menu-open {
	padding: 24px;
}
.academie-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: flex-start;
	padding-top: 64px;
}
.academie-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: flex-start;
	gap: 4px;
}
.academie-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-size: 15px;
	padding: 12px 0 !important;
}
.academie-nav .wp-block-navigation__responsive-container.is-menu-open .academie-nav-cta {
	margin-top: 16px;
}
.academie-nav .wp-block-navigation__responsive-container.is-menu-open .academie-nav-cta > .wp-block-navigation-item__content {
	padding: 14px 24px !important;
}
