body.home-city{--text:#f1e8d3;--muted:#bac4bf;--gold:#d8ba7a;--accent:#d8ba7a;background:#101719;color:var(--text)}
.home-city main{max-width:1480px;padding:22px 40px 80px;background:transparent}
.home-city>header{background:#101719;color:#f1e8d3;border-bottom:1px solid #ffffff14}
.home-city>header nav a,.home-city>header .site-account,.home-city>header a.outline{color:#e5e4d6!important}
.home-city>header .nav-toggle{color:#eee5d0;border-color:#787f70;background:transparent}
.home-redesign{--home-line:#455154;--home-muted:#bac4bf;color:#f1e8d3}
.home-redesign :is(h1,h2,h3,p){margin:0;color:inherit}
.home-redesign a{border-radius:0}
.home-redesign a:focus-visible{outline:3px solid #f4d89c;outline-offset:5px}
.home-opening{min-height:610px;position:relative;isolation:isolate;overflow:hidden;background:#181e29}
.home-opening-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left top;z-index:-2}
.home-opening:after{content:"";position:absolute;inset:0;background:linear-gradient(270deg,#111b22 3%,#111b22ee 26%,#111b2266 49%,transparent 75%),linear-gradient(0deg,#111b22bb,transparent 40%);z-index:-1}
.home-opening-copy{padding:76px 58px 115px;max-width:690px}
.home-opening-copy .home-signature{font-size:14px;color:#d8ba7a;margin-bottom:22px}
.home-opening h1{font-size:clamp(38px,4vw,58px);line-height:1.5;font-weight:900;letter-spacing:-1.8px;margin-bottom:20px;color:#f7efdc}
.home-opening-copy>p:not(.home-signature){font-size:16px;line-height:2;color:#cad2cf;max-width:490px}
.home-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px;align-items:center}
.home-redesign .home-button{padding:13px 24px;min-height:50px;border:1px solid #d8ba7a;background:#d8ba7a;color:#172127;display:inline-flex;justify-content:center;align-items:center;gap:28px;font-weight:800;font-size:14px;transition:background .15s}
.home-redesign .home-button-secondary{background:#13202666;color:#f1e8d3;border-color:#b4beb380}
.home-redesign .home-button:hover{background:#ead09b;color:#172127}
.home-newcomer{display:inline-flex;align-items:center;gap:16px;margin-top:24px;font-size:12px;color:#c3cfc8}
.home-release{position:absolute;left:28px;bottom:28px;display:flex;align-items:center;gap:16px;padding:14px 20px;background:#102022e8;border:1px solid #a6c1b64d;min-width:330px;backdrop-filter:blur(12px)}
.home-release>img{width:58px;height:64px;object-fit:cover;background:#34453f}
.home-release>span:not(:last-child){display:grid;gap:2px}
.home-release small{color:#b8c9bf;font-size:10px}.home-release strong{font-size:17px;color:#f3e6cb}.home-release span span{color:#bac4bf;font-size:11px}.home-release>span:last-child{margin-inline-start:auto;color:#d8ba7a;font-size:23px}
.home-doorways{display:grid;grid-template-columns:repeat(4,1fr);margin:0;border:1px solid #455154;border-top:0;gap:0;width:100%;background:#1c292d}
.home-doorways>a{display:flex;align-items:center;justify-content:space-between;padding:25px 24px;border-inline-end:1px solid #455154;min-width:0}
.home-doorways>a:last-child{border:0}.home-doorways>a:hover{background:#25363a}.home-doorways strong{display:block;font-size:17px}.home-doorways small{display:block;color:#bac4bf;font-size:11px;margin-top:4px}.home-doorways>a>span:last-child{color:#d8ba7a;font-size:22px}
.home-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}
.home-section-heading p,.home-learn-intro>p:first-child,.home-community>div>p:first-child{font-size:12px;color:#a4bbb0;margin-bottom:8px}
.home-section-heading h2,.home-learn h2,.home-community h2{font-size:clamp(26px,3vw,36px);font-weight:800;line-height:1.6;color:#f1e8d3}
.home-section-heading>a,.home-text-link{font-size:13px;color:#e2c78f;display:inline-flex;gap:20px;align-items:center;min-height:44px;white-space:nowrap}
.home-arrivals{padding-top:72px}
.home-character-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.home-character{position:relative;overflow:hidden;isolation:isolate;min-height:280px;background:#1c292d}
.home-character>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s;position:absolute;inset:0;z-index:-2}
.home-character:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#071113f5,transparent 65%);z-index:-1}
.home-character>div{position:absolute;bottom:18px;inset-inline:16px}
.home-character h3{font:700 clamp(17px,1.8vw,24px)/1.3 Georgia,serif;text-align:right;color:#fbf1da}.home-character p{font-size:11px;margin-top:5px;color:#c8d2cc}.home-character small{font-size:10px;color:#d7eddf;display:inline-block;margin-bottom:8px;border:1px solid #9dc0ac66;padding:2px 8px;background:#152b26}
@media(hover:hover){.home-character:hover>img{transform:scale(1.04)}}
.home-learn{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;margin-top:76px;padding:54px 0;border-block:1px solid #455154}
.home-learn-intro{padding:12px 0}.home-learn-intro>p:not(:first-child){font-size:15px;line-height:2;color:#bac4bf;max-width:380px;margin-top:18px}.home-learn-intro>a{margin-top:20px}
.home-learning-links{display:grid;gap:0}.home-learning-links>a{display:flex;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid #354448}.home-learning-links>a:first-child{padding-top:0}.home-learning-links>a:last-child{border:0;padding-bottom:0}.home-learning-links>a:hover h3{color:#e2c78f}.home-learning-links img{width:68px;height:68px;object-fit:contain;background:#233236;padding:7px}.home-learning-links h3{font-size:17px;color:#f1e8d3}.home-learning-links p{font-size:12px;color:#bac4bf;margin-top:3px}.home-learning-links>a>span:last-child{margin-inline-start:auto;color:#d8ba7a;font-size:22px}.home-help-mark{width:68px;height:68px;background:#233236;display:grid;place-items:center;font:38px Georgia;color:#a8c7bb;flex:none}
.home-community{display:grid;grid-template-columns:1fr 1fr;margin-top:64px;background:#1c292d;overflow:hidden;min-height:340px}
.home-community>div{padding:48px 42px;align-self:center}.home-community>div>p:not(:first-child){font-size:14px;line-height:2;color:#bac4bf;margin-top:15px}.home-community>img{width:100%;height:100%;max-height:400px;object-fit:cover;object-position:center}
.home-city>footer{background:#0d1416;border-color:#455154;color:#bac4bf}.home-city>footer p{color:#bac4bf}
@media(min-width:1500px){.home-opening-copy{max-width:710px}.home-opening{min-height:660px}.home-character{min-height:320px}}
@media(max-width:1100px){.home-city main{padding-inline:24px}.home-opening-copy{padding:55px 35px 160px;max-width:600px}.home-opening{min-height:600px}.home-opening h1{font-size:45px}.home-release{left:24px;bottom:24px}.home-doorways>a{padding:22px 16px}.home-doorways strong{font-size:15px}.home-doorways small{font-size:10px}.home-character-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.home-character{min-height:330px}.home-learn{gap:35px}.home-community>div{padding:32px 26px}.home-community .home-actions{gap:10px}.home-community .home-button{padding-inline:16px}}
@media(max-width:650px){.home-city main{padding:12px 16px 48px}.home-opening{padding-top:265px;min-height:0;background:#111b22}.home-opening-art{height:345px;object-position:left top;object-fit:cover}.home-opening:after{background:linear-gradient(0deg,#111b22 0%,#111b22 39%,#111b2200 75%)}.home-opening-copy{padding:0 22px 24px;max-width:none}.home-opening-copy .home-signature{font-size:12px;margin-bottom:12px}.home-opening h1{font-size:clamp(29px,7.7vw,43px);line-height:1.6;letter-spacing:-.8px;margin-bottom:12px}.home-opening-copy>p:not(.home-signature){font-size:13px;line-height:2}.home-desktop-break{display:none}.home-actions{gap:10px;margin-top:22px}.home-opening .home-actions{display:grid;grid-template-columns:1.2fr 1fr}.home-redesign .home-button{padding:12px 10px;font-size:12px;gap:10px}.home-newcomer{font-size:11px;margin-top:18px;gap:8px}.home-release{position:relative;left:auto;bottom:auto;margin:0 20px 22px;padding:12px;min-width:0;gap:12px}.home-release strong{font-size:14px}.home-release>img{width:46px;height:52px}.home-doorways{grid-template-columns:1fr 1fr}.home-doorways>a{padding:18px 14px;min-height:91px;gap:8px;border-bottom:1px solid #455154}.home-doorways>a:nth-child(2){border-inline-end:0}.home-doorways>a:nth-child(3){border-bottom:0}.home-doorways strong{font-size:14px}.home-doorways small{font-size:10px;white-space:normal}.home-arrivals{padding-top:42px}.home-section-heading{align-items:start;gap:12px;margin-bottom:18px}.home-section-heading p{font-size:10px}.home-section-heading h2{font-size:24px}.home-section-heading>a{font-size:11px;gap:7px;min-width:70px}.home-character-grid{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:14px;scrollbar-color:#697c73 transparent}.home-character{flex:0 0 60%;min-height:280px;scroll-snap-align:start}.home-character h3{font-size:25px}.home-character p{font-size:12px}.home-learn{grid-template-columns:1fr;gap:26px;margin-top:32px;padding:32px 0}.home-learn h2,.home-community h2{font-size:29px}.home-learn h2 br{display:none}.home-learn-intro>p:not(:first-child){font-size:13px;margin-top:12px}.home-learn-intro{padding:0}.home-learning-links>a{gap:14px;padding:16px 0}.home-learning-links h3{font-size:15px}.home-learning-links p{font-size:11px}.home-learning-links img,.home-help-mark{width:56px;height:56px}.home-community{grid-template-columns:1fr;margin-top:36px}.home-community>div{padding:28px 22px}.home-community>img{height:200px;grid-row:1}.home-community>div>p:not(:first-child){font-size:13px}.home-community .home-actions{display:grid;grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.home-redesign *{transition:none!important;scroll-behavior:auto!important}}

.home-city .site-brand-readable{color:#fff3d5}.home-city .site-brand-readable b{color:#d2dcad}.home-city>header .site-brand-new{filter:drop-shadow(0 0 1px #f2e6bd) drop-shadow(0 0 2px #f2e6bd80)}
@media(max-width:650px){.home-opening:after{background:linear-gradient(to bottom,transparent 160px,#111b2299 240px,#111b22 340px)}}

/* Generated city atmosphere behind the homepage. */
body.home-city{background:linear-gradient(#10171955,#10171988),url('assets/home/city-backdrop-v1.webp') center center/cover no-repeat fixed}
.home-city>header{background:#101719bb;backdrop-filter:blur(10px)}
.home-city .home-learn{background:#101719c9;padding-inline:28px}
.home-city .home-section-heading{padding:16px 18px;background:#101719b8}
@media(max-width:650px){.home-city .home-learn{padding-inline:18px}.home-city .home-section-heading{padding:12px}}

body.home-city{background-color:#101719}

/* Open text entry points match the homepage actions. */
.home-city .home-release,.home-city .home-doorways,.home-city .home-doorways>a{background:transparent;border:0;box-shadow:none;backdrop-filter:none}
.home-city .home-release>span>strong,.home-city .home-doorways strong{font-weight:900;color:#fff1ce;text-shadow:0 2px 5px #000b}
.home-city .home-release small,.home-city .home-release span span,.home-city .home-doorways small{color:#e3e9e4;text-shadow:0 2px 5px #000b}
.home-city .home-release,.home-city .home-doorways>a{transition:transform .18s ease}
@media(hover:hover) and (pointer:fine){.home-city .home-release:hover,.home-city .home-doorways>a:hover{background:transparent;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.home-city .home-release,.home-city .home-doorways>a{transition:none;transform:none}}

.home-roster-actions{display:flex;align-items:center;gap:18px}.home-roster-actions>a,.home-roster-actions>button{font-size:12px;color:#e2c78f;min-height:44px;white-space:nowrap}.home-roster-actions>button{padding:8px 0}.home-roster-actions>a{display:inline-flex;align-items:center}.home-character{border:1px solid #b7bda326}.home-character>img{object-position:center top}
@media(max-width:650px){.home-roster-actions{flex-direction:column;gap:0;align-items:flex-end}.home-roster-actions>a,.home-roster-actions>button{font-size:10px;min-height:32px}.home-section-heading{align-items:center}}

/* One continuous row: the next character enters from the right. */
.home-character-window{overflow:hidden;width:100%}
.home-city .home-character-grid{display:flex;direction:ltr;overflow:visible;gap:14px;padding-bottom:0;scroll-snap-type:none;width:100%;will-change:transform}
.home-city .home-character-grid>.home-character{flex:0 0 calc((100% - 70px)/6);min-width:0;direction:rtl;scroll-snap-align:none}
@media(max-width:1100px){.home-city .home-character-grid{gap:16px}.home-city .home-character-grid>.home-character{flex-basis:calc((100% - 32px)/3)}}
@media(max-width:650px){.home-city .home-character-grid{gap:12px}.home-city .home-character-grid>.home-character{flex-basis:60%}}

.home-city .home-arrivals .home-section-heading{display:block;text-align:center;background:transparent;border:0;box-shadow:none;padding:16px 0;margin-bottom:26px}

.home-city .home-character>div{inset-inline:14px;bottom:22px;text-align:center;display:flex;justify-content:center}.home-city .home-character h3{width:100%;margin:0;text-align:center}.home-city .home-character .home-name-logo{display:block;position:static;width:100%;max-width:210px;height:70px;object-fit:contain;object-position:center;margin:0 auto;filter:brightness(0) invert(1) drop-shadow(0 2px 4px #0009)}

.home-city .home-character .home-name-logo{width:84%;max-width:176px;height:58px}

/* Bring the roster into the first desktop view and show three mobile cards. */
.home-city .home-arrivals{padding-top:22px}
.home-city .home-arrivals .home-section-heading{padding:10px 0;margin-bottom:16px}
@media(min-width:1101px){
 .home-city main{padding-top:8px}
 .home-city .home-opening{min-height:380px}
 .home-city .home-opening-copy{padding:24px 42px 20px;max-width:650px}
 .home-city .home-opening-copy .home-signature{display:none}
 .home-city .home-opening h1{font-size:40px;line-height:1.25;margin-bottom:12px}
 .home-city .home-opening-copy>p:not(.home-signature){font-size:14px;line-height:1.8}
 .home-city .home-opening .home-actions{margin-top:12px}
 .home-city .home-opening .home-button{min-height:44px;padding:8px 18px}
 .home-city .home-newcomer{margin-top:10px}
 .home-city .home-doorways>a{padding-block:14px}
 .home-city .home-character-grid>.home-character{min-height:clamp(210px,26vh,280px)}
}
@media(max-width:1100px) and (min-width:651px){.home-city .home-opening{min-height:450px}.home-city .home-opening-copy{padding-top:32px;padding-bottom:105px}.home-city .home-opening h1{font-size:38px}}
@media(max-width:650px){
 .home-city .home-character-grid{gap:8px}
 .home-city .home-character-grid>.home-character{flex-basis:calc((100% - 16px)/3);min-height:clamp(140px,44vw,215px)}
 .home-city .home-character>div{inset-inline:5px;bottom:10px}
 .home-city .home-character .home-name-logo{width:94%;height:36px}
 .home-city .home-opening{padding-top:190px}
 .home-city .home-opening-art{height:270px}
 .home-city .home-opening:after{background:linear-gradient(to bottom,transparent 100px,#111b2299 180px,#111b22 265px)}
 .home-city .home-opening-copy{padding-inline:18px;padding-bottom:12px}
 .home-city .home-opening-copy .home-signature{display:none}
 .home-city .home-opening h1{font-size:30px;line-height:1.4;margin-bottom:10px}
 .home-city .home-opening-copy>p:not(.home-signature){font-size:12px}
 .home-city .home-opening .home-actions{margin-top:12px}
 .home-city .home-newcomer{margin-top:10px}
 .home-city .home-release{margin-bottom:12px;margin-inline:12px;padding:8px}
 .home-city .home-doorways>a{min-height:70px;padding-block:12px}
}

@media(min-width:1101px){.home-city .home-opening{min-height:330px}.home-city .home-arrivals{padding-top:16px}.home-city .home-arrivals .home-section-heading{padding-block:6px;margin-bottom:12px}}
