/* Scheda prodotto ridisegnata (30/10/2026). Tutto sotto body.ci-prodotto: con l'interruttore spento non vale nulla. */

.ci-prodotto {
	--ci-blu: #0088cc;
	--ci-blu-chiaro: #e8f4fb;
	--ci-testo: #222529;
	--ci-grigio: #6b7177;
	--ci-bordo: #e3e7eb;
	--ci-campo: #c9d0d7;
	--ci-sfondo: #f4f6f8;
	--ci-verde: #1f9d55;
	--ci-verde-chiaro: #e9f7ef;
	--ci-arancio: #b45309;
}
.ci-prodotto #main .container { max-width: 1180px; }
.ci-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .02em; }

/* Alto: galleria e acquisto */
.ci-alto { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 44px; align-items: start; margin-top: 8px; }
.ci-galleria { min-width: 0; }
.ci-galleria .product-images { border: 1px solid var(--ci-bordo); border-radius: 14px; overflow: hidden; background: #fff; }
.ci-galleria .labels, .ci-galleria .onhot, .ci-galleria .onsale { display: none !important; }
.ci-info { min-width: 0; }

.ci-marca { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; font-size: 13px; margin-bottom: 10px; }
.ci-marca-nome { font: 700 13px Poppins, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: var(--ci-testo); border: 1px solid var(--ci-testo); padding: 3px 9px; border-radius: 4px; }
.ci-codice { display: inline-flex; align-items: center; gap: 8px; background: var(--ci-sfondo); border-radius: 6px; padding: 4px 10px; color: var(--ci-testo); }
.ci-codice b { font-size: 14px; }
.ci-copia { border: 0; background: none; padding: 0; color: var(--ci-blu); font-weight: 600; font-size: 12px; cursor: pointer; }
.ci-prodotto .ci-info h1.product_title { font: 600 27px/1.25 Poppins, sans-serif; margin: 0 0 16px; color: var(--ci-testo); text-transform: none; letter-spacing: 0; }

.ci-compat { background: var(--ci-blu-chiaro); border-radius: 10px; padding: 12px 16px; margin-bottom: 18px; font-size: 14px; }
.ci-compat-tit { display: flex; align-items: center; gap: 8px; font-weight: 700; margin-bottom: 8px; color: var(--ci-testo); }
.ci-compat-tit svg { width: 18px; height: 18px; fill: none; stroke: var(--ci-blu); stroke-width: 2.6; }
.ci-serie { display: flex; flex-wrap: wrap; gap: 6px; }
.ci-serie span { background: #fff; border-radius: 6px; padding: 3px 10px; font-weight: 600; font-size: 13px; }

.ci-acquisto { border: 1px solid var(--ci-bordo); border-radius: 14px; padding: 20px 22px; }
.ci-prodotto .ci-acquisto p.price { margin: 0; color: var(--ci-testo); line-height: 1.2; }
.ci-prodotto .ci-acquisto p.price > .amount,
.ci-prodotto .ci-acquisto p.price > ins .amount { font: 700 32px Poppins, sans-serif; color: var(--ci-testo); }
.ci-prodotto .ci-acquisto p.price del .amount { font-size: 18px; color: var(--ci-grigio); }
.ci-prodotto .ci-acquisto .woocommerce-price-suffix { font-size: 13px; color: var(--ci-grigio); }
.ci-prodotto .ci-acquisto .woocommerce-price-suffix .ci-netto { margin-top: 4px; }
.ci-disp { display: flex; align-items: center; gap: 8px; margin: 14px 0 16px; font-size: 14px; font-weight: 700; color: var(--ci-verde); }
.ci-pallino { width: 10px; height: 10px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px var(--ci-verde-chiaro); flex: none; }
.ci-disp.out-of-stock { color: #c0392b; }
.ci-disp.out-of-stock .ci-pallino { box-shadow: 0 0 0 4px #fbeaea; }
.ci-disp.available-on-backorder { color: var(--ci-arancio); }
.ci-disp.available-on-backorder .ci-pallino { box-shadow: 0 0 0 4px #fdf1e3; }
.ci-acquisto p.stock { display: none; }

.ci-prodotto .ci-acquisto form.cart { display: flex; gap: 12px; margin: 0; padding: 0; border: 0; flex-wrap: wrap; }
.ci-prodotto .ci-acquisto form.cart::before, .ci-prodotto .ci-acquisto form.cart::after { display: none; }
.ci-prodotto .ci-acquisto .quantity { margin: 0 !important; height: 54px; border: 1px solid var(--ci-campo); border-radius: 10px; overflow: hidden; display: flex; }
.ci-prodotto .ci-acquisto .quantity .qty, .ci-prodotto .ci-acquisto .quantity button, .ci-prodotto .ci-acquisto .quantity .minus, .ci-prodotto .ci-acquisto .quantity .plus { height: 52px; border: 0 !important; background: #fff; }
.ci-prodotto .ci-acquisto .single_add_to_cart_button { flex: 1; height: 54px; margin: 0 !important; border-radius: 10px; background: var(--ci-blu) !important; color: #fff !important; font: 600 16px/1 Poppins, sans-serif !important; text-transform: none !important; letter-spacing: 0 !important; padding: 0 20px !important; }
.ci-prodotto .ci-acquisto .single_add_to_cart_button:hover { background: #0077b3 !important; }

.ci-servizi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 16px; font-size: 12.5px; color: var(--ci-grigio); line-height: 1.35; }
.ci-servizi div { display: flex; gap: 8px; align-items: flex-start; }
.ci-servizi b { display: block; color: var(--ci-testo); font-size: 13px; }
.ci-servizi svg { flex: none; width: 18px; height: 18px; margin-top: 1px; fill: none; stroke: var(--ci-verde); stroke-width: 2.2; }
.ci-pagamenti { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.ci-pagamenti span { height: 22px; border: 1px solid var(--ci-bordo); border-radius: 4px; padding: 0 6px; display: inline-flex; align-items: center; font: 700 10.5px "Open Sans", sans-serif; background: #fff; }

.ci-aiuto { display: flex; gap: 14px; align-items: center; margin-top: 16px; padding: 14px 16px; border: 1px dashed #b9c3cc; border-radius: 12px; font-size: 14px; }
.ci-aiuto-ic { width: 40px; height: 40px; border-radius: 50%; background: var(--ci-blu-chiaro); display: grid; place-items: center; flex: none; }
.ci-aiuto-ic svg { width: 20px; height: 20px; fill: none; stroke: var(--ci-blu); stroke-width: 2.2; }
.ci-aiuto-testo { flex: 1; }
.ci-aiuto-testo b { display: block; }
.ci-aiuto a { font-weight: 700; white-space: nowrap; }

/* Descrizione e scheda tecnica */
.ci-dettagli { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 44px; margin-top: 44px; padding-top: 30px; border-top: 1px solid var(--ci-bordo); }
.ci-prodotto .ci-dettagli h2, .ci-prodotto .ci-altri h2 { font: 600 19px Poppins, sans-serif; margin: 0 0 12px; color: var(--ci-testo); text-transform: none; letter-spacing: 0; }
.ci-testo { font-size: 15px; line-height: 1.6; }
.ci-spedizione { margin-top: 22px; background: var(--ci-sfondo); border-radius: 12px; padding: 16px 18px; font-size: 14px; }
.ci-prodotto .ci-spedizione h3 { font: 600 15px Poppins, sans-serif; margin: 0 0 8px; text-transform: none; letter-spacing: 0; }
.ci-spedizione p { margin: 0 0 6px; }
.ci-tecnica { width: 100%; border-collapse: collapse; font-size: 14px; margin: 0; }
.ci-tecnica th, .ci-tecnica td { text-align: left; padding: 9px 12px; border: 0; border-bottom: 1px solid var(--ci-bordo); vertical-align: top; }
.ci-tecnica th { width: 42%; color: var(--ci-grigio); font-weight: 600; background: var(--ci-sfondo); }

/* Altri prodotti */
.ci-altri { margin-top: 44px; }
.ci-card-griglia { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.ci-card { display: flex; flex-direction: column; border: 1px solid var(--ci-bordo); border-radius: 12px; padding: 12px; color: var(--ci-testo); background: #fff; }
.ci-card:hover { border-color: var(--ci-blu); color: var(--ci-testo); }
.ci-card-img { aspect-ratio: 1 / 1; display: grid; place-items: center; margin-bottom: 10px; }
.ci-card-img img { width: 100%; height: 100%; object-fit: contain; }
.ci-card-marca { font: 700 11px Poppins, sans-serif; letter-spacing: .06em; text-transform: uppercase; color: var(--ci-grigio); }
.ci-card-nome { font-weight: 600; font-size: 14px; line-height: 1.35; margin: 2px 0 8px; }
.ci-card-prezzo .amount { font: 700 17px Poppins, sans-serif; }
.ci-card-prezzo .woocommerce-price-suffix { font-size: 12px; color: var(--ci-grigio); }
.ci-card-disp { font-size: 12px; color: var(--ci-verde); font-weight: 600; margin-top: auto; padding-top: 4px; }

.ci-barra { display: none; }

@media (max-width: 991px) {
	.ci-alto { grid-template-columns: 1fr; gap: 18px; }
	.ci-dettagli { grid-template-columns: 1fr; gap: 26px; margin-top: 28px; }
	.ci-card-griglia { grid-template-columns: repeat(2, 1fr); gap: 10px; }
}
@media (max-width: 767px) {
	.ci-prodotto .ci-info h1.product_title { font-size: 22px; }
	.ci-prodotto .ci-acquisto p.price > .amount, .ci-prodotto .ci-acquisto p.price > ins .amount { font-size: 28px; }
	.ci-acquisto { padding: 16px; }
	.ci-servizi { grid-template-columns: 1fr; gap: 8px; }
	.ci-card-nome { font-size: 13px; }
	.ci-barra { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 999; background: #fff; border-top: 1px solid var(--ci-bordo); padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); gap: 12px; align-items: center; box-shadow: 0 -4px 16px rgba(0, 0, 0, .06); transform: translateY(110%); transition: transform .2s; }
	.ci-barra.visibile { transform: none; }
	.ci-barra-prezzo { font: 700 19px/1.1 Poppins, sans-serif; }
	.ci-barra-prezzo small { display: block; font: 400 11px "Open Sans", sans-serif; color: var(--ci-grigio); }
	.ci-barra-compra { flex: 1; height: 48px; border: 0; border-radius: 10px; background: var(--ci-blu); color: #fff; font: 600 15px Poppins, sans-serif; }
	body.ci-prodotto { padding-bottom: 70px; }
	.ci-prodotto .porto-sticky-addcart, .ci-prodotto .sticky-product { display: none !important; }
	/* In basso a destra c'è il pulsante delle preferenze cookie di iubenda (non si lascia spostare): la barra gli lascia spazio. */
	.ci-barra { padding-right: 68px; }
}
