.cinematic-hero,.cinematic-hero-scene{position:absolute;inset:0;overflow:hidden}
.cinematic-hero{isolation:isolate;background:#102131;z-index:3}
/* Blend the photograph gently into the surrounding white layout. */
.cinematic-hero:after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(to bottom,rgba(255,255,255,1.00000) 0.000px,rgba(255,255,255,0.99991) 2.333px,rgba(255,255,255,0.99932) 4.667px,rgba(255,255,255,0.99778) 7.000px,rgba(255,255,255,0.99491) 9.333px,rgba(255,255,255,0.99039) 11.667px,rgba(255,255,255,0.98395) 14.000px,rgba(255,255,255,0.97537) 16.333px,rgba(255,255,255,0.96451) 18.667px,rgba(255,255,255,0.95123) 21.000px,rgba(255,255,255,0.93548) 23.333px,rgba(255,255,255,0.91723) 25.667px,rgba(255,255,255,0.89648) 28.000px,rgba(255,255,255,0.87330) 30.333px,rgba(255,255,255,0.84777) 32.667px,rgba(255,255,255,0.81999) 35.000px,rgba(255,255,255,0.79012) 37.333px,rgba(255,255,255,0.75833) 39.667px,rgba(255,255,255,0.72479) 42.000px,rgba(255,255,255,0.68973) 44.333px,rgba(255,255,255,0.65338) 46.667px,rgba(255,255,255,0.61597) 49.000px,rgba(255,255,255,0.57776) 51.333px,rgba(255,255,255,0.53902) 53.667px,rgba(255,255,255,0.50000) 56.000px,rgba(255,255,255,0.46098) 58.333px,rgba(255,255,255,0.42224) 60.667px,rgba(255,255,255,0.38403) 63.000px,rgba(255,255,255,0.34662) 65.333px,rgba(255,255,255,0.31027) 67.667px,rgba(255,255,255,0.27521) 70.000px,rgba(255,255,255,0.24167) 72.333px,rgba(255,255,255,0.20988) 74.667px,rgba(255,255,255,0.18001) 77.000px,rgba(255,255,255,0.15223) 79.333px,rgba(255,255,255,0.12670) 81.667px,rgba(255,255,255,0.10352) 84.000px,rgba(255,255,255,0.08277) 86.333px,rgba(255,255,255,0.06452) 88.667px,rgba(255,255,255,0.04877) 91.000px,rgba(255,255,255,0.03549) 93.333px,rgba(255,255,255,0.02463) 95.667px,rgba(255,255,255,0.01605) 98.000px,rgba(255,255,255,0.00961) 100.333px,rgba(255,255,255,0.00509) 102.667px,rgba(255,255,255,0.00222) 105.000px,rgba(255,255,255,0.00068) 107.333px,rgba(255,255,255,0.00009) 109.667px,rgba(255,255,255,0.00000) 112.000px),linear-gradient(to top,#fff 0,rgba(255,255,255,.94) 9px,rgba(255,255,255,.72) 23px,rgba(255,255,255,.38) 43px,rgba(255,255,255,.12) 67px,rgba(255,255,255,0) 96px)}
.cinematic-hero-frame{position:absolute;inset:0;display:block;opacity:0;transition:opacity var(--hero-fade,2500ms) ease}
.cinematic-hero-frame.is-visible{opacity:1}
.cinematic-hero-frame{isolation:isolate}
.cinematic-hero-frame:before{content:'';position:absolute;inset:-28px;z-index:-1;background-image:linear-gradient(#10213138,#10213160),var(--hero-backdrop);background-size:cover;background-position:center;filter:blur(20px);pointer-events:none}
.cinematic-hero-frame img{position:relative;display:block;width:100%;max-width:100%;height:100%;margin:0 auto;object-fit:cover;object-position:center;mask-image:none}
.hero-fog,.hero-stars,.hero-birds,.hero-meteor{position:absolute;pointer-events:none;z-index:2;display:none}
.hero-birds i{position:absolute;width:9px;height:3px;border-top:1px solid #263440;border-radius:50%;transform:rotate(12deg)}
.hero-birds i:after{content:'';position:absolute;left:7px;top:-1px;width:9px;height:3px;border-top:1px solid #263440;border-radius:50%;transform:rotate(-24deg)}
.hero-birds i:nth-child(2){left:23px;top:9px;scale:.7}.hero-birds i:nth-child(3){left:42px;top:2px;scale:.6}
.has-meteors[data-mode=night] .hero-meteor.is-falling{display:block;top:10%;width:85px;height:1px;background:linear-gradient(90deg,transparent,#ffffffb0);animation:hero-meteor 1.2s ease-out both}
.hero-preview{position:absolute;right:16px;top:16px;z-index:5;display:flex;gap:8px;flex-wrap:wrap;padding:8px;background:#101923d9;color:white;border-radius:5px;font:12px sans-serif}
.hero-preview select,.hero-preview button{font:inherit;padding:5px;border:1px solid #bba16a;border-radius:3px;background:#152433;color:white}
.is-paused *{animation-play-state:paused!important}.is-paused .hero-meteor{display:none!important}
@keyframes hero-twinkle{0%,33%{opacity:.35}51%{opacity:.85}78%{opacity:.5}100%{opacity:.9}}
@keyframes hero-flight{0%,15%{transform:translateX(0);opacity:0}17%{opacity:.65}40%{opacity:.65}43%,100%{transform:translateX(115vw) translateY(-30px);opacity:0}}
@media(prefers-reduced-motion:reduce){.cinematic-hero.is-running .cinematic-hero-scene{animation:none;transform:none}.cinematic-hero-frame{transition:none}.cinematic-hero-scene>div{display:none!important}}
/* Height follows the original slider breakpoints in page.home.css. */
.cinematic-hero-scene,.cinematic-hero.is-running .cinematic-hero-scene{transform:none;animation:none}
.has-cinematic-hero .home-news-bar{z-index:40;bottom:56px}
.hero-fog{mix-blend-mode:screen}
.has-fog[data-mode=morning] .hero-fog,.has-fog[data-mode=night] .hero-fog,.has-fog[data-mode=evening] .hero-fog{display:block;inset:49% -18% -12%;background:radial-gradient(ellipse at 20% 66%,#dbe5e35c,transparent 48%),radial-gradient(ellipse at 72% 74%,#e3e9eb70,transparent 47%);filter:blur(12px);animation:hero-mist 23s ease-in-out infinite alternate}
.has-stars[data-mode=night] .hero-stars{display:block;inset:0 0 64%;background:none;animation:none}
.hero-stars i{position:absolute;width:2px;height:2px;border-radius:50%;background:#eef4ff;box-shadow:0 0 3px #d7e8ff80;animation:hero-twinkle var(--twinkle) ease-in-out infinite alternate}
.has-birds[data-mode=day] .hero-birds,.has-birds[data-mode=morning] .hero-birds{display:block;top:18%;left:-8%;animation:hero-flight 72s linear infinite;animation-delay:-7s}
.hero-birds i{animation:hero-wing .8s ease-in-out infinite alternate}
.hero-birds i:nth-child(2){animation-delay:-.3s}.hero-birds i:nth-child(3){animation-delay:-.6s}
.cinematic-hero-scene:after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse at 85% 20%,#ffe4a024,transparent 62%);opacity:.25;animation:hero-atmosphere 14s ease-in-out infinite alternate;display:none}
.has-fog[data-mode=morning].is-running .cinematic-hero-scene:after,.has-fog[data-mode=evening].is-running .cinematic-hero-scene:after,.has-birds[data-mode=day].is-running .cinematic-hero-scene:after{display:block}
@keyframes hero-mist{from{transform:translateX(-4%);opacity:.55}to{transform:translateX(8%);opacity:.95}}
@keyframes hero-wing{to{transform:scaleY(.45) rotate(-5deg)}}
@keyframes hero-atmosphere{to{opacity:.7;transform:translateX(-2%)}}
@keyframes hero-meteor{0%{transform:translate(0,0) rotate(-35deg);opacity:0}12%{opacity:.85}100%{transform:translate(-240px,168px) rotate(-35deg);opacity:0}}
.has-meteors[data-mode=night] .hero-meteor.is-falling{width:65px;background:linear-gradient(90deg,#fff,transparent);animation-duration:1.1s}
@media(max-width:991px){.has-cinematic-hero .home-news-bar{bottom:0}}
@media(max-width:767px){.cinematic-hero-frame img{width:100%;object-fit:cover;object-position:var(--hero-mobile-position,43% center);mask-image:none}.cinematic-hero-frame:before{display:none}.hero-stars i:nth-child(n+4){display:none}.hero-birds i:nth-child(n+2){display:none}.cinematic-hero:not([data-mode=night]) .hero-stars,.cinematic-hero:not([data-mode=night]) .hero-meteor,.cinematic-hero[data-mode=night] .hero-birds,.cinematic-hero[data-mode=evening] .hero-birds{display:none!important}.hero-fog{opacity:.55;filter:none;animation-duration:32s!important}}
@media(prefers-reduced-motion:reduce){.cinematic-hero-scene:after,.cinematic-hero .hero-stars,.cinematic-hero .hero-birds,.cinematic-hero .hero-meteor{display:none!important}}
.cinematic-hero.is-paused .cinematic-hero-scene:after{animation-play-state:paused}
.cinematic-hero.is-paused .hero-meteor{display:none!important}

@media(max-width:767px){.cinematic-hero:after{background-size:100% 72%;background-position:top,bottom;background-repeat:no-repeat}}

/* Static dithering softens color banding over dark skies; no animated filter. */
.cinematic-hero:before{content:"";position:absolute;top:0;left:0;right:0;height:112px;z-index:4;pointer-events:none;opacity:.035;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22128%22%20height%3D%22128%22%3E%3Cfilter%20id%3D%22n%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%22.85%22%20numOctaves%3D%221%22%20stitchTiles%3D%22stitch%22%2F%3E%3C%2Ffilter%3E%3Cpath%20fill%3D%22white%22%20filter%3D%22url%28%23n%29%22%20d%3D%22M0%200h128v128H0z%22%2F%3E%3C%2Fsvg%3E");mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent)}
