/* Lasteis – Scheda: descrizione e box di richiesta */

body.lstz .lstz-scheda { padding: 24px 0 40px; }
body.lstz .lstz-scheda__griglia { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 56px; }
body.lstz .lstz-scheda__corpo { flex: 999 1 560px; min-width: 0; }
body.lstz .lstz-scheda p { margin: 0; }
body.lstz .lstz-scheda ul { margin: 0; padding: 0; list-style: none; }
body.lstz .lstz-scheda .lstz-icona { flex: none; }
body.lstz .lstz-scheda__piccolo { font-size: 14px; line-height: 1.5; color: var(--lstz-testo-2); }

/* Riquadro delle differenze */
body.lstz .lstz-scheda__diff { display: flex; flex-direction: column; gap: 12px; margin: -2px 0 24px; }
body.lstz .lstz-scheda__diff-titolo { font: 600 16px/1.4 var(--lstz-f-etichette); color: var(--lstz-blu); }
body.lstz .lstz-scheda__diff-elenco { display: flex; flex-wrap: wrap; gap: 12px; }
body.lstz .lstz-scheda__diff-voce {
	display: flex;
	flex: 1 1 260px;
	align-items: center;
	gap: 16px;
	padding: 18px 20px;
	border: 1px solid var(--lstz-linea);
	border-radius: 16px;
}
body.lstz .lstz-scheda .lstz-scheda__diff-numero { flex: 0 0 auto; white-space: nowrap; font-size: 44px; color: var(--lstz-blu); }
body.lstz .lstz-scheda__diff-testi { display: flex; min-width: 0; overflow-wrap: anywhere; flex-direction: column; gap: 2px; font-size: 15px; line-height: 1.45; color: var(--lstz-testo-3); }
body.lstz .lstz-scheda__diff-testi strong { font-family: var(--lstz-f-etichette); font-weight: 600; color: var(--lstz-testo); }

/* Corpo */
body.lstz .lstz-scheda__testa { display: flex; flex-direction: column; gap: 8px; padding: 16px 0 32px; }
body.lstz .lstz-scheda .lstz-scheda__titolo { font-size: 22px; line-height: 1.3; }
body.lstz .lstz-scheda__riepilogo { font-size: 16px; line-height: 1.5; color: var(--lstz-testo-3); }
body.lstz .lstz-scheda__sez {
	display: flex;
	flex-direction: column;
	gap: 22px;
	padding: 40px 0;
	border-top: 1px solid var(--lstz-linea);
}
body.lstz .lstz-scheda .lstz-h2 { line-height: 1.3; }
body.lstz .lstz-scheda__punti { gap: 20px; }
body.lstz .lstz-scheda__punto { display: flex; align-items: flex-start; gap: 18px; }
body.lstz .lstz-scheda__punto-icona { color: var(--lstz-petrolio); }
body.lstz .lstz-scheda__punto-titolo { font: 600 16px/1.4 var(--lstz-f-etichette); color: var(--lstz-blu); }
body.lstz .lstz-scheda .lstz-scheda__punto-testo { margin-top: 2px; font-size: 14px; line-height: 1.5; color: var(--lstz-testo-2); }
body.lstz .lstz-scheda__descrizione p { font-size: 17px; line-height: 1.75; color: var(--lstz-testo); }

/* Dove dormirai */
body.lstz .lstz-scheda__stanze { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
body.lstz .lstz-scheda__stanza { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
body.lstz .lstz-scheda .lstz-scheda__stanza-foto {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 14px;
}
body.lstz .lstz-scheda__stanza-vuota { background: var(--lstz-crema); color: var(--lstz-petrolio); }
body.lstz .lstz-scheda__stanza-nome { margin: 0; font: 600 16px/1.4 var(--lstz-f-etichette); color: var(--lstz-testo); }
body.lstz .lstz-scheda__stanza .lstz-scheda__piccolo { margin-top: 2px; }

/* Dotazioni */
body.lstz .lstz-scheda .lstz-scheda__dotazioni { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 4px 32px; }
body.lstz .lstz-scheda__dotazione { display: flex; align-items: center; gap: 14px; padding: 8px 0; font-size: 16px; line-height: 1.4; color: var(--lstz-testo); }
body.lstz .lstz-scheda .lstz-scheda__altre { align-self: flex-start; }

/* Pianta */
body.lstz .lstz-scheda__riga-titolo { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 12px; }
body.lstz .lstz-scheda__pianta { display: flex; justify-content: center; padding: 24px; border-radius: 18px; background: rgba(171, 196, 199, .16); }
body.lstz .lstz-scheda .lstz-scheda__pianta-img { width: auto; max-width: 100%; max-height: 440px; object-fit: contain; }

/* Prezzi */
body.lstz .lstz-scheda__prezzi { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
body.lstz .lstz-scheda__prezzo { display: flex; flex-direction: column; gap: 6px; padding: 22px; border: 1px solid var(--lstz-linea); border-radius: 16px; }
body.lstz .lstz-scheda__stagione {
	font: 600 13px/1.3 var(--lstz-f-etichette);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--lstz-oliva);
}
body.lstz .lstz-scheda .lstz-scheda__cifra { font-size: 40px; color: var(--lstz-blu); }
body.lstz .lstz-scheda__liste { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 18px; }
body.lstz .lstz-scheda__lista { display: flex; flex-direction: column; gap: 8px; }
body.lstz .lstz-scheda__lista ul { display: flex; flex-direction: column; gap: 8px; }
body.lstz .lstz-scheda__lista-titolo { margin: 0; font: 600 15px/1.4 var(--lstz-f-etichette); color: var(--lstz-testo); }
body.lstz .lstz-scheda__lista li { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; line-height: 1.5; color: var(--lstz-testo-3); }
body.lstz .lstz-scheda__lista .lstz-icona { margin-top: 2px; stroke-width: 2; }
body.lstz .lstz-scheda__si { color: var(--lstz-petrolio); }
body.lstz .lstz-scheda__piu { color: #998675; }

/* Box di richiesta */
body.lstz .lstz-scheda__lato { position: sticky; top: 24px; flex: 1 1 392px; max-width: 400px; }
body.lstz.admin-bar .lstz-scheda__lato { top: 56px; }
body.lstz .lstz-scheda__box {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 24px;
	border: 1px solid var(--lstz-linea);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 12px 40px rgba(0, 23, 56, .10);
}
body.lstz .lstz-scheda__box-prezzo { font-size: 15px; color: var(--lstz-testo-2); }
body.lstz .lstz-scheda__box-prezzo .lstz-d { font-size: 36px; color: var(--lstz-blu); }
body.lstz .lstz-scheda__campi { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--lstz-azzurro); border-radius: 14px; overflow: hidden; }
body.lstz .lstz-scheda__campo { display: flex; grid-column: 1 / -1; flex-direction: column; gap: 2px; min-width: 0; padding: 10px 14px; border-top: 1px solid var(--lstz-azzurro); }
body.lstz .lstz-scheda__campo--meta { grid-column: auto; border-top: 0; }
body.lstz .lstz-scheda__campo--meta:first-child { border-right: 1px solid var(--lstz-azzurro); }
body.lstz .lstz-scheda__campo label,
body.lstz .lstz-scheda__etichetta {
	font: 600 11px/1.4 var(--lstz-f-etichette);
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--lstz-testo);
}
body.lstz .lstz-scheda__campo input,
body.lstz .lstz-scheda__campo select {
	width: 100%;
	min-width: 0;
	min-height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	outline: none;
	background: transparent;
	box-shadow: none;
	font: 500 15px var(--lstz-f-testo);
	color: var(--lstz-testo-2);
}
body.lstz .lstz-scheda__campo:focus-within { box-shadow: inset 0 0 0 2px var(--lstz-blu); }
body.lstz .lstz-scheda__opzioni { display: flex; flex-wrap: wrap; gap: 14px; }
body.lstz .lstz-scheda__campo .lstz-scheda__opzioni label {
	display: flex;
	align-items: center;
	gap: 6px;
	min-height: 32px;
	font: 600 14px var(--lstz-f-etichette);
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--lstz-testo);
	cursor: pointer;
}
body.lstz .lstz-scheda__campo .lstz-scheda__opzioni input { width: 16px; min-height: 0; margin: 0; accent-color: var(--lstz-petrolio); }
body.lstz .lstz-scheda .lstz-scheda__box-btn { width: 100%; min-height: 54px; padding-top: 8px; padding-bottom: 8px; white-space: normal; text-align: center; }
body.lstz .lstz-scheda__box-nota { font-size: 14px; line-height: 1.5; color: var(--lstz-testo-3); text-align: center; }
body.lstz .lstz-scheda .lstz-scheda__box-punti { display: flex; flex-direction: column; gap: 8px; padding-top: 14px; border-top: 1px solid var(--lstz-linea); }
body.lstz .lstz-scheda__box-punti li { display: flex; gap: 10px; font-size: 14px; line-height: 1.4; color: var(--lstz-testo-3); }
body.lstz .lstz-scheda__box-punti .lstz-icona { color: var(--lstz-petrolio); }
body.lstz .lstz-scheda .lstz-scheda__chiama {
	display: flex;
	gap: 8px;
	width: 100%;
	margin-top: 14px;
	border-width: 1px;
	border-color: rgba(171, 196, 199, .75);
}
body.lstz .lstz-scheda .lstz-scheda__chiama:hover { border-color: var(--lstz-blu); }

/* Barra fissa in basso (solo telefono) */
body.lstz .lstz-scheda__barra { display: none; }

@media (max-width: 820px) {
	body.lstz .lstz-scheda { padding: 8px 0 24px; }
	body.lstz .lstz-scheda__griglia { gap: 8px; }
	body.lstz .lstz-scheda__corpo { flex-basis: 100%; }
	body.lstz .lstz-scheda__testa { padding: 0 0 22px; }
	body.lstz .lstz-scheda__sez { gap: 14px; padding: 24px 0; }
	body.lstz .lstz-scheda .lstz-h2 { font-size: 20px; }
	body.lstz .lstz-scheda .lstz-scheda__titolo { font-size: 20px; }
	body.lstz .lstz-scheda__punti { gap: 14px; }
	body.lstz .lstz-scheda__punto { gap: 14px; }
	body.lstz .lstz-scheda__punto-titolo { font-size: 15px; }
	body.lstz .lstz-scheda .lstz-scheda__punto-testo { font-size: 13px; }
	body.lstz .lstz-scheda__descrizione p { font-size: 16px; line-height: 1.7; }
	body.lstz .lstz-scheda__stanze { display: flex; gap: 12px; margin: 0 -18px; padding: 0 18px; overflow-x: auto; scrollbar-width: none; }
	body.lstz .lstz-scheda__stanza { flex: none; width: 220px; gap: 8px; }
	body.lstz .lstz-scheda .lstz-scheda__stanza-foto { aspect-ratio: auto; height: 150px; border-radius: 12px; }
	body.lstz .lstz-scheda__stanza-nome { font-size: 14px; }
	body.lstz .lstz-scheda__stanza .lstz-scheda__piccolo { font-size: 13px; }
	body.lstz .lstz-scheda .lstz-scheda__dotazioni { gap: 0; }
	body.lstz .lstz-scheda__dotazione { gap: 12px; padding: 6px 0; font-size: 15px; }
	body.lstz .lstz-scheda .lstz-scheda__altre { align-self: stretch; }
	body.lstz .lstz-scheda__pianta { padding: 12px; border-radius: 14px; }
	body.lstz .lstz-scheda__prezzi { grid-template-columns: 1fr 1fr; gap: 10px; }
	body.lstz .lstz-scheda__prezzo { gap: 2px; padding: 14px; border-radius: 14px; }
	body.lstz .lstz-scheda__stagione { font-size: 11px; }
	body.lstz .lstz-scheda .lstz-scheda__cifra { font-size: 24px; }
	body.lstz .lstz-scheda__prezzo .lstz-scheda__piccolo { font-size: 12px; }
	body.lstz .lstz-scheda__lato { position: static; flex-basis: 100%; max-width: none; scroll-margin-top: 16px; }
	body.lstz .lstz-scheda__diff { margin: 18px 0 22px; }
	body.lstz .lstz-scheda__diff-voce { padding: 14px 16px; }
	body.lstz .lstz-scheda .lstz-scheda__diff-numero { font-size: 38px; }

	body.lstz .lstz-scheda__barra {
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 60;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 12px 18px calc(14px + env(safe-area-inset-bottom, 0px));
		border-top: 1px solid var(--lstz-linea);
		background: #fff;
		box-shadow: 0 -8px 24px rgba(0, 23, 56, .08);
		transition: transform .25s ease;
	}
	body.lstz .lstz-scheda__barra.is-nascosta { transform: translateY(110%); }
	body.lstz .lstz-scheda__barra-testi { min-width: 0; }
	body.lstz .lstz-scheda__barra-prezzo { font-size: 14px; }
	body.lstz .lstz-scheda__barra-prezzo strong { font: 600 17px var(--lstz-f-etichette); }
	body.lstz .lstz-scheda__barra-nota { font-size: 12px; line-height: 1.4; color: var(--lstz-testo-2); }
	body.lstz .lstz-scheda .lstz-scheda__barra-btn { flex: none; min-height: 50px; padding: 0 20px; font-size: 17px; }
	body.lstz:has(.lstz-scheda__barra) .lstz-piede { padding-bottom: 84px; }
	body.lstz.elementor-editor-active .lstz-scheda__barra { position: relative; }
}
@media (prefers-reduced-motion: reduce) {
	body.lstz .lstz-scheda__barra { transition: none; }
}
