/* ==========================================================================
   Product — Sezione Premi
   ========================================================================== */
.product-premi {
	padding-top: 96px;
	padding-bottom: 96px;
}

/* Titolo "PREMI" */
.product-premi__title {
	margin-bottom: 80px; /* top: 96, tabella a top: 221 → 221-96=125px, ma il titolo ha altezza ~46px → 125-46=79px ≈ 80px */
}

.product-premi__title .title-xlarge {
	margin: 0;
	text-transform: uppercase;
}

/* Tabella */
.product-premi__table {
	display: flex;
	flex-direction: column;
}

/* Riga */
.product-premi__row {
	display: flex;
	align-items: center;         /* contenuto verticalmente centrato */
	justify-content: space-between;
	gap: 0;
	height: 290px;
	overflow: hidden;
	border-top: 1px solid var(--stroke-soft-200, #e2e4e9);
	padding: 34px 14px  ;
}


/* Colonne — larghezze esatte da Figma */
.product-premi__col {
	display: flex;
	flex-direction: column;
	gap: 24px;
	align-self: stretch;
	justify-content: flex-start;

	padding-top: 8px;
	flex-shrink: 0;
	width: 25%;
}


.product-premi__col--awards   {
	flex: 1;                    /* occupa il resto */
	gap: 16px;                  /* label → awards gap è 16px (non 24px) */
}

/* Label header dentro ogni cella */
.product-premi__label {
	display: block;
	font-family: var(--font-primary);
	font-weight: var(--weight-medium);           /* Medium */
	font-size: var(--paragraph-small);
	line-height: 20px;
	letter-spacing: 0.04em;     /* 0.56px / 14px */
	text-transform: uppercase;
	color: var(--text-sub-500);
	white-space: nowrap;
}

/* Vino: nome + denominazione */
.product-premi__wine-info {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.product-premi__wine-name {
	font-family: var(--font-secondary, 'Merriweather'), serif;
	font-size: 26px;
	font-weight: var(--weight-regular);
	line-height: 1.2;
	letter-spacing: -0.02em;    /* -0.52px / 26px */
	color: var(--text-main-900);
}

.product-premi__wine-denom {
	font-family: var(--font-secondary, 'Merriweather'), serif;
	font-size: var(--paragraph-medium);
	font-weight: var(--weight-regular);
	line-height: 1.6;
	letter-spacing: -0.011em;   /* -0.176px / 16px */
	color: var(--text-sub-500);
}

/* Valore (annata, tipologia) */
.product-premi__value {
	font-family: var(--font-secondary, 'Merriweather'), serif;
	font-size: 26px;
	font-weight: var(--weight-regular);
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: var(--text-main-900);
}

/* Lista premi */
.product-premi__awards {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* Singolo premio: logo + punteggio */
.product-premi__award {
	display: flex;
	align-items: center;
	gap: 10px;
}

/* Logo award: contenitore flessibile, altezza fissa, larghezza auto */
.product-premi__award-logo {
	flex-shrink: 0;
	height: 45px;
	display: flex;
	align-items: center;
}

.product-premi__award-logo img {
	display: block;
	height: 100%;
	width: auto;
	max-width: 120px;
	object-fit: contain;
	object-position: left center;
	mix-blend-mode: darken;
}

.product-premi__award-logo--text {
	height: auto;
}

.product-premi__award-logo--text span {
	font-family: var(--font-secondary, 'Merriweather'), serif;
	font-size: var(--paragraph-medium);
	font-weight: var(--weight-regular);
	color: var(--text-sub-500);
}

/* Punteggio */
.product-premi__award-punteggio {
	font-family: var(--font-secondary, 'Merriweather'), serif;
	font-size: var(--paragraph-medium);
	font-weight: var(--weight-regular);
	line-height: 1.6;
	letter-spacing: -0.011em;
	color: var(--text-sub-500);
	white-space: nowrap;
}

.s4w-product-approfondimenti {
	padding-top: 0 !important;
}

/* ==========================================================================
   Responsive — Tablet (≤ 1024px)
   ========================================================================== */

@media ( max-width: 1024px ) {
	.product-premi {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.product-premi__title {
		margin-bottom: 48px;
	}

	.product-premi__row {
		flex-wrap: wrap;
		height: auto;
		padding: 32px 14px;
		gap: 32px 0;
	}

	.product-premi__col--vino     { width: 50%; }
	.product-premi__col--annata   { width: 50%; }
	.product-premi__col--tipologia { width: 50%; }
	.product-premi__col--awards   { width: 50%; flex: none; }
}

/* ==========================================================================
   Responsive — Mobile (≤ 768px): slider
   ========================================================================== */

@media ( max-width: 768px ) {

	/* Sezione */
	.product-premi {
		padding-top: 64px;
	}

	.product-premi__title {
		margin-bottom: 32px;

	}

	.product-premi__title .title-xlarge {
		font-size: 48px;
		line-height: 0.9;
	}

	/* Nascondi tabella desktop */
	.product-premi__table {
		display: none;
	}

	/* ---- Slider ---- */
	.product-premi__slider {
		display: flex;
		flex-direction: column;
		gap: 32px;
	}

	/* Track: scroll orizzontale con snap */
	.product-premi__slider-track {
		display: flex;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;           /* Firefox */
		gap: 0;
	}

	.product-premi__slider-track::-webkit-scrollbar {
		display: none;
	}

	/* Slide singola */
	.product-premi__slide {
		scroll-snap-align: start;
		flex-shrink: 0;
		width: 100%;
		display: flex;
		flex-direction: column;
	}

	/* Info principale slide */
	.product-premi__slide-info {
		display: flex;
		flex-direction: column;
		gap: 24px;
		padding-top: 8px;
	}

	.product-premi__slide-content {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	/* Bottone "Più info" */
	.product-premi__more-btn {
		display: inline-flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 2px;
		padding: 6px 0;
		background: none;
		border: none;
		cursor: pointer;
	}

	.product-premi__more-btn span {
		font-family: var(--font-primary);
		font-weight: var(--weight-medium);
		font-size: var(--paragraph-small);
		line-height: 20px;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: var(--text-main-900);
		border-bottom: 1px solid var(--text-main-900);
		padding-bottom: 1px;
	}

	/* Premi espandibili */
	.product-premi__slide-awards {
		overflow: hidden;
		max-height: 0;
		transition: max-height 0.35s ease, padding 0.35s ease;
		padding-top: 0;
	}

	.product-premi__slide-awards.is-open {
		max-height: 600px;
		padding-top: 20px;
	}

	/* Footer slider: dots + nav */
	.product-premi__slider-footer {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 12px;
	}

	/* Dots */
	.product-premi__dots {
		display: flex;
		gap: 8px;
		align-items: center;
	}

	.product-premi__dot {
		width: 40px;
		height: 2px;
		background: var(--stroke-soft-200, #e2e4e9);
		border: none;
		padding: 0;
		cursor: pointer;
		transition: background 0.2s;
	}

	.product-premi__dot.is-active {
		background: var(--text-main-900);
	}

	/* Frecce navigazione */
	.product-premi__slider-nav {
		display: flex;
		gap: 8px;
		align-items: center;
	}

	.product-premi__nav-btn {
		background: none;
		border: none;
		padding: 0;
		cursor: pointer;
		color: var(--text-main-900);
		display: flex;
		align-items: center;
		justify-content: center;
		transition: opacity 0.2s;
	}

	.product-premi__nav-btn:disabled {
		opacity: 0.3;
		cursor: default;
	}

	/* Nascondi slider su desktop */
	.product-premi__slider {
		display: flex;
	}
}

/* Nascondi slider su desktop */
@media ( min-width: 769px ) {
	.product-premi__slider {
		display: none;
	}
}
