/* ── FIRST-RUN WELCOME CAROUSEL ───────────────────────── */
.wc-overlay {
  position: fixed; inset: 0; z-index: 100000;
  display: flex; align-items: center; justify-content: center;
  padding: 24px;
  background: rgba(20, 16, 14, 0.55);
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  opacity: 0; transition: opacity .22s ease;
}
.wc-overlay.open { opacity: 1; }

.wc-card {
  position: relative;
  width: min(460px, 94vw);
  background: var(--bg2, #fff);
  border: 1px solid var(--b1, #e8e8e1);
  border-radius: 22px;
  box-shadow: 0 30px 80px -20px rgba(0,0,0,.5);
  overflow: hidden;
  transform: translateY(10px) scale(.985);
  transition: transform .24s cubic-bezier(.16,1,.3,1);
}
.wc-overlay.open .wc-card { transform: none; }

.wc-skip {
  position: absolute; top: 14px; right: 16px; z-index: 2;
  border: none; background: none; cursor: pointer;
  font-size: 12.5px; font-weight: 600; color: var(--t3, #82828b);
}
.wc-skip:hover { color: var(--tx, #18181b); }

/* artwork on a soft brand-tinted wash */
.wc-art {
  height: 260px;
  display: flex; align-items: center; justify-content: center;
  background:
    radial-gradient(120% 120% at 50% 0%, rgba(255,53,3,.14), transparent 60%),
    linear-gradient(180deg, var(--bg3, #f4f4ef), var(--bg2, #fff));
  border-bottom: 1px solid var(--b1, #e8e8e1);
}
.wc-art img {
  width: 210px; height: 210px; object-fit: contain;
  filter: drop-shadow(0 16px 30px rgba(0,0,0,.22));
  transition: opacity .25s ease;
}

.wc-body { padding: 26px 30px 6px; text-align: center; }
.wc-eyebrow {
  font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--accent, #FF3503); margin-bottom: 8px;
}
.wc-title {
  margin: 0 0 10px; font-size: 23px; font-weight: 700; letter-spacing: -.02em;
  color: var(--tx, #18181b); line-height: 1.2;
}
.wc-text { margin: 0 auto; max-width: 380px; font-size: 14.5px; line-height: 1.55; color: var(--t2, #52525b); }

.wc-anim { }
.wc-anim .wc-body { animation: wcIn .28s cubic-bezier(.16,1,.3,1); }
@keyframes wcIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }

.wc-foot {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 30px 26px; gap: 16px;
}
.wc-dots { display: flex; gap: 7px; }
.wc-dot {
  width: 7px; height: 7px; border-radius: 999px; border: none; cursor: pointer;
  background: var(--b2, #dcdcd2); padding: 0; transition: width .2s ease, background .2s ease;
}
.wc-dot.on { width: 22px; background: var(--accent, #FF3503); }

.wc-nav { display: flex; align-items: center; gap: 8px; }
.wc-btn {
  height: 40px; padding: 0 18px; border-radius: 999px; cursor: pointer;
  font-size: 13.5px; font-weight: 600; border: 1px solid transparent;
  transition: filter .15s ease, background .15s ease, color .15s ease;
}
.wc-ghost { background: none; color: var(--t2, #52525b); }
.wc-ghost:hover { background: var(--bg3, #f4f4ef); color: var(--tx, #18181b); }
.wc-solid {
  background: var(--accent, #FF3503); color: #fff;
  box-shadow: 0 4px 14px -4px rgba(255,53,3,.6);
}
.wc-solid:hover { filter: brightness(1.07); }

@media (max-width: 520px) {
  .wc-art { height: 210px; }
  .wc-art img { width: 168px; height: 168px; }
  .wc-body { padding: 22px 22px 4px; }
  .wc-foot { padding: 16px 22px 22px; }
}
