:root {
  /* Paleta do funil de referência: panela.lojabummix.store. */
  --brand-primary: #111111;
  --brand-background: #FFFFFF;
  --brand-accent: #111111;
  --brand-secondary: #666666;
  --brand-surface: #F5F5F5;
  --brand-white: #FFFFFF;
  --brand-text: #222222;
  --brand-primary-hover: #222222;
  --brand-accent-ink: #111111;
  --brand-border: #EEEEEE;
  --background: var(--brand-background);
  --foreground: var(--brand-text);
  --card: var(--brand-white);
  --card-foreground: var(--brand-text);
  --popover: var(--brand-white);
  --popover-foreground: var(--brand-text);
  --primary: var(--brand-primary);
  --primary-foreground: var(--brand-white);
  --secondary: var(--brand-surface);
  --secondary-foreground: var(--brand-text);
  --muted: var(--brand-surface);
  --muted-foreground: var(--brand-secondary);
  --accent: var(--brand-primary);
  --accent-foreground: var(--brand-white);
  --border: var(--brand-border);
  --input: var(--brand-border);
  --ring: var(--brand-primary);
  --copper: var(--brand-accent);
  --stone-deep: var(--brand-text);
  --gradient-copper: linear-gradient(135deg, var(--brand-primary), var(--brand-primary-hover));
  --shadow-soft: 0 10px 30px -12px rgb(0 0 0 / 18%);
}

.brand-logo {
  display: block;
  width: 220px;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
}

.brand-header {
  background: var(--brand-background);
  padding-block: 14px;
}

.brand-lockup {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}

.brand-tagline {
  color: var(--brand-secondary);
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: .06em;
}

.brand-seller-logo {
  width: 96px;
  padding: 8px;
  border-radius: 6px;
  background: var(--brand-white);
}

.brand-footer {
  background: var(--brand-surface);
  color: var(--brand-text);
}

.brand-footer .brand-logo {
  width: 210px;
  border-radius: 6px;
}

.brand-footer .brand-tagline {
  margin-top: 10px;
  color: var(--brand-secondary);
}

.brand-chef {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 16px;
}

.offer-page .text-copper,
.advertorial-page .text-copper {
  color: var(--brand-accent-ink);
}

.offer-page .lucide-star,
.advertorial-page .lucide-star {
  color: #FFC107;
  fill: currentColor;
}

.offer-page #barra-fill,
.advertorial-page #barra-fill {
  background-image: var(--gradient-copper);
}

.offer-page #cta-link,
.advertorial-page #advertorial-cta {
  background: var(--brand-primary);
  transition: background-color .2s, opacity .2s;
}

.offer-page #cta-link:hover,
.advertorial-page #advertorial-cta:hover {
  background: var(--brand-primary-hover);
  opacity: 1;
}

.offer-page #cta-link:focus-visible,
.advertorial-page #advertorial-cta:focus-visible {
  outline: 3px solid var(--brand-accent);
  outline-offset: 3px;
}

.offer-page [data-kit-option]:focus-visible,
.offer-page [data-kit-choose]:focus-visible {
  outline: 2px solid var(--brand-primary);
  outline-offset: 3px;
}

@keyframes pulse-glow {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 rgb(17 17 17 / 18%);
  }
  50% {
    transform: scale(1.015);
    box-shadow: 0 0 22px 5px rgb(17 17 17 / 12%);
  }
}

@media (prefers-reduced-motion: reduce) {
  #cta-link,
  #advertorial-cta {
    animation: none;
    transition: none;
  }
}
