/* Traverse Town: lantern-lit streets, direct paths, readable content. */
:root{--bg:#100d21;--panel:#1b1730;--text:#f7ead7;--muted:#c1b5d2;--gold:#ebc06e;--line:#ebc06e26;--violet:#8f75c8;--teal:#8ec8cf;--serif:Georgia,'Times New Roman',serif}
html{scroll-padding-top:95px}body{background:var(--bg);font:16px/1.65 'Segoe UI',Arial,sans-serif;color:var(--text)}
.wrap{width:min(1240px,calc(100% - 80px))}a,button{-webkit-tap-highlight-color:rgba(235,192,110,.15)}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #f5ce84;outline-offset:5px}
.site-header{height:88px;background:#100d21;border-bottom:1px solid #ebc06e33}.header-inner{gap:25px}.brand{font-size:17px;letter-spacing:2px;gap:14px}.brand-key{width:40px;height:44px;object-fit:contain;filter:drop-shadow(0 0 7px #ebc06e26)}.brand small{display:block;color:var(--gold);font:9px/1.8 'Segoe UI',sans-serif;letter-spacing:3px;font-weight:600}.site-header nav{gap:25px;font-size:13px;color:#dfd1e7}.site-header nav a{min-height:44px;display:flex;align-items:center}.nav-discord{border-radius:2px;border-color:#ebc06e6b;padding:9px 18px;gap:8px}#menu-toggle{min-height:44px;border-radius:2px}
.hero{min-height:642px;background:#151125;align-items:center;border-bottom:1px solid #ebc06e33}.hero-art{opacity:1;object-position:center center}.hero:after{background:linear-gradient(90deg,#100d21f7 0%,#100d21ee 25%,#100d21b5 40%,#100d2130 65%,transparent 85%),linear-gradient(0deg,#100d21,transparent 30%)}.hero-content{max-width:590px;padding:76px 0 104px}.hero .eyebrow{color:#f0cb8a}.eyebrow{font-size:10px;letter-spacing:2.5px;color:var(--gold);line-height:1.5}.eyebrow:before{width:24px;background:var(--gold)}.hero h1{font-size:clamp(56px,6.25vw,86px);letter-spacing:-3px;line-height:1.03;margin:24px 0}.hero h1 em{color:var(--gold);font-weight:400}.hero-tagline{font-style:normal;font-size:22px;color:#f6e4c9;margin-bottom:16px}.hero-copy{font-size:15px;line-height:1.8;max-width:420px;color:#d4c9df}.actions{gap:12px;margin-top:26px}.button{border-radius:2px;min-height:48px;padding:12px 22px;gap:18px;border-color:#f7ead755;font-size:13px;transition:background .18s,border-color .18s}.button:hover{transform:none;background:#ffffff12;border-color:#ebc06e}.button.primary{background:var(--gold);color:#21182c;box-shadow:0 4px 24px #e7ad481f;font-weight:700}.button.primary:hover{background:#f6ce8b}.hero-note{margin-top:24px;font-size:10px;color:#c5b8cc;letter-spacing:1px}.hero-caption{position:absolute;right:max(40px,calc((100vw - 1240px)/2));bottom:30px;z-index:2;display:flex;gap:20px;color:#edd5ad;font-size:10px;letter-spacing:2px}.hero-caption span:last-child{font-family:var(--serif);font-style:italic;letter-spacing:.2px;font-size:14px}
.intro-strip{padding:21px 0;background:#151125;border-bottom:1px solid var(--line)}.strip-inner{gap:25px}.strip-title{font-size:17px;color:#e6d8c7}.strip-links{display:flex;gap:26px;align-items:center}.strip-links a{font-size:12px;color:#c9bfd8;min-height:44px;display:flex;align-items:center}
section.section{padding:76px 0}.section-head{margin-bottom:30px;align-items:end}.section-head h2,h2{font-size:38px;letter-spacing:-1px}.section-head .eyebrow{margin-bottom:12px}.subcopy{font-size:14px;color:var(--muted);line-height:1.75;margin-top:12px}.text-link{min-height:44px;display:inline-flex;align-items:center;gap:10px;font-size:13px;white-space:normal}
.projects-section{position:relative}.cards{gap:24px}.project-card{border:1px solid #ebc06e30;border-radius:3px;background:var(--panel);box-shadow:0 7px 24px #00000015;transition:border-color .2s}.project-card:hover{transform:none;border-color:#ebc06e85}.card-scene{height:178px;display:block;position:relative;overflow:hidden}.card-scene img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#100d21a0,transparent 70%)}.project-card:hover .card-scene img{transform:scale(1.035)}.scene-label{position:absolute;bottom:15px;left:25px;z-index:1;color:#f4d6a3;letter-spacing:2.5px;font-size:9px}.project-card[data-project=reawaken] .card-scene img{object-position:center 24%}.project-card[data-project=cross-road] .card-scene img{object-position:65% 40%}.project-card[data-project=companion] .card-scene img{object-position:50% 40%}.project-card[data-project=campaign-restoration] .card-scene img{object-position:50% 38%}.card-body{padding:25px 26px}.card-top{margin-bottom:14px;flex-wrap:wrap;gap:8px}.badge{font:10px/1.6 'Segoe UI',sans-serif;letter-spacing:.3px;border-color:#ebc06e4a;background:#ebc06e09;color:#f0ce94;padding:4px 10px;border-radius:2px}.project-num{font-size:9px;color:#c3b4d0;text-transform:uppercase;letter-spacing:1.8px}.card-body h3{font-size:30px;letter-spacing:-.5px}.card-body p{font-size:13px;color:#c9bbd7;line-height:1.8;margin:13px 0 21px;min-height:47px}.card-footer{font-size:10px;border-color:#ebc06e25;align-items:center;color:#bdadcb;padding-top:16px;min-height:50px}.card-footer a{font-size:12px;min-height:44px;display:inline-flex;align-items:center;gap:10px;flex-shrink:0;color:#f0c87e}
.guide-section{background:#161226;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.guide-band{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.guide-band h2{margin-top:18px}.guide-band .subcopy{max-width:385px}.guide-paths a{display:flex;align-items:center;gap:20px;border-bottom:1px solid #ebc06e33;padding:21px 0;min-height:96px}.guide-paths a:first-child{border-top:1px solid #ebc06e33}.guide-paths a>span{color:var(--gold);font:17px var(--serif)}.guide-paths strong{font-weight:500;font-size:15px}.guide-paths small{display:block;font-size:11px;color:#c1b5d2;margin-top:3px}.guide-paths b{margin-left:auto;font-weight:400;color:var(--gold);font-size:19px}
.town-invitation{height:430px;position:relative;overflow:hidden;display:flex;align-items:center;background:#131020}.town-invitation>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 40%}.town-invitation:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#100d21ee 0%,#100d21c9 38%,#100d2145 70%,#100d2120),linear-gradient(0deg,#100d2170,transparent)}.town-invitation .wrap{z-index:1;position:relative}.town-copy{max-width:485px}.town-copy h2{font-size:44px;margin-top:17px}.town-copy p{font-size:14px;color:#d4c8df;max-width:450px}.town-note{display:block;margin-top:13px;font-size:10px;color:#cebcd7}
.updates-section{background:#100d21}.update-row{grid-template-columns:170px 1fr 44px;gap:32px;padding:27px 0;border-color:#ebc06e25}.update-row .date{font-size:10px;color:#bbacce;line-height:1.8}.update-row h3{font-size:24px}.update-row p{color:#c1b5d2;font-size:13px}.update-row .arrow{min-width:44px;min-height:44px;display:grid;place-items:center;border:1px solid #ebc06e33;border-radius:2px}
.community-banner{background:#1b1730;border:1px solid #ebc06e40;border-radius:3px;padding:40px}.community-banner h2{font-size:34px;margin-top:14px}.community-banner p{font-size:13px;color:#c1b5d2}.community-banner .button{width:100%}.footer{background:#0c0a18;border-color:#ebc06e33;padding:40px 0 28px;color:#b7a9c3}.footer .brand{font-size:13px;letter-spacing:1.7px}.footer .brand-mark{font-size:27px}.footer-links{gap:20px;align-items:center}.footer-links a{min-height:44px;display:inline-flex;align-items:center}.footer-bottom{margin-top:20px;align-items:start;flex-wrap:wrap;font-size:10px;gap:16px}.footer-bottom p{max-width:640px;color:#b7a9c3;line-height:1.8}.footer-credit{white-space:nowrap}.cursor-toggle{background:transparent;border:1px solid #ebc06e3a;border-radius:2px;color:#c6b6d2;min-height:44px;padding:8px 12px;font-size:11px}
.page-hero{position:relative;background:linear-gradient(90deg,#100d21eb,#100d2199),url('/assets/town-second.webp') center 45%/cover;border-color:#ebc06e44;padding:50px 0 42px}.page-hero h1{font-size:clamp(38px,4.6vw,64px);letter-spacing:-1.6px;line-height:1.1;margin:18px 0}.page-hero p{max-width:670px;color:#d4c8df;font-size:15px}.breadcrumb{margin-bottom:24px;color:#c8b9d3;line-height:1.8}.breadcrumb a{display:inline-flex;min-height:44px;align-items:center;color:#f2d2a1}.page-content{padding:40px 0 76px}.filter-bar{align-items:end;margin-bottom:20px;gap:14px}.filters{gap:7px}.filters button{border-radius:2px;min-height:44px;padding:8px 17px;font-size:12px;border-color:#ebc06e3a;color:#d5c6df}.filters button[aria-pressed=true]{background:#ebc06e;color:#22182f}.search-label{font-size:11px;gap:10px}.search-label input{min-height:44px;background:#1b1730;border-color:#ebc06e44;max-width:220px;font-size:13px}.result{color:#c1b5d2;margin:14px 0 20px}.guide-card{border-color:#ebc06e33;background:#1b1730;border-radius:3px;padding:28px;display:flex;flex-direction:column;align-items:start}.guide-card h2{font-size:28px;margin-top:18px}.guide-card p{line-height:1.8;color:#c1b5d2}.guide-card>.button{margin-top:auto}.guide-card .actions{margin-top:12px}.callout{border-color:#ebc06e;background:#1b1730}.detail-layout{grid-template-columns:minmax(0,1fr) 290px;gap:55px}.prose h2{font-size:30px;letter-spacing:-.6px}.prose h3{font-size:22px}.prose p,.prose li{font-size:15px;line-height:1.9;color:#cfc1dd}.prose a{color:#efc984}.aside{border-color:#ebc06e44;background:#1b1730;border-radius:3px;position:sticky;top:25px}.aside .button{min-height:48px;padding:12px}.aside p{color:#c1b5d2}.facts{gap:16px}.fact,.feature-list li{border-color:#ebc06e33}.fact p{font-size:13px}.empty-screens{border-color:#ebc06e44;color:#bdaecd}.notfound .eyebrow{display:block}
@media(hover:hover) and (pointer:fine){
 html:not(.native-cursor){cursor:var(--keyblade-cursor,url('/assets/cursors/cursor-kingdom-key-48.2de0ceab0d1c.png') 2 4),auto}
 html:not(.native-cursor) a,html:not(.native-cursor) button,html:not(.native-cursor) summary{cursor:var(--keyblade-cursor,url('/assets/cursors/cursor-kingdom-key-48.2de0ceab0d1c.png') 2 4),pointer}
 p,h1,h2,h3,li,code,pre{cursor:text}
 input,textarea,[contenteditable=true]{cursor:text}
 input[type=checkbox],input[type=radio],select{cursor:auto}
 [disabled],button[disabled]{cursor:not-allowed!important}
 [draggable=true]{cursor:grab!important}
 [draggable=true]:active{cursor:grabbing!important}
}
@media(hover:none),(pointer:coarse){.cursor-toggle{display:none}}
@media(min-width:1400px){.hero{min-height:655px}.hero-content{padding-top:74px}}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.brand{font-size:14px;letter-spacing:1.5px}.site-header nav{gap:17px}.hero h1{font-size:72px}.guide-band{gap:45px}.hero-caption{right:24px}.detail-layout{gap:30px;grid-template-columns:minmax(0,1fr) 260px}.footer-top{gap:16px}.footer-links{gap:13px}.card-footer{flex-wrap:wrap;gap:3px}.card-footer a{margin-left:auto}}
@media(max-width:780px){.site-header{height:76px}#menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:75px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:12px 24px;background:#171226;border-bottom:1px solid #ebc06e66;box-shadow:0 20px 40px #0008}.site-header nav.open{display:flex}.site-header nav a{padding:12px;min-height:48px}.nav-discord{margin-top:8px}.hero{min-height:615px}.hero-content{max-width:560px;padding:62px 0 110px}.hero-art{object-position:58% center}.hero:after{background:linear-gradient(90deg,#100d21eb,#100d21ac 50%,#100d2135),linear-gradient(0deg,#100d21,transparent 50%)}.hero h1{font-size:65px}.hero-copy{max-width:365px}.hero-caption{bottom:27px;font-size:9px;gap:12px}.strip-inner{align-items:start;flex-direction:column;gap:3px}.strip-links{gap:24px}.cards{gap:19px}.card-scene{height:155px}.card-body{padding:22px}.card-body h3{font-size:27px}.card-top{min-height:48px;align-items:start;flex-direction:column}.card-body p{min-height:95px}.section-head h2,h2{font-size:33px}.guide-band{grid-template-columns:1fr;gap:25px}.guide-band h2 br{display:none}.guide-band .subcopy{max-width:550px}.town-invitation{height:420px}.town-copy h2{font-size:39px}.town-invitation>img{object-position:65% center}.town-invitation:after{background:linear-gradient(90deg,#100d21ee,#100d2190)}.detail-layout{grid-template-columns:1fr}.aside{position:static;order:-1}.footer-top{flex-direction:column}.footer-links{gap:13px 20px}.community-banner{grid-template-columns:1fr;gap:14px}.community-banner .button{width:auto}.community-banner p{max-width:520px}}
@media(max-width:560px){.wrap{width:calc(100% - 36px)}.brand{font-size:13px;letter-spacing:1.7px;gap:10px}.brand-key{width:31px;height:36px}.brand small{font-size:8px}.hero{min-height:660px;align-items:start}.hero-content{padding:54px 0 127px}.hero h1{font-size:61px;letter-spacing:-2px;margin:20px 0}.hero-tagline{font-size:21px}.hero-copy{font-size:14px;max-width:330px}.hero-art{object-position:55% center;opacity:1}.hero:after{background:linear-gradient(0deg,#100d21 0%,#100d21a6 40%,#100d21c7 75%,#100d21bd),linear-gradient(90deg,#100d2165,transparent)}.hero .actions{display:flex;flex-direction:column;align-items:start;gap:10px}.hero .button{min-width:220px;justify-content:space-between}.hero-note{max-width:270px;line-height:1.8;margin-top:18px}.hero-caption{right:18px;left:18px;justify-content:space-between;gap:12px;font-size:8px;bottom:26px}.hero-caption span:last-child{font-size:12px}.intro-strip{padding:16px 0}.strip-title{font-size:15px}.strip-links{gap:18px;flex-wrap:wrap}.strip-links a{font-size:11px}section.section{padding:52px 0}.section-head{flex-direction:column;align-items:start;gap:4px;margin-bottom:23px}.section-head h2,h2{font-size:32px}.section-head .text-link{margin-top:3px}.cards,.guide-grid{grid-template-columns:1fr;gap:20px}.card-scene{height:160px}.card-body{padding:23px}.card-top{min-height:0;flex-direction:row;align-items:center}.card-body h3{font-size:28px}.card-body p{min-height:0;font-size:13px}.card-footer{flex-wrap:wrap}.card-footer a{margin-left:0}.card-footer > span{width:100%}.guide-paths a{gap:16px;padding:20px 0}.guide-paths strong{font-size:14px}.town-invitation{height:465px}.town-copy h2{font-size:37px}.town-copy p{font-size:14px;line-height:1.8}.update-row{grid-template-columns:1fr 44px;gap:12px 16px;padding:23px 0}.update-row .date{grid-column:1/-1}.update-row .arrow{grid-column:2;grid-row:2}.update-row h3{font-size:23px}.update-row p{font-size:13px}.community-banner{padding:27px}.community-banner h2{font-size:29px}.footer{padding:33px 0}.footer-bottom{flex-direction:column;gap:13px}.footer-links{gap:8px 17px}.page-hero{padding:24px 0 30px}.page-hero h1{font-size:41px;margin-top:18px}.page-hero p{font-size:14px}.breadcrumb{margin-bottom:12px;font-size:10px}.page-content{padding:30px 0 52px}.filter-bar{gap:17px}.filters{gap:7px}.filters button{padding:8px 14px}.search-label{width:100%}.search-label input{max-width:none;min-width:0;width:100%}.detail-layout{gap:30px}.prose p,.prose li{font-size:14px}.prose h2{font-size:28px}.facts,.feature-list{grid-template-columns:1fr}.guide-card{padding:25px}.guide-card .actions{flex-direction:column;width:100%}.guide-card .button{width:100%}.aside .button{width:100%}}
@media(max-width:360px){.hero h1{font-size:54px}.brand{font-size:11px;letter-spacing:1.4px}.hero-caption{letter-spacing:1.4px}.card-body{padding:20px}.badge{font-size:9px}.project-num{font-size:8px}.page-hero h1{font-size:37px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card-scene img{transition:none}.project-card:hover .card-scene img{transform:none}}

.brand{min-height:44px}.filters button{min-width:44px}.card-body h3 a{display:inline-flex;align-items:center;min-height:44px}.nojs-nav{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:center;padding:12px 18px;background:#1b1730}.nojs-nav a{display:inline-flex;align-items:center;min-height:44px;color:#ebc06e}
@media(max-width:780px){html:not(.js) #menu-toggle{display:none}}

.card-footer a{white-space:nowrap}

