/* ═══════════════════════════════════════════════════════════════
   R5WF HOME — PREMIUM THEME
   Clean, modern, high-conversion
   ═══════════════════════════════════════════════════════════════ */

/* ── HERO ────────────────────────────────────────────────────── */
.hero {
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  align-items: center;
  background: linear-gradient(135deg, #0a0a0a 0%, #1a1a2e 50%, #0a0a0a 100%);
  overflow: hidden;
  color: var(--c-white);
}
.hero__bg {
  position: absolute;
  inset: 0;
  background: url('../img/background.jpg') center center/cover no-repeat;
  opacity: 0.25;
  mix-blend-mode: luminosity;
}
.hero__bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(10,10,10,0.95) 0%, rgba(10,10,10,0.6) 50%, rgba(10,10,10,0.3) 100%);
}
.hero__content {
  position: relative;
  z-index: 2;
  padding-top: calc(var(--nav-height) + var(--sp-2xl));
  padding-bottom: var(--sp-3xl);
}
.hero__slogan {
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-sm);
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--c-red);
  margin-bottom: var(--sp-md);
}
.hero__headline {
  font-family: 'Barlow', sans-serif;
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.02em;
  max-width: 680px;
}
.hero__headline span {
  background: linear-gradient(135deg, var(--c-red), #FF6B6B);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hero__sub {
  font-size: var(--fs-lg);
  color: var(--c-gray-400);
  max-width: 520px;
  margin-top: var(--sp-md);
  line-height: 1.6;
}
.hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sp-md);
  margin-top: var(--sp-xl);
}
.hero__microcopy {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--fs-xs);
  color: var(--c-gray-500);
  margin-top: var(--sp-md);
}
.hero__microcopy svg { width: 16px; height: 16px; color: #25D366; flex-shrink: 0; }
.hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-xl);
  margin-top: var(--sp-2xl);
  padding-top: var(--sp-xl);
  border-top: 1px solid rgba(255,255,255,0.08);
}
.hero__proof-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--fs-sm);
  color: var(--c-gray-400);
}
.hero__proof-item strong {
  font-family: 'Barlow', sans-serif;
  font-weight: 800;
  color: var(--c-white);
  font-size: var(--fs-xl);
}
.hero__proof-stars { display: flex; gap: 1px; }
.hero__proof-stars svg { width: 14px; height: 14px; fill: #FBBF24; }

/* ── DARK SECTIONS BASE ─────────────────────────────────────── */
.section--dark {
  background: var(--c-black);
  color: var(--c-white);
}
.section--gradient {
  background: linear-gradient(180deg, #0a0a0a, #111827);
  color: var(--c-white);
}
.bg-gray { background: var(--c-gray-100); }

/* ── BEFORE/AFTER SLIDER ────────────────────────────────────── */
.compare-section { background: linear-gradient(180deg, #0a0a0a, #111); color: var(--c-white); }
.compare-wrapper {
  position: relative;
  max-width: 800px;
  margin: 0 auto;
  border-radius: var(--radius-md);
  overflow: hidden;
  aspect-ratio: 16/9;
  background: var(--c-gray-900);
  box-shadow: 0 20px 60px rgba(0,0,0,0.5);
  cursor: ew-resize;
  user-select: none;
}
.compare-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.compare-wrapper .compare-after { clip-path: inset(0 0 0 50%); }
.compare-slider {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 3px;
  background: var(--c-white);
  z-index: 3;
  cursor: ew-resize;
}
.compare-slider::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
  height: 44px;
  border-radius: var(--radius-full);
  background: var(--c-white);
  box-shadow: 0 2px 10px rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
  justify-content: center;
}
.compare-label {
  position: absolute;
  bottom: var(--sp-md);
  padding: 6px 14px;
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  background: rgba(0,0,0,0.7);
  backdrop-filter: blur(4px);
  border-radius: var(--radius-full);
  z-index: 2;
}
.compare-label--before { left: var(--sp-md); }
.compare-label--after { right: var(--sp-md); }

/* ── TECHNOLOGY ─────────────────────────────────────────────── */
.tech-section { background: linear-gradient(180deg, #111827, #0a0a0a); color: var(--c-white); }
.tech-grid { display: grid; gap: var(--sp-lg); }
.tech-card {
  padding: var(--sp-xl);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  backdrop-filter: blur(8px);
  transition: transform var(--duration-base) var(--ease-out), border-color var(--duration-base);
}
.tech-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255,255,255,0.12);
}
.tech-card__icon {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-sm);
  background: rgba(194,29,32,0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--sp-md);
  color: var(--c-red);
}
.tech-card__icon svg { width: 24px; height: 24px; }
.tech-card__title {
  font-family: 'Barlow', sans-serif;
  font-weight: 700;
  font-size: var(--fs-lg);
  margin-bottom: var(--sp-sm);
}
.tech-card__text { font-size: var(--fs-sm); color: var(--c-gray-400); line-height: 1.6; }
.tech-card__stat {
  margin-top: var(--sp-md);
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-2xl);
  font-weight: 800;
  color: var(--c-red);
}
@media (min-width: 768px) { .tech-grid { grid-template-columns: repeat(3, 1fr); } }

/* ── LINES SECTION ──────────────────────────────────────────── */
.lines-auto { background: var(--c-white); }
.lines-arq { background: var(--c-gray-100); }
.line-card {
  display: block;
  padding: 0;
  border: var(--border-light);
  border-radius: var(--radius-md);
  background: var(--c-white);
  overflow: hidden;
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base);
  text-decoration: none;
  color: inherit;
}
.line-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: var(--accent-color, var(--c-red));
}
.line-card:hover img { transform: scale(1.03); }
.line-card__header { display: flex; align-items: center; gap: var(--sp-sm); margin-bottom: var(--sp-sm); }
.line-card__name {
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-lg);
  font-weight: 800;
  letter-spacing: 0.02em;
}
.line-card__desc { font-size: var(--fs-sm); color: var(--c-gray-600); line-height: 1.5; margin-bottom: var(--sp-md); }
.line-card__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-sm);
  font-weight: 700;
  color: var(--accent-color, var(--c-red));
  transition: gap var(--duration-base) var(--ease-out);
}
.line-card:hover .line-card__link { gap: 10px; }
.line-card__link svg { width: 16px; height: 16px; flex-shrink: 0; }

/* ── WHY R5WF / DIFERENCIAIS ───────────────────────────────── */
.why-r5wf {
  background: linear-gradient(135deg, #0a0a0a, #1a1a2e);
  color: var(--c-white);
  position: relative;
  overflow: hidden;
}
.why-r5wf::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -20%;
  width: 600px;
  height: 600px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(194,29,32,0.08), transparent 70%);
  pointer-events: none;
}
.why-card {
  padding: var(--sp-xl);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  backdrop-filter: blur(8px);
  text-align: center;
  transition: transform var(--duration-base) var(--ease-out), border-color var(--duration-base);
}
.why-card:hover { transform: translateY(-4px); border-color: rgba(255,255,255,0.12); }
.why-card__number {
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-4xl);
  font-weight: 800;
  line-height: 1;
  margin-bottom: var(--sp-sm);
  background: linear-gradient(135deg, var(--c-white), var(--c-gray-400));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.why-card__label {
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-base);
  font-weight: 700;
  margin-bottom: 4px;
}
.why-card__text { font-size: var(--fs-sm); color: var(--c-gray-500); }
.usa-seal {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-md);
  padding: 0;
  background: transparent;
  border: none;
}
.usa-seal img { width: 144px; height: 144px; }
.usa-seal__text {
  font-family: 'Barlow', sans-serif;
  font-weight: 700;
  font-size: var(--fs-base);
}
.trust-stars { display: flex; justify-content: center; gap: 4px; margin-bottom: var(--sp-sm); }
.trust-stars svg { width: 20px; height: 20px; fill: #FBBF24; }
.trust-label { font-size: var(--fs-sm); color: var(--c-gray-400); }

/* ── CTA APLICADORES ────────────────────────────────────────── */
.cta-aplicadores { background: var(--c-white); }
.cta-aplicadores__inner {
  display: grid;
  gap: var(--sp-2xl);
  align-items: center;
}
@media (min-width: 768px) { .cta-aplicadores__inner { grid-template-columns: 1fr 1fr; } }

/* ── URGENCY ────────────────────────────────────────────────── */
.urgency-section {
  background: linear-gradient(135deg, #7f1d1d, #991b1b, #b91c1c);
  color: var(--c-white);
  text-align: center;
}
.urgency-section .section-title { color: var(--c-white); }

/* ── SELECT DEALERS ─────────────────────────────────────────── */
.select-section {
  background: linear-gradient(135deg, #0a0a0a, #1a1a2e);
  color: var(--c-white);
  position: relative;
}
.select-benefits { display: grid; gap: var(--sp-md); }
.select-benefit {
  display: flex;
  gap: var(--sp-md);
  padding: var(--sp-lg);
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  transition: border-color var(--duration-base);
}
.select-benefit:hover { border-color: rgba(255,255,255,0.15); }
.select-benefit__icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: var(--radius-sm);
  background: rgba(194,29,32,0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--c-red);
}
.select-benefit__icon svg { width: 20px; height: 20px; }
.select-benefit__title { font-family: 'Barlow', sans-serif; font-weight: 700; margin-bottom: 2px; }
.select-benefit__text { font-size: var(--fs-sm); color: var(--c-gray-500); }
.testimonial {
  margin-top: var(--sp-xl);
  padding: var(--sp-xl);
  border-left: 3px solid var(--c-red);
  background: rgba(255,255,255,0.03);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.testimonial__quote {
  font-size: var(--fs-base);
  font-style: italic;
  color: var(--c-gray-300);
  line-height: 1.7;
}
.testimonial__author {
  margin-top: var(--sp-md);
  font-size: var(--fs-sm);
  color: var(--c-gray-500);
}

/* ── BLOG CARDS ─────────────────────────────────────────────── */
.blog-section { background: var(--c-white); }
.blog-card {
  display: block;
  border: var(--border-light);
  border-radius: var(--radius-md);
  overflow: hidden;
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base);
  text-decoration: none;
  color: inherit;
}
.blog-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.blog-card__image {
  aspect-ratio: 16/9;
  background: var(--c-gray-200);
  overflow: hidden;
}
.blog-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--duration-slow); }
.blog-card:hover .blog-card__image img { transform: scale(1.05); }
.blog-card__body { padding: var(--sp-lg); }
.blog-card__date { font-size: var(--fs-xs); color: var(--c-gray-500); margin-bottom: var(--sp-sm); }
.blog-card__title {
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-lg);
  font-weight: 700;
  margin-bottom: var(--sp-sm);
  line-height: 1.3;
}
.blog-card__excerpt { font-size: var(--fs-sm); color: var(--c-gray-600); line-height: 1.5; }
.blog-card__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: var(--sp-md);
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-sm);
  font-weight: 700;
  color: var(--c-red);
}
.blog-card__link svg { width: 16px; height: 16px; }

/* ── GRUPO MARQUEE ──────────────────────────────────────────── */
.grupo-section {
  background: var(--c-gray-100);
  padding: var(--sp-2xl) 0;
  overflow: hidden;
}
.marquee {
  position: relative;
  padding: var(--sp-xl) 0;
}
.marquee__track {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sp-xl) var(--sp-2xl);
}
.marquee__item { flex-shrink: 0; }
.marquee__item img {
  height: 28px;
  width: auto;
  max-width: none;
}
.marquee__placeholder {
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-lg);
  font-weight: 700;
  color: var(--c-gray-400);
  white-space: nowrap;
}
/* ── GALLERY ────────────────────────────────────────────────── */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--sp-sm);
}
.gallery-grid img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: var(--radius-sm);
  background: var(--c-gray-200);
  transition: transform var(--duration-base);
}
.gallery-grid img:hover { transform: scale(1.03); }
@media (min-width: 768px) { .gallery-grid { grid-template-columns: repeat(4, 1fr); } }

/* ── SECTION LABELS ─────────────────────────────────────────── */
.section-label {
  font-family: 'Barlow', sans-serif;
  font-size: var(--fs-xs);
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--c-red);
  margin-bottom: var(--sp-sm);
}
.section-title {
  font-family: 'Barlow', sans-serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.section-subtitle {
  font-size: var(--fs-lg);
  color: var(--c-gray-600);
  max-width: 600px;
  margin-top: var(--sp-sm);
  line-height: 1.5;
}
.section-subtitle.centered { margin-left: auto; margin-right: auto; }
.text-white { color: var(--c-white); }
.text-center { text-align: center; }

/* ── SHARK BAR ──────────────────────────────────────────────── */
.shark-bar { display: none; }
