@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#101313;--panel:#171b1b;--line:#343a37;--text:#eeeede;--muted:#a5aaa2;--gold:#d8bc78}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}header{height:92px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:12px;font:600 28px 'Barlow Condensed',sans-serif;letter-spacing:3px}.brand:first-letter{color:var(--gold)}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:2px}.header-note{font-size:9px;letter-spacing:2px;color:var(--muted)}header button{background:none;border:1px solid var(--line);padding:11px 15px;font-size:12px}header b{background:#303631;padding:3px 6px;margin-left:12px;font-size:10px}.intro{min-height:535px;position:relative;overflow:hidden;padding:70px 5% 55px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--gold);font-weight:600;position:relative;z-index:1}.eyebrow i{display:inline-block;width:5px;height:5px;background:var(--gold);margin-right:8px;vertical-align:2px}h1{font:500 clamp(56px,6.3vw,92px)/.99 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;letter-spacing:-1.5px;position:relative;z-index:1;margin:24px 0}h1 em{font-style:normal;color:var(--gold)}.intro>p{font-size:14px;line-height:1.9;color:#b9bdb3;position:relative;z-index:1}.explore{position:relative;z-index:1;display:inline-flex;gap:50px;border-bottom:1px solid var(--gold);padding:14px 0 11px;font-size:12px;margin-top:10px}.explore span{color:var(--gold)}.hero-art{position:absolute;inset:0 0 0 32%;background-image:linear-gradient(90deg,var(--bg) 0%,transparent 46%),linear-gradient(0deg,var(--bg),transparent 40%),url('art/40k-space-marines.jpg');background-size:cover;background-position:center;z-index:0;opacity:.75}.hero-caption{position:absolute;right:5%;bottom:55px;text-align:right;z-index:1;max-width:230px}.hero-caption span,.hero-index{font-size:9px;letter-spacing:2px;color:var(--gold)}.hero-caption strong{display:block;font:500 23px/1.1 'Barlow Condensed';text-transform:uppercase;margin-top:12px}.hero-index{position:absolute;right:5%;top:35px}.worlds{display:grid;grid-template-columns:repeat(3,1fr);margin:0 5%;border:1px solid var(--line);position:relative;z-index:1}.worlds button{text-align:left;border:0;border-right:1px solid var(--line);background:#161a19;padding:24px 26px;position:relative}.worlds button:last-child{border:0}.worlds button.selected{background:#25271f;box-shadow:inset 0 -3px var(--gold)}.worlds small{font-size:9px;letter-spacing:1.5px;color:#8d968c}.worlds .selected small{color:var(--gold)}.worlds strong{display:block;font:500 27px 'Barlow Condensed';text-transform:uppercase;margin:10px 0}.worlds span{display:block;font-size:11px;color:var(--muted)}.worlds b{float:right;color:var(--gold);font-size:17px}#atlas{padding:65px 5%}.section-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:27px}h2{font:500 42px/1.1 'Barlow Condensed';text-transform:uppercase;margin:12px 0 0}.section-title p{font-size:12px;color:var(--muted);margin:0 0 3px}.toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:66px}.filters{display:flex;flex-wrap:wrap;gap:8px}.filters button{background:none;border:1px solid transparent;padding:8px 12px;font-size:11px;color:var(--muted)}.filters button.active{border-color:#6e684e;color:var(--gold);background:#27271e}.search{display:flex;align-items:center;gap:8px;color:var(--muted)}.search span{font-size:24px}.search input{background:transparent;color:var(--text);border:0;font-size:11px;width:200px;padding:10px 0}.subbar{display:flex;justify-content:space-between;align-items:center;padding:22px 0;font-size:10px;color:var(--muted);letter-spacing:.4px}.subbar select{background:var(--bg);border:0;color:var(--text);font-size:11px;margin-left:8px;padding:5px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{position:relative;background:var(--panel);border:1px solid #303632;transition:border-color .2s,transform .2s;overflow:hidden;min-width:0}.card:hover{border-color:#9d8957;transform:translateY(-4px)}.card-main{background:none;border:0;text-align:left;display:block;width:100%;padding:0}.card-art{height:320px;position:relative;overflow:hidden}.card-art img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;transition:transform .6s}.card:hover img{transform:scale(1.045)}.card-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#171b1b,transparent 50%)}.faction-no{position:absolute;top:16px;left:16px;font:11px 'DM Sans';letter-spacing:1px;text-shadow:0 1px 6px #000;color:#e3e5d9}.card-body{padding:0 23px 24px;margin-top:-10px;position:relative;z-index:1}.card .group{font-size:8px;letter-spacing:1.8px;color:var(--gold);text-transform:uppercase}.card h3{font:500 31px/1.02 'Barlow Condensed';text-transform:uppercase;margin:10px 0}.card p{font-size:12px;line-height:1.7;color:var(--muted);margin:0;min-height:42px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:20px;padding-top:14px;font-size:9px;color:#b4b9af;letter-spacing:.5px}.card-bottom b{font-size:18px;color:var(--gold);font-weight:400}.heart{position:absolute;right:12px;top:12px;background:#101313a9;border:1px solid #a9b09a66;width:34px;height:34px;font-size:21px;z-index:2}.heart.on{color:var(--gold);background:#27271f}.roster-note{max-width:740px;margin:30px auto 0;font-size:10px;line-height:1.8;text-align:center;color:#818a80}.closing{text-align:center;padding:65px 20px 80px;border-top:1px solid var(--line);background:radial-gradient(ellipse at center,#23271e,var(--bg) 70%)}.closing>span{font-size:9px;letter-spacing:2px;color:var(--gold)}.closing h2{font-size:53px;margin:22px 0}.closing p{font-size:12px;line-height:1.9;color:var(--muted)}.closing button{margin-top:15px;background:var(--gold);color:#151911;border:0;padding:14px 24px;font-size:11px}footer{padding:35px 5%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}footer p{font-size:9px;line-height:1.8;color:#8c958a}footer button{background:none;border:0;padding:0;color:var(--gold);font-size:9px}footer>span{font-size:8px;letter-spacing:1.5px;line-height:1.8;color:#8c958a;text-align:right}dialog{background:var(--bg);color:var(--text);border:1px solid #6d705c;padding:0;width:min(980px,92vw);max-height:90vh}dialog::backdrop{background:#000c;backdrop-filter:blur(6px)}.close{position:sticky;float:right;right:14px;top:14px;z-index:5;background:#141817;border:1px solid #787d6c;width:36px;height:36px}.profile-hero{height:360px;background-size:cover;background-position:center;display:flex;align-items:end;padding:38px;box-shadow:inset 0 -100px 90px -50px var(--bg)}.profile-hero h2{font-size:62px;max-width:650px;text-shadow:0 2px 12px #000}.profile-copy{padding:15px 38px 40px}.profile-copy h3{font:500 29px 'Barlow Condensed';text-transform:uppercase;color:var(--gold)}.profile-copy p{font-size:15px;line-height:1.8;color:var(--muted)}.profile-copy .tags{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.tags span{border:1px solid var(--line);padding:9px 13px;font-size:11px}.profile-actions{display:flex;gap:15px;align-items:center;margin:30px 0}.profile-actions button,.profile-actions a{border:1px solid #70684d;padding:13px 20px;font-size:12px;background:#27271e;color:var(--gold)}.profile-copy small{font-size:10px;color:#8d968c}.credits{padding:35px;clear:both}.credits p{color:var(--muted);font-size:13px;line-height:1.8}.credits a{display:block;color:var(--gold);font-size:12px;margin:15px 0}.credits details a{font-size:10px;overflow-wrap:anywhere}#empty{text-align:center;padding:50px}#empty button{background:var(--gold);color:#111;border:0;padding:12px}
@media(min-width:1600px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.header-note{display:none}.intro{min-height:500px}.hero-art{left:15%;opacity:.45}.hero-caption{display:none}.worlds button{padding:20px 15px}.worlds strong{font-size:23px}.worlds span{font-size:9px}.section-title p{display:none}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar{align-items:start;flex-direction:column;gap:8px;padding:12px 0}.search{width:100%}.search input{width:100%}.card-art{height:280px}footer>span{display:none}}@media(max-width:560px){header{height:75px}.brand{font-size:24px}header button{font-size:10px;padding:10px}header b{margin-left:4px}.intro{padding-top:50px;min-height:470px}h1{font-size:59px}.intro>p{font-size:12px}.hero-art{left:0;background-position:62% center;opacity:.36}.hero-index{display:none}.worlds{grid-template-columns:1fr}.worlds button{padding:16px 18px;border-right:0;border-bottom:1px solid var(--line)}.worlds strong{margin:5px 0;font-size:25px}.worlds span{font-size:10px}.worlds small{font-size:8px}.worlds button.selected{box-shadow:inset 3px 0 var(--gold)}#atlas{padding-top:42px}h2{font-size:35px}.grid{grid-template-columns:1fr;gap:20px}.card-art{height:330px}.card h3{font-size:35px}.card p{min-height:0}.card-body{padding:0 22px 24px}.closing h2{font-size:44px}footer{align-items:start;flex-direction:column;gap:15px}.profile-hero{height:300px;padding:25px}.profile-hero h2{font-size:44px}.profile-copy{padding:10px 25px 30px}.profile-actions{flex-direction:column;align-items:stretch}.filters{gap:0}.filters button{padding:8px 10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
