:root{--paper:#faf7f2;--ink:#292527;--accent:#c8102e;--muted:#6b6265;--line:#ded5cf;--focus:#c8102e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--focus);outline-offset:5px}a:hover{opacity:.78}.wrap{max-width:1220px;margin:auto;padding:0 48px}header{height:110px;justify-content:space-between;border-bottom:1px solid var(--line)}.brand,header{display:flex;align-items:center}.brand{font-size:25px;font-weight:750;letter-spacing:-1px;gap:12px}.mark{position:relative;width:35px;height:32px;display:inline-block}.mark:after,.mark:before{content:"";position:absolute;width:23px;height:23px;border-radius:50%;background:var(--ink);top:0;left:0}.mark:after{background:var(--paper);border:1.5px solid var(--ink);top:9px;left:12px}nav{display:flex;align-items:center;gap:32px;font-size:14px}nav .join{border:1px solid var(--ink);padding:12px 19px;border-radius:6px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:25px;align-items:center;padding:76px 0 70px}h1{font-size:clamp(46px,6vw,76px);color:var(--ink);line-height:1.1;letter-spacing:-2px;font-weight:600;margin:25px 0}h1 em{font-family:Georgia,serif;font-weight:400;color:#a90d28}.intro{max-width:370px;font-size:17px;line-height:1.7;color:var(--muted);margin:0 0 28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--accent);color:white;border-radius:6px;padding:17px 23px;font-size:14px;font-weight:600}.art{position:relative;aspect-ratio:1/1;display:grid;place-items:center;background:#f1e7e2;border-radius:50%;margin:12px}.board{width:84%;transform:rotate(-9deg);filter:drop-shadow(8px 20px 13px #39252b26)}.details{display:grid;grid-template-columns:1fr 1.35fr 1fr;padding:29px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:30px}.detail{padding-right:20px}.detail+.detail{border-left:1px solid var(--line);padding-left:30px}.label{font-size:11px;text-transform:uppercase;letter-spacing:1.7px;color:var(--muted);margin:0 0 12px}.detail h2{font-size:18px;letter-spacing:-.3px;margin:0 0 9px;font-weight:600}.detail p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}footer a{text-decoration:underline;text-underline-offset:3px}.detail a{font-size:12px;display:inline-block;margin-top:11px;text-decoration:underline;text-underline-offset:4px}.lower{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding:67px 0}.lower h2{font-size:32px;letter-spacing:-1.2px;font-weight:500;margin:16px 0}.lower p{font-size:15px;line-height:1.75;color:var(--muted);max-width:450px}.links{display:flex;gap:26px;margin-top:22px}.links a{font-size:13px;border-bottom:1px solid #b9aaa6;padding-bottom:7px}.join-panel{background:var(--accent);color:#fff;border-radius:12px;padding:30px 34px}.join-panel h2{margin:0 0 12px}.join-panel p{color:#fff3f0;margin:0 0 23px}.join-panel .button{justify-content:center;text-align:center;background:#fffdfc;color:var(--accent);width:100%}.join-panel .email{display:block;text-align:center;font-size:12px;margin-top:17px;color:#fff3f0}.join-panel .student{font-size:12px;margin-top:18px;margin-bottom:0}.student a{text-decoration:underline;text-underline-offset:3px}footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:26px 0 32px;font-size:11px;color:var(--muted)}@media (max-width:800px){.wrap{padding:0 25px}header{height:85px}nav{gap:18px}nav a:first-child{display:none}.hero{padding:46px 0;gap:10px}.intro{font-size:15px}.art{margin:0}.lower{gap:32px}.details{gap:18px}.detail+.detail{padding-left:18px}}@media (max-width:600px){.brand{font-size:22px}nav{font-size:12px;gap:15px}nav .join{padding:10px 12px}.hero{grid-template-columns:1fr;padding-bottom:30px}.hero-copy{padding-top:8px}h1{margin:22px 0}.art,.intro{max-width:340px}.art{width:90%;margin:25px auto 16px}.details{grid-template-columns:1fr;gap:21px;padding:27px 0}.detail+.detail{border-left:0;border-top:1px solid var(--line);padding:21px 0 0}.label{margin-bottom:8px}.lower{grid-template-columns:1fr;gap:32px;padding:36px 0}.join-panel{padding:28px}footer{gap:20px;line-height:1.6;align-items:flex-start}footer span{max-width:220px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.play-area{min-width:0}.game-controls{text-align:center;margin:18px 0 0}.game-controls p{margin:8px 0;font-size:14px}#game-status{min-height:34px;font-weight:600}#captures,.game-controls .game-hint{font-size:12px;color:var(--muted)}.game-buttons{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.game-buttons button{font:inherit;font-size:12px;color:var(--ink);background:transparent;border:1px solid #b9aaa6;border-radius:5px;padding:9px 14px;cursor:pointer}.game-buttons button:hover{background:#f1e7e2}.game-buttons button:disabled{opacity:.4;cursor:default}.game-buttons button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.point{cursor:pointer;touch-action:manipulation;outline:none}.point[data-occupied=false]:hover{fill:#c8102e18}.point[data-occupied=false]:focus-visible{outline:none;stroke:#c8102e;stroke-width:3;fill:#c8102e18}.art{margin-bottom:0}.skip-link{position:absolute;left:16px;top:-60px;background:var(--paper);padding:12px;z-index:10}.skip-link:focus{top:12px}