/* Mae Home · pagina Lavori (/lavori/) · solo quello che serve qui, dopo base.css.
   Apertura con le schede dei cantieri, Pordenone (confronti, scheda con Antonio che racconta,
   galleria durante e dopo), Ottava Presa (facciata giugno/agosto, diario), negozi, fascia d'invito.
   Regole di A2: si anima solo transform, opacity, clip-path; senza movimento tutto è visibile. */

/* ---------- Apertura ---------- */
.lv-ap{padding-bottom:clamp(64px,7vw,112px)}
.lv-ap__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:clamp(20px,2.4vw,32px);align-items:end}
.lv-ap__t{grid-column:1/span 8;max-width:none}
.lv-ap__lead{grid-column:9/-1;margin:0 0 .35em}
@media (max-width:1199px){.lv-ap__t,.lv-ap__lead{grid-column:1/-1}.lv-ap__lead{margin:0}}
.anim .lv-ap__lead{animation:liftIn 1.1s var(--ease) .55s both}

/* le schede: stato e numero sopra, foto, poi luogo e cosa è stato fatto (sempre nello stesso punto) */
.lv-idx{margin-top:clamp(48px,6vw,88px)}
.lv-idx__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:clamp(48px,5vw,72px);align-items:start}
.lv-card{position:relative;min-width:0}
.lv-card--a{grid-column:1/span 7}
.lv-card--b{grid-column:9/-1;margin-top:clamp(0px,7vw,112px)}
.lv-card--c{grid-column:1/-1}
.lv-card__top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:14px;margin-bottom:18px;border-bottom:1px solid var(--linea-forte);font-size:16px;font-weight:600;line-height:1.3;color:var(--inchiostro)}
.lv-card__n{font-size:16px;font-weight:600;color:var(--rovere-ink);font-variant-numeric:tabular-nums}
.lv-card__st{display:inline-flex;align-items:center;gap:10px}
.lv-card__st .i{width:18px;height:18px;color:var(--ok)}
.lv-card__st .occ__live{width:9px;height:9px}
.lv-card__frame{aspect-ratio:3/2}
.lv-card--b .lv-card__frame{aspect-ratio:4/5}
.lv-card--b .lv-card__frame img{object-position:50% 55%}
.lv-card__cover{position:absolute;inset:-1px;background:var(--carta);display:none;z-index:2}
.lv-card__txt{margin-top:20px}
.lv-card__luogo{display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:300;font-size:clamp(30px,2.8vw,44px);line-height:1.05;letter-spacing:-.035em;color:var(--inchiostro)}
.lv-card__a{color:inherit;text-decoration:none}
.lv-card__a::after{content:"";position:absolute;inset:0;z-index:3}
.lv-card__a:focus-visible{outline:none}
.lv-card__a:focus-visible::after{outline:2px solid var(--petrolio);outline-offset:8px}
.lv-card__go{width:26px;height:26px;transform:rotate(90deg);transition:transform .55s var(--ease)}
.lv-card:hover .lv-card__go{transform:rotate(90deg) translateX(6px)}
.lv-card:hover .frame__in img{transform:scale(1.04)}
.lv-card__cosa{margin-top:8px;font-size:18px;font-weight:500;color:var(--inchiostro)}
.lv-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:16px 0 0;padding:0}
.lv-tags li{padding:5px 12px 6px;border:1px solid var(--linea-forte);border-radius:40px;font-size:16px;font-weight:500;line-height:1.3;color:var(--testo)}
/* la terza scheda è una riga: negozi e uffici, senza foto */
.lv-row{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:auto auto minmax(0,1fr) 28px;align-items:center;gap:8px 28px;min-height:88px;padding:18px 20px;border-top:1px solid var(--linea-forte);border-bottom:1px solid var(--linea-forte);color:var(--inchiostro);text-decoration:none}
.lv-row::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--bianco);clip-path:inset(100% 0 0 0);transition:clip-path .6s var(--ease-io)}
.lv-row:hover::before,.lv-row:focus-visible::before{clip-path:inset(0)}
.lv-row:focus-visible{outline-offset:-3px}
.lv-row__t{font-size:clamp(22px,2vw,30px);font-weight:500;line-height:1.2;letter-spacing:-.022em}
.lv-row__d{font-size:17px;line-height:1.5;color:var(--testo)}
.lv-row__go{transform:rotate(90deg);transition:transform .55s var(--ease)}
.lv-row:hover .lv-row__go{transform:rotate(90deg) translateX(5px)}
/* entrata in CSS al primo disegno, come l'apertura */
.anim .lv-card__top{animation:fadeIn .9s ease-out .6s both}
.anim .lv-card--b .lv-card__top{animation-delay:.72s}
.anim .lv-card__cover{display:block;animation:coverUp 1.45s var(--ease-io) .55s both}
.anim .lv-card--b .lv-card__cover{animation-delay:.69s}
.anim .lv-card__frame .frame__in{animation:innerIn 2.2s var(--ease) .65s both}
.anim .lv-card--b .lv-card__frame .frame__in{animation-delay:.79s}
.anim .lv-card__txt{animation:liftIn 1.1s var(--ease) .9s both}
.anim .lv-card--b .lv-card__txt{animation-delay:1s}
.anim .lv-row{animation:startIn 1.4s var(--ease-io) 1.05s both}
@media (max-width:1023px){
  .lv-card--a,.lv-card--b{grid-column:1/-1;margin-top:0}
  .lv-card--b .lv-card__frame{aspect-ratio:4/3}
}
@media (max-width:599px){
  .lv-row{grid-template-columns:auto minmax(0,1fr) 24px;padding:18px 0}
  .lv-row::before{display:none}
  .lv-row__d{grid-column:2;grid-row:2}
  .lv-row__go{grid-column:3;grid-row:1}
}

/* ---------- Testata delle sezioni: titolo e attacco affiancati ---------- */
.lv-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:28px;align-items:end;margin-bottom:clamp(56px,7vw,104px)}
.lv-head__t{grid-column:1/span 7}
.lv-head__p{grid-column:8/-1}
@media (max-width:1023px){.lv-head__t,.lv-head__p{grid-column:1/-1}}

/* ---------- Confronto col cursore (scala, facciata) ---------- */
.lv-cf{position:relative;--pos:50}
.lv-cf--34{aspect-ratio:3/4}
.lv-cf--32{aspect-ratio:16/9}
@media (max-width:599px){.lv-cf--32{aspect-ratio:4/3}}
.lv-cf__in{position:absolute;inset:0;overflow:hidden;container-type:inline-size;background:#D8DDE0;touch-action:pan-y;cursor:ew-resize;user-select:none;-webkit-user-select:none}
.lv-cf__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.lv-cf__after{position:absolute;inset:0;clip-path:inset(0 0 0 calc(var(--pos) * 1%))}
.lv-cf__line{position:absolute;top:0;bottom:0;left:0;width:0;z-index:2;transform:translateX(calc(var(--pos) * 1cqw))}
.lv-cf__line::before{content:"";position:absolute;top:0;bottom:0;left:-1px;width:2px;background:#fff;box-shadow:0 0 0 .5px rgba(0,0,0,.12)}
.lv-cf__handle{position:absolute;top:50%;left:0;width:56px;height:56px;margin:-28px 0 0 -28px;translate:calc(clamp(30px, var(--pos) * 1cqw, 100cqw - 30px) - var(--pos) * 1cqw) 0;border-radius:50%;background:#fff;color:var(--inchiostro);display:grid;place-items:center;box-shadow:0 10px 30px -8px rgba(26,40,52,.45);cursor:grab;transition:transform .4s var(--ease)}
.lv-cf__handle svg{width:24px;height:24px}
.lv-cf__in:hover .lv-cf__handle{transform:scale(1.06)}
.lv-cf.is-drag .lv-cf__handle{cursor:grabbing;transform:scale(.94)}
.lv-cf__handle:focus-visible{outline:2px solid #fff;outline-offset:3px;box-shadow:0 0 0 5px var(--petrolio)}
.lv-cf__tag{position:absolute;top:16px;z-index:3;padding:7px 12px 8px;font-size:16px;font-weight:600;letter-spacing:.01em;line-height:1;color:#fff;background:rgba(26,26,26,.66)}
.lv-cf__tag--a{left:16px}
.lv-cf__tag--b{right:16px}
.lv-caps{display:grid;gap:2px;margin-top:4px}
.lv-caps .cap{margin-top:12px}
@media (max-width:599px){
  .lv-cf .crop{display:none}
  .lv-cf__tag{top:12px}
  .lv-cf__tag--a{left:12px}.lv-cf__tag--b{right:12px}
}

/* ---------- Pordenone: i due confronti e la frase di Antonio ---------- */
.lv-cmp{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:72px;align-items:start}
.lv-cmp__scala{grid-column:1/span 5;margin:0}
.lv-cmp__side{grid-column:7/-1;display:grid;gap:clamp(48px,5vw,80px);padding-top:clamp(0px,3vw,48px)}
.lv-quote{margin:0}
.lv-quote p{position:relative;font-weight:300;font-size:clamp(26px,2.5vw,40px);line-height:1.25;letter-spacing:-.025em;color:var(--inchiostro);max-width:18em}
.lv-quote p strong{font-weight:500}
.lv-quote .cap{margin-top:20px}
.lv-pair{margin:0}
.lv-pair__g{display:grid;grid-template-columns:1fr 1fr;gap:var(--col-gap)}
.lv-pair__frame{aspect-ratio:4/5}
.lv-pair__frame .lv-cf__tag{top:12px;left:12px}
.lv-pair .cap{margin-top:16px}
@media (max-width:1023px){
  .lv-cmp__scala,.lv-cmp__side{grid-column:1/-1}
  .lv-cmp__scala{max-width:560px}
  .lv-cmp__side{padding-top:0}
}
@media (max-width:599px){.lv-quote p{padding-left:.45em}}

/* ---------- Cosa abbiamo fatto: la scheda, con Antonio che racconta accanto ---------- */
.lv-sch{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:64px;align-items:start;margin-top:clamp(104px,11vw,176px)}
.lv-sch__side{grid-column:1/span 4;position:sticky;top:calc(var(--hdr) + 24px)}
.lv-sch__main{grid-column:6/-1}
.lv-sch__h{font-weight:300;font-size:clamp(32px,3.2vw,52px);line-height:1.06;letter-spacing:-.035em;color:var(--inchiostro);margin:0 0 clamp(28px,3vw,44px)}
.lv-sch__l{list-style:none;margin:0;padding:0}
.lv-sch__r{display:grid;grid-template-columns:minmax(170px,14em) minmax(0,1fr);column-gap:var(--col-gap);row-gap:12px;padding:22px 0 26px}
.lv-sch__r:last-child{border-bottom:1px solid var(--linea-forte)}
.lv-sch__k{display:flex;gap:14px;align-items:baseline;margin:0;font-size:18px;font-weight:600;line-height:1.4;color:var(--inchiostro)}
.lv-sch__n{font-size:16px;color:var(--rovere-ink);font-variant-numeric:tabular-nums}
.lv-sch__v{grid-column:2;font-size:18px;line-height:1.65;max-width:34em}
.lv-sch__v strong{font-weight:500;color:var(--inchiostro)}
/* le misure: in grassetto, sottolineate col rovere come una quota */
.lv-q{font-weight:600;color:var(--inchiostro);white-space:nowrap;background:linear-gradient(var(--rovere),var(--rovere)) 0 100%/100% 1.5px no-repeat;padding-bottom:1px}
.lv-sch__play{grid-column:2;justify-self:start;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 16px 0 12px;border:1px solid var(--linea-forte);border-radius:40px;background:transparent;font:500 16px/1 var(--f);color:var(--inchiostro);cursor:pointer;transition:border-color .3s,background-color .3s,color .3s}
.lv-sch__play:hover{border-color:var(--petrolio);background:var(--bianco)}
.lv-sch__play .i{width:16px;height:16px}
.lv-sch__dur{color:var(--testo-2);font-variant-numeric:tabular-nums}
.lv-sch__play.is-on{border-color:var(--petrolio);background:var(--petrolio);color:#fff}
.lv-sch__play.is-on .lv-sch__dur{color:#fff}
@media (max-width:1023px){
  .lv-sch__side{grid-column:1/-1;position:static;order:2}
  .lv-sch__main{grid-column:1/-1;order:1}
  .lv-sch__play{display:none}
}
@media (max-width:599px){
  .lv-sch__r{grid-template-columns:minmax(0,1fr);row-gap:8px}
  .lv-sch__v{grid-column:1}
}

/* il racconto di Antonio: un video alla volta, quattro capitoli */
.lv-rc{width:min(100%, calc(min(100svh - var(--hdr) - 230px, 640px) * .5625))}
.lv-rc__k{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:16px;font-weight:600;line-height:1.35;color:var(--inchiostro)}
.lv-rc__k::before{content:"";flex:none;width:20px;height:1px;background:var(--rovere)}
.lv-rc__frame{position:relative;aspect-ratio:9/16;overflow:hidden;background:#1F2A33;isolation:isolate}
.lv-rc__poster,.lv-rc__v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lv-rc__v{opacity:0;transition:opacity .45s var(--ease)}
.lv-rc.is-started .lv-rc__v{opacity:1}
.lv-rc__frame::before,.lv-rc__frame::after{content:"";position:absolute;left:0;right:0;z-index:1;pointer-events:none}
.lv-rc__frame::before{top:0;height:28%;background:linear-gradient(rgba(20,26,31,.55),rgba(20,26,31,0))}
.lv-rc__frame::after{bottom:0;height:42%;background:linear-gradient(rgba(20,26,31,0),rgba(20,26,31,.72))}
.lv-rc__bar{position:absolute;left:14px;right:14px;top:14px;z-index:2;height:2px;background:rgba(255,255,255,.34)}
.lv-rc__bar i{display:block;height:100%;background:#fff;transform:scaleX(0);transform-origin:left}
.lv-rc__meta{position:absolute;left:14px;top:28px;z-index:2;display:flex;gap:10px;align-items:baseline;font-size:16px;line-height:1.2;color:#fff}
.lv-rc__meta b{font-weight:600}
.lv-rc__meta span{font-variant-numeric:tabular-nums;opacity:.86}
.lv-rc__subs{position:absolute;left:16px;right:16px;bottom:86px;z-index:2;min-height:2.7em;display:flex;flex-wrap:wrap;align-content:flex-end;gap:0 .3em;font-size:18px;font-weight:600;line-height:1.35;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.lv-rc__subs span{position:relative;opacity:.5;transition:opacity .25s}
.lv-rc__subs span.is-said,.lv-rc__subs span.is-now{opacity:1}
.lv-rc__subs span.is-now::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:2px;background:var(--rovere-chiaro)}
.lv-rc__play{position:absolute;inset:0;z-index:3;display:grid;place-items:end start;padding:0;border:0;background:none;color:var(--inchiostro);cursor:pointer}
.lv-rc__play::before{content:"";position:absolute;left:16px;bottom:18px;width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.95);box-shadow:0 12px 30px -10px rgba(0,0,0,.5);transition:transform .5s var(--ease),opacity .35s}
.lv-rc__play .i{position:relative;z-index:1;width:22px;height:22px;margin:0 0 35px 33px}
.lv-rc__play .i-play{margin-left:35px}
.lv-rc__play .i-pause,.lv-rc.is-playing .lv-rc__play .i-play{display:none}
.lv-rc.is-playing .lv-rc__play .i-pause{display:block}
.lv-rc.is-playing .lv-rc__play::before,.lv-rc.is-playing .lv-rc__play .i{opacity:0}
.lv-rc.is-playing .lv-rc__subs{bottom:24px}
.lv-rc.is-playing .lv-rc__frame:hover .lv-rc__play::before,.lv-rc.is-playing .lv-rc__frame:hover .lv-rc__play .i,.lv-rc.is-playing .lv-rc__play:focus-visible::before,.lv-rc.is-playing .lv-rc__play:focus-visible .i{opacity:1}
.lv-rc__frame:hover .lv-rc__play::before{transform:scale(1.07)}
.lv-rc__play:focus-visible{outline:2px solid #fff;outline-offset:-6px}
.lv-rc__mute{position:absolute;right:8px;top:22px;z-index:4;width:44px;height:44px;display:none;place-items:center;padding:0;border:0;border-radius:50%;background:rgba(20,26,31,.45);color:#fff;cursor:pointer}
.lv-rc.is-started .lv-rc__mute{display:grid}
.lv-rc__mute .i-off,.lv-rc__mute[aria-pressed="true"] .i-on{display:none}
.lv-rc__mute[aria-pressed="true"] .i-off{display:block}
.lv-rc__chs{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lv-rc__ch{width:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;min-height:56px;padding:7px 12px 8px;border:1px solid var(--linea-forte);border-radius:3px;background:transparent;font:500 16px/1.2 var(--f);color:var(--inchiostro);text-align:left;cursor:pointer;transition:border-color .3s,background-color .3s,box-shadow .3s}
.lv-rc__ch:hover{border-color:var(--inchiostro)}
.lv-rc__ch[aria-pressed="true"]{border-color:var(--petrolio);background:var(--bianco);box-shadow:inset 3px 0 0 var(--petrolio)}
.lv-rc__cht{font-size:16px;font-weight:400;color:var(--testo-2);font-variant-numeric:tabular-nums}
@media (max-width:1023px){.lv-rc{width:min(100%,420px)}}

/* ---------- Durante e dopo: la galleria orizzontale ---------- */
.lv-gal{margin-top:clamp(104px,11vw,176px)}
/* invito alla fine del caso di Pordenone (fascia di base.css) */
.lv-pd__inv{margin-top:clamp(72px,8vw,120px)}
.lv-gal__bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:28px}
.lv-gal__k{display:flex;align-items:baseline;gap:12px;min-width:14.5em;font-size:16px;font-weight:600;line-height:1.35;letter-spacing:.11em;text-transform:uppercase;color:var(--rovere-ink)}
.lv-gal__kn{font-weight:500;letter-spacing:0;text-transform:none;color:var(--testo-2)}
.lv-gal__prog{position:relative;height:1px;background:var(--linea-forte)}
.lv-gal__prog i{position:absolute;left:0;right:0;top:-.5px;height:2px;background:var(--rovere);transform-origin:left;transform:scaleX(.04)}
.lv-gal__c{font-size:16px;font-weight:500;line-height:1;color:var(--testo-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.lv-gal__view{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.lv-gal__view::-webkit-scrollbar{display:none}
.lv-gal__view:focus-visible{outline-offset:-3px}
.lv-gal__track{--h:clamp(420px,58vh,640px);position:relative;list-style:none;margin:0;padding:0 max(var(--gutter),calc((100% - var(--max)) / 2));display:flex;align-items:flex-start;gap:var(--col-gap);width:max-content}
.lv-gal__it{flex:none;width:calc(var(--h) * var(--r));scroll-snap-align:start;scroll-margin-left:var(--gutter)}
.lv-gal__it figure{margin:0}
.lv-gal__it .frame{height:var(--h)}
.lv-gal__it .cap{margin-top:14px}
.lv-gal__slab{flex:none;width:clamp(240px,22vw,340px);height:var(--h);display:flex;flex-direction:column;justify-content:flex-end;padding:0 8px 6px 0;scroll-snap-align:start;scroll-margin-left:var(--gutter)}
.lv-gal__st{font-weight:300;font-size:clamp(40px,4.2vw,68px);line-height:1;letter-spacing:-.045em;color:var(--inchiostro)}
.lv-gal__st span{display:block;font-weight:600;letter-spacing:-.05em}
.lv-gal__sd{margin-top:18px;font-size:17px;line-height:1.5;color:var(--testo-2);max-width:15em}
.lv-gal__end{flex:none;display:flex;align-items:flex-end;height:var(--h);padding:0 4px 4px 8px}
/* su computer, a pagina viva: la galleria resta ferma e la striscia scorre */
.lv-gal.is-pin .lv-gal__pin{height:100vh;height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:var(--hdr)}
.lv-gal.is-pin .lv-gal__view{overflow:hidden;scroll-snap-type:none}
.lv-gal.is-pin .lv-gal__track{--h:min(calc(100svh - var(--hdr) - 200px),640px);will-change:transform}
.lv-gal.is-pin .lv-gal__it .frame__in{left:-7%;right:-7%}
@media (max-width:1023px){
  .lv-gal__track{--h:min(62svh,520px)}
  .lv-gal__it--h{--h:calc(min(86vw,640px) / 1.5)}
  .lv-gal__slab{width:min(64vw,300px)}
}
@media (max-width:599px){
  .lv-gal__bar{grid-template-columns:minmax(0,1fr) auto;row-gap:14px}
  .lv-gal__k{min-width:0}
  .lv-gal__prog{grid-column:1/-1;grid-row:2}
  .lv-gal__track{--h:min(58svh,460px)}
  .lv-gal__st{font-size:40px}
}

/* ---------- Ottava Presa: la facciata e il diario del cantiere ---------- */
.lv-op__fig{margin:0}
.lv-op__fig .cap{margin-top:16px}
.lv-dia{list-style:none;margin:clamp(88px,9vw,144px) 0 0;padding:0}
.lv-dia__e{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:24px;padding-bottom:clamp(56px,6vw,96px)}
.lv-dia__e::before{content:"";position:absolute;left:7px;top:16px;bottom:-16px;width:1px;background:var(--linea-forte);transform-origin:top;transition:transform 1.6s var(--ease-io)}
.lv-dia__e--oggi{padding-bottom:0}
.lv-dia__e--oggi::before{bottom:0;background:repeating-linear-gradient(to bottom,var(--linea-forte) 0 5px,transparent 5px 11px)}
.anim .lv-dia__e:not(.is-on)::before{transform:scaleY(0)}
.lv-dia__k{grid-column:1/span 3;position:relative;padding-left:44px}
.lv-dia__node{position:absolute;left:0;top:9px;width:15px;height:15px;border-radius:50%;background:var(--rovere);box-shadow:0 0 0 6px var(--carta);transition:transform .8s var(--ease) .2s}
.anim .lv-dia__e:not(.is-on) .lv-dia__node{transform:scale(0)}
.lv-dia__node--live{background:var(--carta);border:1.5px solid var(--rovere)}
.lv-dia__node--live::before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--rovere)}
.lv-dia__node--live::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid var(--rovere);animation:live 2.4s var(--ease) infinite}
.lv-dia__m{font-weight:300;font-size:clamp(32px,3vw,48px);line-height:1;letter-spacing:-.035em;color:var(--inchiostro)}
.lv-dia__s{margin-top:12px;font-size:16px;font-weight:600;line-height:1.35;letter-spacing:.11em;text-transform:uppercase;color:var(--rovere-ink)}
.lv-dia__ph{grid-column:4/-1;display:flex;align-items:flex-start;gap:var(--col-gap);width:min(100%,calc(var(--sum,3) * 430px + var(--col-gap)))}
.lv-dia__f{margin:0;flex:var(--r) 1 0;min-width:0}
.lv-dia__f .frame{aspect-ratio:var(--r)}
.lv-dia__f .cap{margin-top:14px}
.lv-dia__oggi{grid-column:4/-1;max-width:40em}
.lv-dia__t{font-size:clamp(20px,1.6vw,24px);line-height:1.5;color:var(--testo)}
.lv-dia__t strong{font-weight:500;color:var(--inchiostro)}
.lv-dia__oggi .more{margin-top:20px}
@media (max-width:1023px){
  .lv-dia__k,.lv-dia__ph,.lv-dia__oggi{grid-column:1/-1}
  .lv-dia__ph,.lv-dia__oggi{padding-left:44px}
}
@media (max-width:599px){
  .lv-dia__e::before{display:none}
  .lv-dia__ph{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;padding-left:0;width:100%}
  .lv-dia__f--l{grid-column:1/-1}
  .lv-dia__oggi{padding-left:44px}
}

/* ---------- Negozi e uffici ---------- */
.lv-ng__g{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:64px;align-items:center}
.lv-ng__txt{grid-column:1/span 5}
.lv-ng__p{margin-top:28px}
.lv-ng__btn{margin-top:36px}
.lv-ng__vis{grid-column:7/-1}
.lv-ng__pros{margin:clamp(40px,4vw,56px) 0 0}
.lv-pros{width:100%;height:auto;overflow:visible;color:var(--rovere)}
.lv-pros path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.6s var(--ease-io) calc(var(--i,0) * 150ms + .2s)}
.lv-pros .lv-pros__terra{transition-duration:1.4s;transition-delay:0s}
.anim .lv-ng__vis:not(.is-on) .lv-pros path{stroke-dashoffset:1}
.lv-ng__pros .cap{margin-top:18px}
.lv-ng__figs{margin:0;border-top:1px solid var(--linea-forte)}
.lv-ng__fig{padding-top:22px}
.lv-ng__num{font-size:clamp(64px,7vw,112px);font-weight:300;letter-spacing:-.055em;line-height:.95;color:var(--inchiostro);font-variant-numeric:tabular-nums;white-space:nowrap}
.lv-ng__fig dd{margin:12px 0 0}
.lv-ng__circa{display:block;margin-bottom:6px;font-size:18px;font-weight:500;letter-spacing:0;line-height:1.2;color:var(--testo-2)}
@media (max-width:1023px){.lv-ng__txt,.lv-ng__vis{grid-column:1/-1}}
@media (max-width:599px){
  .lv-ng__btn{width:100%;white-space:normal;text-align:left;padding-block:10px}
  .lv-ng__num{font-size:52px}
}

/* ---------- Gli altri cantieri ---------- */
.lv-al__g{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:40px;align-items:start}
.lv-al__h{grid-column:1/span 6}
.lv-al__txt{grid-column:8/-1}
.lv-soc{list-style:none;margin:36px 0 0;padding:0}
.lv-soc li:last-child{border-bottom:1px solid var(--linea-forte)}
.lv-soc a{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:16px;min-height:80px;padding:18px 0;color:var(--inchiostro);text-decoration:none}
.lv-soc a::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--inchiostro);transform:scaleX(0);transform-origin:right;transition:transform .7s var(--ease)}
.lv-soc a:hover::after,.lv-soc a:focus-visible::after{transform:scaleX(1);transform-origin:left}
.lv-soc a .i{transition:transform .5s var(--ease)}
.lv-soc a:hover .i{transform:translateX(6px)}
.lv-soc__t{font-size:clamp(22px,2vw,28px);font-weight:500;letter-spacing:-.02em}
.lv-soc__d{font-size:16px;color:var(--testo-2)}
@media (max-width:1023px){.lv-al__h,.lv-al__txt{grid-column:1/-1}}
@media (max-width:399px){.lv-soc__d{display:none}}

/* ---------- Fascia d'invito: il bagno verde in movimento, sotto il petrolio ---------- */
.lv-inv{position:relative;overflow:hidden;isolation:isolate;padding-block:clamp(120px,14vw,208px);background:var(--notte);color:var(--su-scuro-2)}
.lv-inv__bg{position:absolute;inset:-12% 0;z-index:-1}
.lv-inv__bg img,.lv-inv__bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lv-inv__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(36,52,66,.94) 0%,rgba(36,52,66,.84) 48%,rgba(36,52,66,.55) 100%)}
.lv-inv__t{color:#fff;max-width:13em}
.lv-inv__p{margin-top:28px;color:var(--su-scuro-2)}
.lv-inv__act{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:44px}
.lv-inv .btn--primary{background:#fff;color:var(--inchiostro)}
.lv-inv .btn--primary:hover{background:var(--rovere-chiaro)}
.lv-inv__line{border-color:rgba(255,255,255,.55);color:#fff}
.lv-inv__line:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.lv-inv__wa{color:#fff}
.lv-inv :focus-visible{outline-color:#fff}
@media (max-width:599px){
  .lv-inv__bg::after{background:rgba(36,52,66,.86)}
  .lv-inv__act .btn{width:100%}
  .lv-inv__act .btn--text{width:auto}
}

/* Cosa abbiamo fatto, da telefono: elenco di titoli che si aprono al tocco (13/10/2026) */
.lv-sch__tog{all:unset;box-sizing:border-box;display:flex;gap:14px;align-items:baseline;width:100%}
.lv-sch__tog .faq__pm{display:none}
.lv-sch__l.is-acc .lv-sch__r{padding:6px 0;row-gap:0}
.lv-sch__l.is-acc .lv-sch__tog{cursor:pointer;align-items:center;min-height:48px}
.lv-sch__l.is-acc .lv-sch__tog .faq__pm{display:block;margin-left:auto}
.lv-sch__l.is-acc .lv-sch__r:not(.is-open) .lv-sch__v{display:none}
.lv-sch__l.is-acc .lv-sch__r.is-open .lv-sch__v{padding:0 0 14px}
.lv-sch__r.is-open .faq__pm::after{transform:rotate(0deg)}
.lv-sch__r.is-open .faq__pm::before{transform:rotate(180deg)}
.lv-sch__tog:focus-visible{outline:2px solid var(--petrolio);outline-offset:4px}
