.elementor-2433 .elementor-element.elementor-element-4dc6edb{--display:flex;--overflow:hidden;}:root{--page-title-display:none;}/* Start custom CSS *//* ═══════════════════════════════════════════════
   LE VIN DE L'ASSASSIN — WIDGET CSS
   Stile: dark bistrot, Baudelaire-inspired
   Palette: crema/avorio su nero profondo, accento bordeaux
   ═══════════════════════════════════════════════ */

.lv-widget *,.lv-widget *::before,.lv-widget *::after{margin:0;padding:0;box-sizing:border-box}
.lv-widget img{display:block}

.lv-widget{
  --bk:#0a0806;
  --bk2:#111009;
  --cr:#f0ebe0;
  --cr2:rgba(240,235,224,.72);
  --cr3:rgba(240,235,224,.38);
  --cr4:rgba(240,235,224,.14);
  --bd:#791816;
  --bd2:#5a1112;
  --gd:#c4a57a;
  --wh:#faf8f4;
  --ink:#1c1612;
  --ink2:rgba(28,22,18,.65);
  font-family:'Cormorant Garamond',Georgia,serif;
  -webkit-font-smoothing:antialiased;
}

.e-con.lv-page,.elementor-element.e-con.lv-page{
  background:var(--bk)!important;
  color:var(--cr)!important;
  overflow:hidden!important;
  width:100%!important;
  max-width:100%!important;
  padding:0!important;
  --padding-top:0px!important;
  --padding-bottom:0px!important;
  --padding-left:0px!important;
  --padding-right:0px!important;
}

/* ── Grain ── */
.lv-grain{
  position:fixed;inset:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E");
  pointer-events:none;z-index:10000;opacity:.5
}

/* ── Progress bar ── */
.lv-prog{position:fixed;bottom:0;left:0;width:100%;height:2px;background:rgba(240,235,224,.05);z-index:9999}
.lv-prog-bar{height:100%;width:0%;background:linear-gradient(90deg,var(--bd2),var(--bd))}

/* ── Hint scroll ── */
.lv-hint{
  position:fixed;bottom:32px;right:36px;z-index:9998;
  display:flex;align-items:center;gap:12px;
  font-family:'Neue Haas Display','Helvetica Neue',sans-serif;
  font-size:9px;letter-spacing:.28em;text-transform:uppercase;
  color:rgba(240,235,224,.18);transition:opacity .6s
}
.lv-hint.hidden{opacity:0;pointer-events:none}
.lv-hint-arr{width:32px;height:1px;background:rgba(240,235,224,.12);position:relative;overflow:hidden}
.lv-hint-arr::after{
  content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;
  background:var(--bd);animation:lvArr 2.2s ease-in-out infinite
}
@keyframes lvArr{0%{left:-100%}50%{left:100%}100%{left:100%}}

/* ── Counter ── */
.lv-cnt{
  position:fixed;bottom:32px;left:36px;z-index:9998;
  font-family:'Neue Haas Display','DM Sans',sans-serif;
  font-size:10px;letter-spacing:.18em;color:rgba(240,235,224,.16)
}

/* ── STRUTTURA ── */
.lv-wrap{width:100%;overflow:hidden}
.lv-trk{display:flex;flex-wrap:nowrap;will-change:transform}
.lv-p{flex:0 0 100vw;width:100vw;height:100vh;position:relative;overflow:hidden}
.lv-p--dk{background:var(--bk)}
.lv-p--dk2{background:var(--bk2)}
.lv-p--wh{background:var(--wh);color:var(--ink)}
.lv-p--noir{background:#000;color:var(--cr)}

/* ── TIPOGRAFIA ── */
.lv-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-weight:300;font-style:normal;
  letter-spacing:.05em;line-height:1;
  color:var(--cr)
}
.lv-serif{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(16px,1.45vw,22px);font-weight:400;line-height:1.75;
  letter-spacing:.015em
}
.lv-serif--lt{color:rgba(240,235,224,.82)}
.lv-serif--m{color:rgba(240,235,224,.5)}
.lv-serif--dk{color:var(--ink)}
.lv-serif--dkm{color:rgba(28,22,18,.58)}
.lv-script{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-style:italic;font-weight:300;
  color:var(--bd);line-height:1.1
}
.lv-sans{
  font-family:'Neue Haas Display','DM Sans',sans-serif;
  font-size:clamp(9px,.82vw,13px);
  letter-spacing:.3em;text-transform:uppercase;
  color:rgba(240,235,224,.32)
}
.lv-sh{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-weight:400;line-height:1;
  letter-spacing:.07em;text-transform:uppercase
}
.lv-sh-v{
  writing-mode:vertical-lr;text-orientation:mixed;letter-spacing:.18em
}
.lv-poem{
  font-family:'Cardo','Cormorant Garamond',Georgia,serif;
  font-style:italic;font-weight:400;
  font-size:clamp(12px,1.1vw,16px);line-height:1.95;
  color:rgba(240,235,224,.7);letter-spacing:.01em
}

/* ── LAYOUT ── */
.lv-spl{display:flex;width:100%;height:100%}
.lv-spl--rev{display:flex;width:100%;height:100%;flex-direction:row-reverse}
.lv-spl-i{overflow:hidden;position:relative}
.lv-spl-i img{width:100%;height:100%;object-fit:cover}
.lv-spl-t{flex:1;display:flex;flex-direction:column;justify-content:center;padding:6vh 4.5vw}
.lv-cen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;height:100%}
.lv-stk{display:flex;flex-direction:column;width:100%;height:100%}
.lv-row{display:flex;flex-direction:row;width:100%;height:100%}
.lv-stk-t{flex:0 0 60%;overflow:hidden}
.lv-stk-t55{flex:0 0 70%;overflow:hidden}
.lv-stk-b{flex:1;display:flex;flex-direction:column;justify-content:center;padding:3.5vh 4.5vw}
.lv-stk-t img,.lv-stk-t55 img{width:100%;height:100%;object-fit:cover}
.lv-ful{position:absolute;inset:0}
.lv-ful img{width:100%;height:100%;object-fit:cover}

/* ── COVER ── */
.lv-cov{
  display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:3.5vh;width:100%;height:100%;position:relative
}
.lv-cov-logo{text-align:center;position:relative;z-index:3;width:auto}
.lv-cov-logo img{height:auto;display:block;margin:0 auto}
.lv-cov-logotype{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(11px,1vw,16px);font-weight:400;
  letter-spacing:.55em;text-transform:uppercase;
  color:rgba(240,235,224,.28);
}
.lv-cov-logotype span{
  font-style:italic;font-size:clamp(28px,3.2vw,52px);
  letter-spacing:.08em;color:var(--bd);display:block;margin-top:4px
}
.lv-cov-img{
  width:52vw;max-width:520px;height:62vh;overflow:hidden;
  position:relative;z-index:1;margin-top:-2vh
}
.lv-cov-img img{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.lv-cov-bot{
  position:absolute;bottom:11vh;text-align:center;z-index:4;width:100%
}
.lv-cov-ser{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(13px,1.1vw,18px);font-weight:400;font-style:italic;
  color:rgba(240,235,224,.6)
}
.lv-cov-san{
  font-family:'Neue Haas Display','DM Sans',sans-serif;
  font-size:clamp(8px,.75vw,12px);letter-spacing:.35em;text-transform:uppercase;
  color:rgba(240,235,224,.3);margin-top:5px
}

/* ── Linea decorativa ── */
.lv-ln{
  width:52px;height:1px;background:var(--bd);
  margin:18px 0;transform:scaleX(0);transform-origin:left
}
.lv-ln--c{margin:18px auto;transform-origin:center}
.lv-ln--dk{background:var(--ink)}
.lv-ln--gd{background:var(--gd)}

/* ── Numero pannello ── */
.lv-pn{
  position:absolute;top:32px;left:36px;
  font-size:10px;letter-spacing:.32em;text-transform:uppercase;
  color:rgba(240,235,224,.12);z-index:5;
  font-family:'Neue Haas Display','DM Sans',sans-serif
}
.lv-pn--dk{color:rgba(28,22,18,.12)}
.lv-ovr{position:absolute;top:28px;left:36px;z-index:3}

/* ── REVEAL — stato iniziale ── */
.lv-rv{opacity:0;transform:translateY(22px);will-change:opacity,transform}
.lv-rv-l{opacity:0;transform:translateX(-40px);will-change:opacity,transform}
.lv-rv-img{opacity:0;transform:scale(1.06);will-change:opacity,transform}
.lv-intro{opacity:0;transform:translateY(18px);will-change:opacity,transform}
.lv-intro-img{opacity:0;transform:scale(1.04);will-change:opacity,transform}

/* ── Photo grid row ── */
.lv-photo-row{display:flex;flex-direction:row;width:100%;height:100%;gap:4px}
.lv-photo-row>div{flex:1;overflow:hidden;position:relative}
.lv-photo-row>div img{width:100%;height:100%;object-fit:cover}

/* ── Cover titolo THIS IS ── */
.lv-thisis{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(60px,10vw,160px);font-weight:300;
  letter-spacing:-.01em;line-height:1;color:var(--cr)
}
.lv-thisis span{color:var(--bd)}

/* ── Poesia layout ── */
.lv-poem-cols{
  display:flex;gap:5vw;width:100%;height:100%;
  align-items:center;justify-content:center;padding:6vh 6vw
}
.lv-poem-col{flex:1;max-width:380px}

/* ── Poesia 4 colonne ── */
.lv-poem-4cols{
  display:flex;gap:3vw;width:100%;height:100%;
  align-items:center;justify-content:center;padding:5vh 4vw;overflow:hidden;
}
.lv-poem-4cols .lv-poem-col{flex:1;min-width:0;max-width:none!important}
.lv-poem-4cols .lv-poem{
  font-size:clamp(10px,0.85vw,16px)!important;
  line-height:1.75!important
}

/* ── P centered img ── */
.lv-p--centered-img{
  display:flex;align-items:center;justify-content:center;background:var(--bk)
}
.lv-p--centered-img img{
  max-width:100%;max-height:100vh;width:auto;height:auto;
  object-fit:contain;display:block
}

/* ═══════════════════════════════════════════════
   MOBILE
   ═══════════════════════════════════════════════ */
@media(max-width:767px){

  html,body{
    overflow:auto!important;
    overscroll-behavior:auto!important;
    height:auto!important
  }

  .lv-wrap{
    overflow:visible!important;
    overscroll-behavior:auto!important;
    touch-action:pan-y
  }

  .lv-trk{
    transform:none!important;
    will-change:auto!important;
    flex-direction:column
  }

  .lv-p{
    height:auto!important;
    min-height:calc(var(--real-vh, 1vh) * 100)!important;
    overflow:visible!important;
    flex:none;
    width:100vw
  }

  .lv-p,.lv-p *{-webkit-tap-highlight-color:transparent}

  .lv-p.first,.lv-p.last,.lv-p.centrato{
    display:flex;
    flex-direction:column;
    justify-content:center
  }

  .lv-hint,.lv-cnt{display:none}

  .lv-spl,.lv-spl--rev{flex-direction:column}

  .lv-spl-i{
    height:calc(var(--real-vh, 1vh) * 79)!important;
    flex:none!important;
    width:100%!important
  }

  .lv-spl-t{
    padding:40px 24px!important;
    flex:none!important;
    width:100%!important
  }

  .col-rev{flex-direction:column-reverse!important}

  .lv-stk-t,.lv-stk-t55{
    flex:none!important;
    height:calc(var(--real-vh, 1vh) * 40)!important;
    overflow:hidden
  }

  .lv-stk-b{padding:32px 24px!important}

  .lv-row{flex-direction:column!important}

  .lv-row .lv-stk-t55{
    flex:none!important;
    height:calc(var(--real-vh, 1vh) * 50)!important;
    width:100%!important
  }

  .lv-cen{padding:60px 24px}

  .lv-sh-v{writing-mode:horizontal-tb!important}

  .lv-thisis{font-size:clamp(44px,14vw,80px)}

  .lv-cov{padding-top:8vh;gap:2.5vh}
  .lv-cov-logo img{max-width:220px}

  .lv-cov-img{
    width:88vw!important;
    height:calc(var(--real-vh, 1vh) * 65)!important;
    max-width:none!important;
    margin-top:-1.5vh!important
  }

  .lv-cov-bot{
    position:relative!important;
    bottom:11vh !important;
    padding:16px 0 8px
  }

  .lv-photo-row{
    flex-direction:column!important;
    gap:12px!important;
    padding:12px!important
  }

  .lv-photo-row>div{
    flex:none!important;
    width:100%!important;
    height:auto!important
  }

  .lv-photo-row>div img{
    width:100%!important;
    height:auto!important;
    object-fit:contain!important
  }

  .lv-poem-4cols{
    flex-direction:column!important;
    height:auto!important;
    padding:40px 24px!important;
    gap:0!important;
    overflow-y:visible!important
  }

  /* ── P8: poesia centrata su mobile, testo minimo 16px ── */
  .lv-poem-4cols .lv-poem-col{
    width:100%!important;
    max-width:100%!important;
    text-align:center!important
  }

  .lv-poem-4cols .lv-poem{
    font-size:16px!important;
    line-height:1.85!important;
    text-align:center!important
  }

  .lv-p--centered-img{
    min-height:calc(var(--real-vh, 1vh) * 100)!important
  }

  .lv-p--centered-img img{
    width:100%!important;
    height:auto!important;
    max-height:calc(var(--real-vh, 1vh) * 90)!important;
    object-fit:contain!important
  }

  .lv-pn{top:20px;left:20px}
  .lv-ovr{top:20px;left:20px}

  .lv-p--noir .lv-cen{padding:80px 24px}

  .lv-p--noir.last .lv-cen{
    min-height:calc(var(--real-vh, 1vh) * 60);
    display:flex;
    align-items:center;
    justify-content:center
  }

  .fullimg{height:calc(var(--real-vh, 1vh) * 79)!important}
}/* End custom CSS */