/* Scoped to Design: untouched hero, original artwork proportions. */
body[data-world="diseno"] .design-exhibition{padding:clamp(36px,5vw,90px) clamp(12px,3.8vw,72px) 90px;max-width:none}
.design-feed-intro{padding:0 0 clamp(32px,5vw,70px);display:grid;grid-template-columns:1fr auto;gap:22px;align-items:end}
.design-feed-intro .design-feed-kicker{grid-column:1/-1;font:12px/1.5 monospace;letter-spacing:.09em;color:var(--accent)}
.design-feed-intro h2{font-size:clamp(29px,4.6vw,76px);line-height:1.04;letter-spacing:-.025em;margin:0;color:inherit}
.design-feed-intro>p:last-child{font-size:16px;font-weight:300;max-width:220px;margin:0}
.design-feed{display:flex;flex-direction:column;gap:12px}
.design-feed-row{display:flex;gap:12px;align-items:flex-start}
.design-piece{position:relative;display:block;flex:var(--ratio) 1 0%;min-width:0;overflow:hidden;background:transparent;isolation:isolate;color:white;text-decoration:none}
.design-piece>img{display:block;width:100%;height:auto;max-width:none;margin:0;filter:none;transform:none}
.design-piece-info{position:absolute;inset:0;background:rgba(32,32,32,.8);display:flex;flex-direction:column;justify-content:end;padding:clamp(20px,4vw,64px);opacity:0;transition:opacity .28s ease;color:#fff}
.design-piece-info small{font:11px/1.5 monospace;text-transform:uppercase;letter-spacing:.07em;margin-bottom:auto;color:#eee}
.design-piece-info strong{font-size:clamp(22px,3vw,48px);line-height:1.05;font-weight:800;letter-spacing:-.015em;max-width:90%}
.design-piece-info>span{font:13px/1.5 monospace;margin-top:14px;color:#ddd}
.design-piece-info b{position:absolute;bottom:24px;right:24px;font:36px/1 sans-serif;font-weight:300;color:var(--accent)}
.design-piece:hover .design-piece-info,.design-piece:focus-visible .design-piece-info{opacity:1}
.design-piece:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.design-viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:64px 70px 45px;border:0;background:#181818;color:#fff;overflow:hidden}
.design-viewer::backdrop{background:#181818}
.design-viewer[open]{display:flex;align-items:center;justify-content:center}
.design-viewer figure{margin:0;display:flex;flex-direction:column;width:100%;height:100%;align-items:center;justify-content:center;gap:16px}
.design-viewer figure img{width:auto;height:auto;max-width:100%;max-height:calc(100% - 55px);object-fit:contain}
.design-viewer figcaption{font:12px/1.6 monospace;text-align:center;color:#ddd;max-width:90%}
.design-viewer button{position:absolute;border:1px solid #555;border-radius:50%;background:#202020;color:#fff;font:24px/1 sans-serif;width:44px;height:44px;padding:0;cursor:pointer;z-index:2}
.design-viewer .design-close{top:14px;right:18px}.design-prev{left:12px;top:48%}.design-next{right:12px;top:48%}
body:has(.design-viewer[open]){overflow:hidden}
@media(max-width:600px){.design-feed-intro{display:block}.design-feed-intro h2{margin:22px 0}.design-feed-intro>p:last-child{max-width:none;font-size:14px}.design-feed-row{flex-direction:column}.design-piece{flex:none;width:100%}.design-feed,.design-feed-row{gap:9px}.design-viewer{padding:65px 12px 70px}.design-viewer .design-prev,.design-viewer .design-next{top:auto;bottom:12px}.design-piece-info strong{font-size:28px}}
@media(prefers-reduced-motion:reduce){.design-piece-info{transition:none}}
.design-piece-info strong{font-family:var(--headline)}
.design-feed-intro h2{font-size:clamp(27px,3.8vw,58px);color:var(--accent)}
.design-feed-intro>p:last-child{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.5}
html[data-theme=light] .design-feed-intro h2,html[data-theme=light] .design-feed-kicker{color:#a94917}

/* A fractional flex-grow below one leaves unused space on a single portrait row. */
@media(min-width:601px){.design-feed-row>.design-piece:only-child{flex:1 1 0%;width:100%}}
