@font-face{font-family:Barlow Condensed;src:url('/assets/barlow-condensed.woff2') format('woff2');font-weight:700;font-display:swap}
:root{color-scheme:dark;--bg:#101717;--panel:#1a2524;--line:#3d4b45;--text:#f4f1e5;--muted:#bbc5bb;--accent:#f3bc4a;--green:#c3d8a0;--heading:'Barlow Condensed','Arial Narrow',sans-serif;--body:Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font:17px/1.7 var(--body)}a{color:var(--accent);text-underline-offset:4px}a:hover{color:#fff}button,input,select{font:inherit}button,select{color:var(--text);background:#25332e;border:1px solid #617164;border-radius:3px;padding:11px 14px}button{cursor:pointer}button:hover{background:#3b4b39}button:disabled{opacity:.5;cursor:default}input,select{max-width:100%}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3{font-family:var(--heading);line-height:1.07;font-weight:700;text-wrap:balance}h1{font-size:clamp(44px,6vw,80px);margin:18px 0 25px;letter-spacing:-.025em}h2{font-size:clamp(30px,3vw,42px);margin:0 0 23px}h3{font-size:27px;margin:0 0 12px}p{margin:0 0 23px}li{margin:10px 0}.skip{position:absolute;left:20px;top:-100px;padding:12px;background:var(--accent);color:#111;z-index:10}.skip:focus{top:10px}.site-header{border-bottom:1px solid var(--line);background:#101717}.header-inner{max-width:1360px;margin:auto;display:flex;gap:30px;align-items:center;justify-content:space-between;padding:23px 40px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text);font:700 27px/1 var(--heading)}.brand img{width:43px;height:43px}.brand small{display:block;font:12px/1.3 var(--body);letter-spacing:.16em;color:var(--muted);margin-top:6px}.desktop{display:flex;gap:30px;align-items:center}.desktop a,.mobile a{font-size:15px;color:var(--text);text-decoration:none}.desktop a:hover,.desktop [aria-current]{color:var(--accent)}.mobile{display:none}.mobile summary{cursor:pointer;padding:10px 14px;border:1px solid var(--line)}.mobile nav{display:grid;gap:17px;padding:20px 0}.hero{max-width:1360px;margin:auto;padding:65px 40px 0;display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--green);font-weight:bold}.hero h1{font-size:clamp(60px,6.4vw,94px);max-width:640px}.hero p{max-width:520px;color:var(--muted)}.hero figure{margin:0;position:relative;align-self:stretch;min-height:430px}.hero figure img{width:100%;height:100%;object-fit:cover;object-position:38% center}.hero figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#101717);padding:45px 17px 13px;font-size:11px}.actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;padding:13px 22px;border:1px solid var(--accent);text-decoration:none;font-weight:bold;color:var(--accent)}.button.primary{background:var(--accent);color:#141911}.button:hover{background:#fbda8f;color:#141911}.home-section{max-width:1280px;margin:0 auto;padding:70px 0}.section-head{display:flex;justify-content:space-between;gap:25px;align-items:baseline}.section-head p{color:var(--muted);max-width:420px}.route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.route-card{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);text-decoration:none;color:var(--text);padding:26px;min-height:220px;transition:border-color .15s,transform .15s}.route-card:hover{border-color:var(--accent);transform:translateY(-3px)}.route-card p{font-size:15px;color:var(--muted);flex:1}.route-card .arrow{color:var(--accent);font-size:14px;font-weight:bold}.feature{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;border-top:1px solid var(--line);padding-top:48px}.feature img{aspect-ratio:16/9;object-fit:cover}.feature figure{margin:0}.feature p{color:var(--muted)}.edition{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-top:40px}.edition p{color:var(--muted)}.article-head{max-width:1000px;margin:auto;padding:65px 36px 20px}.article-head h1{max-width:890px}.lead{font-size:21px;line-height:1.6;color:#d8ded4;max-width:790px}.checked{font-size:12px;color:var(--muted);margin-bottom:0}.toc{max-width:930px;padding:0 36px 24px;margin:auto;border-bottom:1px solid var(--line)}.toc ul{display:flex;gap:10px 24px;flex-wrap:wrap;list-style:none;padding:0;margin:0}.toc li{margin:0;font-size:13px}.article-body{max-width:1000px;margin:auto;padding:10px 36px 60px}.article-body>section{margin:45px auto;max-width:740px}.article-body>section.wide{max-width:100%}.article-body figure{max-width:840px;margin:35px auto 50px}.article-body figcaption{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.5}.table-wrap{overflow:auto;border:1px solid var(--line);margin:25px 0}table{border-collapse:collapse;text-align:left;width:100%;font-size:15px}th{background:#26362d;color:var(--green)}th,td{padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top}td:first-child{color:var(--text)}tr:last-child td{border:0}.tool{background:var(--panel);border:1px solid #69765d;border-top:4px solid var(--accent);padding:26px;margin:25px 0}.tool p:last-child{margin-bottom:0}.tool label{display:block;margin-bottom:7px;font-size:14px;color:var(--green)}.tool select,.tool input{width:100%;margin-bottom:18px}.tool input[type=checkbox]{width:auto;margin-right:8px}.tool .result{padding:18px;background:#0f1914;border:1px solid #546548;margin-top:18px;color:#edf0de}.counter-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.counter{text-align:center;padding:20px 10px;background:#101b15}.counter h3{font-size:24px}.counter strong{display:block;font:700 50px/1.2 var(--heading);color:var(--accent);margin:16px}.counter .buttons{display:flex;justify-content:center;gap:12px}.tool-note{font-size:13px;color:var(--muted);margin-top:15px}.reset{font-size:14px;margin-top:20px}.roster-controls{display:grid;grid-template-columns:1fr 1fr;gap:15px}.roster-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.monster{padding:20px;background:#17221c;border:1px solid var(--line)}.monster h3{font-size:25px}.monster p{font-size:14px;margin:5px 0}.monster .muted{color:var(--muted)}.monster [data-role]{color:var(--accent)}.related{max-width:930px;margin:0 auto 60px;padding:30px 36px;border-top:1px solid var(--line)}.related ul{display:flex;gap:12px 28px;flex-wrap:wrap;list-style:none;padding:0}.related h2{font-size:30px}.site-footer{border-top:1px solid var(--line);max-width:1280px;margin:auto;padding:36px 0;color:var(--muted);font-size:13px}.site-footer nav{display:flex;gap:25px;flex-wrap:wrap;margin-bottom:20px}.site-footer p{margin-bottom:10px;max-width:850px}.site-footer a{color:var(--muted)}.trust{max-width:810px;margin:60px auto;padding:0 36px}.trust h1{font-size:58px}.trust h2{font-size:30px;margin-top:35px}[hidden]{display:none!important}noscript p{padding:15px;border:1px solid var(--accent)}
@media(max-width:1320px){.home-section,.site-footer{margin-left:40px;margin-right:40px}.desktop{gap:20px}}
@media(max-width:900px){.desktop{display:none}.mobile{display:block}.header-inner{display:block;padding:19px 25px}.brand{width:fit-content}.mobile{margin-top:18px}.mobile summary{width:fit-content}.hero{padding:42px 25px 0;gap:30px;grid-template-columns:1fr}.hero h1{font-size:70px}.hero figure{min-height:0}.hero figure img{height:auto;aspect-ratio:16/9}.route-grid{grid-template-columns:repeat(2,1fr)}.home-section,.site-footer{margin-left:25px;margin-right:25px}.roster-list{grid-template-columns:1fr 1fr}.article-head{padding-top:40px}.section-head{display:block}}
@media(max-width:560px){body{font-size:16px}.hero h1{font-size:58px}.hero p{font-size:16px}.home-section{padding:45px 0}.route-grid,.feature,.edition{grid-template-columns:1fr}.route-card{min-height:0;padding:23px}.feature{gap:23px}.article-head,.article-body,.toc,.related{padding-left:23px;padding-right:23px}.article-head h1{font-size:47px}.lead{font-size:19px}.article-body>section{margin:36px auto}.tool{padding:17px}.counter-grid,.roster-controls,.roster-list{grid-template-columns:1fr}.counter-grid{gap:13px}.counter{padding:18px 10px}.counter strong{font-size:42px;margin:8px}.brand{font-size:25px}.section-head p{font-size:15px}th,td{padding:12px}.table-wrap{max-width:100%}.trust{padding:0 23px}.trust h1{font-size:47px}.site-footer{padding-bottom:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
