/* Artist portfolio, isolated from Aura, Canyon and the admin shell. */
.whare-portfolio { margin: 0; background: #faf9f6; color: #24211f; font-family: system-ui, sans-serif; }
.whare-portfolio * { box-sizing: border-box; }
.whare-content, .whare-footer { width: min(90vw, 1100px); margin-inline: auto; padding: 1.5rem 0; }
.whare-footer { margin-top: 3rem; text-align: right; font-size: .8rem; }
.whare-footer p { margin: 0 0 .5rem; }
.whare-maker-mark { display: block; width: 110px; max-width: 100%; height: auto; margin-left: auto; transform: scaleX(-1); }
.whare-portfolio a { color: inherit; }
.whare-portfolio :focus-visible { outline: 3px solid #8c2426; outline-offset: 4px; }
.whare-portfolio h1 { font-weight: 500; }
.whare-mural-links { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1.5rem 0 2rem; }
.whare-mural-links [aria-current] { color: #8c2426; font-weight: 650; }
.whare-hero, .whare-supporting img { display: block; max-width: 100%; height: auto; object-fit: contain; }
.whare-hero { max-height: 75svh; }
.whare-metadata { display: flex; flex-wrap: wrap; gap: 1.5rem; }
.whare-metadata dt { color: #625b55; font-size: .8rem; }
.whare-metadata dd { margin: .3rem 0 0; }
.whare-story { max-width: 70ch; line-height: 1.7; overflow-wrap: anywhere; }
.whare-supporting { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 1.5rem; align-items: start; margin-top: 2rem; }
.whare-empty, .whare-footer { color: #625b55; }

.whare-content { overflow-wrap: anywhere; }
.whare-introduction { margin: 1rem 0 2rem; }
.whare-introduction h1 { margin: .5rem 0; font-size: clamp(2rem, 4vw, 3.8rem); letter-spacing: -.04em; }
.whare-eyebrow { color: #8c2426; text-transform: uppercase; font-size: .7rem; letter-spacing: .14em; }
.whare-selector-strip { display: flex; gap: 1rem; overflow-x: auto; padding: .5rem .25rem 1rem; margin-bottom: 2rem; }
.whare-selector { flex: 0 0 145px; padding: 0 0 .6rem; border: 0; border-bottom: 2px solid transparent; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.whare-selector img, .whare-thumbnail-empty { width: 145px; height: 108px; object-fit: cover; display: block; margin-bottom: .65rem; }
.whare-thumbnail-empty { background: #e9e5df; padding: 2rem; color: #625b55; }
.whare-selector > span:last-child { display: block; font-size: .85rem; line-height: 1.4; }
.whare-selector[aria-pressed="true"] { border-bottom-color: #8c2426; }
.whare-panel[hidden] { display: none; }
.whare-panel { margin: 0; }
.whare-panel h2 { font-size: clamp(1.7rem, 3vw, 2.8rem); letter-spacing: -.025em; font-weight: 500; }
.whare-hero { margin: 0 auto 2rem; background: #f0ede7; }
@media (max-width: 600px) {
  .whare-content, .whare-footer { width: 92vw; padding-block: 1rem; }
  .whare-selector { flex-basis: 120px; min-height: 44px; }
  .whare-selector img, .whare-thumbnail-empty { width: 120px; height: 90px; }
  .whare-selector-strip { gap: .75rem; margin-bottom: 1rem; }
  .whare-hero { max-height: 60svh; }
}

/* Contributor exhibition wall; existing mural selector styles stay independent. */
.showcase-intro { margin-block: 1.5rem 3rem; }
.showcase-intro h1 { font-size: clamp(2.5rem, 5vw, 5rem); font-weight: 500; letter-spacing: -.04em; margin-block: .5rem; }
.showcase-wall { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-auto-rows: minmax(90px, auto); gap: clamp(1rem, 2vw, 2rem); align-items: stretch; }
.showcase-art { margin: 0; min-width: 0; display: flex; flex-direction: column; justify-content: center; }
.showcase-art a { display: flex; align-items: center; justify-content: center; flex: 1; min-height: 0; }
.showcase-art img { display: block; width: 100%; height: 100%; max-height: 470px; object-fit: contain; }
.showcase-art figcaption, .showcase-caption { color: #625b55; font-size: .8rem; line-height: 1.5; margin-top: .6rem; }
.showcase-slot--feature { grid-column: span 8; grid-row: span 3; }
.showcase-slot--landscape { grid-column: span 6; grid-row: span 2; }
.showcase-slot--portrait { grid-column: span 4; grid-row: span 4; }
.showcase-slot--portrait img { max-height: 610px; }
.showcase-slot--squareish { grid-column: span 4; grid-row: span 3; }
.showcase-slot--neutral { grid-column: span 6; grid-row: span 3; }
.showcase-wall--small .showcase-slot--landscape { grid-column: span 5; }
.showcase-wall--medium .showcase-slot--squareish { grid-column: span 5; }
.showcase-wall--large .showcase-slot--landscape, .showcase-wall--full .showcase-slot--landscape { grid-column: span 5; }
.showcase-text { grid-column: span 4; grid-row: span 2; align-self: center; line-height: 1.7; min-width: 0; }
.showcase-text h2 { font-size: 1.35rem; font-weight: 500; }
.showcase-text a { display: inline-block; padding-block: .5rem; }
.showcase-signature { grid-column: span 4; grid-row: span 2; align-self: end; border-top: 1px solid #8c2426; padding-top: 1rem; font-size: .85rem; }
.showcase-signature p { margin-block: .4rem; }
.showcase-return { margin-top: 3rem; }
.showcase-return a { display: inline-block; padding-block: .75rem; }
@media (max-width: 760px) {
  .showcase-intro { margin-block: 1rem 2rem; }
  .showcase-wall { display: flex; flex-direction: column; gap: 2rem; }
  .showcase-art img, .showcase-slot--portrait img { width: 100%; height: auto; max-height: 80svh; object-fit: contain; }
  .showcase-text, .showcase-signature { align-self: stretch; max-width: 100%; }
}

.organization-directory { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 2rem; }
.organization-directory article { border-top: 1px solid #8c2426; padding-block: 1rem; min-width: 0; }
.organization-directory h2 { font-weight: 500; font-size: 1.5rem; }
.organization-directory p { line-height: 1.7; }
.organization-directory a { display: inline-block; padding-block: .5rem; }
