:root{
  --ink:#17130f;
  --paper:#efe7d7;
  --paper-deep:#dfd2bc;
  --orange:#e96d2f;
  --orange-soft:#f6a262;
  --moss:#536a49;
  --gold:#d6a93d;
  --muted:#756b5e;
  --line:rgba(23,19,15,.18);
  --shadow:0 22px 70px rgba(40,25,13,.13);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{
  margin:0;color:var(--ink);background:
    radial-gradient(circle at 80% 6%,rgba(233,109,47,.15),transparent 26rem),
    linear-gradient(180deg,#f5eee2 0,var(--paper) 46%,#e7ddcb 100%);
  font-family:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit}
.skip{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--ink);color:white;padding:.8rem 1rem}
.skip:focus{top:1rem}
.grain{position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.25;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E")}

.site-head,main,footer{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.site-head{height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:.72rem;text-decoration:none;text-transform:uppercase;font-weight:800;letter-spacing:.12em;font-size:.78rem}
.brand-mark{width:31px;height:31px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;transform:rotate(-12deg)}
.brand-mark i{width:13px;height:17px;border-radius:70% 40% 65% 45%;background:var(--orange);display:block;transform:rotate(27deg)}
nav{display:flex;gap:2rem}
nav a{text-decoration:none;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}
nav a:hover,nav a:focus-visible{color:var(--ink)}
.game-menu{position:relative}
.game-menu summary{cursor:pointer;list-style:none;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;padding:.8rem 0}
.game-menu summary::-webkit-details-marker{display:none}
.game-menu summary:after{content:" +";color:var(--orange)}
.game-menu[open] summary:after{content:" −"}
.game-menu>div{position:absolute;z-index:40;right:0;top:100%;width:220px;padding:.6rem;background:#f7f0e4;border:1px solid var(--line);box-shadow:var(--shadow);display:grid}
.game-menu>div a{padding:.85rem .8rem;border-bottom:1px solid var(--line)}
.game-menu>div a:last-child{border-bottom:0}

.hero{min-height:650px;position:relative;display:flex;flex-direction:column;justify-content:center;padding:5rem 0 6rem;overflow:hidden}
.eyebrow{margin:0 0 1.15rem;color:var(--orange);font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;font-weight:800}
.hero h1,.section h2,.game-card h3{
  font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em;
}
.hero h1{margin:0;font-size:clamp(4.7rem,11.6vw,10rem);line-height:.79;max-width:950px}
.hero h1 em{color:var(--orange);font-weight:400}
.hero-copy{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.55;max-width:610px;margin:3rem 0 2rem;color:#433a31}
.hero-cta{display:flex;width:max-content;align-items:center;gap:2rem;padding:1rem 1.2rem 1rem 0;text-decoration:none;border-bottom:1px solid var(--ink);font-size:.75rem;text-transform:uppercase;letter-spacing:.13em}
.hero-cta b{font-size:1.1rem;color:var(--orange);transition:transform .2s}
.hero-cta:hover b{transform:translate(4px,-4px)}
.orbit{position:absolute;width:350px;height:350px;border:1px solid rgba(23,19,15,.12);border-radius:50%;right:1%;top:13%;animation:turn 28s linear infinite}
.orbit:before,.orbit:after{content:"";position:absolute;border:1px solid rgba(23,19,15,.1);border-radius:50%}
.orbit:before{inset:45px}.orbit:after{inset:100px}
.orbit span{position:absolute;width:18px;height:18px;background:var(--orange);border-radius:60% 40%;left:50%;top:-9px}
.orbit span:nth-child(2){background:var(--gold);left:auto;right:19px;top:75%}.orbit span:nth-child(3){background:var(--moss);top:auto;bottom:24px;left:14%}
@keyframes turn{to{transform:rotate(360deg)}}

.section{padding:7rem 0;border-top:1px solid var(--line)}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:2.5rem}
.section h2{font-size:clamp(2.8rem,6vw,5.2rem);margin:0;line-height:.95}
.today{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;margin-bottom:.55rem}
.daily-grid{display:grid;grid-template-columns:1.35fr .825fr .825fr;gap:16px}
.game-card{position:relative;min-height:570px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;text-decoration:none;border:1px solid var(--line);background:rgba(255,255,255,.26);box-shadow:var(--shadow);transition:transform .24s ease,box-shadow .24s ease}
.game-card:hover{transform:translateY(-6px);box-shadow:0 28px 85px rgba(40,25,13,.2)}
.card-art{position:absolute;inset:0 0 44%;overflow:hidden;background:#d7d2bd}
.card-copy{position:relative;padding:2rem 1.8rem 1.7rem;background:#f7f0e4;min-height:45%;border-top:1px solid var(--line)}
.game-card .tag,.status{font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;color:var(--orange);font-weight:800}
.game-card h3{font-size:clamp(2.1rem,3.5vw,3.8rem);line-height:.95;margin:.7rem 0 1rem}
.game-card p{color:#574d42;line-height:1.55;font-size:.78rem;margin:0 0 1.7rem}
.play{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:1rem;text-transform:uppercase;letter-spacing:.1em;font-size:.67rem;font-weight:800}
.play b{color:var(--orange)}

.topiary .card-art{background:linear-gradient(#b9c9b0 0 58%,#c9b898 58%)}
.tree{position:absolute;width:170px;height:230px;background:#566c48;border-radius:48% 52% 42% 58%;left:50%;bottom:-35px;transform:translateX(-50%);box-shadow:-62px 43px 0 -27px #687c55,68px 56px 0 -35px #44593c}
.tree:after{content:"";position:absolute;width:20px;height:130px;background:#6b4d32;left:75px;bottom:-60px;clip-path:polygon(34% 0,66% 0,100% 100%,0 100%)}
.tree:before{content:"";position:absolute;width:260px;height:1px;background:rgba(23,19,15,.3);left:-45px;bottom:4px;box-shadow:0 -49px 0 rgba(23,19,15,.08),0 -98px 0 rgba(23,19,15,.08)}
.hexcraft .card-art{display:flex;align-items:center;justify-content:center;gap:8px;background:radial-gradient(circle at 50% 42%,#65495f,#211a2b 67%)}
.rune{display:grid;place-items:center;width:68px;height:92px;border:1px solid #d6a93d;color:#f1d47b;font:2.7rem Georgia;background:rgba(15,11,20,.55);box-shadow:0 0 25px rgba(214,169,61,.17);transform:translateY(10px) rotate(-8deg)}
.rune:nth-child(2){transform:translateY(-8px) rotate(4deg);color:#91bce0}.rune:nth-child(3){transform:translateY(14px) rotate(10deg);color:#df8c63}
.bloom .card-art{background:linear-gradient(160deg,#d5ad68,#8c9b73 48%,#354638)}
.sun{position:absolute;width:130px;height:130px;border-radius:50%;background:#f0c56f;right:15%;top:14%;box-shadow:0 0 0 22px rgba(240,197,111,.11)}
.stem{position:absolute;width:7px;height:200px;background:#283e2a;left:43%;bottom:-20px;transform:rotate(8deg)}
.stem:before,.stem:after{content:"";position:absolute;width:84px;height:42px;background:#516d4d;border-radius:100% 0;left:-78px;top:55px;transform:rotate(15deg)}
.stem:after{left:4px;top:98px;transform:scaleX(-1) rotate(20deg);background:#6f845e}


.manifesto{margin:0 0 8rem;padding:5rem clamp(1.5rem,5vw,5rem);background:var(--ink);color:var(--paper);display:flex;align-items:end;justify-content:space-between;gap:3rem}
.manifesto p{font:clamp(2rem,5vw,4.5rem)/1.02 Georgia;margin:0;max-width:850px;letter-spacing:-.035em}
.manifesto span{flex:0 0 auto;color:var(--orange-soft);font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;writing-mode:vertical-rl}
footer{border-top:1px solid var(--line);min-height:180px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:2rem;color:var(--muted);font-size:.68rem}
.footer-brand{color:var(--ink)}.fine{text-align:right}

:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
@media(max-width:900px){
  .daily-grid{grid-template-columns:1fr 1fr}.game-card.feature{grid-column:1/-1}.game-card.feature{min-height:630px}
  .orbit{opacity:.45;right:-130px}
}
@media(max-width:620px){
  .site-head,main,footer{width:min(100% - 24px,1180px)}.site-head{height:74px}
  .brand{font-size:.66rem;letter-spacing:.09em}.brand-mark{width:28px;height:28px}
  .game-menu summary{font-size:.62rem}.game-menu>div{width:min(240px,calc(100vw - 24px))}
  .hero{min-height:600px;padding:4rem 0}.hero h1{font-size:clamp(4rem,22vw,6.5rem)}.hero-copy{margin-top:2.2rem}
  .orbit{width:260px;height:260px;top:6%;right:-150px}
  .section{padding:5rem 0}.section-head{align-items:start;gap:1rem}.today{display:none}
  .daily-grid{grid-template-columns:1fr}.game-card.feature{grid-column:auto}.game-card{min-height:540px}
  .manifesto{margin-bottom:5rem;align-items:start}.manifesto span{display:none}
  footer{grid-template-columns:1fr;align-content:center;gap:1rem;padding:2rem 0}.fine{text-align:left}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit{animation:none}.game-card{transition:none}}
