/* Shared user-supplied nebula across the portfolio and case pages. */
html{background:#050c18}body{background:#050c18 url('assets/universe-nebula-v2.png') center top/cover fixed no-repeat!important;color:#eeeae9}
body:before{content:'';position:fixed;inset:0;background:#03091855;pointer-events:none;z-index:-1}
#home,#selected,.ai-section,.cinema,.bw,.contact-end,.my-journey,.site-footer{background:transparent!important}
#home:before,#home:after,#selected:before,#selected:after,.cinema:before,.cinema:after,.bw:before,.bw:after{display:none!important}
body:not(:has(#home)){background-image:linear-gradient(#040a16b3,#040a16b3),url('assets/universe-nebula-v2.png')!important}
#home{display:grid;grid-template-columns:35% 65%;align-items:center;position:relative;isolation:isolate;min-height:0;height:clamp(640px,calc(53vw - 60px),840px);padding:30px 4% 35px 6%;overflow:hidden}
#home .hero-copy{position:relative;z-index:6;padding-bottom:35px;pointer-events:none}
#home .hero-greeting{font:400 clamp(24px,2.35vw,38px)/1.2 Georgia,serif;color:#f2ece8;margin:0 0 18px}
#home h1{font:400 clamp(58px,6.1vw,98px)/.98 Didot,'Bodoni 72',Georgia,serif;letter-spacing:-.035em;margin:0 0 28px;white-space:nowrap}
#home h1 em{color:#c9b5d4;font-weight:400}
#home .kicker{font-size:14px;letter-spacing:.32em;color:#f0e8ed;margin:0 0 18px}
#home .hero-description{font-size:clamp(13px,1.15vw,18px);line-height:1.95;color:#d9dce7;white-space:nowrap}
#home .hero-system{position:relative;width:100%;height:100%;min-height:540px;margin:0;isolation:isolate}
#home .core-wrap{position:absolute;left:52%;top:54%;width:39%;aspect-ratio:1;transform:translate(-50%,-50%);z-index:2;pointer-events:none}
#home .core{position:static;display:block;width:100%;height:100%;object-fit:contain;transform:none;filter:saturate(.7) brightness(.95);animation:meteor-turn 130s linear infinite}
.galaxy-orbits{position:absolute;left:52%;top:54%;width:76%;height:54%;transform:translate(-50%,-50%) rotate(-19deg);pointer-events:none;z-index:1}
.galaxy-orbits i{position:absolute;inset:calc(var(--ring)*7%);border:1px solid #d2abb360;border-radius:50%;box-shadow:0 1px 0 #a1b5d316}
.galaxy-orbits i:nth-child(2n){border-style:dotted;border-color:#dcc2ba70}
#home .cosmic-link{position:absolute;left:50%;top:50%;right:auto;bottom:auto;display:flex;flex-direction:column;align-items:center;gap:3px;width:190px;max-width:none;min-height:0;transform:translate(-50%,-50%);z-index:5;font:12px/1.4 Georgia,serif;letter-spacing:.12em;text-align:center;will-change:transform}
#home .cosmic-link img,#home .nav-work img,#home .nav-ai img,#home .nav-beyond img{width:90px;height:90px;object-fit:contain;filter:saturate(.8);transform:none;transition:filter .2s,scale .2s}
#home .nav-work img{filter:sepia(.85) saturate(1.6) hue-rotate(350deg)}
#home .cosmic-link span{white-space:nowrap;padding:0;text-shadow:0 2px 8px #000,0 0 18px #050b16;position:relative}
#home .cosmic-link span:before{display:none}
#home .cosmic-link:hover img,#home .cosmic-link:focus-visible img{scale:1.08;filter:brightness(1.2)}
#home .cosmic-link:focus-visible{outline:1px solid #e3cfe8;outline-offset:8px}
#home .nav-work{left:22%;top:20%}#home .nav-ai{left:80%;top:24%}#home .nav-film{left:20%;top:78%}#home .nav-beyond{left:82%;top:79%}
.galaxy-debris{position:absolute;inset:0;pointer-events:none;z-index:3}
.galaxy-debris img,.galaxy-debris i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size)}
.galaxy-debris img{object-fit:contain;transform:rotate(var(--turn));filter:saturate(.65) brightness(.8);opacity:.85}
.galaxy-debris i{border-radius:50%;background:#eee0e4;opacity:.65;animation:star-light 6s ease-in-out var(--delay) infinite alternate}
.galaxy-debris i:nth-of-type(9n){width:7px;height:7px;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%)}
.universe-note{position:absolute;right:6%;top:30px;text-align:right;font:italic 22px/1.35 'Snell Roundhand',cursive;color:#c9bac37a;transform:rotate(-10deg)}
.galaxy-toggle{position:absolute;right:5%;bottom:17px;z-index:7;color:#d6c9d8;background:#080e1b70;border:1px solid #d5bfd42e;border-radius:0;padding:8px 12px;font:11px/1.4 system-ui;cursor:pointer;min-height:36px}
.my-journey{display:grid;grid-template-columns:25% 75%;align-items:center;margin:0 4%;padding:24px 2% 30px;min-height:140px;border-top:1px solid #d9c8ce40}
.my-journey h2{font:13px Georgia,serif;letter-spacing:.24em}.my-journey ol{position:relative;display:grid;grid-template-columns:repeat(3,1fr);list-style:none;margin:0;padding:0;text-align:center}
.my-journey ol:before{content:'';position:absolute;left:4%;right:4%;top:10px;height:32px;border:1px dashed #c2aeb972;border-radius:50%;pointer-events:none}
.my-journey img{width:38px;height:38px;position:relative}.my-journey h3{font-size:13px;margin:5px 0 0}.my-journey p{font-size:12px;color:#c4c8d6;margin:0}
#selected,.ai-section,.cinema,.bw,.contact-end{border-top:1px solid #c4b5d01a}
.galaxy-paused .core,.galaxy-paused .galaxy-debris i{animation-play-state:paused!important}
@keyframes meteor-turn{to{transform:rotate(360deg)}}@keyframes star-light{to{opacity:.2;transform:scale(.7)}}
@media(max-width:1000px) and (min-width:701px){#home{height:610px;padding-left:5%;grid-template-columns:36% 64%}#home h1{font-size:clamp(48px,6.2vw,62px)}#home .hero-system{min-height:480px}#home .cosmic-link{font-size:9px;width:150px}#home .cosmic-link img,#home .nav-work img,#home .nav-ai img,#home .nav-beyond img{width:70px;height:70px}#home .hero-description{white-space:normal}.universe-note{font-size:19px}}
@media(max-width:700px){body{background-attachment:scroll!important;background-size:auto 1900px!important;background-repeat:repeat-y!important}#home{display:flex;flex-direction:column;height:auto;min-height:0;padding:32px 6% 48px}#home .hero-copy{padding:0;width:100%}#home .hero-greeting{font-size:24px}#home h1{font-size:clamp(47px,11vw,76px);margin:16px 0 22px}#home .kicker{font-size:12px}#home .hero-description{font-size:13px;white-space:normal}#home .hero-system{height:390px;min-height:0;width:112%;margin:15px -6% 0}#home .core-wrap{width:38%}#home .cosmic-link{font-size:8px;letter-spacing:.02em;width:132px}#home .cosmic-link img,#home .nav-work img,#home .nav-ai img,#home .nav-beyond img{width:62px;height:62px}.galaxy-debris img{max-width:23px;max-height:23px}.universe-note{top:20px;font-size:17px}.galaxy-toggle{bottom:12px;right:6%}.my-journey{display:block;margin:0 6%;padding:20px 0 25px}.my-journey h2{margin:0 0 22px}.my-journey h3{font-size:10px;white-space:normal}.my-journey p{font-size:10px}.my-journey img{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){#home .core,.galaxy-debris i{animation:none!important}}

/* Keep text legible over the supplied bright nebula, without section seams. */
#home{background:linear-gradient(90deg,#02071166,transparent 54%)!important}
@media(max-width:700px){.galaxy-orbits{left:50%;width:calc(100% - 168px)}#home .core-wrap{left:50%}}

#home .hero-foreground{position:absolute;left:0;bottom:-55px;width:77%;height:auto;pointer-events:none;z-index:0;filter:saturate(.7) brightness(.72)}
@media(max-width:700px){#home .hero-foreground{bottom:-2px;width:130%;max-width:none;opacity:.55}}

/* Refined hierarchy: smaller hero rock, interlaced stellar ellipses. */
#home .core-wrap{width:29.25%}
#home .galaxy-orbits{inset:0;left:0;top:0;width:100%;height:100%;transform:none}
.galaxy-orbits svg{display:block;width:100%;height:100%;overflow:visible}
.galaxy-orbits path{fill:none;stroke-width:1.35;stroke-dasharray:.1 7;stroke-linecap:round;opacity:.7}
.galaxy-orbits path:nth-child(2n){stroke-width:1;stroke-dasharray:.1 5;opacity:.55}
#selected .decorative-planet{transform:translate(-50%,-50%) scale(.65);filter:brightness(.62);opacity:.6}
#selected .temu{--case-rim:218,191,142;--case-text:#eee1ca}
#selected .advertising{--case-rim:188,173,215;--case-text:#e2d9ef}
#selected .world-link img,#selected .advertising img{border-radius:50%;transform:none;scale:1;filter:brightness(1.18) drop-shadow(0 0 5px rgba(var(--case-rim),.25));box-shadow:0 0 0 1px rgba(var(--case-rim),.19),0 0 16px rgba(var(--case-rim),.08);transition:filter .3s}
#selected .world-link:hover img,#selected .world-link:focus-visible img,#selected .world-link:active img{transform:none;scale:1;filter:brightness(1.32) drop-shadow(0 0 5px rgba(var(--case-rim),.32))}
#selected .world-link strong,#selected .world-link small,#selected .work-description{transition:color .3s}
#selected .world-link small{font-weight:400}
#selected .world-link:hover strong,#selected .world-link:focus-visible strong,#selected .world-link:hover small,#selected .world-link:focus-visible small{color:var(--case-text)}
#selected .world-link:hover .work-description,#selected .world-link:focus-visible .work-description{color:#c5cdd5}
#selected .decorative-planet{cursor:default;pointer-events:none}
@media(max-width:700px){#selected .world-link>span{min-width:0}#selected .world-link strong,#selected .work-description{white-space:normal}}
@media(prefers-reduced-motion:reduce){#selected .world-link img,#selected .world-link strong,#selected .world-link small,#selected .work-description{transition:none}}
@media(max-width:700px){#home .core-wrap{width:28.5%}#selected .decorative-planet{opacity:.16}}
