/* ============================================================
   WallMall Fresh — restyling per WoodMart 8.x + WooCommerce
   Palette originale del brand: viola #805496, oro #EBA910
   Font: Bricolage Grotesque (titoli) + Figtree (testo), locali
   ============================================================ */

/* ---------- font locali (GDPR-friendly, nessuna chiamata a Google) ---------- */
@font-face {
	font-family: 'Bricolage Grotesque';
	font-style: normal;
	font-weight: 700 800;
	font-display: swap;
	src: url('../../fonts/bricolage-grotesque-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url('../../fonts/figtree-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Figtree';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('../../fonts/figtree-italic-latin.woff2') format('woff2');
}

/* ---------- design token ---------- */
:root {
	--wm-viola: #805496;
	--wm-viola-deep: #5C3A70;
	--wm-viola-soft: #E9DFF0;
	--wm-wash: #F5F0F9;
	--wm-oro: #EBA910;
	--wm-oro-bright: #EEA33B;
	--wm-oro-ink: #2B1D00;
	--wm-ink: #33224A;
	--wm-muted: #6F617F;
	--wm-line: #E5DCEC;
	--wm-radius: 20px;
	--wm-shadow: 0 2px 4px rgba(51, 34, 74, .05), 0 16px 40px -16px rgba(92, 58, 112, .22);

	/* variabili globali WoodMart: colori */
	--wd-primary-color: var(--wm-viola);
	--wd-alternative-color: var(--wm-oro);
	--wd-link-color: var(--wm-viola);
	--wd-link-color-hover: var(--wm-viola-deep);
	--wd-title-color: var(--wm-ink);
	--wd-text-color: var(--wm-muted);

	/* variabili globali WoodMart: tipografia */
	--wd-title-font: 'Bricolage Grotesque', sans-serif;
	--wd-entities-title-font: 'Bricolage Grotesque', sans-serif;
	--wd-text-font: 'Figtree', sans-serif;
	--wd-widget-title-font: 'Bricolage Grotesque', sans-serif;

	/* allinea anche i global color di Elementor già usati nelle pagine */
	--e-global-color-primary: var(--wm-viola);
	--e-global-color-secondary: var(--wm-oro);
	--e-global-color-text: var(--wm-muted);
	--e-global-color-accent: var(--wm-ink);
}

/* ---------- tipografia ----------
   WoodMart genera il proprio CSS tipografico (Ubuntu) caricato dopo il child:
   qui serve !important per vincere a prescindere dall'ordine. */
h1, h2, h3, h4, h5,
.title, .woodmart-title-container,
.wd-entities-title, .wd-entities-title a,
.product-title, .entry-title,
.woocommerce-loop-product__title {
	font-family: 'Bricolage Grotesque', sans-serif !important;
	letter-spacing: -.015em;
}

h1, h2, h3, h4,
.entry-title, .woodmart-title-container {
	color: var(--wm-ink);
}

body, p, .wd-nav, input, select, textarea, button {
	font-family: 'Figtree', sans-serif !important;
}

/* ---------- bottoni a pillola ---------- */
.btn,
.button,
button[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.add_to_cart_button,
.single_add_to_cart_button,
.checkout-button,
.wd-button,
a[class*="btn-style-"],
.wd-slide .btn,
.elementor-button {
	border-radius: 999px !important;
	font-family: 'Figtree', sans-serif !important;
	font-weight: 700;
	transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease;
}

.btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover {
	transform: translateY(-1px);
}

/* CTA principale in oro (aggiungi al carrello, checkout) */
.single_add_to_cart_button,
.checkout-button,
.btn.btn-color-primary,
.btn-style-default.btn-color-alt {
	background-color: var(--wm-oro) !important;
	color: var(--wm-oro-ink) !important;
	box-shadow: 0 6px 16px -6px rgba(235, 169, 16, .55);
}

.single_add_to_cart_button:hover,
.checkout-button:hover {
	background-color: var(--wm-oro-bright) !important;
}

/* ---------- card prodotto ---------- */
.wd-product,
.product-grid-item .product-wrapper {
	border-radius: var(--wm-radius);
	overflow: hidden;
	transition: transform .15s ease, box-shadow .15s ease;
}

.wd-product:hover,
.product-grid-item:hover .product-wrapper {
	transform: translateY(-4px);
	box-shadow: var(--wm-shadow);
}

.product-grid-item .price {
	font-family: 'Bricolage Grotesque', sans-serif;
	font-weight: 800;
	color: var(--wm-ink);
	font-variant-numeric: tabular-nums;
}

/* badge "in offerta" / etichette a pillola */
.product-label,
.onsale,
.wd-product-label {
	border-radius: 999px !important;
	font-weight: 700;
}

.product-label.onsale,
span.onsale {
	background-color: var(--wm-oro);
	color: var(--wm-oro-ink);
}

/* ---------- blocchi arrotondati generici ---------- */
.wd-info-box,
.wd-banner,
.blog-post-loop .article-inner,
.woocommerce-message,
.woocommerce-info,
.wp-block-group.has-background {
	border-radius: var(--wm-radius);
}

.woocommerce-message {
	border-top-color: var(--wm-viola);
}

/* ---------- header ---------- */
.whb-header .whb-main-header {
	border-bottom: 1px solid var(--wm-line);
}

/* voci di menu con hover a pillola */
.wd-nav-main > li > a {
	border-radius: 999px;
	transition: background-color .12s ease;
}

.wd-nav-main > li > a:hover,
.wd-nav-main > li.current-menu-item > a {
	background-color: var(--wm-viola-soft);
	color: var(--wm-viola-deep);
}

/* ---------- footer in viola profondo ---------- */
.footer-container,
.wd-footer {
	background-color: var(--wm-viola-deep) !important;
	color: #D9C9E4;
}

.footer-container .widget-title,
.wd-footer .widget-title {
	color: var(--wm-oro-bright);
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: 13px;
}

.footer-container a,
.wd-footer a {
	color: #D9C9E4;
}

.footer-container a:hover,
.wd-footer a:hover {
	color: #fff;
}

/* ---------- sezioni "lavate" di lavanda (da usare in Elementor) ----------
   In Elementor: assegna la classe CSS "wm-wash" alla sezione. */
.wm-wash {
	background-color: var(--wm-wash);
}

/* Pannello hero viola con angoli 32px (classe "wm-hero" sulla sezione/container) */
.wm-hero {
	background: radial-gradient(120% 160% at 85% -20%, #6E4384 0%, #4A2C5C 70%);
	border-radius: 32px;
	overflow: hidden;
	color: #fff;
	box-shadow: var(--wm-shadow);
}

.wm-hero h1, .wm-hero h2, .wm-hero h3 {
	color: #fff;
}

/* Banda oro "Diventa Installatore" (classe "wm-band-oro") */
.wm-band-oro {
	background: linear-gradient(120deg, var(--wm-oro) 0%, var(--wm-oro-bright) 100%);
	border-radius: 32px;
	overflow: hidden;
	color: var(--wm-oro-ink);
	box-shadow: var(--wm-shadow);
}

.wm-band-oro h1, .wm-band-oro h2, .wm-band-oro h3 {
	color: var(--wm-oro-ink);
}

/* Chip a pillola (classe "wm-chip" su un text/button widget) */
.wm-chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--wm-viola-soft);
	color: var(--wm-viola-deep);
	border-radius: 999px;
	padding: 6px 14px;
	font-size: 13.5px;
	font-weight: 600;
}

/* ---------- layout mockup: hero, pillar, banda (pagine costruite a blocchi) ---------- */
.wm-hero-inner{display:grid;grid-template-columns:11fr 9fr;gap:32px;align-items:center;padding:56px 52px}
@media(max-width:900px){.wm-hero-inner{grid-template-columns:1fr;padding:36px 24px}}
.wm-hero .wm-chip{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.25)}
.wm-hero h1{font-size:clamp(40px,5.5vw,64px)!important;line-height:1.03;color:#fff!important;margin:18px 0}
.wm-hero h1 em{font-style:normal;color:var(--wm-oro-bright)}
.wm-hero p.wm-lead{color:#D9C9E4;font-size:18px;max-width:30em;margin:0 0 26px}
.wm-cta{display:inline-block;background:var(--wm-oro);color:#2B1D00!important;font-weight:700;border-radius:999px;padding:13px 26px;text-decoration:none;margin-right:10px;box-shadow:0 6px 16px -6px rgba(235,169,16,.55)}
.wm-cta.ghost{background:#fff;color:var(--wm-viola-deep)!important;box-shadow:none}
.wm-cta:hover{transform:translateY(-1px)}
.wm-fcards{display:flex;flex-direction:column;gap:14px}
.wm-fcard{background:#fff;border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 18px 40px -18px rgba(0,0,0,.45)}
.wm-fcard:nth-child(1){transform:rotate(-1.2deg) translateX(-8px)}
.wm-fcard:nth-child(2){transform:rotate(.8deg) translateX(12px)}
.wm-fcard:nth-child(3){transform:rotate(-.6deg)}
.wm-fcard b{font-family:'Bricolage Grotesque',sans-serif!important;font-size:16px;color:#33224A;display:block}
.wm-fcard span{font-size:13px;color:#6F617F}
.wm-fcard .wm-dot{margin-left:auto;font-size:12px;font-weight:700;color:#1F8A5D;background:#E3F3EC;border-radius:999px;padding:4px 10px;white-space:nowrap}
.wm-fcard .wm-dot.oro{color:#8C6404;background:#FBF0D8}
.wm-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}
@media(max-width:900px){.wm-pillars{grid-template-columns:1fr}}
.wm-pillar{background:#fff;border:1px solid var(--wm-line);border-radius:20px;padding:22px;box-shadow:0 6px 18px -8px rgba(92,58,112,.18)}
.wm-pillar b{font-family:'Bricolage Grotesque',sans-serif!important;font-size:19px;color:#33224A;display:block;margin-bottom:4px}
.wm-pillar span{font-size:14px;color:#6F617F}
.wm-band-oro .wm-band-inner{display:grid;grid-template-columns:3fr 2fr;gap:28px;align-items:center;padding:40px 48px}
@media(max-width:900px){.wm-band-oro .wm-band-inner{grid-template-columns:1fr;padding:28px 24px}}
.wm-band-oro h2{color:#2B1D00!important;margin:0 0 8px}
.wm-band-oro p{color:#4A3400;margin:0}
.wm-page-fresh .entry-title,.wm-page-fresh .page-title,.page .site-content>.entry-header{display:none}

/* ---------- pagina prodotto: linguaggio del mockup ---------- */
/* breadcrumb piccolo e discreto */
.single-product .wd-breadcrumbs{font-size:13px;color:var(--wm-muted)}
.single-product .wd-breadcrumbs a{color:var(--wm-muted)}
.single-product .wd-breadcrumbs a:hover{color:var(--wm-viola)}

/* titolo grande in Bricolage */
.single-product .product_title{font-size:clamp(26px,3vw,38px)!important;font-weight:800!important;line-height:1.1!important;letter-spacing:-.015em}

/* prezzo grande, cifre tabellari */
.single-product .summary-inner .price{font-family:'Bricolage Grotesque',sans-serif!important;font-weight:800!important;font-size:38px!important;color:var(--wm-ink)!important;font-variant-numeric:tabular-nums}
.single-product .summary-inner .price del{font-size:20px;color:var(--wm-muted);font-weight:400!important}
.single-product .summary-inner .price ins{text-decoration:none}

/* disponibilità a pillola: verde se disponibile, ambra se esaurito */
.single-product .stock{display:inline-flex!important;align-items:center;gap:8px;border-radius:999px;padding:6px 14px!important;font-size:13px!important;font-weight:700!important}
.single-product .stock.in-stock{color:#1F8A5D!important;background:#E3F3EC}
.single-product .stock.in-stock::before{content:"";width:8px;height:8px;border-radius:50%;background:#1F8A5D}
.single-product .stock.out-of-stock{color:#8C6404!important;background:#FBF0D8}

/* quantità a pillola */
.single-product .quantity{border:1.5px solid var(--wm-line)!important;border-radius:999px!important;overflow:hidden}
.single-product .quantity input[type=number],.single-product .quantity input[type=text]{border:0!important;font-weight:700}
.single-product .quantity .minus,.single-product .quantity .plus{border:0!important;background:transparent!important;color:var(--wm-viola)!important;font-weight:700}

/* meta prodotto: categorie come pillole viola */
.single-product .product_meta{border-top:1px solid var(--wm-line);padding-top:14px;font-size:13px;color:var(--wm-muted)}
.single-product .product_meta a{display:inline-block;background:var(--wm-viola-soft);color:var(--wm-viola-deep);border-radius:999px;padding:3px 12px;margin:2px 2px 2px 0;font-weight:600;text-decoration:none}
.single-product .product_meta a:hover{background:var(--wm-viola);color:#fff}

/* tab descrizione/recensioni: linguette a pillola + pannello card */
.single-product .woocommerce-tabs .wd-nav-tabs li a,
.single-product .woocommerce-tabs ul.tabs li a{border-radius:999px!important;padding:9px 20px!important;font-weight:700}
.single-product .woocommerce-tabs .wd-nav-tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li.active a{background:var(--wm-viola-soft);color:var(--wm-viola-deep)!important}
.single-product .woocommerce-Tabs-panel{background:var(--wm-wash);border:1px solid var(--wm-line);border-radius:20px;padding:26px!important;margin-top:14px}

/* tabella caratteristiche come scheda tecnica */
.single-product table.shop_attributes{border:1px solid var(--wm-line);border-radius:16px;overflow:hidden;border-collapse:separate;border-spacing:0;background:#fff}
.single-product table.shop_attributes th{background:var(--wm-wash);color:var(--wm-muted);font-weight:600;text-transform:uppercase;font-size:11.5px;letter-spacing:.05em;padding:11px 16px}
.single-product table.shop_attributes td{padding:11px 16px;font-variant-numeric:tabular-nums}
.single-product table.shop_attributes tr+tr th,.single-product table.shop_attributes tr+tr td{border-top:1px solid var(--wm-line)}

/* galleria con angoli morbidi */
.single-product .woocommerce-product-gallery,.single-product .woocommerce-product-gallery__image img{border-radius:20px;overflow:hidden}

/* titolo sezione correlati */
.single-product .related-products h2,.single-product .upsells h2{font-size:26px!important;font-weight:800!important}

/* ---------- scheda prodotto: blocchi aggiunti dal child ---------- */
.wm-prod-chip{margin-bottom:10px;text-decoration:none}
.wm-save-pill{display:inline-block;background:var(--wm-oro-wash,#FBF0D8);color:#8C6404;font-size:13px;font-weight:700;border-radius:999px;padding:4px 12px;margin:4px 0 0}
.wm-save-pill .woocommerce-Price-amount{color:#8C6404}

/* selettore "Come lo vuoi?" */
.wm-install{border:0;margin:18px 0;padding:0}
.wm-install legend{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--wm-muted);margin-bottom:10px}
.wm-opt{display:flex;gap:12px;align-items:flex-start;border:1.5px solid var(--wm-line);border-radius:16px;padding:13px 16px;cursor:pointer;background:#fff;margin:0 0 10px}
.wm-opt input{accent-color:var(--wm-viola);margin-top:4px}
.wm-opt b{font-size:15px;color:var(--wm-ink);display:block}
.wm-opt small{font-size:13px;color:var(--wm-muted)}
.wm-opt:has(input:checked){border-color:var(--wm-viola);background:var(--wm-viola-soft)}

/* rassicurazioni 2x2 */
.wm-assurances{list-style:none;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--wm-line);display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}
@media(max-width:560px){.wm-assurances{grid-template-columns:1fr}}
.wm-assurances li{font-size:13px;color:var(--wm-muted)}
.wm-assurances b{display:block;font-size:14px;color:var(--wm-ink)}

/* bottone WhatsApp del plugin → pillola verde piena larghezza */
.single-product a[href*="api.whatsapp.com"],
.single-product a[class*="wa-order"]{display:flex!important;justify-content:center;align-items:center;gap:8px;width:100%;background:#25D366!important;color:#083D1E!important;font-weight:700!important;border-radius:999px!important;padding:13px 20px!important;text-decoration:none!important;margin-top:10px;border:0!important}
.single-product a[href*="api.whatsapp.com"]:hover{filter:brightness(1.05)}

/* galleria: pannello lavanda + sticky su desktop */
.single-product .woocommerce-product-gallery{background:var(--wm-wash);border:1px solid var(--wm-line);padding:18px}
@media(min-width:1025px){.single-product .product-images-inner,.single-product .woocommerce-product-gallery{position:sticky;top:120px}}

/* ---------- briciole di pane come il mockup ---------- */
.wd-breadcrumbs{display:flex!important;align-items:center;flex-wrap:nowrap;gap:2px;font-family:'Figtree',sans-serif!important;font-size:13.5px!important;color:var(--wm-muted)!important;padding:18px 0 6px;overflow:hidden}
.wd-breadcrumbs a{color:var(--wm-muted)!important;text-decoration:none!important;white-space:nowrap}
.wd-breadcrumbs a:hover{color:var(--wm-viola)!important;text-decoration:underline!important}
.wd-breadcrumbs .wd-delimiter{color:var(--wm-line)!important;margin:0 7px!important}
.wd-breadcrumbs .wd-last{color:var(--wm-ink)!important;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:38ch}

/* ---------- rifiniture scheda prodotto (badge, titolo, prezzo) ---------- */
/* badge: pillole compatte, non cerchi — WoodMart li fa tondi con width/height fissi */
.product-labels .product-label,
.product-label.wd-shape-round{width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;border-radius:999px!important;padding:6px 14px!important;font-size:11.5px!important;font-weight:700!important;line-height:1!important;white-space:nowrap!important;letter-spacing:.03em}
.product-labels{gap:6px!important;display:flex;flex-direction:column;align-items:flex-start}
.product-label.onsale{background:var(--wm-oro)!important;color:#2B1D00!important}
.product-label.out-of-stock{background:#EFEAF3!important;color:var(--wm-muted)!important}

/* titolo: dimensione da mockup anche con i nomi lunghi del catalogo */
.single-product .product_title{font-size:clamp(21px,2.2vw,29px)!important;line-height:1.18!important}

/* prezzo: prima il prezzo attuale, poi il barrato, pillola risparmio in linea */
.single-product .summary-inner p.price{display:inline-flex!important;align-items:baseline;gap:12px;margin-right:10px}
.single-product .summary-inner p.price ins{order:1}
.single-product .summary-inner p.price del{order:2}
.single-product .wm-save-pill{display:inline-block;vertical-align:baseline}

/* niente frecce prodotto prev/next accanto al breadcrumb (nel mockup non ci sono) */
.wd-product-nav-btn{display:none!important}

/* immagini/banner nella descrizione breve: angoli morbidi */
.single-product .woocommerce-product-details__short-description img{border-radius:16px}

/* ---------- blocco acquisto identico al mockup ---------- */
/* card opzione: testo a sinistra, prezzo a destra in Bricolage */
.wm-opt{align-items:center}
.wm-opt .wm-opt-txt{flex:1}
.wm-opt .wm-opt-price{font-family:'Bricolage Grotesque',sans-serif!important;font-weight:800;font-size:16px;color:var(--wm-ink);white-space:nowrap}
.wm-opt .wm-opt-price .woocommerce-Price-amount{color:var(--wm-ink);font-weight:800}

/* riga quantità + carrello: pillola qty a sinistra, bottone oro che riempie */
.single-product form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px}
.single-product form.cart .wm-install{flex-basis:100%;margin:6px 0 2px}
.single-product form.cart .quantity{flex:0 0 auto;display:inline-flex;align-items:center;height:50px}
.single-product form.cart .single_add_to_cart_button{flex:1 1 auto;height:50px;font-size:16px!important}
.single-product form.cart .woocommerce-variation-add-to-cart{flex-basis:100%;display:flex;gap:12px}

/* rassicurazioni con icona tonda lavanda */
.wm-assurances li{display:flex;gap:10px;align-items:flex-start}
.wm-assurances .wm-ass-ic{flex:none;width:34px;height:34px;border-radius:50%;background:var(--wm-viola-soft);display:grid;place-items:center;font-style:normal}
.wm-assurances li>span b{display:block}

/* nel form clonato della barra sticky niente selettore/rassicurazioni */
.wd-sticky-btn .wm-install,.wd-sticky-btn-cart .wm-install,.wd-sticky-add-to-cart .wm-install{display:none!important}

/* ---------- header come il mockup ---------- */
/* topbar viola scuro: call center a sinistra, spedizioni a destra */
.whb-top-bar{background:var(--wm-viola-deep)!important}
.whb-top-bar .whb-top-bar-inner{display:flex;justify-content:space-between;align-items:center;min-height:36px}
.whb-top-bar .wd-header-text{font-size:0!important;color:#fff}
.whb-top-bar .wd-header-text::before{content:"📞 Call center 7 giorni su 7, 9:00–18:00 — 06 98380540";font-size:13px;font-weight:600;color:#fff;letter-spacing:.01em}
.whb-top-bar .whb-top-bar-inner::after{content:"Spedizione gratuita da 19,99€ · Resi assistiti";font-size:13px;color:#D9C9E4;margin-left:auto;padding-left:20px;white-space:nowrap}
@media(max-width:1024px){.whb-top-bar .whb-top-bar-inner::after{display:none}}

/* header principale: sfondo pulito e bordo sottile */
.whb-general-header,.whb-main-header{background:#fff!important}
:root[data-theme] .whb-general-header{background:var(--wm-ground,#fff)!important}

/* account → pillola "Accedi" */
.wd-header-my-account.wd-tools-element>a{border:1.5px solid var(--wm-line);border-radius:999px;padding:9px 20px;display:inline-flex;align-items:center}
.wd-header-my-account.wd-tools-element>a:hover{border-color:var(--wm-viola)}
.wd-header-my-account .wd-tools-icon{display:none!important}
.wd-header-my-account>a::before{content:"Accedi";font-family:'Figtree',sans-serif;font-size:14.5px;font-weight:700;color:var(--wm-ink)}
.wd-header-my-account .wd-tools-text{display:none!important}

/* carrello → pillola oro "Carrello · N" */
.wd-header-cart.wd-tools-element>a{background:var(--wm-oro);border-radius:999px;padding:9px 20px;display:inline-flex;align-items:center;box-shadow:0 6px 16px -6px rgba(235,169,16,.55)}
.wd-header-cart.wd-tools-element>a:hover{filter:brightness(1.06)}
.wd-header-cart .wd-tools-icon{width:auto!important;height:auto!important}
.wd-header-cart .wd-tools-icon::before{display:none!important}
.wd-header-cart .wd-cart-number{position:static!important;background:none!important;font-family:'Figtree',sans-serif!important;font-size:14.5px!important;font-weight:700!important;color:#2B1D00!important;min-width:0!important;height:auto!important;line-height:1.2!important}
.wd-header-cart .wd-cart-number::before{content:"Carrello · "}
.wd-header-cart .wd-cart-number>span{display:none}
.wd-header-cart .wd-cart-subtotal{display:none!important}
