/* Best of Perfume — Perfume Showcase */
.bops-badge{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:5;display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 12px;border:1px solid rgba(214,168,80,.9);border-radius:999px;background:rgba(16,12,7,.86);color:#f3dfae;font:600 13px/1.2 Georgia,"Times New Roman",serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;white-space:nowrap;box-shadow:0 6px 22px rgba(0,0,0,.28);transition:background .25s,transform .25s,box-shadow .25s;-webkit-tap-highlight-color:transparent}
.bops-badge:hover,.bops-badge:focus-visible{background:#1c140a;transform:translateX(-50%) translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.36),0 0 0 3px rgba(214,168,80,.25);outline:none}
.bops-badge__play{position:relative;flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:linear-gradient(180deg,#f6e3a8,#c9963a)}
.bops-badge__play::before{content:"";position:absolute;left:10px;top:7px;border-style:solid;border-width:6px 0 6px 9px;border-color:transparent transparent transparent #1a1208}
.bops-badge__play::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:1px solid rgba(214,168,80,.7);animation:bops-pulse 2.2s ease-out infinite}
@keyframes bops-pulse{0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.5);opacity:0}}
@media (max-width:575px){.bops-badge{font-size:11px;padding:8px 14px 8px 9px;bottom:10px}.bops-badge__play{width:22px;height:22px}.bops-badge__play::before{left:8px;top:5px}}

.bops-modal{--bops-c1:hsl(24,70%,80%);--bops-c2:hsl(62,72%,82%);--bops-c3:hsl(342,66%,83%);--bops-c4:hsl(99,60%,86%);--bops-b1:hsl(32,52%,94%);--bops-b2:hsl(4,56%,90%);--bops-ink:hsl(24,45%,32%);position:fixed;inset:0;z-index:100000;display:none;overflow:hidden;color:#15110f;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,"Helvetica Neue",Arial,sans-serif;background:#fff;touch-action:none;user-select:none;-webkit-user-select:none}
.bops-modal.is-open{display:block;animation:bops-fade .45s ease both}
@keyframes bops-fade{from{opacity:0}to{opacity:1}}
.bops-fx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.bops-head{position:absolute;left:0;right:0;top:0;padding:26px 76px 0;text-align:center;pointer-events:none}
.bops-brand{display:inline-block;font-size:11px;line-height:1;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--bops-ink);margin:0 0 12px;padding:8px 14px 8px 17px;border-radius:999px;background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.bops-brand:empty{display:none}
.bops-name{font-size:clamp(22px,3.3vw,40px);line-height:1.08;font-weight:800;letter-spacing:-.025em;margin:0;color:#15110f}
.bops-close{position:absolute;right:18px;top:16px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#15110f;font:400 24px/1 Arial,sans-serif;cursor:pointer;z-index:3;box-shadow:0 6px 20px rgba(0,0,0,.08)}
.bops-close:hover{background:#fff}
.bops-stage{position:absolute;left:0;right:0;top:0;bottom:0;overflow:hidden;background:linear-gradient(135deg,var(--bops-b1),var(--bops-b2));display:flex;align-items:center;justify-content:center;perspective:1100px;cursor:grab;transition:background .6s}
.bops-stage.is-drag{cursor:grabbing}
.bops-blob{position:absolute;width:78vmax;height:78vmax;border-radius:50%;pointer-events:none;will-change:transform;transition:background .6s}
.bops-blob--1{left:-30vmax;top:-34vmax;background:radial-gradient(circle,var(--bops-c1) 0%,rgba(255,255,255,0) 66%);animation:bops-drift1 17s ease-in-out infinite alternate}
.bops-blob--2{right:-32vmax;top:-30vmax;background:radial-gradient(circle,var(--bops-c2) 0%,rgba(255,255,255,0) 66%);animation:bops-drift2 21s ease-in-out infinite alternate}
.bops-blob--3{right:-30vmax;bottom:-36vmax;background:radial-gradient(circle,var(--bops-c3) 0%,rgba(255,255,255,0) 66%);animation:bops-drift1 23s ease-in-out infinite alternate-reverse}
.bops-blob--4{left:-34vmax;bottom:-32vmax;background:radial-gradient(circle,var(--bops-c4) 0%,rgba(255,255,255,0) 66%);animation:bops-drift2 19s ease-in-out infinite alternate-reverse}
@keyframes bops-drift1{from{transform:translate(0,0) scale(1)}to{transform:translate(9vmax,6vmax) scale(1.12)}}
@keyframes bops-drift2{from{transform:translate(0,0) scale(1.08)}to{transform:translate(-8vmax,7vmax) scale(.96)}}
.bops-glow{position:absolute;left:50%;top:50%;width:70vh;height:70vh;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#ffffff 0%,rgba(255,255,255,.97) 40%,rgba(255,255,255,.55) 56%,rgba(255,255,255,0) 72%);pointer-events:none}
.bops-floor{position:absolute;left:50%;top:70%;width:300px;height:26px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(40,30,40,.22),rgba(40,30,40,0) 70%);pointer-events:none}
.bops-obj{position:relative;will-change:transform;transform-style:preserve-3d;-webkit-transform-style:preserve-3d}
.bops-obj img{position:absolute;left:0;top:0;display:block;width:100%;height:100%;pointer-events:none;-webkit-user-drag:none}
.bops-obj .bops-front{filter:drop-shadow(0 0 1px rgba(60,40,10,.25))}
.bops-sheen{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;background:linear-gradient(100deg,rgba(255,255,255,0) 36%,rgba(255,255,255,.5) 47%,rgba(255,255,255,.72) 50%,rgba(255,255,255,.5) 53%,rgba(255,255,255,0) 64%);background-size:320% 100%;background-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;opacity:.3}
.bops-obj.is-card img,.bops-obj.is-card .bops-sheen{border-radius:22px}
.bops-obj.is-card .bops-front{box-shadow:0 30px 60px rgba(30,20,40,.28)}
.bops-foot{position:absolute;left:0;right:0;bottom:0;padding:0 16px 26px;text-align:center;z-index:2}
.bops-hint{font-size:11px;line-height:1.4;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:rgba(21,17,15,.62);margin:0 0 14px}
.bops-btn{display:inline-block;margin:0 5px 8px;padding:14px 24px;min-width:128px;border:1px solid rgba(255,255,255,.95);border-radius:999px;background:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#15110f;font-size:12px;line-height:1;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.08);transition:transform .2s,background .2s,box-shadow .2s}
.bops-btn:first-of-type{background:#15110f;border-color:#15110f;color:#fff}
.bops-btn:hover,.bops-btn:focus-visible{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.14);outline:none}
.bops-btn[aria-pressed="false"]{opacity:.6}
.bops-gold .bops-stage{background:#e9b94e url(../img/gold-glitter.jpg) center/cover no-repeat;padding-top:7vh}
.bops-gold{--bops-shift:3.5vh}
.bops-gold .bops-blob{display:none}
.bops-gold .bops-glow{top:calc(50% + 3.5vh);background:radial-gradient(circle,#fffdf6 0%,rgba(255,252,240,.96) 36%,rgba(255,246,214,.5) 56%,rgba(255,240,190,0) 72%)}
.bops-gold .bops-floor{background:radial-gradient(ellipse,rgba(120,76,10,.42),rgba(120,76,10,0) 70%)}
.bops-gold .bops-stage::after{content:"";position:absolute;inset:-20%;background:linear-gradient(115deg,rgba(255,255,255,0) 38%,rgba(255,255,255,.5) 49%,rgba(255,250,225,.7) 50%,rgba(255,255,255,.5) 51%,rgba(255,255,255,0) 62%);background-size:300% 100%;animation:bops-shimmer 6.5s ease-in-out infinite;pointer-events:none;mix-blend-mode:soft-light}
@keyframes bops-shimmer{0%{background-position:120% 0}60%,100%{background-position:-60% 0}}
.bops-gold .bops-name{font-family:Georgia,"Times New Roman",Times,serif;font-weight:700;letter-spacing:-.01em;color:#120c03;text-shadow:0 1px 0 rgba(255,255,255,.35)}
.bops-gold .bops-brand{background:rgba(255,255,255,.78);color:#3a2a08}
.bops-gold .bops-hint{color:#3a2a08}
.bops-zoom{position:absolute;right:18px;top:50%;transform:translateY(-50%);z-index:3;display:flex;flex-direction:column;gap:10px}
.bops-zbtn{width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.95);background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#15110f;font:400 26px/1 Arial,sans-serif;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.12);transition:transform .2s,background .2s,opacity .2s}
.bops-zbtn:hover,.bops-zbtn:focus-visible{background:#fff;transform:scale(1.07);outline:none}
.bops-zbtn:disabled{opacity:.45;cursor:default;transform:none}
.bops-head{transition:opacity .15s}
.bops-modal.is-zoom .bops-stage{cursor:move}
.bops-modal.is-zoom .bops-hint{opacity:0}
body.bops-lock{overflow:hidden}
@media (max-width:575px){.bops-zoom{right:10px}.bops-zbtn{width:40px;height:40px;font-size:22px}.bops-head{padding:20px 62px 0}.bops-btn{min-width:0;padding:12px 15px;letter-spacing:.1em;margin:0 3px 6px;font-size:11px}.bops-hint{letter-spacing:.14em;font-size:10px}}
@media (prefers-reduced-motion:reduce){.bops-badge__play::after,.bops-blob,.bops-gold .bops-stage::after{animation:none}}
