:root{--bg:#180f0c;--panel:#281b15;--gold:#edbf68;--accent:#b94e35;--ink:#fbf0d9;--muted:#b9a89a;--line:#65452d;--heading:'Barlow Condensed',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:radial-gradient(ellipse at 90% 0,#8a38212b,transparent 40%),var(--bg);color:var(--ink);font:15px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,select{font:inherit;color:inherit}button{cursor:pointer}a,button,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:5px}nav{max-width:1280px;margin:auto;padding:22px 40px;display:flex;align-items:center;gap:30px;border-bottom:1px solid #86603c55}.brand{display:flex;align-items:center;gap:10px}.brand-mark{font-size:38px;color:var(--gold);line-height:1}.logo{font:900 35px/.9 var(--heading);letter-spacing:1px;color:var(--gold)}.brand small{display:block;font:600 8px/1.3 'DM Sans',sans-serif;letter-spacing:3px;color:#c1aa8e;margin-top:8px}.navlinks{display:flex;gap:26px;margin-left:auto;font-size:12px;color:#d9c5ac}.navlinks a:hover{color:var(--gold)}.language{padding:9px 10px;background:#221710;border:1px solid #694b31;border-radius:4px;font-size:12px;max-width:140px}main{max-width:1280px;margin:auto;padding:0 40px}.season-cover{margin:24px 0 0;border:1px solid #8e6338;border-radius:7px;overflow:hidden;background:#21140e;box-shadow:0 20px 50px #0003}.season-cover>img{display:block;width:100%;height:auto}.season-cover figcaption{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 18px;background:#24180f;font-size:10px;letter-spacing:.8px;color:#bca17e}.season-cover figcaption>span:first-child{font-weight:700;color:var(--gold)}.season-cover i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--gold);vertical-align:middle;margin-right:7px}.hero{padding:48px 0 40px}.hero-copy{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:65px;align-items:start}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);font-weight:700}.hero .eyebrow{grid-column:1;grid-row:1}.dot{display:none}h1{font:400 clamp(62px,6vw,87px)/1.05 'Rye',Georgia,serif;letter-spacing:-3px;margin:15px 0 0;color:var(--gold);grid-column:1;grid-row:2 / span 3;text-shadow:0 3px #6b3d19}h1 em{font-style:normal}.intro{grid-column:2;grid-row:1 / span 2;font-size:16px;line-height:1.75;color:#d7c7b3;margin:0;max-width:590px}.actions{grid-column:2;display:flex;align-items:center;gap:26px;margin-top:23px;flex-wrap:wrap}.primary{display:inline-flex;align-items:center;gap:22px;padding:13px 21px;background:linear-gradient(#f0cd86,#dca950);border:1px solid #f4d99d;border-bottom:3px solid #9b6b24;color:#2c1c0d;border-radius:4px;font-size:13px;font-weight:800;box-shadow:0 4px 12px #0002}.primary:hover{filter:brightness(1.08)}.secondary{font-size:12px;border-bottom:1px solid #aa7f43;padding:7px 0;color:#e6c491}.small-note{grid-column:2;font-size:10px;line-height:1.5;color:#9f8b76;margin:15px 0 0}.strip{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:23px 26px;border:1px solid #65452d;border-left:3px solid var(--gold);border-radius:4px;background:linear-gradient(100deg,#352318,#241911)}.strip strong{font:700 23px/1.1 var(--heading);color:#f1cf90}.life-note{font-size:12px;color:#bdab95}.tools,.guides-section,.external-section{padding-top:65px}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:26px}.sectionhead h2{font:800 39px/1.1 var(--heading);letter-spacing:.2px;margin:12px 0 0;color:#f6e3bf}.sectionhead p{font-size:12px;max-width:280px;color:var(--muted);margin:0}.tool{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:linear-gradient(120deg,#3b291d,#2b1d15);border:1px solid #7c5733;border-radius:6px}.tool-copy{padding:38px 40px}.tag{display:inline-block;border:1px solid #a77c40;border-radius:3px;padding:6px 10px;font-size:9px;font-weight:700;letter-spacing:1.5px;color:#e1ba73}.tool h3{font:800 38px/1.1 var(--heading);margin:21px 0 14px}.tool p{font-size:14px;line-height:1.7;color:#c8b6a0;max-width:430px}.tool .primary{margin-top:10px}.steps{padding:35px 40px;background:#120c0750;border-left:1px solid #7c573345;display:flex;flex-direction:column;justify-content:center;gap:24px}.step{display:grid;grid-template-columns:34px 1fr;gap:15px}.step span{display:grid;place-items:center;font:700 20px var(--heading);color:#f2c979;width:32px;height:32px;border:1px solid #916a38;border-radius:50%}.step h4{font-size:14px;margin:2px 0 6px;font-weight:600}.step p{font-size:12px;margin:0}.guide-grid,.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.guide-card{padding:0;background:var(--panel);border:1px solid #64482f;border-radius:5px;overflow:hidden;text-align:left;color:inherit;transition:transform .2s,border-color .2s}.guide-card:hover{transform:translateY(-4px);border-color:var(--gold)}.guide-image{position:relative;aspect-ratio:1.45;overflow:hidden;background:#4d3321}.guide-image img{width:100%;height:217%;object-fit:cover;position:absolute;top:-53%}.guide-card:nth-child(2) .guide-image img{height:180%;top:-33%}.guide-card:nth-child(3) .guide-image img{height:260%;top:-75%}.guide-body{padding:22px}.guide-body small{font-size:9px;color:#d4a85e;letter-spacing:1.3px;font-weight:700}.guide-body h3{font:700 28px/1.1 var(--heading);margin:12px 0}.guide-body p{font-size:12px;color:var(--muted);line-height:1.65;margin:0}.guide-body span{display:block;font-size:12px;color:#e3bb76;font-weight:700;margin-top:18px}.resource{display:block;border:1px solid #58412d;border-radius:5px;padding:26px;background:linear-gradient(125deg,#2d2118,#231911);transition:border-color .2s}.resource:hover{border-color:#c18e48}.resource .icon{font-size:27px;color:#d8ad68}.resource h3{font:700 26px/1.1 var(--heading);margin:14px 0 10px}.resource p{font-size:12px;line-height:1.65;color:var(--muted)}.resource small{font-size:9px;letter-spacing:1px;font-weight:700;color:#d9af70}.source-note{font-size:10px;color:#8f7d69;line-height:1.65;margin:18px 0 0}.manifesto{border-top:1px solid #59402b;margin-top:65px;padding:43px 0 50px;display:grid;grid-template-columns:.6fr 1.4fr;gap:50px}.manifesto p{font:700 35px/1.2 var(--heading);color:#ecd4a9;margin:0;max-width:690px}.manifesto small{display:block;font-size:13px;line-height:1.8;color:#aa9780;margin-top:20px;max-width:720px}footer{border-top:1px solid #59402b;padding:25px 0 40px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:#8e7b64}footer .logo{font-size:30px}dialog{background:#24180f;color:#fff2d9;border:1px solid #a07942;border-radius:5px;width:min(850px,95vw);max-height:92vh;padding:18px}dialog::backdrop{background:#0c0705df}dialog button{display:block;margin:0 0 12px auto;background:#dfb56c;border:0;border-radius:3px;padding:9px 17px;color:#2b1b0a;font-weight:700}dialog .full-guide{position:relative;overflow:hidden;aspect-ratio:1206/1790}dialog .full-guide img{position:absolute;width:100%;top:-22.8%}dialog .full-guide.prospecting{aspect-ratio:1206/1810}dialog .full-guide.prospecting img{top:-21%}dialog .full-guide.trains{aspect-ratio:1206/966}dialog .full-guide.trains img{top:-82%}
@media(max-width:900px){nav{padding:20px 25px;gap:20px}.navlinks{gap:18px}.navlinks a{font-size:11px}main{padding:0 25px}.hero-copy{column-gap:32px}.intro{font-size:14px}h1{font-size:63px}.tool-copy,.steps{padding:28px}.sectionhead h2{font-size:35px}.sectionhead p{max-width:220px}}
@media(max-width:650px){nav{padding:18px 20px;gap:10px}.navlinks{display:none}.language{margin-left:auto;font-size:11px;max-width:132px;padding:9px}.brand-mark{font-size:32px}.logo{font-size:30px}.brand small{font-size:7px;letter-spacing:2px}main{padding:0 20px}.season-cover{margin:17px -10px 0;border-radius:4px}.season-cover figcaption{padding:10px 11px;gap:8px;font-size:8px;letter-spacing:.2px;flex-wrap:wrap}.season-cover>img{width:100%;height:auto;object-fit:contain}.hero{padding:30px 0}.hero-copy{display:block}.hero .eyebrow{font-size:9px;letter-spacing:1.8px}h1{font-size:66px;line-height:1.05;letter-spacing:-3px;margin:17px 0 20px}.intro{font-size:14px;line-height:1.75}.actions{gap:22px;margin-top:23px}.primary{font-size:12px;padding:13px 17px}.secondary{font-size:11px}.small-note{font-size:9px;margin-top:15px}.strip{display:block;padding:20px;border-radius:3px}.strip strong{font-size:23px}.life-note{display:block;font-size:11px;margin-top:10px}.tools,.guides-section,.external-section{padding-top:43px}.sectionhead{display:block;margin-bottom:22px}.sectionhead h2{font-size:33px}.sectionhead .eyebrow{font-size:9px}.sectionhead p{font-size:12px;max-width:none;margin-top:13px}.tool{grid-template-columns:1fr}.tool-copy{padding:26px}.tool h3{font-size:32px}.tool p{font-size:13px}.steps{padding:25px 26px;border-left:0;border-top:1px solid #7c573345;gap:22px}.step h4{font-size:13px}.step p{font-size:11px}.guide-grid,.resource-grid{grid-template-columns:1fr;gap:16px}.guide-card{display:grid;grid-template-columns:125px 1fr}.guide-image{aspect-ratio:auto;min-height:195px}.guide-body{padding:18px 16px}.guide-body h3{font-size:26px;margin:10px 0}.guide-body small{font-size:8px}.guide-body p{font-size:11px}.guide-body span{font-size:11px;margin-top:14px}.resource{padding:23px}.resource .icon{float:right;font-size:24px}.resource h3{font-size:27px;margin:0 0 8px}.resource p{font-size:12px}.resource small{font-size:9px}.manifesto{grid-template-columns:1fr;gap:22px;margin-top:40px;padding:30px 0}.manifesto p{font-size:31px}.manifesto small{font-size:12px;margin-top:16px}footer{flex-wrap:wrap;font-size:9px;gap:14px;padding-bottom:30px}footer .logo{width:100%;font-size:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.saloon-section{margin-top:60px}.saloon-heading{display:flex;align-items:baseline;justify-content:space-between;gap:25px;margin-bottom:20px}.saloon-heading h2{font:700 37px/1.1 var(--heading);color:#ecd4a9;margin:0}.saloon-section figure{margin:0;overflow:hidden;border:1px solid #795735;border-radius:5px;background:#24180f}.saloon-section img{display:block;width:100%;height:auto}.saloon-section figcaption{padding:10px 15px;font-size:10px;color:#bca17e}.guide-top{display:flex;align-items:center;gap:18px;justify-content:space-between;margin-bottom:15px}.guide-top h2{font:700 30px/1.1 var(--heading);margin:0;color:#f0ce90}.guide-top .guide-close{margin:0;white-space:nowrap}.guide-tabs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-bottom:1px solid #765635;padding-bottom:14px}.guide-tabs button{display:inline-block;margin:0;padding:9px 14px;font-size:12px;border:1px solid #83603c;border-radius:3px;background:transparent;color:#d6c1a2}.guide-tabs button[aria-pressed=true]{background:#d9ad61;color:#2c1c0d}.guide-download{margin-left:auto;padding:8px 4px;font-size:11px;color:#e2ba74;text-decoration:underline;text-underline-offset:3px}.guide-origin{font-size:11px;line-height:1.5;color:#bca78d;margin:14px 0 18px}.full-guide.localized{aspect-ratio:auto;overflow:visible}.full-guide.localized img{position:static;display:block;width:100%;height:auto;top:auto}.guide-card.localized .guide-image img{height:100%;width:100%;top:0;object-fit:cover;object-position:top}.guide-transcript{background:#f7edd8;color:#35251b;border-radius:3px;padding:30px;line-height:1.75}.guide-transcript h2{font:700 32px/1.1 var(--heading);margin:0 0 22px;color:#653f20}.guide-transcript h3{font:700 25px/1.2 var(--heading);margin:28px 0 12px;color:#764a23}.guide-transcript p{font-size:14px;margin:10px 0}.guide-transcript [hidden],.full-guide[hidden],.guide-transcript[hidden]{display:none!important}@media(max-width:650px){.saloon-section{margin-top:42px}.saloon-heading{display:block}.saloon-heading h2{font-size:31px;margin-top:12px}.saloon-section figure{margin:0 -10px}.saloon-section figcaption{font-size:9px}.guide-top h2{font-size:25px}.guide-tabs button{font-size:11px;padding:8px 11px}.guide-download{margin-left:0;width:100%;font-size:11px}.guide-transcript{padding:22px 18px}.guide-transcript p{font-size:13px}.guide-top .guide-close{font-size:12px;padding:8px 11px}}
.rules-section{padding-top:55px}.rules-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:18px}.rules-card{padding:25px;background:#281b15;border:1px solid #66472c;border-top:3px solid #c18b44;border-radius:4px}.rules-card.forbidden{border-top-color:#bc5947}.rules-card.discouraged{border-top-color:#d0a452}.rules-card.encouraged{border-top-color:#709768}.rules-card h3{font:700 29px/1.1 var(--heading);margin:0 0 14px;color:#efd09a}.rules-card p{font-size:11px;line-height:1.5;color:#c69d88}.rules-card ul{padding-left:18px;margin:0}.rules-card li{font-size:12px;line-height:1.6;color:#c6b49c;margin-bottom:12px}.rules-card li:last-child{margin-bottom:0}@media(max-width:650px){.rules-section{padding-top:42px}.rules-grid{grid-template-columns:1fr}.rules-card{padding:23px}.rules-card li{font-size:12px}}
/* Theme switcher (footer): S5 · Lego · Crayon */
.theme-switch{display:inline-flex;gap:4px;margin-left:auto;padding:3px;border:1px solid #59402b;border-radius:4px;background:#1f140f}.theme-switch button{border:0;background:transparent;color:#bca17e;padding:6px 10px;border-radius:3px;font-size:11px;font-weight:700;letter-spacing:.5px}.theme-switch button[aria-pressed=true]{background:#dfb56c;color:#2b1b0a}@media(max-width:650px){.theme-switch{margin-left:0;width:100%;justify-content:center}}

/* More tools (Cpt Hedgehog): compact secondary block under the featured cards */
.more-tools{margin-top:24px;border-top:1px solid #4a3523;padding-top:18px}.more-tools-title{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#c9a46a;font-weight:700;margin:0 0 12px}.tool-group{margin:0 0 12px}.tool-group:last-child{margin-bottom:0}.tool-group summary{list-style:none;cursor:default;pointer-events:none;font:700 14px/1.3 var(--heading);letter-spacing:.8px;text-transform:uppercase;color:#e1ba73;margin:0 0 7px}.tool-group summary::-webkit-details-marker{display:none}.chips{display:flex;flex-wrap:wrap;gap:7px;align-items:flex-start}.chip-wrap{display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px}.chip{display:inline-block;border:1px solid #7d5d3a;border-radius:3px;padding:5px 10px;font-size:11px;font-weight:600;line-height:1.4;color:#dcc296;background:#241812;transition:border-color .2s,color .2s}.chip:hover{border-color:#c18e48;color:#f0ce90}.chip-more{border-style:dashed;color:#c9a46a}.chip-hint{font-size:10px;line-height:1.4;color:#8f7d69}@media(max-width:650px){.more-tools{margin-top:20px;padding-top:16px}.tool-group summary{cursor:pointer;pointer-events:auto;display:flex;justify-content:space-between;align-items:center;padding:4px 0}.tool-group summary::after{content:'+';font:600 16px/1 'DM Sans',sans-serif;color:#a77c40}.tool-group[open] summary::after{content:'−'}.chips{gap:6px;padding-top:4px}.chip{font-size:11px;padding:6px 10px}}
/* Home-page teaser linking to the solver statistics page */
.math-teaser{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:16px;padding:16px 20px;border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:6px;background:var(--panel);color:var(--ink);text-decoration:none}
.math-teaser:hover{border-color:#c18e48}
.math-teaser .math-text{color:var(--ink);line-height:1.45}
.math-teaser .math-link{color:var(--gold);font-weight:700;white-space:nowrap}
@media(max-width:650px){.math-teaser{grid-template-columns:1fr;gap:6px}}
