/**
 * BRISANET REDESIGN VISUAL — BRANCO + LARANJA BRISANET DE ALTA VISIBILIDADE
 * Identidade Visual Clara, Moderna e com 100% de Contraste e Legibilidade
 *
 * Paleta:
 * - Fundo Principal: #FFFFFF
 * - Fundo Suave / Badges: #FFF7ED / #F8FAFC
 * - Laranja Brisanet (Primário): #FF5A00
 * - Laranja Escuro (Hover): #EA580C
 * - Amarelo Dourado: #FFC400
 * - Texto Principal (Escuro): #111827
 * - Texto Secundário (Escuro Alto Contraste): #374151
 * - Texto em Destaques e Botões Laranja: #FFFFFF
 * - Bordas: #E5E7EB e #FED7AA (Laranja suave)
 * - Rodapé: #111827 com texto em #FFFFFF e #E5E7EB
 */

/* 1. Reset Global & Backgrounds */
html {
  background-color: #FFFFFF !important;
  color: #111827 !important;
}

body {
  background-color: #FFFFFF !important;
  color: #111827 !important;
}

.bg-network-pattern {
  background-color: #FFFFFF !important;
  background-image: 
    radial-gradient(ellipse 90% 60% at 50% -15%, rgba(255, 90, 0, 0.06), transparent 70%),
    radial-gradient(ellipse 60% 40% at 90% 20%, rgba(255, 196, 0, 0.05), transparent 60%),
    linear-gradient(to right, rgba(0, 0, 0, 0.03) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0, 0, 0, 0.03) 1px, transparent 1px) !important;
  background-size: 100% 100%, 100% 100%, 48px 48px, 48px 48px !important;
  background-position: 0 0, 0 0, -1px -1px, -1px -1px !important;
}

/* 2. Top Header */
header {
  background-color: rgba(255, 255, 255, 0.98) !important;
  border-bottom: 1px solid #E5E7EB !important;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05) !important;
}

header a, header nav a {
  color: #111827 !important;
}

/* Header Navigation Bar */
header nav[class*="bg-zinc"],
header nav.rounded-full {
  background-color: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.04) !important;
}

header nav a {
  color: #1F2937 !important;
  font-weight: 600 !important;
  transition: all 0.2s ease !important;
}

header nav a:hover {
  color: #FF5A00 !important;
}

header nav a[aria-current="page"],
header nav a.active,
header nav a[class*="bg-[#FFC400]"] {
  background-color: #FF5A00 !important;
  color: #FFFFFF !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 6px rgba(255, 90, 0, 0.3) !important;
}

/* Logo Brisanet Laranja no Topo e Consultor Autorizado */
header a .brand-logo-name,
header a span.brand-logo-name,
header a span.font-display,
header a .font-display {
  color: #FF5A00 !important;
}

header a span.brand-logo-name span,
header a span.font-display span {
  color: #FF5A00 !important;
}

header a .consultor-autorizado-label,
header a span.consultor-autorizado-label {
  color: #4B5563 !important;
  font-size: 10px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin-top: 2px !important;
  display: block !important;
}

/* 3. Typography & Headings — Maximum Contrast */
main h1, main h2, main h3, main h4, main h5, main h6 {
  color: #111827 !important;
  font-weight: 800 !important;
}

/* Ensure no text is invisible inside light containers */
main .text-white,
article .text-white,
.glass-card .text-white,
section .text-white {
  color: #111827 !important;
}

/* High Contrast Body and Description Text */
main p,
article p,
.glass-card p {
  color: #1F2937 !important;
  font-weight: 400 !important;
}

main .text-zinc-400,
main .text-zinc-300,
main .text-zinc-500,
main .text-zinc-200,
main .text-zinc-100,
main .text-gray-400,
main .text-gray-500,
article .text-zinc-400,
article .text-zinc-300,
article .text-zinc-500,
.glass-card .text-zinc-400,
.glass-card .text-zinc-300,
.glass-card .text-zinc-500 {
  color: #374151 !important; /* Rich readable Slate-700 (AAA Contrast > 8:1) */
}

main strong, main b, article strong, article b {
  color: #111827 !important;
  font-weight: 700 !important;
}

/* List Items */
main ul li, article ul li, .glass-card ul li {
  color: #1F2937 !important;
}

/* Checkmarks (Vibrant Orange) */
main li span[class*="text-[#FFC400]"],
main li span[class*="text-[#FF5A00]"],
main li span.text-amber-400,
article li span {
  color: #FF5A00 !important;
  font-weight: 900 !important;
}

/* 4. Sections & Containers — Clean Light Surfaces */
main section {
  background-color: #FFFFFF !important;
  border-color: #E5E7EB !important;
}

/* Transform all dark background containers into clean white surfaces */
main [class*="bg-zinc-950"],
main [class*="bg-zinc-900"],
main [class*="from-zinc-900"],
main [class*="to-zinc-950"],
main [class*="bg-black"],
main .bg-\[\#060709\],
main .bg-\[\#07080D\],
main .bg-\[\#09090B\] {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border-color: #E5E7EB !important;
}

/* Alternate light sections */
main section:nth-of-type(even) {
  background-color: #F8FAFC !important;
}

/* 5. Cards & Articles — Crisp White with Orange Accents */
article,
.glass-card,
.glass-card-featured {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 1.5px solid #E5E7EB !important;
  color: #111827 !important;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.04), 0 2px 4px -1px rgba(0, 0, 0, 0.02) !important;
  transition: all 0.25s ease-in-out !important;
}

article:hover,
.glass-card:hover {
  border-color: #FF5A00 !important;
  box-shadow: 0 12px 24px -6px rgba(255, 90, 0, 0.12), 0 4px 8px -2px rgba(0, 0, 0, 0.04) !important;
  transform: translateY(-2px) !important;
}

/* Featured Cards (Destaque Laranja e Branco) */
.glass-card-featured,
article[class*="featured"],
.card-destaque {
  border: 2px solid #FF5A00 !important;
  box-shadow: 0 12px 28px -6px rgba(255, 90, 0, 0.2) !important;
}

/* 6. Badges & Tags — White with Orange */
.badge-cyber,
main span[class*="bg-white/5"],
main span[class*="bg-white/10"],
main span[class*="bg-zinc-800"],
main span[class*="bg-zinc-900"],
article span[class*="bg-white/5"],
article span[class*="bg-white/10"] {
  background-color: #FFF7ED !important;
  border: 1px solid #FED7AA !important;
  color: #FF5A00 !important;
  font-weight: 700 !important;
}

/* Highlight tags with white text on solid orange */
main span[class*="Mais Escolhido"],
main span[class*="Oferta em Destaque"],
main span[class*="Máxima Velocidade"],
.badge-destaque {
  background-color: #FF5A00 !important;
  border: 1px solid #EA580C !important;
  color: #FFFFFF !important;
  font-weight: 800 !important;
}

/* Orange Highlights & Brand Accent Text */
main .text-\[\#FFC400\],
main .text-\[\#FF5A00\],
main .text-amber-500,
main .text-orange-500,
article .text-\[\#FFC400\],
article .text-\[\#FF5A00\] {
  color: #FF5A00 !important;
  font-weight: 800 !important;
}

/* 7. Buttons & CTAs — Branco com Laranja */
/* Primary Buttons (Solid Orange with White Text) */
.btn-primary,
button[class*="bg-[#FFC400]"],
a[class*="bg-[#FFC400]"],
button[class*="bg-[#FF5A00]"],
a[class*="bg-[#FF5A00]"],
button[class*="bg-amber-400"],
a[class*="bg-amber-400"] {
  background-color: #FF5A00 !important;
  color: #FFFFFF !important;
  font-weight: 800 !important;
  border: none !important;
  box-shadow: 0 4px 14px 0 rgba(255, 90, 0, 0.35) !important;
  transition: all 0.2s ease !important;
}

.btn-primary:hover,
button[class*="bg-[#FFC400]"]:hover,
a[class*="bg-[#FFC400]"]:hover,
button[class*="bg-[#FF5A00]"]:hover,
a[class*="bg-[#FF5A00]"]:hover,
button[class*="bg-amber-400"]:hover,
a[class*="bg-amber-400"]:hover {
  background-color: #EA580C !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 20px 0 rgba(255, 90, 0, 0.45) !important;
}

/* Secondary Buttons (White with Orange Border & Text) */
.btn-secondary,
main a[class*="bg-zinc-800"],
main button[class*="bg-zinc-800"],
main a[class*="bg-zinc-700"],
main button[class*="bg-zinc-700"],
main a[class*="bg-zinc-900"],
main button[class*="bg-zinc-900"] {
  background-color: #FFFFFF !important;
  border: 2px solid #FF5A00 !important;
  color: #FF5A00 !important;
  font-weight: 800 !important;
  transition: all 0.2s ease !important;
}

main a[class*="bg-zinc-800"]:hover,
main button[class*="bg-zinc-800"]:hover,
main a[class*="bg-zinc-700"]:hover,
main button[class*="bg-zinc-700"]:hover,
main a[class*="bg-zinc-900"]:hover,
main button[class*="bg-zinc-900"]:hover {
  background-color: #FF5A00 !important;
  border-color: #FF5A00 !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px 0 rgba(255, 90, 0, 0.3) !important;
}

/* 8. Comparison Tables — High Legibility */
table {
  background-color: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

thead th {
  background-color: #FFF7ED !important;
  color: #9A3412 !important;
  border-bottom: 2px solid #FED7AA !important;
  font-weight: 800 !important;
}

tbody tr {
  border-bottom: 1px solid #F3F4F6 !important;
}

tbody tr:hover {
  background-color: #FFFBEB !important;
}

tbody td {
  color: #1F2937 !important;
}

tbody td strong, tbody td .text-white {
  color: #111827 !important;
  font-weight: 700 !important;
}

tbody td .text-\[\#FFC400\], tbody td .text-\[\#FF5A00\] {
  color: #FF5A00 !important;
  font-weight: 800 !important;
}

/* 9. Form Inputs & Selects */
input[type="text"],
input[type="tel"],
input[type="email"],
select,
textarea {
  background-color: #FFFFFF !important;
  border: 1.5px solid #D1D5DB !important;
  color: #111827 !important;
}

input:focus,
select:focus,
textarea:focus {
  background-color: #FFFFFF !important;
  border-color: #FF5A00 !important;
  outline: 2px solid rgba(255, 90, 0, 0.3) !important;
}

/* 10. Breadcrumbs & Dividers */
main nav[aria-label="Breadcrumb"] {
  background-color: transparent !important;
}

main nav[aria-label="Breadcrumb"] a {
  color: #4B5563 !important;
  font-weight: 500 !important;
}

main nav[aria-label="Breadcrumb"] a:hover {
  color: #FF5A00 !important;
}

main hr, main div[class*="border-white"] {
  border-color: #E5E7EB !important;
}

/* 11. City/State Directory Lists */
main a[href*="/cobertura/"] span {
  color: #111827 !important;
  font-weight: 600 !important;
}

main a[href*="/cobertura/"]:hover {
  border-color: #FF5A00 !important;
  background-color: #FFF7ED !important;
}

/* 12. FAQ Accordions */
details,
.faq-card {
  background-color: #FFFFFF !important;
  border: 1.5px solid #E5E7EB !important;
  border-radius: 1rem !important;
  color: #111827 !important;
}

details:hover,
.faq-card:hover {
  border-color: #FF5A00 !important;
}

summary {
  color: #111827 !important;
  font-weight: 800 !important;
}

summary:hover {
  background-color: #FFF7ED !important;
  color: #FF5A00 !important;
}

/* 13. Footer — High-Contrast Foundation (#111827) */
footer {
  background-color: #111827 !important;
  border-top: 1px solid #1F2937 !important;
  color: #FFFFFF !important;
}

footer h3, footer h4, footer .brand-logo-name {
  color: #FFFFFF !important;
  font-weight: 800 !important;
}

footer a {
  color: #FFFFFF !important;
  font-weight: 500 !important;
  transition: color 0.2s ease !important;
}

footer a:hover {
  color: #FF5A00 !important;
}

footer p {
  color: #E5E7EB !important; /* Crisp off-white (Contrast > 11:1 against #111827) */
}

footer span[class*="text-zinc"],
footer div[class*="text-zinc"],
footer p[class*="text-zinc"] {
  color: #D1D5DB !important;
}

footer .consultor-autorizado-label {
  color: #FFA066 !important;
}

footer .border-white\/10,
footer .border-white\/5 {
  border-color: #374151 !important;
}

/* 14. Floating WhatsApp */
.floating-whatsapp {
  box-shadow: 0 10px 25px -5px rgba(16, 185, 129, 0.5) !important;
}

/* 15. SEÇÃO OFICIAL DE OFERTAS & PLANOS BRISANET (CARDS ESCUROS MODERNOS) */
.brisanet-offers-section {
  background-color: #09090B !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: #FFFFFF !important;
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
  position: relative !important;
}

.brisanet-offers-section h2 {
  color: #FFFFFF !important;
}

.brisanet-offers-section p {
  color: #9CA3AF !important;
}

.brisanet-plan-card {
  background-color: #111827 !important;
  border: 1px solid #374151 !important;
  border-radius: 1.5rem !important;
  padding: 1.5rem !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5) !important;
  transition: all 0.25s ease-in-out !important;
  position: relative !important;
  color: #FFFFFF !important;
}

.brisanet-plan-card:hover {
  border-color: #4B5563 !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 20px 30px -10px rgba(0, 0, 0, 0.6) !important;
}

/* Card 700 Mega RECOMENDADO */
.brisanet-plan-card.is-recommended {
  border: 2px solid #FFC400 !important;
  box-shadow: 0 0 35px rgba(255, 196, 0, 0.18), 0 10px 25px -5px rgba(0, 0, 0, 0.5) !important;
}

.brisanet-plan-card.is-recommended:hover {
  border-color: #FFD033 !important;
  box-shadow: 0 0 45px rgba(255, 196, 0, 0.28), 0 20px 30px -10px rgba(0, 0, 0, 0.7) !important;
  transform: translateY(-4px) !important;
}

.brisanet-plan-card .badge-speed {
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 3px 10px !important;
  border-radius: 9999px !important;
  background-color: #1F2937 !important;
  color: #E5E7EB !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  line-height: 1.4 !important;
}

.brisanet-plan-card.is-recommended .badge-speed {
  background-color: rgba(255, 196, 0, 0.15) !important;
  color: #FFC400 !important;
  border-color: rgba(255, 196, 0, 0.4) !important;
}

.brisanet-plan-card .card-title {
  color: #FFFFFF !important;
  font-weight: 900 !important;
  font-size: 1.75rem !important;
  line-height: 1.15 !important;
  margin-top: 1rem !important;
  margin-bottom: 0.75rem !important;
  letter-spacing: -0.025em !important;
}

.brisanet-plan-card .price-integer {
  font-size: 2.5rem !important;
  font-weight: 900 !important;
  color: #FFFFFF !important;
  line-height: 1 !important;
}

.brisanet-plan-card .metric-box {
  background-color: #161C26 !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 0.75rem !important;
  padding: 0.5rem 0.625rem !important;
  text-align: center !important;
}

.brisanet-plan-card .app-pill {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: #E5E7EB !important;
  background-color: #1E2533 !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 0.375rem !important;
  padding: 2px 7px !important;
  white-space: nowrap !important;
}

.brisanet-plan-card .btn-contratar {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  padding: 0.75rem 1rem !important;
  border-radius: 0.75rem !important;
  background-color: #1F2937 !important;
  color: #FFFFFF !important;
  font-size: 0.8125rem !important;
  font-weight: 800 !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  text-decoration: none !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
  transition: all 0.2s ease !important;
}

.brisanet-plan-card .btn-contratar:hover {
  background-color: #374151 !important;
  color: #FFFFFF !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
  transform: translateY(-1px) !important;
}

/* Botão Recomendado (700 Mega) */
.brisanet-plan-card.is-recommended .btn-contratar-recommended {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  padding: 0.75rem 1rem !important;
  border-radius: 0.75rem !important;
  background-color: #FFC400 !important;
  color: #111827 !important;
  font-size: 0.8125rem !important;
  font-weight: 900 !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(255, 196, 0, 0.3) !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.brisanet-plan-card.is-recommended .btn-contratar-recommended:hover {
  background-color: #FFD033 !important;
  color: #111827 !important;
  box-shadow: 0 6px 20px rgba(255, 196, 0, 0.45) !important;
  transform: translateY(-1px) !important;
}


