/* TLC Winter Sale */
.tlc-ws { position: relative; overflow: hidden; background: var(--tlc-ink); padding: 6rem 1.5rem; }
.tlc-ws__glow {
  position: absolute;
  inset: 0;
  opacity: 0.6;
  background: radial-gradient(circle at 50% 0%, var(--tlc-navy-light) 0%, transparent 60%);
}
.tlc-ws__embers { position: absolute; inset: 0; pointer-events: none; }
.tlc-ws__inner { position: relative; z-index: 1; margin: 0 auto; max-width: 72rem; }
.tlc-ws__inner > * + * { margin-top: 5rem; }

.tlc-ws__h {
  margin: 1rem 0 0;
  font-family: var(--tlc-font-display);
  font-size: clamp(2rem, 4.5vw, 3.5rem);
  font-weight: 500;
  color: var(--tlc-ivory);
}
.tlc-ws__h--center { margin-top: 1.5rem; }
.tlc-ws__intro { margin: 1rem 0 0; max-width: 42rem; color: var(--tlc-fog); }
.tlc-ws__intro--center { max-width: 36rem; }

/* Christmas cards */
.tlc-ws__xmas-grid { margin-top: 2.5rem; display: grid; grid-template-columns: 1fr; gap: 1.25rem; }
@media (min-width: 768px) { .tlc-ws__xmas-grid { grid-template-columns: repeat(2, 1fr); } }

.tlc-ws__card {
  border-radius: 1rem;
  border: 1px solid color-mix(in srgb, var(--tlc-brass) 20%, transparent);
  background: var(--tlc-navy);
  padding: 2rem;
  transition: transform 0.3s cubic-bezier(0.34, 1.2, 0.64, 1), box-shadow 0.3s ease;
}
.tlc-ws__card:hover {
  transform: translateY(-5px);
  box-shadow: 0 0 0 1px rgba(200, 162, 74, 0.28), 0 28px 60px -20px rgba(200, 162, 74, 0.12);
}
.tlc-ws__pill {
  margin-bottom: 1rem;
  display: inline-block;
  border-radius: 9999px;
  border: 1px solid color-mix(in srgb, var(--tlc-brass) 30%, transparent);
  background: color-mix(in srgb, var(--tlc-brass) 10%, transparent);
  padding: 0.125rem 0.75rem;
  font-family: var(--tlc-font-mono);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tlc-brass-soft);
}
.tlc-ws__card-title { margin: 0; font-family: var(--tlc-font-display); font-size: 1.25rem; color: var(--tlc-ivory); }
.tlc-ws__card-body { margin: 0.75rem 0 0; font-size: 1rem; line-height: 1.625; color: var(--tlc-fog); }
.tlc-ws__perks { list-style: none; margin: 1rem 0 0; padding: 0; }
.tlc-ws__perks li { display: flex; align-items: center; gap: 0.5rem; font-size: 1rem; color: color-mix(in srgb, var(--tlc-ivory) 80%, transparent); }
.tlc-ws__perks li + li { margin-top: 0.375rem; }
.tlc-ws__perk-dot { height: 0.25rem; width: 0.25rem; flex-shrink: 0; border-radius: 9999px; background: var(--tlc-brass); }
.tlc-ws__card .tlc-btn { margin-top: 1.5rem; }
.tlc-ws__note { margin: 1.5rem 0 0; text-align: center; font-size: 0.875rem; color: var(--tlc-fog); }

/* Deals */
.tlc-ws__deals-head { display: flex; flex-direction: column; align-items: center; text-align: center; }
.tlc-ws__pulse {
  border-radius: 9999px;
  border: 1px solid color-mix(in srgb, var(--tlc-ember) 50%, transparent);
  background: color-mix(in srgb, var(--tlc-ember) 15%, transparent);
  padding: 0.25rem 1rem;
  font-family: var(--tlc-font-mono);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  color: var(--tlc-ember);
  animation: tlc-ember-pulse 2.6s ease-out infinite;
}
@keyframes tlc-ember-pulse {
  0% { box-shadow: 0 0 0 0 rgba(140, 59, 46, 0); }
  50% { box-shadow: 0 0 0 7px rgba(140, 59, 46, 0.14); }
  100% { box-shadow: 0 0 0 0 rgba(140, 59, 46, 0); }
}

.tlc-ws__deals { margin-top: 3rem; display: grid; grid-template-columns: 1fr; gap: 1.25rem; }
@media (min-width: 768px) { .tlc-ws__deals { grid-template-columns: repeat(3, 1fr); } }
.tlc-ws__deal {
  border-radius: 1rem;
  border: 1px solid color-mix(in srgb, var(--tlc-brass) 20%, transparent);
  background: var(--tlc-navy);
  padding: 1.75rem;
  text-align: center;
  transition: transform 0.3s cubic-bezier(0.34, 1.2, 0.64, 1), box-shadow 0.3s ease;
}
.tlc-ws__deal:hover {
  transform: translateY(-5px);
  box-shadow: 0 0 0 1px rgba(200, 162, 74, 0.28), 0 28px 60px -20px rgba(200, 162, 74, 0.12);
}
.tlc-ws__deal-fig { margin: 0; font-family: var(--tlc-font-display); font-size: 3rem; color: var(--tlc-brass); }
.tlc-ws__deal-label { margin: 0.25rem 0 0; font-family: var(--tlc-font-mono); font-size: 10px; text-transform: uppercase; letter-spacing: 0.1em; color: var(--tlc-brass-soft); }
.tlc-ws__deal-detail { margin: 0.75rem 0 0; font-size: 0.875rem; line-height: 1.625; color: var(--tlc-fog); }

/* Promo */
.tlc-ws__promo { margin-top: 3rem; display: flex; flex-direction: column; align-items: center; gap: 0.75rem; text-align: center; }
.tlc-ws__promo-label { margin: 0; font-size: 0.875rem; color: var(--tlc-fog); }
.tlc-ws__promo-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: none;
  border: 0;
  cursor: pointer;
  font-family: var(--tlc-font-display);
  font-size: 1.5rem;
  font-style: italic;
  color: var(--tlc-brass-soft);
  transition: color 0.2s ease;
}
.tlc-ws__promo-btn:hover { color: var(--tlc-brass); }
.tlc-ws__promo-ic { display: inline-flex; transition: transform 0.2s ease, opacity 0.2s ease; }
.tlc-ws__promo-btn:hover .tlc-ws__promo-ic { transform: scale(1.1); }
.tlc-ws__promo-copy { opacity: 0.4; }
.tlc-ws__promo-btn:hover .tlc-ws__promo-copy { opacity: 0.9; }
.tlc-ws__promo-check { display: none; color: var(--tlc-brass); }
.tlc-ws__promo-btn.is-copied .tlc-ws__promo-copy { display: none; }
.tlc-ws__promo-btn.is-copied .tlc-ws__promo-check { display: inline-flex; }

.tlc-ws__copied {
  margin: 0;
  font-family: var(--tlc-font-mono);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tlc-brass);
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.tlc-ws__copied.is-show { opacity: 1; transform: translateY(0); }

.tlc-btn--claim { margin-top: 0.5rem; padding: 0.75rem 2rem; }
