:root{--color-bg:#0a0e0d;--color-bg-alt:#0f1614;--color-panel:#12181a;--color-panel-alt:#171f21;--color-border:#4a3a1e;--color-gold:#c9a227;--color-gold-bright:#e8c766;--color-red:#b6382d;--color-red-bright:#e2543f;--color-text:#d8d2c2;--color-text-muted:#8d9490;--font-heading:"Cinzel", "Georgia", "Times New Roman", serif;--font-body:"Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);scroll-behavior:smooth;margin:0;padding:0}body{background-image:radial-gradient(at 50% -10%,#c9a22714,#0000 45%),radial-gradient(at 90% 10%,#b6382d0f,#0000 40%),linear-gradient(#060908 0%,#0a0e0d 100%)}h1,h2,h3{font-family:var(--font-heading);color:var(--color-gold-bright);letter-spacing:.03em}a{color:var(--color-gold)}.site-header{background:linear-gradient(180deg, #000 0%, var(--color-bg-alt) 100%);border-bottom:3px solid var(--color-border);box-shadow:0 4px 20px #0009}.header-frame{border-bottom:1px solid #c9a22740}.brand{display:block}.header-banner{width:100%;max-width:1600px;margin:0 auto;display:block}.nav{background:linear-gradient(#1a1410 0%,#0d0b08 100%);border-top:1px solid #c9a22759;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:.25rem;padding:0;display:flex}.nav>a,.nav-item{align-items:center;display:flex}.nav a{color:var(--color-text);font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;border-right:1px solid #c9a22726;padding:.9rem 1.3rem;font-size:.95rem;text-decoration:none;transition:color .2s,text-shadow .2s,background .2s}.nav a:hover,.nav a.active{color:var(--color-red-bright);text-shadow:0 0 8px #e2543f99;background:#c9a2270f}.nav-dropdown{position:relative}.dropdown-menu{border:1px solid var(--color-border);border-top:2px solid var(--color-gold);z-index:20;background:#0d0f0e;flex-direction:column;min-width:220px;display:none;position:absolute;top:100%;left:0;box-shadow:0 10px 25px #000000b3}.nav-dropdown:hover .dropdown-menu{display:flex}.dropdown-menu a{text-transform:none;letter-spacing:.02em;font-family:var(--font-body);border-bottom:1px solid #c9a2271a;border-right:none;padding:.75rem 1.2rem;font-size:.9rem}.dropdown-menu a:last-child{border-bottom:none}main{max-width:1100px;margin:0 auto;padding:2.5rem 1.5rem 5rem}.site-footer{text-align:center;color:var(--color-text-muted);border-top:1px solid var(--color-border);background:var(--color-bg-alt);padding:2rem 1rem;font-size:.9rem}.hero{text-align:center;padding:3rem 1rem}.hero h1{text-shadow:0 0 20px #c9a2274d;margin-bottom:.5rem;font-size:2.6rem}.hero .subtitle{color:var(--color-text-muted);max-width:640px;margin:0 auto 2rem;font-size:1.15rem}.hero-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.btn{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--color-border);border-radius:3px;padding:.7rem 1.6rem;font-size:.95rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-block}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(180deg, var(--color-gold-bright), var(--color-gold));color:#1a1408;border-color:var(--color-gold);box-shadow:0 0 16px #c9a22759}.btn-secondary{background:var(--color-panel);color:var(--color-text)}.teaser{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;margin-top:3rem;display:grid}.teaser-card{background:var(--color-panel);border:1px solid var(--color-border);border-radius:4px;padding:1.5rem}.link-arrow{margin-top:.75rem;font-weight:600;text-decoration:none;display:inline-block}.back-link{margin-top:2rem}.page-title{text-align:center;margin-bottom:2.5rem}.page-title p{color:var(--color-text-muted)}.character-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem;display:grid}.character-card{color:inherit;background:var(--color-panel);border:1px solid var(--color-border);border-radius:4px;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:block;overflow:hidden}.character-card:hover{border-color:var(--color-gold);transform:translateY(-4px);box-shadow:0 8px 24px #00000080}.character-portrait{aspect-ratio:3/4;background:linear-gradient(160deg,#1c1a14,#0a0e0d);width:100%;overflow:hidden}.character-portrait img{object-fit:cover;object-position:top center;width:100%;height:100%}.character-info{padding:1rem}.character-info h3{margin:0 0 .25rem;font-size:1.2rem}.character-role{color:var(--color-gold);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .6rem;font-size:.85rem}.character-desc{color:var(--color-text-muted);font-size:.95rem;line-height:1.4}.character-detail{grid-template-columns:minmax(240px,340px) 1fr;gap:2.5rem;margin-bottom:3rem;display:grid}.character-detail-media{border:1px solid var(--color-border);border-top:3px solid var(--color-gold);background:var(--color-panel);overflow:hidden}.character-detail-portrait{width:100%;display:block}.character-detail-main h1{margin:.25rem 0 1rem;font-size:2.2rem}.character-tagline{color:var(--color-text-muted);border-left:3px solid var(--color-gold);margin:1rem 0 1.5rem;padding-left:1rem;font-style:italic}.character-facts{grid-template-columns:1fr 1fr;gap:.75rem 1.5rem;margin:0;display:grid}.character-fact{border-bottom:1px solid #c9a22726;padding-bottom:.5rem}.character-fact dt{color:var(--color-gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.15rem;font-size:.75rem}.character-fact dd{color:var(--color-text);margin:0}.character-sections{flex-direction:column;gap:2rem;display:flex}.character-section{background:var(--color-panel);border:1px solid var(--color-border);border-left:3px solid var(--color-gold);border-radius:2px;padding:1.5rem 1.75rem}.character-section h2{margin-top:0;font-size:1.3rem}.character-section p{color:var(--color-text);line-height:1.65}.character-section p+p{margin-top:.9rem}.character-gallery{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:2.5rem;display:grid}.character-gallery img{border:1px solid var(--color-border);border-radius:2px;width:100%}@media (width<=720px){.character-detail,.character-facts{grid-template-columns:1fr}}.lore-card{background:#000;border:1px solid #7a4a1e;max-width:640px;margin:0 auto 2rem;box-shadow:0 0 0 1px #2a1a0a,0 10px 30px #000000b3}.lore-card-header{text-align:center;background:linear-gradient(#3a2313 0%,#1c1108 100%);border-bottom:1px solid #7a4a1e;padding:.9rem 1rem .7rem}.lore-card-body{padding:1.25rem 1.5rem}.lore-card-body p{color:var(--color-text);margin:0;line-height:1.65}.lore-card-body p+p{margin-top:.9rem}.weapon-showcase{text-align:center;margin-top:3rem}.weapon-showcase-title{margin-bottom:1.25rem}.item-tooltip{max-width:360px;font-family:var(--font-body);background:#000;border:1px solid #7a4a1e;margin:0 auto;box-shadow:0 0 0 1px #2a1a0a,0 10px 30px #000000b3}.item-tooltip-header{text-align:center;background:linear-gradient(#3a2313 0%,#1c1108 100%);border-bottom:1px solid #7a4a1e;padding:.9rem 1rem .7rem}.item-name{color:#d97a2b;font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:1.15rem}.item-basetype{color:#d97a2b;letter-spacing:.03em;text-transform:uppercase;opacity:.9;margin:.2rem 0 0;font-size:.85rem}.item-tooltip-section{text-align:center;border-bottom:1px solid #7a4a1e66;padding:.7rem 1.1rem}.item-tooltip-section:last-child{border-bottom:none}.item-stat{color:#c9c2b4;margin:.2rem 0;font-size:.9rem}.item-stat span{color:#8d8578}.item-mod{color:#88e;margin:.25rem 0;font-size:.92rem}.item-flavor{color:#af9868;margin:0;font-size:.9rem;font-style:italic}.item-tooltip-image{background:#000;padding:.75rem}.item-tooltip-image img{width:100%;display:block}.timeline{border-left:2px solid var(--color-border);max-width:800px;margin:0 auto;padding-left:2rem;position:relative}.timeline-item{padding:0 0 2.5rem 1.5rem;position:relative}.timeline-item:before{content:"";background:var(--color-gold);border:3px solid var(--color-bg);width:14px;height:14px;box-shadow:0 0 0 2px var(--color-border);border-radius:50%;position:absolute;top:.3rem;left:-2.6rem}.timeline-date{color:var(--color-gold);font-family:var(--font-heading);margin-bottom:.25rem;font-size:.95rem}.timeline-item h3{margin:0 0 .4rem}.timeline-item p{color:var(--color-text-muted);margin:0;line-height:1.5}
