/* c:\Users\l.terranova\AppData\Local\Temp\lt-lemon-scene-v5-1.css */

/* =========================================================
   LT LEMON SCENE — V5.1
   Fix:
   - la goccia si appiattisce e svanisce subito all'impatto
   - primo scintillio visibile quasi subito
   - poi scintillii alternati e casuali con gap >= 10s
   ========================================================= */

.et_pb_column.lt-lemon-scene {
    /* Orecchini */
    --lt-earring-left-x: 69.05%;
    --lt-earring-left-y: 25.95%;
    --lt-earring-right-x: 84.70%;
    --lt-earring-right-y: 24.55%;
    --lt-earring-area-size: 5.4%;

    /* Limone */
    --lt-lemon-aura-x: 12.35%;
    --lt-lemon-aura-y: 43.15%;
    --lt-lemon-aura-width: 10%;
    --lt-lemon-aura-height: 11.5%;

    /* Goccia */
    --lt-drop-x: 17.45%;
    --lt-drop-start-y: 53.70%;
    --lt-drop-impact-y: 69.15%;
    --lt-drop-width: clamp(6px, 0.56vw, 11px);
    --lt-drop-height: clamp(11px, 1.02vw, 22px);

    /* Fisica e tempi */
    --lt-gravity-px: 3000;
    --lt-drop-form-ms: 240;
    --lt-drop-pause-ms: 5200;
    --lt-impact-ms: 1000;

    /* Prima scintilla rapida, poi intervallo lungo */
    --lt-spark-initial-min-ms: 900;
    --lt-spark-initial-max-ms: 1800;
    --lt-spark-min-gap-ms: 10000;
    --lt-spark-max-gap-ms: 16000;

    /* Liquido */
    --lt-liquid-x: 13.05%;
    --lt-liquid-y: 70%;
    --lt-liquid-width: 8.85%;
    --lt-liquid-height: 15.5%;

    /* Bollicine V5.4 */
    --lt-bubble-count: 12;
    --lt-bubble-opacity: 0.92;

    --lt-bubble-duration-ms: 1500;
    --lt-bubble-duration-variance-ms: 280;
    --lt-bubble-speed: 1;
    --lt-bubble-stagger-ms: 45;

    /*
      Dimensioni in percentuale della larghezza
      del contenitore del liquido.
    */
    --lt-bubble-size-min: 4;
    --lt-bubble-size-max: 10;

    /*
      Distanza di salita in percentuale dello spazio
      verticale disponibile.
    */
    --lt-bubble-rise-min: 72;
    --lt-bubble-rise-max: 98;

    /* Oscillazione laterale in % della larghezza del liquido */
    --lt-bubble-drift: 7;

    /* Numero di oscillazioni durante la salita */
    --lt-bubble-wobble-min: 0.55;
    --lt-bubble-wobble-max: 1.15;

    /* Punto di partenza dal fondo del liquido */
    --lt-bubble-bottom-min: 5;
    --lt-bubble-bottom-max: 18;

    --lt-bubble-border-opacity: 0.88;
    --lt-bubble-glow-opacity: 0.72;

    /* Impatto */
    --lt-impact-width: 6.7%;
    --lt-impact-glow-width: 10%;
    --lt-impact-glow-height: 5.8%;

    position: relative !important;
    overflow: visible !important;
    isolation: auto;
    line-height: 0;
}

/*
 * L'overlay NON usa più inset:0 sulla colonna.
 * Left/top/width/height vengono sincronizzati dal JS
 * con il rettangolo reale dell'immagine.
 */
.lt-lemon-scene > .lt-lemon-overlay {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 50;

    width: 0;
    height: 0;

    overflow: visible;
    pointer-events: none;

    mix-blend-mode: normal !important;
    isolation: isolate;
}


/* =========================================================
   GUARD: overlay visibile solo col JS corrispondente
   ========================================================= */

.lt-lemon-scene > .lt-lemon-overlay {
    display: none;
}

.lt-lemon-scene[data-lt-lemon-ready-v61="1"] > .lt-lemon-overlay {
    display: block;
}

.lt-lemon-scene .lt-woman-aura,
.lt-lemon-scene .lt-woman-motion,
.lt-lemon-scene .lt-woman-cutout,
.lt-lemon-scene .lt-metal-glint {
    display: none !important;
    content: none !important;
    animation: none !important;
}

/* =========================================================
   ORECCHINI
   ========================================================= */

.lt-lemon-scene .lt-earring-sparkles {
    --lt-spark-1-x: 50%;
    --lt-spark-1-y: 50%;
    --lt-spark-2-x: 38%;
    --lt-spark-2-y: 36%;
    --lt-spark-3-x: 65%;
    --lt-spark-3-y: 68%;

    position: absolute;
    z-index: 120;
    width: var(--lt-earring-area-size);
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    overflow: visible;
    mix-blend-mode: normal;
}

.lt-lemon-scene .lt-earring-sparkles-left {
    left: var(--lt-earring-left-x);
    top: var(--lt-earring-left-y);
}

.lt-lemon-scene .lt-earring-sparkles-right {
    left: var(--lt-earring-right-x);
    top: var(--lt-earring-right-y);
}

.lt-lemon-scene .lt-earring-sparkles::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 74%;
    height: 74%;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        rgba(255,255,230,.11) 0%,
        rgba(255,230,30,.05) 40%,
        transparent 72%
    );
    transform: translate(-50%, -50%);
    filter: blur(2px);
    opacity: .78;
}

.lt-lemon-scene .lt-earring-sparkles i {
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        #ffffff 0 10%,
        rgba(255,255,230,1) 11% 22%,
        rgba(255,226,20,.98) 35%,
        transparent 72%
    );
    box-shadow:
        0 0 5px rgba(255,255,242,1),
        0 0 14px rgba(255,236,70,.98),
        0 0 28px rgba(255,190,0,.76);
    filter:
        brightness(1.24)
        drop-shadow(0 0 4px rgba(255,241,110,.95));
    opacity: 0;
    transform: translate(-50%, -50%) scale(0) rotate(0deg);
}

.lt-lemon-scene .lt-earring-sparkles i::before,
.lt-lemon-scene .lt-earring-sparkles i::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    border-radius: 999px;
    transform: translate(-50%, -50%);
}

.lt-lemon-scene .lt-earring-sparkles i::before {
    width: 14%;
    height: 420%;
    background: linear-gradient(
        to bottom,
        transparent,
        rgba(255,255,248,1),
        transparent
    );
}

.lt-lemon-scene .lt-earring-sparkles i::after {
    width: 420%;
    height: 14%;
    background: linear-gradient(
        to right,
        transparent,
        rgba(255,255,248,1),
        transparent
    );
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(1) {
    left: var(--lt-spark-1-x);
    top: var(--lt-spark-1-y);
    width: clamp(8px, .82vw, 16px);
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(2) {
    left: var(--lt-spark-2-x);
    top: var(--lt-spark-2-y);
    width: clamp(5px, .52vw, 10px);
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(3) {
    left: var(--lt-spark-3-x);
    top: var(--lt-spark-3-y);
    width: clamp(4px, .42vw, 8px);
}

.lt-lemon-scene .lt-earring-sparkles.lt-spark-now i:nth-child(1) {
    animation: lt-earring-spark-main 1300ms ease-in-out both;
}

.lt-lemon-scene .lt-earring-sparkles.lt-spark-now i:nth-child(2) {
    animation: lt-earring-spark-small 1050ms 90ms ease-in-out both;
}

.lt-lemon-scene .lt-earring-sparkles.lt-spark-now i:nth-child(3) {
    animation: lt-earring-spark-tiny 920ms 150ms ease-in-out both;
}

/* =========================================================
   FIX DIMENSIONI REALI SCINTILLII
   ========================================================= */

.lt-lemon-scene .lt-earring-sparkles i {
    --lt-spark-size: clamp(8px, 0.82vw, 16px);

    position: absolute;
    display: block;

    width: var(--lt-spark-size);
    height: var(--lt-spark-size);
    min-width: var(--lt-spark-size);
    min-height: var(--lt-spark-size);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            #ffffff 0 10%,
            rgba(255, 255, 230, 1) 11% 22%,
            rgba(255, 226, 20, 0.98) 35%,
            transparent 72%
        );

    box-shadow:
        0 0 5px rgba(255, 255, 242, 1),
        0 0 14px rgba(255, 236, 70, 0.98),
        0 0 28px rgba(255, 190, 0, 0.76);

    filter:
        brightness(1.24)
        drop-shadow(0 0 4px rgba(255, 241, 110, 0.95));

    opacity: 0;

    transform:
        translate(-50%, -50%)
        scale(0)
        rotate(0deg);

    transform-origin: center;
    overflow: visible;
    z-index: 3;
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(1) {
    --lt-spark-size: clamp(8px, 0.82vw, 16px);

    left: var(--lt-spark-1-x);
    top: var(--lt-spark-1-y);
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(2) {
    --lt-spark-size: clamp(5px, 0.52vw, 10px);

    left: var(--lt-spark-2-x);
    top: var(--lt-spark-2-y);
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(3) {
    --lt-spark-size: clamp(4px, 0.42vw, 8px);

    left: var(--lt-spark-3-x);
    top: var(--lt-spark-3-y);
}

/* =========================================================
   LIMONE
   ========================================================= */

.lt-lemon-scene .lt-lemon-aura {
    position: absolute;
    z-index: 2;
    left: var(--lt-lemon-aura-x);
    top: var(--lt-lemon-aura-y);
    width: var(--lt-lemon-aura-width);
    height: var(--lt-lemon-aura-height);
    border-radius: 50%;
    background: radial-gradient(
        circle,
        rgba(255,255,190,.21) 0%,
        rgba(255,230,25,.09) 42%,
        transparent 75%
    );
    filter: blur(4px);
    mix-blend-mode: screen;
    opacity: .1;
    animation: lt-lemon-breathe 5.4s ease-in-out infinite;
}

/* =========================================================
   GOCCIA
   ========================================================= */

.lt-lemon-scene .lt-drop-thread {
    position: absolute;
    z-index: 89;
    left: var(--lt-drop-x);
    top: var(--lt-drop-start-y);
    width: clamp(1px, .11vw, 2px);
    height: clamp(8px, .8vw, 16px);
    border-radius: 999px;
    background: linear-gradient(
        to bottom,
        rgba(255,240,50,0),
        rgba(255,225,0,.95)
    );
    opacity: 0;
    transform: translate(-50%, -75%) scaleY(0);
    transform-origin: bottom center;
}

.lt-lemon-scene .lt-lemon-drop {
    position: absolute;
    z-index: 90;
    left: var(--lt-drop-x);
    top: var(--lt-drop-start-y);
    width: var(--lt-drop-width);
    height: var(--lt-drop-height);
    border-radius: 50% 50% 58% 58% / 18% 18% 82% 82%;
    background:
        radial-gradient(
            circle at 34% 24%,
            rgba(255,255,250,1) 0 7%,
            rgba(255,250,170,.95) 8% 15%,
            transparent 16%
        ),
        linear-gradient(
            180deg,
            #fff98a 0%,
            #ffe500 34%,
            #f5c400 72%,
            #bd8500 100%
        );
    box-shadow:
        inset -1px -2px 3px rgba(120,75,0,.35),
        inset 1px 1px 2px rgba(255,255,230,.8),
        0 0 4px rgba(255,235,60,.88),
        0 0 12px rgba(255,205,0,.42);
    opacity: 0;
    transform: translate(-50%, 0) scaleX(.56) scaleY(.34);
    transform-origin: center top;
    will-change: transform, opacity;
}

.lt-lemon-scene .lt-lemon-drop::after {
    content: "";
    position: absolute;
    left: 24%;
    top: 14%;
    width: 18%;
    height: 36%;
    border-radius: 50%;
    background: linear-gradient(
        to bottom,
        rgba(255,255,255,.95),
        rgba(255,255,255,0)
    );
    transform: rotate(8deg);
    opacity: .75;
}

/* =========================================================
   IMPATTO
   ========================================================= */

.lt-lemon-scene .lt-impact-glow {
    position: absolute;
    z-index: 70;
    left: var(--lt-drop-x);
    top: var(--lt-drop-impact-y);
    width: var(--lt-impact-glow-width);
    height: var(--lt-impact-glow-height);
    border-radius: 50%;
    background: radial-gradient(
        ellipse at center,
        rgba(255,255,220,.88) 0%,
        rgba(255,240,70,.62) 20%,
        rgba(255,190,0,.24) 48%,
        transparent 73%
    );
    mix-blend-mode: screen;
    filter: blur(4px);
    opacity: 0;
    transform: translate(-50%, -50%) scale(.1);
}

.lt-lemon-scene .lt-liquid-impact {
    position: absolute;
    z-index: 80;
    left: var(--lt-drop-x);
    top: var(--lt-drop-impact-y);
    width: var(--lt-impact-width);
    aspect-ratio: 4.7 / 1;
    border: 1.5px solid rgba(255,235,85,.84);
    border-top-color: rgba(255,255,225,.96);
    border-radius: 50%;
    box-shadow:
        0 0 4px rgba(255,238,60,.56),
        inset 0 1px 2px rgba(255,255,220,.6);
    opacity: 0;
    transform: translate(-50%, -50%) scaleX(.08) scaleY(.25);
}

.lt-lemon-scene .lt-liquid-impact > span {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 100%;
    border: 1px solid rgba(255,225,45,.62);
    border-radius: 50%;
    opacity: 0;
    transform: translate(-50%, -50%) scale(.15);
}

.lt-lemon-scene .lt-liquid-impact::before,
.lt-lemon-scene .lt-liquid-impact::after {
    content: "";
    position: absolute;
    top: 30%;
    width: 8%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(
        circle at 35% 30%,
        #fffed1,
        #ffe300 54%,
        #c89000
    );
    box-shadow: 0 0 4px rgba(255,225,0,.7);
    opacity: 0;
}

.lt-lemon-scene .lt-liquid-impact::before {
    left: 40%;
    --lt-splash-x: -150%;
    --lt-splash-r: -16deg;
}

.lt-lemon-scene .lt-liquid-impact::after {
    right: 40%;
    --lt-splash-x: 150%;
    --lt-splash-r: 16deg;
}

/* =========================================================
   LIQUIDO E BOLLICINE
   ========================================================= */

.lt-lemon-scene .lt-liquid-shimmer,
.lt-lemon-scene .lt-liquid-bubbles {
    position: absolute;
    left: var(--lt-liquid-x);
    top: var(--lt-liquid-y);
    width: var(--lt-liquid-width);
    height: var(--lt-liquid-height);
    overflow: hidden;
    border-radius: 5% 5% 18% 18%;
    clip-path: polygon(8% 0,92% 0,88% 100%,12% 100%);
}

.lt-lemon-scene .lt-liquid-shimmer {
    z-index: 65;
    background: linear-gradient(
        104deg,
        transparent 8%,
        rgba(255,255,205,.07) 22%,
        rgba(255,252,175,.38) 39%,
        rgba(255,215,0,.10) 54%,
        transparent 68%
    );
    mix-blend-mode: screen;
    opacity: 0;
    transform-origin: center top;
}

.lt-lemon-scene .lt-liquid-shimmer::before,
.lt-lemon-scene .lt-liquid-shimmer::after {
    content: "";
    position: absolute;
}

.lt-lemon-scene .lt-liquid-shimmer::before {
    left: -20%;
    top: -5%;
    width: 140%;
    height: 56%;
    border-radius: 45% 55% 50% 50%;
    background: radial-gradient(
        ellipse at center,
        rgba(255,255,205,.4),
        rgba(255,225,25,.13) 46%,
        transparent 72%
    );
}

.lt-lemon-scene .lt-liquid-shimmer::after {
    left: -20%;
    bottom: -6%;
    width: 145%;
    height: 76%;
    background: linear-gradient(
        115deg,
        transparent 16%,
        rgba(255,255,195,.10) 29%,
        rgba(255,236,50,.24) 43%,
        transparent 59%
    );
}

.lt-lemon-scene .lt-liquid-bubbles {
    z-index: 75;
}

.lt-lemon-scene .lt-liquid-bubbles i {
    position: absolute;
    bottom: 7%;
    width: 9%;
    aspect-ratio: 1;
    border: 1px solid rgba(255,255,215,.7);
    border-radius: 50%;
    background: radial-gradient(
        circle at 31% 27%,
        rgba(255,255,255,.9) 0 8%,
        rgba(255,248,170,.18) 25%,
        rgba(255,215,0,.04) 64%,
        transparent 72%
    );
    box-shadow:
        inset -1px -1px 2px rgba(255,195,0,.15),
        0 0 3px rgba(255,235,80,.4);
    opacity: 0;
}

.lt-lemon-scene .lt-liquid-bubbles i:nth-child(1) { left:22%; width:8%; }
.lt-lemon-scene .lt-liquid-bubbles i:nth-child(2) { left:39%; width:12%; }
.lt-lemon-scene .lt-liquid-bubbles i:nth-child(3) { left:62%; width:7%; }
.lt-lemon-scene .lt-liquid-bubbles i:nth-child(4) { left:71%; width:10%; }
.lt-lemon-scene .lt-liquid-bubbles i:nth-child(5) { left:31%; width:6%; }
.lt-lemon-scene .lt-liquid-bubbles i:nth-child(6) { left:53%; width:8%; }

/* =========================================================
   IMPATTO ATTIVATO DAL JS
   ========================================================= */

.lt-lemon-scene.lt-is-impacting .lt-impact-glow {
    animation: lt-impact-glow-on 720ms ease-out both;
}

.lt-lemon-scene.lt-is-impacting .lt-liquid-impact {
    animation: lt-ripple-main-on 790ms ease-out both;
}

.lt-lemon-scene.lt-is-impacting .lt-liquid-impact > span {
    animation: lt-ripple-second-on 870ms 55ms ease-out both;
}

.lt-lemon-scene.lt-is-impacting .lt-liquid-impact::before,
.lt-lemon-scene.lt-is-impacting .lt-liquid-impact::after {
    animation: lt-splash-on 470ms ease-out both;
}

.lt-lemon-scene.lt-is-impacting .lt-liquid-shimmer {
    animation: lt-liquid-body-on 980ms ease-out both;
}

.lt-lemon-scene.lt-is-impacting .lt-liquid-shimmer::before {
    animation: lt-liquid-wave-a 920ms ease-in-out both;
}

.lt-lemon-scene.lt-is-impacting .lt-liquid-shimmer::after {
    animation: lt-liquid-wave-b 980ms ease-in-out both;
}

.lt-lemon-scene.lt-is-impacting .lt-liquid-bubbles i {
    animation: lt-bubble-on 850ms ease-out both;
}

.lt-lemon-scene.lt-is-impacting .lt-liquid-bubbles i:nth-child(2) { animation-delay:55ms; }
.lt-lemon-scene.lt-is-impacting .lt-liquid-bubbles i:nth-child(3) { animation-delay:95ms; }
.lt-lemon-scene.lt-is-impacting .lt-liquid-bubbles i:nth-child(4) { animation-delay:135ms; }
.lt-lemon-scene.lt-is-impacting .lt-liquid-bubbles i:nth-child(5) { animation-delay:180ms; }
.lt-lemon-scene.lt-is-impacting .lt-liquid-bubbles i:nth-child(6) { animation-delay:220ms; }

/* =========================================================
   KEYFRAMES
   ========================================================= */

@keyframes lt-earring-spark-main {
    0%,100% {
        opacity:0;
        transform:translate(-50%,-50%) scale(0) rotate(0deg);
    }
    22% {
        opacity:.7;
        transform:translate(-50%,-50%) scale(.55) rotate(24deg);
    }
    48% {
        opacity:1;
        transform:translate(-50%,-50%) scale(1.48) rotate(48deg);
    }
    72% {
        opacity:.34;
        transform:translate(-50%,-50%) scale(.62) rotate(82deg);
    }
    100% {
        opacity:0;
        transform:translate(-50%,-50%) scale(.16) rotate(105deg);
    }
}

@keyframes lt-earring-spark-small {
    0%,100% {
        opacity:0;
        transform:translate(-50%,-50%) scale(0) rotate(0deg);
    }
    28% {
        opacity:.55;
        transform:translate(-50%,-50%) scale(.52) rotate(18deg);
    }
    56% {
        opacity:.92;
        transform:translate(-50%,-50%) scale(1.02) rotate(52deg);
    }
    100% {
        opacity:0;
        transform:translate(-50%,-50%) scale(.24) rotate(90deg);
    }
}

@keyframes lt-earring-spark-tiny {
    0%,100% {
        opacity:0;
        transform:translate(-50%,-50%) scale(0);
    }
    36% {
        opacity:.68;
        transform:translate(-50%,-50%) scale(.76);
    }
    62% {
        opacity:.94;
        transform:translate(-50%,-50%) scale(1.16);
    }
    100% {
        opacity:0;
        transform:translate(-50%,-50%) scale(.22);
    }
}

@keyframes lt-lemon-breathe {
    0%,100% { opacity:.08; transform:scale(.96); }
    50% { opacity:.24; transform:scale(1.045); }
}

@keyframes lt-impact-glow-on {
    0% { opacity:0; transform:translate(-50%,-50%) scale(.08); }
    18% { opacity:.86; transform:translate(-50%,-50%) scale(.55); }
    45% { opacity:.46; transform:translate(-50%,-50%) scale(1); }
    100% { opacity:0; transform:translate(-50%,-50%) scale(1.38); }
}

@keyframes lt-ripple-main-on {
    0% { opacity:0; transform:translate(-50%,-50%) scaleX(.05) scaleY(.2); }
    14% { opacity:.95; }
    60% { opacity:.32; transform:translate(-50%,-50%) scaleX(1) scaleY(.72); }
    100% { opacity:0; transform:translate(-50%,-50%) scaleX(1.35) scaleY(.92); }
}

@keyframes lt-ripple-second-on {
    0% { opacity:0; transform:translate(-50%,-50%) scale(.12); }
    20% { opacity:.65; }
    100% { opacity:0; transform:translate(-50%,-50%) scaleX(1.45) scaleY(1); }
}

@keyframes lt-splash-on {
    0% { opacity:0; transform:translate(0,0) rotate(0deg) scale(.2); }
    16% { opacity:.9; }
    55% {
        opacity:.7;
        transform:translate(var(--lt-splash-x),-160%) rotate(var(--lt-splash-r)) scale(.85);
    }
    100% {
        opacity:0;
        transform:translate(var(--lt-splash-x),-70%) rotate(var(--lt-splash-r)) scale(.35);
    }
}

@keyframes lt-liquid-body-on {
    0% { opacity:0; transform:translateX(0) skewX(0deg) scaleY(1); }
    15% { opacity:.64; transform:translateX(-2%) skewX(-1.5deg) scaleY(.985); }
    38% { opacity:.5; transform:translateX(4%) skewX(2deg) scaleY(1.012); }
    62% { opacity:.34; transform:translateX(-3%) skewX(-1.4deg) scaleY(.993); }
    82% { opacity:.18; transform:translateX(2%) skewX(.8deg) scaleY(1.004); }
    100% { opacity:0; transform:translateX(0) skewX(0deg) scaleY(1); }
}

@keyframes lt-liquid-wave-a {
    0% { transform:translateX(-10%) rotate(0deg) scaleY(.8); }
    28% { transform:translateX(5%) rotate(2deg) scaleY(1.12); }
    58% { transform:translateX(-4%) rotate(-1deg) scaleY(.92); }
    100% { transform:translateX(0) rotate(0deg) scaleY(1); }
}

@keyframes lt-liquid-wave-b {
    0% { transform:translateX(8%) skewX(0deg); }
    32% { transform:translateX(-6%) skewX(-4deg); }
    62% { transform:translateX(5%) skewX(3deg); }
    100% { transform:translateX(0) skewX(0deg); }
}

@keyframes lt-bubble-on {
    0% { opacity:0; transform:translate(0,0) scale(.35); }
    15% { opacity:.75; }
    45% { opacity:.82; transform:translate(-10%,-100%) scale(.82); }
    76% { opacity:.36; transform:translate(12%,-270%) scale(.72); }
    100% { opacity:0; transform:translate(-5%,-390%) scale(.38); }
}

@media (prefers-reduced-motion: reduce) {
    .lt-lemon-scene > .lt-lemon-overlay {
        display:none !important;
    }
}


/* =========================================================
   V5.2 — RENDERING ROBUSTO SCINTILLII
   L'animazione viene eseguita direttamente dal JavaScript.
   ========================================================= */

.lt-lemon-scene > .lt-lemon-overlay {
    z-index: 2147483000 !important;
    isolation: isolate;
    mix-blend-mode: normal !important;
    transform: translateZ(0);
    backface-visibility: hidden;
}

.lt-lemon-scene .lt-earring-sparkles {
    z-index: 2147483001 !important;
    mix-blend-mode: normal !important;
    overflow: visible !important;
    transform: translate(-50%, -50%) translateZ(0);
}

.lt-lemon-scene .lt-earring-sparkles i {
    --lt-spark-size: clamp(8px, 0.82vw, 16px);

    display: block;
    width: var(--lt-spark-size);
    height: var(--lt-spark-size);
    min-width: var(--lt-spark-size);
    min-height: var(--lt-spark-size);

    opacity: 0;
    visibility: visible;
    overflow: visible;
    z-index: 2147483002;

    animation: none !important;
    transform-origin: center center;
    will-change: opacity, transform, filter;
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(1) {
    --lt-spark-size: clamp(10px, 0.92vw, 18px);
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(2) {
    --lt-spark-size: clamp(6px, 0.58vw, 11px);
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(3) {
    --lt-spark-size: clamp(4px, 0.44vw, 9px);
}

/* Le vecchie classi CSS non gestiscono più l'animazione. */
.lt-lemon-scene .lt-earring-sparkles.lt-spark-now i {
    animation: none !important;
}


/* =========================================================
   V5.4 — BOLLICINE NATURALI
   - sempre perfettamente circolari
   - moto verticale continuo
   - oscillazione laterale morbida
   - nessun arresto tra keyframe
   - animazione indipendente dalla classe d'impatto
   ========================================================= */

.lt-lemon-scene .lt-liquid-bubbles {
    overflow: hidden !important;
    contain: layout paint;
}

.lt-lemon-scene .lt-liquid-bubbles i,
.lt-lemon-scene.lt-is-impacting .lt-liquid-bubbles i,
.lt-lemon-scene.lt-is-impacting .lt-liquid-bubbles i:nth-child(n) {
    position: absolute !important;

    left: var(--lt-bubble-x, 50%) !important;
    bottom: var(--lt-bubble-bottom, 7%) !important;

    width: var(--lt-bubble-size-px, 6px) !important;
    height: var(--lt-bubble-size-px, 6px) !important;
    min-width: var(--lt-bubble-size-px, 6px) !important;
    min-height: var(--lt-bubble-size-px, 6px) !important;

    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;

    border:
        1px solid
        rgba(
            255,
            255,
            225,
            var(--lt-bubble-border-opacity-local, .88)
        ) !important;

    background:
        radial-gradient(
            circle at 30% 27%,
            rgba(255, 255, 255, .98) 0 9%,
            rgba(255, 252, 205, .28) 22%,
            rgba(255, 224, 40, .08) 58%,
            transparent 74%
        ) !important;

    box-shadow:
        inset -1px -1px 2px rgba(255, 195, 0, .16),
        0 0 3px
            rgba(
                255,
                245,
                125,
                var(--lt-bubble-glow-opacity-local, .72)
            ),
        0 0 7px
            rgba(
                255,
                210,
                0,
                calc(var(--lt-bubble-glow-opacity-local, .72) * .34)
            ) !important;

    opacity: 0;
    transform:
        translate3d(0, 0, 0)
        scale(.45);

    transform-origin: center;
    will-change: transform, opacity;

    /*
      Disattiva completamente i vecchi keyframe CSS.
      Le bollicine sono animate dal JavaScript con fotogrammi
      campionati lungo una traiettoria continua.
    */
    animation: none !important;
}


/* =========================================================
   V6.1 — GEOMETRIA IMAGE-LOCKED / CROSS-BROWSER
   ========================================================= */

/*
 * Divi può applicare mix-blend-mode: lighten all'immagine o
 * al suo modulo. L'overlay resta un sibling della foto e
 * viene renderizzato normalmente.
 */
.lt-lemon-scene > .lt-lemon-overlay {
    box-sizing: border-box;
    transform: translateZ(0);
    backface-visibility: hidden;
    contain: layout style;
}

/* Dimensioni scalate sulla larghezza reale dell'immagine */
.lt-lemon-scene .lt-lemon-drop {
    width: var(--lt-drop-width-px, var(--lt-drop-width)) !important;
    height: var(--lt-drop-height-px, var(--lt-drop-height)) !important;
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(1) {
    --lt-spark-size: var(--lt-spark-lg-px, 12px) !important;
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(2) {
    --lt-spark-size: var(--lt-spark-md-px, 8px) !important;
}

.lt-lemon-scene .lt-earring-sparkles i:nth-child(3) {
    --lt-spark-size: var(--lt-spark-sm-px, 6px) !important;
}

/*
 * In Firefox evitiamo che il blend mode dell'immagine
 * coinvolga accidentalmente gli effetti.
 */
.lt-lemon-scene > .lt-lemon-overlay,
.lt-lemon-scene > .lt-lemon-overlay * {
    mix-blend-mode: normal;
}

/* Solo gli aloni che ne beneficiano usano screen localmente */
.lt-lemon-scene .lt-lemon-aura,
.lt-lemon-scene .lt-impact-glow,
.lt-lemon-scene .lt-liquid-shimmer {
    mix-blend-mode: screen;
}

@media (prefers-reduced-motion: reduce) {
    .lt-lemon-scene > .lt-lemon-overlay {
        display: none !important;
    }
}




/* =========================================================
   LT LEMON SCENE — ROW STACKING FIX
   La row che contiene la scena deve restare nello stacking
   context di base; altrimenti in Firefox può coprire il bordo
   inferiore dell'header sticky.
   ========================================================= */

.et_pb_row:has(.lt-lemon-scene) {
    z-index: 0 !important;
}
