*{box-sizing:border-box}body{margin:0;background:#f7f3ea;color:#12383e;font:16px/1.6 system-ui,sans-serif}header{max-width:1300px;margin:auto;padding:24px;display:flex;justify-content:space-between;gap:20px;align-items:center}a{color:inherit}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #df641f;outline-offset:4px}.brand{font-weight:800;text-decoration:none;font-size:22px}.brand small{font-size:14px;color:#b34910}main{max-width:1300px;margin:auto;padding:24px}.intro{max-width:750px;padding:20px 0 44px}.eyebrow{font-size:14px;letter-spacing:.12em;font-weight:700;color:#9c461c}h1{font:clamp(38px,6vw,70px)/1.08 Georgia,serif;margin:18px 0}.intro>p:last-child{max-width:600px;font-size:18px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}article{background:white;border:1px solid #d7e0d9;border-radius:16px;overflow:hidden}.poster{display:block;border:0;padding:0;width:100%;background:#eee}.poster img{width:100%;height:auto;display:block}.caption{padding:22px}.caption>span{color:#ad4b1c;font-size:14px}.caption h2{font-size:20px;line-height:1.3;margin:6px 0}.caption p{margin:10px 0}.summary{font-size:16px;color:#456166}aside{margin:36px 0;font-size:14px;max-width:850px}dialog{border:0;border-radius:12px;padding:0;background:#102e35;color:white;width:min(1000px,96vw);max-height:96vh;overflow:auto}dialog::backdrop{background:#04181be8}.toolbar,dialog nav{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;background:#102e35}.toolbar{position:sticky;top:0}.toolbar h2{font-size:16px;margin:0}dialog button{border:1px solid #87a6a7;color:white;background:transparent;border-radius:8px;padding:8px 12px}dialog button:disabled{opacity:.35;cursor:default}#fullPoster{display:block;width:100%;height:auto}dialog nav{position:sticky;bottom:0}body:has(dialog[open]){overflow:hidden}@media(max-width:950px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.grid{grid-template-columns:1fr}header,main{padding:18px}.brand{font-size:17px}header>a:first-child{font-size:14px}.intro{padding-top:10px}.toolbar h2{font-size:14px}dialog{width:98vw;max-height:98dvh}.caption{padding:20px}}
