/*
 * Studio Arfia · garanzie.css · 06/11/2026
 * PROPOSTA 1 «La regia» per «Quello che hai di sicuro, dal primo giorno.» (template-parts/site/garanzie.php):
 * il palco con l'iPhone e il MacBook di Villa Castelmora, la telecamera, i 4 capitoli sotto. La vita è in
 * assets/js/proposte/studio-vantaggi-1.js. Lo stile nasce dal chatbot del salone (casi/salone.css) e dalla posta in Gmail.
 * Misure: la tela è 86 × 50em (il MacBook del kit è 66em); nell'iPhone e nel Mac i PUNTI dello schermo (var(--u) del kit).
 * Il sito della villa alla maniera di Pellegrin (Archivo sottilissimo, etichette spaziate), le app nel font di sistema.
 * Niente gialli (i semafori delle finestre sono grigi), niente backdrop-filter dentro i telefoni (Errori 1.78).
 */
@font-face { font-family: 'Archivo Narrow'; src: url('../fonts/schermate/archivo-narrow-normal-latin.woff2') format('woff2'); font-weight: 400 700; font-style: normal; font-display: swap; }

.as-sv1 { --sv1-sys: -apple-system, 'SF Pro Text', system-ui, 'Helvetica Neue', Arial, sans-serif; --sv1-vc: 'Archivo', 'Helvetica Neue', Arial, sans-serif; --sv1-vc-n: 'Archivo Narrow', 'Archivo', 'Arial Narrow', sans-serif; --sv1-blu: #0A84FF; }
.as-sv1__titolo { margin: 0 0 clamp(26px, 3vw, 44px); max-width: 24ch; text-wrap: balance; }
.as-sv1__titolo em { font-style: normal; color: var(--as-grigio-display); }

/* ══ IL PALCO E LA TELECAMERA ══ */
.as-sv1__regia { position: relative; width: 100%; }
.as-sv1__palco {
	--a: 1.9;
	--z: 1.9;
	position: relative;
	container-type: inline-size;
	width: 100%;
	aspect-ratio: var(--a);
	overflow: hidden;
	border-radius: calc(28px * var(--as-brm, 1));
	/* la mattina: la luce colorata della ricetta (pesca, rosa, cielo, lavanda, menta: niente gialli) */
	background:
		radial-gradient(38% 52% at 10% 78%, rgba(255, 186, 160, .55), rgba(255, 186, 160, 0) 70%),
		radial-gradient(34% 46% at 38% 6%, rgba(255, 168, 204, .45), rgba(255, 168, 204, 0) 70%),
		radial-gradient(40% 52% at 90% 16%, rgba(146, 196, 255, .55), rgba(146, 196, 255, 0) 70%),
		radial-gradient(42% 50% at 74% 96%, rgba(188, 168, 255, .5), rgba(188, 168, 255, 0) 70%),
		radial-gradient(34% 44% at 48% 70%, rgba(160, 228, 200, .4), rgba(160, 228, 200, 0) 70%),
		#F3F1EE;
}
@supports (corner-shape: squircle) { .as-sv1__palco { corner-shape: squircle; } }
/* la sera (capitoli 1-2): blu profondo, la luce del telefono a sinistra; con la mattina se ne va */
.as-sv1__luce { position: absolute; inset: 0; pointer-events: none; opacity: 0; transition: opacity 1.4s ease;
	background:
		radial-gradient(34% 54% at 16% 60%, rgba(78, 104, 255, .34), rgba(78, 104, 255, 0) 72%),
		radial-gradient(42% 46% at 80% 12%, rgba(150, 84, 255, .2), rgba(150, 84, 255, 0) 70%),
		linear-gradient(180deg, #0A0E1C 0%, #121834 100%); }
.as-sv1__regia:not(.is-mattina) .as-sv1__luce { opacity: 1; }
.as-sv1__cam {
	/* il campo lungo (anche senza JS): i due dispositivi, centrati */
	--cs: calc(.815 / var(--z));
	--cx: 9.25cqw;
	--cy: 2.6cqw;
	position: absolute;
	left: 0;
	top: 0;
	width: 86em;
	height: 50em;
	font-size: calc(var(--z) * 100cqw / 86);
	transform-origin: 0 0;
	transform: translate(var(--cx), var(--cy)) scale(var(--cs));
	transition: transform 1.35s cubic-bezier(.65, 0, .3, 1);
}
@media (max-width: 999px) {
	.as-sv1__palco { --a: 1.5; --z: 2.3; }
	.as-sv1__cam { --cs: calc(.94 / var(--z)); --cx: 3cqw; --cy: 6cqw; }
}
@media (max-width: 699px) {
	.as-sv1__palco { --a: .7; --z: 5; border-radius: calc(22px * var(--as-brm, 1)); }
	/* v0.121 (Rami dall'iPhone, 07/11: «il MacBook ha molto zoom da mobile, non si capisce bene»): da telefono la scena è in COLONNA,
	   il Mac intero sopra e l'iPhone sotto, centrato. Il campo largo (anche senza JS) è la colonna intera: il Mac largo il 94% del palco. */
	.as-sv1__cam { --cs: calc(1.2248 / var(--z)); --cx: -11.24cqw; --cy: 5.99cqw; }
}
.as-sv1__scena { position: absolute; left: 0; top: 0; width: 86em; height: 50em; }
.as-sv1__mac { position: absolute; left: 20em; top: 3.5em; transition: filter 1.2s ease; }
.as-sv1__mac .as-macbook { margin: 0; }
.as-sv1__tel { position: absolute; z-index: 2; left: 2em; top: 8.6em; font-size: .92em; }
.as-sv1__tel .as-iphone { margin: 0; }
@media (max-width: 699px) { /* v0.121: la colonna da telefono (dopo le regole di base, che altrimenti la scavalcano) */
	.as-sv1__mac { left: 10em; }
	.as-sv1__tel { left: 36.49em; top: 53.26em; } /* in em suoi (,92): il telefono in scena a x 33,6 · y 49, 3em sotto il Mac */
}
/* il Mac aspetta spento finché non tocca a lui; di sera è in penombra */
.as-sv1__mac .as-disp__spento { transition: opacity 1s ease .2s; }
.as-sv1__regia:not(.is-mac) .as-sv1__mac .as-disp__spento { opacity: 1; }
.as-sv1__regia:not(.is-mattina) .as-sv1__mac { filter: brightness(.42) saturate(.8); }
/* quando tocca al Mac il telefono si abbassa; alla fine si riaccendono tutti e due */
.as-sv1__tel .as-disp__spento { transition: opacity .9s ease; }
.as-sv1__regia.is-mac:not(.is-fine) .as-sv1__tel .as-disp__spento { opacity: .55; }
.as-sv1--fermo, .as-sv1--fermo *, .as-sv1__regia.is-salto, .as-sv1__regia.is-salto * { transition: none !important; animation: none !important; }
.as-sv1-zona { position: absolute; display: block; visibility: hidden; pointer-events: none; left: calc(var(--x) * var(--u)); top: calc(var(--y) * var(--u)); width: calc(var(--w) * var(--u)); height: calc(var(--h) * var(--u)); }
.as-sv1-zona.is-em { left: calc(var(--x) * 1em); top: calc(var(--y) * 1em); width: calc(var(--w) * 1em); height: calc(var(--h) * 1em); }
.as-sv1-ic { display: block; flex: none; width: 1em; height: 1em; fill: none; }
/* il cronometro della pagina che si apre, accanto al telefono (capitolo 3) */
.as-sv1__crono { position: absolute; z-index: 3; left: 21.4em; top: 26em; display: flex; align-items: center; gap: .5em; margin: 0; padding: .55em 1em .55em .8em; border-radius: 999px; background: rgba(255, 255, 255, .9); box-shadow: 0 0 0 .05em rgba(15, 15, 16, .08), 0 .9em 2em -.8em rgba(10, 14, 28, .45); font: 400 1.15em/1 var(--as-font, 'Archivo', sans-serif); color: #0A0A0A; white-space: nowrap; opacity: 0; transform: translateY(.6em) scale(.94); transition: opacity .4s ease, transform .55s cubic-bezier(.34, 1.56, .64, 1); }
.as-sv1__crono .as-sv1-ic { width: 1.25em; height: 1.25em; stroke-width: 2; color: var(--as-arancio, #F37022); }
.as-sv1__crono span { color: rgba(10, 10, 10, .6); }
.as-sv1__crono b { font-weight: 500; font-variant-numeric: tabular-nums; min-width: 2.6em; }
.as-sv1__regia.is-crono:not(.is-mac) .as-sv1__crono { opacity: 1; transform: none; }
/* da telefono il campo è il telefono intero: il cronometro gli sta sopra, sulla foto scura della villa */
@media (max-width: 699px) { .as-sv1__crono { left: 28.52em; top: 58.18em; font-size: 1.3em; } } /* in em suoi (1,3): a metà del telefono (che da telefono sta sotto il Mac), tra il titolo della villa e il bottone */

/* ══ L'IPHONE DELLA TITOLARE ══ */
.as-sv1-t { position: absolute; inset: 0; overflow: hidden; background: #fff; color: #000; font-family: var(--sv1-sys); -webkit-font-smoothing: antialiased; text-rendering: geometricPrecision; }
.as-sv1-t *, .as-sv1-t *::before, .as-sv1-t *::after { box-sizing: border-box; }
.as-sv1-t p { margin: 0; }
.as-sv1-t :is(b, small, em, i) { font-style: normal; }
.as-sv1-t .as-sv1-ic { width: calc(22 * var(--u)); height: calc(22 * var(--u)); }

/* MESSAGGI */
.as-sv1-ms { position: absolute; inset: 0; background: #fff; }
.as-sv1-ms__testa { position: absolute; z-index: 4; left: 0; right: 0; top: 0; display: grid; grid-template-columns: calc(48 * var(--u)) 1fr calc(48 * var(--u)); align-items: start; height: calc(150 * var(--u)); padding: calc(62 * var(--u)) calc(16 * var(--u)) 0; background: linear-gradient(180deg, rgba(255, 255, 255, 1) 70%, rgba(255, 255, 255, 0)); }
.as-sv1-ms__tondo { display: grid; place-items: center; width: calc(44 * var(--u)); height: calc(44 * var(--u)); margin-top: calc(6 * var(--u)); border-radius: 50%; background: rgba(242, 242, 245, .96); box-shadow: inset 0 calc(.8 * var(--u)) 0 #fff, 0 0 0 calc(.5 * var(--u)) rgba(0, 0, 0, .08), 0 calc(4 * var(--u)) calc(12 * var(--u)) rgba(0, 0, 0, .08); color: #111; }
.as-sv1-ms__tondo:last-child { justify-self: end; }
.as-sv1-ms__tondo .as-sv1-ic { stroke-width: 2.1; }
.as-sv1-ms__chi { display: grid; justify-items: center; gap: calc(5 * var(--u)); }
.as-sv1-ms__av { display: grid; place-items: center; width: calc(54 * var(--u)); height: calc(54 * var(--u)); border-radius: 50%; background: linear-gradient(180deg, #F4F4F6, #E3E3E8); box-shadow: inset 0 0 0 calc(.5 * var(--u)) rgba(0, 0, 0, .08); }
.as-sv1-ms__av img { width: 62%; height: auto; }
.as-sv1-ms__chi b { display: flex; align-items: center; gap: calc(3 * var(--u)); padding: calc(4 * var(--u)) calc(10 * var(--u)); border-radius: 999px; background: rgba(242, 242, 245, .96); font-size: calc(14 * var(--u)); font-weight: 600; letter-spacing: -.01em; }
.as-sv1-ms__chi b .as-sv1-ic { width: calc(12 * var(--u)); height: calc(12 * var(--u)); stroke-width: 2.4; color: #8E8E93; }
.as-sv1-ms__vista { position: absolute; left: 0; right: 0; top: calc(140 * var(--u)); bottom: calc(96 * var(--u)); display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; transition: transform .38s cubic-bezier(.2, .8, .2, 1); }
.as-sv1-ms__flusso { display: grid; gap: calc(3 * var(--u)); padding: 0 calc(16 * var(--u)) calc(6 * var(--u)); }
.as-sv1-ms__data { justify-self: center; margin: calc(12 * var(--u)) 0 calc(6 * var(--u)) !important; font-size: calc(12.5 * var(--u)); color: #8E8E93; }
.as-sv1-ms__data b { font-weight: 600; }
.as-sv1-ms__f { position: relative; z-index: 0; max-width: 78%; padding: calc(8 * var(--u)) calc(13 * var(--u)) calc(9 * var(--u)); border-radius: calc(20 * var(--u)); font-size: calc(18 * var(--u)); line-height: 1.28; letter-spacing: -.015em; }
.as-sv1-ms__f.is-loro { justify-self: start; background: #E9E9EB; transform-origin: 0 100%; }
.as-sv1-ms__f.is-mio { justify-self: end; background: var(--sv1-blu); color: #fff; transform-origin: 100% 100%; }
.as-sv1-ms__f.is-cambio { margin-top: calc(8 * var(--u)); }
.as-sv1-ms__f.is-coda::before, .as-sv1-ms__f.is-coda::after { content: ""; position: absolute; bottom: 0; z-index: -1; height: calc(18 * var(--u)); }
.as-sv1-ms__f.is-mio.is-coda::before { right: calc(-7 * var(--u)); width: calc(20 * var(--u)); background: var(--sv1-blu); border-bottom-left-radius: calc(16 * var(--u)) calc(14 * var(--u)); }
.as-sv1-ms__f.is-mio.is-coda::after { right: calc(-26 * var(--u)); width: calc(26 * var(--u)); background: #fff; border-bottom-left-radius: calc(10 * var(--u)); }
.as-sv1-ms__f.is-loro.is-coda::before { left: calc(-7 * var(--u)); width: calc(20 * var(--u)); background: #E9E9EB; border-bottom-right-radius: calc(16 * var(--u)) calc(14 * var(--u)); }
.as-sv1-ms__f.is-loro.is-coda::after { left: calc(-26 * var(--u)); width: calc(26 * var(--u)); background: #fff; border-bottom-right-radius: calc(10 * var(--u)); }
.as-sv1-ms__f.is-puntini { display: flex; gap: calc(5 * var(--u)); padding: calc(13 * var(--u)) calc(15 * var(--u)); }
.as-sv1-ms__f.is-puntini i { width: calc(8 * var(--u)); height: calc(8 * var(--u)); border-radius: 50%; background: #8E8E93; animation: as-sv1-puntini 1.1s infinite; }
.as-sv1-ms__f.is-puntini i:nth-child(2) { animation-delay: .18s; }
.as-sv1-ms__f.is-puntini i:nth-child(3) { animation-delay: .36s; }
@keyframes as-sv1-puntini { 0%, 60%, 100% { opacity: .35; } 30% { opacity: 1; } }
.as-sv1-ms__letto { justify-self: end; margin: calc(2 * var(--u)) calc(4 * var(--u)) 0 !important; font-size: calc(12.5 * var(--u)); color: #8E8E93; }
.as-sv1-ms__letto b { font-weight: 600; }
.as-sv1-ms__letto .is-dopo { display: none; }
.as-sv1__regia.is-letto .as-sv1-ms__letto .is-prima { display: none; }
.as-sv1__regia.is-letto .as-sv1-ms__letto .is-dopo { display: inline; }
/* le righe che arrivano: si apre lo spazio e la nuvoletta sale dal suo angolo */
.as-sv1-ms__v { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s cubic-bezier(.2, .8, .2, 1); }
.as-sv1-ms__in { display: grid; min-height: 0; opacity: 0; transform: scale(.7) translateY(calc(8 * var(--u))); transform-origin: 50% 100%; transition: opacity .25s ease, transform .45s cubic-bezier(.34, 1.4, .64, 1); }
.as-sv1__regia.is-m1 .as-sv1-ms__v.is-m1,
.as-sv1__regia.is-scrive .as-sv1-ms__v.is-scrive,
.as-sv1__regia.is-m2 .as-sv1-ms__v.is-m2,
.as-sv1__regia.is-m3 .as-sv1-ms__v.is-m3 { grid-template-rows: 1fr; }
.as-sv1__regia.is-m1 .as-sv1-ms__v.is-m1 > .as-sv1-ms__in,
.as-sv1__regia.is-scrive .as-sv1-ms__v.is-scrive > .as-sv1-ms__in,
.as-sv1__regia.is-m2 .as-sv1-ms__v.is-m2 > .as-sv1-ms__in,
.as-sv1__regia.is-m3 .as-sv1-ms__v.is-m3 > .as-sv1-ms__in { opacity: 1; transform: none; }
.as-sv1-ms__v.is-m3 + .as-sv1-ms__v.is-m3 > .as-sv1-ms__in { transition-delay: .35s; }
/* il link che arriva come anteprima (la foto della villa, il titolo, il dominio) */
.as-sv1-ms__link { justify-self: start; width: 74%; margin-top: calc(3 * var(--u)); overflow: hidden; border-radius: calc(20 * var(--u)); background: #E9E9EB; }
.as-sv1-ms__link-foto { display: block; height: calc(150 * var(--u)); background: #4A4F45 center 60% / cover no-repeat; }
.as-sv1-ms__link-t { display: grid; gap: calc(2 * var(--u)); padding: calc(10 * var(--u)) calc(13 * var(--u)) calc(11 * var(--u)); }
.as-sv1-ms__link-t b { font-size: calc(15 * var(--u)); font-weight: 600; line-height: 1.25; letter-spacing: -.01em; }
.as-sv1-ms__link-t small { font-size: calc(13 * var(--u)); color: #6E6E73; }
/* il campo in basso: «iMessage», poi le lettere della titolare, e la freccia blu per inviare */
.as-sv1-ms__piede { position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; display: flex; align-items: center; gap: calc(8 * var(--u)); padding: calc(10 * var(--u)) calc(12 * var(--u)) calc(44 * var(--u)); background: #fff; transition: transform .38s cubic-bezier(.2, .8, .2, 1); }
.as-sv1-ms__piu { display: grid; place-items: center; flex: none; width: calc(40 * var(--u)); height: calc(40 * var(--u)); border-radius: 50%; background: #F0F0F3; color: #6E6E73; }
.as-sv1-ms__piu .as-sv1-ic { stroke-width: 2.2; }
.as-sv1-ms__campo { position: relative; flex: 1; display: flex; align-items: center; min-width: 0; min-height: calc(40 * var(--u)); padding: calc(8 * var(--u)) calc(44 * var(--u)) calc(8 * var(--u)) calc(15 * var(--u)); border-radius: calc(20 * var(--u)); box-shadow: inset 0 0 0 calc(1 * var(--u)) #D8D8DC; font-size: calc(17 * var(--u)); line-height: 1.25; letter-spacing: -.012em; }
.as-sv1-ms__segna { color: #A1A1A6; }
.as-sv1-ms__digita { display: none; }
.as-sv1-ms__invia, .as-sv1-ms__mic { position: absolute; right: calc(5 * var(--u)); bottom: calc(5 * var(--u)); display: grid; place-items: center; width: calc(30 * var(--u)); height: calc(30 * var(--u)); border-radius: 50%; }
.as-sv1-ms__invia { background: var(--sv1-blu); color: #fff; opacity: 0; transform: scale(.6); transition: opacity .2s ease, transform .3s cubic-bezier(.34, 1.56, .64, 1); }
.as-sv1-ms__invia .as-sv1-ic { width: calc(18 * var(--u)); height: calc(18 * var(--u)); stroke-width: 2.6; }
.as-sv1-ms__mic { color: #A1A1A6; }
.as-sv1-ms__mic .as-sv1-ic { width: calc(20 * var(--u)); height: calc(20 * var(--u)); }
.as-sv1__regia.is-digita:not(.is-barra) .as-sv1-ms__segna, .as-sv1__regia.is-digita:not(.is-barra) .as-sv1-ms__mic { display: none; }
.as-sv1__regia.is-digita:not(.is-barra) .as-sv1-ms__digita { display: inline; }
.as-sv1__regia.is-digita:not(.is-barra) .as-sv1-ms__invia { opacity: 1; transform: none; }
.as-sv1__regia.is-digita .as-sv1-ms__digita::after, .as-sv1__regia.is-digita.is-barra .as-sv1-sf__digita::after { content: ""; display: inline-block; width: calc(2 * var(--u)); height: calc(20 * var(--u)); margin-left: calc(1 * var(--u)); vertical-align: calc(-4 * var(--u)); border-radius: 1px; background: var(--sv1-blu); animation: as-sv1-cursore 1s steps(1) infinite; }
@keyframes as-sv1-cursore { 50% { opacity: 0; } }
.as-sv1__regia.is-tastiera:not(.is-barra) :is(.as-sv1-ms__piede, .as-sv1-ms__vista) { transform: translateY(calc(-258 * var(--u))); }

/* SAFARI: entra da destra quando si tocca il link */
.as-sv1-sf { position: absolute; z-index: 5; inset: 0; overflow: hidden; background: #fff; transform: translateX(102%); transition: transform .5s cubic-bezier(.3, .8, .2, 1); }
.as-sv1__regia.is-safari .as-sv1-sf { transform: none; }
.as-sv1-pg { position: absolute; z-index: 1; inset: 0; overflow: hidden; background: #fff; opacity: 0; visibility: hidden; transition: opacity .35s ease, visibility 0s .35s; }
.as-sv1-pg.is-date,
.as-sv1__regia.is-google .as-sv1-pg.is-google,
.as-sv1__regia.is-home .as-sv1-pg.is-home { opacity: 1; visibility: visible; transition: opacity .35s ease; }
.as-sv1__regia.is-home .as-sv1-pg.is-google { opacity: 0; visibility: hidden; }
.as-sv1-pg.is-google { z-index: 2; }
.as-sv1-pg.is-home { z-index: 3; }
/* il sito della villa: le date libere (alla Pellegrin) */
.as-sv1-vc-testa { position: absolute; z-index: 2; left: 0; right: 0; top: 0; display: flex; align-items: center; gap: calc(16 * var(--u)); height: calc(112 * var(--u)); padding: calc(58 * var(--u)) calc(22 * var(--u)) 0; background: rgba(255, 255, 255, .97); box-shadow: 0 1px 0 #E5E5E5; color: #171717; font-family: var(--sv1-vc); }
.as-sv1-vc-testa.is-chiara { background: none; box-shadow: none; color: #fff; }
.as-sv1-vc-marchio { flex: 1; display: flex; align-items: center; gap: calc(9 * var(--u)); font-size: calc(11.5 * var(--u)); font-weight: 300; letter-spacing: .3em; text-transform: uppercase; white-space: nowrap; }
.as-sv1-vc-marchio .as-lg { width: calc(26 * var(--u)); height: calc(26 * var(--u)); }
.as-sv1-vc-lingua { font-size: calc(11 * var(--u)); font-weight: 300; letter-spacing: .2em; text-transform: uppercase; opacity: .7; }
.as-sv1-vc-menu { display: grid; gap: calc(6 * var(--u)); }
.as-sv1-vc-menu i { width: calc(22 * var(--u)); height: calc(1.4 * var(--u)); background: currentColor; }
.as-sv1-vc-date { position: absolute; left: 0; right: 0; top: calc(112 * var(--u)); padding: calc(30 * var(--u)) calc(24 * var(--u)) 0; color: #2B2B2B; font-family: var(--sv1-vc); }
.as-sv1-vc-eti { font-family: var(--sv1-vc); font-weight: 300; font-size: calc(10 * var(--u)); line-height: 1.95; letter-spacing: .46em; text-transform: uppercase; color: #9A9A9A; }
.as-sv1-vc-h2 { margin-top: 0 !important; font-weight: 200; font-size: calc(40 * var(--u)); line-height: 1.02; letter-spacing: -.03em; color: #1F1F1F; }
.as-sv1-vc-mese { display: flex; align-items: center; gap: calc(16 * var(--u)); margin-top: calc(24 * var(--u)) !important; padding-bottom: calc(12 * var(--u)); border-bottom: 1px solid #171717; }
.as-sv1-vc-mese b { flex: 1; font-family: var(--sv1-vc-n); font-weight: 500; font-size: calc(13 * var(--u)); letter-spacing: .2em; text-transform: uppercase; color: #171717; }
.as-sv1-vc-mese .as-sv1-ic { width: calc(18 * var(--u)); height: calc(18 * var(--u)); stroke-width: 1.3; color: #555; }
.as-sv1-vc-sabati { margin: 0; padding: 0; list-style: none; }
.as-sv1-vc-sabati li { position: relative; display: flex; flex-wrap: wrap; align-items: center; column-gap: calc(16 * var(--u)); min-height: calc(52 * var(--u)); padding: calc(15 * var(--u)) calc(12 * var(--u)); border-bottom: 1px solid #EDEDED; font-size: calc(16 * var(--u)); font-weight: 300; color: #A1A1A1; transition: background-color .5s ease, color .5s ease; }
.as-sv1-vc-sabati b { width: calc(66 * var(--u)); font-family: var(--sv1-vc-n); font-weight: 500; font-size: calc(13.5 * var(--u)); letter-spacing: .12em; text-transform: uppercase; color: #8A8A8A; transition: color .5s ease; }
.as-sv1-vc-sabati li .as-sv1-ic { margin-left: auto; width: calc(18 * var(--u)); height: calc(18 * var(--u)); stroke-width: 1.8; opacity: 0; transform: scale(.5); transition: opacity .3s ease .25s, transform .45s cubic-bezier(.34, 1.56, .64, 1) .25s; }
.as-sv1-vc-sabati li small { flex-basis: 100%; max-height: 0; overflow: hidden; padding-left: calc(82 * var(--u)); font-family: var(--sv1-sys); font-size: calc(12.5 * var(--u)); letter-spacing: 0; color: rgba(255, 255, 255, .68); transition: max-height .45s ease .35s, margin .45s ease .35s; }
.as-sv1-vc-stato .is-dopo { display: none; }
.as-sv1__regia.is-libera .as-sv1-vc-sabati li.is-bersaglio { background: #171717; border-bottom-color: #171717; color: #fff; }
.as-sv1__regia.is-libera .as-sv1-vc-sabati li.is-bersaglio b { color: #fff; }
.as-sv1__regia.is-libera .as-sv1-vc-sabati li.is-bersaglio .as-sv1-ic { opacity: 1; transform: none; }
.as-sv1__regia.is-libera .as-sv1-vc-sabati li.is-bersaglio small { max-height: calc(24 * var(--u)); margin-top: calc(4 * var(--u)); }
.as-sv1__regia.is-libera .as-sv1-vc-stato .is-prima { display: none; }
.as-sv1__regia.is-libera .as-sv1-vc-stato .is-dopo { display: inline; }
.as-sv1-vc-cta { display: flex; align-items: center; justify-content: center; gap: calc(12 * var(--u)); height: calc(56 * var(--u)); margin-top: calc(24 * var(--u)) !important; background: #171717; color: #fff; font-size: calc(11.5 * var(--u)); font-weight: 400; letter-spacing: .24em; text-transform: uppercase; }
.as-sv1-vc-cta .as-sv1-ic { width: calc(16 * var(--u)); height: calc(16 * var(--u)); stroke-width: 1.3; }
.as-sv1-vc-nota { margin-top: calc(16 * var(--u)) !important; font-size: calc(12 * var(--u)); font-weight: 300; text-align: center; color: #9A9A9A; }
/* la home della villa: la foto scura a tutto schermo, il titolo sottilissimo */
.as-sv1-pg.is-home { background: #1E231D; color: #fff; font-family: var(--sv1-vc); text-align: center; }
.as-sv1-vc-hero { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; filter: saturate(.74) brightness(.84) contrast(1.05); }
.as-sv1-pg.is-home::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12, 12, 12, .46) 0%, rgba(12, 12, 12, .14) 24%, rgba(12, 12, 12, .3) 50%, rgba(12, 12, 12, .7) 80%, rgba(12, 12, 12, .84) 100%); }
.as-sv1-pg.is-home > p { position: absolute; z-index: 1; left: 0; right: 0; }
.as-sv1-pg.is-home .as-sv1-vc-testa { z-index: 2; }
.as-sv1-vc-eti.is-chiara { top: calc(510 * var(--u)); color: rgba(255, 255, 255, .84); } /* sotto il titolo: niente sopratitoli, nemmeno nei mockup */
.as-sv1-vc-h1 { top: calc(372 * var(--u)); font-weight: 100; font-size: calc(52 * var(--u)); line-height: 1.02; letter-spacing: -.035em; }
.as-sv1-vc-h1 em { font-style: italic; font-weight: 200; }
.as-sv1-vc-btn { bottom: calc(118 * var(--u)); display: flex; align-items: center; justify-content: center; gap: calc(12 * var(--u)); width: fit-content; height: calc(52 * var(--u)); margin: 0 auto !important; padding: 0 calc(26 * var(--u)); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .7); font-size: calc(11.5 * var(--u)); letter-spacing: .24em; text-transform: uppercase; }
.as-sv1-vc-btn .as-sv1-ic { width: calc(16 * var(--u)); height: calc(16 * var(--u)); stroke-width: 1.3; }
/* Google da telefono (Arial e i colori veri; «Google» scritto e basta, niente logo) */
.as-sv1-g { position: absolute; inset: 0; padding-top: calc(62 * var(--u)); background: #fff; color: #202124; font-family: Arial, 'Helvetica Neue', sans-serif; }
.as-sv1-g__testa { display: grid; grid-template-columns: calc(40 * var(--u)) 1fr calc(40 * var(--u)); align-items: center; height: calc(52 * var(--u)); padding: 0 calc(16 * var(--u)); }
.as-sv1-g__menu { display: grid; gap: calc(4 * var(--u)); }
.as-sv1-g__menu i { width: calc(20 * var(--u)); height: calc(2 * var(--u)); border-radius: 2px; background: #5F6368; }
.as-sv1-g__marchio { justify-self: center; font-size: calc(26 * var(--u)); letter-spacing: -.02em; color: #3C4043; }
.as-sv1-g__io { justify-self: end; width: calc(32 * var(--u)); height: calc(32 * var(--u)); overflow: hidden; border-radius: 50%; }
.as-sv1-g__io img { width: 100%; height: 100%; object-fit: cover; }
.as-sv1-g__barra { display: flex; align-items: center; gap: calc(12 * var(--u)); height: calc(48 * var(--u)); margin: calc(6 * var(--u)) calc(16 * var(--u)) 0 !important; padding: 0 calc(16 * var(--u)); border-radius: 999px; box-shadow: 0 calc(1 * var(--u)) calc(6 * var(--u)) rgba(32, 33, 36, .22); font-size: calc(17 * var(--u)); }
.as-sv1-g__barra span { flex: 1; }
.as-sv1-g__barra .as-sv1-ic { width: calc(20 * var(--u)); height: calc(20 * var(--u)); color: #5F6368; }
.as-sv1-g__schede { display: flex; gap: calc(22 * var(--u)); margin-top: calc(10 * var(--u)) !important; padding: 0 calc(18 * var(--u)); border-bottom: 1px solid #EBEBEB; font-size: calc(14 * var(--u)); color: #5F6368; white-space: nowrap; }
.as-sv1-g__schede span { padding: calc(12 * var(--u)) 0 calc(10 * var(--u)); }
.as-sv1-g__schede .is-on { box-shadow: inset 0 calc(-3 * var(--u)) 0 #202124; color: #202124; font-weight: 700; }
.as-sv1-g__ris { display: grid; gap: calc(6 * var(--u)); margin: 0 calc(10 * var(--u)); padding: calc(16 * var(--u)) calc(8 * var(--u)) calc(16 * var(--u)); border-bottom: calc(8 * var(--u)) solid #F1F3F4; border-radius: calc(12 * var(--u)); transition: background-color .25s ease; }
.as-sv1-g__sito { display: flex; align-items: center; gap: calc(10 * var(--u)); }
.as-sv1-g__sito > span:nth-child(2) { flex: 1; display: grid; gap: calc(2 * var(--u)); min-width: 0; }
.as-sv1-g__sito b { font-size: calc(14 * var(--u)); font-weight: 400; color: #202124; }
.as-sv1-g__sito small { overflow: hidden; font-size: calc(12 * var(--u)); color: #4D5156; white-space: nowrap; text-overflow: ellipsis; }
.as-sv1-g__sito > .as-sv1-ic { width: calc(18 * var(--u)); height: calc(18 * var(--u)); color: #70757A; }
.as-sv1-g__fav { display: grid; place-items: center; flex: none; width: calc(30 * var(--u)); height: calc(30 * var(--u)); overflow: hidden; border-radius: 50%; box-shadow: 0 0 0 calc(1 * var(--u)) #E3E3E3; }
.as-sv1-g__fav .as-lg { width: 100%; height: 100%; }
.as-sv1-g__tit { font-size: calc(20 * var(--u)); line-height: 1.3; color: #1A0DAB; transition: color .3s ease; }
.as-sv1__regia.is-visitato .as-sv1-g__ris.is-primo .as-sv1-g__tit { color: #681DA8; }
.as-sv1-g__desc { font-size: calc(14.5 * var(--u)); line-height: 1.5; color: #4D5156; }
.as-sv1-g__link { display: flex; gap: calc(8 * var(--u)); margin-top: calc(4 * var(--u)) !important; }
.as-sv1-g__link span { padding: calc(8 * var(--u)) calc(14 * var(--u)); border-radius: 999px; box-shadow: inset 0 0 0 calc(1 * var(--u)) #DADCE0; font-size: calc(13.5 * var(--u)); color: #1A0DAB; }
.as-sv1__regia.is-visitato .as-sv1-g__ris.is-primo { background: #F1F3F4; }
/* la barra di Safari (iOS 26): due tondi e la capsula col dominio; per scrivere diventa il campo sopra la tastiera */
.as-sv1-sf__velo { position: absolute; z-index: 6; inset: 0; background: rgba(0, 0, 0, .28); opacity: 0; pointer-events: none; transition: opacity .3s ease; }
.as-sv1__regia.is-barra .as-sv1-sf__velo { opacity: 1; }
.as-sv1-sf__barra { position: absolute; z-index: 7; left: calc(14 * var(--u)); right: calc(14 * var(--u)); bottom: calc(24 * var(--u)); display: flex; align-items: center; gap: calc(8 * var(--u)); height: calc(48 * var(--u)); transition: bottom .38s cubic-bezier(.2, .8, .2, 1); }
.as-sv1-sf__tondo, .as-sv1-sf__capsula { height: calc(48 * var(--u)); border-radius: calc(24 * var(--u)); background: rgba(255, 255, 255, .9); box-shadow: inset 0 calc(.8 * var(--u)) 0 rgba(255, 255, 255, .9), 0 0 0 calc(.5 * var(--u)) rgba(15, 15, 16, .1), 0 calc(8 * var(--u)) calc(22 * var(--u)) calc(-8 * var(--u)) rgba(15, 15, 16, .35); color: #111; transition: opacity .25s ease, width .3s ease; }
.as-sv1-sf__tondo { display: grid; place-items: center; flex: none; width: calc(48 * var(--u)); }
.as-sv1-sf__capsula { position: relative; flex: 1; display: flex; align-items: center; justify-content: center; overflow: hidden; font-size: calc(16 * var(--u)); letter-spacing: -.012em; }
.as-sv1-sf__dom { display: flex; align-items: center; gap: calc(5 * var(--u)); }
.as-sv1-sf__dom .as-sv1-ic { width: calc(13 * var(--u)); height: calc(13 * var(--u)); opacity: .7; stroke-width: 2.2; }
.as-sv1-sf__dom.is-google, .as-sv1-sf__campo { display: none; }
.as-sv1__regia.is-google:not(.is-home) .as-sv1-sf__dom.is-google { display: flex; }
.as-sv1__regia.is-google:not(.is-home) .as-sv1-sf__dom.is-villa { display: none; }
.as-sv1-sf__campo { flex: 1; align-items: center; gap: calc(8 * var(--u)); padding: 0 calc(16 * var(--u)); color: #000; font-size: calc(17 * var(--u)); }
.as-sv1-sf__campo .as-sv1-ic { width: calc(18 * var(--u)); height: calc(18 * var(--u)); color: #8E8E93; stroke-width: 2.2; }
.as-sv1-sf__digita { white-space: nowrap; }
.as-sv1__regia.is-barra .as-sv1-sf__barra { bottom: calc(312 * var(--u)); }
.as-sv1__regia.is-barra .as-sv1-sf__tondo { display: none; }
.as-sv1__regia.is-barra .as-sv1-sf__capsula { justify-content: flex-start; background: #fff; }
.as-sv1__regia.is-barra .as-sv1-sf__dom { display: none !important; }
.as-sv1__regia.is-barra .as-sv1-sf__campo { display: flex; }
/* il caricamento: la linea blu nella capsula, che corre in 0,9 s */
.as-sv1-sf__carica { position: absolute; left: calc(18 * var(--u)); right: calc(18 * var(--u)); bottom: calc(5 * var(--u)); height: calc(2.5 * var(--u)); border-radius: 2px; background: var(--sv1-blu); transform-origin: 0 50%; transform: scaleX(0); opacity: 0; }
.as-sv1__regia.is-carica .as-sv1-sf__carica { opacity: 1; transform: scaleX(1); transition: transform .9s cubic-bezier(.3, .6, .4, 1), opacity .1s ease; }

/* LA TASTIERA di iOS 26 (dal salone): esce solo mentre si scrive */
.as-sv1-kb { position: absolute; z-index: 11; left: 0; right: 0; bottom: 0; height: calc(300 * var(--u)); padding: calc(6 * var(--u)) calc(3 * var(--u)) 0; border-radius: calc(30 * var(--u)) calc(30 * var(--u)) 0 0; background: #D6D8DE; box-shadow: 0 calc(-.5 * var(--u)) 0 rgba(0, 0, 0, .1); color: #000; transform: translateY(105%); transition: transform .38s cubic-bezier(.2, .8, .2, 1); }
.as-sv1__regia.is-tastiera .as-sv1-kb { transform: none; }
.as-sv1-kb__sugg { display: flex; height: calc(40 * var(--u)); margin: 0 calc(8 * var(--u)) calc(6 * var(--u)) !important; }
.as-sv1-kb__sugg span { flex: 1; display: grid; place-items: center; font-size: calc(16 * var(--u)); }
.as-sv1-kb__sugg span + span { box-shadow: calc(-.5 * var(--u)) 0 0 rgba(0, 0, 0, .16); }
.as-sv1-kb__fila { display: flex; justify-content: center; gap: calc(6 * var(--u)); margin-bottom: calc(11 * var(--u)) !important; }
.as-sv1-kb__fila span { display: grid; place-items: center; width: calc(33.6 * var(--u)); height: calc(42 * var(--u)); border-radius: calc(9 * var(--u)); background: #fff; box-shadow: 0 calc(1 * var(--u)) 0 rgba(0, 0, 0, .26); font-size: calc(22 * var(--u)); line-height: 1; }
.as-sv1-kb__fila.is-2 { padding: 0 calc(18 * var(--u)); }
.as-sv1-kb__fila .is-mod { width: calc(44 * var(--u)); background: #B8BDC6; font-size: calc(15 * var(--u)); }
.as-sv1-kb__fila .is-maiusc { margin-right: calc(10 * var(--u)); }
.as-sv1-kb__fila .is-canc { margin-left: calc(10 * var(--u)); }
.as-sv1-kb__fila.is-4 .is-mod { width: calc(88 * var(--u)); }
.as-sv1-kb__fila .is-spazio { flex: 1; max-width: calc(192 * var(--u)); font-size: calc(15 * var(--u)); }
.as-sv1-kb__fila .is-invio b { font-weight: 400; }
.as-sv1-kb__fila .is-invio .is-sf { display: none; }
.as-sv1__regia.is-barra .as-sv1-kb__fila .is-invio { background: var(--sv1-blu); color: #fff; }
.as-sv1__regia.is-barra .as-sv1-kb__fila .is-invio .is-sf { display: inline; }
.as-sv1__regia.is-barra .as-sv1-kb__fila .is-invio .is-ms { display: none; }

/* IL DITO: un tocco di vetro (dal salone) */
.as-sv1-dito { position: absolute; z-index: 30; left: 0; top: 0; width: calc(46 * var(--u)); height: calc(46 * var(--u)); margin: calc(-23 * var(--u)) 0 0 calc(-23 * var(--u)); border-radius: 50%; background: rgba(255, 255, 255, .55); box-shadow: inset 0 0 0 calc(1.5 * var(--u)) rgba(255, 255, 255, .95), 0 0 0 calc(.75 * var(--u)) rgba(20, 20, 20, .22), 0 calc(3 * var(--u)) calc(10 * var(--u)) rgba(0, 0, 0, .24); opacity: 0; pointer-events: none; transform: translate(var(--tx, 200px), var(--ty, 600px)) scale(.7); transition: transform .55s cubic-bezier(.45, 0, .2, 1), opacity .25s ease; }
.as-sv1-dito.is-su { opacity: 1; transform: translate(var(--tx, 200px), var(--ty, 600px)); }
.as-sv1-dito.is-premi { animation: as-sv1-premi .42s ease; }
@keyframes as-sv1-premi { 40% { transform: translate(var(--tx), var(--ty)) scale(.8); background: rgba(255, 255, 255, .75); } }
/* l'ora della barra di stato: la sera, poi la mattina dopo */
.as-sv1__regia.is-mattina .as-sv1__tel .as-disp__ora > [data-mondo-di="sera"] { display: none; }
.as-sv1__regia.is-mattina .as-sv1__tel .as-disp__ora > [data-mondo-di="mattina"] { display: inline; }
/* sulla home scura della villa la barra di stato e la barra home diventano bianche */
.as-sv1__regia.is-home .as-sv1__tel :is(.as-disp__stato) { color: #fff; }
.as-sv1__regia.is-home .as-sv1__tel .as-iphone__home { background: rgba(255, 255, 255, .9); }

/* ══ IL MAC DELLA VILLA: Anteprima col preventivo, Safari col dominio ══ */
.as-sv1-c { position: absolute; inset: 0; color: #1D1D1F; font-family: var(--sv1-sys); -webkit-font-smoothing: antialiased; }
.as-sv1-c *, .as-sv1-c *::before, .as-sv1-c *::after { box-sizing: border-box; }
.as-sv1-c p, .as-sv1-c dl, .as-sv1-c dd { margin: 0; }
.as-sv1-c :is(b, small, em, i) { font-style: normal; }
.as-sv1-c .as-sv1-ic { width: calc(20 * var(--u)); height: calc(20 * var(--u)); }
/* la barra dei menu dice «Anteprima» finché Anteprima è davanti (copre il nome del kit, mai la tacca) */
.as-sv1-c__menu-app { position: absolute; z-index: 32; left: 0; top: calc(-37 * var(--u)); display: flex; align-items: center; gap: calc(19 * var(--u)); width: calc(640 * var(--u)); height: calc(37 * var(--u)); padding-left: calc(20 * var(--u)); background: rgb(236, 236, 239); font: 500 calc(13 * var(--u)) / 1 var(--sv1-sys); color: rgba(0, 0, 0, .86); white-space: nowrap; pointer-events: none; transition: opacity .15s ease; }
.as-sv1-c__menu-app b { font-weight: 700; }
.as-sv1__regia.is-dominio .as-sv1-c__menu-app { opacity: 0; }
.as-sv1-c__sfondo { position: absolute; inset: 0; background:
	radial-gradient(48% 60% at 8% 92%, rgba(255, 176, 150, .9), rgba(255, 176, 150, 0) 70%),
	radial-gradient(44% 58% at 34% 8%, rgba(255, 160, 200, .75), rgba(255, 160, 200, 0) 70%),
	radial-gradient(50% 62% at 96% 18%, rgba(132, 186, 255, .9), rgba(132, 186, 255, 0) 70%),
	radial-gradient(46% 56% at 74% 100%, rgba(180, 158, 255, .85), rgba(180, 158, 255, 0) 70%),
	linear-gradient(135deg, #F6E9F1, #E4ECFB); }
/* le finestre */
.as-sv1-c__fin { position: absolute; overflow: hidden; border-radius: calc(16 * var(--u)); background: #fff; box-shadow: 0 0 0 calc(.6 * var(--u)) rgba(0, 0, 0, .16), 0 calc(26 * var(--u)) calc(60 * var(--u)) calc(-16 * var(--u)) rgba(30, 20, 60, .42); transition: transform .4s cubic-bezier(.3, .8, .2, 1); }
.as-sv1-c__fin.is-pdf { z-index: 2; left: calc(34 * var(--u)); top: calc(46 * var(--u)); width: calc(900 * var(--u)); height: calc(826 * var(--u)); }
.as-sv1-c__fin.is-safari { z-index: 1; left: calc(562 * var(--u)); top: calc(62 * var(--u)); width: calc(916 * var(--u)); height: calc(850 * var(--u)); }
.as-sv1__regia.is-dominio .as-sv1-c__fin.is-safari { z-index: 3; }
.as-sv1-c__barra { display: flex; align-items: center; gap: calc(16 * var(--u)); height: calc(54 * var(--u)); padding: 0 calc(18 * var(--u)); background: #F6F6F7; box-shadow: 0 calc(.6 * var(--u)) 0 rgba(0, 0, 0, .1); color: #6E6E73; }
.as-sv1-c__barra .as-sv1-c__ico { display: flex; gap: calc(14 * var(--u)); }
.as-sv1-c__luci { display: flex; gap: calc(8 * var(--u)); margin-right: calc(6 * var(--u)); }
.as-sv1-c__luci i { width: calc(13 * var(--u)); height: calc(13 * var(--u)); border-radius: 50%; background: #D1D1D6; box-shadow: inset 0 0 0 calc(.5 * var(--u)) rgba(0, 0, 0, .1); }
.as-sv1-c__url { flex: 1; display: flex; align-items: center; justify-content: center; gap: calc(6 * var(--u)); height: calc(34 * var(--u)); margin: 0 calc(10 * var(--u)) !important; border-radius: calc(10 * var(--u)); background: rgba(0, 0, 0, .05); font-size: calc(15 * var(--u)); color: #1D1D1F; }
.as-sv1-c__url .as-sv1-ic { width: calc(13 * var(--u)); height: calc(13 * var(--u)); stroke-width: 2.2; color: #6E6E73; }
.as-sv1-c__titolo { flex: 1; display: grid; gap: calc(1 * var(--u)); }
.as-sv1-c__titolo b { font-size: calc(15 * var(--u)); font-weight: 600; color: #1D1D1F; }
.as-sv1-c__titolo small { font-size: calc(12 * var(--u)); color: #8E8E93; }
.as-sv1-c__firma-btn { display: flex; align-items: center; gap: calc(7 * var(--u)); height: calc(34 * var(--u)); padding: 0 calc(14 * var(--u)) 0 calc(11 * var(--u)); border-radius: calc(10 * var(--u)); background: rgba(0, 0, 0, .05); font-size: calc(15 * var(--u)); font-weight: 500; color: #1D1D1F; transition: background-color .25s ease, color .25s ease; }
.as-sv1-c__firma-btn .as-sv1-ic { width: calc(22 * var(--u)); height: calc(22 * var(--u)); }
.as-sv1__regia.is-firma .as-sv1-c__firma-btn { background: var(--sv1-blu); color: #fff; }
/* il preventivo, voce per voce (niente cifre: la regola della pagina) */
.as-sv1-pdf { position: absolute; top: calc(54 * var(--u)); left: 0; right: 0; bottom: 0; display: grid; justify-items: center; align-content: start; padding-top: calc(26 * var(--u)); background: #E7E7EA; }
.as-sv1-pdf__foglio { width: calc(770 * var(--u)); padding: calc(42 * var(--u)) calc(52 * var(--u)) calc(38 * var(--u)); background: #fff; box-shadow: 0 calc(1 * var(--u)) calc(3 * var(--u)) rgba(0, 0, 0, .12), 0 calc(10 * var(--u)) calc(30 * var(--u)) rgba(0, 0, 0, .08); color: #1A1A1A; font-family: var(--as-font, 'Archivo', sans-serif); }
.as-sv1-pdf__testa { display: flex; justify-content: space-between; align-items: flex-start; padding-bottom: calc(20 * var(--u)); border-bottom: calc(1.5 * var(--u)) solid #0A0A0A; }
.as-sv1-pdf__studio { display: flex; align-items: center; gap: calc(12 * var(--u)); }
.as-sv1-pdf__studio img { width: calc(44 * var(--u)); height: auto; }
.as-sv1-pdf__studio span, .as-sv1-pdf__n { display: grid; gap: calc(3 * var(--u)); }
.as-sv1-pdf__studio b { font-size: calc(24 * var(--u)); font-weight: 600; letter-spacing: -.02em; }
.as-sv1-pdf__studio small, .as-sv1-pdf__n small { font-size: calc(15 * var(--u)); color: #6B6B6B; }
.as-sv1-pdf__n { text-align: right; }
.as-sv1-pdf__n b { font-size: calc(21 * var(--u)); font-weight: 500; }
.as-sv1-pdf__per { display: grid; gap: calc(4 * var(--u)); margin-top: calc(22 * var(--u)) !important; }
.as-sv1-pdf__per small { font-size: calc(14 * var(--u)); letter-spacing: .12em; text-transform: uppercase; color: #8A8A8A; }
.as-sv1-pdf__per b { font-size: calc(27 * var(--u)); font-weight: 500; letter-spacing: -.02em; }
.as-sv1-pdf__per span { font-size: calc(18.5 * var(--u)); color: #4A4A4A; }
.as-sv1-pdf__tab { width: 100%; margin-top: calc(22 * var(--u)); border-collapse: collapse; font-size: calc(18.5 * var(--u)); }
.as-sv1-pdf__tab th { padding: 0 0 calc(10 * var(--u)); border-bottom: 1px solid #DCDCDC; font-size: calc(13.5 * var(--u)); font-weight: 500; letter-spacing: .12em; text-align: left; text-transform: uppercase; color: #8A8A8A; }
.as-sv1-pdf__tab td { padding: calc(15 * var(--u)) 0; border-bottom: 1px solid #ECECEC; line-height: 1.3; }
.as-sv1-pdf__tab :is(th, td):last-child { width: calc(165 * var(--u)); text-align: right; white-space: nowrap; color: #4A4A4A; }
.as-sv1-pdf__patto { display: flex; align-items: center; gap: calc(10 * var(--u)); margin-top: calc(18 * var(--u)) !important; font-size: calc(17.5 * var(--u)); color: #1A1A1A; }
.as-sv1-pdf__patto .as-sv1-ic { width: calc(20 * var(--u)); height: calc(20 * var(--u)); stroke-width: 2.2; color: #1E8E4E; }
.as-sv1-pdf__firme { display: flex; align-items: flex-end; justify-content: space-between; gap: calc(20 * var(--u)); margin-top: calc(26 * var(--u)); }
.as-sv1-pdf__casella { display: grid; gap: calc(4 * var(--u)); width: calc(320 * var(--u)); padding-bottom: calc(8 * var(--u)); border-bottom: 1px solid #1A1A1A; }
.as-sv1-pdf__casella small { font-size: calc(14 * var(--u)); letter-spacing: .1em; text-transform: uppercase; color: #8A8A8A; }
.as-sv1-pdf__casella span { font-size: calc(15 * var(--u)); color: #6B6B6B; }
.as-sv1-pdf__segno { width: calc(240 * var(--u)); height: calc(70 * var(--u)); fill: none; stroke: #1D3A8A; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.as-sv1-pdf__segno path { stroke-dasharray: 1; stroke-dashoffset: 1; }
.as-sv1__regia.is-firma .as-sv1-pdf__segno path { stroke-dashoffset: 0; transition: stroke-dashoffset 1.3s cubic-bezier(.4, .1, .3, 1); }
.as-sv1-pdf__timbro { display: flex; align-items: center; gap: calc(8 * var(--u)); padding: calc(9 * var(--u)) calc(14 * var(--u)); border-radius: 999px; background: #E6F4EA; font-size: calc(15.5 * var(--u)); font-weight: 500; color: #1B6E3B; opacity: 0; transform: translateY(calc(8 * var(--u))) scale(.9); }
.as-sv1-pdf__timbro .as-sv1-ic { width: calc(17 * var(--u)); height: calc(17 * var(--u)); stroke-width: 2.4; }
.as-sv1__regia.is-firma .as-sv1-pdf__timbro { opacity: 1; transform: none; transition: opacity .35s ease 1.2s, transform .5s cubic-bezier(.34, 1.56, .64, 1) 1.2s; }
/* il pannello del dominio (un registrar inventato), intestato alla villa */
.as-sv1-reg { position: absolute; top: calc(54 * var(--u)); left: 0; right: 0; bottom: 0; padding: calc(26 * var(--u)) calc(40 * var(--u)); background: #FAFAFB; font-family: var(--sv1-sys); }
.as-sv1-reg__marchio { display: flex; align-items: center; gap: calc(14 * var(--u)); padding-bottom: calc(18 * var(--u)); border-bottom: 1px solid #ECECEF; font-size: calc(14 * var(--u)); color: #6E6E73; }
.as-sv1-reg__marchio b { font-size: calc(22 * var(--u)); font-weight: 700; letter-spacing: -.03em; color: #0E6E5C; }
.as-sv1-reg__marchio b span { color: #1D1D1F; font-weight: 500; }
.as-sv1-reg__io { display: flex; align-items: center; gap: calc(8 * var(--u)); margin-left: auto; color: #1D1D1F; }
.as-sv1-reg__io img, .as-sv1-reg__av img { width: calc(28 * var(--u)); height: calc(28 * var(--u)); border-radius: 50%; object-fit: cover; }
.as-sv1-reg__bc { display: flex; align-items: center; gap: calc(6 * var(--u)); margin-top: calc(22 * var(--u)) !important; font-size: calc(15 * var(--u)); color: #6E6E73; }
.as-sv1-reg__bc .as-sv1-ic { width: calc(14 * var(--u)); height: calc(14 * var(--u)); }
.as-sv1-reg__h { display: flex; align-items: center; gap: calc(14 * var(--u)); margin-top: calc(8 * var(--u)) !important; }
.as-sv1-reg__h b { font-size: calc(36 * var(--u)); font-weight: 600; letter-spacing: -.03em; color: #1D1D1F; }
.as-sv1-reg__h span { display: flex; align-items: center; gap: calc(7 * var(--u)); padding: calc(6 * var(--u)) calc(12 * var(--u)); border-radius: 999px; background: #E6F4EA; font-size: calc(14 * var(--u)); font-weight: 500; color: #1B6E3B; }
.as-sv1-reg__h span i { width: calc(8 * var(--u)); height: calc(8 * var(--u)); border-radius: 50%; background: #1E8E4E; }
.as-sv1-reg__dati { margin-top: calc(20 * var(--u)) !important; overflow: hidden; border-radius: calc(16 * var(--u)); background: #fff; box-shadow: 0 0 0 1px #ECECEF; }
@supports (corner-shape: squircle) { .as-sv1-reg__dati { corner-shape: squircle; border-radius: calc(26 * var(--u)); } }
.as-sv1-reg__dati > div { display: grid; grid-template-columns: calc(250 * var(--u)) 1fr; align-items: center; min-height: calc(64 * var(--u)); padding: calc(12 * var(--u)) calc(22 * var(--u)); border-bottom: 1px solid #F0F0F2; transition: background-color .5s ease; }
.as-sv1-reg__dati > div:last-child { border-bottom: 0; }
.as-sv1-reg__dati dt { font-size: calc(15.5 * var(--u)); color: #6E6E73; }
.as-sv1-reg__dati dd { display: flex; align-items: center; flex-wrap: wrap; gap: calc(10 * var(--u)); font-size: calc(19 * var(--u)); color: #1D1D1F; }
.as-sv1-reg__dati dd b { font-weight: 600; }
.as-sv1__regia.is-dominio .as-sv1-reg__dati > div.is-chi { background: #EEF8F1; transition-delay: .6s; }
.as-sv1-reg__dati code { display: grid; font: 500 calc(19 * var(--u)) / 1.2 var(--sv1-sys); letter-spacing: .06em; font-variant-numeric: tabular-nums; }
.as-sv1-reg__dati code > span { grid-area: 1 / 1; transition: opacity .3s ease; }
.as-sv1-reg__dati code .is-dopo { opacity: 0; }
.as-sv1__regia.is-codice .as-sv1-reg__dati code .is-prima { opacity: 0; }
.as-sv1__regia.is-codice .as-sv1-reg__dati code .is-dopo { opacity: 1; }
.as-sv1__regia.is-codice .as-sv1-reg__dati > div.is-codice { background: #EEF4FF; }
.as-sv1-reg__mostra { display: flex; align-items: center; gap: calc(6 * var(--u)); margin-left: auto; padding: calc(7 * var(--u)) calc(12 * var(--u)); border-radius: calc(9 * var(--u)); font-size: calc(15 * var(--u)); color: #0A66D8; }
.as-sv1-reg__mostra .as-sv1-ic { width: calc(18 * var(--u)); height: calc(18 * var(--u)); }
.as-sv1-reg__rinnovo { display: flex; align-items: center; gap: calc(6 * var(--u)); font-size: calc(14 * var(--u)); color: #1B6E3B; }
.as-sv1-reg__rinnovo .as-sv1-ic { width: calc(15 * var(--u)); height: calc(15 * var(--u)); }
.as-sv1-reg__av { display: inline-flex; }
.as-sv1-reg__nota { margin-top: calc(16 * var(--u)) !important; font-size: calc(15 * var(--u)); color: #6E6E73; }
/* il puntatore (come la posta): va sul bottone e clicca, con l'anello */
.as-sv1-punt { position: absolute; z-index: 9; left: 0; top: 0; width: calc(26 * var(--u)); height: calc(34 * var(--u)); pointer-events: none; opacity: 0; transform: translate(var(--px, 60%), var(--py, 90%)); transition: transform .85s cubic-bezier(.45, 0, .2, 1), opacity .3s ease; }
.as-sv1-punt svg { display: block; width: 100%; height: 100%; fill: #000; stroke: #fff; stroke-width: 1.4; stroke-linejoin: round; }
.as-sv1-punt.is-su { opacity: 1; }
.as-sv1-punt::before { content: ""; position: absolute; left: calc(-16 * var(--u)); top: calc(-16 * var(--u)); width: calc(34 * var(--u)); height: calc(34 * var(--u)); border-radius: 50%; background: rgba(10, 132, 255, .32); opacity: 0; transform: scale(.3); }
.as-sv1-punt.is-clic::before { animation: as-sv1-clic .5s ease-out; }
@keyframes as-sv1-clic { 0% { opacity: 1; transform: scale(.3); } 100% { opacity: 0; transform: scale(1.4); } }

/* ══ I CAPITOLI, sotto la scena (come la posta, sul chiaro) ══ */
.as-sv1-cap { position: relative; margin-top: clamp(20px, 2.4vw, 32px); }
.as-sv1 .as-sv1-cap__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.as-sv1-cap__btn { appearance: none; display: grid; align-content: start; gap: 6px; width: 100%; margin: 0; padding: 0; border: 0; background: none; color: var(--as-ink, #0A0A0A); font: inherit; text-align: left; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.as-sv1-cap__btn:focus-visible { outline: 2px solid var(--as-arancio, #F37022); outline-offset: 6px; border-radius: 8px; }
.as-sv1-cap__barra { display: block; height: 3px; margin-bottom: 12px; overflow: hidden; border-radius: 3px; background: var(--as-line, rgba(10, 10, 10, .12)); }
.as-sv1-cap__barra i { display: block; height: 100%; border-radius: inherit; background: var(--as-arancio, #F37022); transform-origin: 0 50%; transform: scaleX(var(--p, 1)); }
.as-sv1-cap__n { font-size: 13px; color: var(--as-muted, rgba(10, 10, 10, .6)); font-variant-numeric: tabular-nums; transition: color .35s ease; }
.as-sv1-cap__testo { display: grid; gap: 6px; }
.as-sv1-cap__t { font-size: 19px; font-weight: 500; line-height: 1.25; letter-spacing: -.01em; text-wrap: balance; }
.as-sv1-cap__r { font-size: 15px; line-height: 1.45; color: var(--as-muted, rgba(10, 10, 10, .6)); text-wrap: pretty; }
.as-sv1-cap.is-viva .as-sv1-cap__btn { color: rgba(10, 10, 10, .36); transition: color .35s ease; }
.as-sv1-cap.is-viva .as-sv1-cap__r { color: inherit; }
.as-sv1-cap.is-viva .as-sv1-cap__voce.is-on .as-sv1-cap__btn { color: var(--as-ink, #0A0A0A); }
.as-sv1-cap.is-viva .as-sv1-cap__voce.is-on .as-sv1-cap__r { color: var(--as-muted, rgba(10, 10, 10, .6)); }
.as-sv1-cap.is-viva .as-sv1-cap__voce:is(.is-on, .is-fatto) .as-sv1-cap__n { color: var(--as-arancio, #F37022); }
@media (hover: hover) { .as-sv1-cap.is-viva .as-sv1-cap__btn:hover { color: var(--as-ink, #0A0A0A); } }
.as-sv1-cap__rivedi { position: absolute; z-index: 3; right: 18px; top: -70px; display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 16px 0 12px; border: 0; border-radius: 999px; background: var(--as-ink, #0A0A0A); color: #fff; font: inherit; font-size: 14px; font-weight: 500; cursor: pointer; opacity: 0; transform: translateY(8px); pointer-events: none; transition: opacity .35s ease, transform .45s cubic-bezier(.34, 1.56, .64, 1); }
.as-sv1-cap__rivedi svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.as-sv1-cap.is-finito .as-sv1-cap__rivedi { opacity: 1; transform: none; pointer-events: auto; }
.as-sv1-cap:not(.is-viva) .as-sv1-cap__rivedi { display: none; }
.as-sv1__nota { margin: 18px 0 0; font-size: 13px; color: var(--as-muted, rgba(10, 10, 10, .55)); }
@media (max-width: 999px) {
	.as-sv1 .as-sv1-cap__lista { gap: 20px; }
	.as-sv1-cap__t { font-size: 17px; }
	.as-sv1-cap__r { font-size: 14px; }
}
/* da telefono: quattro barre in fila come le storie e, sotto, UN capitolo alla volta che compare (come la posta) */
@media (max-width: 699px) {
	.as-sv1-cap { margin-top: 16px; }
	.as-sv1 .as-sv1-cap__lista { position: relative; gap: 6px; padding-bottom: 124px; }
	.as-sv1-cap__barra { margin-bottom: 0; }
	.as-sv1-cap__btn { gap: 0; padding: 10px 0; margin: -10px 0; }
	/* il numero e il testo stanno sotto le barre, a tutta larghezza; titolo e riga vanno a capo da soli (titolo su due righe a 375) */
	.as-sv1-cap__voce :is(.as-sv1-cap__n, .as-sv1-cap__testo) { position: absolute; visibility: hidden; opacity: 0; transform: translateY(-14px); transition: opacity .25s ease, transform .35s ease, visibility 0s .35s; }
	.as-sv1-cap__n { top: 26px; left: 0; width: 60px; font-size: 44px !important; font-weight: 300; line-height: 1; letter-spacing: -.045em; color: transparent !important; -webkit-text-stroke: 1px var(--as-arancio, #F37022); }
	.as-sv1-cap__testo { top: 28px; left: 66px; right: 0; gap: 4px; }
	.as-sv1-cap__t { font-size: 18px; }
	.as-sv1-cap__r { font-size: 14.5px; }
	.as-sv1-cap:not(.is-viva) .as-sv1-cap__lista { grid-template-columns: 1fr; gap: 18px; padding-bottom: 0; }
	.as-sv1-cap:not(.is-viva) .as-sv1-cap__voce :is(.as-sv1-cap__n, .as-sv1-cap__testo) { position: static; visibility: visible; opacity: 1; transform: none; }
	.as-sv1-cap:not(.is-viva) .as-sv1-cap__n { width: auto; font-size: 13px !important; color: var(--as-muted, rgba(10, 10, 10, .6)) !important; -webkit-text-stroke: 0; }
	.as-sv1-cap.is-viva .as-sv1-cap__voce.is-on :is(.as-sv1-cap__n, .as-sv1-cap__testo) { visibility: visible; opacity: 1; transform: none; transition: none; }
	.as-sv1-cap.is-viva .as-sv1-cap__voce.is-on :is(.as-sv1-cap__n, .as-sv1-cap__t, .as-sv1-cap__r) { animation: as-sv1-sale .75s cubic-bezier(.2, .8, .2, 1) both; }
	.as-sv1-cap.is-viva .as-sv1-cap__voce.is-on .as-sv1-cap__t { animation-delay: .14s; }
	.as-sv1-cap.is-viva .as-sv1-cap__voce.is-on .as-sv1-cap__r { animation-delay: .28s; }
	.as-sv1-cap__rivedi { top: -56px; right: 12px; height: 36px; font-size: 13.5px; }
}
@keyframes as-sv1-sale { from { opacity: 0; transform: translateY(22px); } }
