.elementor-1017 .elementor-element.elementor-element-599cd1c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.9;--margin-top:-115px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:120px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-1017 .elementor-element.elementor-element-599cd1c:not(.elementor-motion-effects-element-type-background), .elementor-1017 .elementor-element.elementor-element-599cd1c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://sushiacademy.it/wp-content/uploads/2025/10/ChatGPT-Image-28-ott-2025-16_25_30.png");background-position:top center;background-repeat:no-repeat;background-size:57% auto;}.elementor-1017 .elementor-element.elementor-element-599cd1c::before, .elementor-1017 .elementor-element.elementor-element-599cd1c > .elementor-background-video-container::before, .elementor-1017 .elementor-element.elementor-element-599cd1c > .e-con-inner > .elementor-background-video-container::before, .elementor-1017 .elementor-element.elementor-element-599cd1c > .elementor-background-slideshow::before, .elementor-1017 .elementor-element.elementor-element-599cd1c > .e-con-inner > .elementor-background-slideshow::before, .elementor-1017 .elementor-element.elementor-element-599cd1c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #00000066 0%, #000000 100%);}.elementor-1017 .elementor-element.elementor-element-599cd1c > .elementor-shape-bottom .elementor-shape-fill, .elementor-1017 .elementor-element.elementor-element-599cd1c > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#000000;}.elementor-1017 .elementor-element.elementor-element-599cd1c > .elementor-shape-bottom svg, .elementor-1017 .elementor-element.elementor-element-599cd1c > .e-con-inner > .elementor-shape-bottom svg{width:calc(165% + 1.3px);}.elementor-1017 .elementor-element.elementor-element-5cfe77f{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}@media(max-width:767px){.elementor-1017 .elementor-element.elementor-element-599cd1c:not(.elementor-motion-effects-element-type-background), .elementor-1017 .elementor-element.elementor-element-599cd1c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://sushiacademy.it/wp-content/uploads/2025/10/ChatGPT-Image-29-ott-2025-00_19_01.png");background-size:cover;}.elementor-1017 .elementor-element.elementor-element-599cd1c{--margin-top:-90px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-1017 .elementor-element.elementor-element-5cfe77f{--padding-top:5px;--padding-bottom:5px;--padding-left:5px;--padding-right:5px;}}/* Start custom CSS */:root {
  --presto-player-border-radius: 6px;
  --plyr-video-background: transparent;
}


.gradient-text {
  background: linear-gradient(90deg, #ffb637, #ffc95c, #ffdf95);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text; 
  color: transparent;
}

.gradient-serif {
  font-family: 'Instrument Serif', serif;
 background: linear-gradient(90deg, #FFFFFF, #EDEDED);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.gradient-serif2 {
  font-family: 'Instrument Serif', serif;
  background: linear-gradient(90deg, #F2F2F2, #9B9B9B);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.red-gradient-bg {
  background: linear-gradient(
    90deg,
    #b24140 0%,
    #d84c3f 30%,
    #e25745 65%,
    #ff6b4a 100%
  );
  transition: background 0.6s ease, transform 0.6s ease;
}


.arrow-updown {
    animation: arrow-move 1.2s ease-in-out infinite;
}

@keyframes arrow-move {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-6px);
    }

    100% {
        transform: translateY(0);
    }
}

/* Transizione morbida sui widget immagine */
#main-ig .elementor-widget-image {
  transition: transform .45s cubic-bezier(.22,.61,.36,1), 
              filter .45s cubic-bezier(.22,.61,.36,1);
  will-change: transform;
  backface-visibility: hidden;
}

/* Se Elementor applica trasformazioni via transform */
#main-ig:hover [data-id="654a8ad"],
#main-ig:hover [data-id="51dead0"] {
  transform: none !important; /* torna a rotazione/offset iniziali (0) */
}

/* Se Elementor le applica via custom properties (versioni recenti) */
#main-ig:hover [data-id="654a8ad"] {
  --e-transform-rotateZ: 0deg !important;
  --e-transform-translateX: 0px !important;
  --e-transform-translateY: 0px !important;
  --e-transform-scale: 1 !important;
}

#main-ig:hover [data-id="51dead0"] {
  --e-transform-rotateZ: 0deg !important;
  --e-transform-translateX: 0px !important; /* azzera l’offset X */
  --e-transform-translateY: 0px !important; /* azzera l’offset Y */
  --e-transform-scale: 1 !important;
}


.scroll-wrapper {
  position: relative;
  width: 100%;
  mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
  -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

.scroll-inner {
  display: flex;
  gap: 40px;
  animation: scroll-horizontal 60s linear infinite;
}

.scroll-wrapper.reverse .scroll-inner {
  animation: scroll-horizontal-reverse 60s linear infinite;
}

.scroll-item {
  flex: 0 0 auto;
  min-width: 300px;
  transition: transform 0.3s ease;
}

.scroll-item:hover {
  transform: scale(1.05);
}

@keyframes scroll-horizontal {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

@keyframes scroll-horizontal-reverse {
  from {
    transform: translateX(-50%);
  }
  to {
    transform: translateX(0);
  }
}

/* Molleggio ultra-smooth con cubic-bezier */
.float-smooth {
  --amp: 16px;          /* ampiezza del molleggio */
  --dur: 4.8s;          /* durata dell'oscillazione */
  animation: floatY var(--dur) cubic-bezier(.445,.05,.55,.95) infinite alternate;
  will-change: transform;
  transform: translateZ(0); /* micro-ottimizzazione GPU */
}

@keyframes floatY {
  from { transform: translateY(0); }
  to   { transform: translateY(calc(var(--amp) * -1)); }
}

/* Variante con leggerissimo tilt per naturalezza */
.float-smooth.tilt {
  animation: 
    floatY var(--dur) cubic-bezier(.445,.05,.55,.95) infinite alternate,
    tilt   calc(var(--dur) * 2) cubic-bezier(.445,.05,.55,.95) infinite alternate;
}

@keyframes tilt {
  from { rotate: 0.25deg; }
  to   { rotate: -0.25deg; }
}

/* Accessibilità: disattiva animazioni se richiesto dall’utente */
@media (prefers-reduced-motion: reduce) {
  .float-smooth { animation: none; }
}

/* Utilità */
.is-hidden{ display:none !important; }

/* Tipografia minima */
.step-title{ margin:0 0 .25rem; font-size:1.5rem; line-height:1.2; }
.step-sub{ margin:0 0 .75rem; opacity:.9; }

/* Contenitore countdown */
.countdown{
  display:flex; gap:14px; align-items:stretch; justify-content:flex-start;
}

/* Box minuti/secondi — look come screenshot */
.cd-item{
  background:#2a0f0f;           /* marrone scuro */
  border:2px dashed #d04b4b;    /* bordo rosso tratteggiato */
  border-radius:10px;
  padding:10px 14px;
  min-width:92px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
}

/* Cifre grandi, bianche */
.cd-digits{
  display:block;
  font-size:2.2rem;
  font-weight:600;
  color:#fff;
  line-height:1;
  letter-spacing:1px;
}

/* Etichetta piccola, bianca tenue */
.cd-label{
  display:block;
  margin-top:4px;
  font-size:.9rem;
  color:rgba(255,255,255,.85);
  text-transform:lowercase;
}

/* Responsive piccolo */
@media (max-width:480px){
  .cd-digits{ font-size:1.9rem; }
  .cd-item{ min-width:84px; padding:8px 12px; }
}

.is-hidden { display: none !important; }/* End custom CSS */