


@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 300 700; font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 300 700; font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0300-0301, U+0303, U+0309, U+0323, U+1D00-1DBF, U+1E00-1E9F, U+1EA0-1EF9, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 300 700; font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-italic-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 300 700; font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-italic-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0300-0301, U+0303, U+0309, U+0323, U+1D00-1DBF, U+1E00-1E9F, U+1EA0-1EF9, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 300 800; font-display: swap;
  src: url('/assets/fonts/archivo-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 300 800; font-display: swap;
  src: url('/assets/fonts/archivo-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0300-0301, U+0303, U+0309, U+0323, U+1D00-1DBF, U+1E00-1E9F, U+1EA0-1EF9, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }


:root {

  --noir: #0D0E10;
  --notte: #101B29;
  --avorio: #F2ECDF;
  --chiara: #FBF8F1;
  --oro: #C9A662;
  --oro-hover: #E3C57F;
  --oro-testo: #7A6229;
  --oro-chiaro: #B78E4E;
  --verde: #3A4F42;
  --caldo: #6E6758;
  --freddo: #83868D;
  --menu: #B7BAC0;
  --filetto-c: #DDD5C4;
  --filetto: #26282C;
  --campo: #33363B;
  --velo: rgba(13, 14, 16, .55);


  --luce: color-mix(in oklab, var(--avorio) 70%, var(--oro));
  --pozza: color-mix(in oklab, var(--luce) 14%, transparent);
  --riflesso: color-mix(in oklab, var(--avorio) 10%, transparent);
  --ombra-colore: color-mix(in oklab, var(--noir) 72%, transparent);
  --oro-velato: color-mix(in oklab, var(--oro) 8%, transparent);
  --carta-ombra: color-mix(in oklab, var(--noir) 22%, transparent);


  --fg: var(--avorio);
  --fg-corpo: color-mix(in oklab, var(--avorio) 86%, transparent);
  --fg-2: var(--freddo);
  --linea: var(--filetto);
  --linea-tratto: color-mix(in oklab, var(--avorio) 30%, transparent);
  --accento-testo: var(--oro);
  --fuoco: var(--oro);


  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans: 'Archivo', system-ui, sans-serif;
  --mono: ui-monospace, Consolas, monospace;


  --f-display: clamp(2.5rem, 1.7rem + 3.4vw, 4.75rem);

  --f-display-telefono: clamp(2.75rem, 14.4vw, 3.5rem);
  --f-voce-grande: clamp(1.625rem, 1.2rem + 1.6vw, 2.5rem);
  --f-h2: clamp(2rem, 1.55rem + 1.9vw, 3.25rem);
  --f-h3: clamp(1.375rem, 1.2rem + .6vw, 1.75rem);
  --f-voce: clamp(1.375rem, 1.15rem + 1vw, 2rem);
  --f-prezzo: clamp(3.5rem, 2.6rem + 3.6vw, 6rem);
  --f-lead: clamp(1.0625rem, 1rem + .25vw, 1.1875rem);
  --f-corpo: clamp(1rem, .97rem + .12vw, 1.0625rem);
  --f-didascalia: .9375rem;
  --f-etichetta: .75rem;
  --f-mono: .75rem;
  --lh-corpo: 1.7;
  --track-eti: .22em;
  --track-btn: .18em;
  --track-mono: .14em;


  --cols: 4;
  --margine: 20px;
  --gutter: 16px;
  --contenitore: 1280px;


  --s-1: 8px; --s-2: 16px; --s-3: 24px; --s-4: 32px; --s-6: 48px; --s-8: 64px; --s-12: 96px; --s-16: 128px;
  --sezione: clamp(64px, 40px + 6vw, 128px);


  --ombra-1: 1px 2px 4px var(--ombra-colore);
  --ombra-2: 6px 12px 24px var(--ombra-colore), 2px 4px 6px var(--ombra-colore);
  --ombra-3: 14px 28px 56px var(--ombra-colore);
  --ombra-carta: 1px 2px 4px var(--carta-ombra);

  --ombra-contatto: radial-gradient(ellipse 45% 50% at 54% 50%, var(--ombra-colore), transparent 72%);


  --r-0: 0;
  --r-tag: 10px;
  --r-invito: 12px;
  --r-telefono: 13.5% / 6.2%;


  --t-soffio: 200ms;
  --t-passo: 400ms;
  --t-tratto: 800ms;
  --t-firma: 2000ms;
  --ease-rotta: cubic-bezier(.65, 0, .35, 1);
  --ease-posa: cubic-bezier(.2, 0, 0, 1);
  --cascata: 80ms;
  --cascata-menu: 40ms;


  --z-fondo: 0; --z-oggetto: 1; --z-filo: 2; --z-didascalia: 3; --z-testata: 50; --z-menu: 60; --z-salto: 70;


  --h-testa: 64px;
  --tocco: 44px;
  --tocco-primario: 52px;
}
@media (min-width: 768px) {
  :root { --cols: 8; --margine: 40px; --gutter: 24px; }
}
@media (min-width: 1024px) {
  :root { --h-testa: 80px; --tocco-primario: 48px; }
}
@media (min-width: 1280px) {
  :root { --cols: 12; --margine: clamp(40px, 5.5vw, 80px); }
}


.chiaro {
  --fg: var(--noir);
  --fg-corpo: color-mix(in oklab, var(--noir) 88%, transparent);
  --fg-2: var(--caldo);
  --linea: var(--filetto-c);
  --linea-tratto: color-mix(in oklab, var(--noir) 34%, transparent);
  --accento-testo: var(--oro-testo);
  --fuoco: var(--noir);
  --ombra-colore: var(--carta-ombra);
  color: var(--fg);
}


*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--h-testa) + var(--s-2)); }
body { margin: 0; background: var(--noir); color: var(--fg); font: 400 var(--f-corpo)/var(--lh-corpo) var(--sans); overflow-x: clip;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
img, svg, picture { display: block; max-width: 100%; }
h1, h2, h3, p, ol, ul, dl, dd, figure, blockquote { margin: 0; }
ol, ul { padding: 0; list-style: none; }
a { color: inherit; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 1px solid var(--fuoco); outline-offset: 2px; }
::selection { background: color-mix(in oklab, var(--oro) 35%, transparent); }
h1, h2, h3 { text-wrap: balance; }
p, li, dd { text-wrap: pretty; }
.vh { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }


.salto { position: absolute; z-index: var(--z-salto); left: var(--margine); top: var(--s-1); display: inline-flex; align-items: center; min-height: var(--tocco);
  padding: 0 var(--s-2); background: var(--avorio); color: var(--noir); font: 600 var(--f-etichetta)/1 var(--sans); letter-spacing: var(--track-btn);
  text-transform: uppercase; text-decoration: none; transform: translateY(-200%); }
.salto:focus-visible { transform: none; outline-color: var(--noir); }


.contenitore { width: min(100% - 2 * var(--margine), var(--contenitore)); margin-inline: auto; }
.g { display: grid; grid-template-columns: repeat(var(--cols), minmax(0, 1fr)); column-gap: var(--gutter); }
.g > * { grid-column: 1 / -1; }

.sezione { position: relative; padding-block: var(--sezione); }
.fondo-noir { background: var(--noir); }
.fondo-notte { background: var(--notte); }
.fondo-avorio { background: var(--avorio); }
.fondo-chiara { background: var(--chiara); }


.t-display { font: 500 var(--f-display)/1.04 var(--serif); letter-spacing: -.01em; }
.t-h2 { font: 500 var(--f-h2)/1.08 var(--serif); letter-spacing: -.005em; max-width: 18ch; }
.t-h3 { font: 500 var(--f-h3)/1.2 var(--serif); }
.t-voce { font: italic 400 var(--f-voce)/1.3 var(--serif); }
.t-lead { font-size: var(--f-lead); line-height: 1.6; color: var(--fg-corpo); max-width: 38rem; }
.corpo { font-size: var(--f-corpo); line-height: var(--lh-corpo); color: var(--fg-corpo); max-width: 62ch; }
.didascalia { font-size: var(--f-didascalia); line-height: 1.55; color: var(--fg-2); max-width: 46ch; text-wrap: balance; }
.eti { font: 600 var(--f-etichetta)/1.3 var(--sans); letter-spacing: var(--track-eti); text-transform: uppercase; color: var(--fg-2); }
.mono { font: 400 var(--f-mono)/1.4 var(--mono); letter-spacing: var(--track-mono); text-transform: uppercase; color: var(--fg-2); }
.tag { display: inline-flex; align-items: center; min-height: 28px; padding: 0 12px; border: 1px solid currentColor; border-radius: var(--r-tag);
  font: 600 var(--f-etichetta)/1 var(--sans); letter-spacing: var(--track-eti); text-transform: uppercase; color: var(--fg); }
.tag--verde { background: var(--verde); border-color: var(--verde); color: var(--avorio); }


.blocco > .eti + *, .blocco > .tag + * { margin-top: var(--s-2); }
.blocco > .t-h2 + *, .blocco > .t-h3 + * { margin-top: var(--s-3); }
.blocco > * + .corpo, .blocco > * + .t-lead { margin-top: var(--s-3); }
.blocco > * + .azioni, .blocco > * + .lnk { margin-top: var(--s-4); }


.da-confermare { text-decoration: underline dotted var(--accento-testo); text-decoration-thickness: 1px; text-underline-offset: 4px; }


.btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--s-1); min-height: var(--tocco-primario); padding: 0 var(--s-4);
  border: 1px solid transparent; border-radius: var(--r-0); font: 600 var(--f-etichetta)/1 var(--sans); letter-spacing: var(--track-btn);
  text-transform: uppercase; text-decoration: none; cursor: pointer; touch-action: manipulation;
  transition: background-color var(--t-soffio) var(--ease-rotta), color var(--t-soffio) var(--ease-rotta), transform var(--t-soffio) var(--ease-rotta); }
.btn:active { transform: translateY(1px); }

.btn--primario { background: var(--oro); color: var(--noir); }
.btn--primario:hover { background: var(--oro-hover); }

.chiaro .btn--primario { background: var(--noir); color: var(--avorio); }
.chiaro .btn--primario:hover { background: color-mix(in oklab, var(--noir) 82%, var(--avorio)); }
.btn--pieno { width: 100%; }

.lnk { display: inline-flex; align-items: center; gap: .45em; min-height: var(--tocco); font: 400 var(--f-corpo)/1.3 var(--sans); color: var(--fg);
  text-decoration: underline; text-decoration-color: color-mix(in oklab, currentColor 40%, transparent); text-decoration-thickness: 1px; text-underline-offset: 5px;
  transition: text-decoration-color var(--t-soffio) var(--ease-rotta); }
.lnk:hover, .lnk:focus-visible { text-decoration-color: var(--accento-testo); }
.lnk .freccia { display: inline-block; transition: transform var(--t-soffio) var(--ease-rotta); }
.lnk:hover .freccia, .lnk:focus-visible .freccia { transform: translateX(4px); }
.lnk:active .freccia { transform: translateX(6px); }

.btn:disabled, .btn[aria-disabled='true'], .lnk[aria-disabled='true'] { opacity: .45; cursor: not-allowed; pointer-events: none; }



html.menu-aperto { overflow: hidden; scrollbar-gutter: stable; }
.testa__soglia { position: absolute; top: 40px; left: 0; width: 1px; height: 1px; pointer-events: none; }

.testa { position: fixed; z-index: var(--z-testata); top: 0; left: 0; right: 0; height: var(--h-testa); }
.testa::before, .testa::after { content: ''; position: absolute; left: 0; right: 0; pointer-events: none; opacity: 0;
  transition: opacity var(--t-soffio) var(--ease-rotta); }
.testa::before { z-index: var(--z-fondo); top: 0; bottom: 0; background: var(--noir); }
.testa::after { z-index: var(--z-filo); bottom: 0; height: 1px; background: var(--filetto); }
.testa.is-scesa::before, .testa.is-scesa::after, .testa.is-aperta::after { opacity: 1; }
.testa__riga { position: relative; z-index: var(--z-oggetto); display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); height: 100%; }


.testa__logo { position: relative; z-index: var(--z-oggetto); flex: none; display: inline-flex; align-items: center; min-height: var(--tocco); margin-left: -11px; }
.testa__logo img { height: 44px; width: auto; }


.testa__bottone { position: relative; z-index: var(--z-oggetto); display: inline-flex; align-items: center; gap: var(--s-1);
  min-height: 48px; min-width: 48px; margin-right: calc(-1 * var(--s-1)); padding: 0 calc(var(--s-1) - .22em) 0 var(--s-1);
  background: none; border: 0; color: var(--avorio); font: 600 var(--f-etichetta)/1 var(--sans); letter-spacing: var(--track-eti);
  text-transform: uppercase; cursor: pointer; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
.testa__icona { width: 28px; height: 28px; flex: none; overflow: visible; }
.testa__icona use { transform-origin: 24px 24px; transition: opacity var(--t-soffio) var(--ease-rotta), transform var(--t-soffio) var(--ease-rotta); }
.testa__icona-chiudi { opacity: 0; transform: rotate(-45deg); }
.testa.is-aperta .testa__icona-menu { opacity: 0; transform: rotate(45deg); }
.testa.is-aperta .testa__icona-chiudi { opacity: 1; transform: none; }


.js .menu { position: fixed; inset: 0; z-index: var(--z-fondo); display: flex; flex-direction: column; gap: var(--s-6);
  padding: calc(var(--h-testa) + var(--s-3)) var(--margine) max(var(--s-4), calc(env(safe-area-inset-bottom) + var(--s-2)));
  background: var(--notte); overflow-y: auto; overscroll-behavior: contain;
  visibility: hidden; clip-path: inset(0 0 100% 0);
  transition: clip-path var(--t-soffio) var(--ease-rotta), visibility 0s linear var(--t-soffio); }
.js .testa.is-aperta .menu { visibility: visible; clip-path: inset(0); transition: clip-path var(--t-passo) var(--ease-rotta), visibility 0s; }


.menu__lista a { position: relative; z-index: 0; display: flex; align-items: center; min-height: 56px; padding-block: var(--s-1);
  font: 500 1.75rem/1.1 var(--serif); color: var(--menu); text-decoration: none; border-bottom: 1px solid var(--filetto);
  -webkit-tap-highlight-color: transparent; }
.menu__lista a::before { content: ''; position: absolute; z-index: -1; inset: 0 calc(-1 * var(--s-2)) -1px; background: var(--oro-velato);
  opacity: 0; transition: opacity var(--t-soffio) var(--ease-rotta); }
.menu__lista a:hover, .menu__lista a:focus-visible, .menu__lista a:active { color: var(--avorio); }
.menu__lista a:hover::before, .menu__lista a:focus-visible::before, .menu__lista a:active::before { opacity: 1; }
.menu__lista a:focus-visible { outline: none; }
.menu__lista a:focus-visible::before { outline: 1px solid var(--fuoco); outline-offset: -1px; }


.menu__nota { margin-top: auto; margin-bottom: calc(var(--s-2) - var(--s-6)); }
.menu__cta { align-self: stretch; }
.cta__inchiostro { display: none; }


@keyframes voce-entra { from { opacity: 0; transform: translateY(8px); } }
.menu__lista li:nth-child(2) { --n: 1; }
.menu__lista li:nth-child(3) { --n: 2; }
.menu__lista li:nth-child(4) { --n: 3; }
.menu__lista li:nth-child(5) { --n: 4; }
.menu__lista li:nth-child(6) { --n: 5; }
.menu__nota { --n: 6; }
.menu__cta { --n: 7; }
.js .testa.is-aperta .menu__lista li, .js .testa.is-aperta .menu__nota, .js .testa.is-aperta .menu__cta {
  animation: voce-entra var(--t-passo) var(--ease-rotta) backwards; animation-delay: calc(120ms + var(--n, 0) * var(--cascata-menu)); }


html:not(.js) .testa { position: relative; height: auto; }
html:not(.js) .testa::before { opacity: 1; }
html:not(.js) .testa__bottone { display: none; }
html:not(.js) .testa__riga { flex-wrap: wrap; row-gap: 0; height: auto; padding-block: var(--s-1); }
html:not(.js) .menu { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1) var(--s-2); }
html:not(.js) .menu__lista { display: flex; flex-wrap: wrap; gap: 0 var(--s-2); }
html:not(.js) .menu__lista a { font: 400 .9375rem/1 var(--sans); min-height: var(--tocco); border: 0; }
html:not(.js) .prima { padding-top: var(--s-2); }
html:not(.js) .menu__nota { display: none; }
@media (max-width: 1023px) { html:not(.js) .menu__cta { display: none; } }


@media (min-width: 1024px) {

  .testa__riga { gap: var(--s-2); }
  .testa__logo { margin-left: -10px; }
  .testa__logo img { height: 40px; }
  .testa__bottone, .menu__nota { display: none; }
  .menu, .js .menu { position: static; flex: 1 1 auto; flex-direction: row; align-items: center; gap: var(--s-2); padding: 0;
    background: none; overflow: visible; visibility: visible; clip-path: none; transition: none; }
  .menu__lista { display: flex; gap: var(--s-2); margin-inline: auto; }
  .menu__lista a { min-height: var(--tocco); padding: 0 4px; font: 400 .8125rem/1 var(--sans); border: 0; white-space: nowrap; }
  .menu__lista a::before { display: none; }
  .menu__lista a::after { content: ''; position: absolute; left: 4px; right: 4px; bottom: 13px; height: 1px; background: currentColor;
    transform: scaleX(0); transform-origin: left center; transition: transform var(--t-soffio) var(--ease-rotta); }
  .menu__lista a:hover::after, .menu__lista a:focus-visible::after { transform: scaleX(1); }
  .menu__lista a:focus-visible { outline: 1px solid var(--fuoco); outline-offset: 2px; }
  .menu__cta { position: relative; flex: none; margin-top: 0; align-self: auto; min-height: var(--tocco-primario); padding: 0 var(--s-3); white-space: nowrap; }

  .testa.ha-inchiostro .menu__cta { background: transparent; color: var(--avorio); border-color: var(--avorio); }
  .testa.ha-inchiostro .menu__cta:hover { background: transparent; color: var(--oro); border-color: var(--oro); }
  .cta__inchiostro { position: absolute; inset: -1px; display: flex; align-items: center; justify-content: center; padding: 0 var(--s-3);
    background: var(--oro); color: var(--noir); pointer-events: none; clip-path: inset(0 100% 0 0);
    transition: clip-path var(--t-passo) var(--ease-rotta); }
  .testa.is-cta-sola .cta__inchiostro { clip-path: inset(0); }
  .testa.is-cta-sola .menu__cta:hover .cta__inchiostro { background: var(--oro-hover); }
  .menu__cta, .cta__inchiostro { padding-inline: var(--s-2); }
}

@media (min-width: 1280px) {
  .testa__riga { gap: var(--s-3); }
  .testa__logo { margin-left: -12px; }
  .testa__logo img { height: 48px; }
  .menu, .js .menu { justify-content: flex-end; gap: var(--s-4); }
  .menu__lista { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); gap: var(--s-3); margin: 0; }
  .menu__lista a { font-size: .875rem; }
  .menu__cta, .cta__inchiostro { padding-inline: var(--s-3); }
}


.js .rev { opacity: 0; transform: translateY(8px);
  transition: opacity var(--t-passo) var(--ease-rotta) calc(var(--i, 0) * var(--cascata)), transform var(--t-passo) var(--ease-rotta) calc(var(--i, 0) * var(--cascata)); }
.js .rev.in { opacity: 1; transform: none; }
.js .rev--prima { animation: forza 0s linear 4.5s forwards; }
@keyframes forza { to { opacity: 1; transform: none; } }


.prima { position: relative; padding-top: var(--h-testa); overflow: hidden; --spunta: 112px; }
.prima__griglia { row-gap: 0; }
.prima .t-display .voce { display: block; margin-top: .2em; font: italic 400 var(--f-voce-grande)/1.15 var(--serif); letter-spacing: 0; color: color-mix(in oklab, var(--avorio) 78%, transparent); }
.prima__cta .btn { width: 100%; }
.prima__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px var(--s-3); }
.prima__scegli { display: inline-flex; align-items: center; min-height: 44px; }
.talloncino { margin-top: var(--s-2); }

.talloncino__voce { white-space: nowrap; }
.talloncino__prezzo { color: var(--avorio); }
.prima__campione { margin-top: var(--s-3); }
.prima__sotto { margin-top: var(--s-4); }


@media (max-width: 767px) {
  .prima__griglia { grid-template-rows: minmax(var(--s-3), 1fr) auto minmax(var(--s-6), 1fr) auto auto calc(var(--s-4) + var(--s-1)) auto auto auto; }
  .prima__griglia::before { content: ''; grid-column: 1 / -1; grid-row: 1 / 7; pointer-events: none;
    min-height: calc(100vh - var(--h-testa) - var(--spunta)); min-height: calc(100svh - var(--h-testa) - var(--spunta)); }
  .prima__griglia > h1 { grid-row: 2; font-size: var(--f-display-telefono); line-height: 1.02; }
  .prima .t-display .voce { margin-top: .28em; font-size: .536em; }
  .prima__griglia > .prima__cta { grid-row: 4; }
  .prima__griglia > .talloncino { grid-row: 5; }
  .prima__griglia > .natura { grid-row: 7; }
  .prima__griglia > .prima__campione { grid-row: 8; }
  .prima__griglia > .prima__sotto { grid-row: 9; margin-top: var(--s-8); padding-bottom: var(--s-2); }
}

html:not(.js) .prima__griglia::before { min-height: 0; }


.natura { position: relative; container-type: inline-size; --u: calc(100cqw / 350); width: 100%; max-width: 350px; justify-self: center; }
.natura__scena { position: relative; height: calc(482 * var(--u)); }
.natura__didascalie { position: absolute; inset: 0; pointer-events: none; }


.natura__pozza, .natura__carta { position: absolute; left: -52%; top: -58%; width: 140%; height: 140%; pointer-events: none; z-index: var(--z-fondo); }
.natura__pozza { background: radial-gradient(closest-side, var(--pozza), color-mix(in oklab, var(--luce) 7%, transparent) 38%, color-mix(in oklab, var(--luce) 2.5%, transparent) 68%, transparent); }
.natura__carta { background: url('/assets/brand/pattern/topografia.svg') 50% 46% / 78% auto no-repeat; opacity: .45;
  -webkit-mask-image: radial-gradient(closest-side, var(--noir) 0, color-mix(in oklab, var(--noir) 50%, transparent) 22%, transparent 40%);
  mask-image: radial-gradient(closest-side, var(--noir) 0, color-mix(in oklab, var(--noir) 50%, transparent) 22%, transparent 40%); }


.natura__posto { position: absolute; z-index: var(--z-oggetto); }
.natura__posto--libro { left: calc(-20 * var(--u)); top: 0; width: calc(250 * var(--u)); height: calc(325 * var(--u)); }

.natura__posto--telefono { left: calc(202 * var(--u)); top: calc(20 * var(--u)); width: calc(160 * var(--u)); height: calc(311 * var(--u)); display: flex; justify-content: flex-end; }

.libro.libro--eroe { --W: calc(230 * var(--u)); --D: calc(12 * var(--u)); position: absolute; left: calc(24 * var(--u)); top: calc(-1 * var(--S)); }
.pagina--aperta .pagina__scaletta li { grid-template-columns: 5.4em 1fr; }


.natura__posto--telefono .tel { font-size: calc(140.4 * var(--u) / 25); }
.natura__posto--telefono .tel__corpo { --ry: 0deg; --rx: 0deg; }


.natura__rotta { position: absolute; inset: 0; width: 100%; height: 100%; z-index: var(--z-filo); pointer-events: none; overflow: visible; color: var(--oro); }

.filo__linea { fill: none; stroke: currentColor; stroke-opacity: .7; stroke-width: 1.5; stroke-dasharray: 3 2; vector-effect: non-scaling-stroke; }

.filo__capo { fill: currentColor; fill-opacity: .7; }

.filo__maschera { mask-type: alpha; }
.filo__scia { fill: none; stroke: var(--noir); stroke-width: 8; stroke-linecap: butt; stroke-dasharray: 1 1; stroke-dashoffset: 0; }

.natura__scena [data-capo="pdf"] + li { background-image: none; }
.natura__scena:has(.tel:not([data-schermo="oggi"])) [data-capo="pdf"] + li {
  background-image: repeating-linear-gradient(90deg, color-mix(in oklab, var(--noir) 35%, transparent) 0 3px, transparent 3px 5px); }
.natura__rotta--larga { display: none; }

.natura__stella { position: absolute; z-index: var(--z-filo); width: calc(16 * var(--u)); height: calc(16 * var(--u)); left: calc(228 * var(--u)); top: calc(107.3 * var(--u)); opacity: .7; }

.natura__scena:has(.tel:not([data-schermo="oggi"])) :is(.natura__rotta, .natura__stella) { opacity: 0; visibility: hidden;
  transition: opacity var(--t-passo) var(--ease-rotta), visibility 0s linear var(--t-passo); }


.natura__eti { position: absolute; font: 400 var(--f-mono)/1.45 var(--mono); letter-spacing: var(--track-mono); text-transform: uppercase; color: var(--menu); text-wrap: balance; z-index: var(--z-didascalia); }

.natura__eti--libro { left: 0; top: calc(343 * var(--u)); width: calc(190 * var(--u)); }
.natura__eti--telefono { right: 0; top: calc(343 * var(--u)); width: calc(168 * var(--u)); text-align: right; }
.natura__fonte { position: absolute; left: 0; bottom: 0; width: 100%; font: 400 .6875rem/1.5 var(--mono); letter-spacing: .1em; color: var(--freddo); text-wrap: balance; z-index: var(--z-didascalia); }


.js.m1 .rev--prima { opacity: 1; transform: none; transition: none; animation: none; }

.prima__dritto { display: block; }


@media (min-width: 768px) {
  .natura { --u: calc(100cqw / 736); width: 100%; max-width: 736px; justify-self: start; }
  .natura__scena { height: calc(580 * var(--u)); }
  .natura__posto--libro { left: 0; top: calc(96 * var(--u)); width: calc(460 * var(--u)); height: calc(325 * var(--u)); }
  .natura__posto--telefono { left: calc(492 * var(--u)); top: 0; width: calc(244 * var(--u)); height: calc(507.4 * var(--u)); }
  .libro.libro--eroe { left: calc(230 * var(--u)); }
  .natura__posto--telefono .tel { font-size: calc(229.17 * var(--u) / 25); }
  .natura__rotta--larga { display: block; }
  .natura__rotta--stretta { display: none; }
  .natura__stella { width: calc(18 * var(--u)); height: calc(18 * var(--u)); left: calc(521.3 * var(--u)); top: calc(146.6 * var(--u)); }
  .natura__eti--libro { left: 0; top: calc(437 * var(--u)); width: calc(240 * var(--u)); }
  .natura__eti--telefono { top: calc(523 * var(--u)); width: calc(244 * var(--u)); }
  .natura__fonte { width: calc(440 * var(--u)); }
}


.libro {
  --W: 200px;
  --D: 18px;
  --H: calc(var(--W) * 1.4142);
  --S: calc(var(--W) * .016);
  --b: max(1.5px, calc(var(--D) * .18));
  --Dl: calc(var(--D) / 2);
  --Dr: calc(var(--D) - var(--Dl));
  --BW: calc(var(--W) + var(--S));
  --BH: calc(var(--H) + 2 * var(--S));
  --apertura: -180deg;
  --vista: perspective(4000px);

  --carta-1: color-mix(in oklab, var(--avorio) 92%, var(--caldo));
  --carta-2: color-mix(in oklab, var(--avorio) 70%, var(--caldo));
  --carta-3: color-mix(in oklab, var(--avorio) 55%, var(--caldo));
  --tela: color-mix(in oklab, var(--noir) 90%, var(--caldo));
  --tela-luce: color-mix(in oklab, var(--noir) 78%, var(--avorio));
  --tela-buio: color-mix(in oklab, var(--noir) 96%, var(--caldo));

  --l-lampada: linear-gradient(135deg, color-mix(in oklab, var(--chiara) 24%, transparent) 0, transparent 38%),
               linear-gradient(135deg, transparent 46%, color-mix(in oklab, var(--noir) 6%, transparent) 100%);

  --taglio-righe: var(--chiara) 0 1px, var(--carta-1) 1px 2px, var(--avorio) 2px 3px, color-mix(in oklab, var(--carta-1) 55%, var(--carta-2)) 3px 3.5px;
  position: relative; width: var(--BW); height: var(--BH);
}

.libro--chiuso { --Dl: var(--b); --S: calc(var(--W) * .006); --apertura: 0deg; --vista: perspective(1400px) rotateX(-20deg) rotateY(26deg); }

.libro__corpo { position: absolute; inset: 0; transform-style: preserve-3d; transform: var(--vista); }
.l-meta { position: absolute; inset: 0; transform-style: preserve-3d; }
.l-meta--sx { transform-origin: 0 50%; transform: rotateY(var(--apertura)); }
.l-f { position: absolute; left: 0; top: 0; display: block; transform-origin: 0 0; backface-visibility: hidden; }


.l-meta--dx .l-retro { width: var(--BW); height: var(--BH); transform-origin: 50% 50%; transform: translateZ(calc(-1 * var(--Dr))) rotateY(180deg); background: var(--tela); }
.l-meta--dx .l-asse { width: var(--BW); height: var(--BH); transform: translateZ(calc(var(--b) - var(--Dr))); }
.l-meta--dx .l-bordo--fianco { left: var(--BW); width: var(--b); height: var(--BH); transform: translateZ(calc(var(--b) - var(--Dr))) rotateY(90deg); }
.l-meta--dx .l-bordo--testa { left: .5px; width: calc(var(--BW) - .5px); height: var(--b); transform: translateZ(calc(-1 * var(--Dr))) rotateX(90deg); }
.l-meta--dx .l-bordo--piede { left: .5px; top: var(--BH); width: calc(var(--BW) - .5px); height: var(--b); transform: translateZ(calc(var(--b) - var(--Dr))) rotateX(-90deg); }
.l-meta--dx .l-taglio--fianco { left: var(--W); top: var(--S); width: calc(var(--Dr) - var(--b)); height: var(--H); transform: rotateY(90deg); }
.l-meta--dx .l-taglio--testa { left: .5px; top: var(--S); width: calc(var(--W) - .5px); height: calc(var(--Dr) - var(--b)); transform: translateZ(calc(var(--b) - var(--Dr))) rotateX(90deg); }
.l-meta--dx .l-taglio--piede { left: .5px; top: calc(var(--S) + var(--H)); width: calc(var(--W) - .5px); height: calc(var(--Dr) - var(--b)); transform: rotateX(-90deg); }
.l-meta--dx .l-dorso { width: var(--Dr); height: var(--BH); transform: translateZ(calc(-1 * var(--Dr))) rotateY(-90deg); }
.l-pagina { top: var(--S); width: var(--W); height: var(--H); overflow: hidden; font-size: calc(var(--W) / 19); }


.l-meta--sx .l-asse { width: var(--BW); height: var(--BH); transform-origin: 50% 50%; transform: translateZ(calc(var(--Dl) - var(--b))) rotateY(180deg); }
.l-meta--sx .l-bordo--fianco { left: var(--BW); width: var(--b); height: var(--BH); transform: translateZ(var(--Dl)) rotateY(90deg); }
.l-meta--sx .l-bordo--testa { left: .5px; width: calc(var(--BW) - .5px); height: var(--b); transform: translateZ(calc(var(--Dl) - var(--b))) rotateX(90deg); }
.l-meta--sx .l-bordo--piede { left: .5px; top: var(--BH); width: calc(var(--BW) - .5px); height: var(--b); transform: translateZ(var(--Dl)) rotateX(-90deg); }
.l-meta--sx .l-taglio--fianco { left: var(--W); top: var(--S); width: calc(var(--Dl) - var(--b)); height: var(--H); transform: translateZ(calc(var(--Dl) - var(--b))) rotateY(90deg); }
.l-meta--sx .l-taglio--testa { left: .5px; top: var(--S); width: calc(var(--W) - .5px); height: calc(var(--Dl) - var(--b)); transform: rotateX(90deg); }
.l-meta--sx .l-taglio--piede { left: .5px; top: calc(var(--S) + var(--H)); width: calc(var(--W) - .5px); height: calc(var(--Dl) - var(--b)); transform: translateZ(calc(var(--Dl) - var(--b))) rotateX(-90deg); }
.l-meta--sx .l-dorso { width: var(--Dl); height: var(--BH); transform: rotateY(-90deg); }
.l-poster { top: var(--S); width: var(--W); height: var(--H); overflow: hidden; transform-origin: 50% 50%; transform: rotateY(180deg); background: var(--carta-1); }
.l-copertina { width: var(--BW); height: var(--BH); overflow: hidden; transform: translateZ(var(--Dl)); background: var(--carta-1); }



.l-asse { background: var(--tela); }
.libro--aperto .l-meta--dx .l-asse {
  background:
    repeating-linear-gradient(90deg, var(--taglio-righe)) var(--W) var(--S) / calc(var(--S) * .58) var(--H) no-repeat,
    repeating-linear-gradient(0deg, var(--taglio-righe)) 0 calc(var(--S) * .5) / calc(var(--W) + var(--S) * .58) calc(var(--S) * .5) no-repeat,
    repeating-linear-gradient(180deg, var(--taglio-righe)) 0 calc(var(--S) + var(--H)) / calc(var(--W) + var(--S) * .58) calc(var(--S) * .62) no-repeat,
    linear-gradient(var(--tela-luce), var(--tela-luce)) 0 0 / 100% 1px no-repeat,
    linear-gradient(var(--tela-buio), var(--tela-buio)) 100% 0 / 1px 100% no-repeat,
    var(--tela);
}

.libro--aperto .l-meta--sx .l-asse {
  background:
    repeating-linear-gradient(270deg, var(--taglio-righe)) calc(var(--S) * .42) var(--S) / calc(var(--S) * .58) var(--H) no-repeat,
    repeating-linear-gradient(0deg, var(--taglio-righe)) calc(var(--S) * .42) calc(var(--S) * .5) / calc(var(--W) + var(--S) * .58) calc(var(--S) * .5) no-repeat,
    repeating-linear-gradient(180deg, var(--taglio-righe)) calc(var(--S) * .42) calc(var(--S) + var(--H)) / calc(var(--W) + var(--S) * .58) calc(var(--S) * .62) no-repeat,
    linear-gradient(var(--tela-luce), var(--tela-luce)) 0 0 / 100% 1px no-repeat,
    linear-gradient(var(--tela-luce), var(--tela-luce)) 0 0 / 1px 100% no-repeat,
    var(--tela);
}


.l-bordo { background: var(--tela); }
.l-bordo--testa { background: var(--tela-luce); }
.l-bordo--piede { background: var(--tela-buio); }

.l-taglio--fianco { background: linear-gradient(color-mix(in oklab, var(--noir) 10%, transparent), color-mix(in oklab, var(--noir) 10%, transparent)), repeating-linear-gradient(90deg, var(--taglio-righe)); }
.l-taglio--testa { background: linear-gradient(color-mix(in oklab, var(--luce) 14%, transparent), color-mix(in oklab, var(--luce) 14%, transparent)), repeating-linear-gradient(0deg, var(--taglio-righe)); }
.l-taglio--piede { background: linear-gradient(color-mix(in oklab, var(--noir) 26%, transparent), color-mix(in oklab, var(--noir) 26%, transparent)), repeating-linear-gradient(0deg, var(--taglio-righe)); }

.l-dorso { overflow: hidden; }
.l-dorso__stampa { position: absolute; top: 0; left: 0; width: var(--D); height: var(--BH);
  display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: calc(var(--D) * .5) 0 calc(var(--D) * .6);
  background: linear-gradient(90deg, var(--tela-buio) 0, var(--tela) 22%, var(--tela-luce) 52%, var(--tela) 80%, var(--tela-buio) 100%); }
.l-meta--sx .l-dorso__stampa { left: calc(-1 * var(--Dr)); }
.dorso__stella { width: calc(var(--D) * .44); height: calc(var(--D) * .44); flex: none; }
.dorso__testo { writing-mode: vertical-rl; font: 600 calc(var(--D) * .27)/1 var(--sans); letter-spacing: .26em; text-transform: uppercase; white-space: nowrap; color: color-mix(in oklab, var(--avorio) 82%, transparent); }


.libro .l-copertina img { position: absolute; max-width: none; width: 163.83%; height: auto; left: -32.37%; top: -7.64%; }
.l-copertina::after { content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, color-mix(in oklab, var(--noir) 34%, transparent) 0, color-mix(in oklab, var(--noir) 8%, transparent) 2.4%, color-mix(in oklab, var(--noir) 24%, transparent) 3.6%, color-mix(in oklab, var(--luce) 10%, transparent) 5.4%, transparent 9.5%),
              linear-gradient(135deg, var(--riflesso) 0, transparent 45%),
              linear-gradient(135deg, transparent 55%, color-mix(in oklab, var(--noir) 16%, transparent) 100%); }


.l-poster img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }
.l-poster__dida { position: absolute; left: 0; right: 0; bottom: 3.1%; text-align: center; font: italic 400 .44em/1 var(--serif); letter-spacing: .02em; color: var(--caldo); }

.l-poster::after { content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, color-mix(in oklab, var(--noir) 12%, transparent) 0, color-mix(in oklab, var(--noir) 4%, transparent) 1.6%, transparent 5%),
              linear-gradient(270deg, color-mix(in oklab, var(--noir) 40%, transparent) 0, color-mix(in oklab, var(--noir) 18%, transparent) 1.4%, color-mix(in oklab, var(--noir) 7%, transparent) 5%, transparent 15%),
              var(--l-lampada); }

.l-poster--risguardo { top: 0; width: var(--BW); height: var(--BH); background: var(--notte) url('/assets/brand/pattern/notte.svg') 0 0 / 150px 150px; }
.l-poster--risguardo::after { background: url('/assets/brand/marchio/simbolo-mono-oro.svg') 50% 50% / 30% auto no-repeat; }
.libro--chiuso .l-meta--sx .l-asse { display: none; }

.libro--chiuso .l-pagina { left: .5px; width: calc(var(--W) - .5px); }
.libro--chiuso .l-poster--risguardo { left: .5px; width: calc(var(--BW) - .5px); }



.l-pagina .pagina { background: linear-gradient(135deg, var(--chiara) 0, var(--chiara) 8%, color-mix(in oklab, var(--chiara) 45%, var(--avorio)) 58%, color-mix(in oklab, var(--chiara) 22%, var(--avorio)) 100%); }
.l-pagina .pagina::after {
  background: linear-gradient(270deg, color-mix(in oklab, var(--noir) 12%, transparent) 0, color-mix(in oklab, var(--noir) 4%, transparent) 1.6%, transparent 5%),
              linear-gradient(90deg, color-mix(in oklab, var(--noir) 36%, transparent) 0, color-mix(in oklab, var(--noir) 15%, transparent) 1.3%, color-mix(in oklab, var(--noir) 4%, transparent) 4.2%, color-mix(in oklab, var(--luce) 9%, transparent) 6.5%, transparent 12%),
              var(--l-lampada); }
.l-pagina--bianca { background: var(--chiara) url('/assets/brand/pattern/carta-avorio.svg') 0 0 / 28px 28px; }
.l-pagina--bianca::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, color-mix(in oklab, var(--noir) 14%, transparent) 0, transparent 8%); }



.l-ombra { position: absolute; left: calc(var(--BW) * -.1); top: var(--BH); width: calc(var(--BW) * 1.5); height: calc(var(--D) * 4.4);
  transform-origin: 0 0; transform: translateZ(calc(-1 * var(--Dr) - var(--D) * 2.4)) rotateX(90deg); pointer-events: none;
  background: radial-gradient(ellipse 34% 11% at 45% 64%, var(--ombra-colore), transparent 100%),
              radial-gradient(ellipse 40% 30% at 56% 46%, color-mix(in oklab, var(--ombra-colore) 55%, transparent), transparent 100%); }
.libro--aperto .l-ombra { display: none; }

.libro__ombra { position: absolute; top: 0; left: calc(-1 * var(--BW)); width: calc(2 * var(--BW)); height: var(--BH); pointer-events: none; box-shadow: var(--ombra-2); }
.libro__ombra::after { content: ''; position: absolute; left: 9%; width: 90%; top: 97%; height: 6%;
  background: radial-gradient(ellipse 50% 50% at 50% 50%, var(--ombra-colore), transparent 72%); }
.libro--chiuso .libro__ombra { display: none; }

.libro--aperto { isolation: isolate; }
.libro--aperto::before { content: ''; position: absolute; z-index: -1; pointer-events: none;
  left: calc(-1 * var(--BW) - var(--W) * .55); top: calc(var(--BH) * -.22); width: calc(2 * var(--BW) + var(--W) * .85); height: calc(var(--BH) * 1.5);
  background: radial-gradient(closest-side, color-mix(in oklab, var(--luce) 17%, transparent), color-mix(in oklab, var(--luce) 12%, transparent) 50%, color-mix(in oklab, var(--luce) 6%, transparent) 78%, transparent); }

.libro--guida .dorso__testo { visibility: hidden; }



.tel { --pu: 1; --T: 3.1em; --tel-h: 55.35em; --tel-telaio: .3em; --tel-b: .85em; --pt: calc((25em - 2 * var(--tel-b)) / 390);
  --tel-luce: color-mix(in oklab, var(--campo) 55%, var(--luce));
  --tel-metallo: var(--campo);
  --tel-buio: color-mix(in oklab, var(--filetto) 70%, var(--noir));
  font-size: calc(var(--pu) * 10px); width: 25em; height: var(--tel-h); position: relative; color: var(--avorio); font-family: var(--sans); line-height: 1.3; }

.tel__corpo { position: absolute; inset: 0; transform-style: preserve-3d; transform: rotateY(var(--ry, -16deg)) rotateX(var(--rx, 1deg)); }


.tel__strati i { position: absolute; inset: 0; border-radius: var(--r-telefono); transform: translateZ(calc(var(--T) * (var(--k) / 9 - .5)));
  background: linear-gradient(90deg, var(--tel-buio), var(--tel-metallo) 50%, var(--tel-buio)); }
.tel__strati i:nth-child(even) { background: linear-gradient(90deg, color-mix(in oklab, var(--tel-buio) 80%, var(--noir)), color-mix(in oklab, var(--tel-metallo) 85%, var(--noir)) 50%, color-mix(in oklab, var(--tel-buio) 80%, var(--noir))); }
.tel__strati i:first-child { box-shadow: var(--ombra-2); }


.tel__tasto { position: absolute; width: .3em; border-radius: .15em; transform: translateZ(0);
  background: linear-gradient(90deg, var(--tel-luce), var(--tel-metallo) 60%, var(--tel-buio)); }
.tel__tasto--azione { left: -.14em; top: 9.4em; height: 2.3em; }
.tel__tasto--su { left: -.14em; top: 13.6em; height: 4.2em; }
.tel__tasto--giu { left: -.14em; top: 18.7em; height: 4.2em; }
.tel__tasto--accensione { right: -.14em; top: 15em; height: 6.6em; background: linear-gradient(90deg, var(--tel-metallo), var(--tel-buio)); }



.tel__fronte { position: absolute; inset: 0; border-radius: var(--r-telefono); transform: translateZ(calc(var(--T) / 2 + .06em)); backface-visibility: hidden;
  background: linear-gradient(135deg, var(--tel-luce) 0, var(--tel-metallo) 24%, var(--tel-metallo) 52%, var(--tel-buio) 100%); }
.tel__fronte::before { content: ''; position: absolute; inset: var(--tel-telaio); background: var(--noir);
  border-radius: calc(25em * .135 - var(--tel-telaio)) / calc(var(--tel-h) * .062 - var(--tel-telaio)); box-shadow: 0 0 0 .04em color-mix(in oklab, var(--noir) 70%, transparent); }

.schermo { position: absolute; inset: var(--tel-b); overflow: hidden; background: var(--notte); display: flex; flex-direction: column;
  border-radius: calc(25em * .135 - var(--tel-b)) / calc(var(--tel-h) * .062 - var(--tel-b)); }
.schermo__scatto { flex: none; display: block; width: 100%; height: auto; aspect-ratio: 1170 / 2532; object-fit: cover; object-position: top; }


.vetro { position: absolute; inset: var(--tel-telaio); pointer-events: none; border-radius: calc(25em * .135 - var(--tel-telaio)) / calc(var(--tel-h) * .062 - var(--tel-telaio));
  background: linear-gradient(135deg, var(--riflesso) 0, transparent 45%);
  box-shadow: inset .06em .06em 0 color-mix(in oklab, var(--avorio) 14%, transparent); }


.stato { position: relative; flex: none; height: calc(54 * var(--pt)); background: var(--noir); }
.stato__ora { position: absolute; left: calc(63 * var(--pt)); top: calc(29.5 * var(--pt)); transform: translate(-50%, -50%);
  font: 600 calc(17 * var(--pt))/1 var(--sans); letter-spacing: -.01em; font-variant-numeric: tabular-nums; }
.stato__isola { position: absolute; top: calc(11 * var(--pt)); left: 50%; width: calc(125 * var(--pt)); height: calc(37 * var(--pt)); margin-left: calc(-62.5 * var(--pt));
  border-radius: calc(18.5 * var(--pt)); background: var(--noir); box-shadow: inset 0 0 0 calc(.6 * var(--pt)) color-mix(in oklab, var(--filetto) 70%, var(--noir)); }

.stato__isola::after { content: ''; position: absolute; right: calc(13 * var(--pt)); top: 50%; width: calc(11 * var(--pt)); height: calc(11 * var(--pt)); margin-top: calc(-5.5 * var(--pt));
  border-radius: 50%; background: radial-gradient(circle at 35% 35%, color-mix(in oklab, var(--campo) 70%, var(--avorio)) 0, var(--filetto) 30%, var(--noir) 70%); }
.stato__icone { position: absolute; left: calc(323 * var(--pt)); top: calc(29.5 * var(--pt)); transform: translate(-50%, -50%); display: flex; align-items: center; gap: calc(5 * var(--pt)); }
.ico { display: block; overflow: visible; }
.ico--segnale { width: calc(17 * var(--pt)); height: calc(11 * var(--pt)); }
.ico--wifi { width: calc(15.3 * var(--pt)); height: calc(11 * var(--pt)); }
.ico--batteria { width: calc(27.3 * var(--pt)); height: calc(13 * var(--pt)); }
.sb { fill: currentColor; }
.wf { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.wf--p { fill: currentColor; stroke: none; }
.batt-c { fill: none; stroke: currentColor; stroke-opacity: .42; }
.batt-p { fill: currentColor; }
.batt-t { fill: currentColor; fill-opacity: .42; }
.barra { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; }

.tel--senza-rete .sb, .tel--senza-rete .wf, .tel[data-schermo="offline"] .sb, .tel[data-schermo="offline"] .wf { opacity: .26; }
.tel--senza-rete .barra, .tel[data-schermo="offline"] .barra { stroke-dashoffset: 0; }


.tel::after { content: ''; position: absolute; left: 9%; width: 90%; top: 97%; height: 6%; pointer-events: none; z-index: -1;
  background: radial-gradient(ellipse 50% 50% at 50% 50%, var(--ombra-colore), transparent 72%); }
.tel { isolation: isolate; }


.pagina { position: relative; width: 100%; height: 100%; padding: 1.3em 1.3em 1em; background: var(--chiara) url('/assets/brand/pattern/carta-avorio.svg') 0 0 / 28px 28px;
  color: var(--noir); overflow: hidden; display: flex; flex-direction: column; }
.pagina::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, color-mix(in oklab, var(--noir) 20%, transparent) 0, color-mix(in oklab, var(--noir) 5%, transparent) 3.5%, transparent 12%); }
.pagina__testatina { font: italic 400 .62em/1 var(--serif); color: var(--caldo); }
.pagina__eti { margin-top: .5em; font: 600 .6em/1.2 var(--sans); letter-spacing: .2em; text-transform: uppercase; color: var(--caldo); }
.pagina__titolo { margin-top: .35em; font: 500 1.3em/1.05 var(--serif); letter-spacing: -.005em; }
.pagina__figura { position: relative; margin-top: .6em; aspect-ratio: 471 / 160; overflow: hidden; background: var(--carta-1, var(--avorio)); flex: none; }
.pagina__figura img { position: absolute; width: 152.9%; max-width: none; height: auto; left: -26.75%; top: -86%; }
.pagina__dati { display: grid; grid-template-columns: 1.45fr .85fr 1.2fr; gap: .5em; margin-top: .55em; padding: .45em 0; border-top: 1px solid var(--noir); border-bottom: 1px solid var(--filetto-c); flex: none; }
.pagina__dati dt { font: 600 .52em/1 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: var(--caldo); }
.pagina__dati dd { margin-top: .3em; font: 500 .66em/1.2 var(--sans); white-space: nowrap; }
.pagina__scaletta { margin-top: .25em; display: flex; flex-direction: column; flex: 1; justify-content: space-evenly; }
.pagina__scaletta li { position: relative; display: grid; grid-template-columns: 5.4em 1fr 1em; gap: .45em; align-items: baseline; padding: .28em 0;
  background: repeating-linear-gradient(90deg, color-mix(in oklab, var(--noir) 35%, transparent) 0 3px, transparent 3px 5px) top / 100% 1px no-repeat; }
.pagina__scaletta li:first-child { background: none; }
.ora { font: 600 .52em/1.3 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--caldo); }
.voce-s { font: 400 .64em/1.28 var(--sans); }
.spunta { width: 1em; height: .85em; align-self: center; justify-self: end; overflow: visible; }
.spunta path { fill: none; stroke: var(--oro-chiaro); stroke-width: 1.5; stroke-linecap: square; stroke-linejoin: miter; stroke-dasharray: 1; stroke-dashoffset: 0; }

.film { position: relative; background: var(--noir); }
.film__palco { position: relative; background: var(--noir); }
.quadro { position: relative; display: grid; row-gap: var(--s-4); padding: var(--s-6) var(--margine) var(--s-8); }
.quadro + .quadro { border-top: 1px solid var(--filetto); }
.quadro__scena { position: relative; min-height: 500px; display: grid; place-items: center; overflow: hidden; }
.quadro__testo { max-width: 36rem; }
.quadro__testo .t-h2 { font-size: clamp(1.875rem, 1.4rem + 1.6vw, 2.75rem); }

.film .quadro__testo > .eti { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.film .quadro__testo > .eti + * { margin-top: 0; }
.film__didascalie { display: grid; gap: var(--s-2); margin-top: var(--s-3); padding-top: var(--s-2); border-top: 1px solid var(--filetto); }
.film__didascalie p, p.film__didascalie { font-size: var(--f-didascalia); line-height: 1.55; color: var(--fg-corpo); }
.scena__eti { margin-top: var(--s-2); text-align: center; font: 400 .6875rem/1.5 var(--mono); letter-spacing: .1em; color: var(--freddo); }

.film__timbro { margin-top: var(--s-4); padding-top: var(--s-2); border-top: 1px solid var(--filetto); max-width: 42ch;
  font-size: var(--f-didascalia); line-height: 1.55; color: var(--fg-2); }
.film__timbro strong { font-weight: 600; color: var(--fg-corpo); }


.rotta { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 10px; padding: var(--rotta-su, 0px) 30px 0 0; }
.rotta__via { grid-column: 1 / -1; position: relative; height: 15px; container-type: inline-size; }
.rotta__via::before, .rotta__oro { content: ''; position: absolute; left: 4.5px; right: 4.5px; top: 7px; height: 1px;
  background: repeating-linear-gradient(90deg, var(--c) 0 3px, transparent 3px 5px); }
.rotta__via::before { --c: color-mix(in oklab, var(--avorio) 26%, transparent); }
.rotta__oro { --c: var(--oro); opacity: .7; clip-path: inset(0 calc((1 - var(--a, 0)) * 100%) 0 0); }

.rotta__nodo { position: absolute; top: 3px; width: 9px; height: 9px; margin-left: -4.5px; border-radius: 50%;
  border: 1px solid color-mix(in oklab, var(--avorio) 50%, transparent); background: var(--noir); }
.rotta__nodo--1 { left: 4.5px; }
.rotta__nodo--2 { left: 50%; }
.rotta__nodo--3 { left: calc(100% - 4.5px); }
.rotta__nodo::after { content: ''; position: absolute; inset: -1px; border-radius: 50%; border: 1px solid var(--oro); background: var(--oro);
  box-shadow: inset 0 0 0 1.5px var(--noir); transform: scale(0); }
.rotta__nodo.is-raggiunta::after { transform: none; }

.rotta__nodo::before { content: ''; position: absolute; inset: -5px; border-radius: 50%; border: 1px solid color-mix(in oklab, var(--oro) 55%, transparent); opacity: 0; }
.rotta__nodo.is-attiva::before { opacity: 1; }
.rotta__punta { position: absolute; left: 4.5px; top: 5px; width: 5px; height: 5px; margin-left: -2.5px; border-radius: 50%; background: var(--oro);
  opacity: 0; transform: translateX(calc((100cqw - 9px) * var(--a, 0))); }
.rotta__eti { grid-row: 2; font: 400 var(--f-mono)/1.2 var(--mono); letter-spacing: var(--track-mono); text-transform: uppercase; white-space: nowrap; color: var(--freddo); }
.rotta__eti--1 { grid-column: 1; justify-self: start; }
.rotta__eti--2 { grid-column: 2; justify-self: center; }
.rotta__eti--3 { grid-column: 3; justify-self: end; }
.rotta__eti.is-attiva { color: var(--avorio); }
.rotta__stella { position: absolute; right: 0; top: calc(var(--rotta-su, 0px) - 2px); width: 18px; height: 18px; opacity: 0; }
.rotta--arrivo .rotta__stella { opacity: .7; }
@media (max-width: 399px) { .rotta__eti { letter-spacing: .06em; } }


.quadro__scena--libro { min-height: 0; display: block; overflow: hidden; margin-inline: calc(-1 * var(--margine)); padding-top: var(--s-6); }
.tavola { --Wf: min(316px, 100vw - 74px); --BWf: calc(var(--Wf) * 1.016); --BHf: calc(var(--Wf) * 1.4462); position: relative; }
.tavola__libro { position: relative; width: var(--BWf); height: var(--BHf); margin-left: 52px; isolation: isolate; }

.tavola__libro::before { content: ''; position: absolute; z-index: -1; pointer-events: none; left: calc(-1.45 * var(--BWf)); top: -9%; width: calc(3.1 * var(--BWf)); height: 128%;
  background: radial-gradient(closest-side at 46% 46%, color-mix(in oklab, var(--luce) 17%, transparent), color-mix(in oklab, var(--luce) 11%, transparent) 55%, color-mix(in oklab, var(--luce) 4%, transparent) 82%, transparent); }
.libro--film { --W: var(--Wf); --D: calc(var(--Wf) * .085); --vista: perspective(1700px); }
.libro--film::before { display: none; }
.filetti { display: none; }


.pagina__riga-dati { position: relative; flex: none; }
.pagina__sotto-orari { position: relative; flex: none; height: 1.5em; margin-top: .1em;
  background: repeating-linear-gradient(90deg, color-mix(in oklab, var(--noir) 35%, transparent) 0 3px, transparent 3px 5px) top / 100% 1px no-repeat; }
.segno { position: absolute; top: 50%; right: -2.033em; width: 1.9em; height: 1.9em; margin-top: -.95em; display: grid; place-items: center;
  border: 1px solid var(--oro-testo); border-radius: 50%; background: var(--chiara);
  font: 600 .6em/1 var(--sans); font-variant-numeric: tabular-nums; color: var(--oro-testo); }
.pagina__sotto-orari .segno { right: auto; left: 0; }


.note { display: grid; gap: var(--s-3); margin: var(--s-4) var(--margine) 0; counter-reset: nota; }
.note > li { position: relative; padding-left: 2.25rem; font-size: var(--f-didascalia); line-height: 1.55; color: var(--fg-corpo); counter-increment: nota; }
.note > li::before { content: counter(nota); position: absolute; left: 0; top: 0; width: 23px; height: 23px; box-sizing: border-box; border-radius: 50%;
  border: 1px solid color-mix(in oklab, var(--oro) 70%, transparent); display: grid; place-items: center; font: 400 .75rem/1 var(--mono); color: var(--oro); }

.nota__stampata { font: italic 400 1.125rem/1.3 var(--serif); color: var(--fg); }
.note .esempio { display: block; margin-top: .45em; color: var(--fg-2); }
.tavola__dida { margin: var(--s-4) var(--margine) 0; padding-top: var(--s-2); border-top: 1px solid var(--filetto);
  font-size: var(--f-didascalia); line-height: 1.55; color: var(--fg-corpo); }
.tavola__dida strong { font-weight: 600; color: var(--fg); }
.tavola__dida .piccolo { display: block; margin-top: .45em; color: var(--fg-2); }


@media (max-width: 767px) {
  .quadro--1 { row-gap: var(--s-3); }
  .quadro--1 .quadro__testo { display: contents; }
  .quadro--1 .quadro__scena { order: 2; margin-top: var(--s-1); }
  .quadro--1 .film__timbro { order: 3; margin-top: 0; }
  .quadro--1 .quadro__testo > .corpo { margin-top: calc(-1 * var(--s-1)); }
}


@media (min-width: 768px) {
  .quadro__scena--libro { margin-inline: 0; padding-top: 0; display: grid; place-items: center; container-type: inline-size; }
  .tavola { --nW: clamp(196px, 26cqw, 236px); --nG: 40px;
    --Wf: max(200px, min(360px, (100cqw - var(--nG) - var(--nW)) / 2.032));
    display: grid; grid-template-columns: var(--BWf) var(--BWf) var(--nG) var(--nW); grid-template-rows: var(--BHf) auto; row-gap: var(--s-3); }
  .tavola__libro { grid-column: 2; grid-row: 1; margin-left: 0; }
  .filetti { display: block; position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
  .filetto { fill: none; stroke: var(--oro); stroke-width: 1; stroke-opacity: .7; stroke-linecap: butt; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 0; }
  .note { grid-column: 2 / -1; grid-row: 1 / -1; display: grid; grid-template-columns: subgrid; grid-template-rows: subgrid; gap: normal; margin: 0; }
  .note > li { grid-column: 3; grid-row: 1; align-self: start; margin-top: var(--y, 0px); }
  .note > li[data-nota="1"] { --y: calc(var(--BHf) * .19); }
  .note > li[data-nota="2"] { --y: calc(var(--BHf) * .34); }
  .note > li[data-nota="3"] { --y: calc(var(--BHf) * .7); }
  .note > li[data-nota="4"] { grid-column: 1; grid-row: 2; margin-left: calc(var(--Wf) / 19 * .7 - 1.5px); padding-right: var(--s-2); }
  .tavola__dida { grid-column: 1; grid-row: 2; align-self: start; margin: 0; padding: 0 var(--s-3) 0 0; border: 0; }
}


[data-segno="2"], [data-nota="2"], [data-filetto="2"] { --k: 1; }
[data-segno="3"], [data-nota="3"], [data-filetto="3"] { --k: 2; }
[data-segno="4"], [data-nota="4"], [data-filetto="4"] { --k: 3; }
.film.js-fermo .tavola .segno { transition: opacity 300ms var(--ease-posa) calc(var(--k, 0) * 280ms), transform 300ms var(--ease-posa) calc(var(--k, 0) * 280ms); }
.film.js-fermo .tavola .filetto { transition: stroke-dashoffset 360ms var(--ease-rotta) calc(var(--k, 0) * 280ms + 120ms); }
.film.js-fermo .tavola .note > li { transition: opacity var(--t-passo) var(--ease-rotta) calc(var(--k, 0) * 280ms + 300ms), transform var(--t-passo) var(--ease-rotta) calc(var(--k, 0) * 280ms + 300ms); }
.film.js-fermo .tavola:not(.is-vista) .segno { opacity: 0; transform: scale(.6); }
.film.js-fermo .tavola:not(.is-vista) .filetto { stroke-dashoffset: 1; }
.film.js-fermo .tavola:not(.is-vista) .note > li { opacity: 0; transform: translateY(8px); }
.film.js-fermo .rotta__oro { transition: clip-path var(--t-tratto) var(--ease-rotta) 150ms; }
.film.js-fermo .rotta:not(.is-vista) .rotta__oro { clip-path: inset(0 calc((1 - var(--da, 0)) * 100%) 0 0); }
.film.js-fermo :is(.quadro--2 .rotta__nodo--2, .quadro--3 .rotta__nodo--3)::after { transition: transform var(--t-passo) var(--ease-posa) 900ms; }
.film.js-fermo :is(.quadro--2 .rotta__nodo--2, .quadro--3 .rotta__nodo--3)::before { transition: opacity var(--t-passo) var(--ease-posa) 900ms; }
.film.js-fermo :is(.quadro--2, .quadro--3) .rotta:not(.is-vista) :is(.rotta__nodo--2, .rotta__nodo--3)::after { transform: scale(0); }
.film.js-fermo :is(.quadro--2, .quadro--3) .rotta:not(.is-vista) :is(.rotta__nodo--2, .rotta__nodo--3)::before { opacity: 0; }
.film.js-fermo .rotta--arrivo .rotta__stella { transition: opacity 300ms var(--ease-posa) 1150ms, transform 300ms var(--ease-posa) 1150ms; }
.film.js-fermo .rotta--arrivo:not(.is-vista) .rotta__stella { opacity: 0; transform: scale(1.4); }




.lettura { position: absolute; left: 1.05em; right: 1.05em; top: 0; height: 0; pointer-events: none; opacity: 0; }
.lettura__fascia, .lettura__filo { position: absolute; left: 0; right: 0; top: 0; height: 1px; transform-origin: 0 0; }
.lettura__fascia { background: color-mix(in oklab, var(--oro-chiaro) 12%, transparent); }
.lettura__filo { background: var(--oro-chiaro); }


.cera { position: absolute; width: 3.25em; height: 3.25em; pointer-events: none; }
.js .cera:not(.is-pronta) .cera__ombra { visibility: hidden; }
.cera__corpo, .cera__ombra { position: absolute; inset: 0; }
.cera__corpo { transform: rotate(-9deg); }
.cera__corpo img, .cera__ombra > span { position: absolute; left: -7.9%; top: -6.45%; width: 112.9%; height: 112.9%; max-width: none; }
.cera__ombra > span { background: var(--noir);
  -webkit-mask: url('/v3/img/sigillo.webp') 0 0 / 100% 100% no-repeat;
  mask: url('/v3/img/sigillo.webp') 0 0 / 100% 100% no-repeat; }

.cera__ombra--alta { filter: blur(.8em); opacity: 0; transform: translate(.2em, .4em) rotate(-9deg); }
.cera__ombra--vicina { filter: blur(.28em); opacity: .34; transform: translate(.1em, .2em) rotate(-9deg); }
.cera__ombra--posata { filter: blur(.06em); opacity: .55; transform: translate(.04em, .08em) rotate(-9deg); }

:is(.pagina--annotata, .foglio .pagina) .pagina__scaletta { margin-bottom: 1.1em; }
.foglio .cera { left: 15.3em; top: 23.2em; }
.tavola__libro > .cera { font-size: calc(var(--Wf) / 19); left: 15.3em; top: calc(var(--Wf) * .016 + 23.2em); }


.libro--film .spunta, .tavola .cera, .l-pagina .lettura { visibility: hidden; }
.film--palco:not(.is-attesa) :is(.libro--film .spunta, .tavola .cera, .l-pagina .lettura) { visibility: visible; }


.quadro__scena--pagina { min-height: 0; padding: var(--s-2) 0 var(--s-4);
  background: radial-gradient(closest-side at 50% 48%, color-mix(in oklab, var(--luce) 13%, transparent), color-mix(in oklab, var(--luce) 7%, transparent) 60%, transparent); }
.quadro--2 { --Wp: min(316px, 100vw - 74px); }
.foglio { position: relative; width: var(--Wp); height: calc(var(--Wp) * 1.4142); font-size: calc(var(--Wp) / 19);
  box-shadow: var(--ombra-1); isolation: isolate; }
.foglio .pagina { background: linear-gradient(135deg, var(--chiara) 0, var(--chiara) 8%, color-mix(in oklab, var(--chiara) 45%, var(--avorio)) 58%, color-mix(in oklab, var(--chiara) 22%, var(--avorio)) 100%); }
.foglio .pagina::after { background: linear-gradient(135deg, color-mix(in oklab, var(--chiara) 24%, transparent) 0, transparent 38%),
  linear-gradient(135deg, transparent 46%, color-mix(in oklab, var(--noir) 6%, transparent) 100%); }
@media (min-width: 768px) { .quadro--2 { --Wp: 320px; } }


.film__didascalie--firma { position: relative; border-top: 0; }
.firma { position: absolute; left: 0; right: var(--rientro, 0px); top: 0; height: 1px; }
.firma::before, .firma__oro { content: ''; position: absolute; left: 0; right: 18px; top: 0; height: 1px;
  background: repeating-linear-gradient(90deg, var(--c) 0 3px, transparent 3px 5px); }
.firma::before { --c: color-mix(in oklab, var(--avorio) 26%, transparent); }
.firma__oro { --c: var(--oro); opacity: .7; }
.firma__stella { position: absolute; right: 0; top: -6.5px; width: 14px; height: 14px; opacity: .7; }


@media (max-width: 1279px) {
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 { row-gap: var(--s-3); }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__testo { display: contents; }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__testo > :is(.t-h2, .corpo) { max-width: 40rem; }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__scena { order: 2; margin-top: calc(-1 * var(--s-1)); }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .film__didascalie--firma { order: 3; margin-top: calc(-1 * var(--s-3));
    justify-self: center; width: var(--Wp); --rientro: calc(var(--Wp) * 2.075 / 19 - 7px); }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__testo > .corpo { margin-top: calc(-1 * var(--s-1)); }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: var(--s-6); }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 > :is(.rotta, .quadro__scena),
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .film__didascalie--firma { grid-column: 1 / -1; }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__testo > .t-h2 { grid-column: 1; grid-row: 2; }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__testo > .corpo { grid-column: 2; grid-row: 2; margin-top: 0; }
}

@media (min-width: 1280px) {
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 { grid-template-rows: auto auto auto auto; row-gap: 0; }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__testo { display: contents; }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__testo > .t-h2 { grid-column: 1; grid-row: 2; align-self: end; }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__testo > .corpo { grid-column: 1; grid-row: 3; align-self: start; }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .quadro__scena { grid-column: 2; grid-row: 2 / 4; min-height: 0; margin-top: var(--s-4); }
  .film:not(.film--palco:not(.is-attesa)) .quadro--2 .film__didascalie--firma { grid-column: 2; grid-row: 4; margin-top: calc(-1 * var(--s-1));
    justify-self: center; width: var(--Wp); --rientro: calc(var(--Wp) * 2.075 / 19 - 7px); }
}

.film--palco:not(.is-attesa) .quadro--2 .quadro__testo { position: relative; }
.film--palco:not(.is-attesa) .quadro--2 .film__didascalie--firma.is-sotto { position: absolute; left: var(--firma-x); top: var(--firma-y);
  width: var(--firma-w); margin: 0; --rientro: calc(var(--firma-w) * 2.075 / 19 - 7px); }


.film.js-fermo .quadro--2:not(.is-letta) .foglio .spunta path { stroke-dashoffset: 1; }
.film.js-fermo .quadro--2:not(.is-letta) .foglio :is(.cera__corpo, .cera__ombra) { opacity: 0; }
.film.js-fermo .quadro--2:not(.is-letta) [data-firma-testo] { opacity: 0; }
.film.js-fermo .quadro--2:not(.is-letta) .firma__oro { clip-path: inset(0 100% 0 0); }
.film.js-fermo .quadro--2:not(.is-letta) .firma__stella { opacity: 0; }

.oggetto-film { --pu: .86; font-size: calc(var(--pu) * 10px); position: relative;
  padding: 3.9em 9.7em 0 0;
  --pt-f: calc(23.3em / 390);
  --lente-l: 23em;
  --lente-m: 2.2;
  --fuoco-x: calc(294 * var(--pt-f)); --fuoco-y: calc(29.5 * var(--pt-f));
  --vetro-x: calc(var(--lente-l) * 124 / 420); --vetro-y: calc(var(--lente-l) * 118.5 / 420);
  --lente-dx: 7em; --lente-dy: 1.5em; }
.tel--film { --pu: .86; }
.tel--film .tel__corpo { transform: rotateY(0deg) rotateX(0deg); }
.oggetto-film > .tel { position: relative; }


.stato__senza-rete { position: absolute; left: calc(294 / 390 * 100%); top: calc(29.5 / 54 * 100%); transform: translate(-50%, -50%);
  font: 600 calc(9 * var(--pt))/1 var(--sans); letter-spacing: .01em; white-space: nowrap; color: var(--avorio); opacity: 0; }

.schermo__scatto--offline { position: absolute; left: 0; top: calc(54 * var(--pt)); width: 100%; opacity: 0; }


.lente { position: absolute; z-index: 1; width: var(--lente-l); height: var(--lente-l); pointer-events: none;
  left: calc(.85em + var(--fuoco-x) - var(--vetro-x)); top: calc(3.9em + .85em + var(--fuoco-y) - var(--vetro-y)); }
.lente__foto { position: absolute; inset: 0; width: 100%; height: 100%;
  filter: drop-shadow(.35em .7em .5em var(--ombra-colore)); }
.lente__vista { position: absolute; inset: 0; overflow: hidden; background: var(--noir);
  clip-path: ellipse(calc(var(--lente-l) * 95 / 420) calc(var(--lente-l) * 86 / 420) at var(--vetro-x) var(--vetro-y)); }

.lente__mondo { --pt: var(--pt-f); position: absolute; left: 0; top: 0; width: 23.3em; display: flex; flex-direction: column;
  transform-origin: 0 0; background: var(--noir);
  --mondo: translate(calc(var(--vetro-x) - var(--lente-m) * var(--fuoco-x)), calc(var(--vetro-y) - var(--lente-m) * var(--fuoco-y))) scale(var(--lente-m));
  transform: translate(0em, 0em) var(--mondo); }
.lente__mondo .stato { display: block; }

.lente__vetro { position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(ellipse calc(var(--lente-l) * 95 / 420) calc(var(--lente-l) * 86 / 420) at var(--vetro-x) var(--vetro-y), transparent 72%, color-mix(in oklab, var(--noir) 38%, transparent) 100%),
              radial-gradient(ellipse calc(var(--lente-l) * .13) calc(var(--lente-l) * .055) at calc(var(--vetro-x) - var(--lente-l) * .06) calc(var(--vetro-y) - var(--lente-l) * .135), color-mix(in oklab, var(--avorio) 9%, transparent), transparent 100%); }

.js .lente:not(.is-pronta) { visibility: hidden; }


#film-atto-3 .stato__senza-rete { opacity: 1; transition: opacity 160ms linear 1900ms; }
#film-atto-3 :is(.ico--segnale, .ico--wifi) { opacity: 0; transition: opacity 160ms linear 1900ms; }
#film-atto-3 :is(.sb, .wf) { opacity: .26; transition: opacity 140ms linear var(--m3-ritardo, 0ms); }
#film-atto-3 .sb:nth-of-type(4) { --m3-ritardo: 500ms; }
#film-atto-3 .sb:nth-of-type(3) { --m3-ritardo: 720ms; }
#film-atto-3 .sb:nth-of-type(2) { --m3-ritardo: 940ms; }
#film-atto-3 .sb:nth-of-type(1) { --m3-ritardo: 1160ms; }
#film-atto-3 .wf:nth-of-type(1) { --m3-ritardo: 1300ms; }
#film-atto-3 .wf:nth-of-type(2) { --m3-ritardo: 1380ms; }
#film-atto-3 .wf:nth-of-type(3) { --m3-ritardo: 1460ms; }
#film-atto-3 .barra { stroke-dashoffset: 0; transition: stroke-dashoffset 400ms var(--ease-rotta) 1400ms; }
#film-atto-3 .schermo__scatto--offline { opacity: 1; transition: opacity 400ms var(--ease-rotta) 1800ms; }
#film-atto-3 .lente { opacity: 1; transform: translate(0em, 0em); transition: transform 500ms var(--ease-rotta), opacity 200ms linear; }
#film-atto-3 .lente__mondo { transition: transform 500ms var(--ease-rotta); }


.js #film-atto-3:not(.is-senza-rete) .stato__senza-rete { opacity: 0; transition: opacity 300ms linear; }
.js #film-atto-3:not(.is-senza-rete) :is(.ico--segnale, .ico--wifi) { opacity: 1; transition: opacity 300ms linear; }
.js #film-atto-3:not(.is-senza-rete) :is(.sb, .wf) { opacity: 1; transition: opacity 300ms linear; }
.js #film-atto-3:not(.is-senza-rete) .barra { stroke-dashoffset: 1; transition: stroke-dashoffset 300ms var(--ease-rotta); }
.js #film-atto-3:not(.is-senza-rete) .schermo__scatto--offline { opacity: 0; transition: opacity 400ms var(--ease-rotta); }
.js #film-atto-3:not(.is-senza-rete) .lente { opacity: 0; transform: translate(var(--lente-dx), var(--lente-dy)); transition: transform 400ms var(--ease-rotta), opacity 300ms linear; }
.js #film-atto-3:not(.is-senza-rete) .lente__mondo { transform: translate(calc(-1 * var(--lente-m) * var(--lente-dx)), calc(-1 * var(--lente-m) * var(--lente-dy))) var(--mondo); transition: transform 400ms var(--ease-rotta); }

#film-atto-3.is-istantaneo :is(.lente, .lente__mondo, .ico, .sb, .wf, .barra, .stato__senza-rete, .schermo__scatto--offline) { transition: none !important; }


.simula { margin-top: var(--s-4); }
.simula__interruttore { display: inline-flex; align-items: center; gap: var(--s-2); min-height: var(--tocco); padding: 0 var(--s-1);
  margin-left: calc(-1 * var(--s-1));
  background: none; border: 0; color: var(--fg-corpo); cursor: pointer;
  font: 600 .75rem/1.2 var(--sans); letter-spacing: .2em; text-transform: uppercase; transition: color var(--t-soffio) var(--ease-rotta); }
.simula__interruttore:hover { color: var(--avorio); }
.simula__binario { position: relative; flex: none; width: 40px; height: 22px; border: 1px solid color-mix(in oklab, var(--avorio) 55%, transparent);
  transition: background-color var(--t-soffio) var(--ease-rotta), border-color var(--t-soffio) var(--ease-rotta); }
.simula__cursore { position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; background: var(--freddo);
  transition: transform var(--t-passo) var(--ease-rotta), background-color var(--t-soffio) var(--ease-rotta); }
.simula__interruttore[aria-pressed="true"] .simula__binario { border-color: var(--avorio); background: color-mix(in oklab, var(--avorio) 14%, transparent); }
.simula__interruttore[aria-pressed="true"] .simula__cursore { transform: translateX(18px); background: var(--avorio); }
.simula__interruttore:active .simula__binario { transform: translateY(1px); }
.simula__nota { margin-top: var(--s-1); }



.guida { --g-segno: 24px; }
.guida__oggetti { display: grid; gap: var(--s-8); margin-top: var(--s-6); }
.oggetto-lista { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: var(--s-3); align-items: start; }
.oggetto-lista__figura { grid-area: fig; }
.oggetto-lista__titolo { grid-area: tit; }
.oggetto-lista__titolo .mono { display: block; margin-top: 6px; }
.oggetto-lista > .voci { grid-area: voci; }
.oggetto-lista__fonte { grid-area: fonte; margin-top: var(--s-2); }


.oggetto-lista--libro { grid-template-areas: "fig tit" "voci voci"; }
.oggetto-lista__titolo { padding-top: 4px; }
.oggetto-lista--libro > .voci { margin-top: var(--s-3); }
.oggetto-lista__figura .libro { --W: 104px; --D: 11px; }

.oggetto-lista--libro .oggetto-lista__figura { padding: 6px 10px 10px 4px; }


.oggetto-lista--telefono { grid-template-areas: "fig tit" "fig fonte" "voci voci"; grid-template-rows: auto 1fr auto; }
.oggetto-lista--telefono .oggetto-lista__figura { padding: 2px 6px 8px 2px; }
.oggetto-lista--telefono .tel { --pu: .592; }
.oggetto-lista--telefono .oggetto-lista__fonte { align-self: end; margin: 0 0 var(--s-1); }
.oggetto-lista--telefono > .voci { margin-top: var(--s-2); }

.guida .tel__strati i:first-child { box-shadow: var(--ombra-carta), 5px 10px 20px var(--carta-ombra); }


.voci { display: grid; }
.voce { padding: 12px 0; border-top: 1px solid var(--linea); font-size: var(--f-corpo); line-height: 1.5; color: var(--fg); }
.voce:first-child { border-top: 0; }
.voce strong { font-weight: 600; }
.voce em { font-style: italic; }


.voci--telefono.is-tasti .voce { padding-left: var(--g-segno); }
.voci--telefono.is-tasti .voce--tasto { padding: 4px 0; }
.voce__tasto { position: relative; isolation: isolate; display: block; width: 100%; min-height: var(--tocco); margin: 0;
  padding: 8px 12px 8px var(--g-segno); border: 0; border-radius: 0; background: none; color: var(--fg); font: inherit; line-height: inherit;
  text-align: left; cursor: pointer; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }

.voce__tasto::after { content: ''; position: absolute; inset: 0; z-index: -1; background: var(--chiara); opacity: 0;
  box-shadow: inset 0 0 0 1px var(--linea); transition: opacity var(--t-soffio) linear; }

.voce__segno { position: absolute; left: 9px; top: calc(8px + .75em - 4.5px); width: 6px; height: 9px; background: currentColor;
  clip-path: polygon(0 0, 100% 50%, 0 100%); }

.voce__tasto::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--oro-chiaro);
  transform: scaleY(0); transform-origin: 50% 0; transition: transform var(--t-passo) var(--ease-rotta); }
.voce__tasto[aria-pressed="true"]::after { opacity: 1; }
.voce__tasto[aria-pressed="true"]::before { transform: none; }
.voce__tasto[aria-pressed="true"] { cursor: default; }
@media (hover: hover) {
  .voce__tasto[aria-pressed="false"]:hover::after { opacity: .6; }
}
.voce__tasto:active .voce__testo, .voce__tasto:active .voce__segno { transform: translateY(1px); }
.voce__testo { display: block; }
.guida__stato:not(:empty) { display: block; margin-top: var(--s-1); }
.guida__stato[data-stato="attesa"] { color: var(--fg-2); }
.guida__stato[data-stato="errore"] { color: var(--brand-errore); }
.guida__stato[data-stato="errore"]::before { content: "!"; margin-right: .45em; font-weight: 600; }
.guida__riprova { display: inline-flex; align-items: center; min-height: var(--tocco); margin: 0 0 0 .35em; padding: 0 .3em;
  border: 0; background: none; color: var(--brand-errore); font: 600 var(--f-didascalia)/1.5 var(--sans); text-decoration: underline;
  text-underline-offset: .18em; cursor: pointer; touch-action: manipulation; }
.guida__riprova[hidden] { display: none; }


.schermo__scatto--entra { position: absolute; left: 0; top: calc(54 * var(--pt)); width: 100%; }

@media (min-width: 768px) {
  .guida__oggetti { gap: var(--s-12); }
  .oggetto-lista, .oggetto-lista--libro { grid-template-columns: 216px minmax(0, 1fr); column-gap: var(--s-6);
    grid-template-areas: "fig tit" "fig voci" "fig fonte"; grid-template-rows: auto auto 1fr; align-items: start; }
  .oggetto-lista--libro > .voci { margin-top: var(--s-2); }
  .oggetto-lista__figura .libro { --W: 180px; --D: 18px; }
  .oggetto-lista--libro .oggetto-lista__figura { padding: 4px 0 0 8px; }
  .oggetto-lista--telefono .tel { --pu: .8; }
  .oggetto-lista--telefono .oggetto-lista__figura { padding-left: 8px; }
  .oggetto-lista--telefono .oggetto-lista__fonte { align-self: start; margin: var(--s-2) 0 0; }
  .voci--telefono.is-tasti ~ .oggetto-lista__fonte { padding-left: var(--g-segno); }
}
@media (min-width: 1280px) {

  .guida__oggetti { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--s-8); }
  .oggetto-lista, .oggetto-lista--libro { grid-template-columns: 228px minmax(0, 1fr); column-gap: var(--s-4); }
  .oggetto-lista__figura .libro { --W: 196px; --D: 20px; }
  .oggetto-lista--telefono .tel { --pu: .88; }
}
@media (prefers-reduced-motion: reduce) {
  .voce__tasto::before { transform: none; opacity: 0; transition: opacity var(--t-soffio) linear; }
  .voce__tasto[aria-pressed="true"]::before { opacity: 1; }
  .voce__tasto:active .voce__testo, .voce__tasto:active .voce__segno { transform: none; }
}


.metodo { --asse: 24px; --testo: 60px; --nodo: 13px; --sig: 48px; --gap-passi: var(--s-2); --riga: calc(var(--f-h3) * .72);
  --via: color-mix(in oklab, var(--avorio) 26%, transparent); }
.metodo__margine + .metodo__titolo { margin-top: 12px; }
.passi { position: relative; margin-top: var(--s-3); display: grid; row-gap: var(--gap-passi); }
.passo { position: relative; padding-left: var(--testo); }
.passo--1 { --fine: var(--nodo); }
.passo--2 { --fine: var(--sig); }
.passo__num { margin-right: .3em; font-style: italic; font-weight: 400; color: var(--fg-2); }
.passo__testo { margin-top: 2px; line-height: 1.5; }
.passo__sotto { margin-top: 4px; font: italic 400 1.0625rem/1.3 var(--serif); color: color-mix(in oklab, var(--avorio) 64%, transparent); max-width: 44ch; }
.metodo__link { margin-top: 12px; }


.passo__segno { position: absolute; z-index: var(--z-filo); left: calc(var(--asse) - var(--nodo) / 2); top: calc(var(--riga) - var(--nodo) / 2);
  width: var(--nodo); height: var(--nodo); }
.passo__segno--sigillo { left: calc(var(--asse) - var(--sig) / 2); top: calc(var(--riga) - var(--sig) / 2); width: var(--sig); height: var(--sig); }
.nodo { position: absolute; inset: 0; border-radius: 50%; border: 1px solid color-mix(in oklab, var(--avorio) 50%, transparent); background: var(--noir); }
.nodo__oro { position: absolute; inset: -1px; border-radius: 50%; border: 1px solid var(--oro); background: var(--oro); box-shadow: inset 0 0 0 2px var(--noir); }

.sigillo__posto { position: absolute; inset: 2%; border-radius: 50%; border: 1px dashed var(--via); opacity: 0; }
.metodo.is-armata .sigillo__posto { opacity: 1; }
.sigillo { position: absolute; inset: 0; }
.sigillo img { position: absolute; inset: 0; width: 100%; height: 100%; }
.sigillo__cuore { clip-path: circle(22% at 50% 50%); visibility: hidden; }
.metodo.is-in-posa .sigillo__corpo { -webkit-mask: radial-gradient(circle closest-side, transparent 44%, var(--noir) 44.5%);
  mask: radial-gradient(circle closest-side, transparent 44%, var(--noir) 44.5%); }
.metodo.is-in-posa .sigillo__cuore { visibility: visible; }


.tratto { position: absolute; left: calc(var(--asse) - .5px); width: 1px; top: calc(var(--riga) + var(--nodo) / 2 + 5px);
  bottom: calc(-1 * (var(--gap-passi) + var(--riga) - var(--fine) / 2 - 5px)); container-type: size; pointer-events: none; }
.tratto::before, .tratto__oro { content: ''; position: absolute; inset: 0; background: repeating-linear-gradient(180deg, var(--c) 0 3px, transparent 3px 5px); }
.tratto::before { --c: var(--via); }
.tratto__oro { --c: var(--oro); opacity: .7; }
.tratto__punta { position: absolute; left: -2px; top: -2.5px; width: 5px; height: 5px; border-radius: 50%; background: var(--oro); opacity: 0; }


.metodo.is-armata .tratto__oro { clip-path: inset(0 0 100% 0); }
.metodo.is-armata .nodo__oro { transform: scale(0); }
.metodo.is-armata .sigillo { opacity: 0; }

@media (min-width: 768px) and (max-width: 1023px) {

  .passi { max-width: 34rem; }
}
@media (max-width: 767px) {

  .metodo { padding-block: calc(var(--s-4) + var(--s-1)); }
}


.livelli__scelta { margin-top: var(--s-4); }
/* D-97 (18/10/2026): due schede (la guida e l'aggiunta Esperienze speciali) al posto dei tre livelli. */
.linguette { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid var(--campo); }
.linguette[hidden] { display: none; }
.linguetta { position: relative; min-height: 48px; padding: 0 4px 4px; background: none; border: 0; border-radius: var(--r-0);
  font: 500 1.25rem/1.1 var(--serif); color: var(--menu); text-align: center; cursor: pointer; touch-action: manipulation;
  -webkit-tap-highlight-color: transparent; transition: color var(--t-soffio) var(--ease-rotta); }
.linguetta:hover, .linguetta[aria-selected='true'] { color: var(--avorio); }
.linguetta:focus-visible { outline: 1px solid var(--fuoco); outline-offset: -1px; }
.linguette__indicatore { position: absolute; left: 0; bottom: -1px; width: calc(100% / 2); height: 2px; pointer-events: none;
  background: repeating-linear-gradient(90deg, var(--oro) 0 3px, transparent 3px 5px);
  transform: translateX(calc(var(--i, 0) * 100%)); transition: transform var(--t-passo) var(--ease-rotta); }

.livelli__pannelli { margin-top: var(--s-3); }

.livello + .livello { margin-top: var(--s-3); padding-top: var(--s-3); border-top: 1px solid var(--linea); }
.livello__prezzo { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: .45em; margin-top: var(--s-1); }
.livello__testo { margin-top: var(--s-1); }
.livello__da { font: italic 400 1.125rem/1 var(--serif); color: var(--fg-2); }
/* Giro di correzione 1 di D-97 (L3): il «+» delle Esperienze speciali come su /prezzi, in oro e pieno. */
.livello__da.livello__piu { font: 600 1.25rem/1 var(--sans); color: var(--oro); }
.livello__cifra { font: 500 2rem/1 var(--serif); letter-spacing: -.01em; font-variant-numeric: lining-nums tabular-nums; color: var(--fg); white-space: nowrap; }
.livello__giorni { font: 400 var(--f-mono)/1.4 var(--mono); letter-spacing: var(--track-mono); text-transform: uppercase; color: var(--fg-2); }

.is-linguette .livelli__pannelli { display: grid; }
.is-linguette .livello { grid-area: 1 / 1; margin: 0; padding: 0; border: 0; }
.is-linguette .livello[hidden] { display: block; visibility: hidden; }
.is-linguette .livello__nome { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.is-linguette .livello__prezzo { margin-top: 0; }
.livello:focus-visible { outline: 1px solid var(--fuoco); outline-offset: 6px; }

.livelli__righe { display: grid; gap: 2px; margin-top: var(--s-4); }
.livelli__righe .corpo { font-size: var(--f-didascalia); line-height: 1.55; }


.pagina-livelli { margin-top: var(--s-4); }
.pl { position: relative; padding: 18px 20px 14px 24px; color: var(--noir); box-shadow: var(--ombra-2);
  background: var(--chiara) url('/assets/brand/pattern/carta-avorio.svg') 0 0 / 28px 28px; }
.pl::after { content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, color-mix(in oklab, var(--noir) 16%, transparent) 0, color-mix(in oklab, var(--noir) 4%, transparent) 4%, transparent 12%); }
.pl__giorno { font: 600 var(--f-etichetta)/1.2 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: color-mix(in oklab, var(--caldo) 88%, var(--noir)); }
.pl__titolo { margin-top: 4px; padding-bottom: 10px; border-bottom: 1px solid var(--noir); font: 500 1.375rem/1.08 var(--serif); letter-spacing: -.005em; text-wrap: balance; }
.pl__scaletta { margin-top: 2px; }
.pl__scaletta li { display: grid; grid-template-columns: 7.6rem minmax(0, 1fr); column-gap: 10px; align-items: baseline; padding: 7px 0;
  font-size: .9375rem; line-height: 1.4;
  background: repeating-linear-gradient(90deg, color-mix(in oklab, var(--noir) 35%, transparent) 0 3px, transparent 3px 5px) top / 100% 1px no-repeat; }
.pl__scaletta li:first-child { background: none; }
.pl__ora { font: 600 var(--f-etichetta)/1.3 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--caldo); white-space: nowrap; }


.pl__sez { position: relative; margin: 6px -10px 0; padding: 8px 10px 9px; }
.pl__sez:first-of-type { margin-top: 4px; }
.pl__sez::before { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: 0;
  --t: color-mix(in oklab, var(--noir) 32%, transparent);
  background:
    repeating-linear-gradient(90deg, var(--t) 0 3px, transparent 3px 5px) top / 100% 1px no-repeat,
    repeating-linear-gradient(90deg, var(--t) 0 3px, transparent 3px 5px) bottom / 100% 1px no-repeat,
    repeating-linear-gradient(180deg, var(--t) 0 3px, transparent 3px 5px) left / 1px 100% no-repeat,
    repeating-linear-gradient(180deg, var(--t) 0 3px, transparent 3px 5px) right / 1px 100% no-repeat;
  transition: opacity var(--t-passo) var(--ease-rotta); }

.pl__sez::after { content: ''; position: absolute; left: 2px; top: 10px; bottom: 10px; width: 2px; background: var(--oro-chiaro);
  transform-origin: 50% 0; transition: transform var(--t-passo) var(--ease-rotta); }
.pl__eti { font: 600 var(--f-etichetta)/1.3 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: color-mix(in oklab, var(--caldo) 88%, var(--noir));
  transition: opacity var(--t-passo) var(--ease-rotta); }
.pl__testo { margin-top: 3px; font-size: .9375rem; line-height: 1.45; transition: opacity var(--t-passo) var(--ease-rotta), clip-path var(--t-passo) var(--ease-rotta); clip-path: inset(0 0 0 0); }

.pl__sez--titoli { display: flex; flex-wrap: wrap; column-gap: 20px; row-gap: 6px; }
.pl__titoletto { font: 600 var(--f-etichetta)/1.3 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: var(--caldo);
  transition: opacity var(--t-passo) var(--ease-rotta); }
.pl__dida { margin-top: var(--s-2); }


:is([data-pagina-livello='ESSENZIALE'] [data-livello-da='STANDARD'],
    [data-pagina-livello='ESSENZIALE'] [data-livello-da='COMPLETO'],
    [data-pagina-livello='STANDARD'] [data-livello-da='COMPLETO'])::before { opacity: 1; }
:is([data-pagina-livello='ESSENZIALE'] [data-livello-da='STANDARD'],
    [data-pagina-livello='ESSENZIALE'] [data-livello-da='COMPLETO'],
    [data-pagina-livello='STANDARD'] [data-livello-da='COMPLETO'])::after { transform: scaleY(0); }
:is([data-pagina-livello='ESSENZIALE'] [data-livello-da='STANDARD'],
    [data-pagina-livello='ESSENZIALE'] [data-livello-da='COMPLETO'],
    [data-pagina-livello='STANDARD'] [data-livello-da='COMPLETO']) :is(.pl__eti, .pl__titoletto) { opacity: .5; }
:is([data-pagina-livello='ESSENZIALE'] [data-livello-da='STANDARD'],
    [data-pagina-livello='ESSENZIALE'] [data-livello-da='COMPLETO'],
    [data-pagina-livello='STANDARD'] [data-livello-da='COMPLETO']) .pl__testo { opacity: 0; clip-path: inset(0 100% 0 0); }


.segnalibri__scorri { margin-top: var(--s-4); }
.segnalibri { display: grid; }
.segnalibro { position: relative; display: flex; flex-direction: column; gap: 4px; padding: 14px var(--s-2) 14px 40px; border-top: 1px solid var(--campo); }
.nastro { position: absolute; left: 10px; top: 0; width: 14px; height: 56px; pointer-events: none;
  clip-path: inset(0 -12px -32px -12px); filter: drop-shadow(1px 2px 2px var(--ombra-colore)); }
.nastro__seta { position: absolute; left: 0; right: 0; top: -8px; bottom: 0;
  background: linear-gradient(90deg, color-mix(in oklab, var(--avorio) 80%, var(--noir)) 0, var(--avorio) 38%, color-mix(in oklab, var(--avorio) 88%, var(--noir)) 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - 6px), 0 100%);
  transition: transform var(--t-soffio) var(--ease-rotta), clip-path var(--t-soffio) var(--ease-rotta); }
.segnalibro:nth-child(even) .nastro__seta {
  background: linear-gradient(90deg, color-mix(in oklab, var(--campo) 78%, var(--noir)) 0, color-mix(in oklab, var(--campo) 86%, var(--avorio)) 38%, var(--campo) 100%); }
.segnalibro:hover .nastro__seta { transform: translateY(8px); clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - 11px), 0 100%); }
.segnalibro__nome { font: 500 1.375rem/1.15 var(--serif); color: var(--fg); }
.segnalibro__promessa { font-size: var(--f-didascalia); line-height: 1.5; color: var(--fg-corpo); }
.segnalibro__prezzo { margin-top: auto; padding-top: 4px; font: 400 var(--f-mono)/1.6 var(--mono); letter-spacing: .08em; color: var(--fg-2); font-variant-numeric: tabular-nums; }
.segnalibri__tacche { display: none; }

.premium__sotto { display: grid; justify-items: start; gap: 4px; margin-top: var(--s-3); }
.premium__veste { margin-top: var(--s-2); padding-top: var(--s-1);
  background: repeating-linear-gradient(90deg, var(--linea-tratto) 0 3px, transparent 3px 5px) top / 100% 1px no-repeat; }


.scheda__prezzo { margin-top: var(--s-2); font: 500 var(--f-prezzo)/.92 var(--serif); letter-spacing: -.02em; font-variant-numeric: tabular-nums lining-nums; white-space: nowrap; }
.scheda__da { font: italic 400 .36em/1 var(--serif); color: var(--fg-2); letter-spacing: 0; margin-right: .12em; }
.scheda__nota { margin-top: var(--s-2); font-size: var(--f-didascalia); line-height: 1.55; color: var(--fg-2); max-width: 40ch; }
.scheda__righe { display: grid; margin-top: var(--s-4); border-bottom: 1px solid var(--linea); }
.riga { padding: 11px 0 12px; font-size: var(--f-didascalia); line-height: 1.5;
  background: repeating-linear-gradient(90deg, var(--linea-tratto) 0 3px, transparent 3px 5px) top / 100% 1px no-repeat; }
.riga:first-child { background: linear-gradient(var(--fg), var(--fg)) top / 100% 1px no-repeat; }

.riga dt { display: inline; white-space: nowrap; }
.riga__eti { font: 600 var(--f-etichetta)/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; color: var(--fg); }
.riga__puntini { display: inline-block; width: 2.2em; margin: 0 .35em 0 .15em; overflow: clip; white-space: nowrap; vertical-align: baseline;
  font: 400 var(--f-etichetta)/1 var(--sans); letter-spacing: .32em; color: var(--fg-2); }
.riga__puntini::before { content: '..................................................................................................................................................................................'; }
.riga dd { display: inline; color: var(--fg-corpo); }
.scheda__azioni { display: grid; gap: var(--s-1); margin-top: var(--s-4); justify-items: start; }
.scheda__azioni .btn { width: 100%; }


@media (max-width: 767px) {

  .livelli, .in-breve { padding-block: var(--s-6); }
  .blocco > .t-h2 + .t-lead { margin-top: var(--s-2); }
  .livelli__scelta { margin-top: var(--s-3); }
  .livelli__pannelli { margin-top: var(--s-2); }
  .livello__testo { font-size: var(--f-didascalia); line-height: 1.55; }

  .livelli__righe { display: block; margin-top: var(--s-3); font-size: var(--f-didascalia); line-height: 1.55; }
  .livelli__righe .corpo { display: inline; }
  .pagina-livelli { margin-top: var(--s-3); }
  .pl { padding: 14px 16px 10px 20px; }
  .pl__titolo { font-size: 1.1875rem; padding-bottom: 7px; }

  .pl__scaletta li { display: block; padding: 5px 0; font-size: .875rem; }
  .pl__scaletta .pl__ora { margin-right: 6px; }
  .pl__sez { margin-top: 4px; padding-block: 6px 7px; }

  .pl__sez:not(.pl__sez--titoli) .pl__eti { float: left; margin-right: 6px; line-height: calc(.875rem * 1.45); }
  .pl__testo { margin: 0; font-size: .875rem; line-height: 1.45; }
  .pl__titoletto { letter-spacing: .12em; }
  .pl__sez--titoli { column-gap: 16px; row-gap: 2px; }
  .pl__dida { margin-top: var(--s-1); }
  .scheda__prezzo { margin-top: var(--s-1); }
  .scheda__righe { margin-top: var(--s-2); }
  .riga { padding: 8px 0 9px; }
  .riga__eti { letter-spacing: .16em; }
  .scheda__azioni { margin-top: var(--s-3); }

  .segnalibri__scorri { margin-inline: calc(-1 * var(--margine)); }
  .segnalibri { grid-auto-flow: column; grid-auto-columns: min(76%, 300px); overflow-x: auto; overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory; scroll-padding-inline: var(--margine); padding-inline: var(--margine); scrollbar-width: none; }
  .segnalibri::-webkit-scrollbar { display: none; }
  .segnalibro { scroll-snap-align: start; padding-right: var(--s-3); }
  .segnalibri:focus-visible { outline: 1px solid var(--fuoco); outline-offset: -1px; }
  .js .segnalibri__tacche { display: flex; gap: 6px; margin: var(--s-2) var(--margine) 0; }
  .segnalibri__tacche li { width: 14px; height: 2px; background: var(--campo); transition: background-color var(--t-soffio) var(--ease-rotta); }
  .segnalibri__tacche li.is-vista { background: var(--avorio); }
}
@media (min-width: 768px) {

  .livelli > .contenitore { grid-template-rows: auto auto 1fr; }
  .livelli .blocco, .livelli__scelta, .livelli__righe { grid-column: 1 / span 4; }
  .livelli__righe { align-self: start; }
  .livelli__pagina { grid-column: 5 / -1; grid-row: 1 / span 3; align-self: center; margin-top: 0; }
  .scheda__azioni { grid-auto-flow: column; justify-content: start; align-items: center; column-gap: var(--s-3); }
  .scheda__azioni .btn { width: auto; min-width: 260px; }
  .segnalibri { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .riga { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 26rem); column-gap: var(--s-2); align-items: baseline; padding-block: 13px 14px; }
  .riga dt { display: flex; align-items: baseline; min-width: 0; }
  .riga__puntini { flex: 1 1 auto; width: auto; min-width: 1.5em; margin: 0 0 0 .6em; }
  .riga dd { display: block; }
}
@media (min-width: 1024px) {
  .segnalibri { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .segnalibro { padding: var(--s-3) var(--s-3) var(--s-3) 44px; }
  .segnalibro__prezzo { padding-top: var(--s-2); }
  .nastro { left: 12px; width: 16px; height: 72px; }
  .nastro__seta { clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - 7px), 0 100%); }
  .segnalibro:hover .nastro__seta { clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - 13px), 0 100%); }
  .segnalibro__nome { font-size: 1.5rem; }
  .premium__sotto { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: var(--s-3); }
  .premium__sotto .didascalia { max-width: none; }
}
@media (min-width: 1280px) {
  .livelli .blocco, .livelli__scelta, .livelli__righe { grid-column: 1 / span 5; }
  .livelli__pagina { grid-column: 7 / -1; justify-self: center; width: min(100%, 32rem); }
  .pl { padding: 26px 30px 20px 34px; }
  .premium .blocco { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: var(--s-12); align-items: end; }
  .premium .blocco > .eti { grid-column: 1; }
  .premium .blocco > .t-h2 { grid-column: 1; }
  .premium .blocco > .corpo { grid-column: 2; grid-row: 2; margin-top: 0; }
  .in-breve > .contenitore { grid-template-rows: auto 1fr; }
  .in-breve__intesta { grid-column: 1 / span 4; grid-row: 1; }
  .in-breve__righe { grid-column: 6 / -1; grid-row: 1 / span 2; }
  .in-breve__righe .scheda__righe { margin-top: 0; }
  .scheda__azioni { grid-column: 1 / span 4; grid-row: 2; align-self: start; gap: var(--s-2); }
  .scheda__azioni .btn { width: auto; min-width: 260px; }
}
@media (prefers-reduced-motion: reduce) {
  .linguette__indicatore, .pl__sez::after { transition: none; }
  .pl__sez::before, .pl__eti, .pl__titoletto, .pl__testo { transition: opacity var(--t-soffio) linear; }
  .pl__testo { clip-path: none !important; }
  .nastro__seta { transition: none; }
  .segnalibro:hover .nastro__seta { transform: none; }
}



.campione { overflow-x: clip; }
.campione__libro { position: relative; isolation: isolate; display: grid; place-items: center; padding: var(--s-1) 0 var(--s-4); }
.campione__libro .libro { --W: 212px; --D: 22px; }

.libro--campione::before, .libro--campione::after { content: ''; position: absolute; z-index: -1; pointer-events: none; transform-origin: 50% 50%; }
.libro--campione::before { left: -55%; width: 210%; top: calc(100% - var(--W) * .3); height: calc(var(--W) * .5); transform: rotate(-10deg);
  background: radial-gradient(closest-side, color-mix(in oklab, var(--luce) 16%, transparent), color-mix(in oklab, var(--luce) 6%, transparent) 60%, transparent); }
.libro--campione::after { left: -2%; width: 116%; top: calc(100% - var(--W) * .16); height: calc(var(--W) * .15); transform: rotate(-11deg);
  background: radial-gradient(closest-side at 46% 50%, color-mix(in oklab, var(--noir) 92%, transparent), color-mix(in oklab, var(--noir) 55%, transparent) 45%, transparent);
  transition: transform var(--t-passo) var(--ease-rotta); }

.campione__libro::before { content: ''; position: absolute; z-index: -1; left: 50%; top: 46%; width: 150%; aspect-ratio: 1.15; translate: -50% -50%; pointer-events: none;
  background: radial-gradient(closest-side at 46% 48%, color-mix(in oklab, var(--luce) 15%, transparent), color-mix(in oklab, var(--luce) 7%, transparent) 55%, transparent); }
.campione__dentro { margin-top: var(--s-3); }


.libro--campione .libro__corpo, .libro--campione .l-meta--sx { transition: transform var(--t-passo) var(--ease-rotta); }
@media (prefers-reduced-motion: no-preference) {
  .campione:has(.campione__link:focus-visible) .libro--campione .libro__corpo { transform: perspective(1400px) rotateX(-20deg) rotateY(-6deg); }
  .campione:has(.campione__link:focus-visible) .libro--campione .l-meta--sx { transform: rotateY(-18deg); }
  .campione:has(.campione__link:focus-visible) .libro--campione::after { transform: rotate(9deg); }
}
@media (prefers-reduced-motion: no-preference) and (hover: hover) {
  .campione:has(.campione__link:hover, .campione__libro:hover) .libro--campione .libro__corpo { transform: perspective(1400px) rotateX(-20deg) rotateY(-6deg); }
  .campione:has(.campione__link:hover, .campione__libro:hover) .libro--campione .l-meta--sx { transform: rotateY(-18deg); }
  .campione:has(.campione__link:hover, .campione__libro:hover) .libro--campione::after { transform: rotate(9deg); }
}

.libro--campione .l-pagina--bianca::before { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; opacity: 0;
  background: linear-gradient(90deg, color-mix(in oklab, var(--noir) 46%, transparent) 0, color-mix(in oklab, var(--noir) 18%, transparent) 26%, transparent 62%);
  transition: opacity var(--t-passo) var(--ease-rotta); }
@media (prefers-reduced-motion: no-preference) {
  .campione:has(.campione__link:focus-visible) .libro--campione .l-pagina--bianca::before { opacity: 1; }
}
@media (prefers-reduced-motion: no-preference) and (hover: hover) {
  .campione:has(.campione__link:hover, .campione__libro:hover) .libro--campione .l-pagina--bianca::before { opacity: 1; }
}

@supports (anchor-name: --a) {
  .campione__libro { anchor-name: --campione-libro; cursor: pointer; }
  .campione__link::after { content: ''; position: absolute; position-anchor: --campione-libro; z-index: var(--z-filo);
    top: anchor(top); left: anchor(left); right: anchor(right); bottom: anchor(bottom); }
}

@media (min-width: 768px) {
  .campione__libro { grid-column: 1 / span 3; grid-row: 1 / span 3; padding: var(--s-2) 0; }
  .campione__libro .libro { --W: 200px; --D: 22px; }
  .campione .blocco { grid-column: 4 / -1; align-self: center; }
}
@media (min-width: 1280px) {
  .campione__libro { grid-column: 2 / span 4; grid-row: 1 / span 3; padding: 0; }
  .campione__libro .libro { --W: 280px; --D: 28px; }
  .campione .blocco { grid-column: 7 / span 5; align-self: center; }
}


.cartiglio { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; }
.cartiglio__riga { min-width: 0; display: flex; align-items: center; gap: 10px; font: 400 var(--f-mono)/1 var(--mono); letter-spacing: var(--track-mono); text-transform: uppercase; color: var(--avorio); }
.cartiglio__da { flex: none; }
.cartiglio__rotta { flex: 1 1 0; min-width: 0; max-width: 340px; height: auto; overflow: visible; }
.cartiglio__a { flex: none; width: 7.6em; white-space: nowrap; }
.cartiglio__a > span { display: inline-block; }
.cartiglio__nota { font: italic 400 1rem/1.4 var(--serif); color: var(--freddo); }
#cartiglio-svela { mask-type: alpha; }
.cartiglio__svela { fill: none; stroke: var(--oro); stroke-width: 10; stroke-dasharray: 1 1; stroke-dashoffset: 0; }
.cartiglio__tratto { fill: none; stroke: var(--oro); stroke-width: 1.15; stroke-dasharray: 3 2.4; stroke-linecap: butt; }
.cartiglio__nodo { fill: var(--noir); stroke: var(--avorio); stroke-width: 1; }
.cartiglio__aereo { opacity: 0; transform-box: view-box; transform-origin: 0 0; transform: translate(222px, 27px) rotate(117deg); }
.cartiglio__stella { transform-box: fill-box; transform-origin: 50% 50%; }

.js .cartiglio.is-armato .cartiglio__svela { stroke-dashoffset: 1; }
.js .cartiglio.is-armato .cartiglio__stella { opacity: 0; }

.destinazioni__testa { margin-top: var(--s-6); }
.mete { margin-top: var(--s-4); }
.meta { position: relative; isolation: isolate; display: block; aspect-ratio: 4 / 5; overflow: hidden; color: var(--avorio); text-decoration: none; background: var(--notte); }
.mete__testa .meta { aspect-ratio: 16 / 10; }
.mete__testa .meta__nome { font-size: 1.875rem; }
.meta picture { position: absolute; inset: 0; }
.meta img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform var(--t-tratto) var(--ease-rotta), opacity var(--t-tratto) var(--ease-rotta); }

.js .meta.is-in-attesa img { opacity: 0; }

.meta::before { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: color-mix(in oklab, var(--noir) 14%, transparent);
  transition: opacity var(--t-tratto) var(--ease-rotta); }

.meta::after { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(0deg, color-mix(in oklab, var(--noir) 84%, transparent) 0, color-mix(in oklab, var(--noir) 72%, transparent) 64px, var(--velo) 104px, color-mix(in oklab, var(--noir) 22%, transparent) 148px, transparent 184px); }
.meta__testo { position: absolute; left: var(--s-2); right: var(--s-2); bottom: 14px; z-index: 2; display: grid; justify-items: start; gap: 3px; }
.meta__tipo { position: absolute; top: 14px; left: var(--s-2); z-index: 2; padding: 4px 7px; background: var(--noir); color: var(--avorio); font: 500 .6875rem/1.4 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.meta__nome { font: 500 1.5rem/1.1 var(--serif); letter-spacing: -.005em; }
.meta__parole { font: 400 .6875rem/1.45 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--avorio); }
.meta__azione { display: inline-flex; align-items: center; gap: .5em; margin-top: 5px; font: 600 var(--f-etichetta)/1.3 var(--sans); letter-spacing: var(--track-btn); text-transform: uppercase; }
.meta__freccia { display: inline-block; transition: transform var(--t-soffio) var(--ease-rotta); }
.meta:focus-visible { outline: 1px solid var(--oro); outline-offset: 2px; }
.meta:focus-visible img { transform: scale(1.03); }
.meta:focus-visible::before { opacity: 0; }
.meta:focus-visible .meta__freccia { transform: translateX(4px); }
@media (hover: hover) {
  .meta:hover img { transform: scale(1.03); }
  .meta:hover::before { opacity: 0; }
  .meta:hover .meta__freccia { transform: translateX(4px); }
}
.meta:active .meta__freccia { transform: translateX(6px); }

.mete__tacche { display: none; }
.destinazioni__altro { display: grid; justify-items: start; margin-top: var(--s-3); }


@media (max-width: 767px) {
  .mete__fila { display: grid; grid-auto-flow: column; grid-auto-columns: 58%; gap: var(--s-1); margin: 4px calc(-1 * var(--margine)) 0;
    padding: 4px var(--margine); overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory;
    scroll-padding-inline: var(--margine); scrollbar-width: none; }
  .mete__fila::-webkit-scrollbar { display: none; }
  .mete__fila > li { scroll-snap-align: start; }

  .mete__fila .meta__parole { min-height: 2.9em; }
  .mete__testa { padding-top: 4px; }
  .js .mete__tacche { display: flex; gap: 6px; margin-top: 12px; }
  .mete__tacche li { width: 14px; height: 2px; background: var(--campo); transition: background-color var(--t-soffio) var(--ease-rotta); }
  .mete__tacche li.is-vista { background: var(--avorio); }
  .destinazioni__altro { margin-top: var(--s-2); }
}

@media (min-width: 768px) {
  .mete { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-2); }
  .mete__testa, .mete__fila { display: contents; }
  .mete__testa .meta { aspect-ratio: 4 / 5; }
  .mete__testa .meta__nome { font-size: 1.5rem; }
}
@media (min-width: 1024px) {
  .meta, .mete__testa .meta { aspect-ratio: 3 / 2; }
  .mete { gap: var(--s-3); }
  .meta__nome, .mete__testa .meta__nome { font-size: 1.75rem; }
  .meta__testo { left: var(--s-3); bottom: 18px; }

  .destinazioni__testa { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); column-gap: calc(2 * var(--gutter)); align-items: end; }
  .destinazioni__testa > .eti { grid-column: 1; grid-row: 1; }
  .destinazioni__testa > .t-h2 { grid-column: 1; grid-row: 2; }
  .destinazioni__testa > .corpo { grid-column: 2; grid-row: 2; margin-top: 0; }
  .cartiglio { grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: var(--s-4); }
  .cartiglio__riga { width: min(100%, 520px); }
  .cartiglio__nota { justify-self: end; }
}


@media (min-width: 1024px) and (min-height: 820px) and (hover: hover) {
  .cartiglio { position: sticky; top: var(--h-testa); z-index: var(--z-didascalia); padding-block: 10px;
    background: var(--noir); box-shadow: 0 1px 0 var(--filetto); }
}
@media (prefers-reduced-motion: reduce) {
  .meta img, .meta::before, .meta__freccia { transition: none; }
  .meta:hover img, .meta:focus-visible img { transform: none; }
}


.memory { padding-block: calc(var(--s-4) + var(--s-1)); }
.memory__testa .t-h2 { max-width: none; }

.album { position: relative; margin-top: var(--s-4); --pag: min(52%, 182px); --det: min(54%, 196px); }
.album__pagina { width: var(--pag); }
.album__pagina img { width: 100%; height: auto; background: var(--chiara); transform: rotate(-1.5deg);
  box-shadow: var(--ombra-carta), 4px 8px 20px color-mix(in oklab, var(--noir) 9%, transparent); }
.album__pagina figcaption { margin-top: var(--s-2); }

.album__dettaglio { position: absolute; right: 0; bottom: var(--s-2); width: var(--det); z-index: var(--z-oggetto); }
.album__dettaglio figcaption { margin-bottom: var(--s-1); margin-left: auto; text-align: right; }
.album__dettaglio img { width: 100%; height: auto; background: var(--chiara); transform: rotate(1deg); box-shadow: var(--ombra-carta), 2px 4px 10px color-mix(in oklab, var(--noir) 12%, transparent); }

.memory__arrivo { margin-top: var(--s-3); }
.pezzi { margin-top: var(--s-2); }
.pezzi li { padding-block: 7px 8px; border-top: 1px solid var(--linea); font-size: var(--f-didascalia); line-height: 1.45; color: var(--fg-corpo); }
.pezzi strong { font-weight: 600; color: var(--fg); }
.memory__stato { padding-top: var(--s-2); border-top: 1px solid var(--linea); }
.memory__nota { font-size: var(--f-didascalia); line-height: 1.5; color: var(--fg-2); max-width: 46ch; }
.memory__stato .lnk { margin-top: 4px; }

@media (min-width: 768px) {
  .album { grid-column: 1 / span 4; grid-row: 2; margin-top: var(--s-6); --pag: 56%; --det: 50%; align-self: start; }
  .memory__arrivo { grid-column: 5 / -1; grid-row: 2; margin-top: var(--s-6); }
}
@media (min-width: 1280px) {
  .memory { padding-block: var(--s-12); }
  .memory__testa { grid-column: 7 / -1; grid-row: 1; }
  .album { grid-column: 1 / span 5; grid-row: 1 / span 2; align-self: center; margin-top: 0; --pag: 58%; --det: 50%; }
  .memory__arrivo { grid-column: 7 / -1; grid-row: 2; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--gutter);
    align-items: start; margin-top: var(--s-6); }
  .memory__arrivo > .tag { grid-column: 1 / -1; justify-self: start; }
  .memory__stato { margin-top: var(--s-2); }
}


.regalo { padding-block: calc(var(--s-4) + var(--s-1)); overflow-x: clip; }
.regalo__scena { margin-top: var(--s-2); }

.biglietto-scena { --S: min(100%, 300px); position: relative; width: var(--S); margin-inline: auto; aspect-ratio: 340 / 186; }
@media (min-width: 768px) { .biglietto-scena { --S: min(100%, 420px); margin-inline: calc(var(--S) * -40 / 340) 0; } }
.biglietto-scena::before { content: ''; position: absolute; z-index: var(--z-fondo); left: -4%; right: -8%; top: -2%; bottom: -18%; pointer-events: none;
  background: radial-gradient(closest-side, var(--pozza), color-mix(in oklab, var(--luce) 5%, transparent) 55%, transparent); }
.biglietto-scena__ombra { position: absolute; z-index: var(--z-oggetto); left: calc(40% / 3.4); width: calc(260% / 3.4); top: calc(4600% / 186); height: calc(13200% / 186);
  box-shadow: var(--ombra-2); pointer-events: none; }
.biglietto-scena__img { position: absolute; z-index: var(--z-oggetto); left: 0; width: 100%; top: calc(-1200% / 186); height: calc(23000% / 186); max-width: none; }
.biglietto-scena.is-armata .biglietto-scena__img { visibility: hidden; opacity: 0; }
.biglietto-scena.is-armata .biglietto-scena__ombra { opacity: 0; }
.biglietto-scena.is-forma .biglietto-scena__ombra { transition: opacity var(--t-passo) var(--ease-rotta) var(--t-tratto); }

@media (prefers-reduced-motion: reduce) {
  .biglietto-scena.is-forma :is(.biglietto-scena__img, .biglietto-scena__ombra) { transition: opacity var(--t-soffio) linear; }
}
.biglietto-scena.is-ripiego { aspect-ratio: auto; margin-left: 0; }
.biglietto-scena.is-ripiego::before, .biglietto-scena.is-ripiego .biglietto-scena__ombra { display: none; }
.biglietto-scena.is-ripiego .biglietto-scena__img { position: static; height: auto; box-shadow: var(--ombra-2); }

.regalo__dida { display: grid; margin-top: var(--s-2); }

.regalo__stampa { display: grid; margin-top: var(--s-1); padding-top: calc(var(--s-1) + 4px);
  background: repeating-linear-gradient(90deg, var(--linea-tratto) 0 4px, transparent 4px 7px) top left / 100% 1px no-repeat; }
.regalo__motto { font: 500 var(--f-h3)/1.2 var(--serif); color: var(--fg); }
.regalo__sotto { font: italic 400 1.0625rem/1.4 var(--serif); color: var(--fg-corpo); }
.regalo__codice { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: var(--s-2); margin-top: 4px; }
.regalo__cifre { font: 400 var(--f-mono)/1.5 var(--mono); letter-spacing: var(--track-mono); color: var(--fg); }
.regalo__uso { font-size: var(--f-didascalia); line-height: 1.5; color: var(--fg-2); }

.regalo__corpo { margin-top: var(--s-3); }
.regalo__durate { margin-top: var(--s-1); color: var(--fg); }
.regalo__link { display: grid; justify-items: start; margin-top: var(--s-1); }

@media (min-width: 768px) {
  .regalo__testa { grid-column: 1 / span 4; grid-row: 1; }
  .regalo__corpo { grid-column: 1 / span 4; grid-row: 2; margin-top: var(--s-3); }
  .regalo__scena { grid-column: 5 / -1; grid-row: 1 / span 2; align-self: center; margin-top: 0; }
}
@media (min-width: 1280px) {
  .regalo { padding-block: var(--s-12); }
  .regalo__testa, .regalo__corpo { grid-column: 1 / span 5; }
  .regalo__scena { grid-column: 7 / -1; }
  .biglietto-scena { --S: min(100%, 580px); }

  .regalo__dida { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--gutter); margin-top: var(--s-3); }
  .regalo__foglio { grid-row: 1 / span 2; padding-top: var(--s-2); }
  .regalo__stampa { margin-top: 0; }
}


.agenzie { padding-block: calc(var(--s-4) + var(--s-1)); }
/* 18/10 (rifiniture della revisione visiva): i quattro punti non sono una sequenza, quindi niente numeri di riga
   (erano 01-04 in mono, da un ::before con un contatore). Resta il filetto del fascicolo. */
.fascicolo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--gutter); row-gap: var(--s-2); margin-top: var(--s-2); }
.fascicolo li { padding-top: var(--s-1); border-top: 1px solid var(--campo); font-size: var(--f-didascalia); line-height: 1.4; color: var(--fg-corpo); }
.agenzie__link { margin-top: var(--s-1); }
/* Il titolo non tocca il suo paragrafo: 16 px, a ogni larghezza (prima 0). */
#agenzie .agenzie__testa .t-h2 + .corpo { margin-top: var(--s-2); }

@media (min-width: 768px) {
  .agenzie__testa { grid-column: 1 / span 4; grid-row: 1; }
  .agenzie__link { grid-column: 1 / span 4; grid-row: 2; margin-top: var(--s-3); }
  .fascicolo { grid-column: 5 / -1; grid-row: 1 / span 2; align-self: start; grid-template-columns: minmax(0, 1fr); row-gap: 0; margin-top: 0; }
  .fascicolo li { padding-block: 14px; font-size: var(--f-corpo); line-height: 1.55; }
  .fascicolo li:last-child { border-bottom: 1px solid var(--campo); }
}
@media (min-width: 1280px) {
  .agenzie { padding-block: var(--s-12); }
  .agenzie__testa, .agenzie__link { grid-column: 1 / span 5; }
  .fascicolo { grid-column: 7 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--gutter); row-gap: var(--s-4); align-self: center; }
  .fascicolo li { display: block; padding-block: var(--s-2) 0; }
  .fascicolo li:last-child { border-bottom: 0; }
}


.colophon { padding-block: var(--s-6); }
.colophon__voce { font: italic 400 var(--f-voce-grande)/1.22 var(--serif); color: var(--fg); max-width: 22ch; text-wrap: balance; }
.colophon__scheda { margin-top: var(--s-4); padding: var(--s-3) var(--s-3) var(--s-1); background: var(--chiara);
  border: 1px solid transparent; border-image: url('/assets/brand/segni/cornice-angoli.svg') 24 / 16px / 0 stretch;
  box-shadow: var(--ombra-carta); }
.colophon__riga { font: 500 var(--f-h3)/1.2 var(--serif); color: var(--fg); max-width: 26ch; text-wrap: balance; padding-bottom: var(--s-2); }
.colophon__voci { display: grid; }
.colophon__voci > div { display: grid; gap: 2px; padding-block: 12px;
  background: repeating-linear-gradient(90deg, var(--linea-tratto) 0 3px, transparent 3px 5px) top / 100% 1px no-repeat; }
.colophon__voci dt { font: 600 var(--f-etichetta)/1.5 var(--sans); letter-spacing: var(--track-eti); text-transform: uppercase; color: var(--accento-testo); }
.colophon__voci dd { font-size: var(--f-didascalia); line-height: 1.6; color: var(--fg-corpo); }
@media (min-width: 768px) {
  .colophon { padding-block: var(--s-8); }
  .colophon__scheda { margin-top: var(--s-6); padding: var(--s-4) var(--s-6) var(--s-2); }
  .colophon__voci > div { grid-template-columns: 8.5rem minmax(0, 1fr); column-gap: var(--s-3); align-items: baseline; padding-block: var(--s-3); }
}
@media (min-width: 1280px) {
  .colophon { padding-block: var(--s-12); }
  .colophon .colophon__testa { grid-column: 1 / span 5; align-self: center; }
  .colophon .colophon__scheda { grid-column: 7 / -1; margin-top: 0; }
}


.domande { padding-block: var(--s-6) var(--s-4); }
.domande__lista { margin-top: var(--s-3); border-bottom: 1px solid var(--linea); }
.domanda { border-top: 1px solid var(--linea); }
.domanda summary { display: grid; grid-template-columns: minmax(0, 1fr) 20px; align-items: center; column-gap: var(--s-2); min-height: 52px; padding: 6px 0;
  font: 500 1.25rem/1.25 var(--serif); font-variant-numeric: lining-nums; color: var(--fg); cursor: pointer; list-style: none; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
.domanda summary::-webkit-details-marker { display: none; }
.domanda summary::marker { content: ''; }
.domanda__q { min-width: 0; text-wrap: balance; }
.domanda summary::after { content: ''; justify-self: end; width: 13px; height: 13px; color: var(--fg-2);
  background: linear-gradient(currentColor, currentColor) center / 13px 1px no-repeat, linear-gradient(currentColor, currentColor) center / 1px 13px no-repeat;
  transition: transform var(--t-passo) var(--ease-rotta), color var(--t-soffio) var(--ease-rotta); }
.domanda summary:hover::after, .domanda summary:focus-visible::after, .domanda[open] summary::after { color: var(--avorio); }
.domanda[open] summary::after { transform: rotate(45deg); }
.domanda summary:focus-visible { outline-offset: 4px; }
.domanda__risposta { display: grid; gap: var(--s-1); padding: 0 0 var(--s-3); }
.domanda[open] .domanda__risposta { animation: risposta-entra var(--t-passo) var(--ease-rotta); }
@keyframes risposta-entra { from { opacity: 0; transform: translateY(8px); } }
@keyframes risposta-dissolve { from { opacity: 0; } }
.domanda__risposta p { color: var(--fg-corpo); max-width: 62ch; }

.domanda__risposta a:not(.lnk) { padding-block: 14px; text-underline-offset: 4px; text-decoration-color: color-mix(in oklab, currentColor 45%, transparent);
  transition: text-decoration-color var(--t-soffio) var(--ease-rotta); }
.domanda__risposta a:not(.lnk):hover { text-decoration-color: var(--accento-testo); }
@media (min-width: 768px) {
  .domande { padding-block: var(--s-8) var(--s-6); }
  .domande__lista { margin-top: var(--s-4); }
  .domanda summary { min-height: 56px; }
  .domanda__risposta { padding-right: calc(20px + var(--s-2)); }
}
@media (min-width: 1280px) {
  .domande { padding-block: var(--s-12) var(--s-8); }
  .domande .domande__testa { grid-column: 1 / span 4; grid-row: 1; align-self: start; position: sticky; top: calc(var(--h-testa) + var(--s-6)); }
  .domande .domande__lista { grid-column: 6 / -1; grid-row: 1; margin-top: 0; }
}


.chiusura { overflow: clip; padding-block: var(--s-4) var(--s-8); }
.chiusura__luce { position: absolute; left: 50%; top: 60%; width: min(170vw, 1180px); aspect-ratio: 16 / 10; transform: translate(-54%, -54%); pointer-events: none;
  background: radial-gradient(closest-side, color-mix(in oklab, var(--luce) 11%, transparent), color-mix(in oklab, var(--luce) 6%, transparent) 46%, color-mix(in oklab, var(--luce) 2%, transparent) 74%, transparent); }
.chiusura .contenitore { position: relative; }
.chiusura__corpo { display: grid; grid-template-columns: minmax(0, 1fr); justify-items: center; text-align: center; }
.chiusura__rotta { width: min(460px, 100%); clip-path: inset(0); }
.chiusura__rotta img { width: 100%; height: auto; }
.chiusura__eti { margin-top: var(--s-6); }
.chiusura__titolo { margin-top: var(--s-2); max-width: none; }
.chiusura__testo { margin-top: var(--s-3); max-width: 30rem; }
.chiusura__cta { margin-top: var(--s-4); width: 100%; max-width: 380px; }
.chiusura__riga { margin-top: var(--s-2); }
.chiusura__stella { width: 20px; height: 20px; margin-top: var(--s-4); }
.chiusura__eti { --d: 300ms; } .chiusura__titolo { --d: 380ms; } .chiusura__testo { --d: 460ms; } .chiusura__cta { --d: 540ms; } .chiusura__riga { --d: 620ms; }
.js .chiusura.is-armata .chiusura__rotta { clip-path: inset(0 100% 0 0); }
.js .chiusura.is-armata .chiusura__luce { opacity: 0; }
.js .chiusura.is-armata :is(.chiusura__eti, .chiusura__titolo, .chiusura__testo, .chiusura__cta, .chiusura__riga) { opacity: 0; transform: translateY(8px); }
.js .chiusura.is-armata .chiusura__stella { opacity: 0; transform: scale(1.4); }
.js .chiusura.is-in .chiusura__rotta { transition: clip-path var(--t-tratto) var(--ease-rotta); }
.js .chiusura.is-in .chiusura__luce { transition: opacity var(--t-tratto) var(--ease-rotta); }
.js .chiusura.is-in :is(.chiusura__eti, .chiusura__titolo, .chiusura__testo, .chiusura__cta, .chiusura__riga) {
  transition: opacity var(--t-passo) var(--ease-rotta) var(--d), transform var(--t-passo) var(--ease-rotta) var(--d),
    background-color var(--t-soffio) var(--ease-rotta), color var(--t-soffio) var(--ease-rotta); }
.js .chiusura.is-in .chiusura__stella { transition: opacity 300ms var(--ease-posa) 1100ms, transform 300ms var(--ease-posa) 1100ms; }
@media (min-width: 768px) {
  .chiusura { padding-block: var(--s-6) var(--s-12); }
  .chiusura__eti { margin-top: var(--s-8); }
}
@media (min-width: 1280px) {
  .chiusura .chiusura__corpo { grid-column: 3 / span 8; }
}


.piede { padding-block: var(--s-6) calc(var(--s-4) + env(safe-area-inset-bottom, 0px)); background: var(--noir); border-top: 1px solid var(--filetto); }
.piede__griglia { row-gap: var(--s-4); }
.piede__logo { height: 44px; width: auto; margin-left: -10px; }
.piede__firma { margin-top: var(--s-2); font-size: var(--f-didascalia); line-height: 1.55; color: var(--fg-2); max-width: 36ch; }
.piede__griglia > .piede__col { grid-column: span 2; }
.piede__griglia > .piede__contatti { grid-column: 1 / -1; }
.piede__col .eti { margin-bottom: 4px; }
.piede__col ul { display: grid; }
.piede__col a { display: inline-flex; align-items: center; min-height: var(--tocco); min-width: var(--tocco); font-size: .9375rem; color: var(--menu);
  text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 5px; text-decoration-thickness: 1px;
  transition: color var(--t-soffio) var(--ease-rotta), text-decoration-color var(--t-soffio) var(--ease-rotta); }
.piede__col a:hover, .piede__col a:focus-visible { color: var(--avorio); text-decoration-color: color-mix(in oklab, var(--avorio) 45%, transparent); }
.piede__contatti { font-style: normal; }
.piede__contatti p:not(.eti) { font-size: .9375rem; color: var(--menu); }
.piede__col a.da-confermare { text-decoration: underline dotted var(--freddo); text-underline-offset: 4px; }
.piede__legale { padding-top: var(--s-3); border-top: 1px solid var(--filetto); font-size: .8125rem; line-height: 1.6; color: var(--freddo); max-width: 72ch; }
@media (min-width: 768px) {
  .piede { padding-block: var(--s-8) calc(var(--s-6) + env(safe-area-inset-bottom, 0px)); }
  .piede__griglia > .piede__marchio { grid-column: 1 / -1; }
  .piede__griglia > .piede__col { grid-column: span 3; }
  .piede__griglia > .piede__contatti { grid-column: span 2; }
  .piede__griglia > .piede__legale { grid-column: 1 / -1; }
}
@media (min-width: 1280px) {
  .piede__griglia > .piede__marchio { grid-column: 1 / span 4; }
  .piede__griglia > .piede__col { grid-column: span 3; }
  .piede__griglia > .piede__contatti { grid-column: span 2; }
}


@media (prefers-reduced-motion: reduce) {
  .js .chiusura.is-armata .chiusura__rotta { clip-path: none; opacity: 0; }
  .js .chiusura.is-armata :is(.chiusura__eti, .chiusura__titolo, .chiusura__testo, .chiusura__cta, .chiusura__riga, .chiusura__stella) { transform: none; }
  .js .chiusura.is-in :is(.chiusura__rotta, .chiusura__luce, .chiusura__eti, .chiusura__titolo, .chiusura__testo, .chiusura__cta, .chiusura__riga) { transition: opacity var(--t-soffio) linear; }
  .js .chiusura.is-in .chiusura__stella { transition: opacity var(--t-soffio) linear 250ms; }
  .domanda summary::after { transition: color var(--t-soffio) linear; }
  .domanda[open] .domanda__risposta { animation: risposta-dissolve var(--t-soffio) linear; }
}


@media (min-width: 768px) {
  .prima { padding-top: calc(var(--h-testa) + var(--s-6)); padding-bottom: var(--s-6); }
  .prima__sotto { margin-top: var(--s-3); }
  .prima__cta { margin-top: var(--s-4); }
  .prima__cta .btn { width: auto; min-width: 260px; }
  .prima__griglia > .natura { margin-top: var(--s-8); }
  .oggetto-film, .tel--film { --pu: 1.02; }

}


@media (min-width: 1024px) {

  .prima { min-height: 100vh; min-height: 100svh; display: grid; align-items: center; padding-top: var(--h-testa); padding-bottom: var(--s-4); }
  .prima__griglia { grid-template-rows: 1fr repeat(5, auto) 1fr; align-items: start; min-height: calc(100vh - var(--h-testa) - var(--s-4)); min-height: calc(100svh - var(--h-testa) - var(--s-4)); }
  .prima__griglia > * { grid-column: 1 / span 4; }
  .prima__griglia > .natura { grid-column: 5 / -1; grid-row: 1 / -1; margin: 0; align-self: center; justify-self: end; }
  .prima__griglia > h1 { grid-row: 2; }
  .prima__griglia > .prima__sotto { grid-row: 3; }
  .prima__griglia > .prima__cta { grid-row: 4; }
  .prima__griglia > .talloncino { grid-row: 5; }
  .prima__griglia > .prima__campione { grid-row: 6; }

  .oggetto-film, .tel--film { --pu: .98; }


  .metodo { --nodo: 15px; --sig: 112px; --G: var(--s-8); padding-block: var(--s-12); }
  .metodo__titolo { max-width: none; }
  .passi { margin-top: var(--s-4); grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--G); align-items: start; }
  .passo { padding: calc(var(--sig) + var(--s-2)) 0 0; }
  .passo__testo { margin-top: var(--s-1); }
  .passo__sotto { margin-top: var(--s-1); }
  .passo__segno { left: 0; top: calc(var(--sig) / 2 - var(--nodo) / 2); }
  .passo__segno--sigillo { left: 0; top: 0; }
  .tratto { left: calc(var(--nodo) + 8px); right: calc(-1 * var(--G) + 8px); width: auto; top: calc(var(--sig) / 2 - .5px); bottom: auto; height: 1px; }
  .tratto::before, .tratto__oro { background: repeating-linear-gradient(90deg, var(--c) 0 3px, transparent 3px 5px); }
  .tratto__punta { left: -2.5px; top: -2px; }
  .metodo.is-armata .tratto__oro { clip-path: inset(0 100% 0 0); }
  .metodo__link { margin-top: var(--s-4); }

}



@media (min-width: 768px) {
  .quadro { width: min(100% - 2 * var(--margine), var(--contenitore)); margin-inline: auto; padding: var(--s-6) 0 var(--s-8); row-gap: var(--s-4); }
  .quadro__testo { max-width: 40rem; }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .quadro__testo { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: var(--s-6); align-items: start; max-width: none; }
  .quadro__testo > * { grid-column: 2; }
  .quadro__testo > .t-h2 { grid-column: 1; grid-row: 1 / span 6; }
  .quadro__testo > .t-h2 + * { margin-top: 0; }
}
@media (min-width: 1280px) {
  .quadro { grid-template-columns: minmax(0, 340px) minmax(0, 1fr); column-gap: var(--s-6); }
  .quadro > .rotta { grid-column: 1 / -1; }
  .quadro__testo { grid-column: 1; grid-row: 2; align-self: center; }
  .quadro__scena { grid-column: 2; grid-row: 2; min-height: 640px; }
  .quadro__scena--libro { min-height: 0; }
}


.film--palco .film__pista { height: 300vh; height: 300svh; }

.film--palco.is-attesa .film__pista { height: auto; }
.film--palco .film__palco { padding-inline: max(var(--margine), calc((100% - var(--contenitore)) / 2)); }
.film--palco .quadro { width: auto; margin-inline: 0; padding-inline: 0; }
.film--palco:not(.is-attesa) .film__palco, .film--palco.is-attesa .quadro--1 {
  height: 100vh; height: 100svh; padding-top: var(--h-testa); padding-bottom: var(--s-3);
  display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto var(--testo-h, auto) minmax(0, 1fr); row-gap: var(--s-3); column-gap: var(--s-6); }
.film--palco:not(.is-attesa) .film__palco { position: sticky; top: 0; overflow: hidden; }
.film--palco.is-attesa .quadro--1 { border-bottom: 0; }
.film--palco:not(.is-attesa) .quadro { display: contents; }
.film--palco:not(.is-attesa) :is(.quadro--2, .quadro--3) > .rotta, .film--palco:not(.is-attesa) .quadro--2 .quadro__scena { display: none; }
:is(.film--palco:not(.is-attesa), .film--palco.is-attesa .quadro--1) .rotta { grid-row: 1; grid-column: 1 / -1; --rotta-su: var(--s-2); }
:is(.film--palco:not(.is-attesa), .film--palco.is-attesa .quadro--1) .quadro__testo { grid-row: 2; grid-column: 1; align-self: end; max-width: none; }
:is(.film--palco:not(.is-attesa), .film--palco.is-attesa .quadro--1) .quadro__scena { grid-row: 3; grid-column: 1; min-height: 0; container-type: size; }

:is(.film--palco:not(.is-attesa), .film--palco.is-attesa .quadro--1) .tavola {
  --Wf: max(180px, min(360px, (100cqw - var(--nG) - var(--nW)) / 2.032, (100cqh - 225px) / 1.4462)); }

.film--palco:not(.is-attesa) :is(.quadro--2, .quadro--3) :is(.quadro__testo, .quadro__scena) { opacity: 0; visibility: hidden; }
.film--palco:not(.is-attesa) .quadro--1 .rotta__punta { opacity: 1; }

.film--palco:not(.is-attesa) .quadro__scena--telefono { align-content: center; }
.film--palco:not(.is-attesa) .quadro--3 :is(.oggetto-film, .tel--film) { font-size: min(calc(var(--pu) * 10px), calc((100cqh - 48px - 34px) / 59.25)); }
@media (min-width: 1280px) {
  .film--palco:not(.is-attesa) .film__palco, .film--palco.is-attesa .quadro--1 {
    grid-template-columns: minmax(0, 340px) minmax(0, 1fr); grid-template-rows: auto minmax(0, 1fr); }
  :is(.film--palco:not(.is-attesa), .film--palco.is-attesa .quadro--1) .quadro__testo { grid-row: 2; grid-column: 1; align-self: center; }
  :is(.film--palco:not(.is-attesa), .film--palco.is-attesa .quadro--1) .quadro__scena { grid-row: 2; grid-column: 2; }
}


@media (min-width: 1280px) {
  .prima__griglia > * { grid-column: 1 / span 5; }
  .prima__griglia > .natura { grid-column: 6 / -1; }
  .oggetto-film, .tel--film { --pu: 1.2; }


  .metodo .metodo__margine { grid-column: 1 / span 2; grid-row: 1; align-self: baseline; }
  .metodo .metodo__titolo { grid-column: 3 / -1; grid-row: 1; align-self: baseline; margin-top: 0; }
  .metodo .passi, .metodo .metodo__link { grid-column: 3 / -1; }
}


@media (prefers-reduced-motion: reduce) {
  .js .rev { transform: none; transition: opacity var(--t-soffio) linear; }

  .btn, .lnk, .lnk .freccia, .domanda summary::after { transition: none; }
}

@media (prefers-reduced-motion: reduce) {
  #film-atto-3 :is(.lente, .lente__mondo, .ico, .sb, .wf, .barra, .stato__senza-rete, .schermo__scatto--offline),
  .js #film-atto-3:not(.is-senza-rete) :is(.lente, .lente__mondo, .ico, .sb, .wf, .barra, .stato__senza-rete, .schermo__scatto--offline) {
    transition: opacity var(--t-soffio) linear; }
  .js #film-atto-3:not(.is-senza-rete) .lente { transform: none; }
  .js #film-atto-3:not(.is-senza-rete) .lente__mondo { transform: translate(0em, 0em) var(--mondo); }
  .simula__cursore, .simula__binario { transition: background-color var(--t-soffio) linear, border-color var(--t-soffio) linear; }
}

@media (prefers-reduced-motion: reduce) {
  .testa__icona use { transition: opacity var(--t-soffio) linear; }
  .testa__icona-chiudi, .testa.is-aperta .testa__icona-menu { transform: none; }
  .js .testa.is-aperta .menu__lista li, .js .testa.is-aperta .menu__cta { animation: none; }
  .cta__inchiostro { clip-path: none; opacity: 0; transition: opacity var(--t-soffio) linear; }
  .testa.is-cta-sola .cta__inchiostro { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) and (max-width: 1023px) {
  .js .menu { clip-path: none; opacity: 0; transition: opacity var(--t-soffio) linear, visibility 0s linear var(--t-soffio); }
  .js .testa.is-aperta .menu { clip-path: none; opacity: 1; transition: opacity var(--t-soffio) linear, visibility 0s; }
}


.sezione { padding-block: var(--s-6); }
.js .rev--prima:not(.natura) { opacity: 1; transform: none; transition: none; animation: none; }

@media (max-width: 767px) {
  .js .rev--prima.natura { opacity: 1; transform: none; transition: none; animation: none; }
  .js:not(.m1) #hero .natura__posto--libro { opacity: 0; animation: forza 0s linear 4.5s forwards; }

  #hero .tel__strati i:not(:first-child) { display: none; }
  #hero .tel__corpo { transform-style: flat; transform: none; }
  #hero :is(.tel__fronte, .tel__strati i, .tel__tasto) { transform: none; }
}
.talloncino { color: var(--avorio); }
.pl__ora { color: var(--noir); }
.prezzo__nota { text-transform: none; letter-spacing: 0; }
.destinazioni__illustrazioni { margin-bottom: var(--s-1); }
.domande { padding-bottom: var(--s-4); }
.metodo__lead { grid-column: 5 / -1; max-width: 45ch; margin-bottom: var(--s-3); }
@media (max-width: 1023px) { .metodo__lead { grid-column: 1 / -1; } }
.tavola__approfondisci { display: contents; }
.tavola__approfondisci > summary { display: none; }
.voci-dettaglio { grid-area: voci; min-width: 0; margin-top: var(--s-3); }
.voci-dettaglio summary { min-height: 48px; display: flex; align-items: center; gap: var(--s-2); cursor: pointer;
  font: 600 var(--f-didascalia)/1.5 var(--sans); color: var(--fg); border-block: 1px solid var(--linea); }
.voci-dettaglio summary::after { content: '+'; margin-left: auto; font: 400 1.25rem/1 var(--mono); }
.voci-dettaglio[open] summary::after { content: '−'; }
.voci-dettaglio summary::-webkit-details-marker { display: none; }
.voci-dettaglio summary::marker { content: ''; }
.voci-dettaglio .voci { margin-top: var(--s-1); }
.film__scelte[hidden], .film--lettura .quadro[hidden] { display: none; }
.film__scelte { padding-top: var(--s-6); }
.film__schede { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: var(--s-2); border-bottom: 1px solid var(--linea); }
.film__schede button { position: relative; min-height: 56px; padding: var(--s-1) 2px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px;
  border: 0; background: transparent; color: var(--fg-corpo); cursor: pointer; font: 600 var(--f-etichetta)/1.5 var(--sans); }
.film__schede button[aria-selected="true"] { color: var(--avorio); }
.film__schede button[aria-selected="true"]::after { content: ''; position: absolute; inset: auto 0 -1px; height: 2px; background: var(--oro); }
.film__schede button:focus-visible { outline-offset: -4px; }
.film--lettura .quadro > .rotta { display: none; }
.film--lettura .quadro { padding-top: var(--s-4); padding-bottom: var(--s-6); }
.film--lettura .quadro + .quadro { border-top: 0; }
.film--lettura .quadro:focus-visible { outline-offset: -4px; }
.mete__comandi { display: flex; justify-content: end; gap: var(--s-1); margin-top: var(--s-1); }
.mete__comandi button { width: 48px; height: 48px; border: 1px solid var(--linea); background: transparent; color: var(--avorio); cursor: pointer; font: 400 1.25rem/1 var(--sans); }
.mete__comandi button:disabled { opacity: .4; cursor: default; }
.mete__comandi button:focus-visible { outline-offset: 3px; }
@media (max-width: 767px) {
  .prima__griglia { grid-template-rows: var(--s-4) auto var(--s-3) auto auto var(--s-4) auto auto auto; }
  .prima__griglia::before { min-height: 0; }
  .prima__griglia > .prima__sotto { margin-top: var(--s-4); }
  .natura__scena { height: calc(420 * var(--u)); }
  .guida__oggetti { gap: var(--s-4); margin-top: var(--s-4); }
  .campione__libro .libro { --W: 160px; --D: 18px; }
  .campione__libro { padding-bottom: var(--s-2); }
  .tavola__approfondisci { display: block; margin-inline: var(--margine); margin-top: var(--s-3); }
  .tavola__approfondisci > summary { display: flex; align-items: center; justify-content: space-between; min-height: 48px;
    border-block: 1px solid var(--linea); cursor: pointer; list-style: none; font: 600 var(--f-didascalia)/1.5 var(--sans); color: var(--fg); }
  .tavola__approfondisci > summary::-webkit-details-marker { display: none; }
  .tavola__approfondisci[open] > summary > span { font-size: 0; }
  .tavola__approfondisci[open] > summary > span::after { content: '−'; font-size: 1rem; }
  .tavola__approfondisci .note, .tavola__approfondisci .tavola__dida { margin-inline: 0; }
  .sezione:not(.domande):not(.chiusura) { padding-block: var(--s-4); }
  .colophon__scheda { padding: var(--s-2) var(--s-3) var(--s-1); margin-top: var(--s-3); }
  .colophon__voci > div { padding-block: var(--s-1); }
  .piede { padding-block: var(--s-3); }
  .piede__griglia { row-gap: var(--s-1); }
  .piede__contatti { display: flex; flex-wrap: wrap; align-items: center; column-gap: var(--s-3); }
  .piede__contatti > .eti { margin: 0; }
  .piede__firma { margin-top: var(--s-1); }
  .piede__legale { padding-top: var(--s-2); }
  .prima__campione { margin-top: var(--s-2); }
  .prima__griglia > .prima__sotto { margin-top: var(--s-3); }
  .campione__libro .libro { --W: 148px; --D: 18px; }
  .guida__oggetti { gap: var(--s-3); }
  .oggetto-lista--telefono .tel { --pu: .54; }
  .guida__oggetti { margin-top: var(--s-3); }
  .in-breve .riga { padding-block: 7px; }
}
@media (min-width: 768px) {
  .sezione { padding-block: var(--s-6); }
  .domande { padding-block: var(--s-6); }
  .voci-dettaglio { margin-top: var(--s-2); }
  .voci-dettaglio summary { display: none; }

  .mete { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: var(--s-2); }
  .mete__testa { display: block; }
  .mete__testa > li { height: 100%; }
  .mete__fila { display: grid; grid-auto-flow: column; grid-auto-columns: 44%; gap: var(--s-2);
    overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scroll-padding-inline: 4px; padding: 4px; }
  .mete__fila > li { scroll-snap-align: start; }
  .mete__testa .meta { aspect-ratio: auto; height: 100%; }
  .mete__fila .meta { aspect-ratio: 3 / 2; min-height: 260px; }
  .mete__comandi { grid-column: 2; margin-top: 0; }
  .destinazioni__testa { margin-top: var(--s-4); }
  .film--lettura .film__scelte { max-width: 680px; }
  .film--lettura .quadro__testo { max-width: 680px; }
}
@media (min-width: 1280px) {
  .film--lettura .quadro__scena { min-height: 0; }
  .film--lettura .quadro { padding-block: var(--s-4) var(--s-6); }
  .film--lettura .quadro__scena--telefono { min-height: 580px; }
  .premium .segnalibro { padding-top: var(--s-2); padding-bottom: var(--s-2); }
  .premium .blocco { max-width: none; }
  .domanda summary { min-height: 52px; }
  .colophon__voci > div { padding-block: var(--s-2); }
  .metodo, .memory, .regalo, .agenzie, .colophon { padding-block: var(--s-6); }
  .guida__oggetti { margin-top: var(--s-4); }
  .guida__oggetti { column-gap: var(--s-4); }
  .oggetto-lista, .oggetto-lista--libro { grid-template-columns: 184px minmax(0, 1fr); gap: var(--s-2); }
  .oggetto-lista__figura .libro { --W: 164px; --D: 18px; }
  .oggetto-lista--telefono .tel { --pu: .7; }
  .campione__libro .libro { --W: 240px; --D: 26px; }
  .chiusura { padding-block: var(--s-4) var(--s-6); }
  .piede { padding-block: var(--s-6); }
}
@media (prefers-reduced-motion: reduce) {
  .mete__fila { scroll-behavior: auto; }
}
@media (min-width: 1280px) and (prefers-reduced-motion: reduce) {
  .sezione:not(.domande):not(.chiusura) { padding-block: var(--s-4); }
  .chiusura { padding-block: var(--s-3); }
  .piede { padding-block: var(--s-3); }
  .premium .blocco { display: block; }
  .premium .blocco > .t-h2 { max-width: none; }
  .premium .blocco > .corpo { max-width: none; margin-top: var(--s-2); }
  .domande { padding-block: var(--s-4); }
  .domanda summary { min-height: 48px; }
  .sezione:not(.domande):not(.chiusura):is(.guida, .metodo, .premium) { padding-block: var(--s-3); }
}
@media (min-width: 768px) and (max-width: 1023px) {

  .oggetto-lista, .oggetto-lista--libro { grid-template-columns: 356px minmax(0, 1fr); column-gap: var(--s-3); }
  .oggetto-lista__figura .libro { --W: 344px; --D: 28px; }
  .oggetto-lista--telefono .tel { --pu: 1.28; }
  .campione__libro { grid-column: 1 / span 4; }
  .campione__libro .libro { --W: 344px; --D: 28px; }
  .campione .blocco { grid-column: 5 / -1; }
  .oggetto-film, .tel--film { --pu: 1.28; }
  .natura__scena { height: calc(780 * var(--u)); }
  .natura__posto--telefono { left: calc(396 * var(--u)); width: calc(340 * var(--u)); height: calc(735 * var(--u)); }
  .natura__posto--telefono .tel { font-size: calc(330 * var(--u) / 25); }
  .natura__eti--telefono { top: calc(738 * var(--u)); width: calc(340 * var(--u)); }
}


body.ed.v3-home {
  margin: 0;
  padding: 0;
  background: var(--noir);
  color: var(--fg);
  font: 400 var(--f-corpo)/var(--lh-corpo) var(--sans);
  overflow-x: clip;
}
body.ed.v3-home :is(h1, h2, h3, h4) { margin-bottom: 0; }
body.ed.v3-home h1.t-display { font: 500 var(--f-display)/1.04 var(--serif); letter-spacing: -.01em; }
body.ed.v3-home h2.t-h2 { font: 500 var(--f-h2)/1.08 var(--serif); letter-spacing: -.005em; }
body.ed.v3-home h3.t-h3 { font: 500 var(--f-h3)/1.2 var(--serif); letter-spacing: -.005em; }


body.ed.v3-home #testa:not(.is-solid) { background: transparent; border-bottom-color: transparent; }
body.ed.v3-home #testa.is-solid { background: var(--noir); border-bottom-color: var(--filetto); }


@media (min-width: 1121px) {
  body.ed.v3-home #testa .ed-nav .ed-btn-primary {
    position: relative;
    background: transparent;
    color: var(--avorio);
    border-color: var(--avorio);
    transition: transform var(--t-passo) var(--ease-rotta);
  }
  body.ed.v3-home #testa.is-cta-sola .ed-nav .ed-btn-primary { background: var(--oro); color: var(--noir); border-color: var(--oro); }
  body.ed.v3-home #testa.is-cta-sola .ed-nav .ed-btn-primary:hover { background: var(--oro-hover); border-color: var(--oro-hover); }
  body.ed.v3-home #testa.is-cta-sola .ed-nav .ed-btn-primary:focus-visible { outline-color: var(--noir); }
}


.c2-noscript-nav, .c2-noscript-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--s-1) var(--s-2);
  padding: var(--s-2) var(--s-3);
  background: var(--notte);
  color: var(--avorio);
}
.c2-noscript-nav { border-bottom: 1px solid var(--filetto); }
.c2-noscript-footer { margin-top: var(--s-4); border-top: 1px solid var(--filetto); font-size: .875rem; }
.c2-noscript-nav a, .c2-noscript-footer a { min-height: 44px; display: inline-flex; align-items: center; color: inherit; }


#premium .premium__fonte { max-width: 48ch; margin-top: var(--s-1); color: var(--brand-grigio-freddo); }
#premium .segnalibri__scorri { margin-top: var(--s-4); }
#premium .segnalibri { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--s-2);
  overflow: visible; padding: 0; scroll-snap-type: none; }
#premium .segnalibro { position: relative; isolation: isolate; display: flex; grid-column: span 4; flex-direction: column; justify-content: flex-end;
  gap: 5px; min-width: 0; min-height: 300px; overflow: hidden; padding: var(--s-3); border: 1px solid var(--brand-filetto-scuro);
  border-top: 1px solid var(--brand-filetto-scuro); background: var(--brand-blu-notte); scroll-snap-align: none; }
#premium .segnalibro:nth-child(-n+2) { grid-column: span 6; min-height: 360px; }
#premium .segnalibro__scena { position: absolute; z-index: -1; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
#premium .segnalibro::after { content: ''; position: absolute; z-index: 0; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, color-mix(in oklab, var(--brand-noir) 5%, transparent) 0%,
    color-mix(in oklab, var(--brand-noir) 24%, transparent) 38%,
    color-mix(in oklab, var(--brand-noir) 90%, transparent) 100%); }
#premium .segnalibro > :not(.segnalibro__scena) { position: relative; z-index: 1; }
#premium .segnalibro__nome { max-width: 22ch; font-size: clamp(1.375rem, 2vw, 1.75rem); line-height: 1.1; color: var(--brand-avorio); text-wrap: balance; }
#premium .segnalibro__promessa { max-width: 34ch; font-size: var(--f-corpo); line-height: 1.5; color: var(--brand-avorio); }
#premium .segnalibro__prezzo { margin-top: 3px; padding-top: 0; font-size: var(--f-didascalia); color: var(--brand-oro); }
#premium .premium__sotto { margin-top: var(--s-3); }
#premium .premium__sotto .didascalia { max-width: 62ch; }
#premium .premium__veste { max-width: 62ch; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  #premium .segnalibro__scena { transition: transform var(--t-tratto) var(--ease-rotta); }
  #premium .segnalibro:hover .segnalibro__scena { transform: scale(1.025); }
}
@media (min-width: 768px) and (max-width: 1023px) {
  #premium .segnalibri { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  #premium .segnalibro, #premium .segnalibro:nth-child(-n+2) { grid-column: span 3; min-height: 320px; }
}
@media (max-width: 767px) {
  #agenzie .agenzie__visual, #agenzie .fascicolo, #agenzie .agenzie__link { grid-column: 1 / -1; }
  #premium.sezione { padding-block: var(--s-4); }
  #premium .blocco { max-width: none; }
  #premium .segnalibri__scorri { margin-inline: 0; }
  #premium .segnalibri { grid-template-columns: minmax(0, 1fr); gap: var(--s-1); }
  #premium .segnalibro, #premium .segnalibro:nth-child(-n+2) { grid-column: 1; min-height: 250px; padding: var(--s-2); }
  #premium .segnalibro__nome { font-size: 1.5rem; }
  #premium .segnalibro__promessa { font-size: var(--f-corpo); }
  #premium .premium__sotto { display: grid; justify-items: start; gap: var(--s-1); }


  html:not(.js) #livelli .linguette, #livelli .linguette[hidden] { display: none; }
  #livelli .is-linguette .livelli__pannelli { display: block; }
  #livelli .is-linguette .livello { position: static; display: block; grid-area: auto; visibility: visible; }
  #livelli .is-linguette .livello[hidden] { display: block; visibility: visible; }
  #livelli .is-linguette .livello__nome { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip-path: none; white-space: normal; }
  #livelli .is-linguette .livello__prezzo { margin-top: var(--s-1); }


  #destinazioni .mete { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-1); }
  #destinazioni .mete__testa, #destinazioni .mete__fila { display: contents; }
  #destinazioni .mete__testa > li { grid-column: 1 / -1; }
  #destinazioni .mete__fila { overflow: visible; padding: 0; margin: 0; }
  #destinazioni .mete__fila > li { min-width: 0; scroll-snap-align: none; }
  #destinazioni .mete__testa .meta { aspect-ratio: 16 / 10; }
  #destinazioni .mete__fila .meta { aspect-ratio: 4 / 5; min-height: 0; }
  #destinazioni .mete__fila .meta__parole { min-height: 2.9em; }
  #destinazioni .mete__tacche, #destinazioni .mete__comandi { display: none; }


  #agenzie .agenzie__visual { aspect-ratio: auto; min-height: 0; }
  #agenzie .agenzie__visual > img { position: static; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
  /* 18/10: la didascalia della foto sta subito sotto la foto (era in fondo al blocco, ~250 px piu' giu'). Solo
     l'ordine visivo cambia: chi legge con la sintesi vocale la sente dopo il paragrafo, come sul desktop. */
  #agenzie .agenzie__testa { position: relative; inset: auto; display: flex; flex-direction: column; width: auto; max-width: none; padding: var(--s-3); background: var(--brand-blu-notte); }
  #agenzie .agenzie__fonte { order: -1; margin: calc(-1 * var(--s-1)) 0 var(--s-2) calc(-1 * var(--s-3)); } /* sul filo sinistro della foto */
  #agenzie .fascicolo { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  #domande .domanda summary { min-height: 52px; line-height: 1.3; }
  #domande .domanda summary { cursor: default; }
  #domande .domanda summary::after { content: none; }
  #domande .domanda__risposta { padding-right: var(--s-2); }
  #domande .domanda__risposta p { font-size: var(--f-corpo); line-height: 1.6; }
}

@media (min-width: 768px) {
  #agenzie .agenzie__visual { position: relative; grid-column: 1 / -1; grid-row: 1; isolation: isolate; overflow: hidden; margin: 0;
    aspect-ratio: 16 / 10; background: var(--brand-blu-notte); }
  #agenzie .agenzie__visual > img { position: absolute; z-index: -2; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
  #agenzie .agenzie__visual::after { content: ''; position: absolute; z-index: -1; inset: 0; pointer-events: none;
    background: linear-gradient(90deg, color-mix(in oklab, var(--brand-noir) 82%, transparent) 0%,
      color-mix(in oklab, var(--brand-noir) 68%, transparent) 38%,
      color-mix(in oklab, var(--brand-noir) 16%, transparent) 70%, transparent 100%); }
  #agenzie .agenzie__testa { position: absolute; inset: 0 auto 0 0; display: flex; width: min(54%, 42rem); flex-direction: column;
    justify-content: flex-end; padding: var(--s-4); color: var(--brand-avorio); }
  #agenzie .agenzie__testa .eti, #agenzie .agenzie__testa .t-h2, #agenzie .agenzie__testa .corpo { color: var(--brand-avorio); }
  #agenzie .agenzie__testa .corpo { max-width: 42ch; }
  #agenzie .agenzie__fonte { margin-top: var(--s-2); color: var(--brand-grigio-freddo); }
  #agenzie .fascicolo { grid-column: 1 / -1; grid-row: 2; grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: var(--s-2); margin-top: var(--s-3); }
  #agenzie .fascicolo li { display: block; padding: var(--s-2) 0 0; border-top-color: var(--brand-filetto-scuro); font-size: var(--f-corpo); line-height: 1.55; }
  #agenzie .fascicolo li:last-child { border-bottom: 0; }
  #agenzie .agenzie__link { grid-column: 1 / -1; grid-row: 3; margin-top: var(--s-2); }
}
@media (min-width: 1280px) {
  #agenzie .agenzie__testa { width: min(46%, 43rem); padding: var(--s-6); }
  #agenzie .fascicolo { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: var(--s-3); }
}


/* #guida · il campione si apre sul posto; il libro misura la larghezza dello spread, non della sola copertina. */
#guida .oggetto-lista--libro {
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas: "fig" "tit" "voci";
  grid-template-rows: auto;
  column-gap: 0;
}
#guida .oggetto-lista--libro .oggetto-lista__figura { min-width: 0; padding: 0 0 56px; overflow: visible; }
#guida .oggetto-lista--libro .oggetto-lista__figura .libro {
  --W: min(250px, max(120px, calc(50vw - var(--margine) - 8px)));
  --D: clamp(12px, calc(var(--W) * .07), 18px);
  --S: calc(var(--W) * .016);
  margin-left: 50%;
}
#guida .oggetto-lista--libro > .voci { margin-top: var(--s-2); }

/* L'alone segue le due pagine: la sua estensione non deve allargare
   il viewport mobile oltre lo spread riservato alla scena. */
#guida-libro.libro--aperto::before {
  left: calc(-1 * var(--BW));
  width: calc(2 * var(--BW));
}

/* Il testo ingrandito deve rifluire entro il telefono: prezzo e parole lunghe
   non possono far crescere il viewport delle altre sezioni. Nessun font ridotto. */
@media (max-width: 767px) {
  #in-breve .scheda__prezzo { white-space: normal; }
  #metodo .t-h2, #agenzie .t-h2 { overflow-wrap: anywhere; }
  #destinazioni .meta__testo { grid-template-columns: minmax(0, 1fr); overflow-wrap: anywhere; }
  #destinazioni .meta__tipo { max-width: calc(100% - 32px); overflow-wrap: anywhere; }
}

#guida-libro .guida__foglio {
  position: absolute;
  top: var(--S);
  left: 0;
  width: var(--W);
  height: var(--H);
  overflow: visible;
  transform-origin: 0 50%;
  transform-style: preserve-3d;
  backface-visibility: hidden;
  background: var(--carta-1);
}
#guida-libro .guida__foglio--uno { transform: translateZ(calc(var(--Dl) * .72)); }
#guida-libro .guida__foglio--due { transform: translateZ(calc(var(--Dl) * .46)); }
#guida-libro.libro--chiuso .guida__foglio { visibility: hidden; }

/* Pagina illustrativa nativa: sei riquadri interi, nello stesso campione Tokyo.
   Le proporzioni seguono la carta A4, senza stirare una scansione di un'altra guida. */
#guida-libro .guida__album {
  display: flex; flex-direction: column; height: 100%; padding: 7%;
  color: var(--noir); background: var(--chiara);
  font: 400 calc(var(--W) * .034)/1.4 var(--sans);
}
#guida-libro .guida__album-eti { color: var(--caldo); font-size: .9em; letter-spacing: .1em; text-transform: uppercase; }
#guida-libro .guida__album strong { margin-top: .45em; font: 500 calc(var(--W) * .11)/1.1 var(--serif); }
#guida-libro .guida__album-nota { margin-top: .7em; }
#guida-libro .guida__album-foto { flex: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(3, minmax(0, 1fr)); gap: 7%; margin: 9% 0; min-height: 0; }
#guida-libro .guida__album-foto span { position: relative; display: flex; align-items: end; padding: 8%; border: 1px solid var(--linea); background: var(--avorio); color: var(--caldo); }
#guida-libro .guida__album-foto span::before { content: ''; position: absolute; top: -5%; left: 32%; width: 36%; height: 10%; background: color-mix(in oklab, var(--oro) 35%, var(--chiara)); transform: rotate(-5deg); }
#guida-libro .guida__album-piede { border-top: 1px solid var(--linea); padding-top: .8em; font-size: .85em; }
#guida-libro .guida__faccia {
  position: absolute;
  inset: 0;
  overflow: hidden;
  backface-visibility: hidden;
  border: 1px solid color-mix(in oklab, var(--noir) 12%, transparent);
  box-shadow: 0 3px 8px color-mix(in oklab, var(--noir) 13%, transparent);
}
#guida-libro .guida__faccia--fronte {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .7em;
  padding: 9%;
  transform: translateZ(1px);
  background: var(--chiara) url('/assets/brand/pattern/carta-avorio.svg') 0 0 / 28px 28px;
  color: var(--noir);
  font: 400 clamp(9px, calc(var(--W) * .052), 14px)/1.35 var(--sans);
}
#guida-libro .guida__faccia--fronte strong {
  font: 500 clamp(17px, calc(var(--W) * .112), 28px)/1.05 var(--serif);
  letter-spacing: -.02em;
}
#guida-libro .guida__foglio-eti {
  color: color-mix(in oklab, var(--noir) 68%, transparent);
  font: 600 clamp(8px, calc(var(--W) * .05), 12px)/1.2 var(--sans);
  letter-spacing: .08em;
  text-transform: uppercase;
}
#guida-libro .guida__faccia--retro { transform: rotateY(180deg) translateZ(1px); }
#guida-libro .guida__faccia--retro img { display: block; width: 100%; height: 100%; object-fit: cover; }
#guida-libro.is-open .libro__corpo { transform: perspective(4000px); }
#guida-libro.libro--chiuso { --vista: perspective(4000px) rotateX(-5deg) rotateY(14deg); }
#guida-libro.is-open .l-meta--sx { transform: rotateY(-180deg); }
#guida-libro.is-open .guida__foglio--uno { transform: translateZ(calc(var(--Dl) * .72)) rotateY(-180deg); }
#guida-libro.is-open .guida__foglio--due { transform: translateZ(calc(var(--Dl) * .46)) rotateY(-180deg); }
#guida-libro.is-animating .libro__corpo { animation: c2-guida-camera 3300ms cubic-bezier(.65, 0, .35, 1) both; }
#guida-libro.is-animating .l-meta--sx { animation: c2-guida-copertina 1050ms cubic-bezier(.65, 0, .35, 1) both; }
#guida-libro.is-animating .guida__foglio--uno { animation: c2-guida-foglio-uno 1100ms cubic-bezier(.65, 0, .35, 1) 1050ms both; }
#guida-libro.is-animating .guida__foglio--due { animation: c2-guida-foglio-due 1150ms cubic-bezier(.65, 0, .35, 1) 2150ms both; }
#guida-libro.is-paused :is(.libro__corpo, .l-meta--sx, .guida__foglio) { animation-play-state: paused; }
@keyframes c2-guida-camera {
  from { transform: perspective(4000px) rotateX(-5deg) rotateY(14deg); }
  to { transform: perspective(4000px) rotateX(0deg) rotateY(0deg); }
}
@keyframes c2-guida-copertina {
  from { transform: rotateY(0deg); }
  to { transform: rotateY(-180deg); }
}
@keyframes c2-guida-foglio-uno {
  from { transform: translateZ(calc(var(--Dl) * .72)) rotateY(0deg); }
  to { transform: translateZ(calc(var(--Dl) * .72)) rotateY(-180deg); }
}
@keyframes c2-guida-foglio-due {
  from { transform: translateZ(calc(var(--Dl) * .46)) rotateY(0deg); }
  to { transform: translateZ(calc(var(--Dl) * .46)) rotateY(-180deg); }
}
@media (prefers-reduced-motion: reduce) {
  #guida-libro.is-animating :is(.libro__corpo, .l-meta--sx, .guida__foglio) { animation: none !important; }
}


@media (prefers-reduced-motion: no-preference) {
  .biglietto-scena.is-armata .biglietto-scena__img { transform: translateY(4px) rotate(.18deg); }
  .biglietto-scena.is-forma .biglietto-scena__img { transition: transform var(--t-passo) var(--ease-rotta) 2.2s; transform: none; }
}
