/* Ronchello Scheda Prodotto — sezione 1 (hero) */

body.rsp-scheda {
	--rsp-orange: #f2a22b;
	--rsp-orange-dark: #e08f16;
	--rsp-orange-soft: #fdf4e6;
	--rsp-border: #f5dfbd;
	--rsp-card: #fffcf8;
	--rsp-bg: #fcf8f6;
	--rsp-text: #1f1b18;
	--rsp-muted: #57504a;
	--rsp-green: #2f7d32;
	--rsp-mint: #e7f1ec;
	--rsp-radius: 12px;
	--rsp-sans: "Nunito", "Arimo", Arial, sans-serif;
	--rsp-serif: "Newsreader", Georgia, "Times New Roman", serif;
}

/* ---------- Layout pagina: niente banner titolo né sidebar (come mockup) ---------- */
body.rsp-scheda .top_panel_title { display: none !important; }
body.rsp-scheda .page_content_wrap .sidebar { display: none !important; }
body.rsp-scheda .page_content_wrap { background: var(--rsp-bg); padding-top: 48px; }
body.rsp-scheda .page_content_wrap .content {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.rsp-scheda div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
	column-gap: 44px;
	align-items: start;
}
body.rsp-scheda div.product > * { grid-column: 1 / -1; }
body.rsp-scheda div.product > .rsp-gallery { grid-column: 1; }
body.rsp-scheda div.product > .summary { grid-column: 2; }
body.rsp-scheda div.product::before,
body.rsp-scheda div.product::after { display: none !important; }

/* ---------- a) Galleria ---------- */
body.rsp-scheda .rsp-gallery {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 16px;
	align-self: stretch;
	align-items: start;
}
body.rsp-scheda .rsp-gallery > .rsp-main,
body.rsp-scheda .rsp-gallery > .rsp-thumbs-wrap {
	position: -webkit-sticky;
	position: sticky;
	top: var(--rsp-sticky-top, 24px);
}
body.rsp-scheda .rsp-gallery.rsp-has-thumbs { grid-template-columns: 92px minmax(0, 1fr); gap: 22px; }

.rsp-thumbs-wrap { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.rsp-thumbs {
	display: flex;
	flex-direction: column;
	gap: 18px;
	max-height: 410px;
	overflow-y: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
	padding: 2px;
}
.rsp-thumbs::-webkit-scrollbar { display: none; }
body.rsp-scheda .rsp-thumb {
	flex: 0 0 auto;
	width: 88px;
	height: 88px;
	padding: 0;
	margin: 0;
	border: 2px solid transparent;
	border-radius: 10px;
	background: #fff;
	overflow: hidden;
	cursor: pointer;
	box-shadow: none;
	transition: border-color .2s;
}
body.rsp-scheda .rsp-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0; }
body.rsp-scheda .rsp-thumb.is-active,
body.rsp-scheda .rsp-thumb:hover { border-color: var(--rsp-orange); }
body.rsp-scheda .rsp-thumbs-more {
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--rsp-border);
	border-radius: 50%;
	background: #fff;
	color: var(--rsp-text);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
body.rsp-scheda .rsp-thumbs-more[hidden] { display: none; }
body.rsp-scheda .rsp-thumbs-more .rsp-ico { width: 18px; height: 18px; }

body.rsp-scheda .rsp-main {
	position: relative;
	margin: 0;
	background: #f6f2ee;
	border-radius: 18px;
	overflow: hidden;
	aspect-ratio: 4 / 5;
	box-shadow: none;
}
body.rsp-scheda .rsp-main .woocommerce-product-gallery__image,
body.rsp-scheda .rsp-main .rsp-main-link {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	border: 0;
}
body.rsp-scheda .rsp-main img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	mix-blend-mode: multiply;
	display: block;
	border: 0 !important;
	border-radius: 0;
	cursor: zoom-in;
}
body.rsp-scheda .rsp-main .onsale { position: absolute; top: 14px; left: 14px; right: auto; margin: 0; z-index: 2; }
body.rsp-scheda .rsp-zoom[hidden] { display: none; }
body.rsp-scheda .rsp-zoom {
	position: absolute;
	left: 50%;
	bottom: 28px;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 18px;
	margin: 0;
	border: 1px solid #efe4d6;
	border-radius: 999px;
	background: #fbf8f5;
	color: var(--rsp-text);
	font: 600 14px/1 var(--rsp-sans);
	text-transform: none;
	letter-spacing: 0;
	cursor: pointer;
}
body.rsp-scheda .rsp-zoom .rsp-ico { width: 17px; height: 17px; stroke-width: 2; }

/* Modal foto */
html.rsp-lb-open, html.rsp-lb-open body { overflow: hidden !important; }
.rsp-lightbox {
	position: fixed;
	inset: 0;
	height: 100vh;
	height: 100dvh;
	z-index: 2147483000;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	background: rgba(20, 16, 13, .97);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	font-family: "Nunito", Arial, sans-serif;
	animation: rsp-fade .2s ease;
}
.rsp-lightbox[hidden] { display: none; }
@keyframes rsp-fade { from { opacity: 0; } to { opacity: 1; } }
.rsp-lb-top { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; color: #fff; }
.rsp-lb-count { font: 600 15px/1 "Nunito", Arial, sans-serif; letter-spacing: .04em; opacity: .85; }
.rsp-lb-stage { position: relative; display: flex; align-items: center; justify-content: center; gap: 20px; min-height: 0; padding: 0 20px; }
.rsp-lb-frame {
	position: relative;
	max-width: min(1100px, calc(100vw - 180px));
	height: 100%;
	max-height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: 14px;
	cursor: zoom-in;
}
.rsp-lb-frame img {
	display: block;
	max-width: 100%;
	max-height: calc(100vh - 190px);
	max-height: calc(100dvh - 190px);
	object-fit: contain;
	background: #fff;
	border-radius: 14px;
	transition: transform .25s ease;
	user-select: none;
	-webkit-user-drag: none;
}
.rsp-lb-frame.is-zoomed { cursor: zoom-out; }
.rsp-lb-frame.is-zoomed img { transform: scale(2); }
body .rsp-lightbox button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	min-height: 0;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .12) !important;
	color: #fff !important;
	box-shadow: none;
	cursor: pointer;
	transition: background .2s;
	flex: 0 0 auto;
}
body .rsp-lightbox button:hover,
body .rsp-lightbox button:focus-visible { background: rgba(255, 255, 255, .28) !important; color: #fff !important; outline: none; }
.rsp-lightbox button svg { width: 24px; height: 24px; }
.rsp-lightbox.is-single .rsp-lb-prev,
.rsp-lightbox.is-single .rsp-lb-next,
.rsp-lightbox.is-single .rsp-lb-strip { display: none; }
.rsp-lb-strip {
	display: flex;
	justify-content: flex-start;
	gap: 10px;
	padding: 16px 20px 20px;
	overflow-x: auto;
	scrollbar-width: none;
}
.rsp-lb-strip::-webkit-scrollbar { display: none; }
body .rsp-lightbox .rsp-lb-thumb {
	background: #fff !important;
	width: 64px;
	height: 64px;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	border: 2px solid transparent;
	opacity: .55;
	transition: opacity .2s, border-color .2s;
}
.rsp-lightbox .rsp-lb-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
body .rsp-lightbox .rsp-lb-thumb:first-child { margin-left: auto; }
body .rsp-lightbox .rsp-lb-thumb:last-child { margin-right: auto; }
body .rsp-lightbox .rsp-lb-thumb:hover { opacity: .85; background: #fff !important; }
.rsp-lightbox .rsp-lb-thumb.is-active { opacity: 1; border-color: var(--rsp-orange, #f2a22b); }

body.rsp-scheda .rsp-main-link { cursor: zoom-in; outline: none; }
body.rsp-scheda .rsp-main-link:focus-visible { box-shadow: inset 0 0 0 3px var(--rsp-orange); }
body.rsp-scheda .rsp-main img { transition: opacity .18s ease; }
body.rsp-scheda .rsp-main.is-changing img { opacity: .35; }

@media (max-width: 767px) {
	.rsp-lb-top { padding: 12px 14px; }
	.rsp-lb-stage { padding: 0; gap: 0; }
	.rsp-lb-frame { max-width: 100vw; border-radius: 0; }
	.rsp-lb-frame img { max-height: calc(100vh - 170px); max-height: calc(100dvh - 170px); border-radius: 0; }
	body .rsp-lightbox .rsp-lb-prev,
	body .rsp-lightbox .rsp-lb-next { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; width: 40px; height: 40px; background: rgba(0, 0, 0, .45) !important; }
	body .rsp-lightbox .rsp-lb-prev { left: 8px; }
	body .rsp-lightbox .rsp-lb-next { right: 8px; }
	.rsp-lb-strip { padding: 12px 14px 16px; }
	body .rsp-lightbox .rsp-lb-thumb { width: 52px; height: 52px; }
}

/* ---------- Colonna destra ---------- */
body.rsp-scheda div.product > .summary {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--rsp-sans);
	color: var(--rsp-text);
}
body.rsp-scheda .summary > * { margin-top: 0; }

/* b) Titolo */
body.rsp-scheda .summary .product_title {
	font-family: "Sansita One", cursive !important;
	font-style: normal;
	font-weight: 400;
	font-size: 38px;
	line-height: 1.12;
	letter-spacing: -.005em;
	color: #f8b742 !important;
	text-transform: none;
	margin: 0 0 10px !important;
	padding: 0;
}

/* c) Stelle */
.rsp-rating { display: flex; align-items: center; gap: 14px; margin: 0 0 20px; }
body.rsp-scheda .rsp-rating .star-rating,
body.rsp-scheda .rsp-review .star-rating {
	float: none;
	margin: 0;
	color: var(--rsp-orange);
}
body.rsp-scheda .rsp-rating .star-rating { font-size: 23px; width: 5.4em; }
body.rsp-scheda .rsp-rating .star-rating::before,
body.rsp-scheda .rsp-review .star-rating::before { color: var(--rsp-orange); opacity: .28; }
body.rsp-scheda .rsp-rating .star-rating span::before,
body.rsp-scheda .rsp-review .star-rating span::before { color: var(--rsp-orange); }
body.rsp-scheda .rsp-rating-link {
	font: 700 16px/1 var(--rsp-sans);
	color: #3b7a2a !important;
	text-decoration: none !important;
}
body.rsp-scheda .rsp-rating-link:hover { text-decoration: underline !important; }

/* d) Anteprima recensioni */
.rsp-reviews {
	position: relative;
	background: #fbf6f1;
	border: 1px solid #f3e8da;
	border-radius: var(--rsp-radius);
	padding: 20px 22px;
	margin: 0 0 18px;
}
.rsp-review { display: flex; gap: 16px; align-items: flex-start; }
.rsp-review[hidden] { display: none; }
body.rsp-scheda .rsp-review-avatar {
	width: 48px !important;
	height: 48px !important;
	border-radius: 50%;
	flex: 0 0 48px;
	margin: 0;
}
.rsp-review-body { flex: 1; min-width: 0; }
.rsp-review-head { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; margin-bottom: 6px; }
.rsp-review-author { font: 700 16px/1.3 var(--rsp-sans); color: var(--rsp-text); }
.rsp-review-date { font: 400 13px/1.3 var(--rsp-sans); color: var(--rsp-muted); }
.rsp-review-stars { margin-left: auto; }
body.rsp-scheda .rsp-review .star-rating { font-size: 13px; width: 5.4em; }
body.rsp-scheda .rsp-review-text {
	margin: 0;
	padding: 0;
	font: 400 16px/1.6 var(--rsp-sans);
	color: #3a3430;
}
.rsp-review-dots { display: none !important; justify-content: center; gap: 6px; margin-top: 12px; }
body.rsp-scheda .rsp-review-dots button {
	width: 7px;
	height: 7px;
	min-height: 0;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background: #e3d6c6;
	cursor: pointer;
}
body.rsp-scheda .rsp-review-dots button.is-active { background: var(--rsp-orange); }

/* e) Badge prodotto */
body.rsp-scheda .rsp-badges {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}
body.rsp-scheda .rsp-badge {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 60px;
	margin: 0;
	padding: 6px;
	white-space: normal;
	overflow-wrap: anywhere;
	border: 1px solid #f1e3cf;
	border-radius: 8px;
	background: #fffcf8;
	color: #3a3430;
	font: 400 13.5px/1.2 var(--rsp-sans);
	text-align: center;
}
body.rsp-scheda .rsp-badge::before { display: none; }
body.rsp-scheda .rsp-badge .rsp-ico { width: 37px; height: 37px; flex: 0 0 37px; color: #4a433d; stroke-width: 1.2; }
body.rsp-scheda .rsp-badge .rsp-ico .rsp-acc { stroke: var(--rsp-orange); }
body.rsp-scheda .rsp-ico-img { display: block; flex: 0 0 auto; width: 28px; height: 28px; object-fit: contain; margin: 0; border: 0; border-radius: 0; box-shadow: none; }
body.rsp-scheda .rsp-badge .rsp-ico-img { width: 44px; height: 44px; }
body.rsp-scheda .rsp-badge-italiano .rsp-ico-img { width: 36px; height: 25px; border-radius: 2px; }

/* f) Prezzo */
body.rsp-scheda .summary .price {
	float: none !important;
	display: block;
	margin: 0 0 12px !important;
	font: 800 30px/1.1 var(--rsp-sans) !important;
	color: var(--rsp-text) !important;
}
body.rsp-scheda .summary .price * { color: inherit !important; font: inherit !important; }
body.rsp-scheda .summary .price del { opacity: .45; font-size: .65em !important; margin-right: 6px; }
body.rsp-scheda .summary .price ins { text-decoration: none; }

/* g) Descrizione breve */
body.rsp-scheda .woocommerce-product-details__short-description {
	margin: 0 0 22px;
	font: 400 16px/1.6 var(--rsp-sans);
	color: var(--rsp-muted);
}
body.rsp-scheda .woocommerce-product-details__short-description p { margin: 0 0 8px; }
body.rsp-scheda .woocommerce-product-details__short-description p:last-child { margin-bottom: 0; }
body.rsp-scheda .woocommerce-product-details__short-description strong { color: var(--rsp-text); }
body.rsp-scheda .woocommerce-product-details__short-description a { color: var(--rsp-orange-dark); }

/* Elementi sostituiti dai box nuovi */
body.rsp-scheda .summary .avviso,
body.rsp-scheda .summary .yith-par-message-product,
body.rsp-scheda .summary .yith-par-message-variation { display: none !important; }

/* h) Aggiungi al carrello */
body.rsp-scheda .summary form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 14px;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 0 20px !important;
	padding: 0 !important;
	border: 0 !important;
	column-gap: 26px;
}
body.rsp-scheda .summary form.cart::before,
body.rsp-scheda .summary form.cart::after { display: none !important; }
body.rsp-scheda .summary form.variations_form { display: block; }
body.rsp-scheda .summary .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; gap: 14px; }

body.rsp-scheda .summary form.cart .quantity.rsp-qty {
	float: none !important;
	display: flex;
	align-items: center;
	width: 128px;
	height: 52px;
	margin: 0 !important;
	padding: 0 6px;
	border: 1px solid var(--rsp-border);
	border-radius: 10px;
	background: #fff;
	overflow: hidden;
}
body.rsp-scheda .summary form.cart .quantity .qty {
	flex: 1;
	width: 40px !important;
	min-width: 0;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: center;
	font: 700 16px/1 var(--rsp-sans) !important;
	color: var(--rsp-text) !important;
	-moz-appearance: textfield;
	appearance: textfield;
}
body.rsp-scheda .summary form.cart .quantity .qty::-webkit-inner-spin-button,
body.rsp-scheda .summary form.cart .quantity .qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
body.rsp-scheda .summary form.cart .quantity.rsp-qty > :not(.qty):not(.rsp-qty-btn):not(label) { display: none !important; }
body.rsp-scheda .rsp-qty-btn {
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	min-height: 0;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: var(--rsp-text);
	font: 500 22px/36px var(--rsp-sans);
	cursor: pointer;
	box-shadow: none;
}
body.rsp-scheda .rsp-qty-btn:hover { background: var(--rsp-orange-soft); }

body.rsp-scheda .summary .single_add_to_cart_button {
	float: none !important;
	flex: 1 1 220px;
	width: auto !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 12px;
	height: 52px;
	margin: 0 !important;
	padding: 0 24px !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: #eea73a !important;
	color: #fff !important;
	font: 600 17px/1 var(--rsp-sans) !important;
	letter-spacing: .02em;
	text-transform: uppercase;
	box-shadow: none;
	transition: background .2s;
}
body.rsp-scheda .summary .single_add_to_cart_button::before {
	content: "";
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 4h2.3l2.3 10.5h10.6l2.1-7.5H6'/%3E%3Ccircle cx='9' cy='19' r='1.5'/%3E%3Ccircle cx='17' cy='19' r='1.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 4h2.3l2.3 10.5h10.6l2.1-7.5H6'/%3E%3Ccircle cx='9' cy='19' r='1.5'/%3E%3Ccircle cx='17' cy='19' r='1.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.rsp-scheda .summary .single_add_to_cart_button:hover { background: var(--rsp-orange-dark) !important; color: #fff !important; }
body.rsp-scheda .summary .single_add_to_cart_button.disabled { opacity: .5; }

/* i) Icone fiducia */
body.rsp-scheda .rsp-trust {
	display: grid;
	grid-template-columns: repeat(3, auto);
	justify-content: space-between;
	gap: 6px;
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}
body.rsp-scheda .rsp-trust li {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 0;
	white-space: nowrap;
	font: 400 10.5px/1.35 var(--rsp-sans);
	color: var(--rsp-muted);
}
body.rsp-scheda .rsp-trust li::before { display: none; }
body.rsp-scheda .rsp-trust .rsp-ico-img { width: 32px; height: 32px; }
body.rsp-scheda .rsp-trust .rsp-ico { width: 26px; height: 26px; flex: 0 0 26px; color: var(--rsp-text); stroke-width: 1.3; }
body.rsp-scheda .rsp-trust strong { display: block; font-weight: 700; font-size: 11px; color: var(--rsp-text); }

/* Box regalo */
.rsp-gift {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0 0 16px;
	padding: 16px 20px;
	border: 1.5px solid #f4d8a6;
	border-radius: var(--rsp-radius);
	background: #fffdfa;
}
body.rsp-scheda .rsp-gift > .rsp-gift-ico { width: 40px; height: 40px; }
.rsp-gift-text { flex: 1; min-width: 0; font: 400 13px/1.45 var(--rsp-sans); color: var(--rsp-muted); }
.rsp-gift-text strong { display: block; font-size: 16px; font-weight: 800; color: var(--rsp-text); margin-bottom: 2px; }
body.rsp-scheda .rsp-gift-btn {
	flex: 0 0 auto;
	padding: 10px 16px;
	border: 1.5px solid #eec17a;
	border-radius: 8px;
	background: #fff;
	color: var(--rsp-text) !important;
	font: 700 13px/1.2 var(--rsp-sans);
	text-decoration: none !important;
	white-space: nowrap;
	transition: background .2s;
}
body.rsp-scheda .rsp-gift-btn:hover { background: var(--rsp-orange-soft); }

/* l) Punti Ronchello */
body.rsp-scheda .rsp-points {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 16px;
	padding: 16px 20px;
	border-radius: var(--rsp-radius);
	background: var(--rsp-mint);
	color: var(--rsp-text) !important;
	font: 400 14px/1.3 var(--rsp-sans);
	text-decoration: none !important;
}
body.rsp-scheda .rsp-points[hidden] { display: none; }
body.rsp-scheda .rsp-points strong { font-weight: 800; }
.rsp-points .rsp-ico { width: 26px; height: 26px; flex: 0 0 26px; }
body.rsp-scheda .rsp-points > .rsp-points-ico { width: 28px; height: 28px; }
.rsp-points-label { flex: 1; min-width: 0; }
.rsp-points-value { white-space: nowrap; }
.rsp-points > .rsp-ico:last-child { width: 20px; height: 20px; flex-basis: 20px; stroke-width: 2.2; }

/* ---------- Sezione 2: tab prodotto ---------- */
body.rsp-scheda div.product .woocommerce-tabs {
	left: 0 !important;
	right: auto !important;
	float: none !important;
	width: 100% !important;
	margin: 16px 0 0 !important;
	padding: 0 !important;
	border: 1px solid #efe5d9;
	border-radius: 14px;
	background: #fcf8f3;
	overflow: hidden;
	font-family: var(--rsp-sans);
}
body.rsp-scheda div.product .woocommerce-tabs ul.tabs {
	display: flex !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-bottom: 1px solid #efe5d9 !important;
	background: #fff !important;
	list-style: none;
	overflow: visible;
}
body.rsp-scheda div.product .woocommerce-tabs ul.tabs::before,
body.rsp-scheda div.product .woocommerce-tabs ul.tabs::after,
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li::before,
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li::after { display: none !important; content: none !important; }
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li {
	flex: 1 1 0;
	float: none !important;
	display: block !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-left: 1px solid #efe5d9 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
}
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li:first-child { border-left: 0 !important; flex: 0.84 1 0; }
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li a {
	display: flex !important;
	align-items: center;
	justify-content: center;
	height: 56px;
	margin: 0 !important;
	padding: 0 16px !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--rsp-text) !important;
	font: 700 17px/1.2 var(--rsp-sans) !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-align: center;
	text-decoration: none !important;
	transition: background .2s, color .2s;
}
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li a:hover { background: var(--rsp-orange-soft) !important; }
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li.active { background: #eea73a !important; }
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li.active a,
body.rsp-scheda div.product .woocommerce-tabs ul.tabs li.active a:hover { background: #eea73a !important; color: #fff !important; }

body.rsp-scheda div.product .woocommerce-tabs .panel {
	margin: 0 !important;
	padding: 36px 48px 40px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fcf8f3 !important;
	box-shadow: none !important;
	color: #3a3430 !important;
	font: 400 15px/1.75 var(--rsp-sans) !important;
}
body.rsp-scheda div.product .woocommerce-tabs .panel p,
body.rsp-scheda div.product .woocommerce-tabs .panel li,
body.rsp-scheda div.product .woocommerce-tabs .panel td,
body.rsp-scheda div.product .woocommerce-tabs .panel th { color: #3a3430; font-family: var(--rsp-sans); font-size: 15px; }
body.rsp-scheda div.product .woocommerce-tabs .panel strong { color: var(--rsp-text); }
body.rsp-scheda div.product .woocommerce-tabs .panel p,
body.rsp-scheda div.product .woocommerce-tabs .panel li { font-size: 16px; }
/* Titolo "Descrizione"/"Informazioni aggiuntive" doppione della scheda: nel mockup non c'è */
body.rsp-scheda div.product .woocommerce-Tabs-panel--description > h2:first-child,
body.rsp-scheda div.product .woocommerce-Tabs-panel--additional_information > h2:first-child { display: none; }
body.rsp-scheda div.product .woocommerce-tabs .panel h2,
body.rsp-scheda div.product .woocommerce-tabs .panel h3 {
	font-family: var(--rsp-sans) !important;
	font-style: normal !important;
	font-weight: 700 !important;
	font-size: 19px !important;
	line-height: 1.3 !important;
	color: var(--rsp-text) !important;
	text-transform: none !important;
	margin: 0 0 14px !important;
}
body.rsp-scheda div.product .woocommerce-tabs .panel img { max-width: 100%; height: auto; border-radius: 12px; }
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes { border: 1px solid #efe5d9; border-radius: 10px; border-collapse: separate; overflow: hidden; width: 100%; max-width: 520px; }
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes th,
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes td { padding: 12px 16px !important; border: 0 !important; background: #fff !important; font-style: normal; }
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes th { width: 40%; font-weight: 700; background: #fcf8f3 !important; }
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes td p { margin: 0; }
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes tr { height: auto !important; }
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes th,
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes td { height: auto !important; padding: 8px 16px !important; line-height: 1.45 !important; vertical-align: middle; text-align: left !important; border-bottom: 1px solid #f3eadf !important; }
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes tr:last-child th,
body.rsp-scheda div.product .woocommerce-tabs .shop_attributes tr:last-child td { border-bottom: 0 !important; }

/* ---------- Sezione 2: modello del testo nella scheda Descrizione ----------
   Uso: <div class="rsp-desc"> ... </div> nella descrizione del prodotto.
   Icone: aggiungere a titoli/voci una classe ico-… (vedi elenco sotto). */
body.rsp-scheda .rsp-desc { color: #3a3430; font: 400 16px/1.65 var(--rsp-sans); }
body.rsp-scheda .rsp-desc > *:first-child { margin-top: 0 !important; }
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc h2.rsp-d-title {
	margin: 0 0 12px !important;
	font-family: "Sansita One", cursive !important;
	font-style: normal !important;
	font-weight: 400 !important;
	font-size: 34px !important;
	line-height: 1.15 !important;
	color: #f8b742 !important;
	letter-spacing: -.005em !important;
}
body.rsp-scheda .rsp-desc p { margin: 0 0 12px; }
body.rsp-scheda .rsp-desc ul.rsp-d-chips + p { margin-top: 20px; }
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc p.rsp-d-lead {
	margin: 0 0 18px;
	font-family: var(--rsp-serif);
	font-style: normal;
	font-weight: 700;
	font-size: 18px !important;
	line-height: 1.5;
	color: #2a1c18;
}
/* Corpo descrizione a 16px (il tema forza 15px !important su p/li nel pannello tab).
   NON tocca le colonne rsp-d-cols né le chips rsp-d-chips (restano come sono = "badge"). */
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc p,
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc ul.rsp-d-feat > li,
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc ul.rsp-d-steps > li,
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile th,
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile td { font-size: 16px !important; }
/* Titoli di sezione con icona */
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc h3 {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 10px !important;
	padding: 18px 0 0 !important;
	border-top: 1px solid #efe3d3;
	font-family: "Sansita One", var(--rsp-serif) !important;
	font-style: normal !important;
	font-weight: 400 !important;
	font-size: 23px !important;
	letter-spacing: .005em;
	color: #f8b742 !important;
}
/* Elenco caratteristiche (righe con icona grande e linea sotto) */
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc ul.rsp-d-feat + h3 { border-top: 0; }
body.rsp-scheda .rsp-desc ul.rsp-d-feat { list-style: none; margin: 0 0 4px; padding: 0; border-top: 1px solid #efe3d3; }
body.rsp-scheda .rsp-desc ul.rsp-d-feat > li {
	display: flex;
	align-items: center;
	gap: 26px;
	min-height: 54px;
	margin: 0;
	padding: 6px 0;
	border-bottom: 1px solid #efe3d3;
	font-size: 17px;
	color: #2f2a26;
}
/* Come si usa: pallini arancioni */
body.rsp-scheda .rsp-desc ul.rsp-d-steps { list-style: none; margin: 0 0 18px; padding: 0; }
body.rsp-scheda .rsp-desc ul.rsp-d-steps > li { position: relative; margin: 0 0 4px; padding: 0 0 0 20px; font-size: 16px; line-height: 1.6; }
body.rsp-scheda .rsp-desc ul.rsp-d-steps > li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: 8.5px;
	margin: 0 !important;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--rsp-orange);
}
/* Profilo del prodotto */
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile { width: auto; min-width: 0; margin: 0 0 18px; border: 0 !important; border-collapse: collapse; background: none; }
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile th,
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile td {
	padding: 3px 60px 3px 0 !important;
	border: 0 !important;
	background: none !important;
	text-align: left;
	vertical-align: top;
	font-size: 15px;
	line-height: 1.6;
}
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile th { font-weight: 700; color: #2a1c18; white-space: nowrap; min-width: 190px; }
/* Tabella valori nutrizionali */
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-nutri { width: 100%; max-width: 460px; margin: 0 0 18px; border: 1px solid #efe3d3 !important; border-collapse: separate; border-radius: 10px; overflow: hidden; }
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-nutri td { padding: 7px 14px !important; border: 0 !important; border-bottom: 1px solid #f3eadf !important; background: #fff !important; font-size: 14px; }
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-nutri tr:last-child td { border-bottom: 0 !important; }
body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-nutri td:last-child { text-align: right; font-weight: 700; }
/* Origine e produzione: 3 colonne */
body.rsp-scheda .rsp-desc ul.rsp-d-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; margin: 0 0 18px; padding: 14px 0 0; }
body.rsp-scheda .rsp-desc ul.rsp-d-cols > li {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	column-gap: 14px;
	align-items: start;
	margin: 0;
	padding: 0 22px;
	border-left: 1px solid #e8dccb;
	font-size: 14px;
	line-height: 1.5;
	color: #4a433d;
}
body.rsp-scheda .rsp-desc ul.rsp-d-cols > li:first-child { padding-left: 0; border-left: 0; }
body.rsp-scheda .rsp-desc ul.rsp-d-cols > li strong { display: block; margin-bottom: 4px; font-size: 15px; color: #2a1c18; }
/* Premi e riconoscimenti */
body.rsp-scheda .rsp-desc .rsp-d-awards { display: flex; align-items: center; gap: 28px; margin: 0 0 18px; padding: 6px 0 0 34px; }
body.rsp-scheda .rsp-desc .rsp-d-awards ul { display: flex; gap: 28px; list-style: none; margin: 0; padding: 0; }
body.rsp-scheda .rsp-desc .rsp-d-awards li {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	flex: 0 0 auto;
	width: 108px;
	height: 108px;
	margin: 0;
	padding: 18px 12px 12px;
	background: center / contain no-repeat;
	color: #a8761f !important;
	font: 800 10.5px/1.2 var(--rsp-sans) !important;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 0;
}
body.rsp-scheda .rsp-desc .rsp-d-awards li.med-alloro { background-image: url("icons/med-alloro.svg"); padding: 30px 24px 14px; }
body.rsp-scheda .rsp-desc .rsp-d-awards li.med-sigillo { background-image: url("icons/med-sigillo.svg"); padding: 12px 14px 28px; }
body.rsp-scheda .rsp-desc .rsp-d-awards li.med-anello { background-image: url("icons/med-anello.svg"); padding-top: 38px; }
body.rsp-scheda .rsp-desc .rsp-d-awards p { margin: 0; max-width: 300px; font-size: 14px; line-height: 1.55; }
/* Abbinamenti: etichette tonde */
body.rsp-scheda .rsp-desc ul.rsp-d-chips { display: flex; flex-wrap: wrap; gap: 14px 26px; list-style: none; margin: 4px 0 6px; padding: 0; }
body.rsp-scheda .rsp-desc ul.rsp-d-chips > li {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 10px 34px;
	border: 1px solid #efdcc2;
	border-radius: 999px;
	background: #f8ebd9;
	font-size: 16px;
	color: #2f2a26;
}
/* Icone (classe ico-… su titoli e voci) */
body.rsp-scheda .rsp-desc [class*="ico-"]::before {
	content: "";
	flex: 0 0 auto;
	width: 30px;
	height: 30px;
	margin: 0 !important;
	position: static !important;
	align-self: center;
	background: center / contain no-repeat;
}
body.rsp-scheda .rsp-desc ul.rsp-d-feat > li[class*="ico-"]::before { width: 32px; height: 32px; }
body.rsp-scheda .rsp-desc ul.rsp-d-cols > li[class*="ico-"]::before { width: 28px; height: 28px; grid-column: 1; grid-row: 1 / span 2; align-self: center; }
body.rsp-scheda .rsp-desc ul.rsp-d-cols > li > strong { grid-column: 2; grid-row: 1; margin-bottom: 2px; }
body.rsp-scheda .rsp-desc ul.rsp-d-chips > li[class*="ico-"]::before { width: 24px; height: 24px; }
/* Icone a lato dei titoli di sezione (h2/h3): un filo più grandi del default 30px */
body.rsp-scheda .rsp-desc h2[class*="ico-"]::before,
body.rsp-scheda .rsp-desc h3[class*="ico-"]::before { width: 44px; height: 44px; }
/* Classe descrizione = NOME dell'icona (1:1, resta nell'HTML).
   Le classi corte vecchie restano come alias per non rompere le descrizioni già fatte. */
body.rsp-scheda .rsp-desc .rnc-ico-a-base-di-miele::before,
body.rsp-scheda .rsp-desc .ico-miele::before          { background-image: url("icons/rnc-ico-a-base-di-miele.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-stagione-fredda::before,
body.rsp-scheda .rsp-desc .ico-fiocco::before         { background-image: url("icons/rnc-ico-stagione-fredda.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-bevande-calde::before,
body.rsp-scheda .rsp-desc .ico-tazza::before          { background-image: url("icons/rnc-ico-bevande-calde.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-gusto-aromatico::before,
body.rsp-scheda .rsp-desc .ico-gusto::before          { background-image: url("icons/rnc-ico-gusto-aromatico.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-sostenibilita::before,
body.rsp-scheda .rsp-desc .ico-foglia::before         { background-image: url("icons/rnc-ico-sostenibilita.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-origine-produzione::before,
body.rsp-scheda .rsp-desc .ico-origine::before        { background-image: url("icons/rnc-ico-origine-produzione.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-consiglio-ronchello::before,
body.rsp-scheda .rsp-desc .ico-consiglio::before      { background-image: url("icons/rnc-ico-consiglio-ronchello.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-pausa-benessere::before,
body.rsp-scheda .rsp-desc .ico-pausa::before          { background-image: url("icons/rnc-ico-pausa-benessere.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-artigianale::before,
body.rsp-scheda .rsp-desc .ico-artigianale::before    { background-image: url("icons/rnc-ico-artigianale.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-ingrediente-alveare::before,
body.rsp-scheda .rsp-desc .ico-barattolo::before,
body.rsp-scheda .rsp-desc .ico-alveare::before        { background-image: url("icons/rnc-ico-ingrediente-alveare.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-potere-balsamico::before,
body.rsp-scheda .rsp-desc .ico-balsamico::before      { background-image: url("icons/rnc-ico-potere-balsamico.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-100-italiano::before,
body.rsp-scheda .rsp-desc .ico-italia::before         { background-image: url("icons/rnc-ico-100-italiano.svg"); }
/* Icona "Italia" (profilo dello stivale) per il titolo ORIGINE E PRODUZIONE — la classe usata dal referente è rnc-ico-ITALIA */
body.rsp-scheda .rsp-desc .rnc-ico-ITALIA::before,
body.rsp-scheda .rsp-desc .rnc-ico-italia::before     { background-image: url("icons/rnc-ico-italia.svg"); }
/* Logo UE biologico usato come icona in descrizione (colonna "Biologico"): il codice organismo è scritto nel testo accanto */
body.rsp-scheda .rsp-desc .rnc-logo-biologico-ue::before { background-image: url("icons/rnc-logo-biologico-ue.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-ricetta-ronchello::before { background-image: url("icons/rnc-ico-ricetta-ronchello.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-miele-bergamasco::before { background-image: url("icons/rnc-ico-miele-bergamasco.svg"); }
/* Icone catalogo Ronchello usabili in descrizione (aggiunte 15/10: prima non avevano regola, quindi non si vedevano) */
body.rsp-scheda .rsp-desc .rnc-ico-marchio-registrato::before { background-image: url("icons/rnc-ico-marchio-registrato.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-apprezzato-clienti::before { background-image: url("icons/rnc-ico-apprezzato-clienti.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-api-accudite::before { background-image: url("icons/rnc-ico-api-accudite.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-best-seller::before { background-image: url("icons/rnc-ico-best-seller.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-certificato-adozione::before { background-image: url("icons/rnc-ico-certificato-adozione.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-clienti-felici::before { background-image: url("icons/rnc-ico-clienti-felici.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-idea-regalo::before { background-image: url("icons/rnc-ico-idea-regalo.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-imballo-protetto::before { background-image: url("icons/rnc-ico-imballo-protetto.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-nuovo-raccolto::before { background-image: url("icons/rnc-ico-nuovo-raccolto.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-pagamenti-sicuri::before { background-image: url("icons/rnc-ico-pagamenti-sicuri.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-spedizione-gratuita::before { background-image: url("icons/rnc-ico-spedizione-gratuita.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-visita-azienda::before { background-image: url("icons/rnc-ico-visita-azienda.svg"); }
/* Icone abbinamenti/usi del miele (aggiunte 07/10) */
body.rsp-scheda .rsp-desc .rnc-ico-abbinamenti-miele::before { background-image: url("icons/rnc-ico-abbinamenti-miele.svg"); }
/* Titolo ORIGINE E PRODUZIONE = icona Italia; titolo ABBINAMENTI E MOMENTI D'USO = icona abbinamenti-miele (più grande) */
body.rsp-scheda .rsp-desc h3.rnc-ico-origine-produzione::before { background-image: url("icons/rnc-ico-italia.svg"); }
body.rsp-scheda .rsp-desc h3.rnc-ico-bevande-calde::before { background-image: url("icons/rnc-ico-abbinamenti-miele.svg"); width: 52px; height: 52px; }
body.rsp-scheda .rsp-desc h3.rnc-ico-abbinamenti-miele::before { width: 52px; height: 52px; }
body.rsp-scheda .rsp-desc .rnc-ico-cibo-miele::before { background-image: url("icons/rnc-ico-cibo-miele.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-pane-miele::before { background-image: url("icons/rnc-ico-pane-miele.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-dolci-miele::before { background-image: url("icons/rnc-ico-dolci-miele.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-piatti-salati-miele::before { background-image: url("icons/rnc-ico-piatti-salati-miele.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-carne-miele::before { background-image: url("icons/rnc-ico-carne-miele.svg"); }
body.rsp-scheda .rsp-desc .rnc-ico-celiachia-miele::before { background-image: url("icons/rnc-ico-celiachia-miele.svg"); }
body.rsp-scheda .rsp-desc .ico-coppa::before          { background-image: url("icons/desc-coppa.svg"); }

/* ---------- Sezione 3: Trust Ronchello ---------- */
body.rsp-scheda .rsp-trust-sec *,
body.rsp-scheda .rsp-faq *,
body.rsp-scheda div.product ul.products li.product { box-sizing: border-box; }
body.rsp-scheda .rsp-trust-sec {
	margin: 56px 0 0;
	padding: 48px 40px 36px;
	border-radius: 18px;
	background: #fbf7f2;
	font-family: var(--rsp-sans);
	color: var(--rsp-text);
}
body.rsp-scheda .rsp-ts-head { max-width: 760px; margin: 0 auto 30px; text-align: center; }
body.rsp-scheda .rsp-ts-kicker { margin: 0 0 8px !important; color: #e0962a !important; font: 700 13px/1.2 var(--rsp-sans) !important; letter-spacing: .14em; text-transform: uppercase; }
body.rsp-scheda .rsp-trust-sec .rsp-ts-title,
body.rsp-scheda .rsp-faq .rsp-ts-title {
	margin: 0 0 12px !important;
	font-family: var(--rsp-serif) !important;
	font-style: normal !important;
	font-weight: 700 !important;
	font-size: 36px !important;
	line-height: 1.15 !important;
	letter-spacing: -.005em;
	color: #2a1c18 !important;
	text-transform: none !important;
	text-align: center;
}
body.rsp-scheda .rsp-ts-intro { margin: 0 !important; font-size: 15px; line-height: 1.6; color: #4a433d; }
/* numeri */
body.rsp-scheda .rsp-ts-numbers { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); list-style: none; margin: 0 0 30px; padding: 0; }
body.rsp-scheda .rsp-ts-numbers li {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0;
	padding: 0 16px;
	border-left: 1px solid #eadfcf;
	text-align: center;
}
body.rsp-scheda .rsp-ts-numbers li:first-child { border-left: 0; }
body.rsp-scheda .rsp-ts-numbers li::before { display: none; }
body.rsp-scheda .rsp-ts-ico { display: flex; align-items: center; justify-content: center; width: 76px; height: 76px; margin: 0 0 14px; border-radius: 50%; background: #f5efe6; }
body.rsp-scheda .rsp-ts-ico .rsp-ico-img { width: 48px; height: 48px; mix-blend-mode: multiply; }
body.rsp-scheda .rsp-ts-num { display: block; margin: 0 0 4px; font: 700 29px/1.1 var(--rsp-serif); color: #e0962a; }
body.rsp-scheda .rsp-ts-label { display: block; margin: 0 0 10px; font: 700 14.5px/1.35 var(--rsp-sans); letter-spacing: .04em; text-transform: uppercase; color: #2a1c18; max-width: 150px; }
body.rsp-scheda .rsp-ts-text { display: block; font-size: 12.5px; line-height: 1.5; color: #5a524b; max-width: 190px; }
/* card */
body.rsp-scheda .rsp-ts-card { margin: 0 0 16px; padding: 22px 28px; border: 1px solid #efe4d6; border-radius: 16px; background: #fffdfa; }
/* premi */
body.rsp-scheda .rsp-ts-awards { display: flex; align-items: center; gap: 28px; }
body.rsp-scheda .rsp-ts-awards { justify-content: center; }
body.rsp-scheda .rsp-ts-awards-intro { display: flex; align-items: center; gap: 26px; flex: 0 1 620px; }
body.rsp-scheda .rsp-ts-cup { width: 118px; height: auto; flex: 0 0 auto; }
body.rsp-scheda a.rsp-ts-awards { text-decoration: none !important; color: inherit !important; transition: box-shadow .2s, border-color .2s; }
body.rsp-scheda a.rsp-ts-awards:hover { border-color: #ecc98d; box-shadow: 0 8px 22px rgba(60, 40, 20, .08); }
body.rsp-scheda .rsp-ts-awards .rsp-ts-kicker { display: block; }
body.rsp-scheda .rsp-ts-awards-h { display: block; margin: 0 0 8px; font: 700 23px/1.2 var(--rsp-serif); color: #2a1c18; }
body.rsp-scheda .rsp-ts-awards-p { display: block; font-size: 13px; line-height: 1.55; color: #4a433d; }
body.rsp-scheda .rsp-ts-awards-more { display: inline-flex; align-items: center; gap: 4px; margin-top: 10px; font: 700 13.5px/1 var(--rsp-sans); color: #c9821c; }
body.rsp-scheda .rsp-ts-awards-more .rsp-ico { width: 16px; height: 16px; stroke-width: 2.2; }
body.rsp-scheda a.rsp-ts-awards:hover .rsp-ts-awards-more { text-decoration: underline; }
body.rsp-scheda .rsp-ts-awards h3 { margin: 0 0 8px !important; font: 700 23px/1.2 var(--rsp-serif) !important; color: #2a1c18 !important; text-transform: none !important; }
body.rsp-scheda .rsp-ts-awards-intro p:not(.rsp-ts-kicker) { margin: 0; font-size: 13px; line-height: 1.55; color: #4a433d; }
body.rsp-scheda .rsp-ts-medals { display: flex; flex: 1; justify-content: space-between; gap: 10px; list-style: none; margin: 0; padding: 0; }
body.rsp-scheda .rsp-ts-medal {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 112px;
	height: 124px;
	margin: 0;
	padding: 0 16px;
	background: center / contain no-repeat;
	text-align: center;
	font: 700 11.5px/1.2 var(--rsp-sans) !important;
	text-transform: uppercase;
	color: #3a2a1a !important;
}
body.rsp-scheda .rsp-ts-medal span { display: block; line-height: 1.2 !important; }
body.rsp-scheda .rsp-ts-medal::before { display: none; }
body.rsp-scheda .rsp-ts-medal img { width: 22px; height: 22px; margin: 0; }
/* hanno parlato di noi + recensioni */
body.rsp-scheda .rsp-ts-press-title { text-align: center; margin: 0 0 14px !important; font: 700 13px/1.2 var(--rsp-sans) !important; letter-spacing: .1em; text-transform: uppercase; color: #2f4a2c !important; }
body.rsp-scheda .rsp-ts-press { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px 24px; list-style: none; margin: 0 0 14px; padding: 0 0 4px; max-width: 1000px; }
body.rsp-scheda .rsp-ts-press li { margin: 0; padding: 0; color: #111; line-height: 1; }
body.rsp-scheda .rsp-ts-press li::before { display: none; }
body.rsp-scheda .rsp-ts-press { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)); justify-content: center; gap: 16px; max-width: none !important; }
body.rsp-scheda .rsp-ts-press li.rsp-press-img { flex: none; width: auto; height: auto; aspect-ratio: 355 / 257; border: 1px solid #efe4d6; border-radius: 10px; background: #fff; overflow: hidden; display: flex; align-items: center; justify-content: center; }
body.rsp-scheda .rsp-ts-press li.rsp-press-img { max-width: none !important; transform: none !important; font: inherit !important; padding: 0 !important; }
body.rsp-scheda .rsp-ts-press li.rsp-press-img img { width: 100%; height: 100%; object-fit: cover; margin: 0; border-radius: 0; }
body.rsp-scheda .rsp-press-corriere { font: italic 900 17px/1 Georgia, "Times New Roman", serif; text-transform: uppercase; letter-spacing: -.01em; max-width: 120px; text-align: center; }
body.rsp-scheda .rsp-press-repubblica { font: 700 21px/1 "Times New Roman", Georgia, serif; letter-spacing: -.02em; transform: scaleX(.9); }
body.rsp-scheda .rsp-press-gambero { font: 400 19px/1 "Times New Roman", Georgia, serif; text-transform: uppercase; letter-spacing: .02em; max-width: 120px; text-align: center; word-break: normal; }
body.rsp-scheda .rsp-press-greenstyle { font: 500 22px/1 Georgia, serif; letter-spacing: -.02em; }
body.rsp-scheda .rsp-press-vanity { font: 400 24px/1 "Didot", "Bodoni 72", "Times New Roman", serif; text-transform: uppercase; letter-spacing: -.03em; transform: scaleX(.8); }
body.rsp-scheda .rsp-ts-reviews { display: flex; align-items: flex-start; gap: 14px; }
body.rsp-scheda .rsp-ts-track { align-items: flex-start; }
body.rsp-scheda .rsp-ts-review { min-height: 236px; }
body.rsp-scheda .rsp-ts-gcard { min-height: 236px; }
body.rsp-scheda .rsp-ts-arrow { align-self: flex-start; margin-top: 97px !important; }
body.rsp-scheda .rsp-ts-arrow {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 1px solid #eadfcf !important;
	border-radius: 50% !important;
	background: #fff !important;
	color: #2a1c18 !important;
	box-shadow: none !important;
	cursor: pointer;
}
body.rsp-scheda .rsp-ts-arrow:hover { background: var(--rsp-orange-soft) !important; }
body.rsp-scheda .rsp-ts-arrow .rsp-ico { width: 20px; height: 20px; stroke-width: 2; }
body.rsp-scheda .rsp-ts-prev .rsp-ico { transform: rotate(180deg); }
body.rsp-scheda .rsp-ts-arrow[disabled] { opacity: .35; cursor: default; }
body.rsp-scheda .rsp-ts-gcard {
	flex: 0 0 250px;
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 18px;
	border: 1px solid #efe4d6;
	border-radius: 12px;
	background: #fff;
}
body.rsp-scheda .rsp-ts-gcard > img { width: 42px; height: 42px; }
body.rsp-scheda .rsp-ts-gscore { display: flex; align-items: center; gap: 8px; margin: 0 !important; }
body.rsp-scheda .rsp-ts-gscore strong { font: 700 26px/1 var(--rsp-sans); color: #2a1c18; }
body.rsp-scheda .rsp-ts-gsub { margin: 4px 0 0 !important; font-size: 13px; color: #4a433d; }
body.rsp-scheda .rsp-gstars { color: #f2a22b; font-size: 16px; letter-spacing: 2px; white-space: nowrap; }
body.rsp-scheda .rsp-gstars-off { color: #e6dccf; }
body.rsp-scheda .rsp-ts-track {
	flex: 1;
	min-width: 0;
	display: flex;
	gap: 14px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	outline: none;
}
body.rsp-scheda .rsp-ts-track::-webkit-scrollbar { display: none; }
body.rsp-scheda .rsp-ts-review {
	flex: 0 0 calc((100% - 28px) / 3);
	scroll-snap-align: start;
	margin: 0;
	padding: 12px 18px 14px;
	border: 1px solid #efe4d6;
	border-radius: 12px;
	background: #fff;
}
body.rsp-scheda .rsp-ts-rhead { display: flex; align-items: center; gap: 12px; margin-bottom: 6px; }
body.rsp-scheda .rsp-ts-avatar { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 50%; object-fit: cover; margin: 0; }
body.rsp-scheda .rsp-ts-avatar-empty { display: flex; align-items: center; justify-content: center; background: #f3e3c8; color: #8a5a14; font: 800 18px/1 var(--rsp-sans); }
body.rsp-scheda .rsp-ts-rname { display: flex; align-items: center; gap: 6px; margin: 0 0 2px !important; font: 700 14px/1.3 var(--rsp-sans); color: #2a1c18; }
body.rsp-scheda .rsp-ts-rname img { width: 15px; height: 15px; margin: 0; }
body.rsp-scheda .rsp-ts-review { display: flex; flex-direction: column; }
body.rsp-scheda .rsp-ts-review.is-open .rsp-ts-rtext { -webkit-line-clamp: unset; display: block; overflow: visible; }
body.rsp-scheda .rsp-ts-more { align-self: flex-start; margin: 6px 0 0 !important; padding: 0 !important; min-height: 0; border: 0 !important; background: none !important; box-shadow: none !important; color: #c9821c !important; font: 700 13px/1.3 var(--rsp-sans) !important; text-transform: none !important; letter-spacing: 0 !important; cursor: pointer; }
body.rsp-scheda .rsp-ts-more:hover { text-decoration: underline; }
body.rsp-scheda .rsp-ts-more[hidden] { display: none !important; }
body.rsp-scheda .rsp-ts-rtext { margin: 0 !important; font-size: 16px; line-height: 1.55; color: #3a3430; display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
/* rassicurazioni */
body.rsp-scheda ul.rsp-ts-reassure { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; margin-bottom: 0; }
body.rsp-scheda ul.rsp-ts-reassure li { display: flex; align-items: center; gap: 12px; margin: 0; padding: 0 16px; border-left: 1px solid #eadfcf; font-size: 12.5px; line-height: 1.4; color: #4a433d; }
body.rsp-scheda ul.rsp-ts-reassure li:first-child { border-left: 0; padding-left: 0; }
body.rsp-scheda ul.rsp-ts-reassure li::before { display: none; }
body.rsp-scheda ul.rsp-ts-reassure .rsp-ico-img { width: 36px; height: 36px; }
body.rsp-scheda ul.rsp-ts-reassure strong { display: block; font-size: 13.5px; color: #2a1c18; }

/* ---------- Sezione 4: FAQ ---------- */
body.rsp-scheda .rsp-faq { max-width: 900px; margin: 56px auto 0; font-family: var(--rsp-sans); }
body.rsp-scheda .rsp-faq .rsp-ts-title { margin-bottom: 22px !important; }
body.rsp-scheda .rsp-faq-item { margin: 0 0 10px; border: 1px solid #efe4d6; border-radius: 12px; background: #fff; overflow: hidden; }
body.rsp-scheda .rsp-faq-item summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 22px;
	cursor: pointer;
	list-style: none;
	font: 700 16px/1.35 var(--rsp-sans);
	color: #2a1c18;
}
body.rsp-scheda .rsp-faq-item summary::-webkit-details-marker { display: none; }
body.rsp-scheda .rsp-faq-item summary:hover { background: #fffaf2; }
body.rsp-scheda .rsp-faq-sign { position: relative; flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; background: var(--rsp-orange-soft); }
body.rsp-scheda .rsp-faq-sign::before,
body.rsp-scheda .rsp-faq-sign::after { content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; margin: -1px 0 0 -6px; border-radius: 2px; background: #c9821c; transition: transform .2s; }
body.rsp-scheda .rsp-faq-sign::after { transform: rotate(90deg); }
body.rsp-scheda .rsp-faq-item[open] .rsp-faq-sign::after { transform: rotate(0deg); }
body.rsp-scheda .rsp-faq-answer { padding: 0 22px 18px; font-size: 14.5px; line-height: 1.65; color: #3a3430; }
body.rsp-scheda .rsp-faq-answer p { font-size: 14.5px !important; }
body.rsp-scheda .rsp-faq-answer table { width: 100% !important; max-width: 560px; }
body.rsp-scheda .rsp-faq-answer .wpb_content_element { margin-bottom: 0 !important; }

/* ---------- Sezione 5: prodotti correlati / ti potrebbe interessare ---------- */
body.rsp-scheda div.product section.up-sells,
body.rsp-scheda div.product section.related { margin: 56px 0 0 !important; padding: 0 !important; clear: both; }
/* il tema figlio nasconde i correlati: il mockup (sezione 5) li vuole */
body.rsp-scheda div.product section.related.products { display: block !important; }
body.rsp-scheda div.product section.up-sells > h2,
body.rsp-scheda div.product section.related > h2 {
	margin: 0 0 22px !important;
	font-family: var(--rsp-serif) !important;
	font-style: normal !important;
	font-weight: 700 !important;
	font-size: 30px !important;
	line-height: 1.2 !important;
	color: #2a1c18 !important;
	text-transform: none !important;
	text-align: center;
}
body.rsp-scheda div.product section.up-sells ul.products,
body.rsp-scheda div.product section.related ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(220px, 272px));
	justify-content: center;
	gap: 22px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

body.rsp-scheda div.product ul.products::before,
body.rsp-scheda div.product ul.products::after { display: none !important; }
body.rsp-scheda div.product ul.products li.product {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #efe4d6 !important;
	border-radius: 14px !important;
	background: #fff !important;
	overflow: hidden;
	box-shadow: none !important;
	transition: box-shadow .2s, transform .2s;
	text-align: left;
}
body.rsp-scheda div.product ul.products li.product:hover { box-shadow: 0 8px 22px rgba(60, 40, 20, .08) !important; transform: translateY(-2px); }
body.rsp-scheda div.product ul.products li.product .post_item_wrap { display: flex; flex-direction: column; height: 100%; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
body.rsp-scheda div.product ul.products li.product .post_featured { margin: 0 !important; background: #f6f2ee; aspect-ratio: 1 / 1; overflow: hidden; }
body.rsp-scheda div.product ul.products li.product .post_thumb,
body.rsp-scheda div.product ul.products li.product .post_thumb a { display: block; width: 100%; height: 100%; margin: 0; }
body.rsp-scheda div.product ul.products li.product .post_thumb img { width: 100% !important; height: 100% !important; object-fit: contain; mix-blend-mode: multiply; margin: 0 !important; border-radius: 0 !important; }
body.rsp-scheda div.product ul.products li.product .post_thumb a::before,
body.rsp-scheda div.product ul.products li.product .post_thumb a::after { display: none !important; }
body.rsp-scheda div.product ul.products li.product .post_content { display: flex; flex-direction: column; flex: 1; gap: 6px; margin: 0 !important; padding: 16px 18px 18px !important; background: #fff !important; text-align: left !important; }
body.rsp-scheda div.product ul.products li.product .woocommerce-loop-product__title { margin: 0 !important; padding: 0 !important; font: 700 16px/1.3 var(--rsp-sans) !important; text-transform: none !important; letter-spacing: 0 !important; }
body.rsp-scheda div.product ul.products li.product .woocommerce-loop-product__title a { color: #2a1c18 !important; }
body.rsp-scheda div.product ul.products li.product .star-rating { float: none; margin: 0 !important; font-size: 12px; color: var(--rsp-orange); }
body.rsp-scheda div.product ul.products li.product .star-rating::before { color: var(--rsp-orange); opacity: .28; }
body.rsp-scheda div.product ul.products li.product .star-rating span::before { color: var(--rsp-orange); }
body.rsp-scheda div.product ul.products li.product .price { display: block; margin: 0 !important; font: 800 18px/1.2 var(--rsp-sans) !important; color: #2a1c18 !important; }
body.rsp-scheda div.product ul.products li.product .price * { color: inherit !important; font: inherit !important; }
body.rsp-scheda div.product ul.products li.product .yith-par-message-loop { margin: 0 !important; padding: 0 !important; border: 0 !important; font-size: 12px !important; color: #3d6b2c !important; }
body.rsp-scheda div.product ul.products li.product a.button {
	position: static !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	width: auto !important;
	text-indent: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	margin: auto 0 0 !important;
	height: 42px;
	padding: 0 14px !important;
	border: 0 !important;
	border-radius: 8px !important;
	background: #eea73a !important;
	color: #fff !important;
	font: 700 13px/1 var(--rsp-sans) !important;
	letter-spacing: .02em;
	text-transform: uppercase;
	box-shadow: none !important;
}
body.rsp-scheda div.product ul.products li.product a.button:hover { background: var(--rsp-orange-dark) !important; }
body.rsp-scheda div.product ul.products li.product a.button::before,
body.rsp-scheda div.product ul.products li.product a.button::after { display: none !important; }
/* il tema stampa alcuni pulsanti senza testo (usava un'icona): metto la scritta solo se vuoti */
body.rsp-scheda div.product ul.products li.product a.button:empty::after {
	display: inline !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	opacity: 1 !important;
	transform: none !important;
	background: none !important;
	content: "Aggiungi al carrello";
	font: inherit;
	color: inherit;
}
body.rsp-scheda div.product ul.products li.product a.button.product_type_variable:empty::after { content: "Scegli"; }
body.rsp-scheda div.product ul.products li.product a.button:not(.add_to_cart_button):not(.product_type_variable):empty::after { content: "Scopri"; }
body.rsp-scheda div.product ul.products li.product .woocommerce-loop-product__title,
body.rsp-scheda div.product ul.products li.product .yith-par-message-loop,
body.rsp-scheda div.product ul.products li.product .yith-par-message-inner-content { text-align: left !important; }
body.rsp-scheda div.product ul.products li.product a.added_to_cart { display: block; margin-top: 6px; font-size: 13px; text-align: center; color: #c9821c; }

/* ---------- Etichetta e informazioni obbligatorie ---------- */
body.rsp-scheda .rsp-label { margin: 28px 0 0; padding: 24px 0 0; border-top: 1px solid #efe3d3; }
body.rsp-scheda div.product .woocommerce-tabs .panel h3.rsp-label-title { margin: 0 0 16px !important; font: 700 21px/1.3 var(--rsp-serif) !important; color: #2a1c18 !important; text-transform: none !important; }
body.rsp-scheda .rsp-label-grid { display: grid; grid-template-columns: minmax(0, 560px) minmax(0, 1fr); gap: 32px; align-items: start; }
body.rsp-scheda .rsp-label-img { display: block; border: 1px solid #efe3d3; border-radius: 12px; background: #fff; overflow: hidden; text-decoration: none !important; }
body.rsp-scheda .rsp-label-img img { display: block; width: 100%; height: auto; border-radius: 0 !important; margin: 0; }
body.rsp-scheda .rsp-label-img span { display: block; padding: 8px 12px; border-top: 1px solid #efe3d3; font: 600 13px/1.3 var(--rsp-sans); color: #c9821c; text-align: center; }
body.rsp-scheda .rsp-label-text p { margin: 0 0 10px; font-size: 14.5px !important; line-height: 1.6; }

/* Badge: link (Gocce d'Oro), codice bio, altri badge nella Descrizione */
body.rsp-scheda .rsp-badge a { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; height: 100%; color: inherit !important; text-decoration: none !important; }
body.rsp-scheda .rsp-badge a:hover span { text-decoration: underline; }
body.rsp-scheda .rsp-bio-code { display: block; font-size: 10px; color: #6a625b; line-height: 1.1; }
body.rsp-scheda .rsp-bio-origin { display: block; font-size: 10px; color: #6a625b; line-height: 1.1; }
body.rsp-scheda .rsp-other-badges { margin: 26px 0 0; padding: 20px 0 0; border-top: 1px solid #efe3d3; }
body.rsp-scheda .rsp-other-title { margin: 0 0 12px !important; font: 400 21px/1.3 "Sansita One", var(--rsp-serif) !important; color: #f8b742 !important; }
body.rsp-scheda .rsp-badges.rsp-badges-other { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }
body.rsp-scheda .rsp-badges.rsp-badges-other .rsp-badge { padding: 0 16px; }

/* Premio Great Taste: logo ufficiale a sé. Niente overlay, min 120px, clear space (Guild). */
body.rsp-scheda .rsp-great-taste { margin: 26px 0 0; padding: 20px 0 0; border-top: 1px solid #efe3d3; }
body.rsp-scheda .rsp-gt-title { margin: 0 0 12px !important; font: 400 21px/1.3 "Sansita One", var(--rsp-serif) !important; color: #f8b742 !important; }
body.rsp-scheda .rsp-gt-logos { display: flex; flex-wrap: wrap; gap: 24px; margin: 0; }
body.rsp-scheda .rsp-gt-logo { width: 140px; height: 140px; min-width: 120px; min-height: 120px; object-fit: contain; -webkit-user-select: none; user-select: none; -webkit-user-drag: none; }

/* ---------- Tablet ---------- */
@media (max-width: 1023px) {
	body.rsp-scheda div.product { column-gap: 28px; }
	body.rsp-scheda .summary .product_title { font-size: 36px; }
	body.rsp-scheda .rsp-trust { grid-template-columns: repeat(3, minmax(0, 1fr)); justify-content: stretch; row-gap: 14px; }
	.rsp-gift { display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 16px; row-gap: 12px; }
	body.rsp-scheda .rsp-ts-numbers { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 26px; }
	body.rsp-scheda .rsp-ts-numbers li:nth-child(4) { border-left: 0; }
	body.rsp-scheda .rsp-ts-awards { flex-direction: column; align-items: stretch; }
	body.rsp-scheda .rsp-ts-awards-intro { flex: none; }
	body.rsp-scheda .rsp-ts-medals { flex-wrap: wrap; justify-content: center; }
	body.rsp-scheda .rsp-ts-review { flex-basis: calc((100% - 14px) / 2); }
	body.rsp-scheda ul.rsp-ts-reassure { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 16px; }
	body.rsp-scheda ul.rsp-ts-reassure li:nth-child(3) { border-left: 0; padding-left: 0; }

	body.rsp-scheda .rsp-gift-btn { grid-column: 2; justify-self: start; }
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	body.rsp-scheda .page_content_wrap { padding-top: 20px; }
	body.rsp-scheda div.product .woocommerce-tabs { margin-top: 28px !important; }
	/* fiducia sotto al carrello: su telefono le 3 colonne vanno strette → icona sopra, testo centrato che va a capo (niente sovrapposizioni) */
	body.rsp-scheda .rsp-trust { gap: 4px; }
	body.rsp-scheda .rsp-trust li { flex-direction: column; align-items: center; text-align: center; white-space: normal; overflow-wrap: anywhere; gap: 5px; font-size: 10px; line-height: 1.3; }
	body.rsp-scheda .rsp-trust .rsp-ico-img { width: 30px; height: 30px; }
	body.rsp-scheda .rsp-trust .rsp-ico { width: 24px; height: 24px; flex: 0 0 24px; }
	body.rsp-scheda .rsp-trust strong { font-size: 10.5px; }
	body.rsp-scheda .rsp-trust-sec { margin-top: 36px; padding: 30px 16px 20px; border-radius: 14px; }
	body.rsp-scheda .rsp-trust-sec .rsp-ts-title,
	body.rsp-scheda .rsp-faq .rsp-ts-title { font-size: 27px !important; }
	body.rsp-scheda .rsp-ts-numbers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.rsp-scheda .rsp-ts-numbers li { padding: 0 8px; border-left: 0 !important; }
	body.rsp-scheda .rsp-ts-numbers li:last-child { grid-column: 1 / -1; }
	body.rsp-scheda .rsp-ts-card { padding: 18px 14px; }
	body.rsp-scheda .rsp-ts-awards-intro { flex-direction: column; text-align: center; }
	body.rsp-scheda .rsp-ts-medal { width: 96px; height: 106px; font-size: 10px; padding: 0 12px; }
	body.rsp-scheda .rsp-ts-press { justify-content: center; gap: 10px; }
	body.rsp-scheda .rsp-ts-press { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
	body.rsp-scheda .rsp-ts-press li.rsp-press-img { width: auto; height: auto; aspect-ratio: 355 / 257; }
	body.rsp-scheda .rsp-ts-reviews { flex-wrap: wrap; }
	body.rsp-scheda .rsp-ts-gcard { flex: 1 1 100%; order: -1; justify-content: center; }
	body.rsp-scheda .rsp-ts-track { flex: 1 1 100%; order: 1; }
	body.rsp-scheda .rsp-ts-review { flex-basis: 86%; }
	body.rsp-scheda .rsp-ts-arrow { margin-top: 0 !important; align-self: center; }
	body.rsp-scheda .rsp-ts-review, body.rsp-scheda .rsp-ts-gcard { min-height: 0; }
	body.rsp-scheda .rsp-ts-prev { order: 2; margin-left: auto; }
	body.rsp-scheda .rsp-ts-next { order: 3; margin-right: auto; }
	body.rsp-scheda ul.rsp-ts-reassure { grid-template-columns: minmax(0, 1fr); }
	body.rsp-scheda ul.rsp-ts-reassure li { padding: 0; border-left: 0; }
	body.rsp-scheda .rsp-faq { margin-top: 36px; }
	body.rsp-scheda .rsp-faq-item summary { padding: 15px 16px; font-size: 15px; }
	body.rsp-scheda .rsp-faq-answer { padding: 0 16px 16px; }
	body.rsp-scheda div.product section.up-sells ul.products,
	body.rsp-scheda div.product section.related ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px; }
	body.rsp-scheda div.product ul.products li.product .post_content { padding: 12px !important; }
	body.rsp-scheda div.product ul.products li.product .woocommerce-loop-product__title { font-size: 14px !important; }
	body.rsp-scheda div.product ul.products li.product a.button { height: 38px; font-size: 11px !important; padding: 0 8px !important; }
	body.rsp-scheda div.product .woocommerce-tabs ul.tabs li a { height: 50px; padding: 0 6px !important; font-size: 13.5px !important; }
	body.rsp-scheda div.product .woocommerce-tabs .panel { padding: 24px 18px 28px !important; }
	body.rsp-scheda .rsp-label-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	body.rsp-scheda div.product .woocommerce-tabs table.shop_attributes { display: table !important; }
	body.rsp-scheda div.product .woocommerce-tabs table.shop_attributes tbody { display: table-row-group !important; }
	body.rsp-scheda div.product .woocommerce-tabs table.shop_attributes tr { display: table-row !important; }
	body.rsp-scheda div.product .woocommerce-tabs table.shop_attributes th,
	body.rsp-scheda div.product .woocommerce-tabs table.shop_attributes td { display: table-cell !important; width: auto !important; padding: 7px 12px !important; font-size: 13.5px !important; }
	body.rsp-scheda div.product .woocommerce-tabs table.shop_attributes th { width: 52% !important; }
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc h2.rsp-d-title { font-size: 27px !important; }
	body.rsp-scheda .rsp-desc ul.rsp-d-feat > li { gap: 14px; min-height: 52px; font-size: 14px; }
	body.rsp-scheda .rsp-desc ul.rsp-d-cols { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	/* Origine e produzione: su telefono la li era flex (icona|termine|descrizione affiancati, colonne strettissime) → la rendo a blocco: icona assoluta a sinistra, termine e descrizione a tutta larghezza uno sotto l'altro */
	body.rsp-scheda .rsp-desc ul.rsp-d-cols > li,
	body.rsp-scheda .rsp-desc ul.rsp-d-cols > li:first-child { display: block; position: relative; padding: 0 0 0 48px; border-left: 0; min-height: 34px; }
	body.rsp-scheda .rsp-desc ul.rsp-d-cols > li[class*="ico-"]::before { position: absolute !important; left: 0; top: 1px; margin: 0 !important; }
	body.rsp-scheda .rsp-desc ul.rsp-d-cols > li strong { display: block; }
	body.rsp-scheda .rsp-desc .rsp-d-awards { flex-direction: column; align-items: flex-start; gap: 14px; padding-left: 0; }
	body.rsp-scheda .rsp-desc .rsp-d-awards ul { gap: 12px; }
	body.rsp-scheda .rsp-desc .rsp-d-awards ul { gap: 8px; }
	body.rsp-scheda .rsp-desc .rsp-d-awards li { width: 94px; height: 94px; font-size: 9px !important; }
	body.rsp-scheda .rsp-desc ul.rsp-d-chips { gap: 10px; }
	body.rsp-scheda .rsp-desc ul.rsp-d-chips > li { padding: 8px 16px; font-size: 13px; }
	/* tabella profilo/oli: su telefono la colonna descrizione era strettissima (≈188px, testo a 2-3 parole per riga) → impilo termine sopra e descrizione a tutta larghezza */
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile,
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile tbody,
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile tr { display: block; width: 100%; }
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile tr { margin-bottom: 14px; }
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile tr:last-child { margin-bottom: 0; }
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile th,
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile td { display: block; width: 100% !important; min-width: 0; padding: 0 !important; white-space: normal; }
	body.rsp-scheda div.product .woocommerce-tabs .panel .rsp-desc table.rsp-d-profile th { margin-bottom: 3px; }
	/* widget flottante del tema (Home / To Top) che copriva il testo sulla scheda: nascosto su telefono */
	body.rsp-scheda .toc_float { display: none !important; }
	body.rsp-scheda div.product { display: block; }
	body.rsp-scheda .rsp-gallery { margin-bottom: 24px !important; }
	body.rsp-scheda .rsp-gallery > .rsp-main { position: relative; top: auto; }
	body.rsp-scheda .rsp-gallery > .rsp-thumbs-wrap { position: static; }
	body.rsp-scheda .rsp-gallery.rsp-has-thumbs { grid-template-columns: minmax(0, 1fr); }
	body.rsp-scheda .rsp-thumbs-wrap { order: 2; }
	body.rsp-scheda .rsp-thumbs { flex-direction: row; max-height: none; max-width: 100%; overflow-x: auto; overflow-y: hidden; }
	body.rsp-scheda .rsp-thumb { width: 64px; height: 64px; }
	body.rsp-scheda .rsp-thumbs-more { display: none; }
	body.rsp-scheda .rsp-main { aspect-ratio: 1 / 1; }
	body.rsp-scheda .summary .product_title { font-size: 32px; }
	body.rsp-scheda .summary .price { font-size: 30px !important; }
	/* Badge impilati come da mockup "posizionamento mobile" */
	body.rsp-scheda .rsp-badges { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	body.rsp-scheda .rsp-badges { gap: 6px; }
	body.rsp-scheda .rsp-badge { min-height: 40px; padding: 4px 10px; justify-content: center; }
	body.rsp-scheda .rsp-badge .rsp-ico-img { width: 34px; height: 34px; }
	.rsp-reviews { padding: 14px 16px; }
	.rsp-review { gap: 12px; }
	body.rsp-scheda .rsp-review-avatar { width: 40px !important; height: 40px !important; flex-basis: 40px; }
	body.rsp-scheda .summary form.cart { gap: 10px; }
	body.rsp-scheda .summary form.cart .quantity.rsp-qty { width: 112px; padding: 0 2px; }
	body.rsp-scheda .summary .single_add_to_cart_button { flex-basis: 150px; gap: 8px; font-size: 13.5px !important; letter-spacing: .01em; padding: 0 10px !important; white-space: nowrap; }
	body.rsp-scheda .summary .single_add_to_cart_button::before { width: 20px; height: 20px; flex-basis: 20px; }
	.rsp-gift { padding: 14px 16px; grid-template-columns: 34px minmax(0, 1fr); column-gap: 12px; }
	body.rsp-scheda .rsp-gift > .rsp-gift-ico { width: 34px; height: 34px; }
	body.rsp-scheda .rsp-points {
		display: grid;
		grid-template-columns: 26px minmax(0, 1fr) 20px;
		column-gap: 12px;
		row-gap: 2px;
		padding: 14px 16px;
		font-size: 13.5px;
	}
	.rsp-points > .rsp-points-ico { grid-row: 1 / 3; }
	.rsp-points-label { grid-column: 2; }
	.rsp-points-value { grid-column: 2; grid-row: 2; }
	.rsp-points > .rsp-ico:last-child { grid-column: 3; grid-row: 1 / 3; }

}
