/* Editorial opening: one camera move, masked typography, quiet supporting UI. */
.tutto-home header .logo-animated,.tutto-home header nav>.group>a,.tutto-home .hero-heading,.tutto-home .hero-heading h1,.tutto-home .hero-heading p,.tutto-home .hero-actions>a,.tutto-home .hero-proof span,.tutto-home .hero-benefits,.tutto-home .pop-highlight::before{animation:none!important}
.tutto-home header nav>.group>a{display:inline-block}
.tutto-home .tutto-hero>.container{overflow:hidden;isolation:isolate}
.tutto-home .tutto-hero>.container>div{position:relative;z-index:1}
.tutto-home .hero-heading .cinema-line{display:block;overflow:hidden;padding:0 14px 14px;margin:0 -14px -14px}
.tutto-home .hero-heading .cinema-line-inner{display:block;transform-origin:left bottom}
.tutto-home .hero-heading .cinema-line-accent{padding-top:7px;margin-top:-7px}
.tutto-home .hero-heading .pop-highlight{margin-top:4px}
@media(prefers-reduced-motion:no-preference){
.tutto-home .tutto-hero>.container{background-image:none}
.tutto-home .tutto-hero>.container::before{content:'';position:absolute;inset:-1px;z-index:0;pointer-events:none;background:url('/assets/hero-genz.webp') center top/cover no-repeat;transform-origin:74% 48%}
.tutto-home .tutto-hero.cinema-playing>.container::before{animation:tutto-camera 3.8s cubic-bezier(.16,.65,.22,1) both}
@media(min-width:768px) and (max-width:1100px){.tutto-home .tutto-hero>.container::before{background-position:56% top}}
@media(max-width:767px){.tutto-home .tutto-hero>.container::before{background-size:auto 400px;background-position:right bottom;transform-origin:76% 85%}}
}
@keyframes tutto-camera{from{transform:scale(1.055);filter:brightness(.83) saturate(.9)}to{transform:scale(1);filter:brightness(1) saturate(1)}}
@media(prefers-reduced-motion:reduce){.tutto-home .tutto-hero>.container::before{animation:none!important}}
@media(prefers-reduced-motion:no-preference){html.cinema-pending .tutto-home header .logo-animated,html.cinema-pending .tutto-home header nav>.group>a,html.cinema-pending .tutto-home .hero-heading,html.cinema-pending .tutto-home .hero-actions,html.cinema-pending .tutto-home .hero-proof{opacity:0}}
/* A reduced-motion preference uses a visible opacity entrance, not an early return. */
html.cinema-pending .tutto-home header .logo-animated,html.cinema-pending .tutto-home header nav>.group>a,html.cinema-pending .tutto-home .hero-heading,html.cinema-pending .tutto-home .hero-actions,html.cinema-pending .tutto-home .hero-proof{opacity:0}
/* The image now has its own camera layer, driven by the same runtime as the text. */
.tutto-home .tutto-hero>.container{background-image:none!important;overflow:hidden;isolation:isolate}
.tutto-home .tutto-hero>.container::before{display:none!important;content:none!important}
.tutto-home .tutto-hero>.container>.cinema-scene{position:absolute;inset:-2px;z-index:0;pointer-events:none;width:auto;max-width:none;margin:0!important;background:url('/assets/hero-genz.webp') center top/cover no-repeat;transform-origin:74% 48%;transform:scale(1.05);transition:transform 900ms cubic-bezier(.2,.75,.2,1)!important}
.tutto-home .tutto-hero>.container>div:not(.cinema-scene){position:relative;z-index:1}
@media(min-width:768px) and (max-width:1100px){.tutto-home .tutto-hero>.container>.cinema-scene{background-position:56% top}}
@media(max-width:767px){.tutto-home .tutto-hero>.container>.cinema-scene{background-size:auto 400px;background-position:right bottom;transform-origin:76% 85%}}
