:root{--paper:#f6f1e8;--sheet:#fffaf4;--ink:#241c16;--muted:#5c5148;--line:#e6d8c8;--accent:#9a341f;--accent-soft:#f8e6dc;--shadow:0 18px 40px rgba(70,42,24,0.06);color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 8% -10%,rgba(196,73,44,.14),transparent 26rem),var(--paper);color:var(--ink);font-family:var(--font-sans),"Hiragino Sans","Yu Gothic",sans-serif;font-size:17px;line-height:1.75;font-weight:400}.brand strong,.wash strong,h1,h2,h3{font-family:var(--font-display),var(--font-sans),"Hiragino Sans",sans-serif}a{color:inherit}a:hover{color:var(--accent)}.button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.skip{position:absolute;left:1rem;top:-4rem;background:var(--ink);color:white;padding:.4rem .8rem;z-index:5}.skip:focus{top:.5rem;color:white}.wrap{width:min(1120px,calc(100% - 2.4rem));margin:0 auto}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:3;background:rgba(246,241,232,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid transparent}.site-footer .wrap,.site-header .wrap{display:flex;gap:1rem 1.75rem;align-items:center;justify-content:space-between;padding:1rem 0;flex-wrap:wrap}.brand{text-decoration:none}.brand strong{font-size:1.35rem;font-weight:700;letter-spacing:.14em}.nav{display:flex;gap:.35rem 1.1rem;flex-wrap:wrap}.nav a{text-decoration:none;font-size:.95rem}.hero{padding:4.2rem 0 1.2rem}.eyebrow{margin:0 0 .8rem;color:var(--accent);letter-spacing:.16em;font-size:.82rem}.hero h1{margin:0;font-weight:700;font-size:clamp(3.4rem,9vw,6.4rem);line-height:1.02;letter-spacing:.12em}.concept{max-width:28rem;margin:1.1rem 0 0;font-size:1.2rem;line-height:1.7}.filters{display:flex;flex-wrap:wrap;gap:.7rem;margin:2rem 0 0;padding:0;list-style:none}.filters a{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;padding:.45rem .95rem .45rem 1.05rem;text-decoration:none;background:var(--sheet);border:1px solid var(--line);border-radius:999px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.filters a:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.filters .count{min-width:1.5rem;text-align:center;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.82rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:.05rem .4rem}.section{padding:2.6rem 0 .4rem}.section-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:1.15rem}.page-head h1,.section h2{font-weight:700;font-size:clamp(1.7rem,3vw,2.15rem);letter-spacing:.04em;margin:0;line-height:1.3}.page-head p,.section-head p{color:var(--muted);margin:.35rem 0 0;max-width:38rem}.section-head a{color:var(--muted);font-size:.92rem;text-decoration:none}.section-head a:hover{color:var(--accent)}.section-copy{display:grid;grid-gap:.15rem;gap:.15rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.25rem;gap:1.25rem}.card,.panel{background:var(--sheet);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.card,.card-link{display:flex;flex-direction:column;min-width:0}.card-link{color:inherit;text-decoration:none;flex:1 1}.card-visual{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:22px 22px 0 0;background:var(--accent-soft)}.card-visual img{height:100%}.card-visual img,.stage .wash,.stage img{width:100%;object-fit:cover;display:block}.stage .wash,.stage img{aspect-ratio:16/9;max-height:520px}.card:hover{transform:translateY(-3px)}.card:hover .card-visual img{transform:scale(1.035)}.card,.card-visual img,.filters a{transition:transform .18s ease,border-color .18s ease,color .18s ease}.badges{position:absolute;left:.75rem;top:.75rem;display:flex;flex-wrap:wrap;gap:.35rem;margin:0;max-width:calc(100% - 1.5rem)}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.12rem .62rem;background:var(--sheet);color:var(--ink);font-size:.8rem;line-height:1.5;letter-spacing:.02em;box-shadow:0 1px 4px rgba(36,28,22,.12)}.badge-solid{background:var(--accent);color:white}.card-body{padding:1rem 1.1rem .35rem;display:flex;flex-direction:column;gap:.28rem;min-width:0}.card .meta,.event .meta,.kicker{color:var(--muted);font-size:.82rem;letter-spacing:.04em;margin:0}.card h3,.event h3{margin:0;font-size:1.16rem;line-height:1.45;font-weight:700}.dates{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink)}.hint{margin:.35rem 0 0;font-size:.92rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.credit,.hint{color:var(--muted)}.credit{margin:0;padding:.35rem 1.1rem 1rem;font-size:.78rem;line-height:1.55;min-width:0;overflow-wrap:anywhere}.credit a{color:var(--accent)}.wash{width:100%;height:100%;min-height:7.5rem;display:flex;flex-direction:column;justify-content:flex-end;gap:.15rem;padding:1rem 1.05rem;background:radial-gradient(120% 90% at 100% 0,color-mix(in srgb,var(--wash-to) 62%,white),transparent 58%),linear-gradient(165deg,var(--wash-from),color-mix(in srgb,var(--wash-to) 24%,var(--wash-from)));color:var(--wash-ink)}.wash span{font-size:.75rem;letter-spacing:.16em}.wash strong{font-size:clamp(1.15rem,2vw,1.55rem);font-weight:700;line-height:1.35;letter-spacing:.04em}.areas{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:.7rem;gap:.7rem}.areas a{text-decoration:none;min-height:5.4rem;padding:.9rem 1rem;border-radius:18px;background:var(--sheet);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.areas a:hover{border-color:var(--accent);color:var(--accent)}.areas strong{font-size:1.05rem}.areas em{font-style:normal;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.event-list{display:grid;grid-gap:.8rem;gap:.8rem}.event{display:grid;grid-template-columns:7.2rem 1fr auto;grid-gap:.9rem;gap:.9rem;align-items:center;text-decoration:none;background:var(--sheet);border:1px solid var(--line);border-radius:18px;overflow:hidden}.event,.event .wash{min-height:6.2rem}.event .wash strong{font-size:.95rem}.event>div{padding:.85rem 0}.event>.badge{margin-right:1rem}.page-head{padding:3rem 0 1.2rem}.page-head p{color:var(--muted)}.detail{padding-bottom:3rem}.stage{margin:0;border-radius:28px;overflow:hidden;min-height:240px;background:var(--sheet);border:1px solid var(--line)}.credit-line,.stage figcaption{padding:.7rem .2rem 0;color:var(--muted);font-size:.85rem}.credit-line a,.stage figcaption a{color:var(--accent)}.detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(16rem,.7fr);grid-gap:1.4rem;gap:1.4rem;align-items:start;margin-top:1.6rem}.detail h1{font-weight:700;font-size:clamp(2rem,4vw,3.1rem);line-height:1.25;letter-spacing:.03em;margin:.25rem 0 .7rem}.story-badges{display:flex;flex-wrap:wrap;gap:.4rem;margin:.8rem 0 0}.commentary{margin:1.6rem 0;padding:1.2rem 1.25rem .4rem;border-radius:22px;background:var(--accent-soft)}.commentary h2{margin:0 0 .8rem;font-size:1rem;letter-spacing:.12em;color:var(--accent)}.commentary-list{list-style:none;margin:0;padding:0}.commentary-list li{margin:0 0 1rem}.commentary-list span{display:block;color:var(--accent);font-size:.78rem;letter-spacing:.14em}.commentary-list p{margin:.15rem 0 0;font-size:1.12rem;line-height:1.7}dl.access,dl.facts{display:grid;grid-template-columns:6.5rem 1fr;grid-gap:.45rem .8rem;gap:.45rem .8rem;margin:1.2rem 0}dl.access dt,dl.facts dt{color:var(--muted)}dl.access dd,dl.facts dd{margin:0}.desk{padding:1.15rem 1.2rem 1.25rem;position:-webkit-sticky;position:sticky;top:5rem}.desk h2,.desk h3{font-weight:700;margin:0 0 .45rem}.desk-partner{margin-top:1rem;padding-top:.8rem;border-top:1px dashed var(--line)}.button{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;border-radius:999px;padding:.45rem 1.05rem;background:var(--accent);color:white;border:1px solid var(--accent)}.button:hover{color:white;background:#7d2a18}.empty{padding:1rem 1.1rem;color:var(--muted)}.prose{padding:.4rem 1.3rem 1.2rem}.prose h2{font-size:1.25rem;margin:1.4rem 0 .3rem}.site-footer{border-top:1px solid var(--line);margin-top:4rem;color:var(--muted);font-size:.9rem}.site-footer p{margin:.2rem 0}.site-footer p:first-child{color:var(--ink);letter-spacing:.14em}@media (max-width:800px){.detail-grid,.event{grid-template-columns:1fr}.event>.badge{margin:0 0 .9rem .95rem;justify-self:start}.event .wash{min-height:5.2rem}.desk{position:static}.hero{padding-top:2.4rem}.wrap{width:min(1120px,calc(100% - 1.5rem))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,.card-visual img,.filters a{transition:none}.card:hover,.card:hover .card-visual img,.filters a:hover{transform:none}}