:root{--bg:#101412;--panel:#191e1a;--panel2:#20251e;--ink:#e9e4d9;--muted:#a8aea3;--gold:#c1a172;--line:#384036;--ember:#bc663f;--green:#879b78;--blue:#94b9c9;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}::selection{background:#7b6341;color:#fff}img{display:block;max-width:100%}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.12}p{color:var(--muted)}h1{font-size:clamp(2.8rem,6vw,5.3rem)}h2{font-size:clamp(2rem,3.4vw,3.2rem)}h3{font-size:1.6rem}h4{font-size:1.25rem}.wrap{width:min(1280px,calc(100% - 96px));margin:auto}.header{height:92px;display:flex;align-items:center;gap:38px;padding:0 48px;background:rgba(16,20,18,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center;gap:12px;font:20px/1 var(--serif);letter-spacing:1.2px}.brand small{display:block;font:12px/1.6 var(--sans);color:var(--gold);text-align:center;letter-spacing:3px;margin-top:8px}.brand-mark{font-size:43px;color:var(--gold)}.header nav{display:flex;gap:30px;margin-left:auto}.header nav a{font-size:14px;color:var(--muted);padding:12px 0;position:relative;white-space:nowrap}.header nav a:hover,.header nav a.active{color:var(--ink)}.header nav a.active:after{content:'';height:2px;background:var(--gold);position:absolute;bottom:-14px;left:0;right:0}.edition{font-size:12px;color:var(--gold);letter-spacing:1px;border-left:1px solid var(--line);padding-left:25px;white-space:nowrap}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:var(--ink);padding:8px 12px}.skip{position:fixed;top:-100px;left:20px;background:var(--gold);color:var(--bg);padding:12px;z-index:100}.skip:focus{top:12px}.eyebrow{font:12px/1.4 var(--sans);letter-spacing:2.4px;color:var(--gold);text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 25px;border:1px solid var(--gold);background:var(--gold);color:#151810;font-size:14px;font-weight:600;letter-spacing:.5px;transition:background .2s}.button:hover{background:#d5b98c}.button.ghost{background:transparent;color:var(--ink);border-color:#787964}.button.ghost:hover{background:#ffffff09}.hero{min-height:640px;position:relative;isolation:isolate;display:flex;align-items:center;border-bottom:1px solid var(--line);background:#101412}.hero-image{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,14,11,.96),rgba(9,14,11,.64) 40%,rgba(9,14,11,.04) 75%),linear-gradient(0deg,#101412,transparent 35%);z-index:-1}.hero-content{padding:70px 0 85px;max-width:670px}.hero h1{font-size:clamp(4rem,7.5vw,7.6rem);letter-spacing:-2px;margin:24px 0 13px}.hero h1 span{display:block;font-size:.55em;color:var(--gold);letter-spacing:.12em;margin-top:15px}.hero .intro{font-family:var(--serif);font-size:23px;line-height:1.45;max-width:490px;color:var(--ink)}.hero .sub{max-width:455px;margin-top:20px;font-size:15px}.hero-actions{display:flex;gap:16px;margin-top:35px}.hero-meta{display:flex;gap:35px;margin-top:38px;color:var(--muted);font-size:12px;letter-spacing:1px}.hero-meta b{color:var(--ink);display:block;font-family:var(--serif);font-size:22px;font-weight:400}.section{padding:80px 0}.section.alt{background:#151a16;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}.section-head h2{margin-top:13px}.section-head p{max-width:430px;font-size:15px}.textlink{font-size:14px;color:var(--gold);border-bottom:1px solid #75634a;padding-bottom:5px;white-space:nowrap}.lead{font-family:var(--serif);font-size:22px;line-height:1.55;color:var(--ink)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.feature{border-top:1px solid var(--gold);padding-top:25px}.feature .num{color:var(--gold);font-size:13px}.feature h3{margin:18px 0 15px}.feature p{font-size:15px}.hero-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:17px}.hero-card{min-width:0;display:block;position:relative;background:var(--panel);border-bottom:1px solid var(--line);transition:transform .2s}.hero-card:hover{transform:translateY(-5px);border-color:var(--gold)}.hero-card .art{position:relative;overflow:hidden;aspect-ratio:3/4}.hero-card .art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#171c18,transparent 60%)}.hero-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.hero-card:hover img{transform:scale(1.05)}.hero-card .hero-number{position:absolute;top:10px;left:13px;color:var(--gold);font-size:12px;text-shadow:0 2px 3px black}.hero-card .card-label{padding:5px 13px 18px}.hero-card h3{font-size:20px;line-height:1.2}.hero-card p{font-size:12px;line-height:1.5;margin-top:8px}.spread{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center}.spread-image{width:100%;aspect-ratio:16/10;object-fit:cover;border:1px solid var(--line)}.spread h2{margin:14px 0 25px}.spread p+p{margin-top:18px}.spread .button{margin-top:28px}.pill{font-size:12px;border:1px solid var(--line);color:var(--muted);padding:5px 10px;display:inline-block}.chips{display:flex;flex-wrap:wrap;gap:8px}.page-head{padding:60px 0 35px;border-bottom:1px solid var(--line);margin-bottom:36px}.page-head h1{margin:18px 0;font-size:clamp(2.8rem,5vw,4.4rem)}.page-head p{max-width:720px;font-size:17px}.breadcrumbs{font-size:13px;color:var(--muted);margin-bottom:24px;display:flex;gap:12px}.breadcrumbs a{color:var(--gold)}.page-body{padding-bottom:80px}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:30px}.filter{background:transparent;color:var(--muted);border:1px solid var(--line);padding:10px 20px;font-size:14px}.filter.active{color:var(--ink);background:var(--panel2);border-color:var(--gold)}.search{margin-left:auto;padding:10px 15px;background:var(--panel);border:1px solid var(--line);color:var(--ink);width:260px;min-height:46px}.count{font-size:13px;color:var(--muted);margin-left:12px}.catalog-heroes{grid-template-columns:repeat(4,1fr);gap:26px}.catalog-heroes .art{aspect-ratio:4/4}.catalog-heroes .card-label{padding:12px 20px 23px}.catalog-heroes h3{font-size:27px}.catalog-heroes p{font-size:14px}.hero-detail{display:grid;grid-template-columns:310px minmax(0,1fr);gap:50px;align-items:start}.hero-aside{position:sticky;top:120px}.portrait{width:100%;aspect-ratio:4/5;object-fit:cover;border:1px solid var(--line)}.hero-quote{font-family:var(--serif);font-style:italic;font-size:19px;color:var(--gold);padding:24px 0;border-bottom:1px solid var(--line)}.aside-meta{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:14px;margin-top:23px}.aside-meta small{display:block;font-size:12px;color:var(--muted);margin-bottom:3px}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:28px;overflow-x:auto}.tab{border:0;background:transparent;color:var(--muted);padding:15px 0;white-space:nowrap;font-size:14px;min-height:48px}.tab.active{color:var(--gold);border-bottom:2px solid var(--gold)}.skill{display:grid;grid-template-columns:48px minmax(0,1fr);gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.key{width:44px;height:44px;display:flex;justify-content:center;align-items:center;border:1px solid #685b43;background:#29271f;font:20px var(--serif);color:var(--gold)}.key.passive{font-size:23px}.skill h3{font-size:24px;margin-bottom:10px}.skill .original{white-space:pre-line;margin-bottom:13px;color:var(--muted);font-size:15px;line-height:1.6}.mechanic{color:var(--ink);font-size:15px}.skill-info{display:flex;gap:22px;font-size:12px;margin-top:12px;color:var(--gold);flex-wrap:wrap}.note{padding:20px 23px;border-left:2px solid var(--gold);background:var(--panel);font-size:14px;color:var(--muted);margin:25px 0}.note b{color:var(--ink)}.prose{max-width:760px}.prose p{margin-bottom:20px}.prose h2,.prose h3{margin:32px 0 18px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.stat{padding:20px;border:1px solid var(--line);background:var(--panel)}.stat small{display:block;color:var(--muted);font-size:12px}.stat b{font:29px var(--serif);display:block;margin-top:8px}.stat .growth{font-size:12px;color:var(--gold);margin-top:5px}.table-wrap{overflow-x:auto;border:1px solid var(--line);margin-top:20px}table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.55;text-align:left}th{background:var(--panel2);color:var(--gold);font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:1px}th,td{padding:14px 17px;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:0}td:first-child{color:var(--ink)}td{color:var(--muted)}.talent-row{display:grid;grid-template-columns:1fr 44px 1fr;gap:15px;align-items:stretch;margin:16px 0}.talent-choice{background:var(--panel);border:1px solid var(--line);color:var(--muted);text-align:left;padding:20px;font-size:14px;line-height:1.6}.talent-choice.selected{border-color:var(--gold);background:#29291f;color:var(--ink)}.talent-choice small{display:block;color:var(--gold);font-size:12px;margin-bottom:7px}.talent-level{align-self:center;text-align:center;color:var(--gold);font:22px var(--serif)}.talent-summary{margin-top:25px;padding:20px;border:1px solid var(--gold);font-size:14px;color:var(--ink)}.item-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.item-card{display:block;background:var(--panel);border:1px solid var(--line);padding:20px;transition:border-color .2s}.item-card:hover{border-color:var(--gold)}.item-card img{width:110px;height:100px;object-fit:cover;margin-bottom:20px;mix-blend-mode:lighten}.item-card h3{font-size:23px;margin-bottom:12px}.item-card p{font-size:14px;line-height:1.6}.item-top{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--gold);margin-bottom:14px}.item-detail{display:grid;grid-template-columns:320px 1fr;gap:60px}.item-art{width:100%;height:320px;object-fit:contain;background:var(--panel);border:1px solid var(--line)}.item-detail .lead{margin-bottom:25px}.item-detail h3{margin:30px 0 15px}.recipe{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.recipe a{padding:12px;border:1px solid var(--line);background:var(--panel);font-size:14px}.recipe .recipe-cost{padding:12px;color:var(--gold);font-size:14px}.chronicle{max-width:900px;margin:50px auto 70px}.chapter{display:grid;grid-template-columns:150px 1fr;gap:40px;border-top:1px solid var(--line);padding:35px 0}.chapter h2{font-size:34px;margin-bottom:22px}.chapter p{font-size:17px}.region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.region{padding:28px;border:1px solid var(--line);background:var(--panel)}.region h3{margin:15px 0;font-size:25px}.region p{font-size:15px}.map-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:35px;margin-top:35px;align-items:center}.map{width:100%;background:#151e19;border:1px solid var(--line)}.map .map-zone{cursor:pointer}.map .map-zone:hover circle,.map .map-zone:focus circle{stroke:#fff;stroke-width:3}.map text{font-family:var(--sans);fill:var(--ink);font-size:15px;pointer-events:none}.map .small{font-size:12px;fill:var(--muted)}.map-caption h3{margin:14px 0 18px}.map-caption p{font-size:15px}.rules-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:55px}.rule-nav{position:sticky;top:115px;align-self:start;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.rule-nav a{font-size:14px;padding:9px 20px;color:var(--muted)}.rule-nav a:hover{color:var(--gold);border-left:2px solid var(--gold)}.rule-section{padding:10px 0 55px;border-bottom:1px solid var(--line);scroll-margin-top:115px}.rule-section+.rule-section{padding-top:45px}.rule-section h2{font-size:36px;margin-bottom:20px}.rule-section h3{font-size:25px;margin:30px 0 15px}.rule-section p+p{margin-top:16px}.rule-section ul{padding-left:20px;color:var(--muted)}.rule-section li{margin:9px 0}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0}.flow div{padding:20px;background:var(--panel);border-top:1px solid var(--gold)}.flow b{display:block;font-family:var(--serif);font-size:23px;font-weight:400}.flow p{font-size:14px;margin-top:10px}.boss{padding:28px;background:var(--panel);border:1px solid var(--line);margin-top:22px}.boss .eyebrow{font-size:11px}.boss h3{margin:13px 0;font-size:30px}.boss .health{font-size:13px;color:var(--gold)}.boss .reward{border-top:1px solid var(--line);padding-top:17px;margin-top:17px;color:var(--ink);font-size:15px}.calc{background:var(--panel);border:1px solid var(--line);padding:26px;margin-top:25px}.calc-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.calc label{font-size:13px;color:var(--muted)}.calc input,.calc select{display:block;background:var(--bg);border:1px solid var(--line);color:var(--ink);padding:10px;width:100%;margin-top:9px}.calc-result{font:30px var(--serif);color:var(--gold);margin-top:23px}.gallery-piece{margin:35px 0 65px}.gallery-piece img{width:100%;border:1px solid var(--line)}.gallery-caption{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:23px 0}.gallery-caption h2{font-size:30px;margin:12px 0}.gallery-caption p{font-size:15px}.reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.reference-grid a{display:block;border:1px solid var(--line);background:var(--panel)}.reference-grid img{width:100%;aspect-ratio:1.1;object-fit:cover}.reference-grid span{display:block;padding:15px;font-size:14px;color:var(--gold)}.empty{padding:60px;text-align:center;color:var(--muted)}.footer{padding:50px 48px 30px;border-top:1px solid var(--line);background:#0c100d}.footer-brand{font-family:var(--serif);font-size:23px;letter-spacing:1px;color:var(--gold)}.footer p{font-family:var(--serif);font-size:18px;margin:12px 0 30px}.footer>div{display:flex;gap:30px;font-size:12px;color:var(--muted)}.footer>div span{margin-right:auto}.footer a:hover{color:var(--gold)}.noscript{padding:30px}.split-callout{border-top:1px solid var(--gold);padding-top:30px}.hidden{display:none!important}
.hero-quote,.gallery-piece{margin-left:0;margin-right:0}.hero-quote{margin-top:0;margin-bottom:0}.hero-detail>* ,.rules-layout>*{min-width:0}.hero-aside>*{min-width:0}
@media(min-width:1600px){.hero{min-height:720px}}
@media(max-width:1150px){.header{padding:0 28px;gap:20px}.header nav{gap:20px}.edition{display:none}.wrap{width:calc(100% - 56px)}.hero-grid{grid-template-columns:repeat(4,1fr)}.hero-grid:not(.catalog-heroes) .hero-card:nth-child(n+9){display:none}.hero-detail{grid-template-columns:260px 1fr;gap:30px}.spread{gap:35px}.item-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.header{height:76px;padding:0 22px}.brand{font-size:17px}.brand-mark{font-size:34px}.menu-toggle{display:block;margin-left:auto}.header nav{display:none;position:absolute;top:75px;left:0;right:0;padding:20px 24px;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;gap:4px}.header nav.open{display:flex}.header nav a.active:after{bottom:2px;right:auto;width:25px}.wrap{width:calc(100% - 44px)}.hero{min-height:610px}.hero:after{background:linear-gradient(90deg,rgba(9,14,11,.92),rgba(9,14,11,.58)),linear-gradient(0deg,#101412,transparent 40%)}.hero-image{object-position:65% center}.hero-content{padding:60px 0}.hero h1{font-size:5rem}.hero .intro{font-size:21px}.hero-meta{gap:25px}.section{padding:55px 0}.section-head{align-items:start;flex-direction:column;gap:20px}.feature-grid{grid-template-columns:1fr;gap:30px}.spread{grid-template-columns:1fr}.hero-grid,.catalog-heroes{grid-template-columns:repeat(3,1fr)}.hero-grid:not(.catalog-heroes) .hero-card:nth-child(n+9){display:block}.catalog-heroes h3{font-size:23px}.item-grid{grid-template-columns:repeat(2,1fr)}.region-grid{grid-template-columns:repeat(2,1fr)}.hero-detail{grid-template-columns:1fr}.hero-aside{position:static;display:grid;grid-template-columns:160px 1fr;gap:18px}.hero-aside .portrait{grid-row:1/3}.hero-quote{padding:10px 0;font-size:19px}.aside-meta{margin-top:0;gap:10px}.item-detail{grid-template-columns:1fr;gap:25px}.item-art{height:250px}.rules-layout{grid-template-columns:1fr;gap:25px}.rule-nav{position:static;flex-direction:row;overflow-x:auto;border-left:0;border-bottom:1px solid var(--line);padding-bottom:14px;gap:4px}.rule-nav a{white-space:nowrap;padding:8px 12px}.chapter{grid-template-columns:1fr;gap:16px}.map-layout{grid-template-columns:1fr}.gallery-caption{grid-template-columns:1fr;gap:10px}.page-head{padding:40px 0 25px}.footer{padding:35px 22px}.footer>div{flex-wrap:wrap;gap:18px}.footer>div span{width:100%}.flow{grid-template-columns:1fr}.reference-grid{grid-template-columns:1fr}.reference-grid img{aspect-ratio:1.2;object-fit:contain}}
@media(max-width:500px){.hero h1{font-size:clamp(3.05rem,12.3vw,4.4rem);letter-spacing:-1px}.hero-actions{flex-direction:column;align-items:start;gap:12px}.hero-meta{gap:22px}.hero-grid,.catalog-heroes{grid-template-columns:repeat(2,1fr);gap:14px}.hero-card h3{font-size:21px}.catalog-heroes .card-label{padding:9px 12px 17px}.catalog-heroes p{font-size:12px}.toolbar{gap:8px}.filter{padding:9px 12px;font-size:13px}.search{width:100%;margin:5px 0 0}.count{margin-left:auto}.item-grid{gap:12px}.item-card{padding:15px}.item-card h3{font-size:21px}.item-card p{font-size:13px}.item-card img{width:90px;height:85px}.item-top{font-size:11px}.stats-grid{grid-template-columns:repeat(2,1fr)}.talent-row{gap:8px;grid-template-columns:1fr 25px 1fr}.talent-choice{padding:13px;font-size:13px}.talent-choice small{font-size:11px}.talent-level{font-size:18px}.hero-aside{grid-template-columns:125px 1fr}.hero-quote{font-size:17px}.aside-meta{font-size:12px}.skill{grid-template-columns:36px 1fr;gap:12px}.key{width:34px;height:38px}.skill h3{font-size:22px}.region-grid{grid-template-columns:1fr}.calc-controls{grid-template-columns:1fr}.rule-section h2{font-size:31px}th,td{padding:12px;min-width:100px}.tabs{gap:21px}.note{padding:16px}.boss{padding:20px}}
@media(max-width:500px){.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.tab{text-align:left;padding:12px 0}.item-card p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
