/* Uptown Seal Press — shop image lightbox */
.sh-img,.merch-photo{cursor:zoom-in;transition:transform .6s cubic-bezier(.22,1,.36,1),filter .6s ease;}
.sh-card{overflow:hidden;}
.sh-card:hover .sh-img{transform:scale(1.035);filter:brightness(1.04);}
.merch-photo:hover{filter:brightness(1.04);}

.usp-lb{position:fixed;inset:0;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;overflow:hidden;color:#e8dcc0;}
.usp-lb::backdrop{background:transparent;}
.usp-lb__veil{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(14,22,44,.86) 0%,rgba(5,8,18,.97) 70%);backdrop-filter:blur(14px) saturate(.9);-webkit-backdrop-filter:blur(14px) saturate(.9);opacity:0;transition:opacity .55s ease;}
.usp-lb.is-open .usp-lb__veil{opacity:1;}

.usp-lb__stage{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:72px 84px 96px;}
.usp-lb__frame{position:relative;display:inline-block;padding:10px;background:linear-gradient(145deg,rgba(201,168,76,.55),rgba(201,168,76,.08) 40%,rgba(201,168,76,.45));box-shadow:0 40px 90px -20px rgba(0,0,0,.85),0 0 0 1px rgba(201,168,76,.25);will-change:transform,opacity;}
.usp-lb__frame::after{content:"";position:absolute;inset:4px;border:1px solid rgba(232,215,160,.35);pointer-events:none;}
.usp-lb__img{display:block;max-width:min(78vw,1100px);max-height:calc(100vh - 290px);width:auto;height:auto;object-fit:contain;background:#fff;}
.usp-lb__shine{position:absolute;inset:10px;pointer-events:none;overflow:hidden;}
.usp-lb__shine::before{content:"";position:absolute;top:-20%;left:-60%;width:40%;height:140%;background:linear-gradient(100deg,transparent,rgba(255,240,200,.28),transparent);transform:skewX(-18deg);opacity:0;}
.usp-lb.is-open .usp-lb__shine::before{animation:usp-shine 1.4s .55s cubic-bezier(.22,1,.36,1) forwards;}
@keyframes usp-shine{0%{left:-60%;opacity:1}100%{left:130%;opacity:0}}

.usp-lb__caption{margin-top:26px;text-align:center;opacity:0;transform:translateY(10px);transition:opacity .6s .35s ease,transform .6s .35s cubic-bezier(.22,1,.36,1);max-width:80vw;}
.usp-lb.is-open .usp-lb__caption{opacity:1;transform:none;}
.usp-lb__kicker{font-family:'Cinzel',serif;font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:#c9a84c;}
.usp-lb__rule{display:block;width:0;height:1px;margin:10px auto 12px;background:linear-gradient(90deg,transparent,#c9a84c,transparent);transition:width .9s .45s cubic-bezier(.22,1,.36,1);}
.usp-lb.is-open .usp-lb__rule{width:120px;}
.usp-lb__title{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(20px,2.4vw,30px);line-height:1.2;color:#fff;}
.usp-lb__count{margin-top:8px;font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.2em;color:#8899b4;}

.usp-lb__btn{position:absolute;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:1px solid rgba(201,168,76,.45);background:rgba(8,13,26,.55);color:#e8d7a0;font:300 26px/1 'Cormorant Garamond',serif;cursor:pointer;opacity:0;transition:opacity .5s .3s ease,background .3s ease,border-color .3s ease,transform .3s ease;}
.usp-lb.is-open .usp-lb__btn{opacity:1;}
.usp-lb__btn:hover,.usp-lb__btn:focus-visible{background:#c9a84c;color:#080d1a;border-color:#c9a84c;outline:none;transform:scale(1.06);}
.usp-lb__close{top:22px;right:24px;}
.usp-lb__prev{left:22px;top:50%;margin-top:-26px;}
.usp-lb__next{right:22px;top:50%;margin-top:-26px;}
.usp-lb__btn[hidden]{display:none;}

.usp-lb__img.is-swapping{animation:usp-swap .5s cubic-bezier(.22,1,.36,1);}
@keyframes usp-swap{0%{opacity:0;transform:scale(.97)}100%{opacity:1;transform:none}}

/* Look inside */
.usp-has-look{position:relative;}
.usp-look--badge{position:absolute;top:14px;right:14px;z-index:2;font-family:'Cinzel',serif;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:#080d1a;background:linear-gradient(135deg,#e8d7a0,#c9a84c 55%,#a8862f);padding:8px 12px;box-shadow:0 8px 22px -8px rgba(0,0,0,.6);cursor:pointer;opacity:.92;transform:translateY(0);transition:opacity .4s ease,transform .5s cubic-bezier(.22,1,.36,1),box-shadow .4s ease;}
.usp-has-look:hover .usp-look--badge{opacity:1;transform:translateY(-2px);box-shadow:0 14px 30px -10px rgba(201,168,76,.55);}
.usp-look--link{display:inline-flex;align-items:center;gap:8px;margin:2px 0 14px;padding:0;background:none;border:0;border-bottom:1px solid rgba(201,168,76,.35);color:#c9a84c;font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:color .3s ease,border-color .3s ease,letter-spacing .4s cubic-bezier(.22,1,.36,1);}
.usp-look--link:hover,.usp-look--link:focus-visible{color:#e8d7a0;border-color:#e8d7a0;letter-spacing:.22em;outline:none;}
.usp-lb.is-page .usp-lb__frame{background:linear-gradient(145deg,rgba(201,168,76,.4),rgba(201,168,76,.05) 45%,rgba(201,168,76,.35));}
.usp-lb.is-page .usp-lb__img{box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);}
.usp-lb__note{max-width:560px;margin:8px auto 0;font-family:'Jost',sans-serif;font-size:13px;font-weight:300;line-height:1.6;color:#a9b6cf;}
.usp-lb__note[hidden]{display:none;}
.usp-lb__dots{display:flex;justify-content:center;gap:8px;margin-top:12px;}
.usp-lb__dots button{width:7px;height:7px;padding:0;border:1px solid rgba(201,168,76,.6);border-radius:50%;background:transparent;cursor:pointer;transition:background .3s ease,transform .3s ease,width .4s cubic-bezier(.22,1,.36,1);}
.usp-lb__dots button.is-on{width:22px;border-radius:4px;background:#c9a84c;}
.usp-lb__dots button:hover{transform:scale(1.25);}

@media (max-width:700px){
  .usp-lb__stage{padding:64px 14px 90px;}
  .usp-lb__img{max-width:calc(100vw - 48px);max-height:calc(100vh - 220px);}
  .usp-lb__frame{padding:6px;}
  .usp-lb__shine{inset:6px;}
  .usp-lb__btn{width:44px;height:44px;font-size:22px;}
  .usp-lb__close{top:14px;right:14px;}
  .usp-lb__prev,.usp-lb__next{top:auto;bottom:22px;margin-top:0;}
  .usp-lb__prev{left:calc(50% - 60px);}
  .usp-lb__next{right:calc(50% - 60px);}
  .usp-lb__caption{margin-top:18px;}
  .usp-lb__img{max-height:calc(100vh - 300px);}
  .usp-lb__note{font-size:12px;}
}
@media (prefers-reduced-motion:reduce){
  .sh-img,.merch-photo,.usp-lb__veil,.usp-lb__caption,.usp-lb__btn,.usp-lb__rule{transition:none!important;}
  .sh-card:hover .sh-img{transform:none;}
  .usp-lb.is-open .usp-lb__shine::before,.usp-lb__img.is-swapping{animation:none!important;}
}
