/* =====================================================
   Le Pleiadi — tema (grafica v2)
   Base cosmica + header/footer + vestizione WooCommerce
   ===================================================== */

:root{
	--lp-cosmo:#0A1628;
	--lp-nebula:#1B3A6B;
	--lp-stellar:#4A90C4;
	--lp-aurora:#7EC8D4;
	--lp-oro:#C9A97A;
	--lp-ivoire:#F5EFE4;
	--lp-luna:#E8F0F8;
	--lp-argento:#B8D0E8;
	--lp-border:rgba(74,144,196,0.18);
	--lp-header-h:72px;
}

/* ---------- base ---------- */
html{scroll-behavior:smooth}
html,body{margin:0}
body{
	background:var(--lp-cosmo);
	color:var(--lp-argento);
	font-family:'DM Sans',sans-serif;
	line-height:1.7;
	overflow-x:hidden;
}
a{color:var(--lp-aurora)}
a:hover{color:var(--lp-oro)}
a:focus-visible,button:focus-visible{outline:2px solid var(--lp-oro);outline-offset:2px}
img{max-width:100%;height:auto}

@keyframes twinkle{0%{opacity:.15;transform:scale(1) translate(0,0)}100%{opacity:1;transform:scale(1.4) translate(var(--dx,0px),var(--dy,0px))}}
@keyframes starpulse{0%{opacity:.55;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.35)}100%{opacity:.55;transform:translate(-50%,-50%) scale(1)}}

.lp-skip-link{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden;
	background:var(--lp-oro);color:var(--lp-cosmo);font-size:13px;letter-spacing:.08em;
	text-transform:uppercase;text-decoration:none;z-index:100;border-radius:2px}
.lp-skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;padding:.7rem 1.2rem}

/* ---------- header fisso ---------- */
.lp-header{position:fixed;top:0;left:0;right:0;z-index:20;
	background:var(--lp-cosmo);border-bottom:1px solid var(--lp-border)}
.lp-header-inner{max-width:1280px;margin:0 auto;padding:1.1rem 2rem;
	display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.lp-logo-link{display:flex;align-items:center;text-decoration:none;flex-shrink:0}
.lp-logo{height:34px;width:auto;display:block}

.lp-nav{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}
.lp-nav-link{font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
	color:var(--lp-argento);border-bottom:1px solid transparent;padding-bottom:4px;
	transition:color .3s,border-color .3s;display:flex;align-items:center;min-height:44px}
.lp-nav-link:hover{color:var(--lp-oro)}
.lp-nav-link.is-active{color:var(--lp-aurora);border-bottom-color:var(--lp-aurora)}
.lp-cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;
	padding:0 4px;border-radius:50%;background:var(--lp-oro);color:var(--lp-cosmo);
	font-size:10px;font-weight:500;margin-left:.4rem}
.lp-cart-count.is-empty{display:none}

/* il contenuto parte sotto l'header fisso */
.lp-main{display:block;min-height:100vh;padding-top:var(--lp-header-h)}

@media(max-width:900px){
	.lp-header-inner{padding:.7rem 1rem;gap:.6rem;row-gap:.5rem}
	.lp-nav{width:100%;min-width:0;flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;
		scrollbar-width:none;justify-content:flex-start;gap:1.1rem}
	.lp-nav::-webkit-scrollbar{display:none}
	.lp-nav-link{font-size:10px;letter-spacing:.07em;white-space:nowrap;flex-shrink:0;min-height:36px}
	.lp-main{padding-top:118px}
}
@media(max-width:420px){
	.lp-nav{gap:.9rem}
	.lp-nav-link{font-size:9.5px}
}

/* ---------- footer ---------- */
.lp-footer{position:relative;background:var(--lp-cosmo);border-top:1px solid var(--lp-border);
	padding:4rem 2rem 2rem}
.lp-footer-grid{max-width:1280px;margin:0 auto;display:grid;
	grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:3rem}
.lp-footer-brand{display:flex;align-items:center;gap:.7rem;margin-bottom:1.2rem}
.lp-footer-mark{width:30px;height:30px;border:1px solid rgba(201,169,122,.55);border-radius:50%;
	display:flex;align-items:center;justify-content:center;color:var(--lp-oro);font-size:12px}
.lp-footer-name{font-family:'Cinzel',serif;font-size:14px;letter-spacing:.24em;
	color:var(--lp-luna);text-transform:uppercase}
.lp-footer-quote{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--lp-aurora);
	font-size:18px;max-width:340px;margin:0 0 1rem}
.lp-footer-author{font-size:12px;color:var(--lp-argento);opacity:.85;margin:0}
.lp-footer-title{font-size:11px;letter-spacing:.3em;text-transform:uppercase;
	color:var(--lp-aurora);margin-bottom:1.2rem}
.lp-footer-links{display:flex;flex-direction:column;gap:.8rem}
.lp-footer-links a{color:var(--lp-argento);text-decoration:none;font-size:14px;
	transition:color .3s;display:inline-flex;align-items:center;min-height:24px}
.lp-footer-links a:hover{color:var(--lp-oro)}
.lp-footer-links--small a{font-size:13px;min-height:22px}
.lp-footer-about{font-size:13px;color:var(--lp-argento);opacity:.85;line-height:1.8;max-width:280px;margin:0}
.lp-footer-bottom{max-width:1280px;margin:3rem auto 0;padding-top:1.6rem;
	border-top:1px solid rgba(74,144,196,.12)}
.lp-footer-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;
	margin-bottom:1rem;font-size:11px;color:var(--lp-argento);opacity:.7}
.lp-footer-url{letter-spacing:.1em}
.lp-footer-legalinfo{opacity:.55;line-height:1.7;margin-bottom:0}

/* =====================================================
   WooCommerce — vestizione cosmica
   ===================================================== */
.woocommerce-page .lp-main,
.woocommerce .lp-main{background:var(--lp-cosmo)}

.lp-wc-wrap{max-width:1280px;margin:0 auto;padding:4rem 2rem 6rem}
.lp-wc-title{font-family:'Cinzel',serif;font-weight:400;font-size:clamp(24px,3vw,38px);
	letter-spacing:.1em;color:var(--lp-luna);margin:0 0 .6rem;text-align:center}
.lp-wc-sub{text-align:center;font-size:11px;letter-spacing:.3em;text-transform:uppercase;
	color:var(--lp-aurora);margin-bottom:3rem}

.woocommerce h1,.woocommerce h2,.woocommerce h3,
.woocommerce-page h1,.woocommerce-page h2,.woocommerce-page h3{
	font-family:'Cinzel',serif;font-weight:400;color:var(--lp-luna);letter-spacing:.06em}
.woocommerce p,.woocommerce-page p,
.woocommerce li,.woocommerce-page li,
.woocommerce td,.woocommerce-page td,
.woocommerce label,.woocommerce-page label{color:var(--lp-argento)}

/* griglia prodotti */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	background:rgba(27,58,107,.16);border:1px solid var(--lp-border);
	padding:1.4rem;border-radius:2px;text-align:center;transition:border-color .3s,transform .3s}
.woocommerce ul.products li.product:hover{border-color:rgba(201,169,122,.55);transform:translateY(-3px)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	font-family:'Cinzel',serif!important;font-size:16px!important;letter-spacing:.12em;
	color:var(--lp-ivoire);text-transform:uppercase;padding:.8rem 0 .4rem!important}
.woocommerce ul.products li.product .price{color:var(--lp-oro)!important;font-size:15px}
.woocommerce ul.products li.product .price del{color:rgba(184,208,232,.5)!important}

/* bottoni */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,
.woocommerce-page a.button,.woocommerce-page button.button{
	background:transparent!important;color:var(--lp-oro)!important;
	border:1px solid var(--lp-oro)!important;border-radius:2px!important;
	font-family:'DM Sans',sans-serif!important;font-size:11px!important;font-weight:400!important;
	letter-spacing:.22em!important;text-transform:uppercase!important;
	padding:.9rem 1.8rem!important;transition:background .3s,color .3s!important}
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{
	background:var(--lp-oro)!important;color:var(--lp-cosmo)!important}

/* prezzo e schede prodotto */
.woocommerce div.product .price,
.woocommerce div.product p.price{color:var(--lp-oro)!important;font-size:26px}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
	background:rgba(27,58,107,.2);border-color:var(--lp-border)}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--lp-argento)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--lp-oro)}

/* form, carrello, checkout */
.woocommerce table.shop_table,
.woocommerce-page table.shop_table{border-color:var(--lp-border);background:rgba(27,58,107,.12)}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{
	border-color:var(--lp-border);color:var(--lp-argento)}
.woocommerce .cart_totals h2,.woocommerce-checkout h3{color:var(--lp-luna)}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text,
.select2-container--default .select2-selection--single{
	background:rgba(10,22,40,.85)!important;border:1px solid var(--lp-border)!important;
	color:var(--lp-luna)!important;border-radius:2px!important;padding:.8rem!important}
.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error{
	background:rgba(27,58,107,.25);border-top-color:var(--lp-oro);color:var(--lp-luna)}
.woocommerce .woocommerce-info::before,.woocommerce .woocommerce-message::before{color:var(--lp-oro)}

/* breadcrumb e ordinamento */
.woocommerce .woocommerce-breadcrumb,
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering select{color:var(--lp-argento)}
.woocommerce .woocommerce-ordering select{
	background:rgba(10,22,40,.85);border:1px solid var(--lp-border);color:var(--lp-luna);padding:.5rem}

/* ---------- pagine testuali (Chi Siamo, legali) ---------- */
.lp-page-content{max-width:780px;margin:0 auto;font-size:16px;line-height:1.9;color:var(--lp-argento)}
.lp-page-content h2,.lp-page-content h3{font-family:'Cinzel',serif;font-weight:400;
	color:var(--lp-luna);letter-spacing:.06em;margin:2.4rem 0 1rem}
.lp-page-content a{color:var(--lp-aurora)}
.lp-page-content ul,.lp-page-content ol{padding-left:1.4rem}
.lp-page-content li{margin-bottom:.5rem}

/* ---------- segnaposto immagine prodotto (finché non ci sono le foto) ---------- */
.woocommerce ul.products li.product img.woocommerce-placeholder,
.woocommerce div.product img.woocommerce-placeholder,
.woocommerce img.woocommerce-placeholder{
	border-radius:2px;
}
/* le immagini prodotto vere avranno il fondo scuro del tema */
.woocommerce ul.products li.product a img{background:transparent;margin-bottom:1rem}

/* ---------- scheda prodotto singola ---------- */
/* gallery: fondo scuro anche col segnaposto */
.woocommerce div.product div.images,
.woocommerce div.product div.images img,
.woocommerce-product-gallery,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image a{background:rgba(27,58,107,.14)!important;border-radius:2px}
.woocommerce div.product div.images{border:1px solid var(--lp-border)}

/* selettore varianti e quantità */
.woocommerce div.product form.cart .variations select,
.woocommerce select,
.woocommerce .quantity input.qty,
.woocommerce input[type=number],
.woocommerce input[type=text],
.woocommerce input[type=email],
.woocommerce input[type=tel],
.woocommerce textarea{
	background:rgba(10,22,40,.9)!important;
	border:1px solid var(--lp-border)!important;
	color:var(--lp-luna)!important;
	border-radius:2px!important;
	padding:.6rem .7rem!important;
	font-family:'DM Sans',sans-serif!important}
.woocommerce div.product form.cart .variations label{color:var(--lp-argento)!important;font-weight:400}
.woocommerce div.product form.cart .variations td{background:transparent}
.woocommerce a.reset_variations{color:var(--lp-aurora)}
.woocommerce div.product form.cart .woocommerce-variation-price .price{color:var(--lp-oro)!important}

/* linguette descrizione */
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin-bottom:0}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-bottom-color:var(--lp-border)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
	background:rgba(27,58,107,.22)!important;border:1px solid var(--lp-border)!important;
	border-radius:2px 2px 0 0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--lp-argento)!important;font-weight:400}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{
	background:rgba(27,58,107,.45)!important;border-bottom-color:transparent!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--lp-oro)!important}
.woocommerce div.product .woocommerce-tabs .panel{
	background:rgba(27,58,107,.14);border:1px solid var(--lp-border);border-top:none;
	padding:2rem;color:var(--lp-argento)}

/* titolo prodotto e meta */
.woocommerce div.product .product_title{letter-spacing:.12em}
.woocommerce div.product .product_meta{color:var(--lp-argento);font-size:12px}
.woocommerce div.product .product_meta a{color:var(--lp-aurora)}

/* =====================================================
   Pagina Collezione (archive-product.php)
   ===================================================== */
.lp-coll-hero{position:relative;text-align:center;padding:5rem 2rem 2rem;
	max-width:900px;margin:0 auto}
/* alone/nebulosa che scende dall'alto dietro il titolo (come nella v2) */
.lp-coll-hero::before{content:'';position:absolute;inset:-2rem -50vw 0;pointer-events:none;
	background:radial-gradient(at 50% 0%,rgba(27,58,107,.5),transparent 60%)}
.lp-coll-hero > *{position:relative;z-index:1}
.lp-coll-eyebrow{font-size:11px;letter-spacing:.35em;text-transform:uppercase;
	color:var(--lp-aurora);margin-bottom:1.2rem}
.lp-coll-title{font-family:'Cinzel',serif;font-size:clamp(28px,4vw,42px);font-weight:400;
	color:var(--lp-luna);letter-spacing:.08em;margin:0 0 1.4rem}
.lp-coll-title em{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--lp-aurora)}
.lp-coll-sub{font-size:16px;color:var(--lp-argento);max-width:520px;margin:0 auto}

.lp-coll-group{position:relative;padding:3rem 2rem}
.lp-coll-wrap{position:relative;z-index:1;max-width:1100px;margin:0 auto}
.lp-coll-divider{display:flex;align-items:center;gap:1.2rem;margin-bottom:2.4rem}
.lp-coll-divider .lp-dl{flex:1;height:1px;
	background:linear-gradient(to right,transparent,var(--lp-stellar))}
.lp-coll-divider .lp-dr{flex:1;height:1px;
	background:linear-gradient(to left,transparent,var(--lp-stellar))}
.lp-coll-grouptitle{font-family:'Cinzel',serif;font-size:18px;font-weight:400;letter-spacing:.2em;text-align:center;white-space:nowrap;
	text-transform:uppercase;color:var(--lp-luna);margin:0}

.lp-coll-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.8rem}
.lp-coll-grid--origini{max-width:600px;margin:0 auto}

.lp-coll-card{display:flex;flex-direction:column;text-decoration:none;border-radius:2px;
	background:rgba(27,58,107,.25);border:1px solid rgba(74,144,196,.15);
	overflow:hidden;transition:transform .3s,border-color .3s}
.lp-coll-card:hover{transform:translateY(-4px);border-color:rgba(201,169,122,.55)}
.lp-coll-card.is-soon{pointer-events:none;opacity:.55}

.lp-coll-img{position:relative;aspect-ratio:3/4;
	display:flex;align-items:center;justify-content:center;overflow:hidden}
/* l'illustrazione sfuma ai bordi e si fonde con la scheda (come nella v2) */
.lp-coll-img.has-img::before{content:'';position:absolute;inset:0;
	background-image:var(--lp-img);background-size:contain;background-repeat:no-repeat;
	background-position:center center;
	-webkit-mask-image:radial-gradient(68% 72% at 50% 46%,#000 58%,transparent 94%);
	mask-image:radial-gradient(68% 72% at 50% 46%,#000 58%,transparent 94%)}
.lp-coll-star{color:var(--lp-oro);opacity:.35;font-size:22px}
.lp-coll-card.is-soon .lp-coll-img{filter:grayscale(.5) brightness(.7)}

.lp-coll-body{padding:1.4rem 1.2rem 1.6rem;text-align:center}
.lp-coll-name{font-family:'Cinzel',serif;font-size:17px;letter-spacing:.14em;text-transform:uppercase;
	color:var(--lp-ivoire);margin-bottom:.4rem}
.lp-coll-card.is-soon .lp-coll-name{color:rgba(245,239,228,.5)}
.lp-coll-note{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:15px;
	color:var(--lp-aurora)}
.lp-coll-card.is-soon .lp-coll-note{color:rgba(184,208,232,.45)}
.lp-coll-sep{width:28px;height:1px;background:rgba(201,169,122,.4);margin:1rem auto}
.lp-coll-price{color:var(--lp-oro);font-size:14px;margin-bottom:.9rem}
.lp-coll-price .amount{color:var(--lp-oro)}
.lp-coll-soon{font-size:11px;letter-spacing:.24em;text-transform:uppercase;
	color:rgba(126,200,212,.6)}
.lp-coll-cta{display:inline-block;font-size:10px;letter-spacing:.24em;text-transform:uppercase;
	color:var(--lp-oro);border:1px solid rgba(201,169,122,.5);padding:.55rem 1.4rem;border-radius:2px;
	transition:background .3s,color .3s}
.lp-coll-card:hover .lp-coll-cta{background:var(--lp-oro);color:var(--lp-cosmo)}

@media(max-width:600px){
	.lp-coll-grid{grid-template-columns:1fr 1fr;gap:1.1rem}
	.lp-coll-body{padding:1rem .7rem 1.2rem}
	.lp-coll-name{font-size:14px}
}

/* ---------- packshot trasparenti: il flacone galleggia sul fondo ---------- */
.woocommerce div.product div.images,
.woocommerce div.product div.images img,
.woocommerce-product-gallery,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image a{background:transparent!important}
.woocommerce div.product div.images{border:none!important}
.woocommerce div.product div.images .flex-control-thumbs li img{
	background:rgba(27,58,107,.14);border:1px solid var(--lp-border);border-radius:2px;
	opacity:.55;transition:opacity .3s,border-color .3s}
.woocommerce div.product div.images .flex-control-thumbs li img:hover,
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active{
	opacity:1;border-color:rgba(201,169,122,.6)}
/* stessa cosa nella griglia del negozio */
.woocommerce ul.products li.product a img{background:transparent!important}

/* =====================================================
   Scheda prodotto: il flacone su un cielo stellato
   ===================================================== */
.woocommerce div.product div.images{position:relative;padding:2.5rem 1rem 0}

/* alone centrale + campo stellato, che sfumano nel fondo */
.woocommerce div.product div.images::before{
	content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
	background:
		/* le stelle */
		radial-gradient(1.6px 1.6px at 18% 22%, rgba(255,255,255,.85), transparent 60%),
		radial-gradient(1.2px 1.2px at 74% 15%, rgba(255,255,255,.7), transparent 60%),
		radial-gradient(1.8px 1.8px at 33% 62%, rgba(201,169,122,.9), transparent 60%),
		radial-gradient(1.1px 1.1px at 86% 48%, rgba(255,255,255,.65), transparent 60%),
		radial-gradient(1.5px 1.5px at 12% 74%, rgba(255,255,255,.7), transparent 60%),
		radial-gradient(1.3px 1.3px at 62% 84%, rgba(126,200,212,.8), transparent 60%),
		radial-gradient(1.7px 1.7px at 47% 12%, rgba(255,255,255,.8), transparent 60%),
		radial-gradient(1.1px 1.1px at 91% 78%, rgba(255,255,255,.6), transparent 60%),
		radial-gradient(1.4px 1.4px at 26% 40%, rgba(201,169,122,.75), transparent 60%),
		radial-gradient(1.2px 1.2px at 68% 35%, rgba(255,255,255,.7), transparent 60%),
		radial-gradient(1.6px 1.6px at 8% 52%, rgba(255,255,255,.6), transparent 60%),
		radial-gradient(1.3px 1.3px at 79% 66%, rgba(255,255,255,.75), transparent 60%),
		radial-gradient(1.1px 1.1px at 55% 55%, rgba(126,200,212,.7), transparent 60%),
		radial-gradient(1.5px 1.5px at 40% 90%, rgba(255,255,255,.65), transparent 60%),
		radial-gradient(1.2px 1.2px at 95% 28%, rgba(201,169,122,.7), transparent 60%),
		/* nebulosa centrale: densa al centro, sfuma nel blu di fondo */
		radial-gradient(circle at 50% 44%,
			rgba(40,86,150,.55) 0%,
			rgba(27,58,107,.42) 26%,
			rgba(20,42,80,.22) 48%,
			rgba(10,22,40,.06) 66%,
			transparent 78%);
	/* i bordi si dissolvono: niente riquadro visibile */
	-webkit-mask-image:radial-gradient(closest-side at 50% 46%, #000 55%, rgba(0,0,0,.45) 75%, transparent 100%);
	mask-image:radial-gradient(closest-side at 50% 46%, #000 55%, rgba(0,0,0,.45) 75%, transparent 100%);
}

/* il flacone sta sopra al cielo */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.woocommerce div.product div.images .woocommerce-product-gallery__image{position:relative;z-index:1}

/* niente ingrandimento al passaggio del mouse */
.woocommerce div.product div.images img{transition:none!important}
.woocommerce div.product div.images .woocommerce-product-gallery__image:hover img,
.woocommerce ul.products li.product:hover img{transform:none!important}

/* più aria tra la foto grande e le miniature */
.woocommerce div.product div.images .flex-control-thumbs{
	margin-top:2.6rem!important;padding-top:1.4rem;
	border-top:1px solid rgba(74,144,196,.12);
	position:relative;z-index:2;display:flex;gap:.9rem}
.woocommerce div.product div.images .flex-control-thumbs li{
	width:auto!important;margin:0!important;flex:0 0 84px}

/* la galleria WooCommerce parte a opacita 0 e viene rivelata dal JS:
   senza lo script di zoom quel passaggio non avviene, quindi la forziamo */
.woocommerce div.product div.images.woocommerce-product-gallery{opacity:1!important}
.woocommerce div.product div.images .woocommerce-product-gallery__image img{opacity:1!important}

/* =====================================================
   Lightbox (PhotoSwipe): stesso cielo della scheda,
   non il fondo nero di default
   ===================================================== */
.pswp__bg{
	background:#0A1628!important;
	opacity:1!important;
}
/* alone + stelle dietro all'immagine ingrandita */
.pswp::before{
	content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
	background:
		radial-gradient(1.6px 1.6px at 16% 20%, rgba(255,255,255,.85), transparent 60%),
		radial-gradient(1.2px 1.2px at 72% 14%, rgba(255,255,255,.7), transparent 60%),
		radial-gradient(1.8px 1.8px at 31% 64%, rgba(201,169,122,.9), transparent 60%),
		radial-gradient(1.1px 1.1px at 88% 46%, rgba(255,255,255,.65), transparent 60%),
		radial-gradient(1.5px 1.5px at 10% 76%, rgba(255,255,255,.7), transparent 60%),
		radial-gradient(1.3px 1.3px at 64% 86%, rgba(126,200,212,.8), transparent 60%),
		radial-gradient(1.7px 1.7px at 45% 10%, rgba(255,255,255,.8), transparent 60%),
		radial-gradient(1.1px 1.1px at 93% 80%, rgba(255,255,255,.6), transparent 60%),
		radial-gradient(1.4px 1.4px at 24% 38%, rgba(201,169,122,.75), transparent 60%),
		radial-gradient(1.2px 1.2px at 70% 34%, rgba(255,255,255,.7), transparent 60%),
		radial-gradient(1.6px 1.6px at 6% 50%, rgba(255,255,255,.6), transparent 60%),
		radial-gradient(1.3px 1.3px at 81% 68%, rgba(255,255,255,.75), transparent 60%),
		radial-gradient(1.5px 1.5px at 38% 92%, rgba(255,255,255,.65), transparent 60%),
		radial-gradient(1.2px 1.2px at 96% 26%, rgba(201,169,122,.7), transparent 60%),
		radial-gradient(circle at 50% 48%,
			rgba(40,86,150,.5) 0%,
			rgba(27,58,107,.38) 26%,
			rgba(20,42,80,.2) 48%,
			rgba(10,22,40,.05) 66%,
			transparent 78%);
}
.pswp__scroll-wrap,.pswp__container{z-index:2}
.pswp__caption,.pswp__top-bar{background:transparent!important}
.pswp__button{color:var(--lp-luna)}

/* Il logo spariva su negozio/carrello/area cliente/prodotto: WooCommerce
   (woocommerce-layout.css) impone '.woocommerce img{height:auto}', che ha
   specificita' maggiore di '.lp-logo{height:34px}'. Senza altezza e senza
   width/height nel file SVG, il logo collassava a zero. */
.lp-header .lp-logo,
.woocommerce .lp-header .lp-logo,
.woocommerce-page .lp-header .lp-logo{
	height:34px!important;
	width:auto!important;
	max-width:none!important;
	display:block!important;
}

/* =====================================================
   Selettore formato a caselle (al posto del menu a tendina)
   ===================================================== */
.lp-formati{ display:flex; gap:.7rem; flex-wrap:wrap; }
.lp-formato{
	min-width:84px; padding:.7rem 1.1rem; text-align:center; cursor:pointer;
	background:rgba(27,58,107,.18); border:1px solid var(--lp-border); border-radius:2px;
	color:var(--lp-argento); font-size:13px; letter-spacing:.04em;
	transition:border-color .25s, background .25s, color .25s; user-select:none;
}
.lp-formato:hover{ border-color:rgba(201,169,122,.55); color:var(--lp-luna); }
.lp-formato.is-active{
	border-color:var(--lp-oro); background:rgba(201,169,122,.14); color:var(--lp-oro);
	font-weight:500;
}
.lp-formato.is-disabled{ opacity:.35; cursor:not-allowed; text-decoration:line-through; }
/* nascondo il select originale ma lo tengo funzionante */
.woocommerce div.product form.cart .variations td.value select.lp-hidden{
	position:absolute; opacity:0; pointer-events:none; height:0; width:0; padding:0; margin:0; border:0;
}
.woocommerce div.product form.cart .variations td.value a.reset_variations{ display:none !important; }

/* ---------- meta prodotto (SKU, Barcode, Marchio, Linea) ---------- */
.lp-meta{ margin-top:1.8rem; padding-top:1.2rem; border-top:1px solid var(--lp-border);
	font-size:13px; line-height:1.5; }
.lp-meta-row{ display:flex; gap:.8rem; padding:.28rem 0; }
.lp-meta-lbl{ flex:0 0 84px; color:rgba(184,208,232,.55);
	text-transform:uppercase; letter-spacing:.14em; font-size:11px; padding-top:1px; }
.lp-meta-val{ color:var(--lp-luna); font-family:'DM Sans',sans-serif; }
.lp-meta-val a{ color:var(--lp-aurora); text-decoration:none; border-bottom:1px solid transparent;
	transition:border-color .25s; }
.lp-meta-val a:hover{ border-bottom-color:var(--lp-aurora); }

/* ---------- stato disponibilità scheda prodotto ---------- */
.woocommerce div.product p.stock.in-stock,
.woocommerce div.product .stock.in-stock{ color:#3fb56a !important; }
.woocommerce div.product p.stock.out-of-stock,
.woocommerce div.product .stock.out-of-stock{ color:#d63638 !important; }

/* stato disponibilità un filo più grande */
.woocommerce div.product p.stock{ font-size:15px; letter-spacing:.03em; }

/* variante non abbinata a Mexal */
.woocommerce div.product p.stock.lp-nonabbinata{ color:#8a94a3 !important; }

/* =====================================================
   Carrello e Checkout a blocchi (WooCommerce Blocks)
   ===================================================== */
.wp-block-woocommerce-checkout,
.wp-block-woocommerce-cart,
.wc-block-checkout,
.wc-block-cart{ color:var(--lp-argento); }

/* titoli di sezione */
.wc-block-components-title,
.wc-block-components-checkout-step__title,
.wp-block-woocommerce-checkout h2,
.wp-block-woocommerce-cart h2{ color:var(--lp-luna)!important; font-family:'Cinzel',serif!important; }
.wc-block-components-checkout-step__description,
.wc-block-components-checkout-step__heading-content{ color:var(--lp-argento)!important; }

/* etichette e testo */
.wc-block-components-checkout-step,
.wc-block-components-text-input label,
.wc-block-components-form .wc-block-components-text-input label,
.wc-block-components-checkbox__label,
.wc-block-components-radio-control__label,
.wc-block-components-totals-item__label,
.wc-block-components-order-summary-item__description,
.wc-block-components-product-name,
.wc-block-components-product-metadata,
.wc-block-components-address-card{ color:var(--lp-argento)!important; }

/* CAMPI DI INPUT: fondo scuro, testo chiaro */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-components-select select,
.wc-block-components-select .components-form-token-field__input,
.wc-block-checkout input[type=text],
.wc-block-checkout input[type=email],
.wc-block-checkout input[type=tel],
.wc-block-checkout input[type=number],
.wc-block-checkout select,
.wc-block-checkout textarea{
	background:rgba(10,22,40,.85)!important;
	border:1px solid var(--lp-border)!important;
	color:var(--lp-luna)!important;
	border-radius:2px!important;
}
.wc-block-components-text-input input:focus,
.wc-block-checkout input:focus,
.wc-block-checkout select:focus{
	border-color:var(--lp-oro)!important;
	box-shadow:0 0 0 1px rgba(201,169,122,.4)!important;
	outline:none!important;
}
/* etichetta flottante dentro il campo */
.wc-block-components-text-input label,
.wc-block-components-text-input.is-active label{ color:rgba(184,208,232,.6)!important; }
.wc-block-components-text-input input::placeholder,
.wc-block-checkout input::placeholder,
.wc-block-checkout textarea::placeholder{ color:rgba(184,208,232,.4)!important; }

/* select nativo (paese, provincia): freccia e testo visibili */
.wc-block-components-combobox .components-combobox-control__suggestions-container input,
.wc-block-components-country-input input,
.wc-block-components-state-input input{ color:var(--lp-luna)!important; }
.wc-block-components-combobox-control .components-base-control__field{ color:var(--lp-luna); }

/* riquadro riepilogo ordine */
.wc-block-components-sidebar,
.wc-block-components-order-summary,
.wp-block-woocommerce-checkout-order-summary-block{
	background:rgba(27,58,107,.16)!important;
	border:1px solid var(--lp-border)!important;
	border-radius:2px;
}
.wc-block-components-totals-item__value,
.wc-block-components-order-summary-item__total-price,
.wc-block-components-product-price,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{ color:var(--lp-oro)!important; }
.wc-block-components-totals-item{ color:var(--lp-argento); }
.wc-block-components-panel__button,
.wc-block-components-totals-coupon-link{ color:var(--lp-aurora)!important; }

/* separatori e note */
.wc-block-components-checkout-step{ border-color:var(--lp-border)!important; }
.wc-block-checkout__actions .wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button{
	background:var(--lp-oro)!important; color:var(--lp-cosmo)!important;
	border:none!important; border-radius:2px!important;
	letter-spacing:.18em!important; text-transform:uppercase!important; font-weight:500!important;
}
.wc-block-checkout__actions .wc-block-components-checkout-place-order-button:hover,
.wc-block-cart__submit-button:hover{ background:var(--lp-aurora)!important; }

/* avvisi e messaggi */
.wc-block-components-notice-banner{
	background:rgba(27,58,107,.3)!important; color:var(--lp-luna)!important;
	border-radius:2px;
}
.wc-block-components-notice-banner.is-error{ border-color:#d63638!important; }
.wc-block-components-validation-error{ color:#ff8a8a!important; }

/* link generici nel checkout */
.wc-block-checkout a,.wc-block-cart a{ color:var(--lp-aurora); }

/* =====================================================
   Notice WooCommerce: l'icona ::before non deve
   sovrapporsi al testo (dava problemi sul tema scuro)
   ===================================================== */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.woocommerce-noreviews,
.woocommerce p.stock{
	position:relative;
	padding:1em 1.5em 1em 3.2em!important;   /* spazio a sinistra per l'icona */
	list-style:none;
	background:rgba(27,58,107,.28);
	border-top:2px solid var(--lp-oro);
	color:var(--lp-luna);
	border-radius:2px;
	margin:0 0 1.4em;
}
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before{
	left:1.1em!important;                     /* icona ancorata al padding, non sul testo */
	top:1.1em!important;
	color:var(--lp-oro);
}
.woocommerce-error{ border-top-color:#d63638; }
.woocommerce-error::before{ color:#d63638; }
/* le liste di errori dentro il riquadro non devono avere puntini/margini extra */
.woocommerce-error li,
.woocommerce-info li,
.woocommerce-message li{ margin:0!important; padding:0!important; list-style:none!important; }

/* messaggio spedizione gratuita nel riepilogo */
.lp-free-ship{ font-family:'DM Sans',sans-serif; font-size:15px;
	color:var(--lp-aurora); text-align:center; padding:1rem 1rem .2rem; line-height:1.45; }
.lp-free-ship.is-ok{ color:var(--lp-oro); }
.lp-free-ship strong{ font-weight:500; }

/* ---------- stelle cadenti (dall'ultima v2) ---------- */
@keyframes shoot{
	0%{opacity:0;transform:rotate(-28deg) translateX(0)}
	3%{opacity:1}
	12%{opacity:0;transform:rotate(-28deg) translateX(-46vw)}
	100%{opacity:0;transform:rotate(-28deg) translateX(-46vw)}
}
.lp-stars{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.lp-shoots{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.lp-shoot{position:absolute;border-radius:2px;opacity:0;pointer-events:none}
/* corpo luminoso in testa alla scia (estremità che guida la caduta) */
.lp-shoot::before{content:'';position:absolute;left:0;top:50%;transform:translate(-50%,-50%);width:4px;height:4px;border-radius:50%;background:#fff;box-shadow:0 0 8px 2px rgba(255,255,255,.7)}
/* rispetta chi preferisce ridurre il movimento */
@media (prefers-reduced-motion: reduce){
	.lp-shoot{animation:none!important}
}

/* titoli gruppo collezione su mobile: font ridotto per non sbordare */
@media (max-width: 480px){
	.lp-coll-grouptitle{font-size:14px;letter-spacing:.15em}
}

/* costellazione su mobile: etichette ricollocate per non sovrapporsi
   (gli offset in px della v2 sono tarati sul contenitore desktop) */
@media (max-width: 640px){
	/* Asterope: a sinistra della sua stella, centrata in verticale */
	.lp-lbl-asterope{bottom:auto!important;top:50%!important;left:-6px!important;transform:translate(-100%,-50%)!important}
	/* Maia: a sinistra della sua stella, così non tocca la stella di Asterope */
	.lp-lbl-maia{bottom:auto!important;top:50%!important;left:-4px!important;transform:translate(-100%,-50%)!important}
	/* Taigete: sopra la sua stella ma più vicina */
	.lp-lbl-taigete{bottom:30px!important}
	/* Alcione: più vicina alla sua stella */
	.lp-lbl-alcione{top:42px!important}
}

/* riquadro totali carrello/checkout: padding orizzontale simmetrico */
.wc-block-components-sidebar{padding-left:18px!important;padding-right:18px!important}

/* ---------- carrello: proposte per la spedizione gratuita ---------- */
.lp-suggest{margin:2.5rem auto 0;max-width:1100px}
.lp-suggest-title{font-family:Cinzel,serif;font-weight:400;font-size:22px;color:var(--lp-luna);
	text-align:center;letter-spacing:.08em;margin:0 0 .3rem}
.lp-suggest-sub{font-family:Cormorant Garamond,serif;font-style:italic;font-size:18px;
	color:var(--lp-aurora);text-align:center;margin:0 0 1.6rem}
.lp-suggest-sub strong{font-weight:600;font-style:normal}
.lp-suggest-track{display:flex;gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;
	padding:.2rem .2rem 1rem;-webkit-overflow-scrolling:touch}
.lp-suggest-card{flex:0 0 185px;scroll-snap-align:start;background:rgba(27,58,107,.25);
	border:1px solid var(--lp-border);border-radius:2px;padding:1rem;text-align:center}
.lp-suggest-card.is-hidden{display:none}
.lp-suggest-img{display:block;height:140px;background-size:contain;background-position:center;background-repeat:no-repeat}
.lp-suggest-nome{font-family:Cormorant Garamond,serif;font-style:italic;font-size:20px;color:var(--lp-aurora);margin-top:.6rem}
.lp-suggest-formato{font-family:DM Sans,sans-serif;font-size:12px;color:var(--lp-argento);letter-spacing:.08em}
.lp-suggest-prezzo{font-family:DM Sans,sans-serif;font-size:15px;margin:.4rem 0 .7rem}
.lp-suggest-prezzo .woocommerce-Price-amount{color:var(--lp-oro)}
.lp-suggest-add{font-family:DM Sans,sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;
	background:transparent;color:var(--lp-aurora);border:1px solid var(--lp-aurora);border-radius:2px;
	padding:.55rem 1.2rem;cursor:pointer;transition:background .25s,color .25s}
.lp-suggest-add:hover{background:var(--lp-aurora);color:var(--lp-cosmo)}
.lp-suggest-add:disabled{opacity:.5;cursor:wait}

/* ---------- mobile: nessuno scroll orizzontale di pagina (no-h-scroll) ---------- */
html,body{max-width:100%;overflow-x:hidden}

/* ---------- prodotti correlati: griglia allineata (no float staircase) ---------- */
.woocommerce ul.products,
.woocommerce-page ul.products{
	display:grid!important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
	gap:1.8rem;margin:0;padding:0;list-style:none}
.woocommerce ul.products::before,
.woocommerce ul.products::after{content:none!important}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	float:none!important;width:auto!important;margin:0!important;clear:none!important}
@media(max-width:600px){
	.woocommerce ul.products,
	.woocommerce-page ul.products{grid-template-columns:1fr 1fr;gap:1.1rem}
}

/* ---------- scheda prodotto: label 'Formato' allineata e distanziata ---------- */
.woocommerce div.product form.cart .variations th.label,
.woocommerce div.product form.cart .variations td.label{
	vertical-align:middle;padding-right:1.6rem;white-space:nowrap}
.woocommerce div.product form.cart .variations td.value{vertical-align:middle}
.woocommerce div.product form.cart .variations label{margin:0;line-height:1}

/* carosello proposte: variante esaurita */
.lp-suggest-card.is-soldout{opacity:.6}
.lp-suggest-card.is-soldout .lp-suggest-img{filter:grayscale(.5) brightness(.75)}
.lp-suggest-soldout{display:inline-block;font-family:'DM Sans',sans-serif;font-size:11px;
	letter-spacing:.18em;text-transform:uppercase;color:var(--lp-argento);
	border:1px solid var(--lp-border);border-radius:2px;padding:.55rem 1.2rem}

/* caselle formato: sempre affiancate (sono solo due), così 'Formato' resta
   sulla stessa riga orizzontale di 50 ml / 300 ml anche su mobile */
.lp-formati{flex-wrap:nowrap} /* formati-nowrap */
@media(max-width:480px){
	.lp-formato{min-width:0;flex:1 1 0;padding:.7rem .6rem;font-size:12.5px}
	.woocommerce div.product form.cart .variations td.label{padding-right:1rem}
}

/* ============ checkout: riepilogo dell'ordine (checkout-summary-fix) ============ */
/* 1) badge quantità leggibile (WC lo rende testo=sfondo, quindi invisibile) */
.wc-block-components-order-summary-item__quantity{
	background:var(--lp-oro)!important;color:var(--lp-cosmo)!important;
	border:1px solid var(--lp-cosmo)!important;font-weight:600!important;
	font-family:'DM Sans',sans-serif!important}

/* 2)+3) su mobile WC mostra DUE riepiloghi: la sidebar collassata in alto e
   il 'fill' espanso in basso. Teniamo solo il secondo (espanso, articoli
   subito visibili) e nascondiamo quello in alto. Sopra 800px resta la sola
   sidebar, che è il riepilogo unico del desktop: lì non va toccata. */
@media (max-width:800px){
	.wc-block-checkout__sidebar{display:none!important}
}
