:root{color-scheme:dark;--ink:#0b1015;--gold:#d4ad69;--paper:#e9e1d1;--muted:#a9a9a5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--ink);color:var(--paper);font-family:'Segoe UI',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #f8d68e;outline-offset:5px}button:disabled{cursor:not-allowed;opacity:.65}.skip{position:absolute;top:-80px;z-index:100;background:#111;padding:15px}.skip:focus{top:0}.game-header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 3vw;gap:25px;background:#0b1015f5;border-bottom:1px solid #d4ad6933;position:sticky;top:0;z-index:40}.brand{flex-shrink:0}.brand img{width:145px;height:83px;object-fit:contain}.game-header nav{display:flex;gap:clamp(14px,2.4vw,38px);height:100%;align-items:center}.game-header nav a,.account-nav>a{font-size:11px;font-weight:750;letter-spacing:1.6px;white-space:nowrap}.game-header nav a{height:100%;display:flex;align-items:center;border-bottom:2px solid transparent}.game-header nav a:hover{color:var(--gold);border-bottom-color:var(--gold)}.account-nav{display:flex;gap:24px;align-items:center}.gold-button,.outline-button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:21px 30px;font-size:11px;font-weight:800;letter-spacing:1.7px;border:1px solid var(--gold);text-transform:uppercase}.gold-button{color:#221a0e;background:linear-gradient(130deg,#f6df9f,#c79745);clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px)}.gold-button:hover{background:#f6df9f}.gold-button.compact{padding:16px 22px}.outline-button{color:#efe7d9;background:#10151b66;border-color:#d4ad6970}.outline-button:hover{background:#d4ad6920}.kicker{font-size:10px;font-weight:650;letter-spacing:3px;color:var(--gold);text-transform:uppercase;line-height:1.6}h1,h2,h3,p{margin-top:0}h2{font:500 clamp(38px,4.5vw,70px)/1.08 Georgia,serif;letter-spacing:-2px}p{line-height:1.75}.hero{height:calc(100svh - 94px);min-height:660px;position:relative;display:grid;place-items:center;overflow:hidden;isolation:isolate}.hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(0deg,#0b1015,transparent 50%,#0b10154d),linear-gradient(90deg,#070b1370,#070b1340)}.hero-content{text-align:center;padding:20px;max-width:900px;text-shadow:0 3px 20px #000}.hero-logo{width:min(520px,70vw);height:245px;object-fit:contain;filter:drop-shadow(0 8px 22px #0008)}.hero h1{font:500 clamp(20px,2.2vw,34px) Georgia,serif;letter-spacing:8px;margin:0 0 20px}.hero-content>p:not(.kicker):not(.availability){font-size:16px;color:#eee9df}.hero-actions,.gateway-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:26px}.availability{font-size:9px;letter-spacing:2px;color:#d2c3a7;margin-top:22px}.scroll-invite{position:absolute;bottom:24px;font-size:9px;letter-spacing:3px;display:flex;align-items:center;gap:20px}.scroll-invite span{font-size:24px}.motion-toggle{position:absolute;right:24px;bottom:25px;color:#d6c5a3;border:1px solid #d4ad6950;background:#0b1015a0;padding:10px;font-size:10px}.hero-number{position:absolute;left:30px;bottom:30px;color:var(--gold);font:26px Georgia}.hero-number span{font:9px 'Segoe UI';letter-spacing:2px;margin-left:14px}.class-stage{padding-top:75px;background:#eae4d7;color:#20272c}.chapter-title{max-width:1260px;padding:0 35px;margin:auto;display:flex;align-items:start;justify-content:space-between;gap:30px}.chapter-title>span{font-size:10px;letter-spacing:3px;color:#856233;padding-top:10px}.chapter-title h2{max-width:650px;margin:0 0 45px}.class-tabs{max-width:1260px;margin:auto;display:flex;justify-content:space-between;padding:0 35px;gap:15px}.class-tabs button{color:#6e685d;background:transparent;border:0;border-bottom:3px solid transparent;padding:18px 20px 22px;min-width:120px;font:28px Georgia}.class-tabs small{display:block;font:10px 'Segoe UI';letter-spacing:1px;margin-top:8px}.class-tabs button[aria-selected=true]{color:#5f3d12;border-color:#9b6d2e;background:linear-gradient(0deg,#c7ae7c40,transparent)}.class-panel{position:relative;min-height:680px;isolation:isolate;color:#f1e8d8;overflow:hidden}.class-panel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;z-index:-3}.class-veil{position:absolute;inset:0;background:linear-gradient(90deg,#0a1018fa 2%,#0a1018d9 28%,#0a101824 65%),linear-gradient(0deg,#0b1015,transparent 30%);z-index:-2}.class-copy{padding:95px max(35px,calc((100vw - 1200px)/2));width:100%}.class-copy>p{max-width:350px;color:#c3c5c7;font-size:15px}.class-copy>.kicker{font-size:9px;color:var(--gold)}.class-copy h3{font:500 clamp(62px,7vw,104px)/.95 Georgia,serif;letter-spacing:-4px;max-width:500px;margin:25px 0}.combat-traits{display:flex;gap:9px;flex-wrap:wrap;max-width:370px;margin:25px 0}.combat-traits span{font-size:10px;border:1px solid #d4ad6950;color:#d9c59e;padding:8px 11px}.text-link{display:inline-block;font-size:10px;font-weight:750;letter-spacing:1.7px;color:var(--gold);padding:16px 0;border-bottom:1px solid #d4ad6950}.art-label{position:absolute;bottom:25px;right:30px;font-size:8px;letter-spacing:2px;color:#c4bdad}.boss-stage{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:105px max(35px,calc((100vw - 1200px)/2));background:radial-gradient(ellipse at 90% 40%,#27302d,#0b1015 70%)}.boss-intro h2{margin:28px 0}.boss-intro h2 em{color:var(--gold);font-weight:400}.boss-intro>p:not(.kicker){color:#9fa6a7;font-size:14px}.boss-tabs{margin-top:40px;display:grid}.boss-tabs button{padding:23px 15px;display:flex;align-items:center;gap:25px;border:0;border-top:1px solid #d4ad6930;background:transparent;color:#8c8e8c;font-size:11px}.boss-tabs button span{flex:1;text-align:left;letter-spacing:2px}.boss-tabs button[aria-selected=true]{background:linear-gradient(90deg,#d4ad6925,transparent);color:#f5d796;border-left:2px solid var(--gold)}.boss-frame{position:relative;padding:22px;background:#080d12;border:1px solid #d4ad692e;box-shadow:0 25px 90px #0007}.boss-frame img{width:100%;height:390px;display:block;object-fit:contain}.corner{position:absolute;width:35px;height:35px;border-color:#c7a367}.tl{left:-1px;top:-1px;border-top:2px solid;border-left:2px solid}.br{right:-1px;bottom:-1px;border-right:2px solid;border-bottom:2px solid}.boss-caption{margin-top:24px}.boss-caption>p:not(.kicker){font-size:13px;color:#aab0b1}.boss-caption>a{font-size:9px;color:#969b98}.gateway{padding:100px 25px;text-align:center;background:linear-gradient(#0a1018b0,#0a1018ed),url('assets/class-dl.png') center 40%/cover}.gateway h2{margin:25px 0}.gateway>p{color:#bcbdbb}.gateway>.kicker{color:var(--gold)}.small{font-size:11px;margin-top:24px}.dispatches,.guides{padding:80px max(35px,calc((100vw - 1200px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;background:#eee8dc;color:#252c30}.dispatches .kicker,.guides .kicker{color:#8f662b}.section-heading h2,.guides h2{font-size:44px}.dispatch-list article{display:flex;gap:30px;padding:25px 0;border-top:1px solid #c4b79f}.dispatch-list time{font-size:15px;white-space:nowrap;color:#866433}.dispatch-list time span{display:block;font-size:11px;margin-top:8px}.dispatch-list h3{font:500 23px Georgia;margin-bottom:12px}.dispatch-list p:not(.kicker){font-size:13px;color:#626566}.guides{padding-top:30px}.guide-list details{border-bottom:1px solid #c4b79f;padding:22px 0}.guide-list summary{font-size:15px;cursor:pointer}.guide-list p{color:#626566;font-size:13px;margin-top:16px}.guides .text-link{color:#855d25}footer{padding:40px 25px;text-align:center;border-top:1px solid #d4ad6933}footer img{object-fit:contain}footer p{font-size:10px;letter-spacing:2px;margin:10px}footer small{display:block;color:#858d91;font-size:10px}footer a{display:inline-block;font-size:9px;color:var(--gold);margin-top:25px}dialog{width:min(1000px,95vw);padding:20px;border:1px solid #ad854a;background:#0b1015;color:var(--paper)}dialog::backdrop{background:#000d;backdrop-filter:blur(8px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between}.dialog-heading h2{font:14px 'Segoe UI';letter-spacing:2px}.dialog-heading button{background:transparent;color:#eee;border:0;padding:12px}dialog video{width:100%;max-height:75vh}dialog p{font-size:10px;color:#90989b}@media(max-width:1100px){.game-header{height:auto;min-height:90px;flex-wrap:wrap;gap:10px;padding:8px 20px}.game-header nav{order:3;width:100%;justify-content:space-between;padding:15px 0}.brand img{height:65px;width:125px}.game-header nav a{font-size:10px}.boss-stage{gap:40px;padding:70px 30px}.dispatches,.guides{gap:35px;padding-inline:30px}.hero{height:calc(100svh - 130px)}.hero-logo{height:200px}.class-copy{padding:90px 35px}}@media(max-width:650px){html{scroll-padding-top:20px}.game-header{position:relative}.account-nav{gap:14px}.account-nav>a{font-size:9px}.gold-button.compact{padding:12px}.game-header nav{gap:8px}.hero{min-height:640px}.hero h1{font-size:20px;letter-spacing:3px}.hero-logo{width:95%;height:220px}.hero-actions{gap:12px}.gold-button,.outline-button{padding:17px 20px;font-size:10px}.hero-number{display:none}.motion-toggle{bottom:70px;right:15px}.chapter-title{display:block;padding:0 22px}.chapter-title h2{margin-top:20px;font-size:42px}.class-tabs{padding:0 10px;gap:0;overflow:auto}.class-tabs button{min-width:20%;padding:18px 5px;font-size:23px}.class-tabs small{font-size:8px;letter-spacing:0}.class-panel{min-height:740px}.class-panel>img{height:410px;object-position:center top}.class-veil{background:linear-gradient(0deg,#0b1015 40%,#0b1015cc 50%,transparent 78%)}.class-copy{padding:350px 25px 50px}.class-copy h3{font-size:58px;letter-spacing:-2px;margin:15px 0}.class-copy>p{max-width:100%}.art-label{bottom:15px;right:20px}.boss-stage{grid-template-columns:1fr;gap:35px;padding:65px 24px}.boss-frame img{height:320px}.boss-intro h2{font-size:48px}.boss-tabs{margin-top:25px}.gateway{padding:70px 20px}.gateway h2{font-size:40px}.dispatches,.guides{grid-template-columns:1fr;gap:10px;padding:50px 24px}.guides{padding-top:10px}.dispatch-list article{gap:20px}.dispatches h2,.guides h2{font-size:37px}.scroll-invite{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Class portraits are the selection controls, with names always visible. */
.class-stage{padding-top:42px;background:radial-gradient(ellipse at 50% 0,#263140,#111922 75%);color:#eee4d3}.chapter-title{display:block;text-align:center}.chapter-title>span{color:#c4a46e;display:block;padding:0}.chapter-title h2{max-width:none;font:500 clamp(28px,3vw,44px)/1.15 Georgia,serif;letter-spacing:-1px;margin:14px 0 30px}.chapter-title h2 br{display:none}.class-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;padding:0 35px 28px;max-width:1370px;overflow:visible}.class-tabs button{position:relative;display:block;min-width:0;width:100%;padding:0;border:1px solid #c4a46e40;background:#0b1119;color:#e8dfcf;overflow:hidden;text-align:left;box-shadow:0 10px 24px #0003;transition:transform .2s,border-color .2s}.class-tabs button>img{display:block;width:100%;height:185px;object-fit:cover;object-position:57% 30%;filter:saturate(.8) brightness(.8);transition:filter .2s,transform .25s}.class-tab-label{display:block;padding:14px 16px;font:24px Georgia,serif;background:linear-gradient(120deg,#1e2936,#0e1620);border-top:1px solid #c4a46e25}.class-tabs small{font-size:10px;letter-spacing:.6px;color:#b7bbc0;margin-top:6px}.class-tabs button[aria-selected=true]{border-color:#e9c47e;color:#ffe1a1;background:#182433;box-shadow:0 0 0 1px #d4ad6930,0 10px 32px #0005}.class-tabs button[aria-selected=true] img,.class-tabs button:hover img{filter:saturate(1.05) brightness(1.05);transform:scale(1.035)}.class-tabs button[aria-selected=true] .class-tab-label{background:linear-gradient(120deg,#443622,#1a222a);border-top-color:#d4ad6970}.class-tabs button:hover{transform:translateY(-4px);border-color:#d4ad69}.class-tabs button:focus-visible{outline:3px solid #f8d68e;outline-offset:4px}.class-tabs button[data-class=sm]>img{object-position:50% 25%}.class-tabs button[data-class=elf]>img{object-position:50% 25%}.class-tabs button[data-class=dl]>img{object-position:50% 25%}@media(max-width:900px){.class-tabs{gap:10px;padding-inline:20px}.class-tabs button>img{height:150px}.class-tab-label{padding:12px 10px;font-size:22px}.class-tabs small{font-size:9px;letter-spacing:0}}@media(max-width:600px){.class-stage{padding-top:30px}.chapter-title{padding:0 20px}.chapter-title h2{font-size:29px;margin-bottom:23px}.class-tabs{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 18px 25px;gap:12px}.class-tabs button>img{height:155px}.class-tabs button:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.class-tabs button:last-child>img{height:130px}.class-tabs button:last-child .class-tab-label{display:flex;flex-direction:column;justify-content:center}.class-tab-label{font-size:22px}.class-tabs small{font-size:10px}}
.class-tabs button[data-class=sm]>img,.class-tabs button[data-class=mg]>img{object-position:0% center}.class-tabs button[data-class=elf]>img,.class-tabs button[data-class=dl]>img{object-position:100% center}#classes{scroll-margin-top:45px}@media(max-width:1100px){#classes{scroll-margin-top:65px}}@media(max-width:650px){#classes{scroll-margin-top:0}}
/* Fantasy finishes: inset metal frames, class-color auras and restrained movement. */
.class-stage{--aura:218,167,78;background:radial-gradient(ellipse at 50% 15%,rgba(var(--aura),.13),transparent 60%),#0d151f;position:relative}.chapter-title h2{margin-bottom:12px;text-shadow:0 3px 25px #0006}.selection-hint{font-size:12px;color:#a6adb6;margin:0 0 28px;letter-spacing:.4px}.chapter-title>span:before,.chapter-title>span:after{content:'— ✦ —';color:#846a43;margin:0 16px;letter-spacing:3px}.class-tabs{padding-top:10px;padding-bottom:20px;gap:20px}.class-tabs button{border:1px solid #61533d;background:linear-gradient(130deg,#2e2c26,#0d1723);box-shadow:0 15px 30px #0007,inset 0 0 0 3px #10161b;isolation:isolate;overflow:hidden;border-radius:2px;transition:transform .25s,box-shadow .25s,border-color .25s}.class-tabs button:before{content:'';position:absolute;inset:5px;border:1px solid #bea57444;z-index:2;pointer-events:none;clip-path:polygon(0 0,25% 0,25% 1%,1% 1%,1% 25%,0 25%,0 0,100% 0,100% 25%,99% 25%,99% 1%,75% 1%,75% 0,100% 0,100% 100%,75% 100%,75% 99%,99% 99%,99% 75%,100% 75%,100% 100%,0 100%,0 75%,1% 75%,1% 99%,25% 99%,25% 100%,0 100%)}.class-tabs button:after{content:'✦';position:absolute;right:12px;bottom:18px;font-size:15px;color:#877551;opacity:.5}.class-tabs button[aria-selected=true]:after{color:#ffe1a4;opacity:1;text-shadow:0 0 16px #ffc75a}.class-tabs button[data-class=bk]{--card-aura:233,157,65}.class-tabs button[data-class=sm]{--card-aura:159,116,255}.class-tabs button[data-class=elf]{--card-aura:83,211,160}.class-tabs button[data-class=mg]{--card-aura:108,169,255}.class-tabs button[data-class=dl]{--card-aura:245,207,97}.class-tabs button[aria-selected=true]{border-color:rgba(var(--card-aura),.9);box-shadow:0 0 28px rgba(var(--card-aura),.22),0 15px 32px #0007;transform:translateY(-7px)}.class-tabs button:hover{box-shadow:0 0 30px rgba(var(--card-aura),.2),0 18px 30px #0007;transform:translateY(-7px)}.class-tabs button img{mask-image:linear-gradient(#000 80%,transparent);margin-bottom:-12px;height:200px}.class-tab-label{padding:21px 17px 18px;border-top:0;background:transparent}.class-tabs button[aria-selected=true] .class-tab-label{background:linear-gradient(0deg,rgba(var(--card-aura),.14),transparent);border-top:0}.rune-divider{display:flex;align-items:center;justify-content:center;gap:20px;padding:8px 0 20px;color:#c4a36b;max-width:900px;margin:auto}.rune-divider:before,.rune-divider:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,#a5814c80)}.rune-divider:after{transform:rotate(180deg)}.rune-divider span{font-size:20px;text-shadow:0 0 20px #d4ad6970}.class-panel{border-top:1px solid #d4ad6920}.class-copy h3{color:#f3e9d7;text-shadow:0 0 50px rgba(var(--aura),.25)}.class-panel:after{content:'';position:absolute;width:500px;height:500px;right:5%;top:80px;border:1px solid rgba(var(--aura),.15);border-radius:50%;box-shadow:0 0 0 18px rgba(var(--aura),.025),0 0 0 19px rgba(var(--aura),.08),inset 0 0 70px rgba(var(--aura),.07);pointer-events:none;z-index:-1}.class-copy>.class-oath{color:#e2c892;font:italic 17px Georgia;max-width:400px;border-left:2px solid #a17c40;padding:8px 0 8px 16px;margin-top:25px}.boss-tabs button .boss-rune{flex:none;color:#8a7150;font-size:20px}.boss-tabs button[aria-selected=true] .boss-rune{color:#eed29e;text-shadow:0 0 16px #d2a656}.boss-tabs button{transition:background .2s,padding-left .2s}.boss-tabs button:hover{padding-left:23px;color:#e9d1a7}.boss-frame{background:radial-gradient(ellipse,#29302e,#0a0f15 75%);box-shadow:0 0 60px #8e4a2310,0 25px 90px #0007}.boss-frame:after{content:'';position:absolute;inset:10px;border:1px solid #cda76818;pointer-events:none}.boss-caption #boss-challenge{width:100%;margin-bottom:22px;font-size:10px;background:linear-gradient(120deg,#49361f40,#0b1015);transition:box-shadow .2s}.boss-caption #boss-challenge:hover{box-shadow:0 0 25px #bd86451f}.boss-caption #boss-lore{border-left:2px solid #c4a36b;padding:8px 15px;margin-bottom:25px;color:#e1d4be;background:#d4ad690a}.hero-sigil{position:absolute;left:35px;bottom:28px;color:#cfac6c;font-size:26px;text-shadow:0 0 22px #e3a856}.gold-button{position:relative;overflow:hidden;box-shadow:0 8px 30px #bc88451a;transition:filter .2s,box-shadow .2s}.gold-button:not(:disabled):hover{filter:brightness(1.1);box-shadow:0 0 30px #dba8544d}.gold-button:not(:disabled):after{content:'';position:absolute;inset:-50% -100%;background:linear-gradient(110deg,transparent 42%,#fff8 50%,transparent 58%);transform:translateX(-45%);transition:transform .65s;pointer-events:none}.gold-button:hover:after{transform:translateX(45%)}.hero:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#e7b863b0 1px,transparent 2px),radial-gradient(circle,#a2c9e680 1px,transparent 2px);background-size:230px 260px,340px 290px;background-position:30px 20px,80px 110px;opacity:.35;animation:embers 24s linear infinite;z-index:-1}.effects-toggle{display:block;margin:22px auto 0;border:1px solid #75644366;background:transparent;color:#a8a397;font-size:10px;padding:9px 14px}.game-header nav a.is-current{color:#e3c083;border-bottom-color:#d4ad69}body.effects-off *,body.effects-off *:before,body.effects-off *:after{animation:none!important;transition:none!important}.effects-off .hero:before{display:none}@keyframes embers{to{background-position:70px -240px,40px -180px}}@media(max-width:900px){.class-tabs{gap:12px}.class-tabs button img{height:170px}.class-tab-label{font-size:22px;padding:18px 12px}.class-tabs button:after{right:10px;font-size:12px}}@media(max-width:600px){.chapter-title>span:before,.chapter-title>span:after{margin:0 8px}.class-tabs button img{height:165px}.class-tabs button:last-child img{height:145px}.class-tabs button:last-child .class-tab-label{padding:20px}.hero-sigil{display:none}.class-panel:after{width:260px;height:260px;right:5%;top:70px}.selection-hint{font-size:11px;padding-inline:10px}}@media(prefers-reduced-motion:reduce){.hero:before{animation:none;display:none}}
