.hero-three { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; opacity: .2; }
.hero__media .hero__parallax { z-index: 1; }
.hero__vignette,.hero__overlay--cinematic,.hero__grain { z-index: 2; }
.hero .hero__inner { z-index: 4; }
.hero__h1-line .split-char { display: inline-block; will-change: transform, opacity; }
.hero__h1-line--cinema .hero__cinema { display: inline-block; will-change: transform, opacity, letter-spacing; }
.cursor-premium { position: fixed; left: 0; top: 0; width: 44px; height: 44px; margin: -22px 0 0 -22px; pointer-events: none; z-index: 10001; opacity: 0; transition: opacity .35s ease; }
.cursor-premium.is-on { opacity: 1; }
.cursor-premium__ring { display: block; width: 100%; height: 100%; border-radius: 50%; border: 1px solid rgba(201,162,39,.32); box-shadow: 0 0 20px rgba(201,162,39,.06); }
.cursor-premium__dot { position: absolute; left: 50%; top: 50%; width: 3px; height: 3px; margin: -1.5px 0 0 -1.5px; border-radius: 50%; background: rgba(255,255,255,.45); }
[data-magnetic] { will-change: transform; transform-style: preserve-3d; }
.btn--cinematic { position: relative; overflow: hidden; }
.btn--cinematic::after { content: ""; position: absolute; inset: -40%; background: linear-gradient(105deg, transparent 35%, rgba(255,255,255,.07) 50%, transparent 65%); transform: translateX(-120%) skewX(-10deg); pointer-events: none; }
.btn--cinematic.is-shimmer::after { animation: ydShimmer 2.4s ease-in-out infinite; }
@keyframes ydShimmer { 0% { transform: translateX(-120%) skewX(-10deg); } 100% { transform: translateX(220%) skewX(-10deg); } }
html.yd-premium .reveal { transition: none; }
.hero__overlay--cinematic.hero__overlay--breathe { animation: ydOverlayBreathe 16s ease-in-out infinite alternate; }
@keyframes ydOverlayBreathe { 0% { filter: brightness(1); } 100% { filter: brightness(1.04); } }
@media (prefers-reduced-motion: reduce) { .hero-three,.cursor-premium { display: none !important; } html.yd-premium .reveal { opacity: 1 !important; transform: none !important; } }
