/* v0.4.1 — independent columns keep the portrait clear at every breakpoint. */
.hero-exhibit{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:20px;align-items:center;min-height:0;padding:22px 0}
.hero-exhibit .portrait-panel{position:static;width:100%;min-height:0;padding:20px 8px;margin:0;align-self:center}
.hero-exhibit .portrait-panel img{width:100%;height:auto;max-height:none;object-fit:contain}
.hero-exhibit .portrait-panel figcaption{font:12px/1.5 var(--mono);letter-spacing:.03em;padding:14px 8px 0}
.hero-memory{display:flex;flex-direction:column;gap:20px;min-width:0}
.hero-exhibit .window{position:static;width:100%;margin:0;overflow:hidden}
.hero-exhibit .window-top{font-size:12px;line-height:1.4;gap:6px;padding:10px}
.hero-exhibit .image-button{max-height:none;aspect-ratio:2.1;overflow:hidden}
.hero-exhibit .image-button img{width:100%;height:100%;object-fit:cover;object-position:top}
.hero-exhibit .window figcaption{padding:12px;font:12px/1.5 var(--mono);background:white;border-top:1px solid var(--line)}
.hero-exhibit .old-logo{position:static;display:flex;margin:0;padding:15px;gap:12px;box-shadow:4px 4px var(--ink);text-decoration:none;border:0;color:var(--ink);text-align:left}
.hero-exhibit .old-logo img{width:80px;flex:0 0 80px}
.hero-exhibit .old-logo span{font:13px/1.5 var(--mono)}
.hero-relics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}
.hero-relics button{background:#fff;border:1px solid #c8d3ce;border-radius:6px;min-width:0;padding:12px 7px;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:10px;font:13px/1.35 var(--mono)}
.hero-relics button:hover{border-color:var(--red);background:#fff9f0}
.hero-relics img{height:50px;max-width:75px;width:auto;object-fit:contain;image-rendering:pixelated}
.hero-relics-note{font:12px/1.5 var(--mono);background:#fff;padding:5px 0;margin:0;color:var(--muted)}
.hero-relics-note button{padding:0;border:0;background:none;text-decoration:underline;font:inherit;color:inherit}
.animation-fallback{display:none;font:700 24px/50px var(--mono)}
.animations-hidden .hero-relics img[data-animated]{display:none}
.animations-hidden .animation-fallback{display:block}
.comm-card.forum-card{background:#eaf1ff;border-color:#bac9e2}
.communication-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1150px){.hero{grid-template-columns:.95fr 1.05fr}.hero-exhibit{gap:14px}.hero-exhibit .portrait-panel{padding:14px 5px}.hero-exhibit .old-logo{padding:12px;flex-wrap:wrap}.hero-exhibit .window-top{font-size:11px}}
@media(min-width:621px) and (max-width:900px){.hero{grid-template-columns:1fr;gap:24px}.hero-copy{max-width:680px}.hero h1{font-size:clamp(64px,9vw,88px)}.hero-exhibit{width:100%;max-width:640px;margin:auto;grid-template-columns:minmax(0,.65fr) minmax(0,1fr)}}
@media(max-width:620px){.hero{grid-template-columns:1fr}.hero-exhibit{max-width:480px;width:100%;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:14px;min-height:0;padding:0}.hero-exhibit .portrait-panel figcaption{padding:10px 2px 0;font-size:12px}.hero-exhibit .old-logo{padding:10px;gap:8px}.hero-exhibit .old-logo span{font-size:12px}.hero-memory{gap:14px}.hero-relics{gap:8px}.hero-relics button{font-size:12px;padding:10px 5px}.hero-exhibit .window figcaption{font-size:12px;padding:10px}.communication-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html:not(.motion-ready) .hero-relics img[data-animated]{display:none}html:not(.motion-ready) .animation-fallback{display:block}}
