/* ==========================================================================
   Gioielli Spallucci · testata, cassetto del menu e piede (versione finale)
   Da «Maison»: testata col logo al centro, barra compatta col filo d'oro,
   cassetto col blocco scuro, piede a scrigno. Da «Editoriale»: tendine a
   pannello con didascalia, firma di Nostre Creazioni, barra da 50 px con
   pls-header-sticked, colonna Acquisti online. Da «Boutique»: frecce e tacche
   degli annunci, righe del cassetto, salto al contenuto.
   Si carica dopo i fogli del tema. Classi nuove col prefisso spl-. Un solo !important, mirato: la pausa
   d'intenzione delle tendine col movimento ridotto, contro la regola di Elementor (sezione 14).
   ========================================================================== */

:root {
	/* colori del tema */
	--spl-nero: #1e1218;          /* nero caldo dei pulsanti del tema */
	--spl-scrigno: #160d12;       /* riga finale del piede, un passo piu' scura */
	--spl-velluto: #2b1b24;       /* luce radiale in alto nel piede */
	--spl-oro: #d89d5d;           /* caramello: filetti, losanghe, testo solo su scuro (7,7:1) */
	--spl-testo: #222222;
	--spl-testo-2: #4b4347;       /* righe delle didascalie, 9:1 su bianco */
	--spl-grigio: #6c6669;        /* secondario su bianco, 5,6:1 */
	--spl-filetto: #ebe6e8;
	--spl-filetto-forte: #d6cfd2;
	--spl-chiaro: rgba(255, 255, 255, .86);   /* testo su nero caldo */
	--spl-chiaro-2: rgba(255, 255, 255, .66);
	--spl-riga-scura: rgba(255, 255, 255, .12);
	--spl-ombra: rgba(30, 18, 24, .42);

	/* carattere e movimento */
	--spl-font: var(--pls-primary-font, "Jost"), "Jost", sans-serif;
	--spl-curva: cubic-bezier(.2, .7, .2, 1);
	--spl-sipario: cubic-bezier(.16, .84, .3, 1);
	--spl-attesa: .12s;           /* pausa d'intenzione prima che una tendina si apra */
	--spl-turno: 6s;              /* durata di ogni annuncio */

	/* misure della testata */
	--spl-admin: 0px;             /* barra di WordPress, vedi body.admin-bar */
	--spl-servizi-h: 40px;
	--spl-principale-h: 116px;
	--spl-barra-h: 50px;          /* = aggancio fisso (50 px) della galleria prodotto del tema */
	--spl-sopra: calc(var(--spl-servizi-h) + var(--spl-principale-h));   /* quanto scorre via prima dell'aggancio */

	/* tendine */
	--spl-pannello-x: 44px;       /* margine interno dei pannelli */
	--spl-pannello-y: 30px;
	--spl-parola: 30px;           /* parole grandi di Gioielli, Accessori, Orologi */
	--spl-dida-w: 362px;          /* colonna della didascalia */
	--spl-dida-titolo: 34px;
	--spl-dida-righe: 2;          /* righe di testo della didascalia piu' lunga (Brand escluso) */
	/* altezza della didascalia: occhiello 12 + 12, titolo, 10, righe da 21,7 px.
	   Un pannello con didascalia e' alto quanto lei o quanto le sue voci, se sono di piu'. */
	--spl-dida-h: calc(34px + var(--spl-dida-titolo) + var(--spl-dida-righe) * 21.7px);

	/* icone in maschera per il pannello di ricerca del tema */
	--spl-lente: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.25'/%3E%3Cpath d='m15.2 15.2 4.8 4.8'/%3E%3C/svg%3E");
	--spl-croce: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='m6.5 6.5 11 11M17.5 6.5l-11 11'/%3E%3C/svg%3E");
}

/* barra di amministrazione di WordPress: 32 px, 46 px fino a 782 px, sotto i 600 px scorre via con la pagina.
   scroll-padding: i salti ad ancora («Vai al contenuto», recensioni) e il fuoco da tastiera si fermano 12 px
   sotto la barra agganciata, e sotto quella di WordPress finche' resta ferma in alto */
html { scroll-padding-top: calc(var(--spl-barra-h) + 12px); }
body.admin-bar { --spl-admin: var(--wp-admin--admin-bar--height, 32px); }
html:has(body.admin-bar) { scroll-padding-top: calc(var(--wp-admin--admin-bar--height, 32px) + var(--spl-barra-h) + 12px); }
@media (max-width: 782px) {
	body.admin-bar { --spl-admin: var(--wp-admin--admin-bar--height, 46px); }
	html:has(body.admin-bar) { scroll-padding-top: calc(var(--wp-admin--admin-bar--height, 46px) + var(--spl-barra-h) + 12px); }
}
@media (max-width: 600px) {
	body.admin-bar { --spl-admin: 0px; }
	html:has(body.admin-bar) { scroll-padding-top: calc(var(--spl-barra-h) + 12px); }
}

/* --------------------------------------------------------------------------
   1. Basi comuni
   -------------------------------------------------------------------------- */

/* Il tema mette overflow:hidden sul contenitore della pagina, che impedirebbe lo sticky.
   clip ritaglia allo stesso modo senza creare un contenitore di scorrimento; flow-root conserva
   il contesto di formattazione che hidden creava (il margine alto della testata resta dentro). */
@supports (overflow: clip) {
	.pls-site-wrapper { display: flow-root; overflow: clip; }
}

/* distanza fra testata e titolo di pagina del tema (prima si appoggiava a .pls-site-header + #page-title) */
@media (max-width: 1024px) {
	#header + #page-title { padding-top: 35px; padding-bottom: 35px; }
}
@media (max-width: 767px) {
	#header + #page-title { padding-top: 25px; padding-bottom: 25px; }
}

.spl-contenitore {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--pls-container-width, 1396px);
	margin: 0 auto;
	padding: 0 15px;
}
.spl-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}
.spl-ico {
	display: block;
	flex: none;
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.3;
	stroke-linecap: round;
	stroke-linejoin: round;
	overflow: visible;
}
.spl-ico * { vector-effect: non-scaling-stroke; }

/* azzeramenti senza peso: le classi della proposta vincono sempre */
:where(#header, #footer, .spl-cassetto) *,
:where(#header, #footer, .spl-cassetto) *::before,
:where(#header, #footer, .spl-cassetto) *::after { box-sizing: border-box; }
:where(#header, #footer, .spl-cassetto) ul { list-style: none; margin: 0; padding: 0; }
:where(#header, #footer, .spl-cassetto) li { margin: 0; }
:where(#header, #footer, .spl-cassetto) p { margin: 0; }

/* Il tema anima «all» su link e pulsanti: anche la visibilita' arriverebbe in ritardo.
   Qui si animano solo colori, opacita' e trasformazioni. */
#header a, #header button,
#footer a, #footer button,
.spl-cassetto a, .spl-cassetto button,
.pls-search-popup a, .pls-search-popup button {
	transition-property: color, background-color, border-color, box-shadow, opacity, transform;
}

/* fuoco ben visibile (il tema lo toglie ovunque): nero su chiaro, caramello su scuro */
#header :focus-visible,
.spl-cassetto :focus-visible,
.pls-search-popup :focus-visible {
	outline: 2px solid var(--spl-nero);
	outline-offset: 3px;
}
#header .spl-servizi :focus-visible,
#footer :focus-visible,
.spl-cassetto .spl-cassetto__servizi :focus-visible {
	outline: 2px solid var(--spl-oro);
	outline-offset: 3px;
}

/* --------------------------------------------------------------------------
   2. Testata: resta nel flusso e si aggancia con lo sticky.
      Scorrono via servizi e riga del logo, la riga del menu resta in alto.
      Nessun elemento fisso, nessuno spostamento del menu, anche senza script.
      La barra servizi sta nel margine alto della testata (margine negativo):
      il riquadro agganciato comincia con la riga del logo, cosi' quando si aggancia
      parte esattamente sotto la barra di WordPress, a ogni larghezza.
   -------------------------------------------------------------------------- */

#header.spl-testata {
	position: sticky;
	top: calc(var(--spl-admin) - var(--spl-principale-h));
	z-index: 990;
	display: flow-root;
	margin-top: var(--spl-servizi-h);
	font-family: var(--spl-font);
	color: var(--spl-testo);
	background: #fff;
	-webkit-font-smoothing: antialiased;
}
#header a { text-decoration: none; }

/* salto al contenuto per chi usa la tastiera: invisibile e fuori vista finche' non riceve il fuoco */
#header .spl-salta {
	position: absolute;
	top: 8px;
	left: 15px;
	z-index: 60;
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0 20px 0 calc(20px + .16em);
	background: #fff;
	color: var(--spl-nero);
	font: 500 12px/1 var(--spl-font);
	letter-spacing: .16em;
	text-transform: uppercase;
	box-shadow: 0 12px 30px -14px var(--spl-ombra);
	opacity: 0;
	pointer-events: none;
	transform: translateY(-300%);
}
#header .spl-salta:focus { opacity: 1; pointer-events: auto; transform: none; }

/* --------------------------------------------------------------------------
   3. Barra servizi: contatti, annunci a turno, boutique (tutto in maiuscolo spaziato)
   -------------------------------------------------------------------------- */

.spl-servizi {
	height: var(--spl-servizi-h);
	margin-top: calc(-1 * var(--spl-servizi-h));
	background: var(--spl-nero);
	color: var(--spl-chiaro);
	font-size: 12px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: .16em;
	text-transform: uppercase;
}
.spl-servizi__in {
	height: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	grid-template-rows: 100%;
	align-items: center;
	column-gap: 24px;
}
#header .spl-servizi a {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	min-height: 32px;
	color: var(--spl-chiaro);
	white-space: nowrap;
	transition-duration: .25s;
}
#header .spl-servizi a:hover { color: #fff; }
.spl-servizi .spl-ico { width: 15px; height: 15px; color: var(--spl-oro); }
.spl-servizi__contatti { display: flex; align-items: center; justify-self: start; }
.spl-servizi__contatti li { display: flex; align-items: center; }
.spl-servizi__contatti li + li::before {
	content: "";
	width: 1px;
	height: 14px;
	margin: 0 18px;
	background: rgba(255, 255, 255, .22);
}
.spl-servizi__boutique { justify-self: end; }

/* annunci: una riga sola centrata nella barra; il primo si legge anche senza script,
   gli altri stanno nella stessa cella della griglia ed entrano a turno */
.spl-annunci {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	min-width: 0;
}
.spl-annunci__finestra {
	position: relative;
	width: 420px;
	max-width: 100%;
	height: 100%;
	overflow: hidden;
}
.spl-pronto .spl-annunci__finestra { cursor: pointer; }
.spl-annunci__lista {
	display: grid;
	height: 100%;
	align-items: center;
	justify-items: center;
}
.spl-annuncio {
	grid-area: 1 / 1;
	padding: 0 4px;
	color: #fff;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity .3s ease, transform .3s ease, visibility 0s linear .3s;
}
.spl-annuncio.spl-attivo {
	opacity: 1;
	visibility: inherit;
	transform: none;
	transition: opacity .45s ease .22s, transform .6s var(--spl-curva) .22s, visibility 0s linear .22s;
}
.spl-annuncio.spl-uscente { transform: translateY(-8px); }

/* le tacche segnano il turno: quella attiva si riempie di caramello (e misura il tempo dell'annuncio) */
.spl-annunci__tacche {
	position: absolute;
	left: 50%;
	bottom: 5px;
	display: flex;
	gap: 6px;
	transform: translateX(-50%);
	pointer-events: none;
}
.spl-tacca {
	position: relative;
	width: 14px;
	height: 1px;
	overflow: hidden;
	background: rgba(255, 255, 255, .2);
}
.spl-tacca::after {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--spl-oro);
	transform: scaleX(0);
	transform-origin: 0 50%;
}
.spl-pronto .spl-tacca.spl-attiva::after { animation: spl-turno var(--spl-turno) linear forwards; }
.spl-annunci:hover .spl-tacca::after,
.spl-annunci:focus-within .spl-tacca::after { animation-play-state: paused; }
.spl-annunci.spl-fermo .spl-tacca.spl-attiva::after { animation: none; transform: none; }
@keyframes spl-turno {
	to { transform: scaleX(1); }
}

/* frecce: pulsanti veri, compaiono quando lo script e' pronto (lo spazio e' gia' riservato) */
#header .spl-annunci__freccia,
#header .spl-annunci__freccia:hover,
#header .spl-annunci__freccia:focus {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 32px;
	height: 32px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--spl-chiaro-2);
	font-size: 0;
	line-height: 0;
	box-shadow: none;
}
#header .spl-annunci__freccia:hover { color: var(--spl-oro); }
#header .spl-annunci__freccia .spl-ico { width: 14px; height: 14px; color: inherit; }
.spl-annunci:not(.spl-pronto) .spl-annunci__freccia,
.spl-annunci:not(.spl-pronto) .spl-annunci__tacche { visibility: hidden; }

/* --------------------------------------------------------------------------
   4. Riga del logo (solo desktop): ricerca, logo, Accedi, Preferiti, Carrello
   -------------------------------------------------------------------------- */

.spl-principale { height: var(--spl-principale-h); background: #fff; }
.spl-principale__in {
	height: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	column-gap: 32px;
}
.spl-marchio { display: block; line-height: 0; }
.spl-marchio img { display: block; width: 216px; height: auto; max-width: none; }

/* ricerca del tema, ridisegnata: un filo sottile al posto della scatola */
#header .spl-cerca { position: relative; width: 100%; max-width: 330px; justify-self: start; }
#header .spl-cerca .searchform {
	position: relative;
	display: flex;
	align-items: center;
	height: 44px;
	border: 0;
	border-bottom: 1px solid var(--spl-filetto-forte);
	background: transparent;
}
#header .spl-cerca .searchform::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 2px;
	background: var(--spl-nero);
	transform: scaleX(0);
	transition: transform .5s var(--spl-curva);
}
#header .spl-cerca .searchform:focus-within::after { transform: scaleX(1); }
#header .spl-cerca .search-field {
	order: 2;
	flex: 1 1 auto;
	min-width: 0;
	height: 44px;
	margin: 0;
	padding: 0 4px 0 12px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--spl-testo);
	font: 300 14px/44px var(--spl-font);
	letter-spacing: .02em;
	-webkit-appearance: none;
	appearance: none;
}
#header .spl-cerca .search-field::placeholder { color: var(--spl-grigio); opacity: 1; }
#header .spl-cerca .search-field::-webkit-search-cancel-button { -webkit-appearance: none; }
#header .spl-cerca .search-field:focus-visible { outline: none; }
#header .spl-cerca .search-submit,
#header .spl-cerca .search-submit:hover,
#header .spl-cerca .search-submit:focus {
	order: 1;
	flex: none;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 30px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--spl-nero);
	overflow: visible;
}
/* durante la ricerca il tema aggiunge .pls-spinner (cerchio che gira in ::before): via la lente */
#header .spl-cerca .search-submit.pls-spinner { margin: 0; }
#header .spl-cerca .search-submit.pls-spinner .spl-ico { display: none; }

/* «Ricerche frequenti» e risultati: solo finche' il fuoco e' nella ricerca (ESC la chiude). Col puntatore sopra
   il pannello resta aperto: Safari al clic non da' il fuoco ai link (e lo script tiene il fuoco nel campo) */
#header .spl-cerca .trending-search-wrap,
#header .spl-cerca .autocomplete-suggestions {
	position: absolute;
	top: calc(100% + 12px);
	left: 0;
	z-index: 40;
	width: 100%;
	max-height: 60vh;
	background: #fff;
	border: 1px solid var(--spl-filetto);
	border-top: 1px solid var(--spl-oro);
	border-radius: 0;
	box-shadow: 0 30px 50px -32px var(--spl-ombra);
}
#header .spl-cerca .trending-search-wrap { padding: 18px 20px 20px; transition: opacity .25s ease, visibility 0s; }
#header:not([data-spl]) .spl-cerca:not(:focus-within) .trending-search-wrap:not(:hover),
#header[data-spl] .spl-cerca:not(:focus-within) .trending-search-wrap,
#header .spl-cerca.spl-chiuso .trending-search-wrap {
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease, visibility 0s linear .2s;
}
#header .spl-cerca .search-results-wrapper { position: static; }
#header .trending-search ul,
.pls-search-popup .trending-search ul { display: flex; flex-wrap: wrap; gap: 8px; }
#header .trending-search .trending-title,
.pls-search-popup .trending-search .trending-title {
	flex-basis: 100%;
	display: block;
	padding: 0 0 8px;
	color: var(--spl-grigio);
	font: 500 12px/1.2 var(--spl-font);
	letter-spacing: .2em;
	text-transform: uppercase;
}
#header .trending-search .trending-title::before,
.pls-search-popup .trending-search .trending-title::before { content: none; display: none; }
#header .trending-search .item a,
.pls-search-popup .trending-search .item a {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 0 16px;
	border: 1px solid var(--spl-filetto-forte);
	background: #fff;
	color: var(--spl-testo);
	font: 400 13px/1 var(--spl-font);
	letter-spacing: .04em;
	transition-duration: .25s;
}
#header .trending-search .item a:hover,
.pls-search-popup .pls-ajax-search .trending-search-wrap ul li:hover a {
	border-color: var(--spl-nero);
	background: #fff;
	color: var(--spl-nero);
}

/* azioni con etichetta: Accedi, Preferiti, Carrello */
.spl-principale__azioni {
	justify-self: end;
	display: flex;
	align-items: center;
	gap: 34px;
}
#header .spl-azione {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	color: var(--spl-nero);
	font-size: 12px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: .16em;
	text-transform: uppercase;
	white-space: nowrap;
}
.spl-azione__testo { position: relative; padding: 4px 0; }
.spl-azione__testo::after {
	content: "";
	position: absolute;
	left: 0;
	right: .16em;
	bottom: 0;
	height: 1px;
	background: var(--spl-oro);
	transform: scaleX(0);
	transition: transform .45s var(--spl-curva);
}
#header .spl-azione:hover .spl-azione__testo::after { transform: scaleX(1); }

/* contatori: WooCommerce sostituisce lo span intero, quindi lo stile passa solo dalla sua classe
   e dal contenitore (.spl-zero quando vale 0, .spl-cresce per un istante quando aumenta) */
#header .pls-header-cart-count,
#header .pls-header-wishlist-count {
	position: static;
	top: auto;
	right: auto;
	left: auto;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	width: auto;
	height: 20px;
	margin: 0 0 0 -1px;
	padding: 0 5px;
	border-radius: 10px;
	background: var(--spl-oro);
	color: var(--spl-nero);
	font: 500 12px/1 var(--spl-font);
	letter-spacing: 0;
	text-transform: none;
	transition: background-color .3s ease, color .3s ease, box-shadow .3s ease, opacity .3s ease, transform .45s var(--spl-curva);
}
/* a zero, nella riga del logo: solo un cerchio sottile */
#header .spl-zero .pls-header-cart-count,
#header .spl-zero .pls-header-wishlist-count {
	background: transparent;
	color: var(--spl-grigio);
	box-shadow: inset 0 0 0 1px var(--spl-filetto-forte);
}
/* sulle icone sole il numero sta sull'angolo e a zero sparisce */
#header .spl-tondo .pls-header-cart-count,
#header .spl-tondo .pls-header-wishlist-count {
	position: absolute;
	top: 3px;
	left: 24px;
	min-width: 18px;
	height: 18px;
	margin: 0;
	padding: 0 4px;
	border-radius: 9px;
}
#header .spl-zero .spl-tondo .pls-header-cart-count,
#header .spl-zero .spl-tondo .pls-header-wishlist-count {
	opacity: 0;
	transform: scale(.4);
}
#header .spl-cresce .pls-header-cart-count,
#header .spl-cresce .pls-header-wishlist-count { animation: spl-salto .55s var(--spl-curva); }
@keyframes spl-salto {
	0% { transform: scale(.55); }
	55% { transform: translateY(-3px) scale(1.18); }
	100% { transform: none; }
}

/* --------------------------------------------------------------------------
   5. Riga del menu e barra compatta (50 px; su telefono la riga principale da 60 px).
      pls-header-sticked dice al tema quanto e' alta: la colonna filtri delle categorie
      si aggancia a 50 + 30 px, la galleria del prodotto a 50 px, sotto la barra.
   -------------------------------------------------------------------------- */

.spl-barra {
	position: relative;
	height: var(--spl-barra-h);
	background: #fff;
}
/* ombra leggera quando la barra e' agganciata */
.spl-barra::before {
	content: "";
	position: absolute;
	inset: 0;
	box-shadow: 0 18px 30px -24px rgba(30, 18, 24, .45);
	opacity: 0;
	pointer-events: none;
	transition: opacity .5s ease;
}
.spl-barra__in {
	position: relative;
	height: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	column-gap: 24px;
}
/* filetto sotto il menu, fermo ai bordi del contenitore, e filo d'oro che si tende dal centro */
.spl-barra__in::before,
.spl-barra__in::after {
	content: "";
	position: absolute;
	left: 15px;
	right: 15px;
	bottom: 0;
	height: 1px;
	pointer-events: none;
}
.spl-barra__in::before { background: var(--spl-filetto); }
.spl-barra__in::after {
	background: linear-gradient(90deg, rgba(216, 157, 93, 0) 0%, var(--spl-oro) 20%, var(--spl-oro) 80%, rgba(216, 157, 93, 0) 100%);
	transform: scaleX(0);
	transition: transform 1s var(--spl-curva);
}
.spl-compatto .spl-barra::before { opacity: 1; }
.spl-compatto .spl-barra__in::after { transform: scaleX(1); }

.spl-barra__menu { display: none; }
.spl-barra__marchio { grid-column: 1; justify-self: start; display: block; line-height: 0; }
.spl-barra__marchio img { display: block; width: 100px; height: auto; max-width: none; }
.spl-nav { grid-column: 2; height: 100%; }
.spl-barra__azioni { grid-column: 3; justify-self: end; display: flex; align-items: center; gap: 2px; margin-right: -11px; }
#header .spl-barra__azioni .spl-barra__account { display: none; }
#header .spl-tondo {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	color: var(--spl-nero);
	transition-duration: .25s;
}
#header .spl-tondo:hover { color: #000; }

/* pulsante menu del telefono: niente icona a carattere del tema */
#header .pls-mobile-menu-btn .pls-mobile-menu-toggle,
#header .pls-mobile-menu-btn .pls-mobile-menu-toggle:hover,
#header .pls-mobile-menu-btn .pls-mobile-menu-toggle:focus {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--spl-nero);
	font-size: 0;
	line-height: 0;
}
#header .pls-mobile-menu-btn .pls-mobile-menu-toggle::before { content: none; display: none; }

@media (min-width: 992px) {
	/* in cima la barra mostra solo il menu: logo piccolo e icone entrano quando si aggancia */
	.spl-barra__marchio,
	.spl-barra__azioni {
		opacity: 0;
		visibility: hidden;
		transform: translateY(6px) scale(.97);
		transition: opacity .45s ease, transform .6s var(--spl-curva), visibility 0s linear .6s;
	}
	.spl-barra__marchio { transform-origin: 0 50%; }
	.spl-barra__azioni { transform-origin: 100% 50%; }
	.spl-compatto .spl-barra__marchio,
	.spl-compatto .spl-barra__azioni {
		opacity: 1;
		visibility: visible;
		transform: none;
		transition: opacity .45s ease, transform .6s var(--spl-curva), visibility 0s;
	}
	/* la ricerca della riga del logo e' uscita: niente pannelli rimasti aperti */
	.spl-compatto .spl-cerca .trending-search-wrap,
	.spl-compatto .spl-cerca .autocomplete-suggestions { visibility: hidden; }
}

/* --------------------------------------------------------------------------
   6. Menu principale (>= 992 px): Jost 500, 12 px, maiuscolo, filo d'oro dal centro
   -------------------------------------------------------------------------- */

#header #menu-main-menu {
	display: flex;
	align-items: stretch;
	height: 100%;
	margin: 0;
	padding: 0;
}
#header #menu-main-menu > li { position: static; display: flex; }
#header #menu-main-menu > li > a {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	padding: 0 18px 0 calc(18px + .2em);
	color: var(--spl-nero);
	font: 500 12px/1 var(--spl-font);
	letter-spacing: .2em;
	text-transform: uppercase;
	white-space: nowrap;
}
#header #menu-main-menu > li > a:focus-visible { outline-offset: -8px; }
#header #menu-main-menu > li > a::after {
	content: "";
	position: absolute;
	left: calc(18px + .2em);
	right: calc(18px + .2em);
	bottom: 13px;
	height: 1px;
	background: var(--spl-oro);
	transform: scaleX(0);
	transition: transform .45s var(--spl-curva);
}
#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto, .current-menu-item, .current-menu-ancestor, .current-menu-parent) > a::after { transform: scaleX(1); }
#header #menu-main-menu > li.spl-chiuso:not(.current-menu-item, .current-menu-ancestor, .current-menu-parent) > a::after { transform: scaleX(0); }

/* Nostre Creazioni, la linea della casa: filetto verticale, losanga caramello, corsivo */
#header #menu-main-menu > li.spl-voce-firma { position: relative; margin-left: 8px; }
#header #menu-main-menu > li.spl-voce-firma::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 1px;
	height: 18px;
	margin-top: -9px;
	background: var(--spl-filetto-forte);
}
#header #menu-main-menu > li.spl-voce-firma > a {
	gap: 11px;
	padding: 0 18px 0 24px;
	font: italic 400 15px/1 var(--spl-font);
	letter-spacing: .02em;
	text-transform: none;
}
#header #menu-main-menu > li.spl-voce-firma > a::before {
	content: "";
	flex: none;
	width: 5px;
	height: 5px;
	background: var(--spl-oro);
	transform: rotate(45deg);
	transition: transform .6s var(--spl-curva);
}
#header #menu-main-menu > li.spl-voce-firma > a:hover::before { transform: rotate(225deg); }
#header #menu-main-menu > li.spl-voce-firma > a::after { left: 40px; right: 18px; bottom: 12px; }

/* --------------------------------------------------------------------------
   7. Tendine: pannelli larghi quanto il contenitore, alti quanto il contenuto.
      Il fondo scende come un sipario, il filo caramello si disegna, le voci salgono.
      Pausa d'intenzione di 120 ms prima di aprire.
   -------------------------------------------------------------------------- */

#header #menu-main-menu .sub-menu { margin: 0; padding: 0; }
#header #menu-main-menu > li > .sub-menu {
	position: absolute;
	top: 100%;
	left: 15px;
	right: 15px;
	z-index: 30;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	align-content: flex-start;
	gap: 0 28px;
	padding: var(--spl-pannello-y) var(--spl-pannello-x) calc(var(--spl-pannello-y) + 2px);
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease, visibility 0s linear .2s;
}
/* il sipario: il fondo bianco scende dall'alto */
#header #menu-main-menu > li > .sub-menu::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: #fff;
	border: 1px solid var(--spl-filetto);
	border-top: 0;
	box-shadow: 0 34px 54px -34px var(--spl-ombra);
	transform: scaleY(.18);
	transform-origin: 50% 0;
	transition: transform .5s var(--spl-sipario);
}
/* il filo caramello che si disegna da sinistra */
#header #menu-main-menu > li > .sub-menu::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: var(--spl-oro);
	transform: scaleX(0);
	transform-origin: 0 50%;
	transition: transform .25s var(--spl-curva);
}
#header #menu-main-menu > li > .sub-menu > li {
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .25s var(--spl-curva), transform .4s var(--spl-curva);
}
#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto):not(.spl-chiuso) > .sub-menu {
	opacity: 1;
	visibility: visible;
	transition: opacity .2s ease var(--spl-attesa), visibility 0s linear var(--spl-attesa);
}
#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto):not(.spl-chiuso) > .sub-menu::before {
	transform: none;
	transition-delay: var(--spl-attesa);
}
#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto):not(.spl-chiuso) > .sub-menu::after {
	transform: none;
	transition: transform .7s var(--spl-curva) calc(var(--spl-attesa) + .06s);
}
#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto):not(.spl-chiuso) > .sub-menu > li {
	opacity: 1;
	transform: none;
	transition: opacity .5s var(--spl-curva) calc(var(--spl-attesa) + .12s + var(--spl-i, 0) * .045s), transform .6s var(--spl-curva) calc(var(--spl-attesa) + .12s + var(--spl-i, 0) * .045s);
}
#header #menu-main-menu .sub-menu > li:nth-child(2) { --spl-i: 1; }
#header #menu-main-menu .sub-menu > li:nth-child(3) { --spl-i: 2; }
#header #menu-main-menu .sub-menu > li:nth-child(4) { --spl-i: 3; }
#header #menu-main-menu .sub-menu > li:nth-child(5) { --spl-i: 4; }
#header #menu-main-menu .sub-menu > li:nth-child(6) { --spl-i: 5; }
#header #menu-main-menu .sub-menu > li:nth-child(n+7) { --spl-i: 6; }

/* le voci con didascalia lasciano la colonna di sinistra e non sono mai piu' basse di lei */
#header #menu-main-menu > li:is(.spl-voce-gioielli, .spl-voce-accessori, .spl-voce-orologi, .spl-voce-brand) > .sub-menu {
	min-height: calc(var(--spl-dida-h) + 2 * var(--spl-pannello-y) + 2px);
	padding-left: var(--spl-dida-w);
}
#header #menu-main-menu > li:is(.spl-voce-gioielli, .spl-voce-accessori, .spl-voce-orologi, .spl-voce-brand) > .sub-menu::before {
	background:
		linear-gradient(var(--spl-filetto), var(--spl-filetto)) no-repeat calc(var(--spl-dida-w) - 26px) var(--spl-pannello-y) / 1px calc(100% - 2 * var(--spl-pannello-y)),
		#fff;
}

/* parole grandi e leggere su una riga, ognuna sotto un filetto */
#header #menu-main-menu > li > .sub-menu > li { flex: 1 1 auto; min-width: 0; }
#header #menu-main-menu > li > .sub-menu a {
	position: relative;
	display: block;
	padding: 20px 0 6px;
	border-top: 1px solid var(--spl-filetto);
	color: var(--spl-nero);
	font: 200 var(--spl-parola)/1.1 var(--spl-font);
	letter-spacing: -.01em;
	text-transform: none;
	white-space: nowrap;
	transition: opacity .35s var(--spl-curva), color .25s ease;
}
#header #menu-main-menu > li > .sub-menu a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -1px;
	height: 1px;
	background: var(--spl-oro);
	transform: scaleX(0);
	transform-origin: 0 50%;
	transition: transform .45s var(--spl-curva);
}
#header #menu-main-menu > li > .sub-menu a:hover::after,
#header #menu-main-menu > li > .sub-menu a:focus-visible::after,
#header #menu-main-menu > li > .sub-menu .current-menu-item > a::after { transform: scaleX(1); }
/* le altre parole si fanno da parte (3,6:1 sulle parole grandi) */
#header #menu-main-menu > li > .sub-menu:has(a:hover, a:focus-visible) a:not(:hover, :focus-visible) { opacity: .55; }
#header #menu-main-menu .sub-menu .sub-menu { display: none; }

/* Brand: diciotto nomi su quattro colonne (tre sotto i 1200 px) */
#header #menu-main-menu > li.spl-voce-brand > .sub-menu {
	display: block;
	columns: 4;
	column-gap: 40px;
}
#header #menu-main-menu > li.spl-voce-brand > .sub-menu > li { break-inside: avoid; }
#header #menu-main-menu > li.spl-voce-brand > .sub-menu a {
	display: inline-block;
	padding: 7px 0;
	border-top: 0;
	font: 300 17px/1.3 var(--spl-font);
	letter-spacing: .01em;
}
#header #menu-main-menu > li.spl-voce-brand > .sub-menu a::after { top: auto; bottom: 5px; }
#header #menu-main-menu > li.spl-voce-brand > .sub-menu:has(a:hover, a:focus-visible) a:not(:hover, :focus-visible) { opacity: .7; }

/* didascalie: stanno nella colonna sinistra del pannello, agganciate alle classi delle voci */
.spl-didascalie {
	position: absolute;
	top: 100%;
	left: 15px;
	right: 15px;
	z-index: 31;
	height: 0;
	pointer-events: none;
}
.spl-dida {
	position: absolute;
	top: var(--spl-pannello-y);
	left: var(--spl-pannello-x);
	width: calc(var(--spl-dida-w) - var(--spl-pannello-x) - 52px);
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity .2s ease, transform .2s ease, visibility 0s linear .2s;
}
.spl-barra:has(.spl-voce-gioielli:is(:hover, .spl-aperto):not(.spl-chiuso)) .spl-dida--gioielli,
.spl-barra:has(.spl-voce-gioielli:not(.spl-chiuso) :focus-visible) .spl-dida--gioielli,
.spl-barra:has(.spl-voce-accessori:is(:hover, .spl-aperto):not(.spl-chiuso)) .spl-dida--accessori,
.spl-barra:has(.spl-voce-accessori:not(.spl-chiuso) :focus-visible) .spl-dida--accessori,
.spl-barra:has(.spl-voce-orologi:is(:hover, .spl-aperto):not(.spl-chiuso)) .spl-dida--orologi,
.spl-barra:has(.spl-voce-orologi:not(.spl-chiuso) :focus-visible) .spl-dida--orologi,
.spl-barra:has(.spl-voce-brand:is(:hover, .spl-aperto):not(.spl-chiuso)) .spl-dida--brand,
.spl-barra:has(.spl-voce-brand:not(.spl-chiuso) :focus-visible) .spl-dida--brand {
	opacity: 1;
	visibility: visible;
	transform: none;
	transition: opacity .55s var(--spl-curva) calc(var(--spl-attesa) + .1s), transform .7s var(--spl-curva) calc(var(--spl-attesa) + .1s), visibility 0s linear var(--spl-attesa);
}
.spl-dida__occhiello {
	color: var(--spl-grigio);
	font: 500 12px/1 var(--spl-font);
	letter-spacing: .24em;
	text-transform: uppercase;
}
#header .spl-dida__titolo {
	margin: 12px 0 10px;
	color: var(--spl-nero);
	font: 200 var(--spl-dida-titolo)/1 var(--spl-font);
	letter-spacing: -.015em;
}
.spl-dida__testo {
	color: var(--spl-testo-2);
	font: 300 14px/1.55 var(--spl-font);
	letter-spacing: .01em;
}

/* --------------------------------------------------------------------------
   8. Telefono e tablet (< 992 px): un annuncio per volta che scorre via,
      riga da 60 px agganciata in alto (menu, ricerca, logo, account, carrello)
   -------------------------------------------------------------------------- */

@media (max-width: 991.98px) {
	:root {
		--spl-servizi-h: 32px;
		--spl-principale-h: 0px;
		--spl-barra-h: 60px;
	}
	#header .spl-principale,
	#header .spl-servizi__contatti,
	#header .spl-servizi .spl-servizi__boutique,
	#header .spl-annunci__freccia[data-spl-passo="-1"],
	#header .spl-nav,
	#header .spl-didascalie,
	#header .spl-barra__preferiti { display: none; }

	.spl-servizi { letter-spacing: .1em; }
	.spl-servizi__in { grid-template-columns: minmax(0, 1fr); }
	.spl-annunci { position: relative; }
	.spl-annunci__finestra { width: 100%; }
	.spl-annunci__tacche { bottom: 4px; }
	/* niente frecce: «Messaggio successivo» diventa un velo trasparente sopra il messaggio. Tocco, Invio e Spazio
	   cambiano messaggio e fermano la rotazione; col fuoco da tastiera compare il contorno e il turno si ferma */
	#header .spl-annunci .spl-annunci__freccia[data-spl-passo="1"] {
		position: absolute;
		inset: 0;
		z-index: 1;
		width: auto;
		height: auto;
		opacity: 0;
		cursor: pointer;
	}
	#header .spl-annunci .spl-annunci__freccia[data-spl-passo="1"]:focus-visible { opacity: 1; outline-offset: -2px; }
	#header .spl-annunci .spl-annunci__freccia .spl-ico { display: none; }
	/* agganciata, la barra servizi e' gia' uscita (o e' sotto la barra di WordPress) */
	.spl-compatto .spl-servizi { visibility: hidden; }

	.spl-barra__in {
		grid-template-columns: 44px 44px minmax(0, 1fr) 44px 44px;
		grid-template-areas: "menu cerca marchio account carrello";
		column-gap: 0;
		padding: 0 6px;
	}
	.spl-barra__in::before,
	.spl-barra__in::after { left: 0; right: 0; }
	.spl-barra__menu { display: block; grid-area: menu; }
	.spl-barra__azioni { display: contents; }
	.spl-barra__cerca { grid-area: cerca; }
	.spl-barra__marchio { grid-area: marchio; justify-self: center; }
	.spl-barra__marchio img { width: 106px; }
	#header .spl-barra__azioni .spl-barra__account { grid-area: account; display: inline-flex; }
	.spl-barra__carrello { grid-area: carrello; }
}
@media (min-width: 600px) and (max-width: 991.98px) {
	.spl-barra__in { padding: 0 15px; }
	.spl-barra__marchio img { width: 118px; }
}
@media (max-width: 479.98px) {
	.spl-servizi { letter-spacing: .08em; }
	.spl-annuncio__lungo { display: none; }   /* «Paga in» resta sulle larghezze maggiori */
}

/* --------------------------------------------------------------------------
   9. Cassetto del menu (meccanismi del tema: .opened, .menu-toggle, schede)
   -------------------------------------------------------------------------- */

.pls-mobile-menu.spl-cassetto {
	display: block;
	width: min(88vw, 380px);
	padding: 0;
	background: #fff;
	box-shadow: 0 0 50px rgba(30, 18, 24, .28);
	font-family: var(--spl-font);
	color: var(--spl-testo);
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	visibility: hidden;
	transition: transform .55s var(--spl-curva), visibility 0s linear .55s;
	-webkit-font-smoothing: antialiased;
}
.pls-mobile-menu.spl-cassetto.opened {
	visibility: visible;
	transition: transform .55s var(--spl-curva), visibility 0s;
}
.admin-bar .pls-mobile-menu.spl-cassetto { top: var(--spl-admin); }
.spl-cassetto .spl-cassetto__in {
	display: flex;
	flex-direction: column;
	min-height: 100%;
}
.spl-cassetto a { text-decoration: none; }

/* testa con il logo e Chiudi: resta in vista mentre si scorre il cassetto */
.spl-cassetto__testa {
	position: sticky;
	top: 0;
	z-index: 2;
	flex: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 72px;
	padding: 0 10px 0 24px;
	background: #fff;
	border-bottom: 1px solid var(--spl-filetto);
}
.spl-cassetto__marchio { display: block; line-height: 0; }
.spl-cassetto__marchio img { display: block; width: 108px; height: auto; max-width: none; }
.pls-mobile-menu .spl-chiudi,
.pls-mobile-menu .spl-chiudi:hover,
.pls-mobile-menu .spl-chiudi:focus {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--spl-nero);
	font-size: 0;
	line-height: 0;
}
.pls-mobile-menu .spl-chiudi::before { content: none; display: none; }

/* schede Menu e Brand */
.spl-cassetto .mobile-nav-tabs {
	flex: none;
	margin: 0;
	padding: 0 24px;
	border-bottom: 1px solid var(--spl-filetto);
}
.spl-cassetto .mobile-nav-tabs ul { display: flex; gap: 30px; }
.spl-cassetto .mobile-nav-tabs li { padding: 0; color: var(--spl-grigio); font-size: 12px; }
.spl-cassetto .mobile-nav-tabs li.active { color: var(--spl-nero); }
.spl-cassetto .mobile-nav-tabs button,
.spl-cassetto .mobile-nav-tabs button:hover,
.spl-cassetto .mobile-nav-tabs button:focus {
	position: relative;
	display: block;
	height: 52px;
	margin: 0;
	padding: 0 .22em 0 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	font: 500 12px/52px var(--spl-font);
	letter-spacing: .22em;
	text-transform: uppercase;
}
.spl-cassetto .mobile-nav-tabs button::after {
	content: "";
	position: absolute;
	left: 0;
	right: .22em;
	bottom: -1px;
	height: 2px;
	background: var(--spl-oro);
	transform: scaleX(0);
	transition: transform .45s var(--spl-curva);
}
.spl-cassetto .mobile-nav-tabs li.active button::after { transform: scaleX(1); }

/* voci: una per riga, maiuscolo spaziato; sottovoci in tondo */
.spl-cassetto .spl-cassetto__menu { flex: none; }
.spl-cassetto ul.mobile-main-menu { display: block; width: 100%; padding: 6px 0 18px; }
.spl-cassetto ul.mobile-main-menu > li { position: relative; border-bottom: 1px solid #f2eef0; }
.spl-cassetto ul.mobile-main-menu > li:last-child { border-bottom: 0; }
.spl-cassetto ul.mobile-main-menu > li > a,
.spl-cassetto ul.mobile-main-menu li.menu-item-has-children > a {
	display: flex;
	align-items: center;
	min-height: 54px;
	padding: 0 64px 0 24px;
	color: var(--spl-nero);
	font: 500 14px/1.3 var(--spl-font);
	letter-spacing: .16em;
	text-transform: uppercase;
}
.spl-cassetto .mobile-categories-menu ul.mobile-main-menu > li > a {
	min-height: 48px;
	font: 400 16px/1.3 var(--spl-font);
	letter-spacing: .02em;
	text-transform: none;
}
.spl-cassetto ul.mobile-main-menu li > a:hover,
.spl-cassetto ul.mobile-main-menu li.active > a,
.spl-cassetto ul.mobile-main-menu li.current-menu-item > a { color: #000; }
.spl-cassetto ul.mobile-main-menu li.menu-item-has-children > .menu-toggle {
	top: 5px;
	right: 6px;
	width: 44px;
	height: 44px;
	color: var(--spl-nero);
	cursor: pointer;
}
.spl-cassetto ul.mobile-main-menu li.menu-item-has-children > .menu-toggle::after {
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	border-right: 1.3px solid currentColor;
	border-bottom: 1.3px solid currentColor;
	font-size: 0;
	transform: translateY(-2px) rotate(45deg);
	transition: transform .4s var(--spl-curva);
}
.spl-cassetto ul.mobile-main-menu li.active > .menu-toggle::after { transform: translateY(2px) rotate(225deg); }
.spl-cassetto ul.mobile-main-menu ul.sub-menu { padding: 0 0 14px; }
.spl-cassetto ul.mobile-main-menu ul.sub-menu li a {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0 24px 0 40px;
	color: var(--spl-testo);
	font: 300 16px/1.3 var(--spl-font);
	letter-spacing: .02em;
	text-transform: none;
	white-space: normal;
	overflow: visible;
}
/* Nostre Creazioni: la stessa firma del menu */
.spl-cassetto ul.mobile-main-menu li.spl-voce-firma > a {
	gap: 12px;
	font: italic 400 17px/1.3 var(--spl-font);
	letter-spacing: .02em;
	text-transform: none;
}
.spl-cassetto ul.mobile-main-menu li.spl-voce-firma > a::before {
	content: "";
	flex: none;
	width: 5px;
	height: 5px;
	background: var(--spl-oro);
	transform: rotate(45deg);
}

/* all'apertura le voci entrano a turno */
@media (prefers-reduced-motion: no-preference) {
	.spl-cassetto.opened .mobile-nav-content.active > ul > li,
	.spl-cassetto.opened .spl-cassetto__servizi {
		animation: spl-voce .6s var(--spl-curva) both;
		animation-delay: .34s;
	}
	.spl-cassetto.opened .mobile-nav-content.active > ul > li:nth-child(1) { animation-delay: .1s; }
	.spl-cassetto.opened .mobile-nav-content.active > ul > li:nth-child(2) { animation-delay: .14s; }
	.spl-cassetto.opened .mobile-nav-content.active > ul > li:nth-child(3) { animation-delay: .18s; }
	.spl-cassetto.opened .mobile-nav-content.active > ul > li:nth-child(4) { animation-delay: .22s; }
	.spl-cassetto.opened .mobile-nav-content.active > ul > li:nth-child(5) { animation-delay: .26s; }
	.spl-cassetto.opened .mobile-nav-content.active > ul > li:nth-child(6) { animation-delay: .3s; }
	.spl-cassetto.opened .spl-cassetto__servizi { animation-name: spl-sale; animation-delay: .32s; }
}
@keyframes spl-voce {
	from { opacity: 0; transform: translateX(-16px); }
	to { opacity: 1; transform: none; }
}
@keyframes spl-sale {
	from { opacity: 0; transform: translateY(18px); }
	to { opacity: 1; transform: none; }
}

/* in fondo, lo stesso nero caldo del piede: account, contatti, boutique, social */
.spl-cassetto__servizi {
	margin-top: auto;
	padding: 22px 24px 40px;
	background: var(--spl-nero);
	color: var(--spl-chiaro);
}
.spl-cassetto .spl-cassetto__servizi a {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 48px;
	color: #fff;
	font: 400 15px/1.35 var(--spl-font);
	letter-spacing: .01em;
}
.spl-cassetto__servizi .spl-ico { width: 20px; height: 20px; color: var(--spl-oro); }
.spl-cassetto .spl-cassetto__conto {
	padding-bottom: 12px;
	border-bottom: 1px solid var(--spl-riga-scura);
}
.spl-cassetto .spl-cassetto__titolo {
	margin: 22px 0 4px;
	color: var(--spl-oro);
	font: 500 12px/1 var(--spl-font);
	letter-spacing: .24em;
	text-transform: uppercase;
}
.spl-cassetto .spl-cassetto__righe li + li { border-top: 1px solid var(--spl-riga-scura); }
.spl-cassetto .spl-cassetto__valore { margin-left: auto; color: var(--spl-chiaro); font-weight: 300; letter-spacing: .03em; }
.spl-cassetto .spl-cassetto__servizi a.spl-cassetto__boutique { align-items: flex-start; padding: 12px 0 6px; }
.spl-cassetto__boutique .spl-ico { margin-top: 1px; }
.spl-cassetto__boutique small {
	display: block;
	margin-top: 5px;
	color: var(--spl-chiaro-2);
	font-size: 13px;
	line-height: 1.45;
}
.spl-cassetto .spl-cassetto__social {
	display: flex;
	gap: 28px;
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid var(--spl-riga-scura);
}

/* sfondo del cassetto (e del carrello laterale del tema): un velo caldo, pagina ferma */
.pls-mask-overaly { background-color: rgba(30, 18, 24, .5); }
html:has(.pls-mobile-menu.opened),
html:has(.pls-search-popup.opened),
html:has(.pls-minicart-slide.opened),
html.spl-blocco { overflow: hidden; }
/* con cassetto, ricerca a comparsa o carrello laterale aperti il pulsante WhatsApp e il torna su si fanno da parte */
html:has(.pls-mobile-menu.opened) #wa,
html:has(.pls-search-popup.opened) #wa,
html:has(.pls-minicart-slide.opened) #wa,
html.spl-blocco #wa,
html:has(.pls-mobile-menu.opened) .pls-back-to-top,
html:has(.pls-search-popup.opened) .pls-back-to-top,
html:has(.pls-minicart-slide.opened) .pls-back-to-top { visibility: hidden; }

/* --------------------------------------------------------------------------
   10. Ricerca a comparsa del tema (telefono e barra agganciata) e torna su
   -------------------------------------------------------------------------- */

.pls-search-popup { background-color: rgba(30, 18, 24, .5); font-family: var(--spl-font); }
.pls-search-popup.opened { transition: opacity .3s ease; }
.admin-bar .pls-search-popup .pls-search-popup-wrap { top: var(--spl-admin); }
.pls-search-popup .pls-search-popup-wrap {
	bottom: auto;
	flex-direction: column;
	align-items: center;
	padding: 60px 24px 34px;
	box-shadow: 0 30px 60px -34px rgba(30, 18, 24, .5);
	transition: transform .45s var(--spl-curva);
}
.pls-search-popup .pls-search-popup-wrap::before {
	content: "Cerca nel catalogo";
	margin-bottom: 14px;
	color: var(--spl-grigio);
	font: 500 12px/1 var(--spl-font);
	letter-spacing: .24em;
	text-transform: uppercase;
}
.pls-search-popup .pls-search-popup-wrap::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: linear-gradient(90deg, rgba(216, 157, 93, 0), var(--spl-oro) 25%, var(--spl-oro) 75%, rgba(216, 157, 93, 0));
}
.pls-search-popup .pls-ajax-search { width: 100%; max-width: 640px; margin-top: 0; }
.pls-search-popup .pls-ajax-search .searchform {
	position: relative;
	display: flex;
	align-items: center;
	height: 54px;
	border: 0;
	border-bottom: 1px solid var(--spl-filetto-forte);
	background: transparent;
}
/* il segno del fuoco, come in testata: un filo nero da 2 px che si tende sotto il campo */
.pls-search-popup .pls-ajax-search .searchform::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 2px;
	background: var(--spl-nero);
	transform: scaleX(0);
	transition: transform .5s var(--spl-curva);
}
.pls-search-popup .pls-ajax-search .searchform:focus-within::after { transform: scaleX(1); }
.pls-search-popup .pls-ajax-search .search-field {
	flex: 1 1 auto;
	min-width: 0;
	height: 54px;
	padding: 0 8px 0 0;
	border: 0;
	background: transparent;
	color: var(--spl-testo);
	font: 300 17px/54px var(--spl-font);
	letter-spacing: .02em;
}
.pls-search-popup .pls-ajax-search .search-field::placeholder { color: var(--spl-grigio); opacity: 1; }
.pls-search-popup .pls-ajax-search .search-field:focus-visible { outline: none; }
.pls-search-popup .pls-ajax-search .search-categories { display: none; }
.pls-search-popup .pls-ajax-search .search-submit,
.pls-search-popup .pls-ajax-search .search-submit:hover,
.pls-search-popup .pls-ajax-search .search-submit:focus {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 44px;
	height: 54px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--spl-nero);
	font-size: 0;
}
.pls-search-popup .pls-ajax-search .search-submit:not(.pls-spinner)::before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: currentColor;
	-webkit-mask: var(--spl-lente) center / contain no-repeat;
	mask: var(--spl-lente) center / contain no-repeat;
}
.pls-search-popup .close-sidebar {
	top: 10px;
	right: 10px;
	width: 44px;
	height: 44px;
	font-size: 0;
	color: var(--spl-nero);
}
.pls-search-popup .close-sidebar::before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: currentColor;
	-webkit-mask: var(--spl-croce) center / contain no-repeat;
	mask: var(--spl-croce) center / contain no-repeat;
}
.pls-search-popup .trending-search-wrap {
	position: static;
	margin-top: 18px;
	padding: 0;
	box-shadow: none;
	max-height: none;
	background: transparent;
}
.pls-search-popup .trending-search .trending-title { padding: 0 0 4px; }
.pls-search-popup .trending-search .item a { min-height: 44px; }
.pls-search-popup .autocomplete-suggestions { box-shadow: none; border-top: 0; }

/* torna su del tema: stesso nero caldo, freccia d'oro disegnata */
.pls-back-to-top {
	width: 44px;
	height: 44px;
	right: 20px;
	bottom: 20px;
	background-color: var(--spl-nero);
	border: 1px solid rgba(216, 157, 93, .55);
	border-radius: 0;
	box-shadow: 0 10px 24px -12px rgba(30, 18, 24, .6);
}
.pls-back-to-top::before {
	content: "";
	display: block;
	width: 9px;
	height: 9px;
	margin: 18px auto 0;
	border-left: 1.3px solid var(--spl-oro);
	border-top: 1.3px solid var(--spl-oro);
	font-size: 0;
	line-height: 0;
	transform: rotate(45deg);
}

/* --------------------------------------------------------------------------
   11. Piede: lo scrigno
   -------------------------------------------------------------------------- */

#footer.spl-piede {
	position: relative;
	margin: 0;
	padding: 0;
	background-color: var(--spl-nero);
	background-image: radial-gradient(110% 80% at 50% 0%, var(--spl-velluto) 0%, rgba(30, 18, 24, 0) 60%);
	color: var(--spl-chiaro);
	font-family: var(--spl-font);
	font-size: 14px;
	font-weight: 300;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}
#footer a { color: var(--spl-chiaro); text-decoration: none; transition-duration: .25s; }
#footer a:hover { color: #fff; }

/* il fermaglio: un filo d'oro sul bordo e una losanga a giorno che chiude lo scrigno */
.spl-fermaglio {
	position: absolute;
	top: 0;
	left: 50%;
	width: min(1366px, calc(100% - 30px));
	height: 1px;
	transform: translateX(-50%);
	background: linear-gradient(90deg,
		rgba(216, 157, 93, 0) 0%,
		rgba(216, 157, 93, .75) 28%,
		var(--spl-oro) calc(50% - 17px),
		transparent calc(50% - 17px),
		transparent calc(50% + 17px),
		var(--spl-oro) calc(50% + 17px),
		rgba(216, 157, 93, .75) 72%,
		rgba(216, 157, 93, 0) 100%);
	pointer-events: none;
}
.spl-fermaglio::before,
.spl-fermaglio::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 4px;
	transform: translate(-50%, -50%) rotate(45deg);
}
.spl-fermaglio::before { width: 18px; height: 18px; border: 1px solid var(--spl-oro); }
.spl-fermaglio::after {
	width: 9px;
	height: 9px;
	background: linear-gradient(var(--spl-nero), var(--spl-nero)) 50% 50% / 3px 3px no-repeat, var(--spl-oro);
}

/* testa centrata: logo bianco, motto, presentazione, social */
.spl-piede__marchio {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 76px 0 52px;
	text-align: center;
}
.spl-piede__logo { display: block; line-height: 0; }
.spl-piede__logo img { display: block; width: 200px; height: auto; max-width: none; }
.spl-piede__motto {
	margin-top: 24px;
	padding-left: .32em;
	color: var(--spl-oro);
	font: 500 12px/1 var(--spl-font);
	letter-spacing: .32em;
	text-transform: uppercase;
}
.spl-piede__intro {
	max-width: 470px;
	margin-top: 16px;
	color: var(--spl-chiaro-2);
	font: italic 300 16px/1.65 var(--spl-font);
	letter-spacing: .01em;
}
.spl-social { display: flex; justify-content: center; gap: 12px; margin-top: 26px; }
#footer .spl-social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, .22);
	color: #fff;
	transition-duration: .3s;
}
#footer .spl-social a:hover { border-color: var(--spl-oro); color: var(--spl-oro); }
.spl-social .spl-ico { width: 18px; height: 18px; }

/* quattro colonne allineate a sinistra sul contenitore */
.spl-piede__griglia {
	display: grid;
	grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, 1.15fr);
	column-gap: 48px;
	row-gap: 44px;
	padding: 50px 0 58px;
	border-top: 1px solid var(--spl-riga-scura);
}
#footer .spl-piede__titolo {
	margin: 0 0 22px;
	color: var(--spl-oro);
	font: 500 12px/1 var(--spl-font);
	letter-spacing: .26em;
	text-transform: uppercase;
}
#footer .spl-piede__elenco--due { column-count: 2; column-gap: 24px; }
#footer .spl-piede__elenco li { break-inside: avoid; }
#footer .spl-piede__elenco a,
#footer .spl-piede__recapiti a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 6px 0;
	font-size: 15px;
	line-height: 1.45;
}
#footer .spl-piede__elenco a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 4px;
	height: 1px;
	background: var(--spl-oro);
	transform: scaleX(0);
	transform-origin: 0 50%;
	transition: transform .45s var(--spl-curva);
}
#footer .spl-piede__elenco a:hover::after { transform: scaleX(1); }
#footer .spl-firma a { font-style: italic; }
#footer .spl-firma a::before {
	content: "";
	flex: none;
	width: 5px;
	height: 5px;
	margin-right: 2px;
	background: var(--spl-oro);
	transform: rotate(45deg);
}
#footer .spl-firma a::after { left: 17px; }

/* Acquisti online: le promesse vere, ognuna con la losanga a giorno */
.spl-piede__vantaggi li {
	position: relative;
	padding: 6px 0 6px 20px;
	color: var(--spl-chiaro);
	font-size: 15px;
	line-height: 1.5;
}
.spl-piede__vantaggi li::before {
	content: "";
	position: absolute;
	left: 1px;
	top: calc(6px + .58em);
	width: 5px;
	height: 5px;
	border: 1px solid var(--spl-oro);
	transform: rotate(45deg);
}

/* La boutique */
#footer address { margin: 0; font-style: normal; }
#footer .spl-piede__mappa { display: inline-block; padding: 6px 0 0; font-size: 15px; line-height: 1.5; }
.spl-piede__indirizzo { display: block; }
.spl-piede__vai {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
	color: var(--spl-oro);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: .2em;
	text-transform: uppercase;
}
.spl-piede__vai .spl-ico { width: 16px; height: 16px; transition: transform .4s var(--spl-curva); }
#footer .spl-piede__mappa:hover .spl-piede__vai .spl-ico { transform: translateX(4px); }
.spl-piede__orari { margin-top: 16px; color: var(--spl-chiaro-2); font-size: 15px; line-height: 1.5; }
.spl-piede__recapiti { margin-top: 10px; }
.spl-piede__recapiti .spl-ico { width: 16px; height: 16px; color: var(--spl-oro); }

/* riga finale, piu' scura: pagamenti, dati legali, informative, credito.
   Su desktop a sinistra (l'angolo in basso a destra resta a WhatsApp e al torna su). */
.spl-piede__fondo {
	padding: 26px 0 30px;
	background: var(--spl-scrigno);
	color: var(--spl-chiaro-2);
	font-size: 12.5px;
	line-height: 1.6;
	letter-spacing: .02em;
}
.spl-piede__fondo-in {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}
.spl-carte { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.spl-carte li { display: flex; align-items: center; height: 26px; }
.spl-carte img { display: block; width: auto; height: 26px; max-width: none; }
.spl-carta { box-sizing: border-box; justify-content: center; min-width: 46px; padding: 0 9px; background: #fff; border-radius: 2px; }
.spl-carte .spl-carta img { height: 11px; }
.spl-carta--testo { color: var(--spl-nero); font: 500 12px/1 var(--spl-font); letter-spacing: .04em; }
/* separatori dentro le voci: chi va a capo porta con se' il suo, e quello a inizio riga
   cade a sinistra della riga, fuori dal ritaglio (i 6 px di margine lasciano spazio al fuoco) */
.spl-righe {
	margin: -6px;
	padding: 6px;
	overflow: hidden;
}
.spl-riga {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 29px;
}
.spl-riga + .spl-riga { margin-top: 4px; }
.spl-riga > * { position: relative; white-space: nowrap; }
.spl-riga > *::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -15px;
	width: 1px;
	height: 12px;
	margin-top: -6px;
	background: rgba(216, 157, 93, .45);
}
#footer .spl-piede__fondo a { color: var(--spl-chiaro-2); }
#footer .spl-piede__fondo a:hover { color: #fff; }
/* Preferenze cookie: e' un pulsante (Complianz ascolta button.cmplz-manage-consent) con l'aspetto di un link */
#footer .spl-piede__norme .cmplz-manage-consent,
#footer .spl-piede__norme .cmplz-manage-consent:hover,
#footer .spl-piede__norme .cmplz-manage-consent:focus {
	display: inline;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--spl-chiaro-2);
	font: inherit;
	letter-spacing: inherit;
	line-height: inherit;
	text-transform: none;
	cursor: pointer;
	overflow: visible;
}
#footer .spl-piede__norme .cmplz-manage-consent:hover { color: #fff; }
#footer .spl-piede__fondo .spl-piede__credito a { color: var(--spl-chiaro); }

/* scheda prodotto: da 1025 px il tema tiene fissa in basso la barra «Aggiungi al carrello» (90 px, z-index 99)
   fino in fondo alla pagina. La riga finale le lascia lo spazio (30 + 90 px) e il torna su, che il tema alza
   con .sticky-add-cart, sale sopra il pulsante WhatsApp. Fino a 1024 px il tema nasconde la barra ma alza lo
   stesso il torna su, sotto WhatsApp: qui resta al suo posto. */
@media (min-width: 1025px) {
	body.single-product:has(.pls-sticky-add-to-cart) .spl-piede__fondo { padding-bottom: 120px; }
	.pls-back-to-top.sticky-add-cart { bottom: 190px; }
}
@media (max-width: 1024px) {
	.pls-back-to-top.sticky-add-cart { bottom: 20px; }
}

/* --------------------------------------------------------------------------
   12. Larghezze intermedie e piede su telefono
   -------------------------------------------------------------------------- */

@media (min-width: 992px) and (max-width: 1199.98px) {
	:root {
		--spl-pannello-x: 32px;
		--spl-pannello-y: 26px;
		--spl-parola: 24px;
		--spl-dida-w: 300px;
		--spl-dida-titolo: 30px;
		--spl-dida-righe: 3;
	}
	.spl-servizi { letter-spacing: .1em; }
	.spl-servizi__contatti li + li::before { margin: 0 14px; }
	.spl-annunci__finestra { width: 330px; }
	.spl-annuncio__lungo { display: none; }

	.spl-marchio img { width: 196px; }
	#header .spl-cerca { max-width: 270px; }

	/* qui le etichette (anche «Il mio account» da collegati) non stanno accanto al logo:
	   restano per i lettori di schermo, il numero torna sull'icona e a zero sparisce */
	.spl-principale__azioni { gap: 10px; margin-right: -11px; }
	#header .spl-azione { justify-content: center; min-width: 44px; }
	#header .spl-principale .spl-azione__testo {
		position: absolute;
		width: 1px;
		height: 1px;
		margin: -1px;
		padding: 0;
		overflow: hidden;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		white-space: nowrap;
	}
	#header .spl-principale .pls-header-cart-count,
	#header .spl-principale .pls-header-wishlist-count {
		position: absolute;
		top: 3px;
		left: 24px;
		min-width: 18px;
		height: 18px;
		margin: 0;
		padding: 0 4px;
		border-radius: 9px;
	}
	#header .spl-principale .spl-zero .pls-header-cart-count,
	#header .spl-principale .spl-zero .pls-header-wishlist-count { opacity: 0; transform: scale(.4); }

	.spl-barra__in { column-gap: 12px; }
	.spl-barra__marchio img { width: 92px; }
	#header #menu-main-menu > li > a { padding: 0 12px 0 calc(12px + .16em); letter-spacing: .16em; }
	#header #menu-main-menu > li > a::after { left: calc(12px + .16em); right: calc(12px + .16em); }
	#header #menu-main-menu > li.spl-voce-firma > a { padding: 0 12px 0 20px; font-size: 14.5px; }
	#header #menu-main-menu > li.spl-voce-firma > a::after { left: 36px; right: 12px; }
	#header #menu-main-menu > li.spl-voce-brand > .sub-menu { columns: 3; column-gap: 32px; }
	#header #menu-main-menu > li.spl-voce-brand > .sub-menu a { font-size: 16px; }
}

/* da collegati il PHP scrive «Il mio account», piu' lungo di «Accedi»: fra 1200 e 1299 px le tre azioni
   si stringono (spazi e spaziatura delle lettere) e restano tutte con l'etichetta, lontane dal logo
   (body.logged-in lo mette WordPress) */
@media (min-width: 1200px) and (max-width: 1299.98px) {
	body.logged-in .spl-principale__azioni { gap: 20px; }
	body.logged-in #header .spl-azione { letter-spacing: .1em; }
	body.logged-in .spl-azione__testo::after { right: .1em; }
}

@media (max-width: 1199.98px) {
	.spl-piede__griglia { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; }
}

@media (max-width: 767.98px) {
	.spl-piede__marchio { padding: 60px 0 42px; }
	.spl-piede__logo img { width: 176px; }
	.spl-piede__intro { max-width: 330px; font-size: 15px; }
	.spl-piede__griglia { grid-template-columns: minmax(0, 1fr); row-gap: 36px; padding: 40px 0 44px; }
	/* sul telefono prima dove e quando, poi come si compra, poi i link */
	.spl-piede__boutique { order: -2; }
	.spl-piede__acquisti { order: -1; }
	#footer .spl-piede__titolo { margin-bottom: 12px; }
	#footer .spl-piede__elenco { column-count: 2; column-gap: 16px; }
	#footer .spl-piede__elenco a,
	#footer .spl-piede__recapiti a { min-height: 44px; padding: 0; }
	#footer .spl-piede__elenco a::after { bottom: 9px; }
	#footer .spl-piede__mappa { padding: 0; }
	#footer .spl-piede__vai { min-height: 44px; margin-top: 0; }
	.spl-piede__orari { margin-top: 4px; }

	/* riga finale centrata, una informazione per riga, ~200 px liberi sotto per WhatsApp e torna su */
	.spl-piede__fondo { padding: 28px 0 200px; text-align: center; }
	.spl-piede__fondo-in { align-items: center; gap: 16px; }
	.spl-carte { justify-content: center; }
	.spl-righe { margin: 0; padding: 0; overflow: visible; }
	.spl-riga { justify-content: center; }
	.spl-riga > :first-child::before,
	.spl-piede__legale > :nth-child(2)::before,
	.spl-piede__norme > :nth-child(n+3)::before { display: none; }
	.spl-piede__legale > :first-child,
	.spl-piede__norme > :nth-child(n+3) { flex-basis: 100%; }
	#footer .spl-piede__legale a,
	#footer .spl-piede__norme a,
	#footer .spl-piede__norme .cmplz-manage-consent,
	#footer .spl-piede__norme .cmplz-manage-consent:hover,
	#footer .spl-piede__norme .cmplz-manage-consent:focus { display: inline-flex; align-items: center; min-height: 44px; }
}

/* --------------------------------------------------------------------------
   13. Movimento guidato dallo scorrimento (Chrome, Edge, Safari recenti):
       il logo grande si raccoglie, quello piccolo entra, il filo d'oro si tende.
       Negli altri browser fa tutto la classe .spl-compatto messa dallo script.
   -------------------------------------------------------------------------- */

@supports (animation-timeline: scroll()) {
	@media (prefers-reduced-motion: no-preference) {
		/* a ogni larghezza: ombra e filo d'oro partono quando la barra si aggancia */
		#header .spl-barra__in::after {
			animation: spl-filo linear both;
			animation-timeline: scroll(root block);
			animation-range: calc(var(--spl-sopra) - 6px) calc(var(--spl-sopra) + 264px);
		}
		#header .spl-barra::before {
			animation: spl-ombra linear both;
			animation-timeline: scroll(root block);
			animation-range: calc(var(--spl-sopra) - 6px) calc(var(--spl-sopra) + 44px);
		}
	}
	@media (min-width: 992px) and (prefers-reduced-motion: no-preference) {
		/* solo desktop: il logo grande si raccoglie, logo piccolo e icone entrano nella barra */
		#header .spl-marchio img {
			animation: spl-raccogli linear both;
			animation-timeline: scroll(root block);
			animation-range: 0px var(--spl-sopra);
			transform-origin: 50% 0%;
		}
		#header .spl-barra__marchio,
		#header .spl-barra__azioni {
			animation: spl-entra linear both;
			animation-timeline: scroll(root block);
			animation-range: calc(var(--spl-sopra) - 44px) var(--spl-sopra);
		}
	}
}
@keyframes spl-raccogli {
	to { transform: translateY(34px) scale(.8); opacity: 0; }
}
@keyframes spl-entra {
	from { opacity: 0; visibility: hidden; transform: translateY(6px) scale(.97); }
	to { opacity: 1; visibility: visible; transform: none; }
}
@keyframes spl-filo {
	from { transform: scaleX(0); }
	to { transform: scaleX(1); }
}
@keyframes spl-ombra {
	from { opacity: 0; }
	to { opacity: 1; }
}

/* --------------------------------------------------------------------------
   14. Movimento ridotto: niente animazioni ne' rotazione (le frecce restano)
   -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
	.spl-annuncio,
	.spl-annuncio.spl-attivo,
	.spl-barra::before,
	.spl-barra__in::after,
	.spl-barra__marchio,
	.spl-compatto .spl-barra__marchio,
	.spl-barra__azioni,
	.spl-compatto .spl-barra__azioni,
	#header .spl-salta,
	#header .spl-cerca .searchform::after,
	#header .spl-cerca .trending-search-wrap,
	#header:not([data-spl]) .spl-cerca:not(:focus-within) .trending-search-wrap:not(:hover),
#header[data-spl] .spl-cerca:not(:focus-within) .trending-search-wrap,
	#header .spl-cerca.spl-chiuso .trending-search-wrap,
	.spl-azione__testo::after,
	#header #menu-main-menu > li > a::after,
	#header #menu-main-menu > li.spl-voce-firma > a::before,
	#header #menu-main-menu > li > .sub-menu::before,
	#header #menu-main-menu > li > .sub-menu::after,
	#header #menu-main-menu > li > .sub-menu > li,
	#header #menu-main-menu > li > .sub-menu a,
	#header #menu-main-menu > li > .sub-menu a::after,
	#header .pls-header-cart-count,
	#header .pls-header-wishlist-count,
	.pls-mobile-menu.spl-cassetto,
	.pls-mobile-menu.spl-cassetto.opened,
	.spl-cassetto .mobile-nav-tabs button::after,
	.spl-cassetto ul.mobile-main-menu li.menu-item-has-children > .menu-toggle::after,
	.pls-search-popup .pls-search-popup-wrap,
	.pls-search-popup .pls-ajax-search .searchform::after,
	#footer .spl-piede__elenco a::after,
	.spl-piede__vai .spl-ico { transition: none; }
	/* tendine: niente sipario, filo che si disegna o voci che salgono (tutto e' gia' al suo posto), ma resta la
	   pausa d'intenzione di 120 ms, in apertura e in chiusura: passando da una voce all'altra i pannelli
	   si danno il cambio senza vuoti. Il ritardo va difeso con !important: con il movimento ridotto Elementor
	   (frontend.min.css) azzera ritardi e durate di tutte le transizioni, html * { transition-delay: 0s !important } */
	#header #menu-main-menu > li > .sub-menu::before,
	#header #menu-main-menu > li > .sub-menu::after,
	#header #menu-main-menu > li > .sub-menu > li { opacity: 1; transform: none; }
	.spl-dida { transform: none; }
	#header #menu-main-menu > li > .sub-menu,
	#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto):not(.spl-chiuso) > .sub-menu,
	.spl-dida,
	.spl-barra:has(.spl-voce-gioielli:is(:hover, .spl-aperto):not(.spl-chiuso)) .spl-dida--gioielli,
.spl-barra:has(.spl-voce-gioielli:not(.spl-chiuso) :focus-visible) .spl-dida--gioielli,
	.spl-barra:has(.spl-voce-accessori:is(:hover, .spl-aperto):not(.spl-chiuso)) .spl-dida--accessori,
.spl-barra:has(.spl-voce-accessori:not(.spl-chiuso) :focus-visible) .spl-dida--accessori,
	.spl-barra:has(.spl-voce-orologi:is(:hover, .spl-aperto):not(.spl-chiuso)) .spl-dida--orologi,
.spl-barra:has(.spl-voce-orologi:not(.spl-chiuso) :focus-visible) .spl-dida--orologi,
	.spl-barra:has(.spl-voce-brand:is(:hover, .spl-aperto):not(.spl-chiuso)) .spl-dida--brand,
.spl-barra:has(.spl-voce-brand:not(.spl-chiuso) :focus-visible) .spl-dida--brand {
		transition: opacity 0s var(--spl-attesa), visibility 0s var(--spl-attesa);
		transition-delay: var(--spl-attesa) !important;
	}
	#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto):not(.spl-chiuso) > .sub-menu::before,
	#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto):not(.spl-chiuso) > .sub-menu::after,
	#header #menu-main-menu > li:is(:hover, :has(:focus-visible), .spl-aperto):not(.spl-chiuso) > .sub-menu > li { transition: none; }
	.spl-pronto .spl-tacca.spl-attiva::after { animation: none; transform: none; }
	#header .spl-cresce .pls-header-cart-count,
	#header .spl-cresce .pls-header-wishlist-count,
	.spl-cassetto .mobile-nav-content { animation: none; }   /* il tema dissolve le schede in 1 s */
}

/* ---------------------------------------------------------------------------------------------
   Correzioni della seconda verifica (8 ottobre 2026)
   --------------------------------------------------------------------------------------------- */
/* fra 992 e 1199 px il pannello «Ricerche frequenti» finirebbe sopra Gioielli e Accessori:
   sono due parole che il menu e il piede hanno gia' */
@media (min-width: 992px) and (max-width: 1199px) {
	/* !important: lo script del tema mostra il pannello con display in linea (jQuery .show) */
	#header .spl-cerca .trending-search-wrap { display: none !important; }
}
/* una tendina con sei voci o piu' (voce nuova aggiunta dal pannello Menu) va in colonne ordinate
   invece di andare a capo a caso; Brand ha gia' la sua griglia */
#header #menu-main-menu > li:not(.spl-voce-brand) > .sub-menu:has(> li:nth-child(6)) {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	column-gap: 28px;
}
