:root{color:#222b26;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#faf9f6;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}h1,h2,h3,p{margin-top:0}main{max-width:1080px;margin:auto;padding:0 32px}header{border-bottom:1px solid #dedfd8;align-items:center;gap:12px;padding:28px 0;display:flex}h1{letter-spacing:-.7px;margin:0;font-size:23px}.mark{color:#20563a;font-size:32px}.intro{max-width:620px;padding:48px 0 24px}.eyebrow{letter-spacing:2px;color:#687269;font-size:11px}h2{letter-spacing:-1px;font-size:clamp(25px,4vw,36px);font-weight:500}.intro p:last-child{color:#687269;line-height:1.7}.puzzle-layout{grid-template-columns:minmax(180px,320px) 1fr;align-items:start;gap:64px;padding:16px 0 64px;display:grid}.board{background:#303a32;border:1px solid #303a32;gap:1px;display:grid}.cell{aspect-ratio:1;background:#fffefa;position:relative}.cell span{font-size:14px;position:absolute;top:7px;left:9px}.blocked{background:#303a32}aside section{margin:0 0 32px}h3{font-size:18px;font-weight:600}aside p{font-size:15px;line-height:1.7}aside strong{margin-right:8px}.length{color:#687269}footer{color:#687269;border-top:1px solid #dedfd8;padding:24px 0;font-size:13px}@media (width<=640px){main{padding:0 20px}.puzzle-layout{grid-template-columns:1fr;gap:32px}.board{width:min(100%,320px)}.intro{padding-top:32px}}.game-heading{justify-content:space-between;align-items:baseline;gap:16px;padding-top:36px;display:flex}.game-heading h2{letter-spacing:-.5px;font-size:22px}.game-heading>span{color:#687269;font-size:13px}.cell input{text-align:center;color:#222b26;caret-color:#20563a;background:0 0;border:0;border-radius:0;width:100%;height:100%;padding:18px 0 0;font:500 clamp(24px,6vw,40px)/1 system-ui;position:absolute;inset:0}.cell span{z-index:1;pointer-events:none}.cell.highlighted{background:#e1edfc}.cell input:focus{outline-offset:-3px;background:#3268a80a;outline:3px solid #3268a8}.active-clue{color:#47554b;min-height:72px;font-size:14px;line-height:1.6}.clue{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:14px;line-height:1.6;display:block}.clue.active{background:#e1edfc}.clue:focus-visible{outline-offset:3px;outline:2px solid #3268a8}.instructions{color:#687269;margin-top:20px;font-size:13px;line-height:1.7}.success{color:#20563a;font-weight:600}.status{font-size:14px;line-height:1.6}.board-wrap{isolation:isolate;position:relative}.completion-overlay{z-index:3;pointer-events:none;background:#faf9f650;place-items:center;animation:3s both completion-veil;display:grid;position:absolute;inset:0;overflow:hidden}.completion-card{color:#20563a;background:#fffefbf5;border:1px solid #20563a20;border-radius:14px;flex-direction:column;align-items:center;gap:7px;padding:20px 28px;animation:3s both completion-pop;display:flex;box-shadow:0 8px 32px #16332115}.completion-card strong{letter-spacing:-.5px;font-size:23px}.completion-card>span:last-child{font-size:13px}.completion-check{background:#e4eddf;border-radius:50%;place-items:center;width:34px;height:34px;font-size:22px;display:grid}.confetti{position:absolute;inset:0;overflow:hidden}.confetti i{border-radius:2px;width:6px;height:10px;animation:1.8s ease-out both confetti-fall;position:absolute;top:-12px}@keyframes completion-pop{0%{opacity:0;transform:translateY(12px)scale(.94)}15%,80%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-6px)}}@keyframes completion-veil{0%{opacity:0}10%,80%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes confetti-fall{0%{opacity:0;transform:translateY(0)rotate(0)}15%{opacity:1}to{opacity:0;transform:translateY(340px)rotate(240deg)}}@media (width<=640px){.board-wrap{width:min(100%,320px)}}@media (prefers-reduced-motion:reduce){.confetti{display:none}.completion-card{animation:none}.completion-overlay{animation:3s step-end both completion-dismiss}}@keyframes completion-dismiss{0%{opacity:1}to{opacity:0;visibility:hidden}}.cell.locked{background:#c5ddcb}.cell.locked input{color:#20563a;cursor:default;font-weight:650}.clue.solved{color:#20563a}.solved-label{margin-left:6px;font-size:12px;font-weight:600;display:inline-block}.game-actions{color:#687269;align-items:center;gap:16px;font-size:13px;display:flex}.restart-button{color:#222b26;font:inherit;cursor:pointer;background:0 0;border:1px solid #b5bdb3;border-radius:6px;padding:10px 16px}.restart-button:hover{background:#e4eddf}.restart-button:focus-visible{outline-offset:3px;outline:2px solid #20563a}@media (width<=420px){.game-heading{flex-wrap:wrap;padding-bottom:16px}.game-actions{justify-content:space-between;width:100%}}.clue.solved .clue-text{-webkit-text-decoration:line-through #527c5c;text-decoration:line-through #527c5c;text-decoration-thickness:1.5px}.clue.solved{background:#edf4ee}.clue.solved.active{background:#edf4ee;box-shadow:inset 3px 0 #3268a8}.puzzle-layout{grid-template-columns:minmax(280px,560px) minmax(240px,1fr);gap:40px}.cell input{padding-top:8px;font-size:clamp(15px,3vw,28px)}.cell span{font-size:10px;top:2px;left:3px}.new-game-button{color:#fff;font:inherit;cursor:pointer;white-space:nowrap;background:#20563a;border:1px solid #20563a;border-radius:6px;padding:10px 16px}.new-game-button:hover{background:#173f2b}.new-game-button:focus-visible{outline-offset:3px;outline:2px solid #3268a8}.puzzle-id{color:#687269;font-size:14px;font-weight:400}.game-heading,.game-actions{flex-wrap:wrap}@media (width<=800px){.puzzle-layout{grid-template-columns:1fr}.board-wrap,.board{width:100%;max-width:560px}}@media (width<=420px){main{padding:0 12px}.game-actions{gap:8px}.cell span{font-size:8px;top:1px;left:2px}}@media (width<=640px){main:not(.home-page){padding:0 16px}.game-header{padding:16px 0}.game-heading{align-items:stretch;gap:10px;padding-top:24px}.game-heading h2{margin:0}.game-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid}.game-actions>span{align-self:center}.game-actions button{min-height:44px;padding:9px 10px}.level-control{justify-content:space-between;min-width:0}.level-control select{min-width:0;max-width:100%}.puzzle-layout{gap:24px;padding-bottom:36px}.active-clue{background:#f0efe9;border-radius:8px;min-height:0;margin-bottom:16px;padding:12px 14px}.board-wrap{overscroll-behavior-x:contain;overflow-x:auto}.board{margin-inline:auto}.clue{min-height:44px;padding:11px 12px}aside section{margin-bottom:24px}.instructions{margin-top:16px}}@media (width<=380px){main:not(.home-page){padding:0 12px}.game-header{gap:7px}.back-home{padding:8px}.game-header h1{font-size:16px}.puzzle-layout{gap:20px}.game-actions,.restart-button,.new-game-button{font-size:12px}}.privacy-link{color:#687269;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:0 0 16px auto;padding:6px 0;font-size:12px;text-decoration:underline;display:block}.consent-banner{z-index:10;background:#fffefa;border:1px solid #dedfd8;border-radius:12px;justify-content:space-between;align-items:center;gap:24px;max-width:860px;margin-inline:auto;padding:18px 20px;display:flex;position:fixed;inset:auto 20px 20px;box-shadow:0 10px 40px #1d332122}.consent-copy{gap:5px;max-width:560px;display:grid}.consent-copy strong{font-size:14px}.consent-copy span{color:#687269;font-size:13px;line-height:1.5}.consent-actions{flex:none;align-items:center;gap:8px;display:flex}.consent-actions button{color:#222b26;min-height:42px;font:inherit;cursor:pointer;background:0 0;border:1px solid #b5bdb3;border-radius:6px;padding:9px 13px;font-size:13px}.consent-actions .consent-accept{color:#fff;background:#20563a;border-color:#20563a}.consent-actions button:focus-visible,.privacy-link:focus-visible{outline-offset:3px;outline:2px solid #3268a8}@media (width<=640px){.consent-banner{flex-direction:column;align-items:stretch;gap:14px;padding:16px;inset:auto 10px 10px}.consent-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.consent-actions button{padding-inline:8px}}.level-control{align-items:center;gap:8px;display:flex}.level-control select{font:inherit;color:#222b26;background:#fffefa;border:1px solid #b5bdb3;border-radius:6px;padding:9px}.level-control select:focus-visible{outline-offset:2px;outline:2px solid #3268a8}.home-page{flex-direction:column;max-width:1080px;min-height:100vh;margin:0 auto;padding:0 32px;display:flex}.site-header,.game-header{border-bottom:1px solid #dedfd8;align-items:center;gap:12px;padding:25px 0;display:flex}.site-name,.game-header h1{letter-spacing:-.6px;text-transform:capitalize;font-size:21px;font-weight:700}.site-header .mark,.game-header .mark{font-size:27px}.home-intro{max-width:600px;padding:66px 0 30px}.home-intro .eyebrow{letter-spacing:2px;color:#687269;margin-bottom:14px;font-size:11px}.home-intro h1{letter-spacing:-1.8px;margin-bottom:12px;font-size:clamp(34px,5vw,48px);font-weight:500;line-height:1.12}.home-intro .home-tagline{color:#47554b;margin-bottom:6px;font-size:17px}.home-intro>p:last-child{color:#687269;font-size:16px;line-height:1.7}.game-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding-bottom:64px;display:grid}.game-card{color:#222b26;text-align:left;min-height:230px;font:inherit;background:#fffefa;border:1px solid #e2e2db;border-radius:12px;grid-template-columns:minmax(120px,.85fr) 1.15fr;align-items:center;gap:24px;padding:24px;display:grid}button.game-card{cursor:pointer;transition:border-color .18s,transform .18s,box-shadow .18s}button.game-card:hover{border-color:#9baa9b;transform:translateY(-2px);box-shadow:0 8px 24px #1d33210d}button.game-card:focus-visible{outline-offset:3px;outline:3px solid #3268a8}.coming-card{color:#47554b;background:#f3f2ed}.card-art{aspect-ratio:1.12;color:#20563a;background:#e8eee5;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:175px;display:flex}.crossword-art{background:#e8eee5}.crossword-mini-grid{aspect-ratio:1;grid-template-rows:repeat(5,1fr);grid-template-columns:repeat(5,1fr);gap:3px;width:min(76%,112px);display:grid}.mini-cell{background:#20563a;border-radius:2px;display:block}.mini-cell.open{background:#fffefa;box-shadow:inset 0 0 0 1px #20563a55}.wordsearch-art{color:#718173;letter-spacing:4px;background:#eeeee8;gap:6px;font-family:ui-monospace,monospace;font-size:clamp(15px,2vw,21px);font-weight:600}.card-copy{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.card-kicker{color:#53715b;letter-spacing:1.2px;margin-bottom:4px;font-size:10px;font-weight:700}.coming-kicker{color:#888d84}.card-copy h2{letter-spacing:-.5px;margin:0;font-size:clamp(19px,2.2vw,24px);line-height:1.2}.card-copy>span:not(.card-kicker):not(.card-cta){color:#687269;font-size:13px;line-height:1.55}.card-cta{color:#20563a;margin-top:9px;font-size:14px;font-weight:650}.card-cta>span{margin-left:5px;transition:transform .18s;display:inline-block}button.game-card:hover .card-cta>span{transform:translate(3px)}.coming-cta{color:#888d84;font-size:13px}.home-footer{color:#687269;border-top:1px solid #dedfd8;margin-top:auto;padding:20px 0;font-size:13px}.game-header{gap:14px}.back-home{color:#47554b;font:inherit;cursor:pointer;background:0 0;border:1px solid #b5bdb3;border-radius:6px;order:3;margin-left:auto;padding:9px 12px}.back-home:hover{background:#e4eddf}.back-home:focus-visible{outline-offset:2px;outline:2px solid #3268a8}@media (width<=700px){.game-cards{grid-template-columns:1fr;max-width:560px}.game-card{min-height:205px}.home-intro{padding-top:48px}}@media (width<=440px){.home-page{padding:0 18px}.home-intro{padding:38px 0 24px}.game-cards{gap:14px;padding-bottom:40px}.game-card{grid-template-columns:minmax(95px,.75fr) 1.25fr;gap:16px;min-height:180px;padding:16px}.card-copy h2{font-size:19px}.card-copy>span:not(.card-kicker):not(.card-cta){font-size:12px}.crossword-art,.wordsearch-art{aspect-ratio:1}.game-header{flex-wrap:wrap;gap:8px}.game-header h1{font-size:17px}.back-home{padding:8px 10px}}.game-card[href]{cursor:pointer;text-decoration:none;transition:border-color .18s,transform .18s,box-shadow .18s}.game-card[href]:hover{border-color:#9baa9b;transform:translateY(-2px);box-shadow:0 8px 24px #1d33210d}.game-card[href]:focus-visible{outline-offset:3px;outline:3px solid #3268a8}.back-home{align-items:center;text-decoration:none;display:inline-flex}.coming-page{max-width:640px;min-height:45vh;padding:72px 0}.coming-page .eyebrow{margin-bottom:14px}.coming-page h2{margin-bottom:12px}.coming-page p:not(.eyebrow){color:#687269;line-height:1.7}.coming-page .new-game-button{margin-top:12px;text-decoration:none;display:inline-flex}
