/* Sunlight reaches a photovoltaic array; the brand sits directly in the scene. */
body.intro-playing{overflow:hidden}
.splash.solar-intro{display:block;background:#111a20;color:#fff;animation:none;isolation:isolate;overflow:hidden;clip-path:inset(0);transition:clip-path .8s var(--ease),visibility .8s;pointer-events:auto}
.solar-intro.intro-finished{clip-path:inset(0 0 100%);visibility:hidden;pointer-events:none}
.solar-intro-scene{position:absolute;inset:0;z-index:-1;overflow:hidden;background:linear-gradient(90deg,#10191ff5 10%,#10191f85 65%,#10191f20),url('assets/hero.webp') center/cover}
.solar-intro-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#081118d9,transparent 65%);pointer-events:none}
.solar-intro-horizon{position:absolute;inset:0;background:radial-gradient(ellipse at 77% 48%,#cb242877,transparent 47%);opacity:0}
.solar-intro-sun{position:absolute;left:74%;top:26%;width:clamp(100px,11vw,220px);aspect-ratio:1;border-radius:50%;background:#ffe2ba;box-shadow:0 0 45px #f9943260,0 0 150px #cb2428a0;opacity:0}
.solar-intro-rays{position:absolute;inset:0;background:linear-gradient(125deg,transparent 48%,#f2b77522 56%,transparent 65%);opacity:0}
.solar-intro-array{position:absolute;right:-8%;bottom:-24%;width:85%;height:75%;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(5,1fr);gap:5px;transform:perspective(1100px) rotateX(39deg) rotateZ(-13deg);transform-origin:center;opacity:.85}
.solar-intro-array>span{position:relative;display:block;border:1px solid #a5c4da42;background:linear-gradient(130deg,#223c50,#091724);overflow:hidden;box-shadow:inset 0 0 0 1px #040b10}
.solar-intro-array>span:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),#d4e9f24a calc(25% - 1px) 25%),repeating-linear-gradient(0deg,transparent 0 calc(33.333% - 1px),#d4e9f23a calc(33.333% - 1px) 33.333%)}
.solar-intro-array>span:after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 15%,#ffdbbc80 47%,#cb2428a0 58%,transparent 90%);transform:translateX(-110%)}
.solar-intro-energy{position:absolute;left:0;bottom:14%;width:100%;height:1px;background:linear-gradient(90deg,transparent,#cb2428,#ffe8d0,transparent);transform:scaleX(0);transform-origin:right;box-shadow:0 0 20px #cb2428}
.solar-intro-top,.solar-intro-bottom{position:absolute;left:clamp(24px,5vw,160px);right:clamp(24px,5vw,160px);display:flex;align-items:center;justify-content:space-between;gap:25px;z-index:2}
.solar-intro-top{top:clamp(28px,5vh,70px)}
.solar-intro-top>img{width:clamp(210px,22vw,380px);height:auto;filter:brightness(0) invert(1)}
.solar-intro-top>span{font-size:9px;letter-spacing:.2em;color:#ffffffa0}
.solar-intro-copy{position:absolute;left:clamp(24px,7vw,220px);right:6%;top:42%;transform:translateY(-30%);z-index:2}
.solar-intro-kicker{display:block;font-size:clamp(8px,.65vw,12px);letter-spacing:.16em;margin-bottom:28px;color:#fff9}
.solar-intro-copy>p{font-family:Manrope,Arial,sans-serif;font-size:clamp(48px,7.8vw,148px);font-weight:400;letter-spacing:-.065em;line-height:1.04;max-width:16ch}
.solar-intro-copy em{font-family:var(--serif);font-weight:400}
.solar-intro-bottom{bottom:clamp(24px,4vh,54px);border-top:1px solid #ffffff30;padding-top:20px}
.solar-intro-bottom>span{font-size:8px;letter-spacing:.12em;color:#ffffffa0}
.solar-intro-bottom b{font-weight:400;color:#e4363c;margin:0 12px}
.solar-intro .intro-skip{position:static;border:0;background:none;backdrop-filter:none;border-radius:0;padding:5px 0;font-size:12px;color:white;display:flex;gap:28px;align-items:center}
.solar-intro .intro-skip:hover{background:none;color:#ffd7c0}
.solar-intro .intro-skip>span{font-size:21px}
.intro-running .solar-intro-sun{animation:solar-dawn 2.7s var(--ease) both}
.intro-running .solar-intro-horizon,.intro-running .solar-intro-rays{animation:solar-light 2.5s ease .3s both}
.intro-running .solar-intro-array{animation:solar-array-arrival 2s var(--ease) both}
.intro-running .solar-intro-array>span:after{animation:solar-cell-light 1.6s ease-in-out calc(.25s + var(--delay)) both}
.intro-running .solar-intro-energy{animation:solar-current 1.9s var(--ease) .6s both}
.intro-running .solar-intro-copy,.intro-running .solar-intro-top{animation:solar-type-arrival 1s var(--ease) .35s both}
.intro-running .solar-intro-bottom{animation:solar-type-arrival .8s var(--ease) .6s both}
.intro-finished .solar-intro-scene *{animation:none!important}
@keyframes solar-dawn{0%{opacity:0;transform:translateY(100px);filter:blur(7px)}45%{opacity:1}100%{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes solar-light{0%{opacity:0}70%,100%{opacity:1}}
@keyframes solar-cell-light{0%{transform:translateX(-110%)}100%{transform:translateX(110%)}}
@keyframes solar-array-arrival{from{opacity:0;translate:0 55px}to{opacity:.85;translate:0 0}}
@keyframes solar-current{0%{opacity:0;transform:scaleX(0)}40%{opacity:1}100%{opacity:.4;transform:scaleX(1)}}
@keyframes solar-type-arrival{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@media(max-width:700px){.solar-intro-top>span{display:none}.solar-intro-copy{top:37%;left:7%;right:7%}.solar-intro-copy>p{font-size:clamp(40px,10.8vw,72px);line-height:1.1}.solar-intro-kicker{font-size:7px;letter-spacing:.08em;max-width:230px;line-height:1.8;margin-bottom:25px}.solar-intro-sun{left:65%;top:19%;width:90px}.solar-intro-array{width:150%;right:-42%;height:52%;bottom:-10%;gap:3px}.solar-intro-bottom{left:7%;right:7%;align-items:end}.solar-intro-bottom>span{max-width:165px;font-size:7px;line-height:1.8}.solar-intro-bottom b{margin:0 5px}.solar-intro .intro-skip{font-size:11px;gap:15px}.solar-intro-energy{bottom:20%}}
@media(max-height:520px) and (min-width:701px){.solar-intro-copy{top:39%}.solar-intro-copy>p{font-size:clamp(42px,6vw,70px)}.solar-intro-kicker{margin-bottom:15px}.solar-intro-top{top:22px}.solar-intro-top>img{width:220px}.solar-intro-bottom{bottom:18px;padding-top:12px}}
@media(prefers-reduced-motion:reduce){.splash.solar-intro{display:none!important}}
