/* Warehouse showcase: scoped surfaces and foregrounds travel together. */
.warehouse-showcase{--warehouse-ink:#283039;--warehouse-muted:#4b555e;--warehouse-paper:#f5f2ec;color:var(--warehouse-ink);background:var(--warehouse-paper)}
.warehouse-showcase .warehouse-cover{padding:64px 0 0;background:var(--warehouse-paper);color:var(--warehouse-ink)}
.warehouse-cover-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:36px}
.warehouse-showcase .warehouse-cover h1{font-size:clamp(36px,4.5vw,64px);line-height:1.22;letter-spacing:0;margin:0 0 20px;color:var(--warehouse-ink)}
.warehouse-showcase .warehouse-cover p{color:var(--warehouse-muted);margin:0;max-width:42em;font-size:18px;line-height:1.8}
.warehouse-cover-heading .button{flex-shrink:0;white-space:nowrap}
.warehouse-cover figure{margin:0;position:relative;overflow:hidden;border-radius:12px}
.warehouse-cover figure img{display:block;width:100%;height:clamp(340px,42vw,640px);object-fit:cover;object-position:center 57%}
.warehouse-cover figcaption{position:absolute;left:24px;bottom:20px;color:#fff;background:#283039e6;padding:8px 14px;border-radius:4px;font-size:14px;pointer-events:none}
.warehouse-cover-note{display:flex;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid #d7d0c5}
.warehouse-showcase .warehouse-cover-note p{font-size:15px}.warehouse-cover-note strong{color:var(--warehouse-ink);font-weight:700}
.warehouse-scene{padding:80px 0;background:var(--warehouse-paper);color:var(--warehouse-ink)}
.warehouse-scene-alt{background:#fffdf9}
.warehouse-scene-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:40px;margin-bottom:30px}
.warehouse-showcase .warehouse-scene-heading h2{color:var(--warehouse-ink);font-size:clamp(28px,3vw,42px);letter-spacing:0;line-height:1.3;margin:0}
.warehouse-showcase .warehouse-scene-heading p{color:var(--warehouse-muted);font-size:17px;line-height:1.8;margin:0;max-width:38em}
.warehouse-scene-mosaic{display:grid;grid-template-columns:1.65fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:24px;height:620px}
.warehouse-scene-mosaic>figure:first-child{grid-row:1/-1}
.warehouse-scene-four{grid-template-rows:repeat(3,minmax(0,1fr));height:760px}
.warehouse-scene-pair{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}
.warehouse-showcase .warehouse-scene figure{margin:0;min-width:0;min-height:0;display:flex;flex-direction:column;gap:12px}
.warehouse-showcase .warehouse-scene img{display:block;min-height:0;flex:1;width:100%;height:0;object-fit:cover;border-radius:10px;cursor:zoom-in}
.warehouse-scene-pair img{height:360px!important;flex:none!important}
.warehouse-showcase .warehouse-scene figcaption{position:static;background:none;color:var(--warehouse-ink);font-size:15px;line-height:1.5;padding:0;margin:0}
.warehouse-showcase img:focus-visible{outline:3px solid #855000;outline-offset:5px}
.warehouse-showcase .warehouse-visit{background:#eee8dd;color:var(--warehouse-ink);padding:56px 0}
.warehouse-visit>.wrap{display:flex;align-items:center;justify-content:space-between;gap:32px}
.warehouse-showcase .warehouse-visit h2{font-size:clamp(27px,3vw,38px);line-height:1.4;color:var(--warehouse-ink);margin:0 0 16px}
.warehouse-showcase .warehouse-visit p{color:var(--warehouse-muted);font-size:17px;line-height:1.8;margin:0 0 14px}
.warehouse-visit a:not(.button){color:#78500f;text-decoration:underline;text-underline-offset:5px}
@media(min-width:1500px){.warehouse-showcase>.warehouse-cover>.wrap,.warehouse-showcase .warehouse-scene>.wrap,.warehouse-showcase .warehouse-visit>.wrap{max-width:1440px;width:calc(100% - 160px)}}
@media(max-width:1000px){.warehouse-cover-heading{align-items:start;flex-direction:column;gap:24px}.warehouse-scene-heading{grid-template-columns:1fr;gap:14px}.warehouse-scene-mosaic{height:520px;gap:20px}.warehouse-scene-four{height:650px}.warehouse-scene-pair img{height:300px!important}.warehouse-cover-note{flex-direction:column;gap:6px}.warehouse-visit>.wrap{align-items:start;flex-direction:column}}
@media(max-width:640px){.warehouse-showcase .wrap{width:calc(100% - 40px)}.warehouse-showcase .warehouse-cover{padding-top:36px}.warehouse-showcase .warehouse-cover h1{font-size:36px}.warehouse-showcase .warehouse-cover p{font-size:16px}.warehouse-cover-heading{margin-bottom:26px}.warehouse-cover figure img{height:300px;object-position:58% center}.warehouse-cover figcaption{left:12px;bottom:12px;font-size:12px;padding:6px 10px}.warehouse-showcase .warehouse-cover-note p{font-size:13px}.warehouse-scene{padding:44px 0}.warehouse-scene-heading{margin-bottom:22px}.warehouse-showcase .warehouse-scene-heading h2{font-size:28px}.warehouse-showcase .warehouse-scene-heading p{font-size:15px}.warehouse-scene-mosaic,.warehouse-scene-four,.warehouse-scene-pair{height:auto;grid-template-columns:1fr;grid-template-rows:none;gap:24px}.warehouse-scene-mosaic>figure:first-child{grid-row:auto}.warehouse-showcase .warehouse-scene img,.warehouse-scene-pair img{height:auto!important;aspect-ratio:4/3;flex:none!important}.warehouse-showcase .warehouse-scene figcaption{font-size:14px}.warehouse-showcase .warehouse-visit{padding:36px 0}.warehouse-showcase .warehouse-visit p{font-size:15px}}

.warehouse-showcase .warehouse-cover::before,.warehouse-showcase .warehouse-cover::after{content:none!important}

/* Image affordance stays inside a fixed frame; captions never move. */
.warehouse-showcase .warehouse-photo-link{display:block;position:relative;min-height:0;overflow:hidden;border-radius:10px;color:#fff;cursor:zoom-in;text-decoration:none;isolation:isolate}
.warehouse-showcase .warehouse-scene .warehouse-photo-link{flex:1;min-height:0}
.warehouse-showcase .warehouse-scene .warehouse-photo-link img{height:100%;width:100%;border-radius:0;object-fit:cover}
.warehouse-showcase .warehouse-scene-pair .warehouse-photo-link{height:360px;flex:none}
.warehouse-showcase .warehouse-scene-pair .warehouse-photo-link img{height:100%!important}
.warehouse-photo-link img{transition:transform .3s cubic-bezier(.22,.61,.36,1)}
.warehouse-photo-cue{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:40px;height:40px;border-radius:6px;background:#283039e8;color:#fff;pointer-events:none;opacity:0;transition:opacity .2s ease}
.warehouse-photo-cue svg{width:20px;height:20px}
.warehouse-showcase .warehouse-photo-link:focus-visible{outline:3px solid #855000;outline-offset:5px}
.warehouse-photo-link:focus-visible .warehouse-photo-cue{opacity:1}
@media(hover:hover) and (pointer:fine){.warehouse-photo-link:hover img{transform:scale(1.03)}.warehouse-photo-link:hover .warehouse-photo-cue{opacity:1}.warehouse-showcase .button:hover{transform:translateY(-2px);background:#df8706;color:#20262c}}
.warehouse-showcase .button{transition:transform .2s ease,background-color .2s ease}
.warehouse-showcase .button:active{transform:translateY(0)}
.warehouse-viewer{width:min(1220px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:24px;border:0;border-radius:12px;background:#fffdf9;color:#283039;box-sizing:border-box;overflow:auto}
.warehouse-viewer::backdrop{background:#11171ee8}
.warehouse-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.warehouse-viewer h2{font:600 18px/1.5 Arial,"PingFang SC","Microsoft YaHei",sans-serif;margin:0;color:#283039;letter-spacing:0}
.warehouse-viewer button{font-family:inherit;font-size:15px;font-weight:600;line-height:1.4;min-width:44px;min-height:44px;padding:10px 16px;border:1px solid #c7c0b5;border-radius:6px;background:#fffdf9;color:#283039;cursor:pointer}
.warehouse-viewer button:hover{background:#eee8dd}.warehouse-viewer button:focus-visible{outline:3px solid #855000;outline-offset:3px}
.warehouse-viewer-stage{height:min(68dvh,760px);display:grid;place-items:center;background:#f0ece5;border-radius:8px;overflow:hidden;position:relative}
.warehouse-viewer-stage img{display:block;width:100%;height:100%;max-height:68dvh;object-fit:contain;grid-area:1/1}
.warehouse-viewer-status{grid-area:1/1;z-index:1;color:#283039;padding:12px;background:#fffdf9e8;border-radius:4px;text-align:center}
.warehouse-viewer-status[hidden]{display:none}.warehouse-viewer-stage img[hidden]{display:none}
.warehouse-viewer-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}
.warehouse-viewer-count{font-size:14px;font-variant-numeric:tabular-nums;color:#4b555e;margin:0}
.warehouse-viewer-nav{display:flex;gap:10px}.warehouse-viewer-help{font-size:13px;color:#4b555e;margin:12px 0 0}
body.warehouse-viewer-open{overflow:hidden}
@media(max-width:1000px){.warehouse-showcase .warehouse-scene-pair .warehouse-photo-link{height:300px}}
@media(max-width:640px){.warehouse-showcase .warehouse-scene .warehouse-photo-link,.warehouse-showcase .warehouse-scene-pair .warehouse-photo-link{height:auto;aspect-ratio:4/3;flex:none}.warehouse-showcase .warehouse-scene .warehouse-photo-link img{aspect-ratio:auto;height:100%!important}.warehouse-photo-cue{opacity:1;width:32px;height:32px;right:10px;bottom:10px}.warehouse-viewer{padding:16px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.warehouse-viewer-stage{height:55dvh}.warehouse-viewer h2{font-size:16px}.warehouse-viewer-footer{gap:8px}.warehouse-viewer-nav{gap:6px}.warehouse-viewer button{font-size:14px;padding:10px 12px}.warehouse-viewer-help{display:none}}
@media(prefers-reduced-motion:reduce){.warehouse-photo-link img,.warehouse-photo-cue,.warehouse-showcase .button{transition:none!important}.warehouse-showcase .warehouse-photo-link:hover img,.warehouse-showcase .button:hover{transform:none!important}}
