/* Character showcase: oversized artwork, editorial profile and portrait selector. */
.stellar-site .character-stage{position:relative;min-height:640px;height:calc(100svh - 74px);max-height:1050px;overflow:hidden;background:#eef0f3;color:#182131;isolation:isolate}
.character-stage:after{content:'✦';position:absolute;right:4%;top:8%;font-size:100px;color:#889eb321;pointer-events:none}
.character-panels,.character-panel{height:100%;min-height:inherit}.character-panel{display:grid;grid-template-columns:58% 42%;animation:character-reveal .55s ease both}.character-panel[hidden]{display:none}.character-panels.is-fading{opacity:0}.character-panels{transition:opacity .3s}
.character-visual{position:relative;height:100%;min-height:inherit;isolation:isolate;overflow:hidden;background:linear-gradient(130deg,#c9d3df33,#fafbfc 70%)}
.character-ghost{position:absolute;inset:0 -2% 0 0;background-size:cover;background-position:30% 18%;filter:grayscale(.25);clip-path:polygon(0 0,100% 0,32% 100%,0 100%);opacity:.6}
.character-ghost:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,#102139c9,#33486570)}
.character-visual:after{content:'✦';position:absolute;top:28%;right:7%;font-size:48px;color:#657a98;z-index:2;text-shadow:0 0 20px white}
.character-figure{position:absolute;right:-1%;bottom:0;width:78%;height:96%;object-fit:contain;object-position:center bottom;z-index:2;mix-blend-mode:multiply;filter:drop-shadow(10px 12px 14px #22304412)}
.character-summary{align-self:center;padding:0 12% 150px 6%;position:relative;z-index:2}.character-summary .eyebrow{color:#60738c;letter-spacing:.18em;font-size:12px;margin-bottom:20px}.character-summary .eyebrow:before{content:'✦';margin-right:13px}
.stellar-site .character-summary h1,.stellar-site .character-summary h2{font:500 clamp(62px,6vw,104px)/1.1 var(--latin);letter-spacing:-.025em;margin:0 0 22px;color:#152134}
.character-summary .character-epithet{font:500 20px/1.7 var(--serif);color:#263c55;margin-bottom:24px}.character-summary>p:not(.eyebrow):not(.character-epithet){font-size:15px;line-height:2;color:#586679;margin-bottom:28px}
.character-read{display:inline-flex;align-items:center;gap:32px;padding:14px 24px;border:1px solid #758397;background:#142035;color:#f6f8fc;font-size:13px;outline:1px solid #142035;outline-offset:3px}.character-read:after{content:'↘';font-size:20px}.character-read:hover{background:#304963}
.character-selector{position:absolute;bottom:42px;left:61%;right:4%;display:flex;gap:12px;z-index:5;justify-content:flex-start}.character-selector button{padding:0;position:relative;flex:1;max-width:90px;height:116px;border:1px solid #9aa7b8;border-radius:46px 46px 3px 3px;overflow:hidden;background:#c8d0da;cursor:pointer;opacity:.62;transition:opacity .3s,border-color .3s,box-shadow .3s}.character-selector img{width:100%;height:100%;object-fit:cover;object-position:50% 8%;mix-blend-mode:multiply}.character-selector span{position:absolute;bottom:0;left:0;right:0;padding:8px 1px 5px;background:linear-gradient(transparent,#142035);color:#fff;font:13px var(--latin)}.character-selector button[aria-selected=true],.character-selector button:hover{opacity:1;border-color:#27466b;box-shadow:0 0 0 3px #9fb7d155}.character-selector button:focus-visible{outline:3px solid #4a7fbc;outline-offset:4px}
.stellar-site .character-directory{padding-top:52px;padding-bottom:52px}.character-directory .world-cards{display:none}.stellar-site .character-directory h1{font-size:32px;margin:10px 0 16px}.character-directory h1 br{display:none}.character-directory .world-lead{margin-bottom:0;max-width:850px;font-size:15px}.character-directory>.eyebrow{font-size:10px}
.character-enhanced .world-profile[hidden]{display:none}.character-enhanced .world-profile{animation:character-reveal .55s ease both}
@keyframes character-reveal{from{opacity:0}to{opacity:1}}
@media(min-width:1600px){.character-summary{padding-right:18%}}
@media(max-width:1050px){.character-summary{padding-right:8%;padding-left:3%}.character-summary>p:not(.eyebrow):not(.character-epithet){font-size:14px}.character-selector{left:59%;gap:8px}.character-selector button{height:100px}.character-figure{width:90%;right:-8%}}
@media(max-width:700px){.stellar-site .character-stage{height:auto;max-height:none;min-height:0;padding-bottom:116px}.character-panel{display:flex;flex-direction:column;min-height:0}.character-visual{height:440px;min-height:0}.character-figure{width:80%;height:100%;right:1%}.character-ghost{background-position:25% 16%;clip-path:polygon(0 0,94% 0,36% 100%,0 100%)}.character-visual:after{font-size:32px;right:10%}.character-summary{padding:28px 7% 24px;width:100%}.stellar-site .character-summary h1,.stellar-site .character-summary h2{font-size:64px;margin-bottom:12px}.character-summary .eyebrow{font-size:10px;margin-bottom:12px}.character-summary .character-epithet{font-size:18px;margin-bottom:16px}.character-summary>p:not(.eyebrow):not(.character-epithet){font-size:14px;margin-bottom:23px}.character-read{font-size:12px;padding:10px 20px}.character-selector{left:7%;right:7%;bottom:20px;justify-content:center;gap:16px}.character-selector button{height:86px;max-width:64px}.character-selector span{font-size:11px}.stellar-site .character-directory h1{font-size:25px}.stellar-site .character-directory{padding:40px 7%}.character-directory .world-lead{font-size:13px}}
@media(prefers-reduced-motion:reduce){.character-panel,.character-enhanced .world-profile{animation:none}.character-panels,.character-selector button{transition:none}}

.character-visual:before{content:"";position:absolute;inset:0;background:#f8f9fb;clip-path:polygon(38% 0,100% 0,100% 100%,12% 100%);z-index:1}
.character-visual:after{z-index:3}
@media(min-width:701px){.character-selector{bottom:32px;right:16%}}
