/* ==========================================================================
   Maglio Carlo – stile del tema
   Colori e caratteri vengono da theme.json (var(--wp--preset--…)).
   ========================================================================== */

:root {
	--mc-blu: var(--wp--preset--color--blu, #193D7A);
	--mc-notte: var(--wp--preset--color--notte, #14203A);
	--mc-testo: var(--wp--preset--color--testo, #34405A);
	--mc-grigio: var(--wp--preset--color--grigio, #4A5468);
	--mc-linea: var(--wp--preset--color--linea, #D7DDE8);
	--mc-fondo: var(--wp--preset--color--fondo, #F4F6FA);
	--mc-bianco: #FFFFFF;
	--mc-azzurro: var(--wp--preset--color--azzurro, #A9C1F0);
	--mc-tenue: var(--wp--preset--color--tenue, #B4C0D8);
	--mc-verde: var(--wp--preset--color--verde, #2E6B3A);
	--mc-titoli: var(--wp--preset--font-family--titoli, "Arial Narrow", sans-serif);
	--mc-raggio: 10px;
	--mc-strisce: repeating-linear-gradient(135deg, #EEF2F8 0 14px, #E6EBF3 14px 28px);
}

body { -webkit-font-smoothing: antialiased; }
.wp-site-blocks { padding-top: 0; }
.wp-site-blocks > * + * { margin-block-start: 0; }

.screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px); white-space: nowrap;
}

:focus-visible { outline: 3px solid var(--mc-azzurro); outline-offset: 2px; }

/* --------------------------------------------------------------------------
   Barra in alto
   -------------------------------------------------------------------------- */
.mc-topbar { background: var(--mc-notte); color: var(--mc-fondo); font-size: 0.875rem; }
.mc-topbar__riga {
	display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between;
	align-items: center; padding: 10px 0;
}
.mc-topbar strong { color: var(--mc-azzurro); }
.mc-topbar a { color: var(--mc-fondo); }
.mc-topbar__contatti { display: flex; flex-wrap: wrap; gap: 20px; }
.mc-topbar__contatti a { text-decoration: none; }

/* --------------------------------------------------------------------------
   Intestazione
   -------------------------------------------------------------------------- */
.mc-header { background: var(--mc-bianco); }
.mc-header__riga { padding: 18px 0; gap: 20px 40px !important; }

.mc-marchio { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.mc-marchio img.mc-marchio__logo,
.woocommerce .mc-marchio img.mc-marchio__logo,
.woocommerce-page .mc-marchio img.mc-marchio__logo {
	height: 68px !important; width: auto !important; max-width: none !important; display: block;
}
.mc-marchio__testo { display: flex; flex-direction: column; line-height: 1; }
.mc-marchio__nome {
	font-family: var(--mc-titoli); font-weight: 700; font-size: 2rem;
	text-transform: uppercase; letter-spacing: 0.01em; color: var(--mc-blu);
}
.mc-marchio__sotto {
	font-family: var(--mc-titoli); font-weight: 600; font-size: 1rem;
	text-transform: uppercase; letter-spacing: 0.12em; color: var(--mc-grigio); margin-top: 4px;
}

.mc-search { flex: 999 1 320px; min-width: 0; margin: 0; }
.mc-search .wp-block-search__inside-wrapper {
	border: 2px solid var(--mc-notte); border-radius: 6px; padding: 0; background: var(--mc-bianco);
}
.mc-search .wp-block-search__input {
	border: 0; height: 46px; padding: 0 16px; font: inherit; background: transparent; min-width: 0;
}
.mc-search .wp-block-search__button {
	margin: 0; border: 0; border-radius: 0 3px 3px 0; width: 56px; height: 46px;
	background: var(--mc-blu); color: var(--mc-bianco); display: flex; align-items: center; justify-content: center;
}
.mc-search .wp-block-search__button svg { fill: currentColor; width: 24px; height: 24px; }

.mc-header__azioni { gap: 20px !important; }
.mc-header__azioni a { text-decoration: none; }

.mc-reparti-bar { background: var(--mc-bianco); border-top: 1px solid var(--mc-linea); border-bottom: 1px solid var(--mc-linea); }
.mc-reparti { padding: 4px 0; }
.mc-reparti .wp-block-navigation__container { gap: 4px 28px; }
.mc-reparti .wp-block-navigation-item__content { padding: 10px 0; text-decoration: none; }
.mc-reparti .wp-block-navigation-item__content:hover,
.mc-reparti .current-menu-item > .wp-block-navigation-item__content { color: var(--mc-blu); }

/* --------------------------------------------------------------------------
   Sezioni comuni
   -------------------------------------------------------------------------- */
.mc-sezione { padding-top: 64px; padding-bottom: 64px; }
.mc-sezione--bianca { background: var(--mc-bianco); border-top: 1px solid var(--mc-linea); border-bottom: 1px solid var(--mc-linea); }
.mc-sezione > h2 { margin-bottom: 28px; }

.mc-occhiello {
	font-family: var(--mc-titoli); font-weight: 600; font-size: 1.1rem;
	letter-spacing: 0.14em; text-transform: uppercase; color: var(--mc-grigio); margin: 0;
}
.mc-testo-grande { font-size: 1.1rem; color: var(--mc-testo); }

.mc-foto {
	min-height: 26rem; border-radius: var(--mc-raggio); background: var(--mc-strisce);
	display: flex; align-items: flex-end; padding: 20px; box-sizing: border-box;
}
.mc-foto > p {
	background: var(--mc-bianco); padding: 6px 10px; border-radius: 4px;
	font-size: 0.85rem; color: var(--mc-testo); margin: 0;
}
.wp-block-column > .wp-block-image img,
.wp-block-column > figure img { border-radius: var(--mc-raggio); }

.mc-card__link a { font-weight: 600; text-decoration: none; }

.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent; color: var(--mc-notte); border: 2px solid var(--mc-notte);
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--mc-notte); color: var(--mc-bianco); }

/* --------------------------------------------------------------------------
   Homepage: apertura e assistente
   -------------------------------------------------------------------------- */
.mc-hero { padding-top: 56px; padding-bottom: 64px; }
.mc-hero__colonne { gap: 40px; }
.mc-hero h1 { margin: 16px 0 20px; }
.mc-hero__intro { font-size: 1.15rem; color: var(--mc-testo); max-width: 34rem; }
.mc-hero .mc-foto { min-height: 30rem; }

.mc-assistente {
	background: var(--mc-bianco); border: 2px solid var(--mc-notte); border-radius: var(--mc-raggio);
	padding: 20px; display: flex; flex-direction: column; gap: 12px;
	box-shadow: 6px 6px 0 var(--mc-blu); margin-top: 28px;
}
.mc-assistente label { font-weight: 600; font-size: 1.05rem; }
.mc-assistente textarea {
	font: inherit; padding: 12px 14px; border: 1px solid #AEB8CB; border-radius: 6px;
	resize: vertical; background: #FAFBFD; width: 100%; box-sizing: border-box;
}
.mc-assistente__azioni { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; }
.mc-assistente__esempi { display: flex; flex-wrap: wrap; gap: 8px; }
.mc-assistente__esempi button {
	font: inherit; font-size: 0.85rem; padding: 6px 12px; min-height: 36px;
	border: 1px solid #AEB8CB; border-radius: 999px; background: var(--mc-fondo); color: var(--mc-notte); cursor: pointer;
}
.mc-assistente__esempi button:hover { border-color: var(--mc-blu); color: var(--mc-blu); }
.mc-assistente__invia {
	font: inherit; font-weight: 600; padding: 12px 22px; min-height: 48px; border: 0;
	border-radius: 6px; background: var(--mc-notte); color: var(--mc-bianco); cursor: pointer;
}
.mc-assistente__invia:hover { background: var(--mc-blu); }
.mc-assistente__nota { margin: 0; font-size: 0.85rem; color: var(--mc-grigio); }

/* Ingressi */
.mc-ingressi { gap: 20px; }
.mc-card {
	background: var(--mc-fondo); border: 1px solid var(--mc-linea); border-radius: var(--mc-raggio);
	padding: 24px; position: relative;
}
.mc-card::before {
	content: ""; display: block; width: 48px; height: 6px; border-radius: 3px;
	background: var(--mc-blu); margin-bottom: 14px;
}
.mc-card h3 { margin: 0 0 10px; }
.mc-card p { color: var(--mc-testo); margin: 0 0 10px; }

/* Chi siamo */
.mc-chi-siamo { gap: 48px; }
.mc-chi-siamo h2 { font-size: 3rem; margin: 12px 0 18px; }

/* Consegna */
.mc-consegna { background: var(--mc-blu); color: var(--mc-bianco); padding-top: 48px; padding-bottom: 48px; }
.mc-consegna h2 { color: var(--mc-bianco); margin: 0 0 8px; }
.mc-consegna p { color: #E3EAF7; margin: 0; }
.mc-comune { display: flex; max-width: 520px; position: relative; }
.mc-comune input {
	flex: 1; min-width: 0; height: 52px; padding: 0 16px; border: 2px solid var(--mc-notte);
	border-right: 0; border-radius: 6px 0 0 6px; font: inherit; background: var(--mc-bianco);
}
.mc-comune button {
	height: 52px; padding: 0 22px; border: 2px solid var(--mc-notte); border-radius: 0 6px 6px 0;
	background: var(--mc-notte); color: var(--mc-bianco); font: inherit; font-weight: 600; cursor: pointer;
}

/* --------------------------------------------------------------------------
   Pagine interne
   -------------------------------------------------------------------------- */
.mc-pagina { padding-top: 40px; padding-bottom: 72px; }
.mc-pagina__titolo { font-size: var(--wp--preset--font-size--xx-large); }

/* --------------------------------------------------------------------------
   Piè di pagina
   -------------------------------------------------------------------------- */
.mc-footer { background: var(--mc-notte); color: var(--mc-fondo); }
.mc-footer__griglia {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 32px; padding: 56px 0 24px;
}
.mc-footer__col { display: flex; flex-direction: column; gap: 6px; }
.mc-footer img.mc-footer__logo,
.woocommerce .mc-footer img.mc-footer__logo,
.woocommerce-page .mc-footer img.mc-footer__logo {
	height: 96px !important; width: auto !important; max-width: none !important; align-self: flex-start; margin-bottom: 6px;
}
.mc-footer__nome { font-family: var(--mc-titoli); font-weight: 700; font-size: 1.75rem; text-transform: uppercase; line-height: 1; }
.mc-footer__sotto { font-family: var(--mc-titoli); font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--mc-tenue); }
.mc-footer__titolo { font-weight: 600; margin-bottom: 4px; }
.mc-footer__tenue { color: var(--mc-tenue); }
.mc-footer a { color: var(--mc-fondo); }
.mc-footer a:hover { color: var(--mc-azzurro); }
.mc-footer__fondo { padding: 16px 0 28px; border-top: 1px solid #2A3B63; font-size: 0.85rem; color: var(--mc-tenue); }

/* --------------------------------------------------------------------------
   WooCommerce – griglie prodotti e categorie (shortcode e blocchi)
   -------------------------------------------------------------------------- */
.woocommerce ul.products,
.wc-block-product-template { gap: 20px; }

.woocommerce ul.products li.product,
.wc-block-product-template .wc-block-product {
	background: var(--mc-bianco); border: 1px solid var(--mc-linea); border-radius: var(--mc-raggio);
	overflow: hidden; padding: 0 0 16px; display: flex; flex-direction: column;
}
.woocommerce ul.products li.product a img,
.wc-block-product-template .wc-block-components-product-image img {
	margin: 0 0 12px; aspect-ratio: 1 / 1; object-fit: contain; background: var(--mc-fondo);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-product-template .wp-block-post-title {
	font-family: var(--wp--preset--font-family--testo); text-transform: none; font-weight: 600;
	font-size: 1rem; line-height: 1.35; padding: 0 16px; color: var(--mc-notte);
}
.woocommerce ul.products li.product .price,
.wc-block-product-template .wc-block-components-product-price {
	font-family: var(--mc-titoli); font-weight: 700; font-size: 1.5rem; color: var(--mc-notte); padding: 0 16px;
}
.woocommerce ul.products li.product .button,
.wc-block-product-template .wp-block-button__link {
	margin: auto 16px 0; background: var(--mc-blu); color: var(--mc-bianco); border-radius: 6px;
	font-weight: 600; min-height: 44px; display: inline-flex; align-items: center; justify-content: center;
}
.woocommerce ul.products li.product .button:hover { background: var(--mc-notte); color: var(--mc-bianco); }

/* Categorie */
.woocommerce ul.products li.product-category { padding: 0; border: 0; background: transparent; }
.woocommerce ul.products li.product-category a { text-decoration: none; }
.woocommerce ul.products li.product-category img {
	border-radius: 8px; aspect-ratio: 4 / 3; object-fit: cover; background: var(--mc-strisce);
}
.woocommerce ul.products li.product-category h2 {
	font-family: var(--wp--preset--font-family--testo); text-transform: none;
	font-size: 1rem; font-weight: 600; padding: 0;
}
.woocommerce ul.products li.product-category mark { background: none; color: var(--mc-grigio); font-weight: 400; }

/* Disponibilità */
.stock.in-stock, .wc-block-components-product-stock-indicator--in-stock { color: var(--mc-verde) !important; font-weight: 600; }
.stock.out-of-stock, .wc-block-components-product-stock-indicator--out-of-stock { color: #9A3412 !important; font-weight: 600; }

/* --------------------------------------------------------------------------
   WooCommerce – scheda prodotto
   -------------------------------------------------------------------------- */
.single-product .wp-block-post-title { font-size: 3rem; line-height: 1; }
.single-product .wp-block-woocommerce-product-price .wc-block-components-product-price,
.single-product .summary .price {
	font-family: var(--mc-titoli); font-weight: 700; font-size: 2.75rem !important; color: var(--mc-notte);
}
.woocommerce-price-suffix { font-family: var(--wp--preset--font-family--testo); font-size: 0.85rem; font-weight: 400; color: var(--mc-grigio); }

.single-product form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; }
.single-product form.cart .quantity input.qty {
	height: 52px; width: 72px; border: 1px solid #AEB8CB; border-radius: 6px; font: inherit; font-weight: 600; text-align: center;
}
.single-product form.cart .single_add_to_cart_button {
	flex: 1 1 200px; min-height: 52px; border: 0; border-radius: 6px; background: var(--mc-blu) !important;
	color: var(--mc-bianco) !important; font-weight: 600; font-size: 1.05rem;
}
.single-product form.cart .single_add_to_cart_button:hover { background: var(--mc-notte) !important; }

.mc-acquisto-extra { display: flex; flex-direction: column; gap: 16px; margin-top: 16px; }
.mc-btn-contorno {
	min-height: 48px; border: 2px solid var(--mc-notte); border-radius: 6px; display: flex;
	align-items: center; justify-content: center; font-weight: 600; text-decoration: none; color: var(--mc-notte);
}
.mc-btn-contorno:hover { background: var(--mc-notte); color: var(--mc-bianco); }
.mc-info-box { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
.mc-info-box > div {
	border: 1px solid var(--mc-linea); border-radius: 8px; padding: 14px; background: var(--mc-bianco);
	display: flex; flex-direction: column; gap: 4px;
}
.mc-info-box span { font-size: 0.9rem; color: var(--mc-testo); }

.mc-domanda {
	background: var(--mc-bianco); border: 2px solid var(--mc-notte); border-radius: var(--mc-raggio);
	padding: 24px; display: flex; flex-wrap: wrap; gap: 20px 32px; align-items: center;
	box-shadow: 6px 6px 0 var(--mc-blu); margin: 48px 0;
}
.mc-domanda__testo { flex: 1 1 320px; min-width: 0; }
.mc-domanda__testo h2 { font-size: 1.75rem; margin: 0 0 6px; }
.mc-domanda__testo p { margin: 0; color: var(--mc-testo); }
.mc-domanda__form { flex: 2 1 420px; display: flex; min-width: 0; }
.mc-domanda__form input {
	flex: 1; min-width: 0; height: 52px; padding: 0 14px; border: 1px solid #AEB8CB; border-right: 0;
	border-radius: 6px 0 0 6px; font: inherit; background: #FAFBFD;
}
.mc-domanda__form button {
	height: 52px; padding: 0 20px; border: 0; border-radius: 0 6px 6px 0;
	background: var(--mc-notte); color: var(--mc-bianco); font: inherit; font-weight: 600; cursor: pointer;
}

.woocommerce-breadcrumb, .wc-block-breadcrumbs { font-size: 0.9rem; color: var(--mc-grigio); }

/* --------------------------------------------------------------------------
   Telefono
   -------------------------------------------------------------------------- */
@media (max-width: 781px) {
	.mc-marchio img.mc-marchio__logo { height: 52px !important; }
	.mc-marchio__nome { font-size: 1.6rem; }
	.mc-marchio__sotto { font-size: 0.85rem; }
	.mc-hero { padding-top: 32px; }
	.mc-hero h1 { font-size: 2.6rem; overflow-wrap: break-word; hyphens: auto; }
	.mc-hero .mc-foto { min-height: 16rem; }
	.mc-foto { min-height: 16rem; }
	.mc-chi-siamo h2 { font-size: 2.25rem; }
	.mc-sezione { padding-top: 40px; padding-bottom: 40px; }
	.single-product .wp-block-post-title { font-size: 2.25rem; }
}

/* Esito "Verifica il tuo comune" */
.mc-comune__esito { max-width: 520px; margin: 12px 0 0; padding: 12px 16px; border-radius: 6px; font-weight: 600; }
.mc-comune__esito[hidden] { display: none; }
.mc-consegna .mc-comune__esito--si, .mc-comune__esito--si { background: #E3F1E6 !important; color: #1F4D29 !important; border: 2px solid #2E6B3A; }
.mc-consegna .mc-comune__esito--no, .mc-comune__esito--no { background: #FFF4D6 !important; color: #6B3A06 !important; border: 2px solid #D97706; }
.mc-consegna .mc-comune__esito a, .mc-comune__esito a { color: inherit !important; text-decoration: underline; margin-left: 4px; }

/* Menu a tendina dei comuni */
.mc-comune__lista {
	position: absolute; z-index: 30; left: 0; right: 0; top: calc(100% + 4px); margin: 0; padding: 4px; list-style: none;
	background: #fff; color: var(--mc-notte); border: 2px solid var(--mc-notte); border-radius: 6px;
	box-shadow: 0 12px 28px rgba(20, 32, 58, 0.22); max-height: 320px; overflow: auto; text-align: left;
}
.mc-comune__lista[hidden] { display: none; }
.mc-comune__lista li { display: flex; align-items: center; gap: 6px; padding: 10px 12px; border-radius: 4px; cursor: pointer; color: var(--mc-notte); }
.mc-comune__lista li.attiva, .mc-comune__lista li:hover { background: #E7EDF7; }
.mc-comune__nome { font-weight: 600; }
.mc-comune__prov { color: #4A5468; }
.mc-comune__badge { margin-left: auto; font-size: 0.75em; font-weight: 700; color: #1F4D29; background: #E3F1E6; border: 1px solid #2E6B3A; border-radius: 999px; padding: 2px 8px; white-space: nowrap; }

/* Il promemoria nei riquadri foto lo vede solo chi ha fatto l'accesso al sito, non i clienti */
.mc-foto > p { visibility: hidden; }
body.logged-in .mc-foto > p { visibility: visible; }

/* --------------------------------------------------------------------------
   Ruote della homepage (Reparti e Più venduti)
   -------------------------------------------------------------------------- */
.mc-ruota { position: relative; margin: 0 calc(-1 * var(--wp--style--root--padding-right, 24px)); }
.mc-ruota__finestra {
	overflow: hidden; perspective: 1400px; padding: 18px 0 26px;
	touch-action: pan-y; cursor: grab; user-select: none; -webkit-user-select: none;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
}
.mc-ruota--trascina .mc-ruota__finestra { cursor: grabbing; }
.mc-ruota__binario {
	display: flex; gap: 22px; margin: 0; padding: 0 0 0 22px; list-style: none;
	will-change: transform; transform-style: preserve-3d;
}
.mc-ruota__voce { flex: 0 0 auto; margin: 0; transform-style: preserve-3d; }
.mc-ruota--trascina .mc-quadro { pointer-events: none; }

.mc-quadro {
	display: flex; flex-direction: column; overflow: hidden; text-decoration: none; color: var(--mc-notte);
	background: var(--mc-bianco); border: 2px solid var(--mc-notte); border-radius: 14px;
	box-shadow: 6px 6px 0 var(--mc-blu); will-change: transform; backface-visibility: hidden;
	transition: box-shadow 0.25s ease, border-color 0.25s ease;
}
.mc-quadro:hover, .mc-quadro:focus-visible { box-shadow: 9px 9px 0 var(--mc-blu); border-color: var(--mc-blu); }
.mc-quadro:focus-visible { outline: 3px solid var(--mc-azzurro); outline-offset: 3px; }
.mc-quadro__foto { display: flex; align-items: center; justify-content: center; background: #fff; overflow: hidden; }
.mc-quadro__foto img { width: 100%; height: 100%; object-fit: contain; display: block; pointer-events: none; }
.mc-quadro__testo { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px 16px; border-top: 1px solid var(--mc-linea); }
.mc-quadro__testo strong { font-family: var(--mc-titoli); font-size: 1.35rem; line-height: 1.15; text-transform: uppercase; letter-spacing: 0.02em; }
.mc-quadro__testo span { font-size: 0.9rem; color: var(--mc-grigio); }

.mc-quadro--reparto { width: 270px; }
.mc-quadro--reparto .mc-quadro__foto { height: 230px; padding: 18px; box-sizing: border-box; }
.mc-quadro__iniziale {
	display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; border-radius: 10px;
	font-family: var(--mc-titoli); font-size: 6rem; font-weight: 700; color: var(--mc-bianco); background: var(--mc-blu);
}
.mc-quadro--t1 .mc-quadro__iniziale { background: #24508F; }
.mc-quadro--t2 .mc-quadro__iniziale { background: var(--mc-notte); }
.mc-quadro--t3 .mc-quadro__iniziale { background: #2F5FA8; }
.mc-quadro--t4 .mc-quadro__iniziale { background: #1F3F6E; }
.mc-quadro--t5 .mc-quadro__iniziale { background: #3B6CB8; }

.mc-quadro--prodotto { width: 230px; }
.mc-quadro--prodotto .mc-quadro__foto { height: 210px; padding: 14px; box-sizing: border-box; }
.mc-quadro--prodotto .mc-quadro__testo strong {
	font-family: inherit; font-size: 0.98rem; text-transform: none; letter-spacing: 0; font-weight: 600;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.3em;
}
.mc-quadro__prezzo { font-weight: 700; color: var(--mc-notte) !important; font-size: 1.05rem !important; }
.mc-quadro__prezzo small { font-weight: 400; color: var(--mc-grigio); font-size: 0.75em; }
.mc-quadro__stato { font-size: 0.78rem !important; color: #8A4B08 !important; }

.mc-ruota__freccia {
	position: absolute; top: 50%; z-index: 5; width: 50px; height: 50px; margin-top: -25px; border-radius: 50%;
	border: 2px solid var(--mc-notte); background: var(--mc-bianco); color: var(--mc-notte);
	font-size: 2rem; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center;
	box-shadow: 3px 3px 0 var(--mc-blu); transition: transform 0.15s ease, background 0.15s ease;
}
.mc-ruota__freccia span { margin-top: -4px; }
.mc-ruota__freccia:hover { background: var(--mc-notte); color: var(--mc-bianco); }
.mc-ruota__freccia:active { transform: translateY(1px); }
.mc-ruota__freccia--prima { left: 12px; }
.mc-ruota__freccia--dopo { right: 12px; }
.mc-ruota--ferma .mc-ruota__freccia { display: none; }
.mc-ruota__vuota { color: var(--mc-grigio); }
@media (max-width: 781px) {
	.mc-ruota__freccia { display: none; }
	.mc-quadro--reparto { width: 210px; }
	.mc-quadro--reparto .mc-quadro__foto { height: 170px; }
	.mc-quadro--prodotto { width: 190px; }
	.mc-quadro--prodotto .mc-quadro__foto { height: 170px; }
	.mc-quadro__testo strong { font-size: 1.15rem; }
}
@media (prefers-reduced-motion: reduce) {
	.mc-ruota__finestra { overflow-x: auto; }
}

/* --------------------------------------------------------------------------
   Sfondo con un po' di vita: macchie di blu che si spostano lentissime
   -------------------------------------------------------------------------- */
body::before {
	content: ""; position: fixed; inset: -25%; z-index: -1; pointer-events: none;
	background:
		radial-gradient(38% 32% at 18% 22%, rgba(25, 61, 122, 0.09), transparent 70%),
		radial-gradient(34% 30% at 82% 18%, rgba(169, 193, 240, 0.30), transparent 70%),
		radial-gradient(40% 36% at 70% 82%, rgba(25, 61, 122, 0.07), transparent 70%),
		radial-gradient(30% 28% at 24% 78%, rgba(169, 193, 240, 0.22), transparent 70%);
	animation: mc-sfondo 48s ease-in-out infinite alternate;
	will-change: transform;
}
@keyframes mc-sfondo {
	0%   { transform: translate3d(0, 0, 0) rotate(0deg) scale(1); }
	50%  { transform: translate3d(3%, -2%, 0) rotate(4deg) scale(1.05); }
	100% { transform: translate3d(-3%, 2%, 0) rotate(-3deg) scale(1.02); }
}
@media (prefers-reduced-motion: reduce) {
	body::before { animation: none; }
}

/* --------------------------------------------------------------------------
   Il mio account: accesso e registrazione dentro il sito
   -------------------------------------------------------------------------- */
.woocommerce-account #customer_login { display: grid; grid-template-columns: 1fr 1.25fr; gap: 28px; align-items: start; }
.woocommerce-account #customer_login::before, .woocommerce-account #customer_login::after { display: none; }
.woocommerce-account #customer_login > div { float: none; width: auto; }
.woocommerce-account #customer_login h2 { font-size: 1.8rem; margin: 0 0 6px; }
.woocommerce-account form.login, .woocommerce-account form.register {
	background: var(--mc-bianco); border: 2px solid var(--mc-notte) !important; border-radius: 14px !important;
	box-shadow: 6px 6px 0 var(--mc-blu); padding: 24px !important; margin: 0 !important;
}
.woocommerce-account form .form-row label { font-weight: 600; font-size: 0.92rem; }
.woocommerce-account form .input-text {
	width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #AEB8CB; border-radius: 8px; background: #fff; font: inherit;
}
.woocommerce-account form .input-text:focus { outline: 3px solid rgba(25, 61, 122, 0.25); border-color: var(--mc-blu); }
.woocommerce-account form .button {
	min-height: 48px; padding: 0 24px !important; border-radius: 8px !important; background: var(--mc-blu) !important;
	color: #fff !important; font-weight: 700 !important; border: 0 !important;
}
.mc-account__intro { margin: 0 0 14px; color: var(--mc-testo); }
.mc-registra__riga { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
.mc-registra__riga .form-row { width: auto !important; float: none !important; }
.mc-registra__azienda label { font-weight: 400 !important; display: flex; gap: 8px; align-items: center; }
.mc-registra__dati-azienda { display: none; padding: 4px 14px; margin: 0 0 12px; border-left: 3px solid var(--mc-azzurro); background: #F7F9FD; border-radius: 0 8px 8px 0; }
.woocommerce-form-register:has(.mc-registra__azienda input:checked) .mc-registra__dati-azienda { display: block; }
@media (max-width: 781px) {
	.woocommerce-account #customer_login { grid-template-columns: 1fr; }
	.mc-registra__riga { grid-template-columns: 1fr; }
}

/* Accesso con Google e Facebook */
.mc-social { margin-top: 18px; }
.mc-social__oppure { display: flex; align-items: center; gap: 12px; margin: 0 0 12px; color: var(--mc-grigio); font-size: 0.9rem; }
.mc-social__oppure::before, .mc-social__oppure::after { content: ""; flex: 1; height: 1px; background: var(--mc-linea); }
.mc-social .nsl-container { margin: 0 !important; }
.mc-social .nsl-container-buttons a { border-radius: 8px !important; overflow: hidden; }

/* ==========================================================================
   v2 – Ridisegno basato sulle ricerche (vedi inc/home.php)
   ========================================================================== */
:root {
	--mc-arancio: var(--wp--preset--color--arancio, #F28C28);
	--mc-arancio-scuro: #D9731A;
	--mc-ombra: 6px 6px 0 var(--mc-blu);
	--mc-ombra-morbida: 0 10px 30px rgba(20, 32, 58, 0.10);
}
/* Titoli: stesso carattere, versione stretta (un solo file da scaricare) */
h1, h2, h3, h4, .wp-block-heading, .mc-marchio__nome, .mc-marchio__sotto, .mc-occhiello, .mc-quadro__testo strong,
.mc-footer__nome, .mc-footer__sotto, .mc-numeri strong, .mc-calc__numero, .mc-passi__n, .price, .wc-block-components-product-price {
	font-stretch: 78%;
}
body { text-rendering: optimizeLegibility; }
.mc-occhiello { color: var(--mc-blu); font-weight: 700; letter-spacing: 0.12em; }

/* Pulsanti: l'arancio solo per l'azione principale (si nota perché è l'unico) */
.mc-bottone {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 0 24px;
	border-radius: 10px; border: 2px solid var(--mc-notte); background: var(--mc-arancio); color: var(--mc-notte);
	font-weight: 700; text-decoration: none; box-shadow: 4px 4px 0 var(--mc-notte); transition: transform .12s ease, box-shadow .12s ease;
}
.mc-bottone:hover { transform: translate(-1px, -1px); box-shadow: 5px 5px 0 var(--mc-notte); color: var(--mc-notte); }
.mc-bottone:active { transform: translate(2px, 2px); box-shadow: 2px 2px 0 var(--mc-notte); }
.mc-bottone--contorno { background: var(--mc-bianco); }
.mc-bottone--wa { background: #25D366; }
.mc-bottone--contorno-chiaro { background: transparent; color: var(--mc-bianco); border-color: var(--mc-bianco); box-shadow: 4px 4px 0 rgba(255,255,255,.35); }
.mc-bottone--contorno-chiaro:hover { color: var(--mc-bianco); }
.single-product form.cart .single_add_to_cart_button,
.woocommerce ul.products li.product .button,
.wc-block-components-checkout-place-order-button, .wc-block-cart__submit-button, .checkout-button {
	background: var(--mc-arancio) !important; color: var(--mc-notte) !important; border: 2px solid var(--mc-notte) !important;
	box-shadow: 4px 4px 0 var(--mc-notte); font-weight: 700 !important;
}
.single-product form.cart .single_add_to_cart_button:hover,
.woocommerce ul.products li.product .button:hover { background: var(--mc-arancio-scuro) !important; color: var(--mc-notte) !important; }

/* Icone (disegnate con una maschera: un colore, nessun file in più) */
.mc-icona { display: inline-block; width: 28px; height: 28px; flex: none; background: currentColor;
	-webkit-mask: var(--i) center / contain no-repeat; mask: var(--i) center / contain no-repeat; }
.mc-icona--camion { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M2 6h11v10H2zM13 9h4l4 4v3h-8z'/%3E%3Ccircle cx='6' cy='17.5' r='2' fill='%23fff'/%3E%3Ccircle cx='17' cy='17.5' r='2' fill='%23fff'/%3E%3C/svg%3E"); }
.mc-icona--negozio { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 9l1.5-5h15L21 9M3 9h18v2a3 3 0 0 1-6 0 3 3 0 0 1-6 0 3 3 0 0 1-6 0zM5 13v7h14v-7M10 20v-4h4v4'/%3E%3C/svg%3E"); }
.mc-icona--carta { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20M6 15h4'/%3E%3C/svg%3E"); }
.mc-icona--chat { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M4 4h16v12H9l-5 4z'/%3E%3Cpath d='M8 9h8M8 12h5' stroke-linecap='round'/%3E%3C/svg%3E"); }
.mc-icona--reso { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 14L4 9l5-5'/%3E%3Cpath d='M4 9h10a6 6 0 0 1 0 12h-3'/%3E%3C/svg%3E"); }
.mc-icona--casa { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-7 9 7v9h-6v-6H9v6H3z'/%3E%3C/svg%3E"); }
.mc-icona--griglia { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1'/%3E%3C/svg%3E"); }
.mc-icona--lente { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21'/%3E%3C/svg%3E"); }
.mc-icona--carrello { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M2 3h3l2.5 12h11L21 7H6'/%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='17' cy='20' r='1.5'/%3E%3C/svg%3E"); }

/* Stato del negozio: "Aperto ora" con il pallino */
.mc-stato { display: inline-flex; align-items: center; gap: 8px; }
.mc-stato[data-aperto]::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: #9AA5B8; flex: none; }
.mc-stato[data-aperto="si"]::before { background: #2FBF5B; box-shadow: 0 0 0 0 rgba(47,191,91,.6); animation: mc-pulsa 2s infinite; }
@keyframes mc-pulsa { 70% { box-shadow: 0 0 0 8px rgba(47,191,91,0); } 100% { box-shadow: 0 0 0 0 rgba(47,191,91,0); } }

/* Barra in alto e intestazione fissa */
.mc-topbar { font-size: 0.86rem; }
.mc-topbar__riga { padding: 8px 0; gap: 6px 24px; }
.mc-topbar__promesse { display: flex; gap: 18px; flex-wrap: wrap; }
.mc-topbar__extra { color: var(--mc-tenue); }
.mc-topbar__stato .mc-stato { color: #E3EAF7; font-weight: 600; }
header.wp-block-template-part { position: sticky; top: 0; z-index: 50; }
body.admin-bar header.wp-block-template-part { top: 32px; }
.mc-header { box-shadow: 0 1px 0 var(--mc-linea); }
.mc-header__riga { padding: 12px 0; }
.mc-search .wp-block-search__inside-wrapper { border-radius: 10px; border-width: 2px; }
.mc-search .wp-block-search__input { height: 50px; font-size: 1rem; }
.mc-search .wp-block-search__button { height: 50px; border-radius: 0 7px 7px 0; background: var(--mc-arancio); color: var(--mc-notte); }
.mc-reparti-bar { overflow-x: auto; scrollbar-width: none; }
.mc-reparti-bar::-webkit-scrollbar { display: none; }
.mc-reparti .wp-block-navigation__container { flex-wrap: nowrap !important; white-space: nowrap; }
.mc-reparti .wp-block-navigation-item__content { font-weight: 600; }

/* Fasce della home */
.mc-fascia { padding-top: 56px; padding-bottom: 56px; }
.mc-fascia--apertura { padding-top: 40px; padding-bottom: 32px; }
.mc-fascia--garanzie { padding-top: 0; padding-bottom: 8px; }
.mc-fascia--bianca { background: var(--mc-bianco); border-top: 1px solid var(--mc-linea); border-bottom: 1px solid var(--mc-linea); }
.mc-fascia--visti { padding-top: 0; padding-bottom: 0; }
.mc-fascia--contatto { background: var(--mc-notte); color: var(--mc-bianco); }
.mc-sezione h2, .mc-fascia h2 { font-size: clamp(2rem, 3.6vw, 2.9rem); margin: 6px 0 22px; }

/* Apertura */
.mc-apertura { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 48px; align-items: center; }
.mc-apertura h1 { font-size: clamp(2.6rem, 5.4vw, 4.4rem); line-height: 0.96; margin: 14px 0 18px; }
.mc-apertura h1 span { display: block; color: var(--mc-blu); }
.mc-apertura__occhiello { margin: 0; font-weight: 700; color: var(--mc-blu); }
.mc-apertura__intro { font-size: 1.15rem; color: var(--mc-testo); max-width: 36rem; margin: 0 0 22px; }
.mc-cerca-grande { display: flex; max-width: 600px; border: 2px solid var(--mc-notte); border-radius: 12px; background: var(--mc-bianco); box-shadow: var(--mc-ombra); overflow: hidden; }
.mc-cerca-grande input[type=search] { flex: 1; min-width: 0; border: 0; height: 62px; padding: 0 20px; font: inherit; font-size: 1.15rem; background: transparent; }
.mc-cerca-grande input[type=search]:focus { outline: none; }
.mc-cerca-grande:focus-within { box-shadow: 8px 8px 0 var(--mc-blu); }
.mc-cerca-grande button { border: 0; border-left: 2px solid var(--mc-notte); padding: 0 28px; font: inherit; font-weight: 800; font-size: 1.05rem; background: var(--mc-arancio); color: var(--mc-notte); cursor: pointer; }
.mc-cerca-grande button:hover { background: var(--mc-arancio-scuro); }
.mc-scorciatoie { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 16px 0 0; font-size: 0.9rem; }
.mc-scorciatoie > span { color: var(--mc-grigio); margin-right: 4px; }
.mc-scorciatoie a { padding: 6px 12px; border-radius: 999px; background: var(--mc-bianco); border: 1px solid #C6D0E1; color: var(--mc-notte); text-decoration: none; font-weight: 600; }
.mc-scorciatoie a:hover { border-color: var(--mc-blu); color: var(--mc-blu); }
.mc-apertura__secondaria { margin: 18px 0 0; }
.mc-apertura__secondaria a { color: var(--mc-notte); text-decoration: none; }
.mc-apertura__secondaria strong { color: var(--mc-blu); text-decoration: underline; text-underline-offset: 3px; }
.mc-apertura__scena { position: relative; }
.mc-apertura__scena img { width: 100%; height: auto; display: block; border-radius: 28px; }
.mc-bollino { position: absolute; display: flex; flex-direction: column; background: var(--mc-bianco); border: 2px solid var(--mc-notte); border-radius: 12px; padding: 10px 14px; box-shadow: 4px 4px 0 var(--mc-blu); font-size: 0.85rem; line-height: 1.25; }
.mc-bollino strong { font-size: 1.05rem; }
.mc-bollino--1 { left: -14px; top: 12%; transform: rotate(-3deg); }
.mc-bollino--2 { right: -10px; bottom: 9%; transform: rotate(2deg); background: var(--mc-arancio); }

/* Garanzie */
.mc-garanzie { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.mc-garanzie li { display: flex; gap: 12px; align-items: flex-start; background: var(--mc-bianco); border: 1px solid var(--mc-linea); border-radius: 12px; padding: 14px 16px; }
.mc-garanzie .mc-icona { color: var(--mc-blu); margin-top: 2px; }
.mc-garanzie li > span:last-child { display: flex; flex-direction: column; font-size: 0.9rem; color: var(--mc-testo); line-height: 1.35; }
.mc-garanzie strong { color: var(--mc-notte); font-size: 1rem; }
.mc-garanzie--scheda { grid-template-columns: 1fr 1fr; }
.mc-garanzie--carrello { grid-template-columns: repeat(3, 1fr); margin: 0 0 24px; }

/* Calcolatori */
.mc-calc { background: var(--mc-bianco); border: 2px solid var(--mc-notte); border-radius: 20px; box-shadow: 8px 8px 0 var(--mc-blu); padding: 32px; }
.mc-calc__testa h2 { margin-bottom: 8px; }
.mc-calc__testa p:last-child { color: var(--mc-testo); margin: 0 0 20px; max-width: 46rem; }
.mc-calc__schede { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; margin-bottom: 20px; scrollbar-width: thin; }
.mc-calc__schede button { flex: none; font: inherit; font-weight: 700; padding: 10px 16px; min-height: 44px; border-radius: 999px; border: 2px solid var(--mc-notte); background: var(--mc-bianco); color: var(--mc-notte); cursor: pointer; }
.mc-calc__schede button[aria-selected="true"] { background: var(--mc-notte); color: var(--mc-bianco); }
.mc-calc__corpo { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: start; }
.mc-calc__campi { display: flex; flex-direction: column; gap: 14px; }
.mc-calc__campi[hidden] { display: none; }
.mc-calc__campi label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; }
.mc-calc__campi label > span { display: flex; align-items: center; gap: 10px; font-weight: 400; color: var(--mc-grigio); }
.mc-calc__campi input, .mc-calc__campi select { width: 150px; height: 52px; padding: 0 14px; border: 2px solid #AEB8CB; border-radius: 10px; font: inherit; font-size: 1.15rem; font-weight: 700; color: var(--mc-notte); background: #FAFBFD; }
.mc-calc__campi select { width: auto; min-width: 150px; }
.mc-calc__campi input:focus, .mc-calc__campi select:focus { border-color: var(--mc-blu); outline: 3px solid rgba(25,61,122,.18); }
.mc-calc__aiuto { margin: 0; font-size: 0.88rem; color: var(--mc-grigio); }
.mc-calc__esito { background: var(--mc-fondo); border-radius: 16px; padding: 24px; border: 1px dashed #B7C6E0; }
.mc-calc__numero { font-size: clamp(2.4rem, 4vw, 3.4rem); font-weight: 800; line-height: 1; color: var(--mc-blu); margin: 0 0 8px; }
.mc-calc__dettaglio { margin: 0 0 18px; color: var(--mc-testo); }
.mc-calc__azioni { display: flex; flex-wrap: wrap; gap: 12px; }
.mc-calc__nota { font-size: 0.8rem; color: var(--mc-grigio); margin: 14px 0 0; }
.mc-calc-link { display: block; padding: 12px 14px; border-radius: 10px; background: #FFF4E6; border: 1px solid #F5C08A; color: var(--mc-notte); text-decoration: none; }
.mc-calc-link strong { color: #9A4A07; text-decoration: underline; }

/* Visti di recente */
.mc-visti { padding: 40px 0; }
.mc-visti h2 { font-size: 1.8rem !important; margin-bottom: 14px !important; }
.mc-visti__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(200px, 1fr); gap: 14px; overflow-x: auto; }
.mc-visti__lista a { display: flex; gap: 12px; align-items: center; background: var(--mc-bianco); border: 1px solid var(--mc-linea); border-radius: 12px; padding: 10px; text-decoration: none; color: var(--mc-notte); }
.mc-visti__lista img { width: 64px; height: 64px; object-fit: contain; border-radius: 8px; background: var(--mc-fondo); flex: none; }
.mc-visti__lista span { display: flex; flex-direction: column; font-size: 0.9rem; font-weight: 600; line-height: 1.3; }
.mc-visti__lista small { font-weight: 700; color: var(--mc-blu); margin-top: 4px; }

/* Come funziona */
.mc-passi ol { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; counter-reset: p; }
.mc-passi li { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 24px; border-radius: 16px; background: var(--mc-fondo); border: 1px solid var(--mc-linea); }
.mc-passi li:not(:last-child)::after { content: "→"; position: absolute; right: -18px; top: 34px; font-size: 1.6rem; color: var(--mc-blu); font-weight: 700; }
.mc-passi__n { width: 46px; height: 46px; border-radius: 50%; background: var(--mc-blu); color: var(--mc-bianco); display: flex; align-items: center; justify-content: center; font-size: 1.5rem; font-weight: 800; margin-bottom: 6px; }
.mc-passi strong { font-size: 1.25rem; }
.mc-passi li > span:last-child { color: var(--mc-testo); }

/* Ingressi */
.mc-ingressi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.mc-ingresso { display: flex; gap: 16px; align-items: center; padding: 18px; border-radius: 16px; background: var(--mc-bianco); border: 2px solid var(--mc-notte); box-shadow: var(--mc-ombra); color: var(--mc-notte); text-decoration: none; transition: transform .15s ease, box-shadow .15s ease; }
.mc-ingresso:hover { transform: translate(-2px, -2px); box-shadow: 8px 8px 0 var(--mc-blu); }
.mc-ingresso img { width: 104px; height: 104px; border-radius: 50%; flex: none; }
.mc-ingresso__testo { display: flex; flex-direction: column; gap: 6px; }
.mc-ingresso__testo strong { font-size: 1.2rem; }
.mc-ingresso__testo span { font-size: 0.92rem; color: var(--mc-testo); }
.mc-ingresso__testo em { font-style: normal; font-weight: 700; color: var(--mc-blu); }

/* Numeri */
.mc-numeri { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.mc-numeri li { background: var(--mc-bianco); border: 2px solid var(--mc-notte); border-radius: 16px; padding: 20px; box-shadow: 4px 4px 0 var(--mc-blu); display: flex; flex-direction: column; }
.mc-numeri strong { font-size: 3rem; line-height: 1; color: var(--mc-blu); font-weight: 800; }
.mc-numeri span { font-weight: 700; margin-top: 4px; }
.mc-numeri small { color: var(--mc-grigio); }
.mc-sezione--storia .mc-foto { display: none; }

/* Consegna */
.mc-consegna__comuni { color: #E3EAF7; font-size: 1.05rem; line-height: 1.7; margin: 0; }
.mc-consegna__chiedi { margin: 0 0 10px !important; font-weight: 600; }

/* Domande frequenti */
.mc-faq__lista { display: grid; gap: 10px; max-width: 900px; }
.mc-faq details { background: var(--mc-bianco); border: 1px solid var(--mc-linea); border-radius: 12px; padding: 0 20px; }
.mc-faq details[open] { border-color: var(--mc-blu); box-shadow: 4px 4px 0 var(--mc-blu); }
.mc-faq summary { cursor: pointer; padding: 18px 28px 18px 0; font-weight: 700; font-size: 1.05rem; list-style: none; position: relative; }
.mc-faq summary::-webkit-details-marker { display: none; }
.mc-faq summary::after { content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%); font-size: 1.6rem; color: var(--mc-blu); }
.mc-faq details[open] summary::after { content: "–"; }
.mc-faq details p { margin: 0 0 18px; color: var(--mc-testo); }

/* Contatto finale */
.mc-contatto { display: grid; grid-template-columns: 1.3fr 1fr; gap: 40px; align-items: center; }
.mc-contatto h2 { color: var(--mc-bianco); }
.mc-contatto .mc-occhiello { color: var(--mc-azzurro); }
.mc-contatto p { color: #D6DEED; }
.mc-contatto .mc-assistente { box-shadow: 6px 6px 0 var(--mc-arancio); color: var(--mc-notte); }
.mc-contatto .mc-assistente label { color: var(--mc-notte); }
.mc-contatto__azioni { display: flex; flex-direction: column; gap: 14px; align-items: stretch; }
.mc-contatto__mappa { color: var(--mc-azzurro); font-weight: 600; text-align: center; }

/* Scheda prodotto */
.mc-disp { display: flex; align-items: center; gap: 8px; font-weight: 700; margin: 0 0 12px; }
.mc-disp span { width: 10px; height: 10px; border-radius: 50%; background: currentColor; }
.mc-disp--si { color: var(--mc-verde); }
.mc-disp--poca { color: #B45309; }
.mc-disp--ordine { color: var(--mc-blu); }
.mc-disp--no { color: #9A3412; }
.mc-disp-mini { display: inline-block; margin: 4px 16px 0; font-size: 0.8rem; font-weight: 700; color: #B45309; }
.mc-barra-acquisto { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: flex; align-items: center; gap: 12px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: var(--mc-bianco); border-top: 2px solid var(--mc-notte); box-shadow: 0 -8px 24px rgba(20,32,58,.12); transform: translateY(110%); transition: transform .25s ease; }
.mc-barra-acquisto.visibile { transform: none; }
.mc-barra-acquisto img { width: 46px; height: 46px; object-fit: contain; border-radius: 8px; background: var(--mc-fondo); }
.mc-barra-acquisto__testo { flex: 1; min-width: 0; display: flex; flex-direction: column; font-size: 0.85rem; }
.mc-barra-acquisto__testo strong { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mc-barra-acquisto__testo span { font-weight: 800; color: var(--mc-blu); font-size: 1rem; }
.mc-barra-acquisto .mc-bottone { min-height: 46px; padding: 0 16px; white-space: nowrap; }

/* Barra in basso sul telefono (zona del pollice) */
.mc-barra-mobile { display: none; }

/* Elenchi prodotti: schede più pulite */
.woocommerce ul.products li.product, .wc-block-product-template .wc-block-product { border-radius: 14px; transition: box-shadow .15s ease, transform .15s ease; }
.woocommerce ul.products li.product:hover { box-shadow: var(--mc-ombra-morbida); transform: translateY(-2px); }

/* Prestazioni: niente macchie animate sul telefono */
@media (max-width: 781px) { body::before { animation: none; } }

/* --------------------------------------------------------------------------
   Telefono
   -------------------------------------------------------------------------- */
@media (max-width: 960px) {
	.mc-garanzie { grid-template-columns: 1fr 1fr; }
	.mc-ingressi { grid-template-columns: 1fr; }
	.mc-calc__corpo { grid-template-columns: 1fr; }
}
@media (max-width: 781px) {
	.mc-topbar__extra, .mc-topbar__contatti { display: none; }
	.mc-topbar__riga { justify-content: center; text-align: center; }
	header.wp-block-template-part { position: static; }
	.mc-header__riga { flex-wrap: wrap !important; }
	.mc-header__riga > :first-child { flex: 1 1 auto; min-width: 0; }
	.mc-header__azioni { flex: 0 0 auto; margin-left: auto; }
	.mc-header__riga { padding: 8px 0; gap: 8px 12px !important; }
	.mc-marchio img.mc-marchio__logo { height: 44px !important; }
	.mc-marchio__nome { font-size: 1.35rem; }
	.mc-marchio__sotto { font-size: 0.72rem; }
	.mc-search { order: 3; flex-basis: 100%; }
	.mc-search .wp-block-search__input, .mc-search .wp-block-search__button { height: 44px; }
	.mc-header__azioni .wc-block-customer-account__account-label { display: none; }
	.mc-apertura { grid-template-columns: 1fr; gap: 24px; }
	.mc-apertura__scena { max-width: 520px; margin: 0 auto; width: 100%; }
	.mc-bollino { font-size: 0.75rem; padding: 6px 10px; }
	.mc-bollino strong { font-size: 0.9rem; }
	.mc-bollino--1 { left: 4px; }
	.mc-bollino--2 { right: 4px; }
	.mc-cerca-grande input[type=search] { height: 56px; font-size: 1rem; padding: 0 14px; }
	.mc-cerca-grande button { padding: 0 18px; }
	.mc-fascia { padding-top: 40px; padding-bottom: 40px; }
	.mc-garanzie { grid-template-columns: 1fr 1fr; gap: 8px; }
	.mc-garanzie li { padding: 10px; gap: 8px; flex-direction: column; }
	.mc-garanzie li > span:last-child { font-size: 0.8rem; }
	.mc-garanzie--scheda, .mc-garanzie--carrello { grid-template-columns: 1fr; }
	.mc-garanzie--scheda li, .mc-garanzie--carrello li { flex-direction: row; }
	.mc-calc { padding: 20px; box-shadow: 5px 5px 0 var(--mc-blu); }
	.mc-calc__campi input { width: 120px; }
	.mc-passi ol { grid-template-columns: 1fr; }
	.mc-passi li:not(:last-child)::after { content: "↓"; right: 20px; top: auto; bottom: -26px; }
	.mc-contatto { grid-template-columns: 1fr; gap: 24px; }
	.mc-numeri strong { font-size: 2.3rem; }
	/* barra del pollice */
	.mc-barra-mobile { display: grid; grid-template-columns: repeat(5, 1fr); position: fixed; left: 0; right: 0; bottom: 0; z-index: 55;
		background: var(--mc-bianco); border-top: 1px solid var(--mc-linea); padding: 6px 4px calc(6px + env(safe-area-inset-bottom)); box-shadow: 0 -6px 20px rgba(20,32,58,.08); }
	.mc-barra-mobile a, .mc-barra-mobile button { position: relative; display: flex; flex-direction: column; align-items: center; gap: 2px; font: inherit; font-size: 0.7rem; font-weight: 600; color: var(--mc-notte); text-decoration: none; background: none; border: 0; padding: 4px 0; cursor: pointer; }
	.mc-barra-mobile .mc-icona { width: 24px; height: 24px; }
	.mc-barra-mobile__conta { position: absolute; top: 0; left: 55%; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--mc-arancio); color: var(--mc-notte); font-size: 0.7rem; font-weight: 800; display: flex; align-items: center; justify-content: center; }
	.mc-barra-mobile__conta[hidden] { display: none; }
	body { padding-bottom: 68px; }
	body.single-product .mc-barra-mobile { display: none; }
	body.single-product { padding-bottom: 76px; }
}
@media (min-width: 782px) { .mc-barra-acquisto { display: none; } }
@media (prefers-reduced-motion: reduce) {
	.mc-stato[data-aperto="si"]::before { animation: none; }
	.mc-bottone, .mc-ingresso, .mc-barra-acquisto { transition: none; }
}
.mc-calc__campi > *, .mc-assistente > *, .mc-contatto__azioni > *, .mc-calc__esito > * { margin-top: 0; margin-bottom: 0; }
.mc-calc__campi { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 16px 20px; align-content: start; }
.mc-calc__aiuto { grid-column: 1 / -1; }
.mc-fascia--calc { padding-top: 24px; }
.mc-calc__esito .mc-calc__azioni { margin-top: 0; }
.wp-block-woocommerce-customer-account a { display: flex; align-items: center; gap: 6px; font-weight: 600; color: var(--mc-notte); }
.wp-block-woocommerce-customer-account svg { width: 26px; height: 26px; display: block; }
.wc-block-mini-cart__button svg { width: 28px; height: 28px; }
@media (max-width: 781px) {
	.wp-block-woocommerce-customer-account .label { display: none; }
	.mc-header__riga > :first-child { flex: 0 1 auto; }
	.mc-header__azioni { gap: 6px !important; }
	body.home .mc-header .mc-search { display: none; }
	.mc-apertura__occhiello { display: none; }
	.mc-apertura h1 { font-size: 2.55rem; }
}

.mc-carrello { position: relative; display: flex; align-items: center; gap: 6px; color: var(--mc-notte); font-weight: 600; text-decoration: none; }
.mc-carrello .mc-icona { width: 28px; height: 28px; }
.mc-carrello__conta { position: absolute; top: -10px; left: 12px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--mc-arancio); color: var(--mc-notte); font-size: 0.72rem; font-weight: 800; display: flex; align-items: center; justify-content: center; border: 1px solid var(--mc-notte); }
.mc-carrello__conta[hidden] { display: none; }
@media (max-width: 781px) { .mc-carrello__testo { display: none; } }
.mc-calc__campi input { width: 110px; }
.mc-calc__esito { display: flex; flex-direction: column; gap: 12px; }
.mc-reparti-bar, .mc-fascia--calc { scroll-margin-top: 140px; }
#calcolatori, #reparti, #consegna, #domande { scroll-margin-top: 150px; }
