/**
 * Thaize Tavares — CSS mínimo (Elementor Free)
 * Escopo: apenas páginas com .tt-page-home ou .tt-page-vdv
 * Não altera o admin nem outras páginas do tema.
 */

/* ---------- Design tokens (espelho do original VDV) ---------- */
.tt-page-vdv {
  --tt-black: #0a0a0a;
  --tt-gold: #c9a96e;
  --tt-gold-bright: #d9bf8b;
  --tt-gold-deep: #8b7340;
  --tt-gold-dark: #5a4a26;
  --tt-cream: #ede2cf;
  --tt-cream-light: #f5ecd9;
}

/* ---------- CTA gold (Elementor Free não tem gradiente no Button) ---------- */
.tt-page-vdv .tt-btn-gold .elementor-button,
.tt-page-home .tt-btn-dark .elementor-button {
  border: none;
  text-transform: uppercase;
}

.tt-page-vdv .tt-btn-gold .elementor-button {
  background: linear-gradient(135deg, #c9a96e 0%, #8b7340 55%, #5a4a26 100%) !important;
  box-shadow: 0 20px 50px -15px rgba(139, 115, 64, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.25);
  letter-spacing: 0.14em;
  font-weight: 800;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);
}

.tt-page-vdv .tt-btn-gold .elementor-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 26px 60px -15px rgba(139, 115, 64, 0.8), inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

.tt-page-vdv .tt-btn-whatsapp .elementor-button {
  background: #25d366 !important;
  letter-spacing: 0.12em;
  font-weight: 800;
  text-transform: uppercase;
}

.tt-page-home .tt-btn-dark .elementor-button {
  background: #4d4d4d !important;
  border-radius: 999px !important;
}

/* ---------- Hero overlay já é nativo; pills ---------- */
.tt-page-vdv .tt-pill {
  backdrop-filter: blur(8px);
}

/* ---------- Marquee de nichos ---------- */
.tt-page-vdv .tt-niches-wrap {
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
}

.tt-page-vdv .tt-niches-row .e-con-inner,
.tt-page-vdv .tt-niches-row.e-con {
  flex-wrap: nowrap !important;
  width: max-content;
  animation: tt-marquee 60s linear infinite;
}

.tt-page-vdv .tt-niches-row.tt-reverse .e-con-inner,
.tt-page-vdv .tt-niches-row.tt-reverse.e-con {
  animation-direction: reverse;
  animation-duration: 75s;
}

.tt-page-vdv .tt-niches-row.tt-slow .e-con-inner,
.tt-page-vdv .tt-niches-row.tt-slow.e-con {
  animation-duration: 90s;
}

.tt-page-vdv .tt-niches-wrap:hover .tt-niches-row .e-con-inner,
.tt-page-vdv .tt-niches-wrap:hover .tt-niches-row.e-con {
  animation-play-state: paused;
}

@keyframes tt-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.tt-page-vdv .tt-niche-chip {
  white-space: nowrap;
}

/* ---------- Masonry de prints ---------- */
.tt-page-vdv .tt-masonry > .e-con-inner,
.tt-page-vdv .tt-masonry.e-con {
  display: block !important;
  column-count: 4;
  column-gap: 16px;
}

.tt-page-vdv .tt-masonry .tt-print-card {
  break-inside: avoid;
  display: inline-block;
  width: 100%;
  margin-bottom: 16px;
}

@media (max-width: 1100px) {
  .tt-page-vdv .tt-masonry > .e-con-inner,
  .tt-page-vdv .tt-masonry.e-con { column-count: 3; }
}

@media (max-width: 767px) {
  .tt-page-vdv .tt-masonry > .e-con-inner,
  .tt-page-vdv .tt-masonry.e-con { column-count: 1; }

  .tt-page-vdv .tt-btn-gold .elementor-button,
  .tt-page-vdv .tt-btn-whatsapp .elementor-button {
    width: 100%;
  }
}

/* ---------- Accordion módulos / FAQ ---------- */
.tt-page-vdv .tt-modules .elementor-accordion-item,
.tt-page-vdv .tt-faq .elementor-tab-title,
.tt-page-vdv .tt-faq .elementor-tab-content {
  border-color: rgba(201, 169, 110, 0.25) !important;
}

.tt-page-vdv .tt-modules .elementor-accordion-item {
  background: rgba(255, 255, 255, 0.025);
  border-radius: 14px;
  margin-bottom: 12px;
  overflow: hidden;
}

.tt-page-vdv .tt-modules .elementor-tab-title {
  font-family: Fraunces, serif !important;
}

/* ---------- Player VTurb ---------- */
.tt-page-vdv .tt-vsl vturb-smartplayer {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 18px;
  overflow: hidden;
}

.tt-page-vdv .tt-vsl {
  border-radius: 18px;
  overflow: hidden;
  box-shadow:
    0 0 0 1px rgba(201, 169, 110, 0.25),
    0 40px 80px -30px rgba(0, 0, 0, 0.8);
}

/* ---------- Selo de bônus (número circular) ---------- */
.tt-page-vdv .tt-bonus-num .elementor-heading-title {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #d9bf8b, #8b7340);
  color: #0a0a0a !important;
}

/* ---------- Galeria palcos: leve rotação ---------- */
.tt-page-vdv .tt-palestra-1 { transform: translateY(12px) rotate(-2deg); }
.tt-page-vdv .tt-palestra-2 { transform: translateY(-8px) rotate(1deg); }
.tt-page-vdv .tt-palestra-3 { transform: rotate(-0.5deg); }
.tt-page-vdv .tt-palestra-4 { transform: translateY(-10px) rotate(1.5deg); }
.tt-page-vdv .tt-palestra-5 { transform: translateY(10px) rotate(-1deg); }

@media (prefers-reduced-motion: reduce) {
  .tt-page-vdv .tt-niches-row .e-con-inner,
  .tt-page-vdv .tt-niches-row.e-con {
    animation: none !important;
  }
}

/* ---------- Home: avatar circular ---------- */
.tt-page-home .tt-avatar img {
  border-radius: 50%;
  border: 3px solid #fff;
}

.tt-page-home .tt-offer-card {
  overflow: hidden;
}
