@font-face{font-family:MedievalSharp;src:url('assets/fonts/MedievalSharp.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--display:MedievalSharp,Georgia,serif}
h1,h2,.brand,.brand b,.hero h1,.card-title h2,.sidebar-bottom p,.group-emblem,.difficulty strong,.stats strong{font-family:var(--display);font-weight:400}
.brand{letter-spacing:1px}.brand b{font-size:18px;letter-spacing:.3px}.hero{background-image:url('assets/rivendell-banner.png');background-position:center 51%;min-height:320px;padding:36px 38px}.hero:before{background:linear-gradient(90deg,rgba(8,27,23,.91),rgba(12,31,25,.77) 30%,rgba(14,35,27,.19) 65%,rgba(14,35,27,.02))}.hero h1{font-size:46px;line-height:1.06;text-shadow:0 2px 6px #061b19a6}.hero p:not(.eyebrow){color:#f0efdf;max-width:430px}.hero .eyebrow{color:#f0d394;text-shadow:0 1px 5px #000}.hero-link{color:#ffe3a4;text-shadow:0 1px 4px #000}.page-heading h1{font-size:40px}.card-title h2{font-size:25px;line-height:1.17}.scenario-card .card-title{min-height:84px}.sidebar-bottom p{font-size:25px;line-height:1.15}.section-heading h2{font-size:29px}.kind-pill{display:inline-flex;align-items:center;border-radius:4px;background:#e2eadd;color:#3e614a;padding:3px 7px;line-height:1.4;font-size:9px;font-weight:600;white-space:nowrap;letter-spacing:.35px}.kind-pill.saga{background:#f1e6cc;color:#78602f}.kind-pill.core{background:#e1e9ed;color:#42616c}.kind-pill.standalone,.kind-pill.starter{background:#eae6e5;color:#6d5e65}.order{font:15px Segoe UI,Arial,sans-serif;white-space:nowrap}.card-lineage{color:#6b7868;font-size:10px;line-height:1.55;margin:11px 0 2px;min-height:30px}.card-lineage span{padding:0 3px;color:#9ca38d}.lineage{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:11px;line-height:1.6;margin:8px 0 15px}.lineage a{text-decoration:none;overflow-wrap:anywhere}.lineage>span:not(.kind-pill){color:#89947d}.product-body .lineage{font-size:9px;line-height:1.5;margin-bottom:12px}.product-body .lineage .kind-pill{font-size:8px}.edition{font-size:8px;letter-spacing:0;float:right;text-transform:none;color:#7b8068}.hierarchy-overview{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}.hierarchy-overview a{text-decoration:none;border:1px solid var(--line);background:var(--white);border-radius:7px;color:var(--ink)}.all-types{align-self:stretch;display:grid;place-items:center;padding:12px;font-size:11px}.type-tile{display:flex;align-items:center;gap:12px;padding:13px 14px;flex:1;min-width:145px}.type-tile>span{font-size:25px;color:#6a8269;line-height:1}.type-tile b{display:block;font-size:12px;font-weight:600;white-space:nowrap}.type-tile small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.type-tile.saga>span{color:#ad8d42}.type-tile.core>span{color:#5e818c}.type-tile.standalone>span{color:#8c7681}.hierarchy-overview .selected{border-color:#557b59;background:#e8eee0;box-shadow:inset 0 0 0 1px #557b592b}.hierarchy-overview .saga.selected{border-color:#a88742;background:#f3ecd7}.order-explanation{font-size:11px;color:var(--muted);margin:0 0 25px;max-width:780px}.order-explanation:empty{display:none}.catalog-group{margin-bottom:38px}.group-heading{display:flex;align-items:center;gap:18px;background:#e7eddf;border:1px solid #d8dfce;border-left:4px solid #6f8a61;padding:21px 22px;border-radius:7px;margin:28px 0 21px}.group-heading.saga{background:#f0e9d7;border-color:#e5dbc3;border-left-color:#b18f46}.group-heading.core{background:#e5ecee;border-left-color:#6b8b96}.group-heading.standalone{background:#ebe8e9;border-left-color:#8e7c84}.group-emblem{font-size:34px;color:#708662;width:42px;text-align:center;flex-shrink:0}.saga .group-emblem{color:#a28848}.group-heading h2{font-size:31px;margin:0 0 8px;line-height:1.1}.group-heading .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:7px}.group-description{font-size:11px;color:#65725b;margin:0;line-height:1.6}.group-heading>a{margin-left:auto;font-size:10px;white-space:nowrap;flex-shrink:0}.volume-heading{border-left:3px solid #bd9b55;padding:9px 14px;background:#eee8d77a;font-family:var(--display);font-size:24px;font-weight:400;margin:24px 0 16px}.volume-heading span{font:9px Segoe UI,Arial,sans-serif;letter-spacing:1.1px;display:block;color:#877243;text-transform:uppercase;margin-bottom:5px}.subgroup-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:19px 0 12px}.subgroup-heading h3{font-size:12px;font-weight:500;color:#54664c;margin:0;line-height:1.6}.subgroup-heading>span{font-size:10px;color:var(--muted);white-space:nowrap}.campaign-navigation ol{padding:0;list-style:none;counter-reset:chapter;margin:20px 0}.campaign-navigation li{display:flex;gap:10px;border-top:1px solid var(--line);padding:10px 7px;font-size:11px;align-items:baseline}.campaign-navigation li>span{color:#969c81;min-width:19px;font-size:10px}.campaign-navigation a{text-decoration:none;line-height:1.5}.campaign-navigation li.current{background:#e8efdf;border-radius:4px;border-left:3px solid #7a945f}.campaign-navigation li.current a{font-weight:600}.sequence-source{font-size:9px;display:block;margin-top:9px;color:var(--muted)}.compact .card-lineage{display:none}.compact .card-line{align-items:center;flex-wrap:wrap;gap:7px}.compact .order{display:block}.compact .card-title h2{font-size:23px}.results-bar .filter select{width:240px;max-width:100%}.detail-aside h2{font-family:var(--display);font-size:24px}
@media(max-width:1200px){.hero h1{font-size:42px}.type-tile{min-width:135px;padding:12px}.hierarchy-overview{gap:8px}.group-heading h2{font-size:28px}.results-bar .filter select{width:205px}.compact .order{font-size:11px}}
@media(max-width:900px){.hero{min-height:310px}.hero h1{font-size:39px}.group-heading{padding:17px;gap:14px}.group-heading>a{display:none}.hierarchy-overview .type-tile{flex-basis:30%}.page-heading h1{font-size:37px}.products.compact .lineage{display:none}.brand b{font-size:16px}}
@media(max-width:680px){.brand b{font-size:11px}.brand{font-size:9px;line-height:1.3}.hero{min-height:315px;padding:27px 23px;background-position:65% center}.hero:before{background:linear-gradient(90deg,rgba(7,25,22,.88),rgba(12,30,23,.73) 45%,rgba(13,33,26,.29))}.hero h1{font-size:35px;line-height:1.08}.hero p:not(.eyebrow){max-width:260px;font-size:11px}.hero .eyebrow{max-width:260px}.hierarchy-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.all-types{grid-column:1/-1;padding:7px}.type-tile{min-width:0;padding:10px;gap:8px;flex-basis:auto}.type-tile>span{font-size:21px}.type-tile b{font-size:11px}.type-tile small{font-size:8px;line-height:1.7}.group-heading{padding:15px 13px;gap:10px;margin-top:22px}.group-emblem{font-size:27px;width:28px}.group-heading h2{font-size:27px;line-height:1.15}.group-description{font-size:10px}.group-heading .eyebrow{font-size:8px;letter-spacing:1px}.section-heading h2{font-size:26px}.section-heading>span{max-width:125px;line-height:1.5}.subgroup-heading{gap:12px}.subgroup-heading h3{font-size:10px}.subgroup-heading>span{font-size:9px}.volume-heading{font-size:23px}.order-explanation{font-size:10px;line-height:1.6;margin-bottom:20px}.results-bar{flex-wrap:wrap;align-items:center}.results-bar>div{max-width:100%;flex-wrap:wrap}.results-bar .filter select{width:215px;font-size:11px}.results-bar .filter{flex:1}.lineage{font-size:10px;gap:5px}.card-title h2{font-size:26px}.scenario-card .card-title{min-height:0}.compact .card-title h2{font-size:22px}.compact .card-line{display:none}.compact .card-lineage{display:none}.page-heading h1{font-size:35px}.card-lineage{min-height:0;margin:10px 0 2px}.campaign-navigation li{font-size:11px}.group-heading .group-description{max-width:260px}}
@media(max-width:680px){.sidebar{top:0}.compact .scenario-card{align-items:start;row-gap:8px}.compact .scenario-cover{grid-row:1/4}.compact .card-line{display:flex;grid-column:2;grid-row:1;justify-content:space-between}.compact .card-line .kind-pill{font-size:8px}.compact .card-line .order{font-size:11px}.compact .card-title{grid-column:2;grid-row:2}.compact .card-foot{grid-column:2;grid-row:3}}
