/* brilo sky-cycle v1: time-of-day tint and small effects over the KV photograph.
   Loaded only where sky-cycle.js is included. Remove the two tags to revert. */
.renewal-home .hero-image>.hero-sky{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.hero-sky__tint,.hero-sky__fx{position:absolute;inset:0;opacity:0;transition:opacity 4s ease}
.hero-sky__fx *{animation-play-state:paused!important}
.hero-sky__tint--morning{background:linear-gradient(165deg,#ffcf9f 0%,#ffdcc9 38%,#fff3e4 70%,#fff 100%);mix-blend-mode:multiply}
.hero-sky__tint--evening{background:linear-gradient(180deg,#8a6aa8 0%,#e8926a 42%,#ffb877 72%,#ffd7a3 100%);mix-blend-mode:multiply}
.hero-sky__tint--night{background:linear-gradient(180deg,#0a1235 0%,#17235a 60%,#2b3a78 100%);mix-blend-mode:multiply}
.hero-sky__tint--rain{background:linear-gradient(180deg,#7d8793,#a9b1ba);mix-blend-mode:multiply}
#visual[data-sky="morning"] .hero-sky__tint--morning,#visual[data-sky="evening"] .hero-sky__tint--evening{opacity:1}
#visual[data-sky="night"] .hero-sky__tint--night{opacity:.92}
#visual[data-rain] .hero-sky__tint--rain{opacity:.8}
#visual[data-sky="morning"]:not([data-rain]) .hero-sky__fx--morning,#visual[data-sky="evening"]:not([data-rain]) .hero-sky__fx--evening,#visual[data-sky="night"]:not([data-rain]) .hero-sky__fx--night,#visual[data-rain] .hero-sky__fx--rain{opacity:1}
#visual[data-sky="morning"]:not([data-rain]) .hero-sky__fx--morning *,#visual[data-sky="evening"]:not([data-rain]) .hero-sky__fx--evening *,#visual[data-sky="night"]:not([data-rain]) .hero-sky__fx--night *,#visual[data-rain] .hero-sky__fx--rain *{animation-play-state:running!important}
/* bubbles belong to fine daytime only */
.renewal-home #visual .hero-bubbles{transition:opacity 4s ease}
.renewal-home #visual[data-sky]:not([data-sky="day"]) .hero-bubbles,.renewal-home #visual[data-rain] .hero-bubbles{opacity:0}
/* night: copy turns light so it stays readable */
.renewal-home #visual .hero-copy :is(.hero-overline,h1,h1 span,.hero-lead,.hero-description),.renewal-home #visual .hero-message{transition:color 4s ease}
.renewal-home #visual[data-sky="night"] .hero-copy :is(.hero-overline,h1,h1 span,.hero-lead,.hero-description),.renewal-home #visual[data-sky="night"] .hero-message{color:#fff!important;text-shadow:0 1px 14px rgba(5,10,40,.65)}
/* morning */
.sky-rays{position:absolute;left:0;top:0;width:100%;height:150%;transform-origin:0 0;background:conic-gradient(from 95deg at 0 0,transparent 0deg,rgba(255,238,200,.38) 6deg,transparent 13deg,transparent 21deg,rgba(255,238,200,.26) 28deg,transparent 36deg,transparent 45deg,rgba(255,238,200,.32) 52deg,transparent 60deg,transparent 90deg);-webkit-mask-image:radial-gradient(circle at 0 0,#000 0,transparent 72%);mask-image:radial-gradient(circle at 0 0,#000 0,transparent 72%);animation:sky-rays 14s ease-in-out infinite alternate}
.sky-mist{position:absolute;left:-20%;right:-20%;bottom:6%;height:40%;background:radial-gradient(ellipse at 30% 60%,rgba(255,255,255,.55),transparent 60%),radial-gradient(ellipse at 75% 50%,rgba(255,255,255,.4),transparent 55%);filter:blur(6px);animation:sky-mist 26s ease-in-out infinite alternate}
.sky-glint{position:absolute;width:var(--s);height:var(--s);border-radius:50%;opacity:0;background:radial-gradient(circle,#fff 0,rgba(255,250,225,.85) 20%,transparent 62%);animation:sky-glint var(--t) ease-in-out infinite var(--d)}
/* evening */
.sky-flock+.sky-flock{left:74%}
.sky-flock{position:absolute;left:62%;top:var(--top);color:#3b2a3a;animation:sky-flock var(--dur) linear infinite var(--delay)}
.sky-bird{position:absolute;width:calc(22px*var(--k));height:calc(9px*var(--k));opacity:.85}
.sky-bird svg{display:block;width:100%;height:100%;overflow:visible;transform-origin:50% 80%;animation:sky-flap .8s ease-in-out infinite alternate var(--d)}
/* night */
.sky-star{position:absolute;width:var(--s);height:var(--s);border-radius:50%;background:#fff;box-shadow:0 0 4px rgba(200,220,255,.9);animation:sky-twinkle var(--t) ease-in-out infinite var(--d)}
.sky-masked,.sky-stars{position:absolute;inset:0}
.sky-shoot{position:absolute;width:90px;height:2px;border-radius:2px;opacity:0;background:linear-gradient(90deg,#fff,rgba(255,255,255,0));transform:rotate(-32deg)}
.sky-shoot.is-on{animation:sky-shoot 1.1s ease-out 1}
/* snow */
#visual[data-snow] .hero-sky__fx--snow{opacity:1}
#visual[data-snow] .hero-sky__fx--snow *{animation-play-state:running!important}
#visual[data-snow][data-sky] .hero-sky__fx.hero-sky__fx--night{opacity:0}
.sky-flake{position:absolute;top:0;height:100%;width:var(--s);animation:sky-snow var(--t) linear infinite var(--d)}
.sky-flake::before{content:"";position:absolute;top:0;left:0;width:var(--s);height:var(--s);border-radius:50%;background:#fff;opacity:var(--o);filter:blur(.6px);box-shadow:0 0 6px rgba(255,255,255,.7)}
@keyframes sky-snow{from{transform:translate(0,-6%)}to{transform:translate(var(--sway),104%)}}
/* rainbow */
#visual[data-rainbow] .hero-sky__fx--rainbow{opacity:1}
.sky-rainbow{position:absolute;top:8%;left:45%;height:195%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;filter:blur(2px);background:radial-gradient(circle closest-side,transparent 80%,rgba(120,80,220,.5) 82%,rgba(60,140,255,.5) 84.5%,rgba(60,200,120,.5) 87%,rgba(255,235,80,.55) 89.5%,rgba(255,160,60,.55) 92%,rgba(255,70,70,.5) 94.5%,transparent 97%)}
/* rain */
.sky-rain{position:absolute;inset:0;background-repeat:repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='180'%3E%3Cg stroke='%23fff' stroke-linecap='round'%3E%3Cline x1='70' y1='4' x2='60' y2='44' stroke-opacity='.6'/%3E%3Cline x1='28' y1='92' x2='19' y2='128' stroke-opacity='.45'/%3E%3C/g%3E%3C/svg%3E")}
.sky-rain--near{background-size:90px 180px;animation:sky-rain-near .55s linear infinite}
.sky-rain--far{background-size:60px 120px;opacity:.55;animation:sky-rain-far .8s linear infinite}
@keyframes sky-rays{from{transform:rotate(-3deg);opacity:.7}to{transform:rotate(3deg);opacity:1}}
@keyframes sky-mist{from{transform:translateX(-5%)}to{transform:translateX(5%)}}
@keyframes sky-glint{0%,100%{opacity:0;transform:translateY(6px) scale(.6)}50%{opacity:.95;transform:translateY(-6px) scale(1)}}
@keyframes sky-flock{from{transform:translate(0,0)}to{transform:translate(calc(-75vw - 200px),-90px)}}
@keyframes sky-flap{from{transform:scaleY(1)}to{transform:scaleY(.3)}}
@keyframes sky-twinkle{0%,100%{opacity:.25}50%{opacity:1}}
@keyframes sky-shoot{0%{opacity:0;transform:translate(0,0) rotate(-32deg)}12%{opacity:1}100%{opacity:0;transform:translate(var(--dx,-200px),var(--dy,125px)) rotate(-32deg)}}
@keyframes sky-rain-near{from{background-position:0 0}to{background-position:-90px 360px}}
@keyframes sky-rain-far{from{background-position:0 0}to{background-position:-60px 240px}}
@media (prefers-reduced-motion:reduce){.hero-sky__fx *{animation:none!important}.sky-shoot,.sky-flock,.sky-rain,.sky-glint,.sky-flake{display:none}}
.sky-debug{position:fixed;left:12px;bottom:12px;z-index:9999;display:flex;gap:6px;flex-wrap:wrap;padding:8px;border-radius:10px;background:rgba(20,24,40,.85);font:12px/1 sans-serif}
.sky-debug button{border:0;border-radius:6px;padding:7px 10px;background:#fff;color:#222;cursor:pointer}
.sky-debug button[aria-pressed="true"]{background:#ffd34d}
