/* Nova Screen : dalle OLED, verre sombre, lumière de signal. */
.cinema-home{background:#02070c;color:#e9ffff}
.cinema-home .app-nav{background:linear-gradient(#02070c,rgba(2,7,12,.88));backdrop-filter:blur(18px)}
.cinema-home .app-nav .ghost{background:#0c1921;border-color:#233a45;color:#dbf7f7;font-weight:500}
.cinema-home .app-nav .ghost:hover{background:#183039;border-color:#468b94}
#homeView{padding:16px 3.5vw 34px;background:radial-gradient(ellipse at 50% 95%,#093339 0,transparent 55%),#02070c}
#homeView .welcome-frame{isolation:isolate;background:radial-gradient(ellipse at 50% 55%,#0b2630 0,#041016 48%,#010609 100%);border-radius:26px;border:1px solid #28434d;box-shadow:0 0 0 5px #071117,0 0 0 6px #30404b,0 30px 100px #000,0 0 65px #12d3d310,inset 0 0 100px #000b;padding:40px;overflow:hidden}
#homeView .welcome-frame::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:6;box-shadow:inset 0 1px 0 #a4e3e650,inset 0 -2px 0 #010304,inset 1px 0 0 #8baab11a}
#homeView .welcome-frame::after{content:"";position:absolute;inset:14px;border-radius:15px;pointer-events:none;border:1px solid #6bcacb0a;z-index:6}
#homeView .welcome-copy{position:relative;z-index:5;gap:clamp(30px,5vh,56px);animation:displayContentIn 1.4s cubic-bezier(.16,1,.3,1) both}
#homeView .welcome-copy h1{width:min(790px,77%);margin:0;line-height:1}
#homeView .welcome-logo{max-height:39dvh;filter:brightness(1.95) saturate(.85) drop-shadow(0 0 25px #00c8ef42);animation:logoRadiance 7s ease-in-out infinite;will-change:filter}
#homeView .welcome-cta{position:relative;overflow:hidden;width:min(690px,94%);min-height:92px;border-radius:18px;padding:26px 40px;font-size:clamp(23px,2.7vw,36px);font-weight:750;letter-spacing:-.035em;background:linear-gradient(125deg,#98fff0,#57dedb 50%,#36b9d3);color:#04212b;border:1px solid #c5fff59c;box-shadow:0 0 0 6px #42d6d608,0 12px 45px #16bec72e,inset 0 1px 0 #fff9;transition:transform .3s,box-shadow .3s}
#homeView .welcome-cta::before{content:"";position:absolute;inset:-100% auto -100% -60%;width:30%;background:linear-gradient(90deg,transparent,#fff6,transparent);transform:rotate(24deg);animation:buttonGlint 7s ease-in-out infinite;pointer-events:none}
#homeView .welcome-cta:hover{transform:translateY(-4px);box-shadow:0 0 0 8px #42d6d60c,0 15px 65px #16bec750,inset 0 1px 0 #fff}
#homeView .welcome-cta:focus-visible{outline:3px solid white;outline-offset:8px}
#homeView .welcome-cta span{font-size:1.2em;transition:transform .3s}#homeView .welcome-cta:hover span{transform:translate(4px,-4px)}
#homeView .welcome-grid{opacity:.055;background-size:52px 52px;mask-image:radial-gradient(ellipse at center,#000,transparent 75%);transform:none}
#homeView .welcome-scan{height:13%;background:linear-gradient(transparent,#3aedec08,#3aedec13,transparent);border-bottom:1px solid #72ffff26;animation:screenSweep 10s linear infinite;z-index:4}
#homeView .screen-aura{background:#15bac8;inset:auto 15% 2%;height:20%;opacity:.15;filter:blur(90px)}
.display-orbit{position:absolute;pointer-events:none;z-index:1;border-radius:50%;filter:blur(34px);opacity:.7;will-change:transform;mix-blend-mode:screen}
.orbit-a{width:85%;height:50%;left:-42%;top:5%;background:radial-gradient(ellipse,transparent 40%,#20daca24 48%,#008eaf65 51%,transparent 59%);transform:rotate(-35deg);animation:orbitFloatA 17s ease-in-out infinite alternate}
.orbit-b{width:95%;height:70%;right:-48%;bottom:-20%;background:radial-gradient(ellipse,transparent 42%,#129fbc42 50%,#433afb38 53%,transparent 61%);transform:rotate(-40deg);animation:orbitFloatB 21s ease-in-out infinite alternate}
.display-pixels{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#0003 3px 4px);opacity:.22;pointer-events:none;z-index:3}
.display-reflection{position:absolute;width:70%;height:180%;left:-45%;top:-70%;background:linear-gradient(90deg,transparent,#b5f8ff09,transparent);transform:rotate(35deg);pointer-events:none;z-index:4;animation:glassFloat 16s ease-in-out infinite alternate}
.display-boot{position:absolute;z-index:7;top:50%;left:10%;width:80%;height:2px;background:#affff2;box-shadow:0 0 28px #30e4e4,0 0 90px #30e4e4;pointer-events:none;animation:displayBoot 1.2s ease-out both}
.display-led{position:absolute;bottom:12px;left:calc(50% - 3px);width:6px;height:3px;border-radius:5px;background:#7affdc;box-shadow:0 0 12px #5bffcf;z-index:8}
@keyframes displayBoot{0%{opacity:0;transform:scaleX(.02)}25%{opacity:.9;transform:scaleX(.65)}55%{opacity:.55;transform:scaleX(1)}100%{opacity:0;transform:scaleX(1)}}
@keyframes displayContentIn{0%{opacity:.1;transform:scale(.98);filter:blur(8px)}100%{opacity:1;transform:scale(1);filter:blur(0)}}
@keyframes logoRadiance{0%,100%{filter:brightness(1.85) saturate(.85) drop-shadow(0 0 24px #00c8ef35)}50%{filter:brightness(2.1) saturate(.85) drop-shadow(0 0 36px #00c8ef60)}}
@keyframes buttonGlint{0%,65%{left:-60%}90%,100%{left:145%}}
@keyframes orbitFloatA{to{transform:translate(16%,18%) rotate(-15deg) scale(1.15)}}
@keyframes orbitFloatB{to{transform:translate(-10%,-14%) rotate(-65deg)}}
@keyframes glassFloat{to{transform:translateX(70%) rotate(35deg)}}
@media(max-width:760px){#homeView{padding:12px 16px 26px}#homeView .welcome-frame{padding:28px 18px;border-radius:23px}#homeView .welcome-copy{gap:40px}#homeView .welcome-copy h1{width:100%}#homeView .welcome-logo{max-height:34dvh}#homeView .welcome-cta{width:100%;min-height:84px;padding:23px 16px;font-size:clamp(20px,5.6vw,28px);gap:12px}.display-orbit{filter:blur(20px)}.orbit-a{width:145%;left:-85%;height:70%}.orbit-b{width:170%;right:-105%;height:90%}}
@media(max-height:560px){#homeView{padding:8px 22px 20px}#homeView .welcome-frame{padding:20px}#homeView .welcome-copy{gap:18px}#homeView .welcome-copy h1{width:min(450px,65%)}#homeView .welcome-logo{max-height:29dvh}#homeView .welcome-cta{min-height:56px;padding:13px 24px;font-size:21px;width:min(530px,95%)}}
@media(prefers-reduced-motion:reduce){#homeView *,#homeView *::before{animation:none!important;transition:none!important}.display-boot{display:none}#homeView .welcome-copy{opacity:1;transform:none;filter:none}.display-orbit{will-change:auto}#homeView .welcome-logo{will-change:auto}}

/* v18 — verre perle, rétroéclairage turquoise partagé par toutes les étapes. */
body,body.cinema-home{background:#e2edee;color:#12333e}
body::before{display:block;content:"";position:fixed;inset:-15%;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 15% 30%,#49cfc336,transparent 45%),radial-gradient(ellipse at 85% 65%,#8fbbe83b,transparent 48%);animation:ambientPanel 18s ease-in-out infinite alternate}
body::after{display:block;content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.27;background-image:linear-gradient(#4b9a9a19 1px,transparent 1px),linear-gradient(90deg,#4b9a9a19 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(transparent,#000,transparent)}
.app-shell{z-index:1}
.app-nav,.cinema-home .app-nav{background:#e2edeecc;backdrop-filter:blur(18px)}
.cinema-home .app-nav .ghost{background:#f4f9f9;border-color:#bbd5d8;color:#183e49}
.cinema-home .app-nav .ghost:hover{background:#d4efed;border-color:#309ea4}
#homeView{background:transparent}
#homeView .welcome-frame{background:radial-gradient(ellipse at 50% 35%,#f2f7f6 0,#dbe9ea 55%,#b7d3d8 100%);border:2px solid #39bdbd;box-shadow:0 0 0 4px #d0e2e3,0 0 0 6px #79aeb5,0 20px 60px #28667529,inset 0 0 60px #9ac9cc33}
#homeView .welcome-frame::after{inset:10px;border:2px solid #43c6c5;box-shadow:0 0 16px #1cbfba55,inset 0 0 12px #25bcb833}
#homeView .welcome-logo{animation:none;filter:drop-shadow(0 8px 22px #248d9e20)}
#homeView .welcome-scan{border-bottom:2px solid #24b9bd99;background:linear-gradient(transparent,#35c5be15,#35c5be30);box-shadow:0 5px 20px #35bfc32b}
#homeView .welcome-cta{background:linear-gradient(120deg,#087f98,#099eaa);color:#fff;border-color:#4ac7c8;box-shadow:0 12px 35px #147e9638,inset 0 1px 0 #ffffff55}
#homeView .welcome-cta:focus-visible{outline-color:#087f98}
.display-orbit{mix-blend-mode:multiply;opacity:.42}.display-pixels{opacity:.07}.display-led{background:#089d9f}
.booking-app{position:relative;isolation:isolate}
.booking-app::before{content:"";position:absolute;left:0;right:0;top:0;height:22%;z-index:-1;pointer-events:none;background:linear-gradient(transparent,#55c9c018);border-bottom:1px solid #38aba83d;animation:bookingScan 16s linear infinite}
.flow-top{border-bottom-color:#aacdce}.flow-bottom{background:#e2edeeeF;border-top-color:#adcfd0;backdrop-filter:blur(16px)}
.day-booking,.checkout-pane .summary,.campaign-item{background:#f4f8f8;border-color:#c4dcde}
.price-breakdown p{display:flex;gap:20px;justify-content:space-between;align-items:baseline}.price-breakdown p b{white-space:nowrap}
@keyframes ambientPanel{to{transform:translate(5%,4%) scale(1.08)}}
@keyframes bookingScan{from{transform:translateY(-120%)}to{transform:translateY(520%)}}
@media(prefers-reduced-motion:reduce){body::before,.booking-app::before{animation:none}.booking-app::before{display:none}}
