*{box-sizing:border-box}
:root{--paper:#f7f5ed;--ink:#182b24;--rule:#c3c8bd;--muted:#465c51;--accent:#d8ed90;color-scheme:light}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI","Malgun Gothic",system-ui,sans-serif;line-height:1.65;word-break:keep-all;overflow-wrap:anywhere}
a{color:inherit;text-underline-offset:4px}
a:focus-visible,summary:focus-visible{outline:3px solid #c77a20;outline-offset:4px}
.shell{width:min(1380px,calc(100% - clamp(32px,8vw,128px)));margin-inline:auto}
.top,.foot{display:flex;align-items:center;justify-content:space-between;gap:16px}
.top{padding:18px 0;border-bottom:1px solid var(--rule)}.top nav,.foot div{display:flex;align-items:center;gap:22px;font-size:14px}
.top nav>a,.foot a,.wordmark{text-decoration:none}.top nav>a:hover,.foot a:hover{text-decoration:underline}
.wordmark{display:inline-flex;align-items:center;gap:10px;font-weight:750;letter-spacing:-.045em}
.logomark{width:25px;height:25px;border-radius:50%;background:var(--ink);position:relative;display:inline-block;flex:none}
.logomark:before,.logomark:after{content:"";position:absolute;background:var(--paper);top:6px;width:4px;height:13px;border-radius:3px;transform:rotate(16deg)}
.logomark:before{left:7px}.logomark:after{left:14px}.lang{border:1px solid #7d897c;border-radius:100px;padding:2px 13px}
.mast{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:clamp(32px,4vw,62px) 0 30px}
.mast h1{font:normal clamp(48px,7.8vw,118px)/.98 Georgia,"Times New Roman",serif;letter-spacing:-.073em;margin:0}.mast h1 em{font-weight:normal;color:#4b6553}
.mast p{margin:0 3px 5px 0;font-size:clamp(14px,1.45vw,21px);font-weight:530;line-height:1.45}
.exhibits{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.panel{isolation:isolate;position:relative;overflow:hidden;border-radius:20px;padding:clamp(26px,4vw,62px);display:flex;align-items:center;min-height:340px}
.panel-copy{position:relative;z-index:2;max-width:390px}
.genre{font-size:13px;font-weight:650;letter-spacing:.07em}.genre:before{content:"";display:inline-block;width:20px;height:1px;vertical-align:middle;margin-right:8px;background:currentColor}
.panel h1,.panel h2{margin:14px 0;line-height:1.1;font-size:clamp(25px,3vw,46px);letter-spacing:-.065em}
.panel p{max-width:32ch;line-height:1.65;margin:10px 0;font-size:16px}
.availability{margin-top:20px;font-size:13px;font-weight:640}
.action{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:12px}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;padding:9px 17px;border-radius:100px;background:var(--ink);color:white;font-size:14px;text-decoration:none;font-weight:650}
.pill:hover{filter:brightness(1.2)}.policy-link{font-size:14px}
.dust-and-deal{grid-column:1/-1;min-height:clamp(370px,34vw,490px);color:#faf1da;background:#18231f}
.dust-and-deal:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101e1def 6%,#162220eb 32%,#18221c70 64%,#18221c20),url("/images/dust-world.webp") center 51%/cover}
.dust-and-deal .genre{color:#ead6a4}.dust-and-deal h1,.dust-and-deal h2{display:flex;align-items:baseline;gap:.12em;font:normal clamp(46px,5.8vw,90px)/.98 Georgia,serif;letter-spacing:-.075em;white-space:nowrap}
.dust-and-deal h1 small,.dust-and-deal h2 small{font-style:italic;font-size:.45em;letter-spacing:-.06em}
.dust-and-deal p{color:#e9e6d9}.dust-and-deal .availability{color:#d1ddc6}
.dust-and-deal .pill{background:#e4e9c7;color:#203128}
.fan{position:absolute;inset:0 0 0 46%;display:flex;align-items:center;justify-content:center;pointer-events:none}
.portrait{position:absolute;width:clamp(116px,15vw,225px);height:76%;max-height:340px;object-fit:cover;border:3px solid #e0d0a1;border-radius:12px;box-shadow:0 16px 27px #07100dc9}
.p0{transform:translate(-66%,4%) rotate(-14deg);object-position:center 28%}.p1{transform:translate(0,-4%) rotate(-1deg);object-position:center 30%;z-index:2}.p2{transform:translate(67%,5%) rotate(13deg);object-position:center 30%}
.sudoku,.speedometer{min-height:350px;align-items:flex-end;padding:30px}.sudoku{background:#e4e9d1;color:#213d31}.speedometer{background:#173c40;color:#eff7e5}
.sudoku .panel-copy,.speedometer .panel-copy{max-width:75%}.sudoku .panel-copy p,.speedometer .panel-copy p{max-width:24ch}.sudoku h2,.speedometer h2{margin-top:30px}
.speedometer .pill{background:#e6f1ca;color:#1b3732}.speedometer .genre,.speedometer .availability{color:#d2e9c7}
.puzzle-art{position:absolute;right:-22px;top:-24px;width:43%;aspect-ratio:1;transform:rotate(12deg);opacity:.87}
.board{display:grid;grid-template-columns:repeat(6,1fr);height:100%;background:#f8fae8;padding:8px;border-radius:9px;border:1px solid #75957c;box-shadow:0 12px 20px #38563822}
.board b{border:1px solid #aebca6;display:grid;place-items:center;font:normal clamp(12px,1.8vw,28px)/1 Georgia,serif}
.board b:nth-child(8n+1){background:#cedda5}.ride-art{position:absolute;right:-13px;top:10px;width:44%;color:#cbef84;transform:rotate(-8deg)}
.ride-art svg{width:100%}.ride-art text{fill:currentColor;font:italic 700 74px monospace}.ride-art .unit{font:14px monospace}
.foot{border-top:1px solid var(--rule);padding:24px 0 38px;margin-top:46px}.back{margin:22px 0}.back a{font-size:14px}.screens{margin:36px auto;max-width:850px}.screens img{width:min(100%,370px);height:auto;border-radius:15px}
.detail-page .panel:not(.dust-and-deal){min-height:360px}.detail-page .puzzle-art,.detail-page .ride-art{width:min(39%,380px)}
.policy article,.reading{width:min(100%,790px);margin:44px auto 60px}.policy h1,.reading h1{font-size:clamp(30px,4vw,48px);line-height:1.18;letter-spacing:-.055em}.policy h2{font-size:23px;margin:2em 0 .4em}.policy h3{margin:1.7em 0 .4em}.policy p{margin:1em 0}.summary,details{padding:14px 20px;border-radius:14px;background:#e9eddc}.summary ul,details ul{margin:.3em 0;padding-left:20px}.policy details{background:transparent;border:1px solid var(--rule);margin-top:20px}.policy summary{cursor:pointer}.meta,.muted{color:var(--muted)}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}td,th{border:1px solid var(--rule);padding:8px;text-align:left;vertical-align:top}th{background:#e8eddf}.directory{padding:0;list-style:none}.directory a{display:flex;justify-content:space-between;gap:12px;padding:18px 4px;border-bottom:1px solid var(--rule);text-decoration:none;font-size:20px}.directory a:hover{text-decoration:underline}
@media(max-width:850px){.exhibits{gap:13px}.sudoku,.speedometer{padding:22px;min-height:328px}.panel-copy{max-width:45%}.mast{align-items:center}.mast p{font-size:14px}.puzzle-art,.ride-art{width:39%}.fan{inset-inline-start:45%}}
@media(max-width:640px){.top{gap:8px}.wordmark{font-size:14px;gap:6px}.top nav{gap:11px;font-size:12px}.logomark{width:22px;height:22px}.logomark:before,.logomark:after{top:5px;height:12px}.logomark:after{left:13px}.lang{padding:2px 9px}.mast{display:block;padding:27px 0 21px}.mast h1{font-size:clamp(43px,10.6vw,68px)}.mast p{margin:12px 0 0}.mast p br{display:none}.exhibits{grid-template-columns:1fr}.panel{border-radius:16px}.dust-and-deal{align-items:flex-end;min-height:465px;padding:24px}.dust-and-deal:before{background-image:linear-gradient(0deg,#121e1cf8 3%,#142020f2 43%,#15221b33 85%),url("/images/dust-world.webp")}.dust-and-deal .panel-copy{max-width:100%}.fan{inset:0 0 auto;height:205px}.portrait{width:96px;height:156px;border-width:2px}.dust-and-deal h2,.dust-and-deal h1{font-size:51px}.dust-and-deal p{max-width:32ch}.sudoku,.speedometer{min-height:290px;padding:22px}.panel p{font-size:15px}.sudoku .panel-copy,.speedometer .panel-copy{max-width:82%}.sudoku h2,.speedometer h2{margin-top:25px}.puzzle-art,.ride-art{width:35%}.action{gap:10px}.foot{align-items:flex-start;flex-direction:column}.foot div{font-size:13px;gap:14px;flex-wrap:wrap}.policy article,.reading{margin:28px auto}.detail-page .panel:not(.dust-and-deal){min-height:310px}.detail-page .puzzle-art,.detail-page .ride-art{width:35%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(min-width:641px){.exhibits .speedometer .panel-copy{max-width:59%}.exhibits .sudoku .panel-copy{max-width:62%}} @media(max-width:640px){.exhibits .speedometer h2{max-width:10em}.exhibits .ride-art{top:-8px}}
