/* On Sale Shop 1.12 — rifinitura visiva e normalizzazione */
:root{--oss-container:1440px;--oss-accent:#ff7600;--oss-accent-dark:#df6000;--oss-border:#e8e8e8;--oss-surface:#f7f7f7;--oss-shadow:0 12px 34px rgba(17,24,39,.08)}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;color:#171717;background:#fff}
.site-container{width:min(calc(100% - 48px),var(--oss-container))}
.oss-header-top__inner{min-height:42px}.oss-header-logo{min-width:210px}.oss-brand-logo img{width:180px;height:auto;max-height:48px;object-fit:contain}
.oss-header-main__inner{min-height:70px;grid-template-columns:220px minmax(280px,1fr) auto;gap:30px}.oss-category-button{width:220px;height:44px}.oss-header-main .header-search{height:44px}.oss-header-actions{gap:20px}
.oss-showcase-hero{height:clamp(320px,34vw,500px);min-height:0;background-size:cover;background-position:center}
.oss-trust-grid{padding:20px 0}.oss-trust-item{min-width:0;padding:0 18px}.oss-market-section{padding:30px 0}.oss-category-row{gap:14px}.oss-category-tile{min-height:132px;background:#fff}.oss-category-tile__image{height:82px}
.woocommerce ul.products li.product{overflow:hidden;background:#fff}.woocommerce ul.products li.product img{aspect-ratio:1/1;object-fit:contain;background:#fff}.woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:2.6em}
.oss-info-hero{background:linear-gradient(135deg,#fff7f0,#fff)}.oss-info-content,.entry-content{font-size:1rem}.oss-info-content h2,.entry-content h2{margin-top:2rem}
.site-footer{margin-top:50px}.site-footer__main{padding:50px 0 38px}.site-footer__grid{gap:38px}
@media(max-width:1024px){.site-container{width:min(calc(100% - 32px),var(--oss-container))}.oss-header-main__inner{grid-template-columns:auto 1fr auto}.oss-desktop-categories{display:none}.oss-market-header .menu-toggle{display:inline-grid}.oss-trust-grid{grid-template-columns:repeat(2,1fr)}.oss-trust-item{border-bottom:1px solid var(--oss-border)}.oss-category-row{grid-template-columns:repeat(4,1fr)}}
@media(max-width:767px){.site-container{width:min(calc(100% - 24px),var(--oss-container))}.oss-header-top__left{display:none}.oss-header-top__inner{grid-template-columns:1fr auto}.oss-header-logo{justify-content:flex-start;min-width:0}.oss-brand-logo img{width:150px}.oss-header-main__inner{min-height:62px;gap:12px}.oss-header-main .header-search{display:none}.oss-header-actions{gap:12px}.oss-cart-total{display:none}.oss-showcase-hero{height:58vw;min-height:220px}.oss-trust-grid{grid-template-columns:1fr}.oss-trust-item{justify-content:flex-start;border-right:0}.oss-category-row{grid-template-columns:repeat(2,1fr)}.site-footer__grid{grid-template-columns:1fr}.site-footer__bottom-inner{align-items:flex-start;flex-direction:column;padding:18px 0}}

/* 1.13 — Hero panoramica e footer sempre popolato */
.oss-showcase-hero{
  height:clamp(300px,29.22vw,561px);
  min-height:0;
  background-size:cover;
  background-position:center center;
  background-color:#f7f3ef;
}
.home .site-footer{margin-top:0}
.site-footer__column .menu,.site-footer__fallback-links{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.site-footer__column .menu li,.site-footer__fallback-links li{margin:0;padding:0}
.site-footer__column .menu a,.site-footer__fallback-links a{display:inline-flex;line-height:1.5}
@media(max-width:820px){.oss-showcase-hero{height:clamp(235px,45vw,370px);background-size:cover;background-position:center}}
@media(max-width:560px){.oss-showcase-hero{height:clamp(205px,58vw,300px);background-position:center}}


/* 1.14 — Hero mostrata integralmente, senza crop, zoom o deformazioni */
.oss-showcase-hero{
  width:100%;
  height:auto!important;
  min-height:0!important;
  background:none!important;
  overflow:hidden;
  line-height:0;
}
.oss-showcase-hero__link{display:block;width:100%;line-height:0}
.oss-showcase-hero__image{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  object-fit:contain;
  object-position:center;
}
@media(max-width:820px){.oss-showcase-hero{height:auto!important;min-height:0!important}.oss-showcase-hero__image{width:100%;height:auto}}
@media(max-width:560px){.oss-showcase-hero{height:auto!important;min-height:0!important}.oss-showcase-hero__image{width:100%;height:auto}}

/* 1.16 — correzione completa contrasti e testi invisibili */
.oss-info-page{
  background:#fff;
  color:#171717;
}
.oss-info-hero{
  background:linear-gradient(135deg,#fff7f0 0%,#ffffff 72%);
  color:#171717;
  border-bottom:1px solid var(--oss-border);
}
.oss-info-hero h1,
.oss-info-hero h2,
.oss-info-hero h3,
.oss-info-hero p,
.oss-info-hero .oss-eyebrow,
.oss-info-hero__content{
  color:#171717;
}
.oss-info-hero p{color:#555f6d}
.oss-info-hero .oss-eyebrow{
  background:#fff0e3;
  color:#c85100;
}
.oss-info-hero__mark{
  background:#fff0e3;
  color:var(--oss-accent);
  border:1px solid #ffd8b8;
}
.oss-info-content,
.oss-info-content p,
.oss-info-content li,
.oss-info-content dt,
.oss-info-content dd,
.oss-info-content blockquote,
.oss-info-content table,
.oss-info-content label,
.oss-info-content legend,
.oss-info-content address,
.oss-info-content summary,
.oss-info-sidebar,
.oss-info-sidebar p{
  color:#263142;
}
.oss-info-content h1,
.oss-info-content h2,
.oss-info-content h3,
.oss-info-content h4,
.oss-info-content h5,
.oss-info-content h6,
.oss-info-sidebar h2,
.oss-info-sidebar h3,
.oss-info-links a{
  color:#172033;
}
.oss-info-content a:not(.button){color:#b94f00;text-decoration-color:#ffb477}
.oss-info-content a:not(.button):hover{color:#8f3c00}
.oss-info-content strong,.oss-info-content b{color:#172033}
.oss-info-content hr{border:0;border-top:1px solid var(--oss-border)}
.oss-info-content table{width:100%;border-collapse:collapse;background:#fff}
.oss-info-content th,.oss-info-content td{padding:.85rem;border:1px solid var(--oss-border);text-align:left;color:#263142}
.oss-info-content th{background:#f8f8f8;color:#172033}
.oss-info-content input,
.oss-info-content textarea,
.oss-info-content select{
  color:#172033;
  background:#fff;
  border-color:#d7dce3;
}
.oss-info-content input::placeholder,
.oss-info-content textarea::placeholder{color:#7a8492;opacity:1}
.oss-info-content .button,
.oss-info-content button,
.oss-info-content input[type=submit],
.oss-info-sidebar .button{
  color:#fff;
}
.oss-info-sidebar__box,
.oss-info-links,
.oss-info-content details,
.oss-contact-card,
.oss-contact-form{
  color:#172033;
}
.oss-info-content details[open] summary,
.oss-info-content details summary:hover{background:#fff8f2;color:#172033}

/* Normalizzazione del contenuto WordPress su pagine a fondo chiaro. */
.page:not(.woocommerce-page) .entry-content,
.single-post .entry-content,
.search-results .entry-card__body{
  color:#263142;
}
.page:not(.woocommerce-page) .entry-content h1,
.page:not(.woocommerce-page) .entry-content h2,
.page:not(.woocommerce-page) .entry-content h3,
.page:not(.woocommerce-page) .entry-content h4,
.single-post .entry-content h1,
.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4{
  color:#172033;
}
.page:not(.woocommerce-page) .entry-content p,
.page:not(.woocommerce-page) .entry-content li,
.single-post .entry-content p,
.single-post .entry-content li{color:#263142}

@media(max-width:900px){
  .oss-info-hero{padding:2.7rem 0}
  .oss-info-layout{gap:2rem}
}

/* ================================================================
 * 1.17 — Griglia prodotti robusta (homepage + archivi WooCommerce)
 * Funziona anche quando il loop non è racchiuso da .woocommerce.
 * ================================================================ */
.oss-home-products ul.products,
body.woocommerce ul.products,
body.woocommerce-page ul.products,
.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 22px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	clear: both;
}

.oss-home-products ul.products::before,
.oss-home-products ul.products::after,
body.woocommerce ul.products::before,
body.woocommerce ul.products::after,
body.woocommerce-page ul.products::before,
body.woocommerce-page ul.products::after {
	display: none !important;
	content: none !important;
}

.oss-home-products ul.products li.product,
body.woocommerce ul.products li.product,
body.woocommerce-page ul.products li.product,
.woocommerce ul.products li.product {
	position: relative !important;
	float: none !important;
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
	width: auto !important;
	max-width: none !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 0 16px !important;
	overflow: hidden !important;
	border: 1px solid #e6e8ec !important;
	border-radius: 14px !important;
	background: #fff !important;
	box-shadow: none !important;
	list-style: none !important;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.oss-home-products ul.products li.product:hover,
body.woocommerce ul.products li.product:hover,
body.woocommerce-page ul.products li.product:hover {
	transform: translateY(-3px);
	border-color: #d8dce3 !important;
	box-shadow: 0 12px 28px rgba(15, 23, 42, .08) !important;
}

.oss-home-products ul.products li.product > a.woocommerce-LoopProduct-link,
body.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
body.woocommerce-page ul.products li.product > a.woocommerce-LoopProduct-link {
	display: block !important;
	min-width: 0 !important;
	text-decoration: none !important;
}

.oss-home-products ul.products li.product a img,
body.woocommerce ul.products li.product a img,
body.woocommerce-page ul.products li.product a img,
.woocommerce ul.products li.product a img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-width: 100% !important;
	aspect-ratio: 1 / 1 !important;
	margin: 0 0 14px !important;
	padding: 10px !important;
	object-fit: contain !important;
	background: #fff !important;
}

.oss-home-products ul.products li.product .woocommerce-loop-product__title,
body.woocommerce ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box !important;
	overflow: hidden !important;
	min-height: 2.8em !important;
	margin: 0 !important;
	padding: 0 15px !important;
	font-size: .92rem !important;
	font-weight: 750 !important;
	line-height: 1.4 !important;
	letter-spacing: 0 !important;
	text-decoration: none !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.oss-home-products ul.products li.product .price,
body.woocommerce ul.products li.product .price,
body.woocommerce-page ul.products li.product .price {
	display: flex !important;
	align-items: baseline !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	margin: 10px 0 0 !important;
	padding: 0 15px !important;
	color: var(--oss-accent) !important;
	font-size: 1rem !important;
	font-weight: 850 !important;
}

.oss-home-products ul.products li.product .button,
body.woocommerce ul.products li.product .button,
body.woocommerce-page ul.products li.product .button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 0 !important;
	min-height: 42px !important;
	height: auto !important;
	margin: 14px 15px 0 !important;
	padding: 10px 14px !important;
	border-radius: 9px !important;
	font-size: .82rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	white-space: normal !important;
}

.oss-home-products ul.products li.product .button::after {
	content: none !important;
}

.oss-home-products ul.products li.product .product-card__categories,
body.woocommerce ul.products li.product .product-card__categories,
body.woocommerce-page ul.products li.product .product-card__categories {
	order: initial !important;
	margin: 8px 0 0 !important;
	padding: 0 15px !important;
	font-size: .67rem !important;
	line-height: 1.35 !important;
}

.oss-home-products ul.products li.product .tinv-wraper,
body.woocommerce ul.products li.product .tinv-wraper,
body.woocommerce-page ul.products li.product .tinv-wraper {
	margin: 10px 15px 0 !important;
	font-size: .78rem !important;
}

@media (max-width: 1180px) {
	.oss-home-products ul.products,
	body.woocommerce ul.products,
	body.woocommerce-page ul.products,
	.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 820px) {
	.oss-home-products ul.products,
	body.woocommerce ul.products,
	body.woocommerce-page ul.products,
	.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
	}
}

@media (max-width: 420px) {
	.oss-home-products ul.products li.product .woocommerce-loop-product__title,
	body.woocommerce ul.products li.product .woocommerce-loop-product__title,
	body.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
		padding-inline: 11px !important;
		font-size: .82rem !important;
	}
	.oss-home-products ul.products li.product .price,
	body.woocommerce ul.products li.product .price,
	body.woocommerce-page ul.products li.product .price,
	.oss-home-products ul.products li.product .button,
	body.woocommerce ul.products li.product .button,
	body.woocommerce-page ul.products li.product .button {
		margin-left: 11px !important;
		margin-right: 11px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}
