/* Entrate leggere attivate da IntersectionObserver. */
html.motion-ready .reveal{opacity:0;transform:translateY(26px);transition:opacity .55s ease,transform .55s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}
html.motion-ready .reveal.is-visible{opacity:1;transform:none}
html.motion-ready .reveal--stagger .service-card,html.motion-ready .reveal--stagger .steps>div,html.motion-ready .reveal--stagger .audience-card,html.motion-ready .reveal--stagger .faq details,html.motion-ready .reveal--stagger .benefits p{opacity:0;transform:translateY(16px);transition:opacity .4s ease,transform .4s cubic-bezier(.22,1,.36,1)}
html.motion-ready .reveal--stagger.is-visible .service-card,html.motion-ready .reveal--stagger.is-visible .steps>div,html.motion-ready .reveal--stagger.is-visible .audience-card,html.motion-ready .reveal--stagger.is-visible .faq details,html.motion-ready .reveal--stagger.is-visible .benefits p{opacity:1;transform:none}
html.motion-ready .reveal--stagger.is-visible :is(.service-card,.steps>div,.audience-card,.faq details,.benefits p):nth-child(2){transition-delay:.08s}
html.motion-ready .reveal--stagger.is-visible :is(.service-card,.steps>div,.audience-card,.faq details,.benefits p):nth-child(3){transition-delay:.16s}
html.motion-ready .reveal--stagger.is-visible :is(.service-card,.steps>div,.audience-card,.faq details,.benefits p):nth-child(4){transition-delay:.24s}
html.motion-ready .reveal--stagger.is-visible :is(.service-card,.steps>div,.audience-card,.faq details,.benefits p):nth-child(5){transition-delay:.32s}

@media(prefers-reduced-motion:reduce){
  html.motion-ready .reveal,html.motion-ready .reveal--stagger :is(.service-card,.steps>div,.audience-card,.faq details,.benefits p){opacity:1;transform:none;transition:none}
}
html.motion-ready .workflow.reveal--stagger .steps>div,html.motion-ready .workflow.reveal--stagger .steps>em{opacity:0;transform:translateY(20px) scale(.96);transition:opacity .38s ease,transform .38s cubic-bezier(.22,1,.36,1)}
html.motion-ready .workflow.reveal--stagger.is-visible .steps>div,html.motion-ready .workflow.reveal--stagger.is-visible .steps>em{opacity:1;transform:none}
html.motion-ready .workflow.reveal--stagger.is-visible .steps>div:nth-of-type(1){transition-delay:.08s}html.motion-ready .workflow.reveal--stagger.is-visible .steps>em:nth-of-type(1){transition-delay:.29s}html.motion-ready .workflow.reveal--stagger.is-visible .steps>div:nth-of-type(2){transition-delay:.48s}html.motion-ready .workflow.reveal--stagger.is-visible .steps>em:nth-of-type(2){transition-delay:.69s}html.motion-ready .workflow.reveal--stagger.is-visible .steps>div:nth-of-type(3){transition-delay:.88s}html.motion-ready .workflow.reveal--stagger.is-visible .steps>em:nth-of-type(3){transition-delay:1.09s}html.motion-ready .workflow.reveal--stagger.is-visible .steps>div:nth-of-type(4){transition-delay:1.28s}html.motion-ready .workflow.reveal--stagger.is-visible .steps>em:nth-of-type(4){transition-delay:1.49s}html.motion-ready .workflow.reveal--stagger.is-visible .steps>div:nth-of-type(5){transition-delay:1.68s}
@media(prefers-reduced-motion:reduce){html.motion-ready .workflow.reveal--stagger .steps>div,html.motion-ready .workflow.reveal--stagger .steps>em{opacity:1;transform:none;transition:none}}

/* Freccia per tornare rapidamente all'inizio della pagina. */
.back-to-top{position:fixed;z-index:80;right:22px;bottom:82px;display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:var(--orange);box-shadow:0 10px 22px rgba(234,84,31,.35);color:#fff;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease,background .2s ease}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.back-to-top:hover,.back-to-top:focus-visible{background:#c94216;transform:translateY(-2px)}
.back-to-top svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){.back-to-top{right:16px;bottom:80px;width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}.back-to-top:hover,.back-to-top:focus-visible{transform:none}}

