/* ===== Flavor Park archive: real media on the wall, lookbooks, videos, lightbox (loads after miami.css) ===== */
[data-play],[data-set]{cursor:pointer}
.tile:focus-visible,.card:focus-visible,.spot:focus-visible,.lbk:focus-visible,.vcard:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.tile picture,.card picture{position:absolute;inset:0;display:block}
.tile picture .media,.card picture .media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lazy-video.prev{opacity:0;transition:opacity .45s ease;z-index:1}
.lazy-video.prev.on{opacity:1}
.tile .vid-ico,.tile .dur,.tile figcaption{z-index:3}
.tile.has-media::before{z-index:2}
.tile .act{font-weight:700;color:var(--teal);letter-spacing:.04em}
.wall-intro{color:var(--muted);font-size:.92rem;margin:4px 0 24px;max-width:62ch}
.wall-intro b{color:var(--teal)}
/* lockup tiles */
.tile.lockup{background:#fff;justify-content:space-between;padding-top:0}
.tile.lockup .lockup-in{flex:1;display:grid;place-items:center;padding:18px}
.tile.lockup .lockup-in img{width:min(400px,80%);height:auto;image-rendering:auto}
.tile.lockup figcaption{display:flex;justify-content:space-between;font-size:.72rem;font-weight:700;color:#1a0b3d;background:none}
.tile.lockup .tag{color:#1688c9}
.tile.q .qbg{opacity:.55}
.lockup-card{background:#fff!important;border-color:rgba(255,255,255,.6)!important;display:grid;place-items:center;gap:8px;padding:18px 14px!important}
.lockup-card img{width:88%!important;height:auto;border-radius:0!important;margin:0!important}
.lockup-card .handle{color:#1a0b3d}
.card .badge.tag,.tile .badge.tag{background:rgba(11,10,36,.62);color:#fff;border:1px solid rgba(0,229,212,.5);backdrop-filter:blur(4px)}
.card .badge{z-index:3}
.card.c-a picture .media{object-position:50% 30%}
/* lookbooks */
.lbk-sec{background:linear-gradient(180deg,rgba(0,229,212,.05),rgba(123,47,247,.08))}
.lbks{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.lbk{position:relative;display:block;padding:0;border:1px solid rgba(160,140,255,.2);border-radius:18px;overflow:hidden;background:#15123a;color:#fff;text-align:left;aspect-ratio:15/8;font:inherit}
.lbk picture,.lbk img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.lbk:hover img{transform:scale(1.04)}
.lbk::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(11,10,36,.85))}
.lbk-cap{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:14px 16px;display:grid;gap:3px}
.lbk-cap b{font-size:.95rem;line-height:1.25}
.lbk-cap small{color:var(--teal);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.66rem}
/* videos */
.vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.vcard{display:flex;flex-direction:column;padding:0;border:1px solid rgba(160,140,255,.2);border-radius:16px;overflow:hidden;background:rgba(21,18,58,.85);color:#fff;text-align:left;font:inherit;transition:transform .25s,box-shadow .25s}
.vcard:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(0,0,0,.45),0 0 0 1px rgba(0,229,212,.45)}
.vthumb{position:relative;display:block;aspect-ratio:16/9;background:#0b0a24}
.vthumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vthumb .vid-ico{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;display:grid;place-items:center;background:rgba(11,10,36,.6);border:1px solid rgba(255,255,255,.6)}
.vthumb .vid-ico svg{width:18px;height:18px;fill:#fff;margin-left:3px}
.vthumb .dur{position:absolute;right:8px;bottom:8px;font-size:.66rem;font-weight:700;background:rgba(0,0,0,.65);padding:3px 7px;border-radius:6px}
.vcap{display:grid;gap:4px;padding:12px 14px 14px}
.vcap b{font-size:.86rem;line-height:1.3}
.vcap small{color:var(--muted);font-size:.7rem;letter-spacing:.04em}
/* spotlight */
.spot{cursor:pointer;transition:transform .2s,box-shadow .2s}
.spot:hover{transform:translateY(-3px);box-shadow:0 0 0 1px rgba(0,229,212,.45)}
.spot h3{margin-top:0}
.av picture{display:block;width:100%;height:100%}
/* lightbox */
html.lb-open{overflow:hidden}
.lb{position:fixed;inset:0;z-index:1000;background:rgba(6,5,20,.94);display:grid;grid-template-rows:1fr auto;place-items:center;padding:56px 70px 18px}
.lb[hidden]{display:none}
.lb-stage{width:100%;height:100%;display:grid;place-items:center;min-height:0}
.lb-stage picture{display:contents}
.lb-stage img{max-width:100%;max-height:calc(100vh - 130px);width:auto;height:auto;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.lb-frame{width:min(100%,calc((100vh - 140px)*16/9));max-height:calc(100vh - 130px);background:#000;border-radius:8px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.lb-frame iframe,.lb-frame video{width:100%;height:100%;display:block;border:0;background:#000}
.lb-cap{display:flex;gap:18px;align-items:center;color:#ece8fa;font-size:.86rem;padding-top:12px}
.lb-title{font-weight:700}.lb-count{color:var(--teal);font-weight:700;font-size:.76rem;letter-spacing:.08em}
.lb-x{position:absolute;top:12px;right:14px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(11,10,36,.6);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer}
.lb-nav{position:absolute;top:50%;margin-top:-26px;width:48px;height:52px;border-radius:12px;border:1px solid rgba(255,255,255,.3);background:rgba(11,10,36,.6);color:#fff;font-size:2rem;line-height:1;cursor:pointer}
.lb-prev{left:12px}.lb-next{right:12px}
.lb-nav[hidden]{display:none}
.lb-x:hover,.lb-nav:hover{border-color:var(--teal);color:var(--teal)}
@media (max-width:1000px){.lbks{grid-template-columns:1fr 1fr}.vgrid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.vgrid{grid-template-columns:1fr 1fr}.lb{padding:56px 8px 14px}.lb-nav{top:auto;bottom:10px;margin:0}.lb-cap{padding-bottom:4px;flex-direction:column;gap:4px;text-align:center}}
@media (max-width:600px){.lbks{grid-template-columns:1fr}.vcap b{font-size:.78rem}}
@media (prefers-reduced-motion:reduce){.lbk img,.vcard,.spot{transition:none}}
/* lookbook grid: two feature cards so 10 cards fill 3- and 2-column rows evenly */
.lbk:nth-child(1),.lbk:nth-child(4){grid-column:span 2;aspect-ratio:auto;min-height:100%}
@media (max-width:600px){.lbk:nth-child(1),.lbk:nth-child(4){grid-column:auto;aspect-ratio:15/8}}
.tile.lockup .lockup-in img{width:min(200px,82%)}
@media (min-width:861px){.spots{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);overflow:visible}}
@media (max-width:860px){.hashchip{bottom:auto;top:-5%;right:-2%}}
