:root { --game-ink:#0b0b0c; --game-panel:#131315; --game-panel-2:#181719; --game-cream:#f1e8db; --game-muted:#a89f98; --game-copper:#c77a49; --game-copper-light:#e39a67; --game-wine:#6d2038; --game-line:rgba(255,255,255,.12); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body.free-games-page { margin:0; background:var(--game-ink); color:var(--game-cream); font-family:Inter,system-ui,sans-serif; }
.free-games-page a { color:inherit; text-decoration:none; }
.free-games-header { position:sticky; z-index:20; top:0; min-height:84px; display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:1rem clamp(1.2rem,5vw,6rem); border-bottom:1px solid var(--game-line); background:rgba(9,9,10,.94); backdrop-filter:blur(18px); }
.free-games-brand { display:flex; align-items:center; gap:.8rem; }
.free-games-mark { width:44px; height:52px; display:grid; place-items:center; border:1px solid var(--game-copper); color:var(--game-copper-light); font:600 2rem/1 'Cormorant Garamond',serif; }
.free-games-brand strong { display:block; color:#ead4bf; font:600 1.15rem/1.1 'Cormorant Garamond',serif; letter-spacing:.13em; }
.free-games-brand small { color:#77706b; font-size:.62rem; }
.free-games-header nav { display:flex; align-items:center; gap:clamp(1rem,2.3vw,2.4rem); color:#bbb3ac; font-size:.78rem; font-weight:600; }
.free-games-header nav a { position:relative; padding:.65rem 0; }
.free-games-header nav a::after { content:""; position:absolute; right:100%; bottom:.2rem; left:0; height:1px; background:var(--game-copper); transition:right .18s ease; }
.free-games-header nav a:hover::after,.free-games-header nav a.active::after { right:0; }
.free-games-hero { min-height:620px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.55fr); align-items:center; gap:clamp(3rem,9vw,10rem); padding:clamp(5rem,10vw,9rem) clamp(1.5rem,7vw,8rem); background:radial-gradient(circle at 15% 25%,rgba(109,32,56,.36),transparent 32rem),linear-gradient(115deg,#101012,#09090a); }
.free-games-eyebrow { margin:0 0 1.1rem; color:var(--game-copper-light); font-size:.69rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.free-games-hero h1,.free-games-section h2,.free-games-cta h2 { margin:0; font:600 clamp(3.2rem,7vw,7.3rem)/.82 'Cormorant Garamond',serif; letter-spacing:-.04em; }
.free-games-hero h1 em,.free-games-section h2 em { color:var(--game-copper-light); font-weight:500; }
.free-games-hero > div > p:not(.free-games-eyebrow) { max-width:620px; margin:2rem 0; color:var(--game-muted); font-size:clamp(.95rem,1.3vw,1.1rem); line-height:1.8; }
.free-games-actions { display:flex; flex-wrap:wrap; align-items:center; gap:1.4rem; }
.free-games-text-link { color:#ded5cc!important; font-size:.82rem; font-weight:700; }
.free-games-text-link span { color:var(--game-copper-light); margin-left:.35rem; }
.free-games-case-note { position:relative; display:grid; grid-template-columns:auto 1fr; gap:.2rem 1rem; padding:2rem; border:1px solid var(--game-line); background:rgba(255,255,255,.025); box-shadow:0 28px 70px rgba(0,0,0,.35); }
.free-games-case-note::before { content:""; position:absolute; top:-1px; right:2rem; width:72px; height:3px; background:var(--game-copper); }
.free-games-case-note > span { grid-column:1/-1; margin-bottom:1rem; color:var(--game-copper-light); font-size:.64rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.free-games-case-note strong { color:#fff; font:600 3.4rem/.9 'Cormorant Garamond',serif; }
.free-games-case-note small { align-self:center; color:#c8beb5; }
.free-games-case-note p { grid-column:1/-1; margin:1.5rem 0 0; padding-top:1.2rem; border-top:1px solid var(--game-line); color:#817a75; font-size:.72rem; line-height:1.6; }
.free-games-section { padding:clamp(5rem,9vw,9rem) clamp(1.2rem,6vw,7rem); }
.free-games-section-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.42fr); align-items:end; gap:3rem; max-width:1500px; margin:0 auto 3.5rem; }
.free-games-section h2 { font-size:clamp(2.8rem,5.7vw,5.7rem); }
.free-games-section-heading > p { margin:0 0 .35rem; color:var(--game-muted); line-height:1.75; }
.crossword-shell { max-width:1500px; margin:auto; border:1px solid var(--game-line); background:var(--game-panel); box-shadow:0 30px 80px rgba(0,0,0,.28); }
.crossword-toolbar { display:flex; overflow:auto; border-bottom:1px solid var(--game-line); }
.crossword-toolbar button { flex:1 0 210px; min-height:76px; padding:.85rem 1.2rem; border:0; border-right:1px solid var(--game-line); background:#0f0f11; color:#a9a19a; text-align:left; cursor:pointer; }
.crossword-toolbar button span { display:block; margin-bottom:.35rem; color:#6f6965; font-size:.58rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.crossword-toolbar button.active { background:linear-gradient(120deg,rgba(109,32,56,.5),rgba(35,23,27,.72)); color:#fff; box-shadow:inset 0 -2px var(--game-copper); }
.crossword-toolbar button.active span { color:var(--game-copper-light); }
.crossword-stage { display:grid; grid-template-columns:minmax(360px,1.1fr) minmax(310px,.7fr); min-height:650px; }
.crossword-board-wrap { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1.2rem; padding:clamp(1.3rem,4vw,4rem); border-right:1px solid var(--game-line); background:radial-gradient(circle at 50% 40%,rgba(109,32,56,.17),transparent 24rem); }
.crossword-meta { width:min(100%,560px); min-height:2.25rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.2rem 0; }
.crossword-meta span { color:var(--game-copper-light); font-size:.62rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.crossword-meta strong { font:600 1.45rem/1.15 'Cormorant Garamond',serif; text-align:right; }
.crossword-grid { --grid-size:9; width:min(100%,560px); aspect-ratio:1; display:grid; grid-template-columns:repeat(var(--grid-size),minmax(0,1fr)); grid-template-rows:repeat(var(--grid-size),minmax(0,1fr)); grid-auto-rows:minmax(0,1fr); gap:0; overflow:hidden; box-sizing:border-box; border:4px solid #ede4d8; background:#27252a; box-shadow:0 18px 50px rgba(0,0,0,.35); }
.crossword-cell { position:relative; width:100%; height:100%; min-width:0; min-height:0; margin:0; padding:0; overflow:hidden; box-sizing:border-box; border:1px solid #17161a; background:#f4ecdf; }
.crossword-cell.block { background:#242228; }
.crossword-cell input { display:block; width:100%; height:100%; min-width:0; min-height:0; margin:0; padding:0; box-sizing:border-box; border:0; outline:0; background:transparent; color:#171317; font:700 clamp(.82rem,2.1vw,1.55rem)/1 Inter,sans-serif; text-align:center; text-transform:uppercase; caret-color:var(--game-wine); }
.crossword-cell input:focus,.crossword-cell.active input { background:#f2c99f; box-shadow:inset 0 0 0 2px var(--game-wine); }
.crossword-cell.related input { background:#f8dcc0; }
.crossword-cell.correct input { background:#d8e4ce; color:#284020; }
.crossword-cell.wrong input { background:#f0c8c2; color:#772a30; }
.crossword-cell b { position:absolute; z-index:2; top:2px; left:3px; color:#3c3235; font-size:clamp(.38rem,.85vw,.58rem); pointer-events:none; }
.crossword-status { min-height:1.35rem; margin:0; color:#918984; font-size:.72rem; }
.crossword-status.success { color:#a8c88f; }
.crossword-clues { padding:clamp(1.5rem,4vw,3.2rem); background:var(--game-panel-2); }
.crossword-clues > div:first-child { display:flex; justify-content:space-between; gap:1rem; margin-bottom:2rem; padding-bottom:1.2rem; border-bottom:1px solid var(--game-line); }
.crossword-clues > div:first-child span { color:var(--game-copper-light); font-size:.66rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.crossword-clues > div:first-child small { color:#7e7772; }
.crossword-clues section + section { margin-top:2rem; }
.crossword-clues h3 { margin:0 0 .8rem; font:600 1.4rem 'Cormorant Garamond',serif; }
.crossword-clues ol { display:grid; gap:.35rem; margin:0; padding:0; list-style:none; }
.crossword-clues li button { width:100%; display:grid; grid-template-columns:1.7rem 1fr; gap:.3rem; padding:.55rem .65rem; border:0; border-radius:4px; background:transparent; color:#aaa29b; text-align:left; cursor:pointer; line-height:1.45; }
.crossword-clues li button:hover,.crossword-clues li button.active { background:rgba(199,122,73,.11); color:#f3eae1; }
.crossword-clues li b { color:var(--game-copper-light); }
.crossword-controls { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:2.3rem; padding-top:1.2rem; border-top:1px solid var(--game-line); }
.crossword-controls button { padding:.65rem .75rem; border:1px solid #3b373a; border-radius:4px; background:#121214; color:#bfb6af; font-size:.68rem; font-weight:700; cursor:pointer; }
.crossword-controls button:first-child { border-color:var(--game-copper); background:var(--game-wine); color:white; }
.mystery-section { background:#ece2d5; color:#211b1d; }
.mystery-section .free-games-eyebrow { color:#9d4f2d; }
.mystery-section .free-games-section-heading > p { color:#6f6560; }
.mini-mystery-grid { max-width:1500px; display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:auto; }
.mini-mystery { position:relative; display:flex; flex-direction:column; min-height:510px; padding:2rem; border:1px solid rgba(40,28,31,.16); background:#f7f0e7; box-shadow:0 18px 45px rgba(71,47,43,.08); }
.mini-mystery-number { position:absolute; top:1.4rem; right:1.6rem; color:#c8b9a9; font:600 3.8rem/.8 'Cormorant Garamond',serif; }
.mini-mystery > span { color:#9d4f2d; font-size:.61rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.mini-mystery h3 { max-width:78%; margin:2rem 0 1rem; font:600 2.2rem/.95 'Cormorant Garamond',serif; }
.mini-mystery > p:not(.mini-mystery-result) { color:#635956; line-height:1.75; }
.mini-mystery details { margin:1.1rem 0; padding:.9rem 0; border-top:1px solid rgba(40,28,31,.13); border-bottom:1px solid rgba(40,28,31,.13); }
.mini-mystery summary { color:#713047; font-size:.72rem; font-weight:700; cursor:pointer; }
.mini-mystery details p { margin:.8rem 0 0; color:#6f6460; font-size:.78rem; line-height:1.55; }
.mini-mystery-choices { display:flex; flex-wrap:wrap; gap:.45rem; margin-top:auto; }
.mini-mystery-choices button { padding:.65rem .8rem; border:1px solid #c8b9ab; border-radius:4px; background:transparent; color:#3e3234; font-weight:700; cursor:pointer; }
.mini-mystery-choices button:hover { border-color:#9d4f2d; }
.mini-mystery-choices button.correct { border-color:#587047; background:#dce8d3; color:#334a27; }
.mini-mystery-choices button.wrong { border-color:#9c4a50; background:#efdad7; color:#7b2c34; }
.mini-mystery-result { min-height:2.2rem; margin:.8rem 0 0; color:#6f6560; font-size:.72rem; line-height:1.45; }
.mini-mystery-grid { grid-template-columns:minmax(250px,.42fr) minmax(0,1fr); gap:0; border:1px solid rgba(40,28,31,.16); background:#f7f0e7; box-shadow:0 24px 60px rgba(71,47,43,.1); }
.mystery-selector { padding:2rem 1.2rem; border-right:1px solid rgba(40,28,31,.14); background:#211b1d; color:#f4eade; }
.mystery-selector > span { color:#d08a5d; font-size:.61rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.mystery-selector > h3 { margin:.7rem 0 .45rem; font:600 2rem/1 'Cormorant Garamond',serif; }
.mystery-selector > p { margin:0 0 1.4rem; color:#9e9590; font-size:.75rem; line-height:1.55; }
.mystery-selector nav { display:grid; gap:.45rem; }
.mystery-selector nav button { width:100%; display:grid; grid-template-columns:2rem minmax(0,1fr) 1rem; align-items:center; gap:.65rem; padding:.85rem .75rem; border:1px solid rgba(255,255,255,.1); border-radius:5px; background:#171416; color:#c3b8b0; text-align:left; cursor:pointer; }
.mystery-selector nav button b { color:#d08a5d; font:600 1rem 'Cormorant Garamond',serif; }
.mystery-selector nav button span { min-width:0; font-size:.76rem; font-weight:700; }
.mystery-selector nav button small { display:block; margin-bottom:.2rem; color:#756e6a; font-size:.52rem; letter-spacing:.08em; text-transform:uppercase; }
.mystery-selector nav button i { color:#6e6662; font-style:normal; }
.mystery-selector nav button.active { border-color:#a7603d; background:rgba(109,32,56,.42); color:#fff; }
.mystery-stage { min-width:0; }
.mystery-stage .mini-mystery { min-height:620px; border:0; box-shadow:none; }
.mystery-stage .mini-mystery[hidden] { display:none; }
.associated-games { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.55rem; margin-top:1.2rem; padding-top:1rem; border-top:1px solid rgba(40,28,31,.13); }
.associated-games > div { grid-column:1/-1; display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-bottom:.2rem; }
.associated-games > div span { color:#713047; font-size:.67rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.associated-games > div small { color:#8d817a; font-size:.62rem; }
.associated-games > button { display:grid; grid-template-columns:1.6rem 1fr; gap:.45rem; min-height:70px; padding:.7rem; border:1px solid #cfc0b2; border-radius:5px; background:#f1e7dc; color:#3d3133; text-align:left; cursor:pointer; }
.associated-games > button:hover,.associated-games > button:focus-visible { border-color:#9d4f2d; background:#fff8ef; }
.associated-games > button b { color:#9d4f2d; font-size:.62rem; }
.associated-games > button span { font-size:.7rem; font-weight:700; }
.associated-games > button small { display:block; margin-top:.2rem; color:#82766f; font-size:.56rem; font-weight:500; line-height:1.35; }
.free-games-cta { padding:clamp(5rem,9vw,9rem) 1.3rem; background:linear-gradient(130deg,#2e101b,#0d0d0f 68%); text-align:center; }
.free-games-cta h2 { font-size:clamp(3.2rem,7vw,7rem); }
.free-games-cta > p:not(.free-games-eyebrow) { max-width:600px; margin:1.4rem auto 2rem; color:var(--game-muted); line-height:1.7; }
.free-games-cta > div { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:1.2rem; }
.free-games-cta > div > a:last-child { color:#cfc5bd; font-size:.78rem; font-weight:700; }
.free-games-footer { display:flex; justify-content:space-between; gap:1rem; padding:2rem clamp(1.2rem,6vw,7rem); border-top:1px solid var(--game-line); color:#756f6b; font-size:.68rem; }
.free-games-footer span { color:#c88b66; font-family:'Cormorant Garamond',serif; letter-spacing:.13em; }
@media (max-width:900px) { .free-games-hero,.free-games-section-heading,.crossword-stage { grid-template-columns:1fr; } .free-games-hero { min-height:auto; } .crossword-board-wrap { border-right:0; border-bottom:1px solid var(--game-line); } .mini-mystery-grid { grid-template-columns:1fr; } .mystery-selector { border-right:0; border-bottom:1px solid rgba(40,28,31,.14); } .mystery-selector nav { grid-template-columns:repeat(3,minmax(180px,1fr)); overflow-x:auto; } .mini-mystery { min-height:auto; } }
@media (max-width:680px) { .free-games-header { align-items:flex-start; } .free-games-header nav { width:100%; overflow-x:auto; justify-content:flex-start; } .free-games-header { flex-wrap:wrap; } .free-games-header nav a { flex:0 0 auto; } .free-games-hero { padding-top:4rem; } .free-games-hero h1 { font-size:3.5rem; } .crossword-stage { min-height:0; } .crossword-board-wrap { padding:1.2rem .45rem; } .crossword-grid { border-width:2px; } .crossword-cell b { top:1px; left:1px; font-size:.34rem; } .crossword-clues { padding:1.4rem 1rem; } .associated-games { grid-template-columns:1fr; } .mystery-selector nav { grid-template-columns:repeat(3,minmax(210px,1fr)); } .free-games-footer { flex-direction:column; text-align:center; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
.lethal-games-discovery{max-width:1500px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;margin:0 auto 1rem;padding:2rem;border:1px solid rgba(40,28,31,.17);background:#211b1d;color:#f3e9df}.lethal-games-discovery>div>span{color:#d18b60;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.lethal-games-discovery h3{margin:.6rem 0;font:600 2.5rem/1 'Cormorant Garamond',serif}.lethal-games-discovery p{max-width:760px;color:#b5aba4;line-height:1.65}.lethal-games-discovery small{color:#d08a5d}.lethal-games-discovery>div:last-child{display:flex;flex-direction:column;gap:.5rem}.lethal-games-discovery a{padding:.7rem .9rem;border:1px solid rgba(255,255,255,.18);border-radius:4px;color:#eee4da;font-size:.7rem;font-weight:700}.lethal-games-discovery a:hover{border-color:#c77a49}@media(max-width:760px){.lethal-games-discovery{grid-template-columns:1fr}.lethal-games-discovery>div:last-child{align-items:flex-start}}
