/* Brand images stay legible over the banner and each theme's page background. */
.wordmark .brand-logo{display:block;width:auto;max-width:min(182px,42vw);height:38px;object-fit:contain;object-position:left center}
.wordmark .brand-logo-dark{display:none}
.theme-editorial .header.is-scrolled .brand-logo-light,.theme-editorial .footer .brand-logo-light,.theme-classic.inner-page .header.is-scrolled .brand-logo-light,.theme-classic.inner-page .footer .brand-logo-light{display:none}
.theme-editorial .header.is-scrolled .brand-logo-dark,.theme-editorial .footer .brand-logo-dark,.theme-classic.inner-page .header.is-scrolled .brand-logo-dark,.theme-classic.inner-page .footer .brand-logo-dark{display:block}
.brand-only-dark .brand-logo-light{filter:brightness(0) invert(1)}
.theme-editorial .header.is-scrolled .brand-only-light .brand-logo-dark,.theme-editorial .footer .brand-only-light .brand-logo-dark,.theme-classic.inner-page .brand-only-light .brand-logo-dark{filter:brightness(0)}

/* A quiet mat separates each project image from its neighbours and the page. */
.project-row{padding-block:clamp(46px,5vw,74px)}
.gallery{padding:13px 13px 8px;background:var(--ui-surface);border:1px solid color-mix(in srgb,var(--ui-accent) 23%,var(--ui-line));border-radius:11px;box-shadow:0 17px 44px rgba(31,24,18,.075)}
.gallery-track{gap:14px}
.gallery-track::after{content:"";flex:0 0 36%;pointer-events:none}
.gallery[data-gallery-count="1"] .gallery-track::after{display:none}
.gallery[data-gallery-count="1"] .gallery-slide{flex-basis:100%}
.gallery-slide{padding:5px;border:1px solid color-mix(in srgb,var(--ui-accent) 17%,var(--ui-line));border-radius:6px;background:color-mix(in srgb,var(--ui-accent) 5%,var(--ui-surface));box-shadow:0 5px 16px rgba(31,24,18,.06)}
.gallery-slide img{border-radius:3px;object-fit:contain}
.gallery-placeholder{border-radius:6px}
.gallery-controls{margin:11px 3px 2px}
.theme-noir .gallery{background:color-mix(in srgb,var(--ui-surface) 86%,var(--ui-bg));box-shadow:0 20px 45px rgba(0,0,0,.2)}

/* The collection reads as its own band, with products on raised cards. */
.merch{padding-block:clamp(70px,7vw,92px);background:color-mix(in srgb,var(--ui-accent) 13%,var(--ui-bg));border-bottom:1px solid color-mix(in srgb,var(--ui-accent) 18%,var(--ui-line))}
.merch .section-heading{margin-bottom:29px}
.merch .section-heading-right .inline-link{display:inline-flex;align-items:center;padding:10px 16px;border:1px solid color-mix(in srgb,var(--ui-accent) 65%,transparent);border-radius:5px;background:var(--ui-surface);font-size:12px;transition:transform .25s ease,background .25s ease}
.merch .section-heading-right .inline-link:hover{transform:translateY(-2px);background:color-mix(in srgb,var(--ui-accent) 10%,var(--ui-surface))}
.merch-carousel{padding-block:4px}
.merch-rail{padding:7px 4px 19px;gap:17px}
.merch .merch-card,.catalog-grid .merch-card{padding:10px 10px 17px;background:var(--ui-surface);border:1px solid color-mix(in srgb,var(--ui-accent) 23%,var(--ui-line));border-radius:11px;box-shadow:0 9px 27px rgba(31,24,18,.075)}
.merch .merch-photo,.catalog-grid .merch-photo{border-radius:6px;background:color-mix(in srgb,var(--ui-accent) 6%,var(--ui-bg))}
.merch .merch-photo img,.catalog-grid .merch-photo img{object-fit:contain}
.merch .merch-card>p,.merch .merch-card h3,.merch .merch-card strong,.catalog-grid .merch-card>p,.catalog-grid .merch-card h2,.catalog-grid .merch-card strong,.catalog-grid .catalog-card-actions{margin-left:6px;margin-right:6px}
.merch .rail-arrow{box-shadow:0 5px 14px rgba(31,24,18,.08)}
.theme-noir .merch{background:color-mix(in srgb,var(--ui-surface) 64%,var(--ui-bg))}
.theme-noir .merch .merch-card,.theme-noir .catalog-grid .merch-card{box-shadow:0 12px 30px rgba(0,0,0,.17)}
.product-main-image{padding:12px;border:1px solid color-mix(in srgb,var(--ui-accent) 23%,var(--ui-line));border-radius:11px;background:var(--ui-surface);box-shadow:0 17px 44px rgba(31,24,18,.075);overflow:hidden}
.product-main-image img{border-radius:6px;object-fit:contain;background:color-mix(in srgb,var(--ui-accent) 5%,var(--ui-bg))}
.product-thumbnails a{padding:4px;border:1px solid var(--ui-line);border-radius:6px;background:var(--ui-surface)}
.product-thumbnails img{border-radius:3px}

@media(max-width:760px){.project-row{padding-block:36px}.gallery{padding:9px 9px 6px}.gallery-track{gap:10px}.gallery-track::after{flex-basis:23%}.wordmark .brand-logo{height:34px;max-width:144px}}
@media(max-width:520px){.gallery-track::after{flex-basis:18%}.merch .merch-card{flex-basis:min(72vw,268px)}.merch .section-heading{margin-bottom:24px}}
