:root{--ink:#183c35;--muted:#526b61;--green:#255e4f;--paper:#f8f8f3;--line:#dce3da;--mint:#e2ece3;--peach:#edb18c;--radius:20px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:light}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:hover{color:var(--green)}:focus-visible{outline:3px solid #b76832;outline-offset:5px}button:disabled{cursor:default}button,input,select{border-radius:10px}img{display:block;max-width:100%;height:auto}p{line-height:1.7}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600;letter-spacing:-.045em}h1{font-size:clamp(42px,4.6vw,68px);line-height:1.06}h2{font-size:clamp(27px,3vw,39px);line-height:1.15}h3{font-size:22px}button{color:var(--ink)}[hidden]{display:none!important}.container{max-width:1180px;margin:0 auto;padding:0 36px}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{max-width:1252px;min-height:88px;margin:auto;padding:20px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:700;letter-spacing:-.8px;white-space:nowrap}.site-header nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}.site-header nav>a:not(.nav-play){padding:10px 0}.site-header nav [aria-current]{text-decoration:underline;text-underline-offset:7px}.nav-play{display:flex;align-items:center;gap:26px;border:1px solid var(--line);padding:13px 18px;border-radius:9px}.nav-play:hover{background:#e8ede5}.skip-link{position:absolute;top:-100px;left:12px;background:var(--green);color:white;padding:15px;z-index:100}.skip-link:focus{top:10px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.65px;line-height:1.5}.tiny-block{display:inline-block;width:9px;height:9px;border-radius:2px;background:var(--peach);margin-right:8px;transform:rotate(-8deg)}.serif-word{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.05em}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;padding-top:72px;padding-bottom:76px;align-items:center}.hero-copy h1{font-size:clamp(50px,5.7vw,79px);line-height:1.02;margin:24px 0}.hero-lead{max-width:410px;font-size:17px;color:var(--muted);line-height:1.75;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:25px;font-size:14px;font-weight:600;padding:14px 21px;border:1px solid transparent;border-radius:9px;text-align:center}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:#194536}.button.secondary{border-color:#cbd7ca;background:#edf1e9}.text-link{font-size:14px;font-weight:600;line-height:1.5}.hero-notes{display:flex;gap:19px;flex-wrap:wrap;margin-top:30px;font-size:11px;color:var(--muted)}.hero-notes b{margin-right:4px}.hero-art{position:relative;display:block;isolation:isolate;min-width:0;padding:16px 0 25px}.hero-art>img{position:relative;width:100%;transform:rotate(-5deg);border-radius:24px;box-shadow:0 28px 44px -27px #153d3869;z-index:1}.art-orbit{position:absolute;background:#e8ebdf;inset:-18px -17px -8px 14px;border-radius:48% 44% 45% 40%;transform:rotate(10deg)}.art-caption{position:absolute;bottom:0;left:7%;z-index:3;background:white;border:1px solid #e2e6da;padding:15px 17px;border-radius:12px;box-shadow:0 5px 12px #244b3810;min-width:220px;font-size:13px;display:flex;align-items:center;gap:10px}.art-caption b{margin-left:auto}.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:#4c8468;margin-right:6px}.art-note{position:absolute;right:-10px;top:-11px;z-index:2;background:#f3c8a8;line-height:1.5;font-family:Georgia,serif;font-style:italic;padding:16px 20px;border-radius:8px;transform:rotate(7deg);box-shadow:0 5px 15px #25422d0d;font-size:16px}.home-games{padding-top:24px;padding-bottom:60px}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}.section-heading h2{margin-bottom:0}.section-heading>.text-link{padding-bottom:4px}.section-heading .eyebrow{color:var(--muted);margin-bottom:12px}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.game-card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s,transform .2s}.game-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #25402e0c}.cover-link{display:block;position:relative;background:#e6ecdf;overflow:hidden}.cover-link>img{aspect-ratio:4/3;object-fit:cover;width:100%}.play-bubble{display:flex;align-items:center;justify-content:center;position:absolute;right:18px;bottom:18px;width:42px;height:42px;border-radius:50%;background:white;font-size:23px;box-shadow:0 2px 8px #0001}.card-body{padding:24px}.category-link{color:#526858;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:1.2px}.card-body h3{margin:10px 0 12px;font-size:26px}.card-body p{font-size:14px;color:var(--muted);margin-bottom:20px}.tag-list{display:flex;gap:8px;flex-wrap:wrap}.tag-list span{font-size:10px;letter-spacing:.1px;padding:7px 10px;border:1px solid #e4e8df;border-radius:5px;color:#4a6557}.single-game-grid{grid-template-columns:1fr}.single-game-grid .game-card{display:grid;grid-template-columns:36% 1fr;max-width:860px}.single-game-grid .cover-link>img{height:100%;min-height:240px}.single-game-grid .card-body{align-self:center;padding:28px 36px}.single-game-grid .card-body h3{font-size:32px}.single-game-grid .card-body p{max-width:440px;font-size:15px}.quiet-strip{margin-top:0;margin-bottom:66px;display:flex;gap:24px;align-items:center;border-top:1px solid var(--line);padding-top:36px}.quiet-strip .strip-icon{width:64px;height:64px;border-radius:20px;background:#ebeee3;display:grid;place-items:center;font-size:35px;flex-shrink:0}.quiet-strip h2{font-size:25px;margin-bottom:10px}.quiet-strip p{max-width:600px;font-size:14px;color:var(--muted);margin:0}.quiet-strip>a{margin-left:auto;white-space:nowrap}.site-footer{max-width:1180px;margin:auto;padding:36px;border-top:1px solid var(--line);display:flex;align-items:center;gap:40px;flex-wrap:wrap}.site-footer .brand{font-size:19px}.site-footer p{font-size:12px;color:var(--muted);margin:10px 0 0}.site-footer nav{display:flex;gap:24px;font-size:12px;margin-left:auto}.site-footer .copyright{flex-basis:100%;margin-top:0;font-size:10px}.catalog-section{padding-top:54px;padding-bottom:70px;min-height:68vh}.catalog-section h1{margin:17px 0}.page-lead{font-size:18px;color:var(--muted)}.catalog-tools{display:flex;gap:16px;align-items:end;padding:22px 0 10px;margin-top:26px}.catalog-tools label{display:block;font-size:12px;font-weight:600;margin-bottom:9px}.search-field{flex:1;max-width:590px}.search-field>div{position:relative}.search-field span{position:absolute;left:16px;top:7px;font-size:28px;color:#597567}.catalog-tools input,.catalog-tools select{background:#fff;border:1px solid #cdd9cb;height:50px;width:100%;color:var(--ink);padding:10px 15px}.catalog-tools input{padding-left:47px}.catalog-tools input::placeholder{color:#718176}.catalog-tools select{min-width:190px}.catalog-summary{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);margin:20px 0 14px}.catalog-summary p{margin:0}.pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.pagination a,.pagination button{display:grid;place-items:center;width:44px;min-height:44px;border:1px solid var(--line);background:white;border-radius:8px}.pagination [aria-current]{background:var(--green);color:white}.pagination>a:only-child{display:none}.empty-state{text-align:center;padding:60px 20px;background:#edf1e8;border:1px dashed #d1dbcc;border-radius:15px}.empty-state>span{font-size:38px}.empty-state h2{font-size:26px;margin:10px 0}.empty-state p{color:var(--muted)}.play-page{padding-top:24px;padding-bottom:50px}.breadcrumbs{font-size:12px;display:flex;gap:13px;color:var(--muted);margin-bottom:20px}.play-title{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-bottom:28px}.play-title h1{font-size:40px;margin:0 0 10px}.play-title p{color:var(--muted);font-size:14px;max-width:620px;line-height:1.5;margin:0}.category-pill{border:1px solid #d2ddcf;border-radius:30px;padding:10px 15px;font-size:11px;white-space:nowrap}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:45px;align-items:start}.game-stage{background:#edf1e7;border:1px solid #d5dfd1;border-radius:22px;padding:18px 26px 24px;min-width:0}.stage-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}.stage-toolbar>span{font-size:9px;font-weight:700;letter-spacing:1px;color:#58735f;white-space:nowrap}.icon-button{border:1px solid #c9d5c4;background:#f7f8f1;display:flex;align-items:center;gap:6px;font-size:11px;padding:10px 13px;min-height:40px}.icon-button>span{font-size:17px}#game-root{min-height:440px}.loading-game{display:flex;align-items:center;justify-content:center;min-height:420px;color:var(--muted)}.play-aside{padding-top:21px}.play-aside .eyebrow{color:#72826a;font-size:9px}.play-aside h2{font-size:46px;line-height:1.02;margin:15px 0 20px}.play-aside>p:not(.eyebrow){font-size:14px;color:var(--muted)}.quick-facts{border-top:1px solid var(--line);margin-top:24px}.quick-facts>div{padding:14px 0;border-bottom:1px solid var(--line)}.quick-facts h3{font-size:12px;letter-spacing:0;margin:0 0 5px}.quick-facts p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.play-aside .text-link{display:inline-block;margin-top:20px;font-size:12px}.instructions{display:grid;grid-template-columns:minmax(0,1.6fr) 1fr;gap:60px;margin-top:60px;padding-top:40px;border-top:1px solid var(--line)}.instructions h2{font-size:29px}.instructions h3{font-size:19px;letter-spacing:-.4px}.instructions ol{padding-left:22px}.instructions li{font-size:14px;line-height:1.8;padding:0 0 12px 9px;color:var(--muted)}.instructions p{font-size:14px;color:var(--muted)}.tips-panel{background:#ecefe5;padding:28px;border-radius:16px;align-self:start}.tips-panel ul{padding-left:14px}.tips-panel h2{font-size:24px}.tips-panel .save-note{padding-top:16px;border-top:1px solid #d6ded0;font-size:12px;margin-bottom:0}.source-note{margin:40px 0 28px;border-top:1px solid var(--line);padding-top:25px;max-width:750px}.source-note h2{font-size:20px}.source-note p{font-size:12px;color:var(--muted);margin-bottom:8px}.source-note a{text-decoration:underline}.back-to-games{background:#e7eee3;border-radius:12px;padding:20px 24px;display:flex;justify-content:space-between;gap:20px;font-size:13px;margin-top:35px}.related-games{margin-top:42px}.prose{max-width:830px;padding-top:65px;padding-bottom:70px}.prose h1{font-size:50px;margin:20px 0 30px}.prose h2{font-size:27px;margin-top:32px}.prose h3{font-size:21px}.prose p{color:var(--muted);font-size:15px}.prose a:not(.button){text-decoration:underline;text-underline-offset:4px}.prose>.button{margin-top:25px}.not-found{padding-top:100px;padding-bottom:120px}.not-found p{color:var(--muted)}.draft-banner{background:#f8d8a0;text-align:center;padding:14px;font-size:14px}.focus-open{overflow:hidden}.game-stage.focus-mode{position:fixed;inset:0;z-index:80;border-radius:0;overflow-y:auto;padding:18px max(20px,calc((100vw - 720px)/2));background:#edf1e7;min-height:100dvh}.focus-mode .stage-toolbar{max-width:700px;margin:0 auto 12px}.focus-mode #game-root{max-width:590px;margin:auto}.hosted-panel{display:flex;flex-wrap:wrap;gap:16px}.hosted-panel>p{width:100%;font-size:14px}.hosted-panel>a{align-self:center;font-size:12px;text-decoration:underline}.embed-holder{width:100%;background:#e4e9df;border-radius:10px;overflow:hidden}.embed-holder iframe{display:block;border:0;width:100%;height:100%}.load-error{padding:50px 15px;text-align:center}.load-error h2{font-size:26px}.load-error p{font-size:14px;color:var(--muted)}
@media(min-width:1400px){.hero{padding-top:90px;padding-bottom:95px}}@media(max-width:900px){.hero{gap:30px}.hero-copy h1{font-size:61px}.hero-lead{font-size:15px}.hero-notes{gap:10px;font-size:10px}.play-layout{gap:24px;grid-template-columns:minmax(0,1fr) 230px}.play-aside h2{font-size:38px}.game-stage{padding:15px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.single-game-grid{grid-template-columns:1fr}.quiet-strip>a{white-space:normal}.instructions{gap:30px}}
@media(max-width:680px){.container{padding-left:20px;padding-right:20px}.header-inner{padding:16px 20px;min-height:72px}.brand{font-size:20px;gap:8px}.brand img{width:27px;height:27px}.site-header nav{gap:20px;font-size:12px}.site-header .nav-play{display:none}.hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:36px;gap:35px}.hero-copy h1{font-size:61px;margin:21px 0}.hero-lead{font-size:16px;max-width:360px}.hero-actions{gap:20px}.hero-notes{margin-top:23px;gap:16px;font-size:10px}.hero-art{max-width:420px;width:93%;margin:12px auto 7px;padding-bottom:22px}.art-orbit{inset:-8px -10px 0 10px}.art-note{right:-8px;top:-7px;font-size:14px;padding:13px 16px}.art-caption{min-width:205px;left:5%;padding:12px 15px}.hero-art>img{transform:rotate(-4deg)}.home-games{padding-top:34px;padding-bottom:35px}.section-heading{align-items:start;gap:16px;margin-bottom:22px}.section-heading h2{font-size:28px;max-width:240px}.section-heading>.text-link{font-size:11px;white-space:nowrap;margin-top:30px}.game-grid{grid-template-columns:1fr;gap:20px}.single-game-grid .game-card{display:block}.single-game-grid .cover-link>img{min-height:0;aspect-ratio:4/3}.single-game-grid .card-body,.card-body{padding:24px}.single-game-grid .card-body h3{font-size:27px}.single-game-grid .card-body p{font-size:14px}.quiet-strip{margin:0 20px 35px;padding:26px 0 0;display:grid;grid-template-columns:45px 1fr;gap:16px}.quiet-strip .strip-icon{width:45px;height:45px;border-radius:12px;font-size:25px}.quiet-strip h2{font-size:23px;line-height:1.2}.quiet-strip p{font-size:13px}.quiet-strip>a{grid-column:2;margin-left:0;font-size:12px}.site-footer{padding:30px 20px;gap:20px}.site-footer nav{margin-left:0;gap:20px;flex-wrap:wrap;width:100%;font-size:12px}.catalog-section{padding-top:36px;padding-bottom:45px}.catalog-section h1{font-size:42px}.page-lead{font-size:16px}.catalog-tools{flex-wrap:wrap;gap:12px;margin-top:12px}.search-field{flex-basis:100%;max-width:none}.category-field{flex:1}.search-submit{min-height:44px}.catalog-tools input{font-size:14px}.catalog-summary{margin-top:17px}.play-page{padding-top:18px}.breadcrumbs{font-size:11px;margin-bottom:16px}.play-title{margin-bottom:20px}.play-title h1{font-size:31px;letter-spacing:-1.5px}.play-title p{font-size:12px;line-height:1.5}.play-title .category-pill{display:none}.play-layout{display:block}.game-stage{padding:12px 10px 17px;border-radius:16px;margin:0 -7px}.stage-toolbar{margin-bottom:10px}.stage-toolbar>span{font-size:8px;letter-spacing:.7px}.icon-button{padding:8px 10px;min-height:40px;font-size:10px}.play-aside{display:none}#game-root{min-height:390px}.instructions{grid-template-columns:1fr;gap:24px;margin-top:35px;padding-top:30px}.instructions h2{font-size:27px}.instructions li{padding-left:3px;font-size:14px}.tips-panel{padding:23px}.back-to-games{display:block;padding:20px}.back-to-games span{display:block;margin-bottom:9px}.back-to-games a{font-size:13px}.prose{padding-top:40px;padding-bottom:40px}.prose h1{font-size:42px}.prose h2{font-size:26px}.prose p{font-size:14px}.not-found{padding-top:70px;padding-bottom:90px}.game-stage.focus-mode{margin:0;padding:12px 15px 25px}.focus-mode #game-root{max-width:490px}.focus-mode .stage-toolbar{padding:0 3px}.source-note{margin-top:32px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Keep the board and piece tray together on ordinary laptop viewports. */
@media(min-width:681px){.play-page{padding-top:16px}.breadcrumbs{margin-bottom:12px}.play-title{margin-bottom:18px}.play-title h1{font-size:36px}.game-stage{padding-top:14px}.stage-toolbar{margin-bottom:8px}.game-stage:not(.focus-mode) .bp-game{max-width:340px}.game-stage:not(.focus-mode) .bp-scorebar{padding-bottom:12px}.game-stage:not(.focus-mode) .bp-piece{min-height:90px;padding-top:8px}.game-stage:not(.focus-mode) .bp-tray{margin-top:16px}}

/* SEO guide stays below the playable board; constrain long lines for reading. */
.hero-copy h1{font-size:clamp(40px,4.2vw,60px);line-height:1.08}
.hero-lead{max-width:490px}.quiet-strip p+p{margin-top:12px}.quiet-strip p a{text-decoration:underline;text-underline-offset:3px}
.collection-heading{font-size:24px;margin-top:24px;margin-bottom:20px}
.block-guide{max-width:760px;margin:48px auto 0;border-top:1px solid var(--line);padding-top:30px}
.block-guide h2{font-size:29px;margin-top:36px;line-height:1.2}.block-guide h2:first-child{margin-top:0}
.block-guide h3{font-size:21px;letter-spacing:-.025em;margin-top:26px;line-height:1.3}
.block-guide p,.block-guide li{font-size:16px;line-height:1.8;color:var(--muted)}.block-guide ol{padding-left:24px}.block-guide li{padding-left:5px;margin-bottom:12px}
@media(max-width:680px){.hero-copy h1{font-size:clamp(38px,9vw,52px)}.block-guide{margin-top:32px;padding-top:26px}.block-guide h2{font-size:25px}.block-guide h3{font-size:20px}.block-guide p,.block-guide li{font-size:15px}}
