.mv-ref-shell,
.mv-ref-shell * { box-sizing:border-box; }

.mv-ref-shell .mv-ref-grid,
.mv-ref-shell .mv-ref-grid li { margin:0; padding:0; list-style:none; }

.mv-ref-shell .mv-ref-grid {
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:15px;
}

.mv-ref-shell .mv-ref-item {
  min-width:0;
}

.mv-ref-shell .card {
  position:relative;
  background:#fff;
  border:1px solid #f0f0f0;
  overflow:hidden;
  cursor:pointer;
  transition:all .15s ease-in-out;
}

.mv-ref-shell .img-box {
  display:block;
  width:100%;
  height:300px;
  overflow:hidden;
  position:relative;
  background:#f9f9f9;
  text-decoration:none;
}

.mv-ref-shell .img-box > img,
.mv-ref-shell .img-box .sct_img_01 img,
.mv-ref-shell .img-box img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .2s ease, filter .2s ease;
}

.mv-ref-shell .sct_img_01,
.mv-ref-shell .img-box > span {
  display:block;
  width:100%;
  height:100%;
}

.mv-ref-shell .info-box {
  padding:20px 10px;
  text-align:center;
  transition:all .15s ease-in-out;
}

.mv-ref-shell .brand {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  font-family:"Didot","Bodoni MT","Baskerville","Times New Roman",serif;
  font-size:14px;
  font-weight:700;
  color:#161616;
  margin:0 0 10px;
  letter-spacing:.16em;
  line-height:1.15;
  min-height:20px;
  text-transform:uppercase;
  text-shadow:0 1px 0 rgba(255,255,255,.28);
  font-style:normal;
}

.mv-ref-shell .brand::before,
.mv-ref-shell .brand::after {
  content:'';
  width:18px;
  height:1px;
  background:linear-gradient(90deg, rgba(212,175,55,0), rgba(212,175,55,.95), rgba(212,175,55,0));
  opacity:.95;
}

.mv-ref-shell .name {
  font-size:15px;
  font-weight:700;
  color:#1d1d1d;
  margin-bottom:12px;
  min-height:48px;
  line-height:1.45;
  letter-spacing:-0.02em;
}

.mv-ref-shell .price {
  font-size:20px;
  font-weight:800;
  color:#000;
  line-height:1.15;
  letter-spacing:-0.02em;
}

.mv-ref-shell .price span,
.mv-ref-shell .price b,
.mv-ref-shell .price strong { font-size:inherit; color:inherit; font-weight:inherit; }

.mv-ref-shell .origin-price {
  margin-top:6px;
  font-size:12px;
  color:#9a9a9a;
  text-decoration:line-through;
  line-height:1.2;
}

.mv-ref-shell .origin-price span,
.mv-ref-shell .origin-price b,
.mv-ref-shell .origin-price strong { font-size:inherit; color:inherit; font-weight:inherit; }

.mv-ref-shell .badge {
  position:absolute;
  top:0;
  left:0;
  z-index:12;
  width:78px;
  height:78px;
  padding:9px 0 0 9px;
  color:#fff;
  line-height:1;
  clip-path:polygon(0 0, 100% 0, 0 100%);
  box-shadow:0 10px 22px rgba(0,0,0,.16);
  border:none;
  overflow:hidden;
}

.mv-ref-shell .badge::before {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,255,255,.24) 0%, rgba(255,255,255,.08) 28%, rgba(255,255,255,0) 55%);
  pointer-events:none;
}

.mv-ref-shell .badge::after {
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  clip-path:polygon(0 0, 100% 0, 0 100%);
  border-top:1px solid rgba(255,255,255,.25);
  border-left:1px solid rgba(255,255,255,.18);
  pointer-events:none;
}

.mv-ref-shell .badge-rate {
  position:relative;
  z-index:1;
  display:block;
  font-size:13px;
  font-weight:800;
  letter-spacing:-0.04em;
  text-shadow:0 1px 1px rgba(0,0,0,.18);
}

.mv-ref-shell .badge-sub {
  position:relative;
  z-index:1;
  display:block;
  margin-top:4px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.02em;
  opacity:.98;
  white-space:nowrap;
}

.mv-ref-shell .badge-discount {
  background:linear-gradient(135deg, #ff715f 0%, #ff4d3d 52%, #dc1f14 100%);
}

.mv-ref-shell .badge-timesale {
  background:linear-gradient(135deg, #243a71 0%, #1d2f5d 52%, #101c3a 100%);
}

.mv-ref-shell .badge-event {
  background:linear-gradient(135deg, #f4dc86 0%, #d8b549 52%, #a1761d 100%);
  color:#1f1600;
}

/* TYPE A. BLACKOUT IMMERSION */
.mv-ref-shell .blackout:hover {
  background:#000;
  border-color:#000;
  transform:translateY(-8px);
  box-shadow:0 20px 40px rgba(0,0,0,.2);
}

.mv-ref-shell .blackout:hover .info-box * { color:#fff; }

.mv-ref-shell .blackout:hover .img-box img,
.mv-ref-shell .blackout:hover .img-box .sct_img_01 img {
  transform:scale(1.1) translateY(-10px);
  filter:brightness(.8);
}

/* TYPE B. GOLD-STROKE INVERSION */
.mv-ref-shell .gold-stroke:hover {
  box-shadow:inset 0 0 0 10px #d4af37;
  border-color:#d4af37;
}

.mv-ref-shell .gold-stroke:hover .img-box img,
.mv-ref-shell .gold-stroke:hover .img-box .sct_img_01 img {
  transform:scale(.9);
  filter:grayscale(1) contrast(1.2);
}

.mv-ref-shell .overlay {
  position:absolute;
  inset:0;
  z-index:4;
  background:rgba(212,175,55,.2);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transition:.2s;
  pointer-events:none;
}

.mv-ref-shell .gold-stroke:hover .overlay { opacity:1; }

.mv-ref-shell .overlay-btn {
  position:relative;
  z-index:5;
  min-width:126px;
  text-align:center;
  background:#000;
  color:#d4af37;
  border:none;
  padding:14px 22px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1;
}

.mv-ref-shell .mv-ref-actions {
  margin-top:10px;
}

.mv-ref-shell .mv-ref-wish {
  display:block;
  width:100%;
  height:42px;
  padding:0 16px;
  border:1px solid #d9d9d9;
  background:#fff;
  color:#666;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:all .15s ease-in-out;
}

.mv-ref-shell .mv-ref-wish:hover {
  border-color:#111;
  color:#111;
}



.mv-ref-shell .brand {
  opacity:.92;
}

.mv-ref-shell .badge-urgent {
  background:linear-gradient(135deg, #6f1027 0%, #8e1837 42%, #b88b4a 100%);
  color:#f7e7c0;
  animation:mvUrgentPulse 1.15s ease-in-out infinite;
  filter:drop-shadow(0 12px 22px rgba(111,16,39,.28));
}

.mv-ref-shell .badge-timesale.badge-urgent::before {
  background:linear-gradient(135deg, rgba(255,255,255,.20) 0%, rgba(255,244,220,.12) 22%, rgba(255,255,255,0) 54%);
}

.mv-ref-shell .badge-timesale.badge-urgent::after {
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  clip-path:polygon(0 0, 100% 0, 0 100%);
  border-top:1px solid rgba(247,231,192,.34);
  border-left:1px solid rgba(247,231,192,.20);
  pointer-events:none;
}

.mv-ref-shell .badge-timesale.badge-urgent .badge-rate {
  color:#f7e7c0;
  text-shadow:0 1px 2px rgba(29,8,13,.26);
  animation:mvUrgentBeat 1.15s ease-in-out infinite;
}

.mv-ref-shell .badge-timesale.badge-urgent .badge-sub {
  color:#f7e7c0;
  text-shadow:0 1px 1px rgba(29,8,13,.22);
  letter-spacing:.01em;
}

.mv-ref-shell .badge-timesale.badge-urgent::marker { display:none; }

.mv-ref-shell .badge-timesale.badge-urgent .badge-sub::before {
  content:'•';
  display:inline-block;
  margin-right:3px;
  font-size:9px;
  vertical-align:1px;
  color:#f2cf8b;
}

@keyframes mvUrgentPulse {
  0%,100% { transform:scale(1); }
  35% { transform:scale(1.08); }
  60% { transform:scale(1.01); }
}

@keyframes mvUrgentBeat {
  0%,100% { transform:none; }
  40% { transform:translateY(-1px) scale(1.08); }
}

@keyframes mvUrgentDot {
  0% { box-shadow:0 0 0 0 rgba(255,244,177,.72); opacity:1; }
  70% { box-shadow:0 0 0 10px rgba(255,244,177,0); opacity:.8; }
  100% { box-shadow:0 0 0 0 rgba(255,244,177,0); opacity:1; }
}
@media (max-width: 1200px) {
  .mv-ref-shell .mv-ref-grid { grid-template-columns:repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .mv-ref-shell .mv-ref-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .mv-ref-shell .mv-ref-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .mv-ref-shell .img-box { height:260px; }
}

.mv-ref-shell .img-box{isolation:isolate;}
.mv-ref-shell .gold-stroke:hover .overlay{opacity:1; display:flex; align-items:center; justify-content:center;}
.mv-ref-shell .gold-stroke:hover .overlay-btn{transform:none;}
.mv-ref-shell .blackout:hover .brand{color:#f2f2f2;text-shadow:none;}
.mv-ref-shell .blackout:hover .brand::before,
.mv-ref-shell .blackout:hover .brand::after{background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.95), rgba(255,255,255,0));}
.mv-ref-shell .blackout:hover .origin-price{color:#b8b8b8;}
.mv-ref-shell .gold-stroke:hover .brand{color:#6e6e6e;}
.mv-ref-shell .gold-stroke:hover .brand::before,
.mv-ref-shell .gold-stroke:hover .brand::after{background:linear-gradient(90deg, rgba(212,175,55,0), rgba(212,175,55,1), rgba(212,175,55,0));}


/* FOOTER THEME FIX */
#ft,
footer#ft,
.shop-footer,
footer.site-footer {
  position:relative;
  margin-top:42px;
  background:linear-gradient(180deg, #401218 0%, #2a1214 46%, #181210 100%) !important;
  color:#e8d7b6 !important;
  border-top:1px solid rgba(178,133,56,.62) !important;
  box-shadow:inset 0 1px 0 rgba(255,223,163,.08), 0 -10px 24px rgba(0,0,0,.08);
}

#ft::before,
footer#ft::before,
.shop-footer::before,
footer.site-footer::before {
  content:'';
  position:absolute;
  top:0; left:0; right:0;
  height:2px;
  background:linear-gradient(90deg, rgba(95,51,22,0), rgba(205,166,93,.9), rgba(95,51,22,0));
}

#ft > div,
#ft_wr,
#ft_copy,
#ft_company,
#ft_link,
#ft_bank,
#ft_cs,
#ft .ft_info,
#ft .ft_menu,
#ft .ft_notice,
#ft .ft_copy,
#ft .ft_right,
#ft .ft_left,
#ft .ft_inner,
.shop-footer > div,
footer.site-footer > div {
  background:transparent !important;
  color:inherit !important;
  border-color:rgba(190,152,87,.22) !important;
}

#ft a,
#ft a:link,
#ft a:visited,
.shop-footer a,
footer.site-footer a {
  color:#f0dfbf !important;
  transition:color .18s ease, opacity .18s ease;
}

#ft a:hover,
.shop-footer a:hover,
footer.site-footer a:hover {
  color:#ffe9be !important;
  opacity:1;
}

#ft strong,
#ft b,
#ft h2,
#ft h3,
#ft h4,
.shop-footer strong,
footer.site-footer strong {
  color:#fff2d5 !important;
}

#ft .copyright,
#ft .copy,
#ft small,
#ft address,
#ft p,
#ft li,
#ft span,
.shop-footer p,
.shop-footer li,
.shop-footer span,
footer.site-footer p,
footer.site-footer li,
footer.site-footer span {
  color:#d9c3a1 !important;
}

#ft hr,
#ft .line,
#ft .divider,
#ft .separate,
.shop-footer hr,
footer.site-footer hr {
  border-color:rgba(190,152,87,.18) !important;
  background:rgba(190,152,87,.18) !important;
}

#ft input,
#ft select,
#ft textarea,
#ft button,
.shop-footer input,
.shop-footer select,
.shop-footer textarea,
.shop-footer button,
footer.site-footer input,
footer.site-footer select,
footer.site-footer textarea,
footer.site-footer button {
  border-color:rgba(197,156,86,.28) !important;
}
