/* An interactive constellation of story worlds, without a boxed backdrop. */
.home .home-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,43%);align-items:center;gap:34px;width:100%;max-width:1160px;min-height:360px;margin:0 auto 26px;padding:26px 28px;isolation:isolate;--scene-x:0px;--scene-y:0px}
.home-hero-copy{position:relative;z-index:2;min-width:0;padding:4px 0}
.home-hero-eyebrow{display:flex;align-items:center;gap:9px;color:#ffe0a3;font-size:10px;font-weight:800;letter-spacing:.2em}
.home-hero-eyebrow i{width:6px;height:6px;border-radius:50%;background:#ffe0a3;box-shadow:0 0 12px #ffd98399}
.home .home-hero h1{font-size:clamp(36px,4.5vw,62px);line-height:1.02;letter-spacing:-.045em;color:#fff9e7;margin:16px 0;text-shadow:0 3px 0 #44214b55;font-weight:800}
.home .home-hero p{font-size:clamp(14px,1.5vw,18px);line-height:1.55;color:#f5e6f5;margin:0;max-width:27ch}
.home .home-hero-level{display:inline-flex;align-items:center;gap:9px;margin-top:22px;padding:8px 17px;background:linear-gradient(120deg,#fff3bf,#f4cc7a);border:1px solid #fff2c1;border-radius:17px;color:#603775;box-shadow:0 5px 14px #28153b22,inset 0 1px #fff9db}
.home-hero-level .level-emblem{display:grid;place-items:center;width:32px;height:32px;border-radius:11px;background:#75498612}.level-emblem .ui-icon{width:20px;height:20px}
.home-hero-level small{font-size:9px;font-weight:800;letter-spacing:.12em}.home-hero-level strong{font:700 31px/1 Georgia,serif}
.hero-world-hint{display:flex;align-items:center;gap:7px;margin-top:16px;font-size:11px;color:#e8d1ec}.hero-world-hint .ui-icon{width:14px;height:14px;color:#ffe2a2}
.story-constellation{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:visible;translate:calc(var(--scene-x)*-.5) calc(var(--scene-y)*-.5);transition:translate .4s ease-out}
.constellation-track{fill:none;stroke:#f9dbaa;stroke-width:1;opacity:.18;stroke-dasharray:2 8}.constellation-thread{fill:none;stroke:#f5dcfa;stroke-width:.8;opacity:.24}.constellation-light{fill:#ffe5b4;opacity:.65;animation:story-twinkle 5s ease-in-out infinite}.light-1{animation-delay:-2s}.light-2{animation-delay:-3.5s}
.home .home-hero-art{position:relative;isolation:isolate;min-width:0;width:100%;height:330px;max-width:410px;justify-self:center;translate:var(--scene-x) var(--scene-y);transition:translate .4s ease-out}
.home .home-hero-art .hero-character{position:absolute;inset:0 11% 0 3%;display:block;width:86%;height:100%;max-width:100%;object-fit:contain;object-position:center;filter:none;z-index:1}
.home-hero-art.blended-art .hero-character{mask-image:radial-gradient(ellipse,#000 45%,transparent 72%)}
.hero-orbit{position:absolute;inset:1% -5%;pointer-events:none;z-index:0;transform:rotate(-18deg)}
.hero-orbit i{position:absolute;inset:7% 1%;border:1px solid #ffe5ac35;border-radius:50%}.hero-orbit i:nth-child(2){inset:0 8%;border-color:#edd3fc25;transform:rotate(65deg)}
.hero-orbit span{position:absolute;left:13%;top:17%;width:7px;height:7px;border-radius:50%;background:#ffdfa0;box-shadow:0 0 13px #ffdea077}
.home .story-portal{position:absolute;z-index:3;display:block;width:64px;height:64px;min-height:0;padding:3px;margin:0;border:1px solid #ffe4a8b3;border-radius:50%;background:#5b376b;box-shadow:0 5px 18px #27163e55,inset 0 0 0 3px #e1b6e333;cursor:pointer;animation:story-float 7s ease-in-out infinite;transition:scale .2s,box-shadow .2s;touch-action:manipulation}
.home .story-portal>img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;opacity:.9;transition:opacity .2s}
.home .story-portal>span{position:absolute;left:50%;bottom:-26px;transform:translateX(-50%);display:flex;align-items:center;gap:3px;white-space:nowrap;color:#fff2d1;font-size:10px;font-weight:700;text-shadow:0 1px 4px #341940;opacity:0;transition:opacity .2s}.story-portal>span .ui-icon{width:12px;height:12px}
.home .story-portal:hover,.home .story-portal:focus-visible{scale:1.12;box-shadow:0 5px 25px #f6c87655;outline:2px solid #fff0bf;outline-offset:4px}.home .story-portal:hover>span,.home .story-portal:focus-visible>span{opacity:1}.home .story-portal:hover>img{opacity:1}
.portal-0{left:-3%;top:9%}.portal-1{right:-3%;top:25%;animation-delay:-2s!important}.portal-2{left:3%;bottom:5%;animation-delay:-4s!important}
.hero-spark{position:absolute;z-index:2;display:block;width:22px;height:22px;color:#ffe1a1;pointer-events:none;animation:story-twinkle 5s ease-in-out infinite}.hero-spark .ui-icon{width:100%;height:100%}.hero-spark-one{left:28%;top:0}.hero-spark-two{right:2%;bottom:7%;width:15px;height:15px;animation-delay:-2s}
.home .adventure{transition:transform .25s ease,box-shadow .25s ease}.home .adventure:hover{transform:translateY(-5px);box-shadow:0 12px 26px #29133733}.home .adventure:focus-visible{outline:3px solid #fff0bf;outline-offset:5px}
@keyframes story-float{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes story-twinkle{0%,100%{opacity:.4}50%{opacity:.95}}
.home-actions{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;margin-top:28px}
.home-action{display:flex;align-items:center;gap:14px;min-width:0;min-height:90px;padding:18px 20px;border:2px solid #fff0ba;border-radius:21px;background:linear-gradient(140deg,#fff6d8,#f6e3ad);box-shadow:0 5px 0 #a9769c;color:#603873;text-align:left}
.home-action>span:nth-child(2){flex:1;min-width:0}.home-action strong{display:block;font-size:17px;line-height:1.25}.home-action small{display:block;font-size:12px;line-height:1.35;margin-top:5px;color:#806286;overflow-wrap:anywhere}.home-action-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#e8d6f1;flex:none}.home-action-icon .ui-icon{width:25px;height:25px}.home-action>.ui-icon{width:22px;height:22px;flex:none}.home-resume{background:linear-gradient(140deg,#f4e5fa,#e7d5f6);border-color:#efd9ff}

@media(max-width:740px){
 .home .home-hero{display:block;min-height:235px;max-width:none;padding:12px 0;margin-bottom:18px}
 .home .home-hero-copy{width:56%;max-width:280px;padding:10px 0;z-index:2}
 .home .home-hero-art{position:absolute;right:5%;top:0;width:45%;height:100%;max-width:250px}
 .home .home-hero-art .hero-character{inset:0 0 0 4%;width:96%;object-position:center}
 .home .home-hero h1{font-size:clamp(24px,5.7vw,36px);margin:11px 0;line-height:1.04}
 .home .home-hero p{font-size:12px;max-width:20ch;line-height:1.4}
 .home-hero-eyebrow{font-size:7px;letter-spacing:.1em;gap:5px}.home-hero-eyebrow i{width:4px;height:4px}
 .home .home-hero-level{margin-top:14px;padding:6px 10px;gap:7px;border-radius:12px}.home-hero-level .level-emblem{display:none}.home-hero-level small{font-size:8px}.home-hero-level strong{font-size:24px}
 .hero-world-hint{display:none}
 .hero-orbit{inset:8% 0}.hero-orbit i{border-color:#ffe5ac2b}
 .home .story-portal{width:44px;height:44px;padding:2px}
 .portal-0{left:-5%;top:0}.portal-1{right:0;top:auto;bottom:0}.portal-2{display:none!important}
 .home .story-portal>span{display:none}.hero-spark-one{display:none}.hero-spark-two{width:12px;height:12px;bottom:20%;right:0}
 .story-constellation{opacity:.65}.home-actions{gap:14px;margin-top:22px}.home-action{min-height:82px;padding:16px;gap:12px}.home-action strong{font-size:16px}.home-action small{font-size:11px}
}
@media(max-width:360px){.home .home-hero{min-height:210px}.home .home-hero h1{font-size:23px}.home .home-hero p{font-size:11px}.home .story-portal{width:44px;height:44px}.home .home-hero-copy{width:57%}.home .home-hero-art{width:43%}}
@media(prefers-reduced-motion:reduce){.home .story-portal,.constellation-light,.hero-spark{animation:none}.home .home-hero-art,.story-constellation{translate:none!important;transition:none}.home .adventure,.home .story-portal{transition:none}.home .adventure:hover{transform:none}}
