@charset "UTF-8";
:root{--red:#d8272f;--ink:#20211f;--paper:#f8f7f3;--muted:#706f68;--line:#deded6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{text-decoration:none}a:hover{color:var(--red)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:3px solid var(--red);outline-offset:4px}button{border:0}button,a{touch-action:manipulation}[hidden]{display:none!important}.header{max-width:1440px;margin:auto;height:100px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:30px;font-weight:900;letter-spacing:-1.6px;display:flex;align-items:center;gap:9px}.brand-dot{color:var(--red);margin-left:-9px}.cross{display:inline-grid;place-items:center;background:var(--red);color:white;width:35px;height:35px;font-size:29px;line-height:1;letter-spacing:0}.header nav{display:flex;gap:32px;align-items:center;font-weight:700}.nav-note{font-size:10px;letter-spacing:1.5px;color:var(--muted);border-left:1px solid var(--line);padding-left:30px}.header nav span:not(.nav-note){color:var(--red)}main{max-width:1440px;margin:auto}.hero{padding:68px 6% 61px;display:grid;grid-template-columns:1.1fr 1fr;gap:20px;align-items:center;overflow:hidden}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;display:flex;align-items:center;gap:9px}.red-dot{width:7px;height:7px;border-radius:50%;background:var(--red)}h1{font-size:clamp(48px,5.6vw,82px);line-height:1.04;letter-spacing:-4px;margin:25px 0}h1 em{font-style:normal;color:var(--red)}.hero-copy>p{font-size:16px;line-height:1.7;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 21px;background:var(--red);color:#fff;border-radius:5px;font-weight:700;font-size:13px;min-height:48px}.button:hover{background:#b91e26;color:white}.text-link{font-size:12px;font-weight:700;background:none;padding:0;text-decoration:underline;text-underline-offset:5px}.hero-footnote{font-size:10px;color:var(--muted);margin-top:29px}.hero-art{position:relative;transform:rotate(-2deg);padding-bottom:32px}.hero-art img{width:100%;border-radius:48% 48% 8px 8px;display:block}.stamp{position:absolute;right:10px;top:6px;color:var(--red);font-size:15px;line-height:1.25;font-weight:900;letter-spacing:1px;transform:rotate(12deg);border:3px solid var(--red);padding:14px 18px;border-radius:50%;background:#f8f7f3e6}.art-caption{display:block;font-size:10px;text-align:center;margin-top:13px;font-family:Georgia,serif;font-style:italic}.ticker{padding:16px 6%;display:flex;justify-content:space-between;align-items:center;gap:18px;background:var(--red);color:#fff;font-size:10px;font-weight:800;letter-spacing:1.6px;overflow:hidden;white-space:nowrap}.ticker b{font-size:21px}.gallery-section{padding:62px 6% 55px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:20px}h2{font-size:clamp(26px,2.6vw,38px);line-height:1.15;letter-spacing:-1.6px;margin:16px 0 0}h2>span{color:var(--red)}.count{font-size:10px;color:var(--muted);white-space:nowrap}.gallery-tools{display:flex;justify-content:space-between;margin:30px 0 26px;gap:20px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid var(--line);padding:9px 17px;border-radius:30px;font-size:12px;background:transparent}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.search{display:flex;align-items:center;border-bottom:1px solid #aaa;padding:0 5px;gap:8px}.search span{font-size:27px}.search input{width:175px;border:0;background:transparent;font-size:12px;outline-offset:0}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}.card{min-width:0}.card-button{display:block;width:100%;padding:0;text-align:left;background:none;color:var(--ink)}.card-image{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#eeece5;aspect-ratio:1.28}.card-image img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .3s}.card-button:hover img{transform:scale(1.025)}.image-number{position:absolute;top:12px;left:12px;background:#fffffff0;border-radius:3px;padding:3px 7px;font-size:10px;font-weight:700}.card-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;letter-spacing:1px;margin-top:14px;text-transform:uppercase}.card h3{font-size:17px;line-height:1.3;letter-spacing:-.4px;margin:7px 0}.card-arrow{color:var(--red);font-size:20px}.gallery-note{text-align:center;font-size:11px;color:var(--muted);margin:35px 0 0}.game-section{margin:15px 6% 65px;background:#eae9e1;border-radius:10px;padding:35px;display:grid;grid-template-columns:.9fr 1.2fr;gap:35px}.game-copy .eyebrow{font-size:8px;letter-spacing:1.4px}.game-copy h2{font-size:34px}.game-copy>p{color:var(--muted);font-size:13px}.game-rules{padding-left:18px;font-size:11px;color:var(--muted);line-height:1.9}.game-status{display:flex;gap:30px;font-size:11px;margin:24px 0 16px}.game-status strong{font-size:22px;display:block}.game-message{min-height:22px}.game-board{align-self:center;position:relative;background:#f3eae0;border:1px solid #d0c7b7;border-radius:6px;overflow:hidden}#game{display:block;width:100%;touch-action:manipulation}#game.running{cursor:crosshair}.game-overlay{position:absolute;inset:0 0 33px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:17px;background:#f3eae0a6;backdrop-filter:blur(2px);pointer-events:none;padding:20px}.game-overlay strong{font-size:37px;line-height:1.08;letter-spacing:-1.5px}.game-overlay>span:last-child{font-size:11px;max-width:240px}.game-badge{font-size:8px;font-weight:800;letter-spacing:1.3px;border:1px solid var(--red);border-radius:25px;padding:6px 10px;color:var(--red)}.board-caption{display:flex;justify-content:space-between;padding:11px 14px;background:#fff9;font-size:8px;letter-spacing:1px}.target:focus-visible{outline:none;filter:drop-shadow(0 0 5px #d8272f)}.manifesto{text-align:center;padding:30px 20px 75px}.manifesto .cross{width:28px;height:28px;font-size:23px}.manifesto h2{font-size:32px}.manifesto p{font-size:12px;color:var(--muted);max-width:450px;margin:20px auto 0}footer{border-top:1px solid var(--line);max-width:1440px;margin:auto;padding:30px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .brand{font-size:23px}footer>span{font-size:10px;color:var(--muted)}footer>div{display:flex;gap:20px;font-size:11px}.footer-button{padding:0;background:none;color:inherit;font-size:11px}.cookie-banner{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:10;max-width:1100px;width:calc(100% - 36px);background:#fff;box-shadow:0 5px 45px #0002;border:1px solid var(--line);padding:22px 25px;border-radius:8px;display:flex;align-items:center;gap:30px}.cookie-banner strong{font-size:15px}.cookie-banner p{font-size:11px;color:var(--muted);max-width:620px;margin:7px 0 0}.cookie-banner a{text-decoration:underline}.cookie-actions{display:flex;gap:10px;flex-shrink:0}.cookie-actions .button{font-size:11px;padding:12px 14px;gap:0}.secondary{background:#eeeee9;color:var(--ink)}.secondary:hover{background:#deded6;color:var(--ink)}dialog{border:0;border-radius:10px;padding:0;width:min(1160px,95vw);max-height:92vh;overflow:auto;background:var(--paper)}dialog[open]{display:grid;grid-template-columns:1.25fr 1fr}dialog::backdrop{background:#171915b8;backdrop-filter:blur(3px)}.close{position:absolute;right:12px;top:12px;z-index:2;border-radius:50%;height:36px;width:36px;background:var(--ink);color:white;font-size:27px;line-height:1}.detail-image{background:#e9e7df;display:flex;flex-direction:column;justify-content:center;padding:25px;min-width:0}.detail-image img{max-width:100%;max-height:70vh;object-fit:contain}.detail-nav{display:flex;justify-content:center;align-items:center;gap:30px;margin-top:20px;font-size:12px}.detail-nav button{background:white;border-radius:50%;width:40px;height:40px}.detail-copy{padding:45px 32px}.detail-copy h2{font-size:28px;margin-top:12px}.detail-copy h3{font-size:22px;letter-spacing:-.5px;margin-top:30px}.small{font-size:11px;color:var(--muted)}form label{display:block;font-size:12px;font-weight:700;margin:14px 0}input,textarea{display:block;width:100%;border:1px solid #cbc9bf;background:#fff;border-radius:4px;padding:10px;margin-top:6px}textarea{resize:vertical}.checkbox{display:flex;gap:9px;font-size:10px;font-weight:400}.checkbox input{width:16px;height:16px;flex-shrink:0;margin-top:2px}.checkbox a{text-decoration:underline}.honeypot{position:absolute;left:-10000px;opacity:0}.comment{border-top:1px solid var(--line);padding:12px 0;font-size:12px}.comment p{white-space:pre-wrap;overflow-wrap:anywhere}.comment time{color:var(--muted);font-size:10px;margin-left:8px}#form-message{font-size:12px}#form-message.error{color:#b41a22}.skip{position:absolute;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:0}.legal{max-width:850px;padding:60px 25px;margin:auto}.legal h1{font-size:50px;letter-spacing:-2px}.legal h2{font-size:24px;letter-spacing:-.5px;margin-top:34px}.legal p,.legal li{color:#55574f}.legal a{text-decoration:underline}.legal-note{padding:18px;background:#fff0dc;border-left:3px solid var(--red)}
@media(min-width:1600px){.hero{padding-top:80px;padding-bottom:80px}}@media(max-width:900px){.nav-note{display:none}.hero-actions{flex-wrap:wrap}h1{letter-spacing:-2.5px}.section-title{align-items:start;flex-direction:column;gap:10px}.game-section{grid-template-columns:1fr;gap:20px}.game-board{width:100%}.game-copy h2 br{display:none}.cookie-banner{align-items:start;flex-direction:column;gap:15px}.cookie-actions{width:100%}.cookie-actions .button{flex:1}footer{flex-wrap:wrap}.hero-art .stamp{font-size:10px;padding:10px}.gallery{gap:22px 16px}dialog[open]{grid-template-columns:1fr}.detail-image img{max-height:55vh}}
@media(max-width:600px){.header{height:76px;padding:0 5%}.brand{font-size:25px}.cross{width:29px;height:29px;font-size:24px}.header nav{font-size:11px;gap:15px}.hero{padding:40px 5% 32px;grid-template-columns:1fr;gap:25px}.hero h1{font-size:57px;margin:20px 0}.hero-copy>p{font-size:14px}.hero-art{max-width:430px;margin:auto;width:100%}.hero-art .stamp{right:20px;top:5px}.hero-footnote{margin-top:20px}.ticker{justify-content:start;padding:12px 5%;font-size:9px;gap:25px}.gallery-section{padding:40px 5%}h2{font-size:29px}.gallery-tools{flex-direction:column;gap:16px}.search{width:100%;padding:0}.search input{width:100%}.filters button{font-size:11px;padding:8px 12px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.card h3{font-size:14px}.card-meta{font-size:8px;letter-spacing:.3px}.image-number{top:7px;left:7px}.game-section{margin:5px 5% 40px;padding:22px 16px}.game-copy h2{font-size:29px}.game-overlay strong{font-size:29px}.game-overlay{gap:10px}.game-badge{font-size:7px}.board-caption{font-size:6px;padding:9px 8px}.manifesto{padding-bottom:40px}.manifesto h2{font-size:27px}footer{padding:25px 5%;gap:17px}footer>div{flex-wrap:wrap;gap:15px}.cookie-banner{padding:16px;bottom:10px;width:calc(100% - 20px)}.detail-copy{padding:30px 20px}.detail-image{padding:20px 10px}.legal{padding-top:30px}.legal h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:normal!important;border:0!important;clip-path:inset(50%)!important}
:root{--muted:#63635c}
@media(max-width:380px){.header .brand{font-size:22px;gap:6px}.header .cross{width:25px;height:25px;font-size:21px}.header nav{font-size:10px;gap:12px}.cookie-actions{flex-direction:column}.cookie-actions .button{justify-content:center}}
.gallery-intro{max-width:800px;color:var(--muted);font-size:14px;line-height:1.7;margin:20px 0}.count{font-size:12px}.eyebrow{font-size:11px}.card-meta{font-size:11px;letter-spacing:.6px}.small{font-size:12px}.hero-footnote,.gallery-note,.art-caption{font-size:12px}.cookie-banner p{font-size:13px}.cookie-actions .button{font-size:12px}.image-page{padding:50px 6%;max-width:1200px;margin:auto}.image-page>nav{font-size:13px;margin-bottom:25px}.image-page h1{font-size:clamp(32px,4vw,58px);letter-spacing:-2px;margin:20px 0 35px}.image-page-layout figure{margin:0;background:#eeece5;padding:22px;border-radius:8px}.image-page-layout img{width:100%;height:auto;max-height:72vh;object-fit:contain;display:block}.image-page-layout figcaption{font-size:12px;color:var(--muted);text-align:center;margin-top:16px}.image-comments{max-width:720px;margin:50px auto 0}.image-comments h2{margin-bottom:22px}.image-comments time{margin-left:12px}.image-comments form{margin-top:28px}form label{font-size:14px}.checkbox{font-size:12px}.detail-nav button,.close{min-width:44px;min-height:44px}.footer-button,footer>div{font-size:12px}.notice{background:white;border-left:3px solid var(--red);padding:14px}.card-image .image-number,.card-arrow{user-select:none}#game-message{font-size:13px}.game-copy .eyebrow{font-size:10px}.game-rules{font-size:13px}.board-caption{font-size:10px;letter-spacing:.4px}.game-overlay>.game-badge{font-size:9px}.game-overlay>span:last-child{font-size:12px}@media(max-width:600px){.card-meta{font-size:10px}.image-page{padding:30px 5%}.image-page-layout figure{padding:10px}.hero-art .stamp{font-size:10px}.cookie-banner p{font-size:12px}.board-caption{font-size:8px;flex-wrap:wrap;gap:5px}.game-overlay strong{font-size:23px}.game-overlay .game-badge{font-size:7px}.game-overlay>span:last-child{font-size:10px}.game-overlay{gap:8px;padding:12px}.hero h1{font-size:clamp(43px,14.5vw,57px)}}
.rating-widget{margin:24px 0;padding:18px;border-top:1px solid var(--line)}.rating-stars{display:flex;gap:8px}.rating-stars button{font-size:32px;min-width:44px;min-height:44px;background:#ecebe4;color:#53544d;border-radius:6px}.rating-stars button.selected{background:var(--red);color:#fff}.rating-status{font-size:14px}.rating-widget .text-link{min-height:44px;padding:8px 0}.image-page figure img{max-width:100%;height:auto}
.detail-copy{min-width:0;overflow-wrap:anywhere}.rating-widget{padding:18px 0}.detail-image img{width:100%;height:auto}@media(max-width:900px){dialog[open]{grid-template-columns:minmax(0,1fr)}}
