/*
 * Fiore: solo quello che theme.json non sa esprimere.
 * Valori sempre dai preset (--wp--preset--*), mai colori o misure scritti a mano.
 */

/* ---------- base ---------- */
html { -webkit-text-size-adjust: 100%; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
h1, h2, h3 { text-wrap: balance; }
:focus-visible { outline: 2px solid var(--wp--preset--color--ink); outline-offset: 3px; }
img { height: auto; }

/* ---------- etichetta: maiuscoletto spaziato ---------- */
.is-style-label {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 900;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink);
}

/* ---------- titolo in due tempi: la seconda metà in grigio, senza corsivo ---------- */
.is-style-two-tone em { font-style: normal; color: var(--wp--preset--color--muted); }
.is-style-dark .is-style-two-tone em { color: var(--wp--custom--on-dark--muted); }

/* ---------- bottoni ---------- */
.wp-block-button__link { min-height: var(--wp--custom--touch); display: inline-flex; align-items: center; justify-content: center; transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
.is-style-line .wp-block-button__link { background: transparent; color: var(--wp--preset--color--ink); }
.is-style-line .wp-block-button__link:hover { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--paper); }
.is-style-light .wp-block-button__link { background: var(--wp--preset--color--paper); color: var(--wp--preset--color--ink); border-color: var(--wp--preset--color--paper); }
.is-style-light .wp-block-button__link:hover { background: var(--wp--preset--color--paper-alt); }
.is-style-ghost .wp-block-button__link { background: transparent; color: var(--wp--preset--color--paper); border-color: rgba(255,255,255,.55); }
.is-style-ghost .wp-block-button__link:hover { border-color: var(--wp--preset--color--paper); }

/* ---------- sezioni ---------- */
.is-style-paper-alt { background: var(--wp--preset--color--paper-alt); }
.is-style-dark { background: var(--wp--preset--color--black); color: var(--wp--custom--on-dark--body); }
.is-style-dark :where(h1, h2, h3, .is-style-label) { color: var(--wp--preset--color--paper); }
.is-style-dark a:where(:not(.wp-block-button__link)) { color: var(--wp--preset--color--paper); }

/* ---------- barra in alto ---------- */
.fiore-topbar {
	position: relative; z-index: 61;
	min-height: 32px; display: flex; align-items: center; justify-content: center;
	font-size: var(--wp--preset--font-size--label); letter-spacing: .12em; text-transform: uppercase;
}
.fiore-topbar p { margin: 0; color: var(--wp--preset--color--paper); }

/* ---------- testata ---------- */
.fiore-header {
	position: relative; z-index: 60;
	background: var(--wp--preset--color--paper);
	border-bottom: 1px solid var(--wp--preset--color--line);
	transition: background-color .35s, border-color .35s;
}
.fiore-header .fiore-logo figure { margin: 0; }
.fiore-header .fiore-logo img { height: 32px; width: auto; display: block; }
.fiore-header .fiore-logo--light { display: none; }
.fiore-header .wp-block-navigation { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.fiore-header .wp-block-navigation a { text-decoration: none; }

/* Sulla home la testata sta sopra la foto, trasparente, finché non si scorre. */
.home .fiore-header:not(.is-scrolled) { background: transparent; border-color: transparent; }
.home .fiore-header:not(.is-scrolled) .fiore-logo--light { display: block; }
.home .fiore-header:not(.is-scrolled) .fiore-logo--dark { display: none; }
/* Il pallino del carrello: WooCommerce gli scrive in linea i colori una volta sola, presi dalla testata al
   caricamento. Sulla home diventava bianco su bianco, sia sulla foto sia dopo lo scorrimento (visto su
   staging il 2026-10-19). Da qui l'!important, per ogni stato della testata. */
.fiore-header .wc-block-mini-cart__badge { background-color: var(--wp--preset--color--ink) !important; color: var(--wp--preset--color--paper) !important; }
.home .fiore-header:not(.is-scrolled) .wc-block-mini-cart__badge { background-color: var(--wp--preset--color--paper) !important; color: var(--wp--preset--color--ink) !important; }
@media (prefers-reduced-motion: reduce) { .fiore-header { transition: none; } }

/* ---------- piede ---------- */
.fiore-footer a { text-decoration: none; }
.fiore-footer a:hover { text-decoration: underline; text-underline-offset: 4px; }
.fiore-footer .fiore-footer__col p { margin-block: 0 10px; }
.fiore-footer__legal { font-size: var(--wp--preset--font-size--note); color: var(--wp--preset--color--muted); }

/* ---------- segnaposto per le foto che mancano ---------- */
.fiore-slot {
	display: flex; align-items: center; justify-content: center; text-align: center;
	aspect-ratio: 4 / 5; padding: 24px;
	background: var(--wp--preset--color--paper-alt);
	border: 1px dashed var(--wp--preset--color--line-strong);
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--note);
}

/* ---------- apertura (blocco fiore/hero) ---------- */
.fiore-hero {
	position: relative; overflow: hidden; isolation: isolate;
	display: flex; align-items: flex-start;
	min-height: max(600px, calc(100vh - 32px)); /* riserva per i Safari senza svh */
	min-height: max(600px, calc(100svh - 32px));
	background: var(--wp--preset--color--black); color: var(--wp--preset--color--paper);
	margin-block: 0 !important;
}
.fiore-hero__media, .fiore-hero__media img, .fiore-hero__media-editor { position: absolute; inset: 0; width: 100%; height: 100%; }
.fiore-hero__media img, .fiore-hero__media-editor { object-fit: cover; object-position: var(--fiore-hero-pos-m, 50% 100%); }
.fiore-hero__veil { position: absolute; inset: 0; z-index: 1;
	background: linear-gradient(rgba(0,0,0,.84) 0%, rgba(0,0,0,.74) 38%, rgba(0,0,0,.32) 56%, rgba(0,0,0,0) 68%); }
.fiore-hero__content {
	position: relative; z-index: 2; width: 100%;
	padding: 110px var(--wp--preset--spacing--gutter) 48px;
	display: grid; gap: 12px; justify-items: center; text-align: center;
}
.fiore-hero__content > * { margin: 0 !important; }
.fiore-hero__content :where(h1, h2, p, .is-style-label) { color: var(--wp--preset--color--paper); }
.fiore-hero__content h1 { font-size: clamp(30px, 8.6vw, 40px); line-height: 1.08; max-width: 14em; }
.fiore-hero__content h1 em { color: inherit; font-style: normal; }
.fiore-hero__content p:not(.is-style-label) { color: var(--wp--custom--on-dark--body); max-width: 30ch; line-height: 1.5; }
.fiore-hero__content .wp-block-buttons { justify-content: center; gap: 10px; margin-top: 4px !important; }
@media (min-width: 782px) {
	.fiore-hero { align-items: center; min-height: max(640px, 100vh); min-height: max(640px, 100svh); }
	.fiore-hero__media img, .fiore-hero__media-editor { object-position: var(--fiore-hero-pos-d, 62% 22%); }
	.fiore-hero__veil { background:
		linear-gradient(rgba(0,0,0,.7) 0%, rgba(0,0,0,.5) 10%, rgba(0,0,0,0) 26%),
		linear-gradient(90deg, rgba(0,0,0,.86) 0%, rgba(0,0,0,.72) 28%, rgba(0,0,0,.28) 46%, rgba(0,0,0,0) 58%); }
	.fiore-hero__content {
		max-width: calc(1280px + 2 * var(--wp--preset--spacing--gutter)); margin-inline: auto;
		padding-block: calc(94px + clamp(32px, 5vw, 64px)) clamp(32px, 4vw, 56px);
		justify-items: start; text-align: left; gap: 16px;
	}
	.fiore-hero__content > * { max-width: 560px; }
	.fiore-hero__content h1 { font-size: var(--wp--preset--font-size--hero); }
	.fiore-hero__content p:not(.is-style-label) { max-width: 46ch; }
	.fiore-hero__content .wp-block-buttons { justify-content: flex-start; }
}
.fiore-hero.is-editing { min-height: 560px; }

/* ---------- utilità: testi diversi fra telefono e computer ---------- */
@media (min-width: 782px) { .fiore-only-mobile { display: none !important; } }
@media (max-width: 781px) { .fiore-only-desktop { display: none !important; } }

/* titolo dell'apertura: seconda metà in grigio chiaro, senza corsivo (decisione 2026-10-15) */
.fiore-hero .is-style-two-tone em { color: var(--wp--custom--on-dark--muted); }

/* ---------- home: intestazione di sezione ---------- */
.fiore-section-head { gap: 18px 40px; margin-bottom: clamp(26px, 4vw, 48px) !important; }
.fiore-section-head h2 { margin: 0 0 10px; }
.fiore-section-head p { margin: 0; max-width: 60ch; }
.fiore-link-arrow a { font-size: 12px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; text-underline-offset: 6px; }
.fiore-link-arrow a::after { content: " →"; }
.is-style-two-tone em { display: block; }

/* ---------- nastro con la recensione ---------- */
.fiore-ribbon { border-bottom: 1px solid var(--wp--preset--color--line); padding-block: 16px; }
.fiore-ribbon__quote { margin: 0; font-family: var(--wp--preset--font-family--serif); font-style: normal; font-size: clamp(18px, 1.7vw, 22px); color: var(--wp--preset--color--ink); }
.fiore-ribbon__by { display: inline-block; margin-left: 14px; font: 400 11px/1 var(--wp--preset--font-family--sans); font-style: normal; letter-spacing: .2em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
/* Solo se su telefono la recensione non entra intera (header.js). */
.fiore-ribbon__quote.is-moving { overflow: hidden; white-space: nowrap; text-align: left; }
.fiore-ribbon__track { display: inline-flex; }
.fiore-ribbon__track > span { padding-right: 64px; }

/* ---------- le più vendute ---------- */
.fiore-showcase .wc-block-product-template { gap: 16px !important; }
.fiore-showcase .wc-block-product { position: relative; margin: 0; }
.fiore-showcase .wc-block-components-product-image { margin: 0 !important; background: var(--wp--preset--color--paper-alt); }
.fiore-showcase .wc-block-components-product-image img { object-position: 50% 20%; }
.fiore-showcase__name {
	position: absolute; left: 14px; bottom: 14px; margin: 0 !important;
	background: var(--wp--preset--color--paper); padding: 10px 16px;
	font-size: 18px !important; line-height: 1.2; font-weight: 400;
}
.fiore-showcase__name a { text-decoration: none; color: var(--wp--preset--color--ink); }
@media (max-width: 781px) {
	.fiore-showcase .wc-block-product-template {
		display: flex !important; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
		margin-inline: calc(-1 * var(--wp--preset--spacing--gutter)); padding-inline: var(--wp--preset--spacing--gutter);
	}
	.fiore-showcase .wc-block-product { flex: 0 0 min(82%, 340px); scroll-snap-align: start; }
}

/* ---------- il Metodo ---------- */
.fiore-method { margin-block: 0 !important; }
.fiore-method .wp-block-media-text__content { padding: clamp(28px, 6vw, 80px) var(--wp--preset--spacing--gutter); display: grid; gap: 14px; }
.fiore-method .wp-block-media-text__content > * { margin: 0; }
.fiore-method h2 { color: var(--wp--preset--color--paper); line-height: 1; }
.fiore-serif-lead { font-family: var(--wp--preset--font-family--serif); font-style: normal; font-size: 20px; line-height: 1.35; color: var(--wp--preset--color--paper); }
@media (max-width: 600px) { .fiore-method .wp-block-media-text__media { aspect-ratio: 4 / 3; } .fiore-method .wp-block-button { width: 100%; } .fiore-method .wp-block-button__link { width: 100%; } }

/* ---------- recensioni ---------- */
.fiore-rating { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 14px; color: var(--wp--preset--color--ink); margin-top: 6px; }
.fiore-scroller {
	display: flex !important; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin;
	padding-bottom: 12px;
}
.fiore-scroller > * { flex: 0 0 min(360px, 82vw); scroll-snap-align: start; margin: 0 !important; }
.fiore-review {
	background: var(--wp--preset--color--paper); border: 1px solid var(--wp--preset--color--line-strong);
	padding: 26px 24px 22px; display: grid; gap: 18px; grid-template-rows: auto 1fr auto;
}
.fiore-review > * { margin: 0 !important; }
.fiore-review__text { font-family: var(--wp--preset--font-family--serif); font-size: 17px; line-height: 1.5; color: var(--wp--preset--color--ink); }
.fiore-review__by { display: grid; gap: 10px; border-top: 1px solid var(--wp--preset--color--line); padding-top: 14px; font-size: 15px; color: var(--wp--preset--color--ink); }
.fiore-review__by span { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--wp--preset--color--text); }

/* ---------- visita in boutique ---------- */
.fiore-visit { margin-top: clamp(28px, 6vw, 80px) !important; background: var(--wp--preset--color--paper); border: 1px solid var(--wp--preset--color--ink); gap: 0 !important; }
.fiore-visit__map { margin: 0; height: 100%; }
.fiore-visit__map img { width: 100%; height: 100%; min-height: 240px; object-fit: cover; display: block; }
.fiore-visit__text { padding: clamp(24px, 4vw, 52px) !important; display: grid; gap: 16px; }
.fiore-visit__text > * { margin: 0; }
@media (min-width: 782px) { .fiore-visit__text { border-left: 1px solid var(--wp--preset--color--line); } }

/* ---------- la camicia, adattata a te ---------- */
.fiore-cards { gap: clamp(16px, 2.4vw, 32px) !important; }
.fiore-card { display: grid; gap: 10px; align-content: start; border-top: 2px solid var(--wp--preset--color--ink); padding-top: 16px; }
.fiore-card > * { margin: 0 !important; }
.fiore-card__media, .fiore-card__media img { aspect-ratio: 16 / 9; width: 100%; object-fit: cover; }
.fiore-card .fiore-slot { aspect-ratio: 16 / 9; }
.fiore-card h3 { font-size: 21px; }
.fiore-card__cost { font-size: var(--wp--preset--font-size--note); font-weight: 700; color: var(--wp--preset--color--ink); }

/* ---------- video ---------- */
.fiore-videos { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px !important; }
@media (min-width: 782px) { .fiore-videos { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px !important; } }
.fiore-video { display: grid; gap: 10px; align-content: start; }
.fiore-video > * { margin: 0 !important; }
.fiore-video__cover img { aspect-ratio: 9 / 16; width: 100%; object-fit: cover; }
.fiore-video__title a { font-family: var(--wp--preset--font-family--serif); font-size: 15px; line-height: 1.3; color: var(--wp--preset--color--ink); text-decoration: none;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.fiore-video__platform { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--wp--preset--color--text); }
.fiore-videos + .wp-block-social-links { margin-top: clamp(28px, 4vw, 44px); }

/* ---------- la frase di Daniele ---------- */
.fiore-signature { margin-block: 0 !important; }
.fiore-signature__quote { font-family: var(--wp--preset--font-family--serif); font-style: normal; font-size: clamp(32px, 4.4vw, 60px); line-height: 1.12; color: var(--wp--preset--color--paper); margin-bottom: 20px; }
.fiore-signature .is-style-label { color: var(--wp--preset--color--paper); letter-spacing: .2em; font-weight: 400; }

/* niente spazio bianco fra le sezioni piene della home */
.home main > .wp-block-post-content > * { margin-block-start: 0; }

/* ---------- testata: bottone WhatsApp ---------- */
.fiore-header__cta .wp-block-button__link { min-height: 38px; padding: 10px 16px; font-size: 11.5px; border-width: 1px; }
.home .fiore-header:not(.is-scrolled) .fiore-header__cta .wp-block-button__link { color: var(--wp--preset--color--paper); border-color: rgba(255,255,255,.7); }

/* ---------- pagine lunghe (Metodo, guide) ---------- */
.fiore-page-head { border-bottom: 1px solid var(--wp--preset--color--line); }
.fiore-page-head > * { margin-block: 0 10px; }
.fiore-crumbs { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.fiore-crumbs a { color: var(--wp--preset--color--muted); text-decoration: none; }
.fiore-longpage { gap: clamp(24px, 5vw, 80px) !important; align-items: flex-start !important; }
@media (min-width: 782px) { .fiore-longpage__aside { position: sticky; top: 120px; } }
.fiore-toc { padding-left: 1.2em; margin: 10px 0 0; display: grid; gap: 8px; font-size: var(--wp--preset--font-size--small); }
.fiore-toc a { color: var(--wp--preset--color--ink); text-decoration: none; }
.fiore-toc a:hover { text-decoration: underline; text-underline-offset: 4px; }
.fiore-longpage__body { max-width: 760px; }
.fiore-longpage__body h2 { margin-top: clamp(40px, 6vw, 72px); scroll-margin-top: 120px; }
.fiore-pullquote { font-family: var(--wp--preset--font-family--serif); font-style: normal; font-size: clamp(22px, 2.6vw, 30px); line-height: 1.3; color: var(--wp--preset--color--ink); }
.fiore-figure { margin-block: 28px; }
.fiore-figure img { width: 100%; height: auto; display: block; }
.fiore-figure figcaption, .fiore-figure__caption { font-size: var(--wp--preset--font-size--note); color: var(--wp--preset--color--muted); margin-top: 8px; text-align: left; }
.fiore-figure figcaption strong, .fiore-figure__caption strong { color: var(--wp--preset--color--ink); }
.fiore-steps-grid { gap: 20px !important; }
.fiore-steps-grid .fiore-figure { margin: 0; }
.fiore-steps-grid img, .fiore-steps-grid .fiore-slot { aspect-ratio: 4 / 5; object-fit: cover; }
.fiore-two-worlds { gap: 0 !important; border-top: 2px solid var(--wp--preset--color--ink); }
.fiore-world { padding: 20px 20px 4px 0; }
.fiore-world + .fiore-world { padding-left: 20px; }
@media (min-width: 782px) { .fiore-world + .fiore-world { border-left: 1px solid var(--wp--preset--color--line-strong); } }
.fiore-video-box { background: var(--wp--preset--color--paper-alt); margin-top: clamp(40px, 6vw, 72px) !important; scroll-margin-top: 120px; }
.fiore-video-box .wp-block-media-text__media img { aspect-ratio: 4 / 5; object-fit: cover; }
.fiore-video-box .wp-block-media-text__content { padding: clamp(20px, 4vw, 44px); }
.fiore-video-box h2 { margin-top: 0; }
.fiore-closing-quote { border-top: 1px solid var(--wp--preset--color--line); margin-top: clamp(40px, 6vw, 72px); padding-top: 32px; }
.fiore-exit { gap: 0 !important; margin-block: 0 !important; }
.fiore-exit__shop, .fiore-exit__ask { padding: var(--wp--preset--spacing--section) var(--wp--preset--spacing--gutter) !important; }
.fiore-exit__shop { background: var(--wp--preset--color--paper-alt); }
.fiore-exit .fiore-showcase { margin-block: 24px; }

/* ---------- stiamo cambiando look (modalità «presto online») ---------- */
.fiore-soon { min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; justify-content: center; gap: 20px; padding: 64px var(--wp--preset--spacing--gutter); }
.fiore-soon > * { margin-block: 0 !important; }

/* ---------- articolo ---------- */
.fiore-article__meta { gap: 14px; align-items: center; font-size: var(--wp--preset--font-size--note); color: var(--wp--preset--color--muted); }
.fiore-article__meta .is-style-label a { color: inherit; text-decoration: none; }
.fiore-article__lead { color: var(--wp--preset--color--ink); }
.fiore-article__body > * + * { margin-top: 1.1em; }
.fiore-article__body h2 { margin-top: 1.8em; }
.fiore-guide-box { margin-top: var(--wp--preset--spacing--section) !important; border-top: 2px solid var(--wp--preset--color--ink); }
.fiore-guide-box > * { margin-block: 0 12px; }
.fiore-article-product { border-block: 1px solid var(--wp--preset--color--line-strong); padding-block: 20px; margin-block: 32px !important; }
.fiore-posts .wp-block-post { display: grid; gap: 10px; align-content: start; }
.fiore-posts .wp-block-post > * { margin: 0; }
.fiore-posts .wp-block-post-title a { text-decoration: none; color: var(--wp--preset--color--ink); }

/* ---------- testata: correzioni dopo la prima prova (2026-10-15) ---------- */
.wp-block-template-part:has(.fiore-header) > * { margin-block: 0 !important; }
.fiore-topbar { height: 32px; min-height: 0; padding-block: 0 !important; }
.fiore-topbar > * { margin-block: 0 !important; }
.fiore-header > * { margin-block: 0 !important; }

/* niente spazio automatico fra testata, contenuto e piede: ogni sezione ha già il suo respiro */
.wp-site-blocks > * { margin-block-start: 0 !important; }

/* ---------- tabelle e domande a fisarmonica nelle pagine ---------- */
.wp-block-table { overflow-x: auto; }
.wp-block-table table { border-collapse: collapse; width: 100%; font-size: var(--wp--preset--font-size--small); }
.wp-block-table :where(th, td) { border: 0; border-bottom: 1px solid var(--wp--preset--color--line); padding: 10px 8px; text-align: left; }
.wp-block-table thead { border-bottom: 2px solid var(--wp--preset--color--ink); }
.wp-block-table thead th { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.wp-block-post-content .wp-block-details { border-bottom: 1px solid var(--wp--preset--color--line-strong); padding: 0; margin: 0; }
.wp-block-post-content .wp-block-details:first-of-type { border-top: 1px solid var(--wp--preset--color--ink); }
.wp-block-post-content .wp-block-details summary { list-style: none; cursor: pointer; padding: 18px 32px 18px 0; position: relative; font-family: var(--wp--preset--font-family--serif); font-size: var(--wp--preset--font-size--h-3); color: var(--wp--preset--color--ink); }
.wp-block-post-content .wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-post-content .wp-block-details summary::after { content: "+"; position: absolute; right: 0; top: 16px; font: 400 22px/1 var(--wp--preset--font-family--sans); }
.wp-block-post-content .wp-block-details[open] summary::after { content: "−"; }
.wp-block-post-content .wp-block-details > :not(summary) { margin: 0 0 18px; }
.fiore-no-guide-band .fiore-footer > .is-style-dark:first-child { display: none; }
@media (min-width: 761px) {
}


/* ---------- testata e menu: correzioni dopo la revisione visiva (2026-10-15) ---------- */
/* La testata resta in alto scorrendo; sulla home sta sopra la foto d'apertura. */
.wp-site-blocks > header.wp-block-template-part { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 60; }
.home .wp-site-blocks > header.wp-block-template-part { position: fixed; left: 0; right: 0; }


/* Apertura su telefono: titolo su tre righe come nel mockup, la seconda metà resta sulla stessa riga. */
@media (max-width: 781px) {
	.fiore-hero .is-style-two-tone em { display: inline; }
	.fiore-hero__content { padding-top: 96px; }
	.fiore-hero__content h1 { font-size: clamp(28px, 8.4vw, 38px); }
	.fiore-hero__content .wp-block-buttons { flex-direction: column; align-items: center; }
	.fiore-hero__content .wp-block-button { width: min(100%, 280px); }
	.fiore-hero__content .wp-block-button__link { width: 100%; }
}

/* Piede nero, come nel mockup. */
.fiore-footer { background: var(--wp--preset--color--black); color: var(--wp--custom--on-dark--muted); }
.fiore-footer .is-style-label { color: var(--wp--preset--color--paper); }
.fiore-footer a { color: var(--wp--preset--color--paper); }
.fiore-footer .wp-block-separator { color: var(--wp--custom--on-dark--line); border-color: var(--wp--custom--on-dark--line); }
.fiore-footer__legal { color: var(--wp--custom--on-dark--min); }
.fiore-footer > .is-style-dark:first-child { border-bottom: 1px solid var(--wp--custom--on-dark--line); }

/* Foto spenta (come nel mockup del Metodo): in bianco e nero. */
.fiore-figure--spenta img { filter: grayscale(1); }

/* «La camicia, adattata a te» su telefono: schede che scorrono di lato, non quattro pareti di testo. */
@media (max-width: 781px) {
	.fiore-cards { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: 14px !important; padding-bottom: 12px; }
	.fiore-cards > .fiore-card { flex: 0 0 min(80vw, 320px) !important; scroll-snap-align: start; }
}

/* Tabelle delle taglie su telefono: entrano tutte le colonne. */
@media (max-width: 599px) {
	.wp-block-table :where(th, td), .fiore-size-guide__table :where(th, td) { padding: 8px 5px; font-size: 13px; }
}
@media (max-width: 781px) {
	.fiore-hero__content h1 { font-size: clamp(26px, 7.4vw, 34px); }
}
@media (max-width: 781px) { .fiore-hero__content { padding-top: 84px; gap: 10px; } }

/* ---------- feedback di Daniele, 2026-10-16 ---------- */
/* Apertura su telefono: il velo scuro arriva fin sotto i bottoni, il sottotitolo è bianco pieno,
   il bottone trasparente sta su un vetro scuro e si legge anche sopra la facciata chiara. */
@media (max-width: 781px) {
	.fiore-hero__veil { background: linear-gradient(rgba(0,0,0,.86) 0%, rgba(0,0,0,.8) 40%, rgba(0,0,0,.55) 52%, rgba(0,0,0,.18) 62%, rgba(0,0,0,0) 70%); }
	.fiore-hero__content p:not(.is-style-label) { color: var(--wp--preset--color--paper); }
	.fiore-hero .is-style-ghost .wp-block-button__link {
		background: rgba(0,0,0,.55); border-color: var(--wp--preset--color--paper);
		-webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
	}
}
/* Foto del Metodo in bianco e nero, come la mappa (tornata alla versione in grigi del kit):
   i colori staccavano dal resto del sito. */
.fiore-method .wp-block-media-text__media img { filter: grayscale(1); }

/* Apertura senza la scritta piccola sopra il titolo (B2, 2026-10-19): il titolo non deve toccare la testata. */
@media (max-width: 781px) { .fiore-hero__content { padding-top: 112px; } }

/* ---------- «Hai un dubbio?» sulla home, variante A «In bottega» (scelta da Nicola il 2026-10-21) ----------
   Copertina con la foto della bottega in bianco e nero (stile «Desaturata»), velo pieno al centro dove sta il
   testo e più leggero ai bordi; da telefono la foto si vede in alto e il testo scende sul velo pieno.
   Fonte: strategia/sito-2.0/varianti/dubbio/a.html. */
.is-style-desaturata .wp-block-cover__image-background { filter: grayscale(1) contrast(1.04); }
.fiore-doubt--bottega { min-height: clamp(520px, 64vw, 700px) !important; padding: var(--wp--preset--spacing--section) var(--wp--preset--spacing--gutter) !important; margin-block: 0 !important; }
.fiore-doubt--bottega .wp-block-cover__background { opacity: 1 !important; background:
	radial-gradient(ellipse 62% 72% at 50% 50%, rgba(0,0,0,.84) 0%, rgba(0,0,0,.76) 46%, rgba(0,0,0,.44) 100%),
	linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,0) 30%, rgba(0,0,0,0) 70%, rgba(0,0,0,.45)) !important; }
.fiore-doubt--bottega .wp-block-cover__inner-container { display: grid; gap: clamp(18px, 3vw, 28px); justify-items: center; text-align: center; color: rgba(255,255,255,.74); }
.fiore-doubt--bottega .wp-block-cover__inner-container > * { margin: 0 !important; }
.fiore-doubt--bottega h2 { color: var(--wp--preset--color--paper); max-width: 16ch; text-wrap: balance; }
.fiore-doubt--bottega h2 em { color: rgba(255,255,255,.62); }
.fiore-doubt--bottega .has-lead-font-size { max-width: 42ch; text-wrap: pretty; color: rgba(255,255,255,.74); }
.fiore-doubt--bottega :focus-visible { outline-color: var(--wp--preset--color--paper); }
@media (max-width: 700px) {
	.fiore-doubt--bottega { min-height: 700px !important; align-items: flex-end !important; padding-bottom: 44px !important; }
	.fiore-doubt--bottega .wp-block-cover__image-background { object-position: 58% 30% !important; }
	.fiore-doubt--bottega .wp-block-cover__background { background: linear-gradient(180deg, rgba(0,0,0,.2) 0%, rgba(0,0,0,.3) 30%, rgba(0,0,0,.8) 48%, rgba(0,0,0,.88) 100%) !important; }
}
@media (max-width: 480px) {
	.fiore-doubt--bottega .wp-block-buttons, .fiore-doubt--bottega .wp-block-button { width: 100%; }
	.fiore-doubt--bottega .wp-block-button__link { width: 100%; box-sizing: border-box; }
}

/* ---------- in fondo alle pagine: lo stesso blocco ovunque (revisione del 2026-10-27) ----------
   «Hai un dubbio?» nero e centrato in schede e categorie, poi la fascia della guida, poi il piede. Allineamento e
   spazi scritti qui e non affidati alle classi di WordPress (has-text-align-center): sul vero la cache di FlyingPress
   le toglieva dal CSS e il titolo finiva a sinistra. */
.fiore-doubt:not(.fiore-doubt--bottega) { text-align: center; padding-inline: var(--wp--preset--spacing--gutter) !important; }
.fiore-doubt:not(.fiore-doubt--bottega) > * { margin-inline: auto !important; }
.fiore-doubt:not(.fiore-doubt--bottega) h2 { max-width: 18ch; margin-block: 0 !important; text-align: center; text-wrap: balance; }
.fiore-doubt:not(.fiore-doubt--bottega) p { max-width: 52ch; margin-block: clamp(14px, 2vw, 20px) 0 !important; text-align: center; color: var(--wp--custom--on-dark--body); text-wrap: pretty; }
.fiore-doubt:not(.fiore-doubt--bottega) .wp-block-buttons { justify-content: center; gap: 12px; margin-top: clamp(24px, 3vw, 32px) !important; }
@media (max-width: 600px) {
	.fiore-doubt:not(.fiore-doubt--bottega) .wp-block-buttons { flex-direction: column; align-items: stretch; max-width: 340px; }
	.fiore-doubt:not(.fiore-doubt--bottega) .wp-block-button__link { width: 100%; box-sizing: border-box; }
}
/* niente fascia bianca fra «Hai un dubbio?» e il piede, in ogni pagina che finisce con lui */
main:has(> .fiore-doubt:last-child) { padding-bottom: 0 !important; }
/* la fascia della guida: un filo la separa dal nero sopra, il bottone sta a destra come le altre righe del piede */
.fiore-footer > .is-style-dark:first-child { border-top: 1px solid var(--wp--custom--on-dark--line); }
.fiore-footer > .is-style-dark:first-child .wp-block-columns { align-items: center !important; gap: 24px 48px; }
.fiore-footer > .is-style-dark:first-child h2 { margin-block: 0 10px; }
.fiore-footer > .is-style-dark:first-child p { margin: 0; }
@media (min-width: 782px) {
	.fiore-footer > .is-style-dark:first-child .wp-block-buttons { justify-content: flex-end; }
}

/* ---------- apertura da telefono (Nicola, 2026-10-27) ----------
   Un solo bottone, «Vedi le camicie»; «Scrivi a Daniele» diventa un link di testo sotto. L'apertura lascia posto alla
   recensione, che si vede già nella prima schermata (nastro 32 px + recensione circa 96 px). Solo CSS: i testi restano
   quelli della pagina, che Daniele cambia dall'editor. */
@media (max-width: 781px) {
	.fiore-hero { min-height: max(520px, calc(100vh - 32px - 96px)); min-height: max(520px, calc(100svh - 32px - 96px)); }
	.fiore-hero__content .wp-block-buttons { gap: 14px; margin-top: 18px !important; } /* più respiro sotto il titolo (Nicola) */
	.fiore-hero .is-style-ghost { width: auto !important; }
	.fiore-hero .is-style-ghost .wp-block-button__link {
		width: auto !important; min-height: 44px; display: inline-flex; align-items: center; padding: 0 4px !important;
		background: none !important; border: 0 !important; -webkit-backdrop-filter: none; backdrop-filter: none;
		color: var(--wp--preset--color--paper) !important; text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px;
	}
	.fiore-ribbon { padding-block: 14px; }
	.fiore-ribbon__quote { font-size: 17px; line-height: 1.35; }
	.fiore-ribbon__by { display: block; margin: 6px 0 0; }
}
/* Le sezioni a tutta larghezza delle pagine (fondo carta, fondo nero) si toccano: i 24 px automatici di WordPress fra
   un blocco e l'altro lasciavano strisce bianche, per esempio sotto «Hai un dubbio?» nella pagina della guida. */
.wp-block-post-content > .alignfull { margin-block: 0 !important; }
main:has(> .wp-block-post-content > .alignfull:last-child) { padding-bottom: 0 !important; }
.wp-site-blocks > footer, .wp-site-blocks > .wp-block-template-part:last-child { margin-block-start: 0 !important; }
/* dove la fascia della guida è nascosta (pagine della guida), il blocco dopo si portava i 24 px di distanza: striscia bianca */
.fiore-footer > * { margin-block-start: 0 !important; }
