/* Cinematic scroll hero */
.luma-cinema{
  --luma-glow:#ff496f;
  --luma-glow-soft:rgba(255,73,111,.3);
  position:relative;
  min-height:700vh;
  background:#09070d;
  color:#f7f3ff;
  overflow:clip;
}
.luma-cinema__sticky{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--luma-glow),transparent 82%),transparent 34%),linear-gradient(145deg,#140b19 0%,#070609 55%,#110711 100%)}
.luma-cinema__mesh{position:absolute;z-index:-4;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(circle at center,#000 0,transparent 75%);transform:perspective(800px) rotateX(64deg) scale(1.7) translateY(28%);transform-origin:center bottom;opacity:.45}
.luma-cinema__noise{position:absolute;inset:-50%;z-index:-2;opacity:.07;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");animation:lumeraNoise .36s steps(2) infinite}
.luma-cinema__halo{position:absolute;left:50%;top:50%;width:min(82vw,940px);aspect-ratio:1;transform:translate(-50%,-50%) scale(var(--luma-halo-scale,.72));border-radius:50%;background:radial-gradient(circle,var(--luma-glow-soft) 0%,color-mix(in srgb,var(--luma-glow),transparent 84%) 35%,transparent 68%);filter:blur(28px);opacity:var(--luma-halo-opacity,.56);transition:background .45s ease}
.luma-cinema__halo:before,.luma-cinema__halo:after{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--luma-glow),transparent 56%);border-radius:50%;inset:9%;box-shadow:0 0 52px color-mix(in srgb,var(--luma-glow),transparent 64%)}
.luma-cinema__halo:after{inset:25%;opacity:.5}
.luma-cinema__beam{position:absolute;z-index:-1;left:50%;top:48%;width:24vw;height:130vh;transform:translate(-50%,-50%) rotate(var(--luma-beam-rotate,-10deg));background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--luma-glow),transparent 83%),transparent);filter:blur(24px);opacity:.55}
.luma-cinema__top{position:absolute;z-index:15;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:clamp(21px,3vw,42px) clamp(20px,4.5vw,72px);font-size:10px;letter-spacing:.25em;text-transform:uppercase}
.luma-cinema__brand{font-weight:830;letter-spacing:.34em}.luma-cinema__note{color:rgba(247,243,255,.52)}
.luma-cinema__rail{position:absolute;z-index:14;right:clamp(18px,3vw,48px);top:50%;transform:translateY(-50%);height:210px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.2em;color:rgba(255,255,255,.46)}
.luma-cinema__rail i{position:relative;display:block;width:1px;height:160px;background:rgba(255,255,255,.13);overflow:hidden}.luma-cinema__rail b{position:absolute;left:0;bottom:0;width:100%;height:var(--luma-progress-height,0%);background:var(--luma-glow);box-shadow:0 0 12px var(--luma-glow);transition:background .4s ease}
.luma-cinema__headline{position:absolute;z-index:2;top:49%;left:50%;width:min(95vw,1580px);transform:translate(-50%,-50%) scale(var(--luma-headline-scale,1));text-align:center;opacity:var(--luma-headline-opacity,1);pointer-events:none}
.luma-cinema__eyebrow{margin:0 0 19px;font-size:clamp(10px,.9vw,14px);letter-spacing:.34em;text-transform:uppercase;color:rgba(247,243,255,.68)}
.luma-cinema__title{margin:0;font-size:clamp(76px,13vw,210px);line-height:.74;letter-spacing:-.082em;text-transform:uppercase;font-weight:620}.luma-cinema__title span{display:block}
.luma-cinema__subline{max-width:45ch;margin:28px auto 0;color:rgba(255,255,255,.58);font-size:clamp(13px,1.1vw,18px);line-height:1.55}
.luma-cinema__product{position:absolute;z-index:6;left:50%;top:50%;width:min(55vw,610px);height:min(77svh,760px);transform:translate(-50%,-50%) translateY(var(--luma-product-y,4vh)) rotateY(var(--luma-product-ry,-12deg)) rotateX(var(--luma-product-rx,5deg)) scale(var(--luma-product-scale,.38));opacity:var(--luma-product-opacity,0);transform-style:preserve-3d;will-change:transform,opacity;transition:filter .45s ease}
.luma-cinema__product .luma-mask-art{height:100%;width:100%}
.luma-cinema__mode-word{position:absolute;z-index:1;left:50%;top:52%;transform:translate(-50%,-50%) scale(var(--luma-mode-word-scale,.8));font-size:clamp(130px,27vw,430px);font-weight:700;letter-spacing:-.09em;line-height:.7;color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--luma-glow),transparent 58%);opacity:var(--luma-mode-word-opacity,0);filter:blur(var(--luma-mode-word-blur,9px));pointer-events:none;transition:color .4s ease}
.luma-cinema__story{position:absolute;z-index:10;top:51%;width:min(35vw,445px);opacity:0;transform:translateY(34px);transition:opacity .46s ease,transform .46s ease;pointer-events:none}
.luma-cinema__story.is-active{opacity:1;transform:translateY(0)}
.luma-cinema__story--left{left:clamp(22px,5vw,84px)}.luma-cinema__story--right{right:clamp(22px,5vw,84px);text-align:right}
.luma-cinema__story span{display:block;margin-bottom:14px;color:var(--luma-glow);font-size:10px;font-weight:800;letter-spacing:.29em;text-transform:uppercase;transition:color .45s ease}
.luma-cinema__story h3{margin:0 0 16px;font-size:clamp(38px,4.8vw,78px);line-height:.9;letter-spacing:-.058em;font-weight:570}
.luma-cinema__story p{max-width:36ch;margin:0;font-size:clamp(14px,1.1vw,18px);line-height:1.58;color:rgba(247,243,255,.65)}.luma-cinema__story--right p{margin-left:auto}
.luma-cinema__palette{position:absolute;z-index:14;left:50%;bottom:clamp(26px,4.5vh,58px);transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(12,9,16,.52);backdrop-filter:blur(18px);opacity:var(--luma-palette-opacity,0)}
.luma-cinema__palette i{display:block;width:9px;aspect-ratio:1;border-radius:50%;background:var(--dot);box-shadow:0 0 9px var(--dot);opacity:.28;transform:scale(.78);transition:.3s}.luma-cinema__palette i.is-active{opacity:1;transform:scale(1.4);box-shadow:0 0 20px var(--dot)}
.luma-cinema__phase{min-width:84px;margin-left:7px;color:rgba(255,255,255,.61);font-size:8px;letter-spacing:.22em;text-transform:uppercase}
.luma-cinema__scroll{position:absolute;z-index:13;left:clamp(20px,4.5vw,72px);bottom:clamp(26px,4.5vh,56px);display:flex;align-items:center;gap:13px;color:rgba(255,255,255,.54);font-size:8px;letter-spacing:.24em;text-transform:uppercase;opacity:var(--luma-scroll-opacity,1)}
.luma-cinema__scroll i{width:46px;height:1px;background:rgba(255,255,255,.2);overflow:hidden}.luma-cinema__scroll i:after{content:"";display:block;width:50%;height:100%;background:#fff;animation:lumeraScroll 1.8s ease-in-out infinite}
.luma-cinema__cta{position:absolute;z-index:15;left:50%;top:50%;width:min(850px,90vw);transform:translate(-50%,-42%) scale(.96);display:flex;flex-direction:column;align-items:center;text-align:center;opacity:0;pointer-events:none;transition:.48s}
.luma-cinema[data-finale="true"] .luma-cinema__cta{opacity:1;transform:translate(-50%,-50%) scale(1);pointer-events:auto}
.luma-cinema[data-finale="true"] .luma-cinema__product{opacity:.13!important;filter:blur(8px)}
.luma-cinema__cta p{margin:0 0 17px;color:var(--luma-glow);font-size:10px;font-weight:800;letter-spacing:.25em;text-transform:uppercase}
.luma-cinema__cta h2{margin:0;font-size:clamp(58px,9vw,145px);line-height:.8;letter-spacing:-.075em;font-weight:590}
.luma-cinema__cta-actions{display:flex;justify-content:center;gap:13px;flex-wrap:wrap;margin-top:30px}

/* Moving product-highlights band */
.lumera-marquee{overflow:hidden;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);background:#0b080e;color:#f8f4fb}
.lumera-marquee__track{display:flex;align-items:center;width:max-content;gap:28px;padding:23px 0;animation:lumeraMarquee 24s linear infinite}
.lumera-marquee__track span{font-size:clamp(18px,2vw,30px);font-weight:560;letter-spacing:-.02em;white-space:nowrap}.lumera-marquee__track i{display:block;width:10px;aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,#ff496f,#527cff,#4ed5ad);box-shadow:0 0 18px #b266ff}

