:root{
  --red:#a72a24;--red-dark:#7f1f1b;--red-soft:#efe0dc;
  --paper:#faf6ee;--paper-2:#f2e9df;--page:#eee8df;
  --ink:#2b2522;--muted:#746a65;--line:#d8cdc1;
  --tan:#bd935d;--gold:#f0ce84;--white:#fff;
}
*{box-sizing:border-box}html,body{margin:0}body{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;background:radial-gradient(circle at 15% 5%,rgba(167,42,36,.08),transparent 28%),radial-gradient(circle at 90% 90%,rgba(189,147,93,.08),transparent 26%),var(--page);color:var(--ink)}
a{color:inherit}.site-header{position:sticky;top:0;z-index:50;background:rgba(250,246,238,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 2px 12px rgba(55,35,25,.06)}
.site-header-inner{width:min(1240px,calc(100% - 24px));min-height:74px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px}
.site-brand img{width:170px;max-height:56px;object-fit:contain}.site-links{display:flex;align-items:center;gap:18px;font-size:12px;font-weight:800}
.site-links a{text-decoration:none;color:#6c5c52}.site-links a:hover,.site-links a.active{color:var(--red)}.builder-link{padding:10px 13px;background:var(--red);color:#fff!important;border-radius:5px}
.page{width:min(1240px,calc(100% - 24px));margin:24px auto 42px}.surface{background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:430px;border-bottom:3px solid var(--tan);background:linear-gradient(135deg,#f8f2e8,#eadfd4)}
.hero-copy{padding:52px 54px;display:flex;flex-direction:column;justify-content:center}.kicker{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.16em;color:var(--red)}
.hero h1{font:700 clamp(48px,6vw,78px)/.95 Georgia,serif;margin:10px 0;color:var(--red)}.hero p{font-size:17px;line-height:1.58;color:#5f5149;max-width:690px;margin:10px 0 0}
.hero-brand{display:flex;align-items:center;justify-content:center;padding:30px;background:linear-gradient(135deg,rgba(167,42,36,.06),rgba(189,147,93,.09))}
.hero-brand img{width:min(82%,520px);filter:drop-shadow(0 16px 30px rgba(67,38,27,.14))}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 15px;border-radius:6px;text-decoration:none;font-size:12px;font-weight:900;border:1px solid var(--line);background:#fff;color:#5d4b42}.btn.primary{background:var(--red);border-color:var(--red);color:#fff}.btn:hover{transform:translateY(-1px)}
.section{padding:30px 34px;border-top:1px solid #e3d8cd}.section:first-child{border-top:0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}
.section h2{font:700 30px Georgia,serif;color:var(--red);margin:0}.section-head p,.intro{margin:0;color:var(--muted);font-size:13px;line-height:1.55;max-width:650px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:9px;padding:20px;min-height:145px;transition:.16s ease}.card:hover{border-color:#c9aea2;box-shadow:0 8px 20px rgba(72,49,39,.08);transform:translateY(-2px)}
.card.live{border-top:3px solid var(--red)}.card h3{font:700 24px Georgia,serif;color:#4b3932;margin:0 0 6px}.card.live h3{color:var(--red)}.card p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.card small{display:block;margin-top:15px;color:#9a8579;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.class-card-art{display:block;width:calc(100% + 40px);height:170px;margin:-20px -20px 16px;object-fit:contain;object-position:center bottom;background:linear-gradient(135deg,#2b211d,#511716);border-radius:8px 8px 0 0}
.class-card-art[hidden]{display:none}
.card.has-class-art{overflow:hidden}
.feature-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#eadfd4;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.feature-strip div{padding:24px 28px;border-right:1px solid var(--line)}.feature-strip div:last-child{border-right:0}.feature-strip b{display:block;color:var(--red);font:700 20px Georgia,serif}.feature-strip span{display:block;color:#75665d;font-size:12px;line-height:1.45;margin-top:6px}
.archive-layout{display:grid;grid-template-columns:205px minmax(0,1fr);gap:14px;align-items:start}.side{position:sticky;top:98px;background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden}.side h3{margin:0;padding:14px 15px;background:#eadfd4;color:var(--red);font-size:15px}.side p{margin:0;padding:10px 13px 4px;color:var(--muted);font-size:10px}.side-nav{padding:4px 0 10px}.side-nav a{display:block;padding:10px 14px;text-decoration:none;color:#4f413a;font-weight:800;font-size:12px;border-left:3px solid transparent}.side-nav a:hover{background:var(--paper-2);color:var(--red)}.side-nav a.active{background:var(--red-soft);color:var(--red);border-left-color:var(--red)}
.list-panel{background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden}.list-hero{padding:34px;border-bottom:3px solid var(--tan);background:linear-gradient(135deg,#f8f2e8,#eadfd4)}.list-hero h1{font:700 clamp(44px,5vw,68px)/1 Georgia,serif;color:var(--red);margin:8px 0}.list-hero p{color:#66574f;line-height:1.55;max-width:760px}
.search-row{display:flex;gap:10px;align-items:center;margin-top:18px}.search-row input,.search-row select{min-height:42px;border:1px solid #ccbcb0;border-radius:6px;background:#fff;padding:0 12px;color:#3d302c}.search-row input{flex:1}
.coming-note{padding:14px 16px;border-left:3px solid var(--tan);background:#f7f1e8;color:#6d5e55;font-size:12px;line-height:1.5}
@media(max-width:900px){.site-header-inner{flex-wrap:wrap;padding:8px 0 10px}.site-links{display:flex;order:2;width:100%;overflow-x:auto;gap:8px;padding:0 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.site-links::-webkit-scrollbar{display:none}.site-links a{flex:0 0 auto;padding:9px 11px;border:1px solid var(--line);border-radius:5px;background:#fff}.site-links .builder-link{border-color:var(--red);background:var(--red);color:#fff!important}.hero{grid-template-columns:1fr}.hero-brand{min-height:240px}.grid,.grid.four{grid-template-columns:1fr 1fr}.archive-layout{grid-template-columns:1fr}.side{position:static}.side h3,.side p{display:none}.side-nav{display:flex;overflow-x:auto;padding:6px}.side-nav a{white-space:nowrap;border-left:0;border-bottom:3px solid transparent}.side-nav a.active{border-bottom-color:var(--red)}.feature-strip{grid-template-columns:1fr}.feature-strip div{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:560px){.page{width:min(100% - 16px,1240px);margin-top:10px}.site-header-inner{width:min(100% - 16px,1240px)}.site-brand img{width:142px}.hero-copy{padding:34px 24px}.hero h1{font-size:48px}.section{padding:24px 20px}.section-head{align-items:flex-start;flex-direction:column}.grid,.grid.two,.grid.four{grid-template-columns:1fr}.hero-brand{display:none}.search-row{flex-direction:column;align-items:stretch}.footer{flex-direction:column}.card{min-height:0}}

.site-footer{margin-top:46px;background:#211b18;color:#d9cbb9;border-top:4px solid #a72a24;box-shadow:inset 0 1px rgba(255,255,255,.04)}
.site-footer-inner{width:min(1240px,calc(100% - 24px));margin:auto;padding:40px 0 28px;display:grid;grid-template-columns:minmax(260px,1.15fr) 2fr;gap:48px}
.footer-brand img{width:190px;max-height:66px;object-fit:contain;filter:brightness(1.08)}
.footer-brand p{max-width:390px;margin:14px 0 13px;color:#b9a999;font-size:12px;line-height:1.58}
.compat-badge{display:inline-flex;align-items:center;padding:6px 9px;border:1px solid rgba(240,206,132,.35);border-radius:999px;color:#f0ce84;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.footer-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.footer-col h3{margin:0 0 12px;color:#f0ce84;font:700 15px Georgia,serif}
.footer-col a{display:block;margin:8px 0;color:#c4b6a6;text-decoration:none;font-size:11px}.footer-col a:hover{color:#fff}
.footer-legal{border-top:1px solid rgba(239,225,193,.12);background:#181412}
.footer-legal-inner{width:min(1240px,calc(100% - 24px));margin:auto;padding:15px 0 19px;display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.footer-legal p{margin:0;max-width:900px;color:#958577;font-size:9.5px;line-height:1.55}
.footer-legal a{color:#c8aa74}.footer-copy{white-space:nowrap;color:#8f7f72;font-size:9.5px}
.legal-page{width:min(960px,calc(100% - 24px));margin:28px auto 48px}.legal-card{background:#faf6ee;border:1px solid #d8cdc1;border-radius:10px;overflow:hidden}
.legal-hero{padding:38px 40px;border-bottom:3px solid #bd935d;background:linear-gradient(135deg,#f8f2e8,#eadfd4)}.legal-hero h1{font:700 clamp(42px,6vw,68px)/1 Georgia,serif;color:#a72a24;margin:8px 0 12px}.legal-hero p{max-width:760px;color:#66574f;line-height:1.6}
.legal-section{padding:28px 40px;border-top:1px solid #e3d8cd}.legal-section:first-of-type{border-top:0}.legal-section h2{font:700 26px Georgia,serif;color:#a72a24;margin:0 0 12px}.legal-section p,.legal-section li{color:#5c4e47;font-size:12.5px;line-height:1.65}.legal-section a{color:#a72a24;font-weight:800}.legal-callout{padding:14px 16px;background:#f4eadf;border-left:3px solid #bd935d;border-radius:4px;color:#66574f;font-size:11.5px;line-height:1.55}
@media(max-width:760px){.site-footer-inner{grid-template-columns:1fr;gap:28px;padding-top:30px}.footer-columns{grid-template-columns:1fr 1fr}.footer-legal-inner{flex-direction:column}.footer-copy{white-space:normal}.legal-hero,.legal-section{padding-left:22px;padding-right:22px}}
@media(max-width:480px){.footer-columns{grid-template-columns:1fr}}


/* Species browser, illustrated sourcebook treatment */
.icon-common-folk{--ix:0;--iy:0}
.icon-goblinoids{--ix:1;--iy:0}
.icon-dragonkin{--ix:2;--iy:0}
.icon-otherworldly{--ix:3;--iy:0}
.icon-wildborn{--ix:0;--iy:1}
.icon-deepfolk{--ix:1;--iy:1}
.icon-constructed{--ix:2;--iy:1}
.icon-undead{--ix:3;--iy:1}
.icon-fey-folk{--ix:0;--iy:2}
.icon-nomads{--ix:1;--iy:2}
.icon-custom{--ix:2;--iy:2}

.species-layout{width:min(1280px,calc(100% - 24px));margin:24px auto 42px;display:grid;grid-template-columns:245px minmax(0,1fr);gap:18px;align-items:start}
.species-sidebar{position:sticky;top:98px;background:#211b18;border:1px solid #4e3c32;border-radius:6px;overflow:hidden;box-shadow:0 16px 38px rgba(42,26,20,.16)}
.species-sidebar-head{padding:17px 16px 15px;background:linear-gradient(145deg,#2b211d,#1d1715);border-bottom:1px solid #5a4437}
.species-sidebar-head h2{margin:0;color:#f0ce84;font:700 20px Georgia,serif}
.species-sidebar-head p{margin:4px 0 12px;color:#bba99a;font-size:10px;line-height:1.45}
.species-search{width:100%;height:37px;border:1px solid #574238;border-radius:4px;background:#15110f;color:#f1e4d3;padding:0 10px;outline:none}
.species-search::placeholder{color:#857469}.species-search:focus{border-color:#bd935d}
.species-group{border-top:1px solid #3d302a;background:#211b18}
.species-group:first-of-type{border-top:0}
.species-group summary{list-style:none;cursor:pointer;min-height:58px;padding:8px 12px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;color:#e3d4c4;background:linear-gradient(90deg,rgba(255,255,255,.02),transparent);transition:.15s ease}
.species-group summary::-webkit-details-marker{display:none}
.species-group summary:hover{background:#2d211d;color:#fff}
.species-group[open] summary{background:linear-gradient(90deg,#6d1714,#8d201b);color:#fff;border-bottom:1px solid rgba(240,206,132,.3)}
.species-category-icon{width:42px;height:42px;border-radius:8px;background-image:url('/assets/images/species/category-sprite.webp');background-repeat:no-repeat;background-size:168px 126px;background-position:calc(var(--ix) * -42px) calc(var(--iy) * -42px);box-shadow:0 0 0 1px rgba(240,206,132,.28),0 4px 10px rgba(0,0,0,.28)}
.species-group-name{font:700 13px Georgia,serif;letter-spacing:.01em}
.species-group-count{color:#bca994;font-size:9px;font-weight:900}
.species-group[open] .species-group-count{color:#f0ce84}
.species-group-list{padding:5px 0 8px;background:#f4ede4}
.species-group-list a{display:block;padding:7px 14px 7px 22px;text-decoration:none;color:#55453d;font-size:11px;font-weight:750;border-left:3px solid transparent}
.species-group-list a:hover{color:#9b241f;background:#eadfd4}
.species-group-list a.active{color:#9b241f;border-left-color:#a72a24;background:#e5d4c9;font-weight:900}

.species-panel{background:#f8f1e7;border:1px solid #cdbba9;border-radius:6px;overflow:hidden;box-shadow:0 20px 46px rgba(52,31,22,.12)}
.species-hero{position:relative;min-height:310px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);overflow:hidden;background:linear-gradient(110deg,#241b18 0%,#201714 58%,#551713 100%);border-bottom:4px solid #bd935d}
.species-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 48%,rgba(240,206,132,.14),transparent 30%),linear-gradient(135deg,transparent 0 64%,rgba(167,42,36,.16) 64% 66%,transparent 66%);pointer-events:none}
.species-hero-copy{position:relative;z-index:2;padding:38px 42px 34px;display:flex;flex-direction:column;justify-content:center}
.species-identity{display:flex;align-items:center;gap:17px}
.species-category-hero-icon{flex:0 0 auto;width:64px;height:64px;border-radius:13px;background-image:url('/assets/images/species/category-sprite.webp');background-repeat:no-repeat;background-size:256px 192px;background-position:calc(var(--ix) * -64px) calc(var(--iy) * -64px);box-shadow:0 0 0 2px rgba(240,206,132,.55),0 8px 24px rgba(0,0,0,.4)}
.species-hero .kicker{color:#f0ce84;font-size:10px;letter-spacing:.18em}
.species-hero h1{font:700 clamp(48px,5.4vw,74px)/.92 Georgia,serif;color:#f7ead3;margin:7px 0 0;letter-spacing:-.03em;text-shadow:0 3px 18px rgba(0,0,0,.42)}
.species-hero p{max-width:720px;color:#d4c2b3;font-size:14px;line-height:1.6;margin:18px 0 0}
.species-art-stage{position:relative;min-height:310px;border-left:1px solid rgba(240,206,132,.13);background:radial-gradient(circle at 56% 48%,rgba(240,206,132,.14),transparent 34%),radial-gradient(circle at 68% 62%,rgba(167,42,36,.28),transparent 48%),linear-gradient(155deg,transparent 0 38%,rgba(255,255,255,.025) 38% 40%,transparent 40% 100%)}
.species-art-stage:before{content:"";position:absolute;inset:24px;border:1px solid rgba(240,206,132,.12);clip-path:polygon(0 12px,12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%)}
.species-art-stage:after{content:"";position:absolute;right:9%;bottom:0;width:70%;height:72%;background:linear-gradient(140deg,rgba(240,206,132,.08),rgba(167,42,36,.05));clip-path:polygon(50% 0,100% 100%,0 100%);opacity:.45}
.variant-control{margin-top:20px;display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;padding:8px 10px 8px 12px;background:rgba(255,255,255,.055);border:1px solid rgba(240,206,132,.28);border-radius:4px}
.variant-control label{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:#e2bd75}
.variant-control select{min-width:190px;min-height:32px;border:0;background:#f2e5d4;color:#332722;padding:0 30px 0 10px;font-weight:850;border-radius:3px}

.species-body{padding:28px 40px 38px;background:linear-gradient(180deg,#f8f1e7,#f4eadf)}
.species-overview{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid #c6af98;border-bottom:1px solid #c6af98;background:rgba(255,255,255,.18)}
.species-stat{position:relative;padding:14px 13px 15px;border-right:1px solid #ddd0c2;min-height:77px}
.species-stat:last-child{border-right:0}
.species-stat:before{content:"";position:absolute;left:13px;top:0;width:22px;height:2px;background:#a72a24}
.species-stat span{display:block;margin-bottom:5px;color:#9a7662;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
.species-stat strong{display:block;color:#3e302a;font:700 15px/1.35 Georgia,serif}

.species-section-title{position:relative;display:grid;grid-template-columns:max-content 1fr;align-items:center;gap:18px;margin:31px 0 8px}
.species-section-title:after{content:"";height:1px;background:linear-gradient(90deg,#bd935d,transparent)}
.species-section-title h2{position:relative;margin:0;padding:9px 22px 9px 19px;background:linear-gradient(90deg,#781b17,#a72a24);color:#fff4df;font:700 22px/1 Georgia,serif;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%,8px 50%);box-shadow:inset 0 1px rgba(240,206,132,.4)}
.species-source{grid-column:1/-1;margin-top:-2px;color:#987e6d;font-size:8px;text-transform:uppercase;letter-spacing:.09em}

.species-feature{border:0;border-bottom:1px solid #d4c4b5;background:transparent;margin:0}
.species-feature:first-child{border-top:1px solid #d4c4b5}
.species-feature summary{cursor:pointer;list-style:none;padding:13px 6px;display:grid;grid-template-columns:18px 1fr 18px;gap:9px;align-items:center;color:#41332d;font:700 16px Georgia,serif;transition:.14s ease}
.species-feature summary::-webkit-details-marker{display:none}
.species-feature summary:before{content:"◆";color:#bd935d;font:700 9px/1 Arial,sans-serif}
.species-feature summary span{color:#a72a24;font:900 14px/1 Arial,sans-serif}
.species-feature summary:hover{color:#9b241f;background:rgba(167,42,36,.035)}
.species-feature[open] summary{color:#9b241f}
.species-feature[open] summary span{transform:rotate(45deg)}
.species-feature>div{margin:0 0 15px 27px;padding:1px 26px 1px 14px;border-left:2px solid #bd935d;color:#5c4e47;font-size:12.5px;line-height:1.72;max-width:940px}
.species-empty{padding:40px;color:var(--muted);text-align:center}

@media(max-width:1050px){
  .species-overview{grid-template-columns:repeat(3,1fr)}
  .species-stat:nth-child(3){border-right:0}
  .species-stat:nth-child(-n+3){border-bottom:1px solid #ddd0c2}
}
@media(max-width:900px){
  .species-layout{grid-template-columns:1fr;margin-top:10px}
  .species-sidebar{position:static}
  .species-accordion{display:grid;grid-template-columns:1fr 1fr}
  .species-group{border:1px solid #3d302a}
  .species-hero{grid-template-columns:1fr;min-height:0}
  .species-art-stage{display:none}
  .species-hero-copy{padding:30px 28px}
}
@media(max-width:620px){
  .species-layout{width:min(100% - 16px,1280px);gap:10px}
  .species-accordion{display:block}
  .species-sidebar-head p{display:none}
  .species-hero-copy{padding:24px 20px}
  .species-identity{align-items:flex-start}
  .species-category-hero-icon{width:52px;height:52px;border-radius:10px;background-size:208px 156px;background-position:calc(var(--ix) * -52px) calc(var(--iy) * -52px)}
  .species-hero h1{font-size:44px}
  .variant-control{width:100%;display:grid;grid-template-columns:auto 1fr}
  .variant-control select{min-width:0;width:100%}
  .species-body{padding:20px 18px 28px}
  .species-overview{grid-template-columns:1fr 1fr}
  .species-stat,.species-stat:nth-child(3){border-right:1px solid #ddd0c2;border-bottom:1px solid #ddd0c2}
  .species-stat:nth-child(even){border-right:0}
  .species-stat:nth-last-child(-n+2){border-bottom:0}
  .species-section-title{grid-template-columns:max-content 1fr}
  .species-feature>div{margin-left:18px;padding-right:10px}
}


/* ===== 5th Edge home page, sourcebook showcase ===== */
.home-page{background:#e9e0d6;color:#2b211d}
.home-header{background:rgba(248,241,232,.96)}
.home-shell{width:min(1440px,calc(100% - 28px));margin:18px auto 0}
.home-section{position:relative;margin:0 0 18px;overflow:hidden;background:#f7f0e7;border:1px solid #c7aa70;box-shadow:0 16px 42px rgba(47,30,22,.08)}
.home-ornament{border:2px solid #d3a631;box-shadow:inset 0 0 0 1px rgba(112,24,18,.65),0 18px 48px rgba(38,23,17,.18)}
.home-ornament:before,.home-ornament:after{content:"";position:absolute;z-index:5;width:76px;height:76px;pointer-events:none}
.home-ornament:before{left:0;top:0;border-left:8px solid #9d1715;border-top:8px solid #9d1715;box-shadow:-1px -1px 0 #d3a631 inset}
.home-ornament:after{right:0;bottom:0;border-right:8px solid #9d1715;border-bottom:8px solid #9d1715;box-shadow:1px 1px 0 #d3a631 inset}
.home-hero{min-height:610px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);background:linear-gradient(110deg,#211714 0%,#2a1a16 58%,#641912 100%);color:#f8e9cf}
.home-hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 76% 44%,rgba(227,184,80,.18),transparent 28%),linear-gradient(125deg,transparent 0 53%,rgba(255,255,255,.025) 53% 54%,transparent 54%);pointer-events:none}
.home-hero-copy{position:relative;z-index:2;padding:74px 70px;display:flex;flex-direction:column;justify-content:center}
.home-eyebrow,.home-kicker{font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#a52822}
.home-kicker.light,.home-eyebrow{color:#efc967}
.home-hero-logo{width:min(430px,78%);max-height:145px;object-fit:contain;object-position:left center;filter:drop-shadow(0 12px 28px rgba(0,0,0,.28));margin:14px 0 16px}
.home-hero h1{font:700 clamp(42px,5vw,72px)/.96 Georgia,serif;margin:0;max-width:760px;color:#fff2db;letter-spacing:-.025em}
.home-hero p{max-width:720px;font-size:16px;line-height:1.65;color:#d9c5b2;margin:22px 0 0}
.home-hero-art{position:absolute;right:-2%;bottom:-2%;width:54%;height:94%;object-fit:contain;object-position:right bottom;filter:drop-shadow(0 18px 25px rgba(0,0,0,.35));z-index:1}
.home-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.home-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;text-decoration:none;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;border:1px solid transparent;transition:.16s ease}
.home-btn.gold{background:linear-gradient(180deg,#f0d77f,#c99b35);color:#3a2416;border-color:#f5df9a;box-shadow:0 8px 24px rgba(0,0,0,.2)}
.home-btn.ghost{border-color:#8b6b55;color:#49382f;background:rgba(255,255,255,.55)}
.home-btn.ghost.light{color:#f4e2c5;border-color:rgba(240,206,132,.48);background:rgba(255,255,255,.04)}
.home-btn:hover{transform:translateY(-2px)}
.home-jumpbar{display:grid;grid-template-columns:repeat(5,1fr);background:#241a17;border:1px solid #49362d;margin-bottom:18px}
.home-jumpbar a{position:relative;text-decoration:none;padding:19px 21px;border-right:1px solid #49362d;color:#ead9c4}
.home-jumpbar a:last-child{border-right:0}.home-jumpbar a:hover{background:#311f1b}
.home-jumpbar b{display:block;font:700 18px Georgia,serif;color:#efc967}.home-jumpbar span{display:block;font-size:10px;color:#aa9788;margin-top:3px}
.home-section-copy{padding:54px 58px;display:flex;flex-direction:column;justify-content:center}
.home-section-copy h2,.home-library-head h2,.home-builder-copy h2,.home-adventure-card h2,.home-final h2{font:700 clamp(34px,4vw,56px)/1.03 Georgia,serif;color:#94231f;margin:10px 0 14px;letter-spacing:-.025em}
.home-section-copy p,.home-builder-copy p,.home-adventure-card p,.home-final p{font-size:14px;line-height:1.7;color:#65554c;margin:0;max-width:720px}
.home-text-link{margin-top:20px;color:#9b241f;text-decoration:none;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.home-classes{padding:54px 58px;background:linear-gradient(180deg,#fbf7f0,#f1e6d9)}
.home-classes .home-section-copy{padding:0 0 28px;max-width:900px}
.home-class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.home-class-card{position:relative;min-height:340px;display:flex;align-items:end;text-decoration:none;background:#2b211d center/cover no-repeat;overflow:hidden;border-bottom:4px solid #b12922}
.home-class-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(22,13,10,.92) 100%)}
.home-class-card.rogue{background-image:url('/assets/class-art/rogue.png')}.home-class-card.ranger{background-image:url('/assets/class-art/ranger.png')}.home-class-card.paladin{background-image:url('/assets/class-art/paladin.png')}
.home-class-card div{position:relative;z-index:1;padding:24px;color:#fff}.home-class-card span{font-size:9px;color:#e7c56b;text-transform:uppercase;letter-spacing:.16em;font-weight:900}
.home-class-card h3{font:700 32px Georgia,serif;margin:4px 0 5px}.home-class-card p{margin:0;font-size:11px;color:#d8c9bd}
.home-split{display:grid;grid-template-columns:.85fr 1.15fr;min-height:470px}
.home-art-panel{background:linear-gradient(160deg,#201714,#5d1714);display:flex;align-items:end;justify-content:center;padding:18px}
.home-art-panel img{width:100%;height:440px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 14px 24px rgba(0,0,0,.3))}
.home-builder-stage{min-height:470px;display:grid;grid-template-columns:.85fr 1.15fr;background:linear-gradient(115deg,#171311,#271c18 54%,#671b16 100%);color:#f5e8d5}
.home-builder-blacksmith{width:100%;height:470px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 16px 26px rgba(0,0,0,.45))}
.home-builder-copy{padding:58px 64px;display:flex;flex-direction:column;justify-content:center}
.home-builder-copy h2{color:#f4dfba}.home-builder-copy p{color:#c8b6a8}.home-builder-copy .home-btn{width:max-content;margin-top:24px}
.home-magic{display:grid;grid-template-columns:1.05fr .95fr;min-height:500px;background:linear-gradient(110deg,#f7f0e7 0%,#efe2d3 58%,#d9c9b6 100%)}
.home-magic-art{position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(41,118,95,.2),transparent 55%)}
.home-magic-art img{width:92%;height:460px;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(35,65,54,.25))}
.home-adventure{min-height:510px;background:#161310;color:#fff}
.home-adventure>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78}
.home-adventure:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,14,11,.94) 0%,rgba(20,14,11,.72) 45%,rgba(20,14,11,.16) 100%)}
.home-adventure-card{position:relative;z-index:2;width:min(640px,70%);padding:70px 62px}
.home-adventure-card h2{color:#f6e5c7}.home-adventure-card p{color:#d3c2b2}.home-adventure-card .home-btn{margin-top:24px}
.home-monsters{display:grid;grid-template-columns:1.05fr .95fr;min-height:500px;background:linear-gradient(125deg,#f8f0e7,#e9ded1)}
.home-monster-art{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 55% 55%,rgba(117,32,70,.16),transparent 45%)}
.home-monster-art img{width:94%;height:470px;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(35,18,19,.28))}
.home-library{padding:54px 58px}.home-library-head{max-width:880px}.home-library-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:26px;border-top:1px solid #cbb792;border-bottom:1px solid #cbb792}
.home-library-grid a{text-decoration:none;padding:24px 22px;border-right:1px solid #d8c9b7}.home-library-grid a:last-child{border-right:0}.home-library-grid a:hover{background:#efe2d4}
.home-library-grid b{display:block;font:700 22px Georgia,serif;color:#8d211d}.home-library-grid span{display:block;margin-top:7px;font-size:11px;line-height:1.5;color:#77665c}
.home-treasure{display:grid;grid-template-columns:.95fr 1.05fr;min-height:430px;background:linear-gradient(120deg,#211815 0%,#352119 48%,#f3e7da 48%,#f8f1e8 100%)}
.home-treasure-art{display:flex;align-items:center;justify-content:center;padding:22px}.home-treasure-art img{width:100%;height:390px;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(0,0,0,.35))}
.home-final{min-height:260px;margin-bottom:0;padding:50px 58px;display:flex;align-items:center;justify-content:space-between;gap:36px;background:linear-gradient(100deg,#251816,#5f1714);color:#fff}
.home-final h2{color:#f5dfb7;margin-bottom:8px}.home-final p{color:#ccb9a9}
@media(max-width:980px){.home-hero{grid-template-columns:1fr;min-height:560px}.home-hero-art{opacity:.26;width:70%}.home-jumpbar{grid-template-columns:repeat(2,1fr)}.home-jumpbar a{border-bottom:1px solid #49362d}.home-class-grid{grid-template-columns:1fr}.home-class-card{min-height:260px}.home-split,.home-builder-stage,.home-magic,.home-monsters,.home-treasure{grid-template-columns:1fr}.home-treasure{background:#f8f1e8}.home-library-grid{grid-template-columns:1fr 1fr}.home-final{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.home-shell{width:min(100% - 12px,1440px);margin-top:6px}.home-hero{min-height:520px}.home-hero-copy,.home-section-copy,.home-builder-copy,.home-adventure-card,.home-classes,.home-library,.home-final{padding:34px 24px}.home-hero-art{width:96%;opacity:.16}.home-jumpbar{grid-template-columns:1fr 1fr}.home-art-panel img,.home-builder-blacksmith,.home-magic-art img,.home-monster-art img,.home-treasure-art img{height:330px}.home-adventure-card{width:100%}.home-library-grid{grid-template-columns:1fr}.home-library-grid a{border-right:0;border-bottom:1px solid #d8c9b7}.home-final{padding-top:38px;padding-bottom:38px}}

/* Species hero v2 */
.species-hero{min-height:340px;grid-template-columns:minmax(330px,42%) 1fr;background:#241b18;border-bottom:4px solid #bd935d}
.species-hero:before{z-index:1;background:linear-gradient(90deg,rgba(36,27,24,.98) 0%,rgba(36,27,24,.96) 39%,rgba(36,27,24,.68) 50%,rgba(36,27,24,.12) 72%,transparent 100%)}
.species-hero-copy{z-index:3;padding:44px 48px}
.species-identity{display:block}
.species-category-hero-icon{display:none!important}
.species-art-stage{position:relative;min-height:340px;border-left:0;background:#2b211d;overflow:hidden}
.species-art-stage:before,.species-art-stage:after{display:none}
.species-art-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.species-hero .kicker{font-size:10px;color:#e7c76f}
.species-hero h1{font-size:clamp(52px,6vw,82px);margin-top:8px}
.species-hero p{max-width:520px}
@media(max-width:900px){.species-hero{grid-template-columns:1fr;min-height:420px}.species-art-stage{position:absolute;inset:0;display:block!important;min-height:0}.species-art-stage img{object-position:65% center}.species-hero:before{background:linear-gradient(90deg,rgba(36,27,24,.96),rgba(36,27,24,.65),rgba(36,27,24,.2))}.species-hero-copy{position:relative;z-index:3;min-height:420px;max-width:70%}}
@media(max-width:620px){.species-hero-copy{max-width:100%;padding:32px 24px}.species-hero:before{background:rgba(36,27,24,.76)}}

/* ===== Home v2, compact sourcebook layout ===== */
.home-page{background:#e9e0d6;color:#30241f}
.home2{width:min(1380px,calc(100% - 28px));margin:20px auto 44px}
.home2-hero{position:relative;min-height:520px;overflow:hidden;background:#241b18;border:1px solid #b9924d;border-bottom:4px solid #b5221d}
.home2-hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.home2-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(26,19,17,.96) 0%,rgba(26,19,17,.88) 34%,rgba(26,19,17,.46) 57%,rgba(26,19,17,.06) 78%)}
.home2-hero-copy{position:relative;z-index:2;width:min(690px,56%);padding:72px 62px}
.home2-kicker{display:block;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#e7c76f}
.home2-kicker.red{color:#a72a24}.home2-kicker.gold{color:#e7c76f}
.home2-hero h1{font:700 clamp(48px,6vw,78px)/.94 Georgia,serif;margin:12px 0 18px;color:#fff0d8;letter-spacing:-.035em}
.home2-hero p{margin:0;color:#d5c4b5;font-size:15px;line-height:1.68;max-width:620px}
.home2-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.home2-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:900;border:1px solid #7a6453;color:#3e302a;background:#f4ece2}
.home2-btn.primary{background:#a72620;color:#fff3df;border-color:#c44a42}.home2-btn.dark{background:#241b18;color:#f3dfbf;border-color:#80634d}
.home2-rulebar{display:grid;grid-template-columns:repeat(4,1fr);background:#211916;border-left:1px solid #49372e;border-right:1px solid #49372e;border-bottom:1px solid #49372e}
.home2-rulebar a{padding:18px 22px;text-decoration:none;border-right:1px solid #49372e}.home2-rulebar a:last-child{border-right:0}
.home2-rulebar b{display:block;color:#e7c76f;font:700 18px Georgia,serif}.home2-rulebar span{display:block;color:#a9988a;font-size:10px;margin-top:3px}
.home2-section{margin-top:18px;background:#f7f0e7;border:1px solid #ccb89d}
.home2-heading{padding:42px 46px 22px}.home2-heading h2,.home2-copy h2,.home2-final h2{font:700 clamp(34px,4vw,54px)/1.02 Georgia,serif;color:#8f211d;margin:8px 0 0;letter-spacing:-.025em}
.home2-columns{display:grid;grid-template-columns:1fr 1fr;gap:42px;padding:0 46px 44px;border-top:1px solid #dbcab8;margin-top:4px;padding-top:24px}
.home2-columns p,.home2-copy p{margin:0;color:#65564d;font-size:13.5px;line-height:1.72}
.home2-classes{padding-bottom:40px}.home2-class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:0 46px}
.home2-class-card{position:relative;display:block;min-height:360px;background:#241b18;overflow:hidden;text-decoration:none;border-bottom:4px solid #a52620}
.home2-class-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home2-class-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(22,15,13,.94) 100%)}
.home2-class-card div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:24px}.home2-class-card small{color:#e7c76f;text-transform:uppercase;letter-spacing:.15em;font-weight:900}
.home2-class-card h3{font:700 31px Georgia,serif;color:white;margin:4px 0}.home2-class-card p{margin:0;color:#d5c4b5;font-size:11px}
.home2-split{display:grid;grid-template-columns:1.12fr .88fr;min-height:430px}.home2-banner-crop{overflow:hidden;background:#231a17}.home2-banner-crop img{width:100%;height:100%;object-fit:cover;object-position:70% center}.home2-copy{padding:52px 48px;display:flex;flex-direction:column;justify-content:center}
.home2-textlink{margin-top:22px;color:#9d241f;text-decoration:none;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.home2-builder{display:grid;grid-template-columns:1.1fr .9fr;background:linear-gradient(110deg,#211714,#5d1714);border-color:#6b3027}.home2-builder .home2-copy h2{color:#f2dfbd}.home2-builder .home2-copy p{color:#ccb9a8}.home2-builder-mark{display:flex;align-items:center;justify-content:center;font:700 min(20vw,260px)/1 Georgia,serif;color:#e8c974;text-shadow:0 10px 34px rgba(0,0,0,.4);opacity:.95}.home2-builder-mark span{font-size:.13em;align-self:center;margin:0 0 30px 4px}
.home2-reference{padding-bottom:42px}.home2-reference-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:0 46px;border-top:1px solid #ccb89d;border-bottom:1px solid #ccb89d}
.home2-reference-grid a{padding:22px 20px;text-decoration:none;border-right:1px solid #dbcab8}.home2-reference-grid a:last-child{border-right:0}.home2-reference-grid strong{display:block;font:700 21px Georgia,serif;color:#8f211d}.home2-reference-grid span{display:block;color:#76665c;font-size:11px;line-height:1.5;margin-top:6px}
.home2-philosophy{display:grid;grid-template-columns:repeat(3,1fr);background:#241b18;border-color:#4b392f}.home2-philosophy>div{padding:38px;border-right:1px solid #4b392f}.home2-philosophy>div:last-child{border-right:0}.home2-num{font:700 36px Georgia,serif;color:#a62b24}.home2-philosophy h3{font:700 24px Georgia,serif;color:#e9ca7d;margin:7px 0}.home2-philosophy p{color:#b8a79a;font-size:12px;line-height:1.55;margin:0}
.home2-roadmap{padding-bottom:38px}.home2-roadmap-line{display:grid;grid-template-columns:repeat(7,1fr);margin:0 46px;border-top:1px solid #ccb89d;border-bottom:1px solid #ccb89d}.home2-roadmap-line span{padding:15px 8px;text-align:center;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#6d5b50;border-right:1px solid #dbcab8}.home2-roadmap-line span:last-child{border-right:0}
.home2-final{margin-top:18px;padding:44px 48px;background:linear-gradient(100deg,#251815,#641914);display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:4px solid #d0a84e}.home2-final h2{color:#f2dfbd;margin-top:8px}
@media(max-width:900px){.home2-hero-copy{width:72%}.home2-class-grid{grid-template-columns:1fr}.home2-class-card{min-height:280px}.home2-split,.home2-builder{grid-template-columns:1fr}.home2-builder-mark{min-height:220px}.home2-reference-grid{grid-template-columns:1fr 1fr}.home2-roadmap-line{grid-template-columns:repeat(4,1fr)}}
@media(max-width:620px){.home2{width:min(100% - 12px,1380px);margin-top:6px}.home2-hero{min-height:500px}.home2-hero-shade{background:linear-gradient(90deg,rgba(26,19,17,.95),rgba(26,19,17,.62))}.home2-hero-copy{width:100%;padding:48px 26px}.home2-rulebar{grid-template-columns:1fr 1fr}.home2-heading,.home2-copy{padding:34px 24px}.home2-columns{grid-template-columns:1fr;padding:20px 24px 34px;gap:15px}.home2-class-grid{padding:0 24px}.home2-reference-grid,.home2-roadmap-line{margin:0 24px;grid-template-columns:1fr}.home2-philosophy{grid-template-columns:1fr}.home2-philosophy>div{border-right:0;border-bottom:1px solid #4b392f}.home2-final{padding:36px 24px;align-items:flex-start;flex-direction:column}}


/* ===== 5th Edge home v3, editorial sourcebook ===== */
.home3{width:min(1380px,calc(100% - 28px));margin:18px auto 48px}
.home3-kicker{display:block;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#e7c76f}.home3-kicker.red{color:#9f2822}.home3-kicker.gold{color:#e7c76f}
.home3-hero{position:relative;min-height:600px;overflow:hidden;background:#211815;border:1px solid #b89250;border-bottom:5px solid #9f241f}
.home3-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.home3-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,20,17,.98) 0%,rgba(28,20,17,.91) 31%,rgba(28,20,17,.58) 51%,rgba(28,20,17,.12) 74%,rgba(28,20,17,0) 100%)}
.home3-hero-copy{position:relative;z-index:2;width:min(720px,57%);padding:88px 68px}
.home3-hero h1{font:700 clamp(54px,6.6vw,90px)/.9 Georgia,serif;letter-spacing:-.04em;color:#f7ead4;margin:14px 0 22px}
.home3-hero h1 em{font-style:normal;color:#e5bc5a}
.home3-hero p{max-width:610px;margin:0;color:#d0bfb0;font-size:16px;line-height:1.7}
.home3-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.home3-button{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:0 18px;border:1px solid #826c58;text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:.07em;font-weight:900;color:#f1dfc2;background:rgba(35,26,22,.72)}
.home3-button.primary{background:#a62a23;border-color:#c64a41;color:#fff3df}.home3-button.ghost{background:rgba(24,18,16,.56)}
.home3-hero-seal{position:absolute;right:42px;bottom:28px;z-index:2;font:700 104px/1 Georgia,serif;color:rgba(240,206,132,.16);letter-spacing:-.08em}.home3-hero-seal span{font-size:.16em;vertical-align:top;margin-left:4px}

.home3-index{display:grid;grid-template-columns:repeat(6,1fr);background:#f3eadf;border:1px solid #cbb89f;border-top:0}
.home3-index a{display:grid;grid-template-columns:auto 1fr;column-gap:12px;padding:19px 18px;text-decoration:none;border-right:1px solid #d8c7b3;align-items:start}
.home3-index a:last-child{border-right:0}.home3-index a:hover{background:#eadfce}
.home3-index span{grid-row:1/3;font:700 20px Georgia,serif;color:#a62a23}.home3-index b{font:700 16px Georgia,serif;color:#3c2e28}.home3-index small{font-size:9px;color:#8b796d;margin-top:3px}

.home3-intro{display:grid;grid-template-columns:100px .95fr 1.2fr;gap:34px;align-items:start;padding:70px 58px;background:#f7f0e7;border:1px solid #ccb89d;border-top:0}
.home3-chapter{font:700 54px Georgia,serif;color:#d7c5ad;border-right:1px solid #cfbca5;min-height:150px}
.home3-intro h2,.home3-section-head h2,.home3-species h2,.home3-builder h2,.home3-progress h2,.home3-final h2{font:700 clamp(36px,4.5vw,60px)/1.01 Georgia,serif;letter-spacing:-.03em;margin:9px 0;color:#8f211d}
.home3-copy{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-top:23px;border-top:1px solid #cfbca5}.home3-copy p{margin:0;font-size:13px;line-height:1.75;color:#65564d}

.home3-class-section,.home3-library,.home3-progress{margin-top:18px;background:#f7f0e7;border:1px solid #ccb89d;padding:46px}
.home3-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}.home3-section-head h2{margin-bottom:0}.home3-section-head>a{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#98251f;text-decoration:none;padding-bottom:7px;border-bottom:1px solid #98251f}
.home3-class-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.home3-class{position:relative;min-height:430px;overflow:hidden;background:#211916;text-decoration:none}.home3-class>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home3-class-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,15,13,.03) 25%,rgba(20,15,13,.9) 100%)}.home3-class .num{position:absolute;top:18px;left:20px;color:#efcf7d;font:700 18px Georgia,serif}.home3-class .text{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:28px}.home3-class small{color:#efcf7d;text-transform:uppercase;letter-spacing:.14em;font-weight:900;font-size:9px}.home3-class h3{font:700 38px Georgia,serif;color:white;margin:5px 0}.home3-class p{margin:0;color:#d0c0b3;font-size:11px}

.home3-species{position:relative;min-height:500px;margin-top:18px;overflow:hidden;background:#211916;border-bottom:5px solid #bd935d}.home3-species>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.home3-species-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,20,17,.96),rgba(28,20,17,.76) 38%,rgba(28,20,17,.08) 74%)}.home3-species-copy{position:relative;z-index:2;width:min(650px,52%);padding:72px 62px}.home3-species h2{color:#f2dfbd}.home3-species p{color:#cdbbac;font-size:14px;line-height:1.7}.home3-species a{display:inline-block;margin-top:22px;color:#efcf7d;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.08em;border-bottom:1px solid #efcf7d;padding-bottom:4px}

.home3-builder{display:grid;grid-template-columns:1.05fr .95fr;margin-top:18px;background:linear-gradient(110deg,#1e1613,#5e1814);border:1px solid #6f332b;min-height:420px}.home3-builder-left{padding:58px 56px}.home3-builder h2{color:#f0ddba}.home3-builder p{max-width:620px;color:#c9b6a7;font-size:14px;line-height:1.68}.home3-builder .home3-button{margin-top:24px}.home3-builder-right{display:flex;flex-direction:column;justify-content:center;align-items:center;border-left:1px solid rgba(240,206,132,.18)}.home3-crest{font:700 190px/1 Georgia,serif;color:#e3bd62;text-shadow:0 12px 28px rgba(0,0,0,.35)}.home3-crest span{font-size:.14em;vertical-align:top;margin-left:5px}.home3-builder-right p{color:#a99586;font-size:10px;text-transform:uppercase;letter-spacing:.12em}

.home3-toc{border-top:1px solid #cdbba5}.home3-toc a{display:grid;grid-template-columns:56px 190px 1fr 30px;gap:18px;align-items:center;padding:19px 8px;border-bottom:1px solid #d8c8b6;text-decoration:none}.home3-toc a:hover{background:#eee3d4}.home3-toc span{font:700 17px Georgia,serif;color:#a62a23}.home3-toc strong{font:700 21px Georgia,serif;color:#3b2d27}.home3-toc em{font-style:normal;color:#78675c;font-size:11px}.home3-toc b{color:#a62a23}

.home3-principles{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px;background:#241b18;border-top:4px solid #a62a23}.home3-principle{padding:34px 30px;border-right:1px solid #4a382f}.home3-principle:last-child{border-right:0}.home3-principle>span{font:700 26px Georgia,serif;color:#a72a24}.home3-principle h3{font:700 24px Georgia,serif;color:#efcf7d;margin:8px 0}.home3-principle p{margin:0;color:#a9988c;font-size:11px;line-height:1.5}

.home3-progress{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px;align-items:start}.home3-progress h2{font-size:44px}.home3-progress-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #cdbba5}.home3-progress-grid span{padding:15px 12px;border-bottom:1px solid #d8c8b6;color:#5f5047;font-size:11px}.home3-progress-grid b{display:inline-block;width:60px;color:#9b2923;text-transform:uppercase;font-size:8px;letter-spacing:.09em}

.home3-final{margin-top:18px;padding:54px 58px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(100deg,#201613,#651814);border-bottom:5px solid #d2a94e}.home3-final h2{color:#f0ddba;margin-bottom:0}

@media(max-width:980px){.home3-index{grid-template-columns:repeat(3,1fr)}.home3-intro{grid-template-columns:70px 1fr}.home3-copy{grid-column:2;grid-template-columns:1fr}.home3-class-list{grid-template-columns:1fr}.home3-class{min-height:330px}.home3-builder{grid-template-columns:1fr}.home3-builder-right{border-left:0;border-top:1px solid rgba(240,206,132,.18);padding:30px}.home3-crest{font-size:130px}.home3-principles{grid-template-columns:1fr 1fr}.home3-progress{grid-template-columns:1fr}.home3-species-copy{width:68%}}
@media(max-width:640px){.home3{width:min(100% - 12px,1380px);margin-top:6px}.home3-hero{min-height:520px}.home3-hero-overlay{background:linear-gradient(90deg,rgba(28,20,17,.94),rgba(28,20,17,.66))}.home3-hero-copy{width:100%;padding:54px 26px}.home3-hero-seal{display:none}.home3-index{grid-template-columns:1fr 1fr}.home3-intro{grid-template-columns:1fr;padding:38px 24px}.home3-chapter{min-height:0;border-right:0;border-bottom:1px solid #cfbca5;padding-bottom:14px}.home3-copy{grid-column:auto}.home3-class-section,.home3-library,.home3-progress{padding:34px 24px}.home3-section-head{align-items:flex-start;flex-direction:column}.home3-species{min-height:460px}.home3-species-shade{background:rgba(28,20,17,.72)}.home3-species-copy{width:100%;padding:54px 26px}.home3-builder-left{padding:44px 26px}.home3-toc a{grid-template-columns:38px 1fr 24px}.home3-toc em{grid-column:2}.home3-principles{grid-template-columns:1fr}.home3-principle{border-right:0;border-bottom:1px solid #4a382f}.home3-progress-grid{grid-template-columns:1fr}.home3-final{padding:40px 26px;align-items:flex-start;flex-direction:column}}

/* ===== Species v3, full banner + editorial body ===== */
.species-layout{grid-template-columns:228px minmax(0,1fr);gap:16px}
.species-sidebar{background:#2d231f;border:1px solid #4c3b32;border-radius:4px;overflow:hidden;box-shadow:none}
.species-sidebar-head{padding:18px 16px 16px;background:#2d231f;border-bottom:1px solid #5d4639}
.species-sidebar-head h2{font:700 22px Georgia,serif;color:#f0ce84;margin:0 0 4px}.species-sidebar-head p{color:#c5b19f;font-size:9px;line-height:1.45}.species-search{background:#211916!important;border-color:#655043!important;color:#eadbca!important;border-radius:3px!important}
.species-group{border-bottom:1px solid #4d3b32}.species-group summary{background:#302621!important;color:#eadac7!important;min-height:48px}.species-group[open] summary{background:#9f2822!important;color:#fff!important}.species-group-list{background:#efe6db}.species-group-list a{font-size:11px!important;padding:10px 16px 10px 22px!important}.species-group-list a.active{background:#ead6c8!important;color:#9f2822!important;border-left-color:#9f2822!important}

.species-panel{border-radius:4px!important;overflow:hidden!important;background:#f7f0e7!important;border:1px solid #c8b39b!important}
.species-hero{position:relative!important;display:block!important;min-height:430px!important;background:#211916!important;border-bottom:4px solid #bd935d!important;overflow:hidden}
.species-art-stage{position:absolute!important;inset:0!important;display:block!important;min-height:0!important;background:#211916!important;border:0!important}
.species-art-stage img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.species-hero:before{content:""!important;position:absolute!important;inset:0!important;z-index:1!important;display:block!important;background:linear-gradient(90deg,rgba(32,23,20,.98) 0%,rgba(32,23,20,.91) 35%,rgba(32,23,20,.58) 52%,rgba(32,23,20,.06) 78%)!important}
.species-hero-copy{position:relative!important;z-index:3!important;width:min(650px,58%)!important;min-height:430px!important;padding:58px 42px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.species-hero .kicker{color:#e7c76f!important;font-size:9px!important}.species-hero h1{font:700 clamp(56px,6vw,86px)/.92 Georgia,serif!important;color:#f6ead4!important;margin:8px 0 16px!important;letter-spacing:-.035em}
.species-hero p{color:#d4c2b2!important;font-size:14px!important;line-height:1.65!important;max-width:500px!important}
.variant-control{margin-top:22px!important;background:rgba(26,19,17,.62)!important;border:1px solid rgba(231,199,111,.35)!important;border-radius:3px!important;padding:8px 10px!important;width:max-content!important}.variant-control label{color:#e7c76f!important;font-size:8px!important}.variant-control select{background:#f4eadc!important;border:0!important;border-radius:2px!important;min-width:200px!important}

.species-body{padding:0 38px 42px!important}
.species-overview{display:grid!important;grid-template-columns:repeat(6,1fr)!important;gap:0!important;border-top:1px solid #cdbba7!important;border-bottom:1px solid #cdbba7!important;margin:28px 0 34px!important;background:transparent!important}
.species-stat{padding:15px 14px 16px!important;border-right:1px solid #d8c8b6!important;background:transparent!important;border-radius:0!important;min-height:78px!important}.species-stat:last-child{border-right:0!important}.species-stat:before{display:none!important}.species-stat span{font-size:8px!important;color:#a27b68!important;letter-spacing:.12em!important}.species-stat strong{font:700 16px/1.22 Georgia,serif!important;color:#40322c!important;margin-top:5px!important}
.species-section-title{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:20px!important;margin:0 0 8px!important;padding-bottom:10px!important;border-bottom:2px solid #9e2a24!important}.species-section-title h2{font:700 31px Georgia,serif!important;color:#94251f!important;margin:0!important}.species-source{font-size:8px!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#a98f80!important}
.species-feature{border:0!important;border-bottom:1px solid #d8c8b6!important;border-radius:0!important;background:transparent!important}.species-feature summary{padding:18px 4px!important;font:700 19px Georgia,serif!important;color:#3c2e28!important;background:transparent!important}.species-feature summary span{color:#a62a23!important}.species-feature>div{padding:0 4px 20px!important;color:#6b5b51!important;font-size:12px!important;line-height:1.68!important;background:transparent!important}
@media(max-width:900px){.species-layout{grid-template-columns:1fr}.species-sidebar{position:static!important}.species-hero-copy{width:72%!important}.species-overview{grid-template-columns:repeat(3,1fr)!important}.species-sidebar-head p{display:none}.species-accordion{display:flex;overflow-x:auto}.species-group{min-width:180px}}
@media(max-width:620px){.species-hero{min-height:400px!important}.species-hero-copy{width:100%!important;min-height:400px!important;padding:38px 24px!important}.species-hero:before{background:rgba(32,23,20,.72)!important}.species-body{padding:0 20px 30px!important}.species-overview{grid-template-columns:repeat(2,1fr)!important}.species-stat:nth-child(2n){border-right:0!important}.species-section-title{align-items:flex-start!important;flex-direction:column!important}}

/* ===== Home v4, illustrated fantasy editorial ===== */
.home-v4{background:#e9e0d6;color:#30241f}
.v4{width:min(1460px,calc(100% - 24px));margin:16px auto 46px}
.v4-eyebrow{margin:0;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#efcf7d}.v4-eyebrow.red{color:#a42720}.v4-eyebrow.gold{color:#efcf7d}
.v4-hero{position:relative;min-height:650px;overflow:hidden;background:#211714;border:1px solid #b88c45;border-bottom:5px solid #a62922}
.v4-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.v4-hero-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,19,16,.98) 0%,rgba(28,19,16,.91) 34%,rgba(28,19,16,.47) 58%,rgba(28,19,16,.03) 82%)}
.v4-hero-copy{position:relative;z-index:2;width:min(740px,58%);padding:78px 68px}.v4-mark{width:250px;max-height:86px;object-fit:contain;object-position:left center;margin-bottom:26px}
.v4-hero h1{font:700 clamp(56px,6.8vw,94px)/.91 Georgia,serif;letter-spacing:-.04em;color:#fff0d7;margin:12px 0 20px}.v4-lede{font-size:16px;line-height:1.7;color:#d8c5b4;max-width:620px;margin:0}
.v4-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}.v4-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;text-decoration:none;text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:900;border:1px solid #79604d}.v4-btn.primary{background:#a62922;border-color:#c64b42;color:#fff2dd}.v4-btn.dark{background:rgba(24,17,14,.62);color:#f0ddc1}
.v4-nav{display:grid;grid-template-columns:repeat(4,1fr);background:#241a17;border:1px solid #4c372d;border-top:0}.v4-nav a{display:grid;grid-template-columns:42px 1fr;padding:19px 22px;text-decoration:none;border-right:1px solid #4c372d}.v4-nav a:last-child{border-right:0}.v4-nav span{grid-row:1/3;font:700 21px Georgia,serif;color:#a82d25}.v4-nav strong{font:700 18px Georgia,serif;color:#efcf7d}.v4-nav small{font-size:9px;color:#a99283;margin-top:3px}
.v4-story{display:grid;grid-template-columns:1.05fr .95fr;min-height:500px;margin-top:18px;background:#f6eee4;border:1px solid #ccb79e;overflow:hidden}.v4-story-copy{padding:64px 60px;display:flex;flex-direction:column;justify-content:center}.v4-story h2,.v4-section-title h2,.v4-species h2,.v4-magic h2,.v4-monsters h2,.v4-builder h2,.v4-final h2{font:700 clamp(38px,4.5vw,62px)/1.02 Georgia,serif;letter-spacing:-.03em;margin:8px 0 16px;color:#90231e}.v4-story p:last-child,.v4-monster-copy p,.v4-builder-copy p,.v4-treasure-copy p{font-size:14px;line-height:1.72;color:#65554b;max-width:660px}.v4-story>img{width:100%;height:100%;object-fit:contain;object-position:center bottom;background:linear-gradient(145deg,#251a16,#661a15)}
.v4-classes,.v4-library{margin-top:18px;padding:48px;background:#f7f0e7;border:1px solid #ccb79e}.v4-section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.v4-section-title a{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;color:#9c2821;border-bottom:1px solid #9c2821;padding-bottom:5px}.v4-class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.v4-class{position:relative;min-height:440px;overflow:hidden;background:#211916;text-decoration:none;border-bottom:4px solid #aa2b24}.v4-class:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(22,15,12,.92) 100%)}.v4-class img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v4-class div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:27px}.v4-class small{color:#efcf7d;text-transform:uppercase;font-size:9px;letter-spacing:.14em;font-weight:900}.v4-class h3{font:700 40px Georgia,serif;color:#fff;margin:4px 0}.v4-class p{margin:0;color:#d5c4b7;font-size:11px}
.v4-species{position:relative;min-height:520px;margin-top:18px;overflow:hidden;background:#211916;border-bottom:5px solid #bd935d}.v4-species>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.v4-species-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,20,17,.96),rgba(29,20,17,.75) 40%,rgba(29,20,17,.03) 80%)}.v4-species-copy{position:relative;z-index:2;width:min(680px,54%);padding:76px 64px}.v4-species h2{color:#f4dfbb}.v4-species p,.v4-magic p{font-size:14px;line-height:1.72;color:#cdb9a8}.v4-inline{display:inline-block;margin-top:20px;color:#9c2821;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}.v4-inline.light{color:#efcf7d}
.v4-magic{display:grid;grid-template-columns:.95fr 1.05fr;min-height:510px;margin-top:18px;background:linear-gradient(105deg,#102721,#183a31 48%,#211714);overflow:hidden;border:1px solid #345047}.v4-magic-art{display:flex;align-items:center;justify-content:center;padding:24px}.v4-magic-art img{width:100%;height:460px;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(0,0,0,.36))}.v4-magic-copy{padding:66px 60px;display:flex;flex-direction:column;justify-content:center}.v4-magic h2{color:#f4dfbb}
.v4-monsters{display:grid;grid-template-columns:.9fr 1.1fr;min-height:540px;margin-top:18px;background:#f6eee4;border:1px solid #ccb79e;overflow:hidden}.v4-monster-copy{padding:68px 58px;display:flex;flex-direction:column;justify-content:center}.v4-monster-stack{position:relative;background:radial-gradient(circle at 50% 55%,rgba(118,37,70,.2),transparent 46%),linear-gradient(145deg,#1e1715,#3a201e);overflow:hidden}.v4-monster-stack img{position:absolute;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(0,0,0,.42))}.v4-monster-stack .dragon{width:72%;height:88%;right:3%;bottom:0}.v4-monster-stack .beholder{width:40%;height:48%;left:0;top:1%}
.v4-builder{position:relative;min-height:500px;margin-top:18px;overflow:hidden;background:#211714}.v4-builder>img{position:absolute;right:0;top:0;width:55%;height:100%;object-fit:contain;object-position:center bottom}.v4-builder-shade{position:absolute;inset:0;background:linear-gradient(90deg,#211714 0%,rgba(33,23,20,.96) 43%,rgba(33,23,20,.18) 78%)}.v4-builder-copy{position:relative;z-index:2;width:min(680px,55%);padding:70px 62px}.v4-builder h2{color:#f4dfbb}.v4-builder-copy p{color:#cdb9a8}.v4-builder-copy .v4-btn{margin-top:22px}
.v4-library-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ccb79e;border-bottom:1px solid #ccb79e}.v4-library-grid a{padding:24px 22px;text-decoration:none;border-right:1px solid #d8c7b5}.v4-library-grid a:last-child{border-right:0}.v4-library-grid span{font:700 20px Georgia,serif;color:#a82b24}.v4-library-grid h3{font:700 24px Georgia,serif;margin:8px 0;color:#3e302a}.v4-library-grid p{font-size:11px;line-height:1.5;color:#79685e;margin:0}
.v4-treasure{display:grid;grid-template-columns:.95fr 1.05fr;min-height:470px;margin-top:18px;background:linear-gradient(110deg,#211714 0%,#2b1d18 47%,#f4ebdf 47%,#f7f0e7 100%);overflow:hidden}.v4-treasure>img{width:100%;height:440px;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(0,0,0,.38));align-self:center}.v4-treasure-copy{padding:62px 58px;display:flex;flex-direction:column;justify-content:center}.v4-treasure-copy h2{font:700 clamp(36px,4vw,54px)/1.03 Georgia,serif;color:#90231e;margin:8px 0 16px}
.v4-final{margin-top:18px;padding:54px 58px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(100deg,#211714,#681a14);border-bottom:5px solid #d3aa4d}.v4-final h2{color:#f4dfbb;margin-bottom:0}
@media(max-width:980px){.v4-story,.v4-magic,.v4-monsters,.v4-treasure{grid-template-columns:1fr}.v4-class-grid{grid-template-columns:1fr}.v4-class{min-height:330px}.v4-builder>img{opacity:.28;width:85%}.v4-builder-copy,.v4-species-copy{width:72%}.v4-library-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.v4{width:calc(100% - 10px);margin-top:5px}.v4-hero{min-height:560px}.v4-hero-fade{background:linear-gradient(90deg,rgba(28,19,16,.95),rgba(28,19,16,.62))}.v4-hero-copy{width:100%;padding:52px 26px}.v4-mark{width:190px}.v4-nav{grid-template-columns:1fr 1fr}.v4-story-copy,.v4-magic-copy,.v4-monster-copy,.v4-builder-copy,.v4-treasure-copy,.v4-classes,.v4-library{padding:38px 24px}.v4-section-title{align-items:flex-start;flex-direction:column}.v4-species-copy,.v4-builder-copy{width:100%}.v4-species-fade{background:rgba(29,20,17,.7)}.v4-library-grid{grid-template-columns:1fr}.v4-library-grid a{border-right:0;border-bottom:1px solid #d8c7b5}.v4-final{padding:38px 24px;align-items:flex-start;flex-direction:column}}

/* ===== Species v4 cleanup ===== */
.species-layout{grid-template-columns:238px minmax(0,1fr)!important;gap:18px!important}
.species-sidebar{border-radius:0!important;border-color:#5a4438!important}.species-sidebar-head{padding:20px 18px 18px!important}
.species-group summary{min-height:54px!important;padding:0 14px!important}.species-group[open] summary{background:#8f241f!important}.species-group-list a{padding:11px 18px 11px 26px!important}
.species-panel{border-radius:0!important;border-color:#c7b49c!important}
.species-hero{min-height:390px!important}.species-hero-copy{min-height:390px!important;padding:54px 48px!important;width:min(610px,52%)!important}
.species-hero h1{font-size:clamp(58px,6vw,84px)!important}.species-hero p{max-width:450px!important}
.species-body{padding:0 42px 48px!important}.species-overview{margin:26px 0 38px!important}.species-stat{min-height:86px!important;padding:17px 13px!important}
.species-section-title{border-bottom:1px solid #b72d25!important;padding-bottom:13px!important;margin-bottom:0!important}.species-section-title:before,.species-section-title:after{display:none!important}.species-section-title h2{background:none!important;color:#8f241f!important;padding:0!important;clip-path:none!important;font-size:32px!important}
.species-feature{padding:0!important}.species-feature summary{padding:20px 2px!important;font-size:20px!important}.species-feature[open] summary{color:#8f241f!important}.species-feature>div{padding:0 2px 22px!important;max-width:900px!important}
@media(max-width:900px){.species-layout{grid-template-columns:1fr!important}.species-hero-copy{width:70%!important}.species-sidebar{max-height:none!important}}
@media(max-width:620px){.species-hero-copy{width:100%!important;padding:36px 24px!important}.species-body{padding:0 20px 34px!important}}

/* ===== Home v5, fantasy editorial reference ===== */
.home-v5{background:#0d0b0a;color:#efe4d4}
.h5{width:100%;margin:0}
.h5-kicker{margin:0 0 10px;font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:#f0ce84}.h5-kicker.red{color:#bd3b32}.h5-kicker.gold{color:#f0ce84}
.h5-hero{position:relative;min-height:720px;overflow:hidden;background:#0d0b0a}
.h5-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.h5-hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,7,6,.96) 0%,rgba(9,7,6,.83) 33%,rgba(9,7,6,.38) 58%,rgba(9,7,6,.08) 80%),linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.45))}
.h5-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;opacity:.62;pointer-events:none}
.h5-hero-copy{position:relative;z-index:3;width:min(700px,52%);padding:110px 7vw 90px}
.h5-hero h1{font:700 clamp(60px,7vw,104px)/.9 Georgia,serif;letter-spacing:-.045em;margin:0 0 26px;color:#f6ead4}.h5-hero h1 span{color:#efc45a}
.h5-hero-copy>p:not(.h5-kicker){max-width:640px;color:#d6c4b3;font-size:16px;line-height:1.7}
.h5-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.h5-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.07em;border:1px solid #8a725b}.h5-btn.primary{background:#a62a23;border-color:#cf5147;color:#fff2dc}.h5-btn.ghost{background:rgba(13,10,8,.58);color:#f0ddc1}

.h5-chapter{background:#0e0c0b;padding:82px 7vw 72px;border-top:1px solid #3e3027;border-bottom:1px solid #3e3027}.h5-chapter-intro{max-width:780px;margin-bottom:44px}.h5-chapter h2,.h5-feature-pairs h2,.h5-lineup h2,.h5-species h2,.h5-magic h2,.h5-encounters h2,.h5-library h2,.h5-treasure h2,.h5-final h2{font:700 clamp(38px,4.6vw,64px)/1.02 Georgia,serif;letter-spacing:-.03em;margin:0 0 15px}.h5-chapter-intro p:last-child,.h5-pair-copy p,.h5-species-copy p,.h5-magic-copy p,.h5-encounter-copy p,.h5-treasure-copy p{font-size:14px;line-height:1.72;color:#b9aa9d;max-width:680px}
.h5-chapter-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #4a392f;border-bottom:1px solid #4a392f}.h5-chapter-grid article{padding:30px 24px;border-right:1px solid #4a392f}.h5-chapter-grid article:last-child{border-right:0}.h5-chapter-grid span{font:700 24px Georgia,serif;color:#a82f27}.h5-chapter-grid h3{font:700 24px Georgia,serif;color:#efcf7d;margin:10px 0 7px}.h5-chapter-grid p{font-size:11px;line-height:1.55;color:#9d8e82;margin:0}

.h5-feature-pairs{background:#120f0d}.h5-pair{display:grid;grid-template-columns:1fr 1fr;min-height:540px;border-bottom:1px solid #3b2e27}.h5-pair-copy{padding:72px 7vw;display:flex;flex-direction:column;justify-content:center}.h5-pair img{width:100%;height:100%;object-fit:cover;background:#201714}.h5-pair.text-first img{object-position:center 30%}.h5-pair.image-first img{object-fit:contain;object-position:center bottom;background:linear-gradient(135deg,#1a1210,#5f1915)}.h5-link{display:inline-block;width:max-content;margin-top:22px;color:#c33931;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.08em;border-bottom:1px solid currentColor;padding-bottom:4px}.h5-link.light{color:#f0ce84}

.h5-lineup{padding:78px 7vw 72px;background:linear-gradient(180deg,#171c4d,#202b72 60%,#192254);text-align:center;position:relative;overflow:hidden}.h5-lineup:before{content:"";position:absolute;inset:0;background:url('/assets/images/art/trail-landscape.webp') center/cover no-repeat;opacity:.08}.h5-lineup>*{position:relative;z-index:1}.h5-lineup-head{max-width:740px;margin:0 auto 42px}.h5-lineup h2{color:#f4ead9}.h5-lineup-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;max-width:1050px;margin:0 auto 34px}.h5-lineup-grid a{text-decoration:none;color:#fff}.portrait{width:170px;height:170px;display:block;margin:0 auto 17px;border-radius:50%;overflow:hidden;border:2px solid #c89c45;box-shadow:0 14px 28px rgba(0,0,0,.25);background:#211714}.portrait img{width:100%;height:100%;object-fit:cover}.h5-lineup-grid strong{display:block;font:700 21px Georgia,serif;color:#fff}.h5-lineup-grid small{display:block;color:#9ea7d2;margin-top:5px;text-transform:uppercase;letter-spacing:.1em;font-size:8px}.h5-pill{display:inline-flex;padding:10px 18px;border:1px solid rgba(255,255,255,.36);border-radius:999px;color:#fff;text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:.12em;font-weight:900}

.h5-species{position:relative;min-height:560px;overflow:hidden;background:#211714}.h5-species>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.h5-species-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,11,9,.94),rgba(16,11,9,.7) 42%,rgba(16,11,9,.05) 78%)}.h5-species-copy{position:relative;z-index:2;width:min(690px,52%);padding:90px 7vw}.h5-species h2{color:#f3e5cd}

.h5-gallery{background:#101010}.h5-gallery-strip{display:grid;grid-template-columns:1.15fr .85fr 1.35fr 1fr;height:330px}.h5-gallery-strip img{width:100%;height:100%;object-fit:cover}.h5-gallery-strip img:nth-child(2){object-position:center top}.h5-gallery-strip img:nth-child(4){object-position:center}

.h5-magic{display:grid;grid-template-columns:1fr 1fr;min-height:560px;background:linear-gradient(115deg,#142820,#17392f 48%,#17110f);overflow:hidden}.h5-magic-copy{padding:80px 7vw;display:flex;flex-direction:column;justify-content:center}.h5-magic h2{color:#f2e2c6}.h5-magic>img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 36px rgba(0,0,0,.45));padding:32px}

.h5-encounters{padding:78px 7vw;background:#efe4d5;color:#3c2d27}.h5-encounter-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 340px;gap:18px}.h5-encounter-copy{padding:20px 10px 30px 0}.h5-encounters h2{color:#8e231e}.h5-encounter-copy p{color:#6e5b50}.h5-monster-panel,.h5-map-panel,.h5-dragon-panel{position:relative;overflow:hidden;background:#211714}.h5-monster-panel img,.h5-map-panel img,.h5-dragon-panel img{width:100%;height:100%;object-fit:cover}.h5-monster-panel img{object-fit:contain;padding:18px}.h5-map-panel{grid-column:1}.h5-dragon-panel{grid-column:2}.h5-dragon-panel img{object-fit:contain;padding:12px;background:#211714}

.h5-library{padding:74px 7vw;background:#10100f}.h5-library-head{max-width:760px;margin-bottom:34px}.h5-library h2{color:#f3e5cd}.h5-library-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #46362e;border-bottom:1px solid #46362e}.h5-library-grid a{padding:28px 22px;text-decoration:none;border-right:1px solid #46362e}.h5-library-grid a:last-child{border-right:0}.h5-library-grid span{font:700 20px Georgia,serif;color:#b8322b}.h5-library-grid strong{display:block;font:700 24px Georgia,serif;color:#efcf7d;margin:9px 0 6px}.h5-library-grid small{color:#9d8e81;line-height:1.5;font-size:10px}

.h5-treasure{display:grid;grid-template-columns:1fr 1fr;min-height:500px;background:linear-gradient(110deg,#15100e 0%,#211714 50%,#8e231e 100%);overflow:hidden}.h5-treasure>img{width:100%;height:100%;object-fit:contain;padding:24px;filter:drop-shadow(0 18px 30px rgba(0,0,0,.45))}.h5-treasure-copy{padding:70px 7vw;display:flex;flex-direction:column;justify-content:center}.h5-treasure h2{color:#f2e2c6}

.h5-final{padding:60px 7vw;background:#17110f;border-top:1px solid #46362e;border-bottom:5px solid #c49a45;display:flex;justify-content:space-between;align-items:center;gap:30px}.h5-final h2{color:#f2e2c6;margin:0}

@media(max-width:980px){.h5-hero-copy{width:70%}.h5-chapter-grid,.h5-lineup-grid,.h5-library-grid{grid-template-columns:1fr 1fr}.h5-pair,.h5-magic,.h5-treasure{grid-template-columns:1fr}.h5-species-copy{width:68%}.h5-gallery-strip{grid-template-columns:1fr 1fr;height:auto}.h5-gallery-strip img{height:260px}.h5-encounter-grid{grid-template-columns:1fr;grid-template-rows:auto 320px 320px 320px}.h5-map-panel,.h5-dragon-panel{grid-column:auto}}
@media(max-width:650px){.h5-hero{min-height:620px}.h5-hero-vignette{background:linear-gradient(90deg,rgba(9,7,6,.94),rgba(9,7,6,.65))}.h5-hero-copy{width:100%;padding:70px 24px}.h5-frame{opacity:.3}.h5-chapter,.h5-lineup,.h5-encounters,.h5-library{padding:52px 24px}.h5-chapter-grid,.h5-lineup-grid,.h5-library-grid{grid-template-columns:1fr}.h5-chapter-grid article,.h5-library-grid a{border-right:0;border-bottom:1px solid #46362e}.h5-pair-copy,.h5-magic-copy,.h5-treasure-copy{padding:50px 24px}.h5-pair img{min-height:360px}.h5-lineup-grid{gap:32px}.h5-species{min-height:520px}.h5-species-shade{background:rgba(16,11,9,.72)}.h5-species-copy{width:100%;padding:64px 24px}.h5-gallery-strip{grid-template-columns:1fr}.h5-gallery-strip img{height:300px}.h5-magic>img{min-height:380px}.h5-final{padding:44px 24px;align-items:flex-start;flex-direction:column}}

/* ===== Home v6, Dragon Stories x fantasy sourcebook ===== */
.home-v6{background:#090707;color:#efe5d7}
.h6{width:100%;overflow:hidden}
.h6-eyebrow{margin:0 0 10px;font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:#e8c870}.h6-eyebrow.red{color:#a92c25}.h6-eyebrow.gold{color:#e8c870}.h6-eyebrow.cyan{color:#76cbd3}
.h6 h1,.h6 h2,.h6 h3{font-family:Georgia,serif}
.h6-hero{position:relative;min-height:760px;background:#070606;overflow:hidden}
.h6-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%;filter:saturate(.85) brightness(.72)}
.h6-hero-dragon{position:absolute;right:-2vw;bottom:-6vh;width:min(54vw,880px);height:92%;object-fit:contain;object-position:right bottom;filter:drop-shadow(0 24px 45px rgba(0,0,0,.55))}
.h6-hero-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.98) 0%,rgba(5,5,5,.88) 34%,rgba(5,5,5,.55) 53%,rgba(5,5,5,.16) 72%,rgba(5,5,5,.06) 100%),linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.52))}
.h6-hero-copy{position:relative;z-index:3;width:min(720px,52%);padding:95px 7vw 90px}.h6-logo{width:min(360px,75%);max-height:120px;object-fit:contain;object-position:left center;margin-bottom:28px}
.h6-hero h1{font-size:clamp(58px,7vw,102px);line-height:.92;letter-spacing:-.045em;margin:0 0 22px;color:#f8eddc}.h6-hero-copy>p:not(.h6-eyebrow){font-size:16px;line-height:1.7;color:#ccbbaa;max-width:620px}
.h6-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.h6-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;text-decoration:none;text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:900;border:1px solid #806b58}.h6-btn.primary{background:#a92c25;border-color:#cb5147;color:#fff2dc}.h6-btn.ghost{background:rgba(10,8,7,.52);color:#f0ddc1}

.h6-dark-intro{display:grid;grid-template-columns:.9fr 1.1fr;min-height:620px;background:radial-gradient(circle at 20% 45%,rgba(22,102,111,.18),transparent 26%),linear-gradient(120deg,#081015,#0d0c0c 62%,#140b0a);padding:70px 7vw;gap:48px;align-items:center}
.h6-intro-art{position:relative;min-height:500px}.h6-intro-art:before{content:"";position:absolute;inset:8% 15%;border-radius:32px;background:linear-gradient(160deg,#10252b,#131111);box-shadow:0 30px 60px rgba(0,0,0,.38)}.h6-intro-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 28px rgba(0,0,0,.45))}
.h6-intro-copy{max-width:720px}.h6-intro-copy h2,.h6-origin h2,.h6-gallery h2,.h6-features h2,.h6-builder h2,.h6-final h2{font-size:clamp(40px,4.8vw,66px);line-height:1.02;letter-spacing:-.03em;margin:0 0 18px}.h6-intro-copy>p:not(.h6-eyebrow){font-size:14px;line-height:1.75;color:#aeb5b5}
.h6-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;border-top:1px solid #304044;border-bottom:1px solid #304044}.h6-stats div{padding:20px 16px;border-right:1px solid #304044}.h6-stats div:last-child{border-right:0}.h6-stats strong{display:block;font:700 30px Georgia,serif;color:#e8c870}.h6-stats span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#839094}

.h6-parchment{position:relative;background:#efe6db;color:#3d302a;padding:86px 7vw}.h6-parchment:before,.h6-parchment:after{content:"";position:absolute;left:0;right:0;height:24px;background:#efe6db;clip-path:polygon(0 55%,3% 20%,7% 65%,11% 10%,16% 60%,22% 15%,29% 62%,34% 25%,40% 67%,47% 8%,53% 60%,61% 18%,68% 70%,74% 22%,82% 62%,89% 12%,95% 68%,100% 35%,100% 100%,0 100%)}.h6-parchment:before{top:-23px}.h6-parchment:after{bottom:-23px;transform:rotate(180deg)}
.h6-paper-head{max-width:820px;margin-bottom:42px}.h6-paper-head h2{font-size:clamp(42px,4.7vw,64px);line-height:1;letter-spacing:-.03em;color:#7f211d;margin:0 0 14px}.h6-paper-head p:last-child{font-size:14px;line-height:1.7;color:#67564c;max-width:680px}
.h6-class-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.h6-class-card{position:relative;min-height:500px;overflow:hidden;background:#1d1513;text-decoration:none;box-shadow:0 18px 34px rgba(73,51,40,.14)}.h6-class-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 32%,rgba(19,13,11,.93) 100%)}.h6-class-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.h6-class-card div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:28px}.h6-class-card span{font-size:9px;color:#e8c870;text-transform:uppercase;letter-spacing:.14em;font-weight:900}.h6-class-card h3{font-size:38px;color:#fff;margin:5px 0}.h6-class-card p{font-size:11px;color:#d6c7b9;margin:0}.h6-pill{display:inline-flex;margin-top:30px;padding:10px 18px;border-radius:999px;text-decoration:none;text-transform:uppercase;font-size:9px;font-weight:900;letter-spacing:.1em}.h6-pill.dark{color:#61211d;border:1px solid #8a5e50}

.h6-species{position:relative;min-height:620px;background:#1b1210;overflow:hidden}.h6-species-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.h6-species-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,9,8,.95),rgba(13,9,8,.73) 39%,rgba(13,9,8,.14) 72%,rgba(13,9,8,0) 100%)}.h6-species-copy{position:relative;z-index:2;width:min(680px,52%);padding:100px 7vw}.h6-species h2{font-size:clamp(44px,5vw,70px);line-height:1;letter-spacing:-.035em;color:#f5e5ca;margin:0 0 18px}.h6-species-copy>p:not(.h6-eyebrow){font-size:14px;line-height:1.72;color:#c9b7a7;max-width:600px}.h6-species .h6-btn{margin-top:24px}

.h6-origin{padding:86px 7vw;background:radial-gradient(circle at 60% 15%,rgba(35,91,105,.1),transparent 24%),#080c10}.h6-origin-head{max-width:780px;margin-bottom:48px}.h6-origin h2{color:#f4eadc}.h6-origin-list{display:grid;gap:42px}.h6-origin-list article{display:grid;grid-template-columns:.78fr 1.22fr;gap:48px;align-items:center;max-width:1100px}.h6-origin-list article.reverse{grid-template-columns:1.22fr .78fr;margin-left:auto}.h6-origin-list article.reverse img{order:2}.h6-origin-list img{width:100%;height:380px;object-fit:contain;background:radial-gradient(circle,#10232a 0%,transparent 68%)}.h6-origin-list article div{max-width:580px}.h6-origin-list article span{font:700 18px Georgia,serif;color:#65c2cb}.h6-origin-list h3{font-size:34px;color:#f1e6d8;margin:7px 0 10px}.h6-origin-list p{font-size:13px;line-height:1.7;color:#9da9aa}.h6-origin-list a{display:inline-block;margin-top:12px;color:#70c9d0;text-decoration:none;text-transform:uppercase;font-size:9px;font-weight:900;letter-spacing:.08em}

.h6-gallery{background:#0a0807;padding:76px 0 0}.h6-gallery-label{padding:0 7vw 38px;max-width:900px}.h6-gallery h2{color:#f1e5d4}.h6-gallery-grid{display:grid;grid-template-columns:1.35fr .8fr 1.15fr .9fr 1.2fr;height:360px}.h6-gallery-grid img{width:100%;height:100%;object-fit:cover}.h6-gallery-grid img:nth-child(2),.h6-gallery-grid img:nth-child(4),.h6-gallery-grid img:nth-child(5){object-fit:contain;background:#17100e;padding:12px}

.h6-features{display:grid;grid-template-columns:.9fr 1.1fr;min-height:650px;background:linear-gradient(120deg,#071419,#081015 55%,#0b0908);padding:66px 7vw;gap:44px;align-items:center}.h6-features-art img{width:100%;height:560px;object-fit:contain;filter:drop-shadow(0 20px 38px rgba(0,0,0,.48))}.h6-features h2{color:#f4e8d7}.h6-feature-orbit{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.h6-feature-orbit div{border:1px solid #2d5360;padding:20px;background:rgba(13,26,31,.66);border-radius:16px}.h6-feature-orbit strong{display:block;color:#71cad2;font:700 20px Georgia,serif;margin-bottom:5px}.h6-feature-orbit span{font-size:10px;line-height:1.45;color:#9fb0b3}

.h6-library{z-index:2}.h6-rule-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #cbb9a4;border-bottom:1px solid #cbb9a4}.h6-rule-grid a{padding:28px 22px;text-decoration:none;border-right:1px solid #d8c8b6}.h6-rule-grid a:last-child{border-right:0}.h6-rule-grid span{font:700 20px Georgia,serif;color:#a52b25}.h6-rule-grid strong{display:block;font:700 25px Georgia,serif;color:#3b2d27;margin:8px 0}.h6-rule-grid small{font-size:10px;line-height:1.5;color:#75645a}

.h6-builder{position:relative;min-height:600px;background:#1d1210;overflow:hidden}.h6-builder>img{position:absolute;right:0;bottom:0;width:58%;height:100%;object-fit:contain;object-position:right bottom}.h6-builder-fade{position:absolute;inset:0;background:linear-gradient(90deg,#1b1210 0%,rgba(27,18,16,.95) 43%,rgba(27,18,16,.28) 72%,transparent 100%)}.h6-builder-copy{position:relative;z-index:2;width:min(700px,56%);padding:95px 7vw}.h6-builder h2{color:#f4e6d2}.h6-builder-copy>p:not(.h6-eyebrow){font-size:14px;line-height:1.7;color:#c2b0a1;max-width:610px}.h6-builder .h6-btn{margin-top:24px}

.h6-final{position:relative;min-height:420px;overflow:hidden;background:#110c0a}.h6-final>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.58)}.h6-final-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,7,6,.9),rgba(10,7,6,.52),rgba(10,7,6,.35))}.h6-final-copy{position:relative;z-index:2;padding:82px 7vw;max-width:950px}.h6-final h2{color:#f6e8d3;font-size:clamp(48px,6vw,78px)}

@media(max-width:980px){
  .h6-hero-copy,.h6-species-copy,.h6-builder-copy{width:68%}
  .h6-hero-dragon{opacity:.48;width:68vw}
  .h6-dark-intro,.h6-features{grid-template-columns:1fr}
  .h6-class-row,.h6-rule-grid{grid-template-columns:1fr}
  .h6-origin-list article,.h6-origin-list article.reverse{grid-template-columns:1fr;margin:0}.h6-origin-list article.reverse img{order:0}
  .h6-gallery-grid{grid-template-columns:1fr 1fr;height:auto}.h6-gallery-grid img{height:290px}
}
@media(max-width:650px){
  .h6-hero{min-height:650px}.h6-hero-copy{width:100%;padding:72px 24px}.h6-logo{width:230px}.h6-hero-dragon{width:100%;opacity:.28}.h6-hero-fade{background:linear-gradient(90deg,rgba(5,5,5,.95),rgba(5,5,5,.65))}
  .h6-dark-intro,.h6-features{padding:50px 24px}.h6-intro-art{min-height:390px}.h6-stats{grid-template-columns:1fr}.h6-stats div{border-right:0;border-bottom:1px solid #304044}
  .h6-parchment{padding:62px 24px}.h6-class-card{min-height:400px}
  .h6-species{min-height:540px}.h6-species-copy{width:100%;padding:72px 24px}.h6-species-fade{background:rgba(13,9,8,.7)}
  .h6-origin{padding:58px 24px}.h6-origin-list img{height:320px}.h6-origin-list article{gap:20px}
  .h6-gallery{padding-top:56px}.h6-gallery-label{padding:0 24px 30px}.h6-gallery-grid{grid-template-columns:1fr}.h6-gallery-grid img{height:300px}
  .h6-feature-orbit{grid-template-columns:1fr}
  .h6-builder-copy{width:100%;padding:72px 24px}.h6-builder>img{width:100%;opacity:.28}.h6-builder-fade{background:rgba(27,18,16,.64)}
  .h6-final-copy{padding:64px 24px}
}

/* ===== Home v7, polished fantasy sourcebook ===== */
.home-v7{background:#100b09;color:#f3e6d4}
.home7{overflow:hidden}
.home7-kicker{display:block;margin:0 0 10px;font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:#e7c76f}
.home7-kicker.red{color:#a72e27}.home7-kicker.gold{color:#e7c76f}
.home7 h1,.home7 h2,.home7 h3{font-family:Georgia,serif}
.home7-hero{position:relative;min-height:760px;background:#100b09;overflow:hidden}
.home7-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) brightness(.7)}
.home7-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,7,6,.98) 0%,rgba(10,7,6,.91) 34%,rgba(10,7,6,.54) 56%,rgba(10,7,6,.08) 82%),linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.38))}
.home7-hero-creature{position:absolute;right:-5vw;bottom:-7vh;width:min(56vw,900px);height:90%;object-fit:contain;object-position:right bottom;filter:drop-shadow(0 28px 48px rgba(0,0,0,.55));opacity:.92}
.home7-hero-copy{position:relative;z-index:3;width:min(720px,54%);padding:95px 7vw 88px}.home7-logo{width:min(360px,72%);max-height:120px;object-fit:contain;object-position:left center;margin-bottom:24px}
.home7-hero h1{font-size:clamp(60px,7vw,104px);line-height:.9;letter-spacing:-.045em;color:#fff0d9;margin:0 0 24px}.home7-hero h1 em{font-style:normal;color:#e7bd59}.home7-hero-copy>p{max-width:620px;font-size:16px;line-height:1.72;color:#d2c1b2}
.home7-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.home7-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:.07em;font-weight:900;border:1px solid #806a55}.home7-btn.primary{background:#a72c25;border-color:#cc5046;color:#fff0dc}.home7-btn.secondary{background:rgba(15,10,8,.55);color:#f0ddbf}
.home7-paper-intro{position:relative;background:#efe5d8;color:#3d302a;padding:84px 7vw 74px;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}
.home7-paper-intro:before,.home7-paper-intro:after{content:"";position:absolute;left:0;right:0;height:22px;background:#efe5d8}.home7-paper-intro:before{top:-21px;clip-path:polygon(0 68%,4% 20%,8% 62%,13% 16%,18% 68%,24% 28%,30% 64%,36% 18%,42% 66%,49% 12%,56% 62%,63% 20%,69% 70%,76% 24%,84% 66%,91% 16%,96% 62%,100% 42%,100% 100%,0 100%)}.home7-paper-intro:after{bottom:-21px;clip-path:polygon(0 0,100% 0,100% 40%,96% 68%,90% 18%,84% 66%,77% 22%,70% 70%,63% 20%,56% 64%,49% 14%,42% 66%,35% 20%,29% 62%,23% 28%,17% 68%,11% 18%,6% 64%,0 32%)}
.home7-paper-copy h2,.home7-section-head h2,.home7-species h2,.home7-story h2,.home7-magic h2,.home7-library h2,.home7-final h2{font-size:clamp(40px,4.8vw,68px);line-height:1;letter-spacing:-.03em;margin:0 0 16px}.home7-paper-copy h2,.home7-section-head h2,.home7-library h2{color:#80221d}.home7-paper-copy p{font-size:14px;line-height:1.72;color:#66564c;max-width:700px}
.home7-paper-points{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #c9b5a0;border-bottom:1px solid #c9b5a0}.home7-paper-points article{padding:24px 18px;border-right:1px solid #d7c5b2}.home7-paper-points article:last-child{border-right:0}.home7-paper-points span{font:700 18px Georgia,serif;color:#a62b25}.home7-paper-points strong{display:block;font:700 21px Georgia,serif;color:#3d302a;margin:8px 0 5px}.home7-paper-points p{font-size:10px;line-height:1.45;color:#78675d;margin:0}
.home7-classes{padding:88px 7vw;background:#f7f0e7;color:#3d302a}.home7-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.home7-section-head>a{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#95251f;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}.home7-section-head.light h2{color:#f4e5d0}
.home7-class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home7-class{position:relative;min-height:500px;overflow:hidden;background:#211613;text-decoration:none;box-shadow:0 16px 34px rgba(63,45,34,.15)}.home7-class img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home7-class-fade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 28%,rgba(18,12,10,.94) 100%)}.home7-class-copy{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:28px}.home7-class-copy span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:#e7c76f}.home7-class-copy h3{font-size:40px;color:#fff;margin:5px 0}.home7-class-copy p{font-size:11px;color:#d8c8bb;margin:0}
.home7-species{position:relative;min-height:620px;background:#1a120f;overflow:hidden}.home7-species-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home7-species-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,9,8,.96) 0%,rgba(13,9,8,.76) 38%,rgba(13,9,8,.12) 75%,rgba(13,9,8,0) 100%)}.home7-species-copy{position:relative;z-index:2;width:min(700px,54%);padding:96px 7vw}.home7-species h2{color:#f5e5cd}.home7-species p{font-size:14px;line-height:1.72;color:#c9b7a7;max-width:600px}.home7-species .home7-btn{margin-top:24px}
.home7-story{display:grid;grid-template-columns:.95fr 1.05fr;min-height:600px;background:linear-gradient(120deg,#160e0c,#511714);overflow:hidden}.home7-story-image{display:flex;align-items:end;justify-content:center}.home7-story-image img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 30px rgba(0,0,0,.45))}.home7-story-copy{padding:80px 7vw;display:flex;flex-direction:column;justify-content:center}.home7-story h2{color:#f2dfbf}.home7-story p{font-size:14px;line-height:1.72;color:#c5b1a1;max-width:640px}.home7-story .home7-btn{margin-top:24px;width:max-content}
.home7-magic{display:grid;grid-template-columns:1.05fr .95fr;min-height:600px;background:radial-gradient(circle at 75% 50%,rgba(44,141,110,.18),transparent 30%),linear-gradient(120deg,#0d1714,#10110f 58%,#1b100e);overflow:hidden}.home7-magic-copy{padding:84px 7vw;display:flex;flex-direction:column;justify-content:center}.home7-magic h2{color:#f3e2c5}.home7-magic p{font-size:14px;line-height:1.72;color:#b8c2bb;max-width:620px}.home7-magic>img{width:100%;height:100%;object-fit:contain;padding:30px;filter:drop-shadow(0 20px 34px rgba(0,0,0,.45))}.home7-inline{display:inline-block;width:max-content;margin-top:20px;color:#e7c76f;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.08em;border-bottom:1px solid currentColor;padding-bottom:4px}
.home7-adventure{padding:84px 7vw;background:#0c0a09}.home7-collage{display:grid;grid-template-columns:1.3fr .8fr .9fr;grid-auto-rows:250px;gap:14px}.home7-collage figure{margin:0;overflow:hidden;background:#1b1310}.home7-collage figure.wide{grid-row:span 2}.home7-collage img{width:100%;height:100%;object-fit:cover}.home7-collage figure:nth-child(2) img,.home7-collage figure:nth-child(4) img,.home7-collage figure:nth-child(5) img{object-fit:contain;padding:12px}
.home7-library{display:grid;grid-template-columns:.78fr 1.22fr;gap:50px;padding:86px 7vw;background:#efe5d8;color:#3d302a}.home7-library-copy p{font-size:14px;line-height:1.7;color:#6a5a50}.home7-rule-list{border-top:1px solid #c8b49f}.home7-rule-list a{display:grid;grid-template-columns:54px 180px 1fr 24px;gap:16px;align-items:center;padding:20px 8px;border-bottom:1px solid #d7c6b4;text-decoration:none}.home7-rule-list span{font:700 17px Georgia,serif;color:#a52b25}.home7-rule-list strong{font:700 21px Georgia,serif;color:#3d302a}.home7-rule-list small{font-size:10px;color:#78675d}.home7-rule-list b{color:#a52b25}
.home7-artstrip{display:grid;grid-template-columns:1fr .85fr 1.2fr 1fr;height:360px;background:#0c0a09}.home7-artstrip img{width:100%;height:100%;object-fit:cover}.home7-artstrip img:nth-child(2),.home7-artstrip img:nth-child(4){object-fit:contain;padding:12px;background:#18100e}
.home7-final{position:relative;min-height:480px;background:#100b09;overflow:hidden}.home7-final>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.52)}.home7-final-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,8,7,.9),rgba(12,8,7,.5),rgba(12,8,7,.32))}.home7-final-copy{position:relative;z-index:2;padding:92px 7vw;max-width:960px}.home7-final h2{color:#f5e6cf;font-size:clamp(50px,6vw,82px)}
@media(max-width:980px){.home7-hero-copy,.home7-species-copy{width:70%}.home7-hero-creature{opacity:.48;width:70vw}.home7-paper-intro,.home7-library,.home7-story,.home7-magic{grid-template-columns:1fr}.home7-paper-points,.home7-class-grid{grid-template-columns:1fr}.home7-paper-points article{border-right:0;border-bottom:1px solid #d7c5b2}.home7-story-image img{max-height:500px}.home7-collage{grid-template-columns:1fr 1fr}.home7-collage figure.wide{grid-row:auto}.home7-artstrip{grid-template-columns:1fr 1fr;height:auto}.home7-artstrip img{height:300px}}
@media(max-width:650px){.home7-hero{min-height:650px}.home7-hero-copy{width:100%;padding:72px 24px}.home7-logo{width:230px}.home7-hero-creature{width:100%;opacity:.26}.home7-hero-overlay{background:linear-gradient(90deg,rgba(10,7,6,.95),rgba(10,7,6,.68))}.home7-paper-intro,.home7-classes,.home7-adventure,.home7-library{padding:56px 24px}.home7-section-head{align-items:flex-start;flex-direction:column}.home7-class{min-height:410px}.home7-species{min-height:540px}.home7-species-copy{width:100%;padding:72px 24px}.home7-species-overlay{background:rgba(13,9,8,.72)}.home7-story-copy,.home7-magic-copy{padding:54px 24px}.home7-magic>img{min-height:360px}.home7-collage{grid-template-columns:1fr;grid-auto-rows:290px}.home7-rule-list a{grid-template-columns:40px 1fr 22px}.home7-rule-list small{grid-column:2}.home7-artstrip{grid-template-columns:1fr}.home7-artstrip img{height:300px}.home7-final-copy{padding:70px 24px}}

/* ===== Home v8, informative 5e revision sourcebook ===== */
.home-v8{background:#17100d;color:#f2e7d8}
.edge8{overflow:hidden}
.edge8-kicker{display:block;margin:0 0 10px;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#d8b75f}.edge8-kicker.red{color:#9e2b25}.edge8-kicker.gold{color:#e0bd61}.edge8-kicker.cyan{color:#8bcad0}
.edge8 h1,.edge8 h2,.edge8 h3{font-family:Georgia,serif}
.edge8-hero{position:relative;min-height:650px;background:#120c0a;overflow:hidden}
.edge8-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%;filter:saturate(.9) brightness(.62)}
.edge8-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,10,8,.98) 0%,rgba(15,10,8,.9) 42%,rgba(15,10,8,.58) 61%,rgba(15,10,8,.14) 82%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.3))}
.edge8-hero-dragon{position:absolute;right:-5vw;bottom:-12%;width:min(51vw,820px);height:88%;object-fit:contain;filter:drop-shadow(0 26px 44px rgba(0,0,0,.58));opacity:.88}
.edge8-hero-copy{position:relative;z-index:3;width:min(780px,58%);padding:86px 7vw 78px}.edge8-hero-logo{width:min(340px,66%);max-height:112px;object-fit:contain;object-position:left center;margin-bottom:28px}
.edge8-hero h1{font-size:clamp(52px,6vw,88px);line-height:.95;letter-spacing:-.045em;color:#f5e9d7;margin:0 0 24px}.edge8-meta{font-size:17px;line-height:1.72;color:#d3c1b0;max-width:720px;margin:0}
.edge8-jump{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;padding:16px 24px;background:#0c0908;border-top:1px solid #4a342b;border-bottom:1px solid #4a342b}.edge8-jump a{color:#d9c7b6;text-decoration:none;text-transform:uppercase;font-size:9px;font-weight:900;letter-spacing:.1em}.edge8-jump a:hover{color:#e0bd61}
.edge8-paper{position:relative;background:#efe5d7;color:#3c302a}.edge8-dark{background:#0d0b0a;color:#f1e5d5}
.edge8-why{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center;padding:82px 7vw}.edge8-copy h2,.edge8-principle h2,.edge8-race-copy h2,.edge8-class-intro h2,.edge8-system-copy h2,.edge8-magic h2,.edge8-vtt h2,.edge8-browse h2{font-size:clamp(42px,4.8vw,66px);line-height:1.02;letter-spacing:-.03em;margin:0 0 18px}.edge8-copy h2,.edge8-race-copy h2,.edge8-system-copy h2,.edge8-browse h2{color:#7f231e}.edge8-copy p,.edge8-race-copy p,.edge8-system-copy p,.edge8-browse p{font-size:14px;line-height:1.75;color:#66564c}.edge8-copy p+p,.edge8-race-copy p+p{margin-top:16px}.edge8-why-art img{width:100%;height:500px;object-fit:contain;filter:drop-shadow(0 18px 32px rgba(87,61,42,.18))}
.edge8-principle{padding:82px 7vw;background:radial-gradient(circle at 70% 20%,rgba(118,37,31,.14),transparent 30%),#0d0a09}.edge8-principle-title{max-width:900px;margin-bottom:44px}.edge8-principle h2{color:#f3e6d2}.edge8-principle h2 em{font-style:normal;color:#dfb856}.edge8-principle-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #47352c;border-bottom:1px solid #47352c}.edge8-principle-grid article{padding:30px 24px;border-right:1px solid #47352c}.edge8-principle-grid article:last-child{border-right:0}.edge8-principle-grid span{font:700 22px Georgia,serif;color:#a92d25}.edge8-principle-grid h3{font-size:24px;color:#e9ca77;margin:9px 0}.edge8-principle-grid p{font-size:11px;line-height:1.58;color:#9f9186;margin:0}
.edge8-races{display:grid;grid-template-columns:1.03fr .97fr;gap:28px;min-height:680px;padding:86px 7vw;align-items:center}.edge8-race-copy{position:relative;z-index:3}.edge8-race-art{position:relative;min-height:570px}.edge8-race-art .race-world{position:absolute;inset:15% 0 auto 6%;width:94%;height:70%;object-fit:cover;border:1px solid #c8ad80;opacity:.32}.edge8-race-art .race-main{position:absolute;right:2%;bottom:0;width:58%;height:94%;object-fit:contain;filter:drop-shadow(0 20px 28px rgba(54,37,27,.22));z-index:2}.edge8-race-art .race-accent{position:absolute;left:4%;bottom:0;width:46%;height:78%;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(54,37,27,.18));z-index:3}.edge8-text-link{display:inline-block;margin-top:20px;color:#90251f;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.08em;border-bottom:1px solid currentColor;padding-bottom:4px}.edge8-text-link.light{color:#dfbd62}
.edge8-classes{padding:84px 7vw;background:radial-gradient(circle at 20% 20%,rgba(33,81,91,.12),transparent 28%),#0a0b0b}.edge8-class-intro{max-width:940px;margin-bottom:54px}.edge8-class-intro h2{color:#f2e4d0}.edge8-class-intro p{font-size:14px;line-height:1.72;color:#aeb4b2;max-width:850px}.edge8-class-intro p+p{margin-top:15px}
.edge8-case{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center;min-height:560px;border-top:1px solid #354047;padding:54px 0}.edge8-case.reverse{grid-template-columns:1.1fr .9fr}.edge8-case.reverse .edge8-case-art{order:2}.edge8-case-art{height:520px;background:radial-gradient(circle,#192325 0%,#0b0c0c 70%);overflow:hidden}.edge8-case-art img{width:100%;height:100%;object-fit:contain}.edge8-case-copy{max-width:650px}.edge8-number{display:block;font:700 42px Georgia,serif;color:#30464b;margin-bottom:12px}.edge8-case h3{font-size:42px;line-height:1.03;color:#f0e4d2;margin:0 0 15px}.edge8-case p{font-size:13px;line-height:1.72;color:#a4adab}
.edge8-system{padding:82px 7vw}.edge8-system-copy{max-width:900px;margin-bottom:38px}.edge8-system-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c7b39f;border-bottom:1px solid #c7b39f}.edge8-system-grid a{padding:28px 22px;text-decoration:none;border-right:1px solid #d6c5b2}.edge8-system-grid a:last-child{border-right:0}.edge8-system-grid span{font:700 19px Georgia,serif;color:#a52c26}.edge8-system-grid strong{display:block;font:700 23px Georgia,serif;color:#3c302a;margin:8px 0}.edge8-system-grid p{font-size:10px;line-height:1.5;color:#77675d;margin:0}
.edge8-magic{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;align-items:center;min-height:570px;padding:72px 7vw;background:radial-gradient(circle at 75% 50%,rgba(28,124,96,.18),transparent 28%),linear-gradient(120deg,#0f1b17,#11110f 58%,#1e120e)}.edge8-magic h2{color:#f2e2c7}.edge8-magic-copy p{font-size:14px;line-height:1.72;color:#b6c0b9;max-width:650px}.edge8-magic-art img{width:100%;height:480px;object-fit:contain;filter:drop-shadow(0 20px 38px rgba(0,0,0,.48))}
.edge8-vtt{display:grid;grid-template-columns:1fr 1fr;min-height:640px;background:#071015;color:#f0e7db}.edge8-vtt-art{position:relative;overflow:hidden;background:#060d10}.edge8-vtt-art>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62;filter:brightness(.62) saturate(.75)}.edge8-vtt-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(7,16,21,.2)),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.48))}.edge8-vtt-art .vtt-creature{position:absolute;right:5%;bottom:4%;width:48%;height:48%;object-fit:contain;z-index:2;filter:drop-shadow(0 18px 30px rgba(0,0,0,.55))}.edge8-vtt-copy{padding:78px 7vw;display:flex;flex-direction:column;justify-content:center}.edge8-vtt h2{color:#f4e7d2}.edge8-vtt-copy p{font-size:14px;line-height:1.72;color:#a8b8bd}.edge8-vtt-note{padding:16px 18px;border-left:3px solid #76c5cc;background:rgba(19,43,49,.42);color:#d3e5e6!important;margin-top:22px}
.edge8-browse{padding:82px 7vw}.edge8-browse-head{max-width:820px;margin-bottom:36px}.edge8-browse-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c8b49f}.edge8-browse-grid a{padding:24px 20px;text-decoration:none;border-right:1px solid #d7c6b4;border-bottom:1px solid #d7c6b4}.edge8-browse-grid a:nth-child(4n){border-right:0}.edge8-browse-grid strong{display:block;font:700 22px Georgia,serif;color:#3c302a;margin-bottom:5px}.edge8-browse-grid span{font-size:10px;line-height:1.45;color:#79695f}
.edge8-artline{display:grid;grid-template-columns:1fr .8fr 1.2fr;height:310px;background:#0c0908}.edge8-artline img{width:100%;height:100%;object-fit:cover}.edge8-artline img:nth-child(2),.edge8-artline img:nth-child(3){object-fit:contain;padding:12px;background:#17100d}
@media(max-width:980px){.edge8-hero-copy{width:70%}.edge8-hero-dragon{width:70vw;opacity:.45}.edge8-why,.edge8-races,.edge8-magic,.edge8-vtt{grid-template-columns:1fr}.edge8-race-art{min-height:520px}.edge8-principle-grid,.edge8-system-grid,.edge8-browse-grid{grid-template-columns:1fr 1fr}.edge8-case,.edge8-case.reverse{grid-template-columns:1fr}.edge8-case.reverse .edge8-case-art{order:0}.edge8-vtt-art{min-height:500px}}
@media(max-width:650px){.edge8-hero{min-height:620px}.edge8-hero-copy{width:100%;padding:66px 24px}.edge8-hero-logo{width:230px}.edge8-hero-dragon{width:100%;opacity:.24}.edge8-hero-shade{background:linear-gradient(90deg,rgba(15,10,8,.95),rgba(15,10,8,.66))}.edge8-jump{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.edge8-why,.edge8-races,.edge8-principle,.edge8-classes,.edge8-system,.edge8-magic,.edge8-vtt-copy,.edge8-browse{padding:56px 24px}.edge8-principle-grid,.edge8-system-grid,.edge8-browse-grid{grid-template-columns:1fr}.edge8-principle-grid article,.edge8-system-grid a,.edge8-browse-grid a{border-right:0}.edge8-race-art{min-height:420px}.edge8-case-art{height:400px}.edge8-case{gap:24px}.edge8-vtt-art{min-height:380px}.edge8-artline{grid-template-columns:1fr;height:auto}.edge8-artline img{height:280px}}

/* ===== 5th Edge homepage mobile redesign ===== */
@media (max-width: 900px){
  .home-v8 .site-header{position:sticky;top:0;z-index:50}
  .home-v8 .site-header-inner{
    width:100%;
    padding:10px 14px 0;
    display:block;
  }
  .home-v8 .site-brand{
    display:flex;
    justify-content:center;
    padding-bottom:8px;
  }
  .home-v8 .site-brand img{width:150px;max-height:50px}
  .home-v8 .site-links{
    display:flex!important;
    width:100%;
    gap:4px;
    overflow-x:auto;
    padding:0 2px 9px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .home-v8 .site-links::-webkit-scrollbar{display:none}
  .home-v8 .site-links a{
    flex:0 0 auto;
    white-space:nowrap;
    padding:9px 11px;
    font-size:10px;
    border-radius:4px;
  }

  .home-v8 .edge8-hero{
    min-height:640px;
    display:flex;
    align-items:flex-end;
  }
  .home-v8 .edge8-hero-bg{
    object-position:58% center;
    filter:saturate(.92) brightness(.5);
  }
  .home-v8 .edge8-hero-shade{
    background:
      linear-gradient(180deg,rgba(10,7,6,.12) 0%,rgba(10,7,6,.48) 32%,rgba(10,7,6,.93) 70%,rgba(10,7,6,.98) 100%),
      linear-gradient(90deg,rgba(10,7,6,.38),rgba(10,7,6,.05));
  }
  .home-v8 .edge8-hero-dragon{
    width:72vw;
    height:48%;
    right:-15vw;
    bottom:20%;
    opacity:.72;
  }
  .home-v8 .edge8-hero-copy{
    width:100%;
    padding:48px 22px 34px;
  }
  .home-v8 .edge8-hero-logo{
    width:210px;
    margin-bottom:20px;
  }
  .home-v8 .edge8-hero h1{
    max-width:12ch;
    font-size:clamp(44px,10.8vw,64px);
    line-height:.94;
    margin-bottom:18px;
  }
  .home-v8 .edge8-meta{
    max-width:34rem;
    font-size:18px;
    line-height:1.55;
  }

  .home-v8 .edge8-jump{
    justify-content:flex-start;
    gap:6px;
    padding:10px 12px;
    overflow-x:auto;
    flex-wrap:nowrap;
    scrollbar-width:none;
  }
  .home-v8 .edge8-jump::-webkit-scrollbar{display:none}
  .home-v8 .edge8-jump a{
    flex:0 0 auto;
    padding:8px 10px;
    border:1px solid #49362e;
    background:#16100d;
    font-size:9px;
  }

  .home-v8 .edge8-why,
  .home-v8 .edge8-races,
  .home-v8 .edge8-principle,
  .home-v8 .edge8-classes,
  .home-v8 .edge8-system,
  .home-v8 .edge8-magic,
  .home-v8 .edge8-browse{
    padding:56px 22px;
  }

  .home-v8 .edge8-why,
  .home-v8 .edge8-races,
  .home-v8 .edge8-magic,
  .home-v8 .edge8-vtt{
    grid-template-columns:1fr;
  }

  .home-v8 .edge8-copy h2,
  .home-v8 .edge8-principle h2,
  .home-v8 .edge8-race-copy h2,
  .home-v8 .edge8-class-intro h2,
  .home-v8 .edge8-system-copy h2,
  .home-v8 .edge8-magic h2,
  .home-v8 .edge8-vtt h2,
  .home-v8 .edge8-browse h2{
    font-size:clamp(36px,9vw,50px);
    line-height:1.02;
  }

  .home-v8 .edge8-copy p,
  .home-v8 .edge8-race-copy p,
  .home-v8 .edge8-class-intro p,
  .home-v8 .edge8-system-copy p,
  .home-v8 .edge8-magic-copy p,
  .home-v8 .edge8-vtt-copy p,
  .home-v8 .edge8-browse p{
    font-size:17px;
    line-height:1.68;
  }

  .home-v8 .edge8-why-art{
    margin-top:12px;
  }
  .home-v8 .edge8-why-art img{
    height:auto;
    max-height:360px;
  }

  .home-v8 .edge8-principle-grid{
    grid-template-columns:1fr;
    border-bottom:0;
  }
  .home-v8 .edge8-principle-grid article{
    border-right:0;
    border-bottom:1px solid #47352c;
    padding:26px 4px;
  }
  .home-v8 .edge8-principle-grid h3{
    font-size:28px;
  }
  .home-v8 .edge8-principle-grid p{
    font-size:16px;
    line-height:1.55;
  }

  .home-v8 .edge8-race-art{
    min-height:460px;
    margin-top:8px;
  }
  .home-v8 .edge8-race-art .race-world{
    inset:12% 0 auto 0;
    width:100%;
    height:70%;
    opacity:.22;
  }
  .home-v8 .edge8-race-art .race-main{
    width:63%;
    height:94%;
    right:-3%;
  }
  .home-v8 .edge8-race-art .race-accent{
    width:50%;
    height:72%;
    left:-2%;
  }

  .home-v8 .edge8-case,
  .home-v8 .edge8-case.reverse{
    grid-template-columns:1fr;
    gap:22px;
    min-height:0;
    padding:40px 0;
  }
  .home-v8 .edge8-case.reverse .edge8-case-art{order:0}
  .home-v8 .edge8-case-art{
    height:380px;
    border-radius:6px;
  }
  .home-v8 .edge8-case h3{
    font-size:34px;
  }
  .home-v8 .edge8-case p{
    font-size:16px;
    line-height:1.65;
  }

  .home-v8 .edge8-system-grid{
    grid-template-columns:1fr;
    border-bottom:0;
  }
  .home-v8 .edge8-system-grid a{
    border-right:0;
    border-bottom:1px solid #d7c6b4;
    padding:22px 4px;
  }
  .home-v8 .edge8-system-grid strong{
    font-size:24px;
  }
  .home-v8 .edge8-system-grid p{
    font-size:15px;
    line-height:1.5;
  }

  .home-v8 .edge8-magic-art img{
    height:360px;
  }

  .home-v8 .edge8-vtt-art{
    min-height:390px;
  }
  .home-v8 .edge8-vtt-art .vtt-creature{
    width:50%;
    height:50%;
  }
  .home-v8 .edge8-vtt-copy{
    padding:52px 22px 60px;
  }

  .home-v8 .edge8-browse-grid{
    grid-template-columns:1fr;
    border-top:1px solid #c8b49f;
  }
  .home-v8 .edge8-browse-grid a{
    border-right:0;
    padding:22px 4px;
  }
  .home-v8 .edge8-browse-grid strong{
    font-size:25px;
  }
  .home-v8 .edge8-browse-grid span{
    font-size:15px;
  }

  .home-v8 .edge8-artline{
    grid-template-columns:1fr 1fr;
    height:auto;
  }
  .home-v8 .edge8-artline img{
    height:240px;
  }

  .home-v8 .site-footer{margin-top:0}
  .home-v8 .site-footer-inner{
    width:calc(100% - 32px);
    grid-template-columns:1fr;
    gap:28px;
    padding:34px 0 24px;
  }
  .home-v8 .footer-brand p{font-size:14px}
  .home-v8 .footer-columns{
    grid-template-columns:1fr 1fr;
    gap:22px;
  }
  .home-v8 .footer-col a{font-size:13px}
}

@media (max-width: 560px){
  .home-v8 .site-header-inner{padding-inline:10px}
  .home-v8 .site-brand img{width:136px}
  .home-v8 .site-links a{padding:8px 10px;font-size:9px}

  .home-v8 .edge8-hero{
    min-height:600px;
  }
  .home-v8 .edge8-hero-copy{
    padding:42px 18px 28px;
  }
  .home-v8 .edge8-hero-logo{
    width:185px;
    margin-bottom:16px;
  }
  .home-v8 .edge8-hero h1{
    font-size:clamp(40px,12vw,54px);
    max-width:11ch;
  }
  .home-v8 .edge8-meta{
    font-size:17px;
    line-height:1.5;
  }
  .home-v8 .edge8-hero-dragon{
    width:92vw;
    height:44%;
    right:-25vw;
    bottom:24%;
  }

  .home-v8 .edge8-why,
  .home-v8 .edge8-races,
  .home-v8 .edge8-principle,
  .home-v8 .edge8-classes,
  .home-v8 .edge8-system,
  .home-v8 .edge8-magic,
  .home-v8 .edge8-browse{
    padding:46px 18px;
  }

  .home-v8 .edge8-copy h2,
  .home-v8 .edge8-principle h2,
  .home-v8 .edge8-race-copy h2,
  .home-v8 .edge8-class-intro h2,
  .home-v8 .edge8-system-copy h2,
  .home-v8 .edge8-magic h2,
  .home-v8 .edge8-vtt h2,
  .home-v8 .edge8-browse h2{
    font-size:34px;
  }

  .home-v8 .edge8-copy p,
  .home-v8 .edge8-race-copy p,
  .home-v8 .edge8-class-intro p,
  .home-v8 .edge8-system-copy p,
  .home-v8 .edge8-magic-copy p,
  .home-v8 .edge8-vtt-copy p,
  .home-v8 .edge8-browse p{
    font-size:16px;
  }

  .home-v8 .edge8-race-art{
    min-height:380px;
  }
  .home-v8 .edge8-case-art{
    height:320px;
  }
  .home-v8 .edge8-magic-art img{
    height:300px;
  }
  .home-v8 .edge8-vtt-art{
    min-height:320px;
  }
  .home-v8 .edge8-artline{
    grid-template-columns:1fr;
  }
  .home-v8 .edge8-artline img{
    height:260px;
  }
  .home-v8 .footer-columns{
    grid-template-columns:1fr;
  }
}

/* ===== Homepage unique art pass ===== */
.edge8-principle{position:relative;overflow:hidden}
.edge8-principle-phoenix{position:absolute;right:3vw;top:50%;transform:translateY(-50%);width:min(38vw,560px);height:86%;object-fit:contain;opacity:.16;filter:drop-shadow(0 24px 40px rgba(0,0,0,.35));pointer-events:none}
.edge8-principle-title,.edge8-principle-grid{position:relative;z-index:2}
.edge8-race-art .race-world{display:none!important}
.edge8-race-art{background:radial-gradient(circle at 60% 52%,rgba(190,145,80,.13),transparent 46%)}
.edge8-system{position:relative;overflow:hidden}
.edge8-system-treasure{position:absolute;right:-3vw;bottom:-8%;width:min(34vw,480px);height:78%;object-fit:contain;opacity:.16;filter:drop-shadow(0 18px 28px rgba(77,50,31,.18));pointer-events:none}
.edge8-system-copy,.edge8-system-grid{position:relative;z-index:2}
@media(max-width:900px){
  .edge8-principle-phoenix{width:62vw;height:58%;right:-14vw;top:20%;transform:none;opacity:.12}
  .edge8-system-treasure{width:58vw;height:44%;right:-18vw;bottom:-2%;opacity:.12}
}
@media(max-width:560px){
  .edge8-principle-phoenix{width:88vw;right:-34vw;top:12%;opacity:.09}
  .edge8-system-treasure{width:78vw;right:-28vw;bottom:2%;opacity:.09}
}

/* ===== Homepage distinct-art cleanup ===== */
.edge8-race-art{overflow:visible}
.edge8-race-art .race-main{right:6%;width:58%;height:96%}
.edge8-race-art .race-accent{left:2%;width:46%;height:80%}
.edge8-equipment{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:clamp(34px,5vw,76px);
  align-items:center;
  padding:clamp(76px,8vw,112px) 7vw;
}
.edge8-equipment-copy{max-width:760px}
.edge8-equipment-copy h2{
  font:700 clamp(42px,4.8vw,66px)/1.02 Georgia,serif;
  letter-spacing:-.03em;
  color:#7f231e;
  margin:0 0 18px;
}
.edge8-equipment-copy p{
  font-size:clamp(16px,1.05vw,19px);
  line-height:1.72;
  color:#65554b;
}
.edge8-equipment-art{
  min-height:460px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.edge8-equipment-art img{
  width:100%;
  height:460px;
  object-fit:contain;
  filter:drop-shadow(0 22px 32px rgba(67,45,31,.22));
}
@media(max-width:900px){
  .edge8-equipment{
    grid-template-columns:1fr;
    padding:56px 22px;
  }
  .edge8-equipment-art{min-height:360px}
  .edge8-equipment-art img{height:360px}
}
@media(max-width:560px){
  .edge8-equipment{padding:46px 18px}
  .edge8-equipment-copy h2{font-size:34px}
  .edge8-equipment-copy p{font-size:16px}
  .edge8-equipment-art{min-height:300px}
  .edge8-equipment-art img{height:300px}
}

/* Readability pass: Species browser */
.species-sidebar-head p{font-size:12px;line-height:1.5}
.species-search{font-size:13px}
.species-group-name{font-size:15px}
.species-group-count{font-size:11px}
.species-group-list a{font-size:13px;line-height:1.4}
.species-hero .kicker{font-size:11px}
.species-hero p{font-size:16px;line-height:1.68}
.variant-control label{font-size:10px}
.variant-control select{font-size:13px}
.species-stat span{font-size:9px}
.species-stat strong{font-size:17px}
.species-source{font-size:10px}
.species-feature summary{font-size:18px}
.species-feature>div{font-size:14.5px;line-height:1.75}
.species-empty{font-size:14px}
@media(max-width:620px){
  .species-group-list a{font-size:14px}
  .species-hero p{font-size:15px}
  .species-feature summary{font-size:17px}
  .species-feature>div{font-size:14px}
}


/* ===== Official responsive species banner, 720p canonical ===== */
.species-page{
  width:100%;
  margin:0 auto 42px;
}
.species-banner-shell{
  container-type:inline-size;
  width:100%;
  margin:0;
  background:#f8f1e7;
  border-bottom:1px solid #cdbba9;
  overflow:hidden;
  box-shadow:0 16px 34px rgba(52,31,22,.10);
}
.species-banner-shell .species-hero{
  position:relative;
  display:block;
  height:36.71875cqw;
  min-height:0;
  overflow:hidden;
  border:0;
  border-bottom:.3125cqw solid #d2a449;
  background:#260b0c;
}
.species-hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(90deg,rgba(27,6,8,.98) 0%,rgba(33,7,9,.90) 31%,rgba(38,8,10,.40) 58%,rgba(20,8,8,.02) 100%),
    url('/assets/images/species/eladrin-banner-background.jpg') center/cover no-repeat;
}
.species-hero-inner{
  position:relative;
  z-index:1;
  width:92%;
  height:100%;
  margin:auto;
}
.species-banner-shell .species-hero-copy{
  position:absolute;
  z-index:3;
  left:0;
  top:0;
  bottom:0;
  width:45%;
  padding:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.species-banner-shell .species-hero .kicker{
  color:#f0ce84;
  font-size:.78125cqw;
  line-height:1.1;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.species-banner-shell .species-hero h1{
  margin:.78125cqw 0 1.71875cqw;
  color:#fff1dc;
  font:700 5.78125cqw/.88 Georgia,serif;
  letter-spacing:-.04em;
  text-shadow:none;
}
.species-banner-shell .species-hero p{
  max-width:43.75cqw;
  margin:0;
  color:#ead8c6;
  font-size:1.25cqw;
  line-height:1.55;
}
.species-banner-shell .variant-control{
  margin-top:2.1875cqw;
  display:inline-flex;
  align-items:center;
  gap:1.09375cqw;
  width:max-content;
  max-width:100%;
  padding:.78125cqw .9375cqw;
  border:.078125cqw solid rgba(220,146,112,.68);
  border-radius:0;
  background:rgba(69,24,23,.62);
}
.species-banner-shell .variant-control label{
  color:#f0ce84;
  font-size:.78125cqw;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.species-banner-shell .variant-control select{
  min-width:17.1875cqw;
  min-height:0;
  border:0;
  border-radius:0;
  background:#f3e7d6;
  color:#34261f;
  padding:.859375cqw 3.125cqw .859375cqw 1.09375cqw;
  font-size:1.09375cqw;
  font-weight:900;
}
.species-hero-character{
  position:absolute;
  z-index:2;
  right:3%;
  bottom:-3%;
  height:100%;
  width:auto;
  object-fit:contain;
  filter:drop-shadow(0 1.875cqw 2.34375cqw rgba(0,0,0,.45));
}
.species-hero-character.is-hidden{display:none}
.species-mobile-art{display:none}

.species-banner-shell .species-overview{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  width:100%;
  padding:2.1875cqw 4%;
  background:#f7f0e5;
  border:0;
}
.species-banner-shell .species-stat{
  min-width:0;
  padding:1.25cqw;
  border-right:.078125cqw solid #d9ccbd;
}
.species-banner-shell .species-stat:last-child{border-right:0}
.species-banner-shell .species-stat span{
  display:block;
  margin-bottom:.46875cqw;
  color:#a2745e;
  font-size:.703125cqw;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.species-banner-shell .species-stat strong{
  display:block;
  color:#332821;
  font:700 1.40625cqw/1.2 Georgia,serif;
}

.species-layout{
  width:min(1280px,calc(100% - 24px));
  margin:24px auto 42px;
}
.species-content-panel .species-body{min-height:420px}

@media(max-width:900px){
  .species-page{margin-bottom:32px}
  .species-banner-shell{container-type:normal}
  .species-banner-shell .species-hero{
    height:auto;
    border-bottom:0;
    background:none;
  }
  .species-hero-bg{display:none}
  .species-hero-inner{
    width:100%;
    height:auto;
    display:grid;
    grid-template-rows:auto 390px;
  }
  .species-banner-shell .species-hero-copy{
    position:relative;
    left:auto;
    top:auto;
    bottom:auto;
    width:100%;
    padding:30px 22px 28px;
    background:linear-gradient(135deg,#2a0d0f,#5b1715);
  }
  .species-banner-shell .species-hero .kicker{font-size:10px}
  .species-banner-shell .species-hero h1{
    margin:10px 0 18px;
    font-size:56px;
  }
  .species-banner-shell .species-hero p{
    max-width:none;
    font-size:16px;
    line-height:1.55;
  }
  .species-banner-shell .variant-control{
    width:100%;
    margin-top:22px;
    padding:10px 12px;
    gap:12px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    border-width:1px;
  }
  .species-banner-shell .variant-control label{font-size:9px}
  .species-banner-shell .variant-control select{
    width:100%;
    min-width:0;
    padding:10px 36px 10px 12px;
    font-size:14px;
  }
  .species-mobile-art{
    display:block;
    grid-row:2;
    min-height:390px;
    border-bottom:4px solid #d2a449;
    background:
      linear-gradient(180deg,rgba(35,8,10,.02),rgba(35,8,10,.24)),
      url('/assets/images/species/eladrin-banner-background.jpg') 72% center/cover no-repeat;
  }
  .species-hero-character{
    left:50%;
    right:auto;
    bottom:0;
    height:365px;
    transform:translateX(-50%);
    filter:drop-shadow(0 20px 26px rgba(0,0,0,.45));
  }
  .species-banner-shell .species-overview{
    grid-template-columns:1fr 1fr;
    padding:18px;
  }
  .species-banner-shell .species-stat{
    padding:16px;
    border-right:1px solid #d9ccbd;
    border-bottom:1px solid #d9ccbd;
  }
  .species-banner-shell .species-stat:nth-child(even){border-right:0}
  .species-banner-shell .species-stat:nth-last-child(-n+2){border-bottom:0}
  .species-banner-shell .species-stat span{
    margin-bottom:6px;
    font-size:8px;
  }
  .species-banner-shell .species-stat strong{font-size:18px}
}
@media(max-width:560px){
  .species-hero-inner{grid-template-rows:auto 360px}
  .species-mobile-art{min-height:360px}
  .species-hero-character{height:340px}
}


/* ===== Species layout restored, approved art used only as banner ===== */
.species-panel{container-type:inline-size}
.species-panel .species-hero-approved{
  position:relative;
  display:block;
  height:36.71875cqw;
  min-height:310px;
  overflow:hidden;
  border-bottom:.3125cqw solid #d2a449;
  background:#260b0c;
}
.species-panel .race-banner-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(90deg,rgba(27,6,8,.98) 0%,rgba(33,7,9,.90) 31%,rgba(38,8,10,.40) 58%,rgba(20,8,8,.02) 100%),
    url('/assets/images/species/eladrin-banner-background.jpg') center/cover no-repeat;
}
.species-panel .race-banner-inner{
  position:relative;
  z-index:1;
  width:92%;
  height:100%;
  margin:auto;
}
.species-panel .species-hero-approved .species-hero-copy{
  position:absolute;
  z-index:3;
  left:0;
  top:0;
  bottom:0;
  width:45%;
  padding:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.species-panel .species-hero-approved .kicker{
  color:#f0ce84;
  font-size:max(10px,.78125cqw);
  line-height:1.1;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.species-panel .species-hero-approved h1{
  margin:.78125cqw 0 1.71875cqw;
  color:#fff1dc;
  font:700 max(48px,5.78125cqw)/.88 Georgia,serif;
  letter-spacing:-.04em;
  text-shadow:none;
}
.species-panel .species-hero-approved p{
  max-width:43.75cqw;
  margin:0;
  color:#ead8c6;
  font-size:max(14px,1.25cqw);
  line-height:1.55;
}
.species-panel .species-hero-approved .variant-control{
  margin-top:2.1875cqw;
  display:inline-flex;
  align-items:center;
  gap:max(10px,1.09375cqw);
  width:max-content;
  max-width:100%;
  padding:max(8px,.78125cqw) max(10px,.9375cqw);
  border:1px solid rgba(220,146,112,.68);
  border-radius:0;
  background:rgba(69,24,23,.62);
}
.species-panel .species-hero-approved .variant-control label{
  color:#f0ce84;
  font-size:max(9px,.78125cqw);
}
.species-panel .species-hero-approved .variant-control select{
  min-width:max(190px,17.1875cqw);
  min-height:0;
  border:0;
  border-radius:0;
  background:#f3e7d6;
  color:#34261f;
  padding:max(9px,.859375cqw) max(34px,3.125cqw) max(9px,.859375cqw) max(12px,1.09375cqw);
  font-size:max(13px,1.09375cqw);
  font-weight:900;
}
.species-panel .race-banner-character{
  position:absolute;
  z-index:2;
  right:3%;
  bottom:-3%;
  height:100%;
  width:auto;
  object-fit:contain;
  filter:drop-shadow(0 1.875cqw 2.34375cqw rgba(0,0,0,.45));
}
.species-panel .race-banner-character.is-hidden{display:none}
.species-panel .race-banner-mobile-art{display:none}

@media(max-width:900px){
  .species-panel{container-type:normal}
  .species-panel .species-hero-approved{
    height:auto;
    min-height:0;
    border-bottom:0;
    background:none;
  }
  .species-panel .race-banner-bg{display:none}
  .species-panel .race-banner-inner{
    width:100%;
    height:auto;
    display:grid;
    grid-template-rows:auto 390px;
  }
  .species-panel .species-hero-approved .species-hero-copy{
    position:relative;
    left:auto;
    top:auto;
    bottom:auto;
    width:100%;
    padding:30px 22px 28px;
    background:linear-gradient(135deg,#2a0d0f,#5b1715);
  }
  .species-panel .species-hero-approved .kicker{font-size:10px}
  .species-panel .species-hero-approved h1{
    margin:10px 0 18px;
    font-size:56px;
  }
  .species-panel .species-hero-approved p{
    max-width:none;
    font-size:16px;
  }
  .species-panel .species-hero-approved .variant-control{
    width:100%;
    margin-top:22px;
    padding:10px 12px;
    gap:12px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
  }
  .species-panel .species-hero-approved .variant-control select{
    width:100%;
    min-width:0;
    padding:10px 36px 10px 12px;
    font-size:14px;
  }
  .species-panel .race-banner-mobile-art{
    display:block;
    grid-row:2;
    min-height:390px;
    border-bottom:4px solid #d2a449;
    background:
      linear-gradient(180deg,rgba(35,8,10,.02),rgba(35,8,10,.24)),
      url('/assets/images/species/eladrin-banner-background.jpg') 72% center/cover no-repeat;
  }
  .species-panel .race-banner-character{
    left:50%;
    right:auto;
    bottom:0;
    height:365px;
    transform:translateX(-50%);
    filter:drop-shadow(0 20px 26px rgba(0,0,0,.45));
  }
}
@media(max-width:560px){
  .species-panel .race-banner-inner{grid-template-rows:auto 360px}
  .species-panel .race-banner-mobile-art{min-height:360px}
  .species-panel .race-banner-character{height:340px}
}



/* ===== Species visual parity with class pages ===== */
.species-layout{
  grid-template-columns:245px minmax(0,1fr)!important;
  gap:18px!important;
}
.species-sidebar{
  border-radius:6px!important;
  border:1px solid #4e3c32!important;
  box-shadow:0 16px 38px rgba(42,26,20,.16)!important;
}
.species-sidebar-head{
  padding:17px 16px 15px!important;
}
.species-sidebar-head h2{
  font-size:20px!important;
}
.species-sidebar-head p{
  font-size:12px!important;
  line-height:1.5!important;
}
.species-search{
  height:39px!important;
  font-size:13px!important;
}
.species-group summary{
  min-height:58px!important;
  padding:8px 12px!important;
}
.species-group-name{
  font-size:15px!important;
}
.species-group-count{
  font-size:11px!important;
}
.species-group-list{
  padding:5px 0 8px!important;
}
.species-group-list a{
  padding:9px 14px 9px 22px!important;
  font-size:13.5px!important;
  line-height:1.35!important;
}
.species-panel{
  border-radius:6px!important;
  border:1px solid #cdbba9!important;
  box-shadow:0 20px 46px rgba(52,31,22,.12)!important;
}
.species-panel .species-hero-approved .kicker{
  font-size:max(10px,.78125cqw)!important;
}
.species-panel .species-hero-approved h1{
  color:#f7ead3!important;
}
.species-panel .species-hero-approved p{
  font-size:max(16px,1.25cqw)!important;
  line-height:1.68!important;
  color:#d4c2b3!important;
}
.species-panel .species-hero-approved .variant-control label{
  font-size:max(10px,.78125cqw)!important;
}
.species-panel .species-hero-approved .variant-control select{
  font-size:max(13px,1.09375cqw)!important;
}
.species-body{
  padding:0 40px 38px!important;
  background:linear-gradient(180deg,#f8f1e7,#f4eadf)!important;
}
.species-overview{
  margin:28px 0 34px!important;
  border-top:1px solid #c6af98!important;
  border-bottom:1px solid #c6af98!important;
  background:rgba(255,255,255,.18)!important;
}
.species-stat{
  min-height:82px!important;
  padding:14px 13px 15px!important;
}
.species-stat span{
  font-size:9px!important;
}
.species-stat strong{
  font-size:17px!important;
  line-height:1.35!important;
}
.species-section-title{
  margin:31px 0 8px!important;
  padding-bottom:10px!important;
  border-bottom:2px solid #9e2a24!important;
}
.species-section-title h2{
  font-size:31px!important;
  color:#a72a24!important;
}
.species-source{
  font-size:10px!important;
  color:#987e6d!important;
}
.species-feature{
  border-bottom:1px solid #d4c4b5!important;
}
.species-feature:first-child{
  border-top:1px solid #d4c4b5!important;
}
.species-feature summary{
  padding:13px 6px!important;
  font-size:18px!important;
  line-height:1.25!important;
}
.species-feature summary:before{
  color:#bd935d!important;
}
.species-feature>div{
  margin:0 0 15px 27px!important;
  padding:1px 26px 1px 14px!important;
  border-left:2px solid #bd935d!important;
  color:#5c4e47!important;
  font-size:14.5px!important;
  line-height:1.75!important;
  max-width:980px!important;
}
@media(max-width:900px){
  .species-layout{
    grid-template-columns:1fr!important;
    margin-top:10px!important;
  }
  .species-sidebar{
    position:static!important;
  }
  .species-group-list a{
    font-size:14px!important;
  }
  .species-panel .species-hero-approved p{
    font-size:15px!important;
  }
  .species-overview{
    grid-template-columns:repeat(3,1fr)!important;
  }
}
@media(max-width:620px){
  .species-layout{
    width:min(100% - 16px,1280px)!important;
  }
  .species-body{
    padding:0 18px 28px!important;
  }
  .species-overview{
    grid-template-columns:1fr 1fr!important;
    margin:20px 0 28px!important;
  }
  .species-section-title{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  .species-feature summary{
    font-size:17px!important;
  }
  .species-feature>div{
    margin-left:18px!important;
    padding-right:10px!important;
    font-size:14px!important;
  }
}


/* ===== Species class-page cleanup v2 ===== */
/* Sidebar icon cleanup */
.species-category-icon{
  position:relative!important;
  overflow:hidden!important;
  background-image:none!important;
  border-radius:6px!important;
  box-shadow:0 4px 10px rgba(0,0,0,.24)!important;
}
.species-category-icon::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background-image:url('/assets/images/species/category-sprite.webp')!important;
  background-repeat:no-repeat!important;
  background-size:168px 126px!important;
  background-position:calc(var(--ix) * -42px) calc(var(--iy) * -42px)!important;
  transform:scale(1.14)!important;
  transform-origin:center!important;
}

/* Treat the selected species/variant title like a class section header */
.species-section-title{
  display:grid!important;
  grid-template-columns:max-content 1fr!important;
  align-items:center!important;
  gap:16px!important;
  margin:28px 0 18px!important;
  padding:0!important;
  border:0!important;
}
.species-section-title:after{
  content:""!important;
  display:block!important;
  height:1px!important;
  background:linear-gradient(90deg,#bd935d,transparent)!important;
}
.species-section-title h2{
  display:inline-block!important;
  margin:0!important;
  padding:9px 28px 9px 19px!important;
  background:linear-gradient(90deg,#781b17,#a72a24)!important;
  color:#fff4df!important;
  font:700 22px/1 Georgia,serif!important;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%,8px 50%)!important;
  box-shadow:inset 0 1px rgba(240,206,132,.4)!important;
  white-space:nowrap!important;
}
.species-source{
  grid-column:1/-1!important;
  margin:-8px 0 0 19px!important;
  font-size:9px!important;
  color:#9a7662!important;
}

/* Traits now mirror class feature accordions */
.species-feature{
  margin:0!important;
  border:0!important;
  border-bottom:1px solid #d4c4b5!important;
  background:transparent!important;
}
.species-feature:first-child{
  border-top:1px solid #d4c4b5!important;
}
.species-feature summary{
  position:relative!important;
  cursor:pointer!important;
  list-style:none!important;
  display:grid!important;
  grid-template-columns:1fr 18px!important;
  gap:10px!important;
  align-items:center!important;
  padding:13px 6px 13px 27px!important;
  color:#41332d!important;
  font:700 18px Georgia,serif!important;
  transition:.14s ease!important;
}
.species-feature summary::before{
  content:"◆"!important;
  position:absolute!important;
  left:6px!important;
  color:#bd935d!important;
  font:700 9px/1 Arial,sans-serif!important;
}
.species-feature summary span{
  color:#a72a24!important;
  font:900 14px/1 Arial,sans-serif!important;
  text-align:center!important;
}
.species-feature summary:hover{
  color:#9b241f!important;
  background:rgba(167,42,36,.035)!important;
}
.species-feature[open] summary{
  color:#9b241f!important;
}
.species-feature[open] summary span{
  transform:rotate(45deg)!important;
}
.species-feature>div{
  margin:0 0 15px 27px!important;
  padding:1px 26px 1px 14px!important;
  border-left:2px solid #bd935d!important;
  color:#5c4e47!important;
  font-size:14.5px!important;
  line-height:1.75!important;
  max-width:980px!important;
}

/* Pull the parchment rhythm closer to class pages */
.species-body{
  padding:28px 40px 38px!important;
}
.species-overview{
  margin:0 0 28px!important;
}

@media(max-width:620px){
  .species-section-title{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .species-section-title:after{display:none!important}
  .species-section-title h2{
    width:max-content!important;
    max-width:100%!important;
    white-space:normal!important;
    font-size:20px!important;
  }
  .species-source{
    grid-column:auto!important;
    margin:0 0 0 8px!important;
  }
  .species-body{
    padding:22px 18px 28px!important;
  }
  .species-feature summary{
    font-size:17px!important;
  }
  .species-feature>div{
    font-size:14px!important;
  }
}


/* ===== Species core stats as feature accordions ===== */
.species-overview{
  display:block!important;
  margin:0 0 30px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.species-core-feature{
  margin:0!important;
  border:0!important;
  border-bottom:1px solid #d4c4b5!important;
  background:transparent!important;
}
.species-core-feature:first-child{
  border-top:1px solid #d4c4b5!important;
}
.species-core-feature summary{
  position:relative!important;
  cursor:pointer!important;
  list-style:none!important;
  display:grid!important;
  grid-template-columns:1fr 18px!important;
  gap:10px!important;
  align-items:center!important;
  padding:13px 6px 13px 27px!important;
  color:#41332d!important;
  font:700 18px Georgia,serif!important;
  transition:.14s ease!important;
}
.species-core-feature summary::-webkit-details-marker{display:none!important}
.species-core-feature summary::before{
  content:"◆"!important;
  position:absolute!important;
  left:6px!important;
  color:#bd935d!important;
  font:700 9px/1 Arial,sans-serif!important;
}
.species-core-heading{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}
.species-core-feature summary b{
  font:inherit!important;
}
.species-core-feature .plus{
  color:#a72a24!important;
  font:900 14px/1 Arial,sans-serif!important;
  text-align:center!important;
}
.species-core-feature summary:hover{
  color:#9b241f!important;
  background:rgba(167,42,36,.035)!important;
}
.species-core-feature[open] summary{
  color:#9b241f!important;
}
.species-core-feature[open] .plus{
  transform:rotate(45deg)!important;
}
.species-core-body{
  margin:0 0 15px 27px!important;
  padding:1px 26px 1px 14px!important;
  border-left:2px solid #bd935d!important;
  color:#5c4e47!important;
  font-size:14.5px!important;
  line-height:1.75!important;
  max-width:980px!important;
}
.species-core-body p{
  margin:7px 0!important;
}
.species-core-body b{
  color:#342923!important;
}
@media(max-width:620px){
  .species-core-feature summary{
    font-size:17px!important;
  }
  .species-core-body{
    margin-left:18px!important;
    padding-right:10px!important;
    font-size:14px!important;
  }
}


/* Structured race feature prose and tables */
.species-feature>div p{margin:0 0 12px}
.species-feature>div p:last-child{margin-bottom:0}
.species-table-wrap{margin:16px 0 6px;overflow-x:auto;border:1px solid #cdbba9;background:rgba(255,255,255,.22)}
.species-data-table{width:100%;border-collapse:collapse;min-width:520px;font-size:12.5px}
.species-data-table th{padding:9px 11px;background:linear-gradient(180deg,#9f2923,#8d201b);color:#fff4df;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.04em}
.species-data-table td{padding:9px 11px;border-top:1px solid #ddd0c2;border-right:1px solid #e5d9cc;color:#4c403a;vertical-align:top}
.species-data-table td:last-child{border-right:0}
.species-data-table tbody tr:nth-child(even) td{background:rgba(255,255,255,.24)}
@media(max-width:620px){.species-data-table{min-width:460px;font-size:12px}}

/* ===== Race Finder ===== */
.species-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.species-tool-btn{appearance:none;border:1px solid #6d5141;background:#2b211d;color:#e5d4c4;border-radius:4px;padding:9px 10px;font-size:10px;font-weight:900;cursor:pointer;text-align:center}
.species-tool-btn:hover{border-color:#bd935d;color:#fff}
.species-tool-btn.primary{background:linear-gradient(180deg,#a72a24,#7f1d18);border-color:#c85d4e;color:#fff}
.race-finder{display:grid;gap:18px}
.race-finder-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px;background:#f1e4d7;border:1px solid #d0bcaa}
.race-finder-controls label{display:grid;gap:6px}.race-finder-controls label>span,.race-finder-trait-filter>span{font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#8f6e5b}
.race-finder-controls select{width:100%;min-height:36px;border:1px solid #c9b8a8;background:#fffaf4;color:#3d302a;padding:0 10px;font-size:12px;font-weight:750}
.race-finder-trait-filter{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:13px 15px;border:1px solid #d8c8ba;background:rgba(255,255,255,.36)}
.race-finder-trait-filter>span{margin-right:4px}.race-finder-trait-filter label{display:inline-flex;align-items:center;gap:5px;color:#5f5149;font-size:11px;font-weight:750}
.race-finder-trait-filter input{accent-color:#a72a24}
.race-finder-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.race-finder-actions button{appearance:none;border:1px solid #cbb6a5;background:#fffaf4;color:#8d211d;padding:8px 12px;border-radius:4px;font-size:10px;font-weight:900;cursor:pointer}
.race-finder-actions span{color:#8b776a;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.race-finder-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.race-finder-card{appearance:none;text-align:left;border:1px solid #d7c7b8;background:#fffaf4;border-radius:6px;padding:16px;cursor:pointer;min-height:155px;display:flex;flex-direction:column;gap:7px;transition:.14s ease}
.race-finder-card:hover{transform:translateY(-2px);border-color:#b98d70;box-shadow:0 8px 20px rgba(70,43,31,.08)}
.race-finder-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.race-finder-card-top small{font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#9a7662}.race-finder-card-top b{font-size:8px;color:#a72a24;text-transform:uppercase;letter-spacing:.08em}
.race-finder-card>strong{font:700 20px/1.12 Georgia,serif;color:#3f3029}.race-finder-asi{font-size:10px;font-weight:850;color:#6b584d}
.race-finder-traits{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}.race-finder-traits i{font-style:normal;padding:4px 6px;border-radius:999px;background:#efe2d5;color:#7d5f4e;font-size:8px;font-weight:850}
@media(max-width:1050px){.race-finder-controls{grid-template-columns:1fr 1fr}.race-finder-results{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.species-tools{grid-template-columns:1fr}.race-finder-controls{grid-template-columns:1fr}.race-finder-results{grid-template-columns:1fr}.race-finder-actions{align-items:flex-start;flex-direction:column}}
