/**
 * Isaflor - Home Minimal & Professional
 * Estilos globales para la nueva página de inicio
 */

/* ==========================================
   Variables Globales
   ========================================== */
:root {
    --color-primary: #fd7e14;
    --color-primary-dark: #ea580c;
    --color-success: #10b981;
    --color-text: #1f2937;
    --color-text-light: #6b7280;
    --color-border: #f3f4f6;
    --color-bg-light: #f9fafb;

    --spacing-xs: 8px;
    --spacing-sm: 16px;
    --spacing-md: 24px;
    --spacing-lg: 40px;
    --spacing-xl: 60px;
    --spacing-2xl: 80px;

    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 20px;
    --radius-2xl: 24px;

    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.04);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.12);
    --shadow-xl: 0 20px 48px rgba(0, 0, 0, 0.15);

    --transition-fast: 0.2s ease;
    --transition-normal: 0.3s ease;
    --transition-slow: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ==========================================
   Estilos Base
   ========================================== */
* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    color: var(--color-text);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ==========================================
   Tipografía
   ========================================== */
.section-title {
    font-size: 36px;
    font-weight: 800;
    color: var(--color-text);
    margin-bottom: 12px;
    letter-spacing: -0.5px;
    line-height: 1.2;
}

.section-subtitle {
    font-size: 16px;
    color: var(--color-text-light);
    line-height: 1.6;
}

/* ==========================================
   Utilidades de Animación
   ========================================== */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes scaleIn {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.animate-fade-in-up {
    animation: fadeInUp 0.6s ease-out;
}

.animate-fade-in {
    animation: fadeIn 0.6s ease-out;
}

.animate-scale-in {
    animation: scaleIn 0.4s ease-out;
}

/* ==========================================
   Scroll Animations
   ========================================== */
.scroll-reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.scroll-reveal.revealed {
    opacity: 1;
    transform: translateY(0);
}

/* ==========================================
   Botones Globales
   ========================================== */
.btn-primary-custom {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
    color: white;
    border: none;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all var(--transition-normal);
    box-shadow: 0 4px 12px rgba(253, 126, 20, 0.2);
}

.btn-primary-custom:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(253, 126, 20, 0.3);
    color: white;
}

.btn-outline-custom {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: transparent;
    color: var(--color-primary);
    border: 2px solid var(--color-primary);
    border-radius: 50px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all var(--transition-normal);
}

.btn-outline-custom:hover {
    background: var(--color-primary);
    color: white;
    transform: translateY(-2px);
}

/* ==========================================
   Cards Globales
   ========================================== */
.card-custom {
    background: white;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-slow);
    border: 1px solid var(--color-border);
}

.card-custom:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: transparent;
}

/* ==========================================
   Responsive Utilities
   ========================================== */
@media (max-width: 1200px) {
    .section-title {
        font-size: 32px;
    }
}

@media (max-width: 992px) {
    .section-title {
        font-size: 28px;
    }

    .section-subtitle {
        font-size: 15px;
    }
}

@media (max-width: 768px) {
    .section-title {
        font-size: 24px;
    }

    .section-subtitle {
        font-size: 14px;
    }

    .btn-primary-custom,
    .btn-outline-custom {
        padding: 12px 28px;
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .section-title {
        font-size: 22px;
    }
}

/* ==========================================
   Print Styles
   ========================================== */
@media print {
    .hero-section,
    .stats-section,
    .cta-section {
        page-break-inside: avoid;
    }
}

/* ==========================================
   Accessibility
   ========================================== */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* Focus visible for keyboard navigation */
*:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* ==========================================
   Performance Optimizations
   ========================================== */
.will-change-transform {
    will-change: transform;
}

.gpu-accelerated {
    transform: translateZ(0);
    backface-visibility: hidden;
    perspective: 1000px;
}

/* ==========================================
   Stats Section
   ========================================== */
.stats-section {
    position: relative;
    padding-top: 5rem;
    padding-bottom: 5rem;
    background: linear-gradient(135deg, #ffffff 0%, #f9fafb 100%);
}

/* Force dark background with higher specificity */
html.dark .stats-section {
    background: #0f172a !important;
    background-color: #0f172a !important;
    background-image: none !important;
}

.stat-card {
    position: relative;
    overflow: hidden;
    border-radius: 1.5rem;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    padding: 2rem;
    text-align: center;
    transition: all 400ms cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    border: 1px solid transparent;
}

.stat-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08);
}

.dark .stat-card {
    background-color: #1f2937 !important;
    border-color: #374151 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.dark .stat-card:hover {
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.5);
}

.stat-icon {
    margin-bottom: 1.25rem;
    display: inline-flex;
    height: 4rem;
    width: 4rem;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
    background: linear-gradient(135deg, rgba(253, 126, 20, 0.1), rgba(253, 126, 20, 0.05));
    color: #f97316;
}

.dark .stat-icon {
    background: linear-gradient(135deg, rgba(253, 126, 20, 0.2), rgba(253, 126, 20, 0.1));
    color: #fb923c;
}

.stat-number {
    margin-bottom: 0.5rem;
    font-size: 42px;
    font-weight: 800;
    line-height: 1;
    color: rgb(31 41 55 / var(--tw-text-opacity));
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.dark .stat-number {
    color: #f9fafb;
}

.stat-label {
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 500;
    color: rgb(107 114 128 / var(--tw-text-opacity));
    text-transform: uppercase;
    letter-spacing: 0.5px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.dark .stat-label {
    color: #9ca3af;
}

/* Responsive adjustments for stats */
@media (max-width: 768px) {
    .stats-section {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }

    .stat-card {
        padding: 1.5rem;
        min-height: 180px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .stat-icon {
        height: 3rem;
        width: 3rem;
    }

    .stat-number {
        font-size: 32px;
    }

    .stat-label {
        font-size: 0.75rem;
    }
}

/* ==========================================
   Hero Slider Section
   ========================================== */

/* Hero navigation buttons dark mode */
.dark .hero-nav-button {
    background-color: rgba(31, 41, 55, 0.9);
    border: 1px solid rgba(55, 65, 81, 0.8);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.dark .hero-nav-button:hover {
    background-color: rgba(55, 65, 81, 0.95);
    border-color: rgba(75, 85, 99, 0.9);
}

/* Swiper navigation buttons icons in dark mode - lighter orange */
.dark .swiper-button-prev-custom svg,
.dark .swiper-button-next-custom svg {
    stroke: #fb923c;
}

/* Pagination bullets in dark mode */
.dark #heroSwiper .swiper-pagination-bullet {
    background: rgba(251, 146, 60, 0.5);
}

.dark #heroSwiper .swiper-pagination-bullet-active {
    background: #fb923c;
}

/* Hero section margin */
body.web .margin-init {
    margin-top: 100px;
}

/* Optional: Add slight opacity to hero images in dark mode */
.dark .hero-image {
    opacity: 0.9;
}

.dark .hero-slide-link:hover .hero-image {
    opacity: 1;
}

/* ==========================================
   Banners Section
   ========================================== */

/* Banners section background */
.banners-section {
    position: relative;
    padding-top: 60px;
    padding-bottom: 60px;
    background-color: rgb(249 250 251);
    transition: background-color 0.3s ease;
}

html.dark .banners-section {
    background: #0f172a !important;
    background-color: #0f172a !important;
    background-image: none !important;
}

/* Banner cards in dark mode */
.dark .banner-card {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

.dark .banner-card:hover {
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6);
}

/* Banner images with slight opacity reduction in dark mode */
.dark .banner-image {
    opacity: 0.85;
}

.dark .banner-card:hover .banner-image {
    opacity: 1;
}

/* Banner overlay - stronger in dark mode */
.dark .banner-overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .banners-section {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }
}

/* ==========================================
   Product Grid Minimal Section
   ========================================== */

/* Featured products section background */
.featured-products-section {
    background-color: rgb(255 255 255);
    transition: background-color 0.3s ease;
}

html.dark .featured-products-section {
    background: #111827 !important;
    background-color: #111827 !important;
    background-image: none !important;
}

/* Section title - already styled in global section */
.dark .section-title {
    color: #f9fafb;
}

.dark .section-subtitle {
    color: #9ca3af;
}

/* View all button - Override white background in dark mode */
.dark .btn-view-all {
    background-color: #1f2937 !important; /* Fondo oscuro */
    border-color: #fb923c !important;
    color: #fb923c !important;
}

.dark .btn-view-all:hover {
    background-color: #fb923c !important;
    border-color: #fb923c !important;
    color: white !important;
}

/* Product cards */
.dark .product-card-minimal {
    background-color: #1f2937;
    border-color: #374151;
}

.dark .product-card-minimal:hover {
    border-color: #4b5563;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6);
}

/* Quick view button */
.dark .btn-quick-view {
    background-color: rgba(251, 146, 60, 0.9);
    color: white;
}

.dark .btn-quick-view:hover {
    background-color: #fb923c;
}

/* Product brand */
.dark .product-brand-minimal {
    color: #9ca3af;
}

/* Product code */
.dark .product-code-minimal {
    background-color: rgba(31, 41, 55, 0.6);
    border-color: #374151;
    color: #d1d5db;
}

.dark .product-code-minimal:hover {
    background-color: rgba(55, 65, 81, 0.8);
    border-color: #fb923c;
    color: #fb923c;
}

.dark .product-code-minimal.copied {
    background-color: rgba(16, 185, 129, 0.2);
    color: #10b981;
    border-color: #10b981;
}

/* Product name */
.dark .product-name-minimal {
    color: #f3f4f6;
}

/* Prices */
.dark .price-old-minimal {
    color: #6b7280;
}

.dark .price-now-minimal {
    color: #fb923c;
}

.dark .price-regular-minimal {
    color: #fb923c;
}

/* Box price (for m² products) */
.dark .box-price-compact {
    background-color: rgba(31, 41, 55, 0.6);
    border-color: #374151;
    color: #9ca3af;
}

/* Empty state message */
.dark .bg-gray-50 {
    background-color: #1f2937 !important;
}

.dark .text-gray-600 {
    color: #9ca3af !important;
}

/* Product grid skeleton */
.dark .product-grid-skeleton-wrapper {
    background-color: transparent;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .featured-products-section {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
}

/* ==========================================
   Social Float Component
   ========================================== */

/* Social panel - Light mode override */
.social-panel {
    background: white !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15) !important;
}

.dark .social-panel {
    background: #1f2937 !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}

/* Social links */
.social-link {
    background: #f3f4f6 !important;
    color: #374151 !important;
}

.social-link:hover {
    background: #f97316 !important;
    color: white !important;
}

.dark .social-link {
    background: #374151 !important;
    color: white !important;
}

.dark .social-link:hover {
    background: #fb923c !important;
    color: white !important;
}

/* Social button */
.social-btn {
    background: white !important;
    color: #374151 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

.social-btn:hover {
    background: #f3f4f6 !important;
}

.dark .social-btn {
    background: #1f2937 !important;
    color: white !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

.dark .social-btn:hover {
    background: #374151 !important;
}

/* Scroll top button - works in both modes */
.scroll-top-btn {
    background: rgba(249, 115, 22, 0.95) !important;
}

.scroll-top-btn:hover {
    background: rgba(234, 88, 12, 1) !important;
}

.dark .scroll-top-btn {
    background: rgba(251, 146, 60, 0.95) !important;
}

.dark .scroll-top-btn:hover {
    background: rgba(249, 115, 22, 1) !important;
}

/* ==========================================
   Chat Widget ISA
   ========================================== */

/* Greeting bubble */
.dark .isa-greeting-bubble {
    background: #1f2937 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4) !important;
}

.dark .isa-greeting-bubble::after {
    background: #1f2937 !important;
}

.dark .isa-greeting-text {
    color: #f3f4f6 !important;
}

.dark .isa-greeting-close {
    color: #9ca3af !important;
}

.dark .isa-greeting-close:hover {
    background: #374151 !important;
    color: #f3f4f6 !important;
}

/* Chat bubble (botón flotante) */
.dark .isa-chat-bubble {
    background: #1f2937 !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4), 0 0 0 4px rgba(251, 146, 60, 0.2) !important;
}

.dark .isa-chat-bubble:hover {
    box-shadow: 0 12px 48px rgba(0, 0, 0, 0.5), 0 0 0 4px rgba(251, 146, 60, 0.3) !important;
}

.dark .isa-chat-bubble.active {
    background: #1f2937 !important;
}

.dark .isa-chat-bubble .isa-close-icon {
    color: #fb923c !important;
}

.dark .isa-notification-badge {
    border-color: #1f2937 !important;
}

/* Chat window */
.dark .isa-chat-window {
    background: #111827 !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6) !important;
}

/* Chat header - keep gradient but adjust for dark mode */
.dark .isa-chat-header {
    background: linear-gradient(135deg, #fb923c, #f97316) !important;
}

/* Chat messages area */
.dark .isa-chat-messages {
    background: #0f172a !important;
}

.dark .isa-chat-messages::-webkit-scrollbar-thumb {
    background: #4b5563 !important;
}

/* Message bubbles */
.dark .isa-message.bot .isa-message-content {
    background: #1f2937 !important;
    color: #f3f4f6 !important;
}

.dark .isa-message.user .isa-message-content {
    background: #fb923c !important;
    color: white !important;
}

.dark .isa-avatar-small {
    background: rgba(251, 146, 60, 0.2) !important;
}

.dark .isa-message.user .isa-avatar-small {
    background: #374151 !important;
}

/* Typing indicator */
.dark .isa-typing-indicator {
    background: transparent !important;
}

.dark .isa-typing-dots span {
    background: #9ca3af !important;
}

/* Chat input */
.dark .isa-chat-input {
    background: #1f2937 !important;
    border-top-color: #374151 !important;
}

.dark .isa-chat-input .form-control {
    background: #0f172a !important;
    border-color: #374151 !important;
    color: #f3f4f6 !important;
}

.dark .isa-chat-input .form-control:focus {
    background: #111827 !important;
    border-color: #fb923c !important;
    color: #f3f4f6 !important;
}

.dark .isa-chat-input .form-control::placeholder {
    color: #6b7280 !important;
}

.dark .isa-send-btn {
    background: #fb923c !important;
    border-color: #fb923c !important;
}

.dark .isa-send-btn:hover {
    background: #f97316 !important;
    border-color: #f97316 !important;
}

/* Quick replies buttons */
.dark .isa-quick-reply-btn {
    background: #1f2937 !important;
    border-color: #374151 !important;
    color: #f3f4f6 !important;
}

.dark .isa-quick-reply-btn:hover {
    background: #374151 !important;
    border-color: #fb923c !important;
    color: #fb923c !important;
}

/* Product suggestions in chat */
.dark .isa-product-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .isa-product-card:hover {
    border-color: #fb923c !important;
}

.dark .isa-product-name {
    color: #f3f4f6 !important;
}

.dark .isa-product-price {
    color: #fb923c !important;
}

/* ==========================================
   Remaining Components Dark Mode
   ========================================== */

/* Flyers Grid Section */
html.dark .flyers-section {
    background: #0f172a !important;
    background-color: #0f172a !important;
    background-image: none !important;
}

.dark .flyer-card {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

.dark .flyer-card:hover {
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.6);
}

/* Categories Grid */
.dark .gradient-bg {
    background: #0f172a !important; /* Fondo sólido consistente con otras secciones */
}

.dark .category-card-hover {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .category-card-hover:hover {
    box-shadow: 0 20px 40px rgba(251, 146, 60, 0.2) !important;
    border-color: rgba(251, 146, 60, 0.5) !important;
}

.dark .category-card-hover .text-gray-700 {
    color: #f3f4f6 !important;
}

.dark .category-arrow-slide {
    background: rgba(251, 146, 60, 0.2) !important;
    color: #fb923c !important;
}

/* Why Choose Us Section */
html.dark .why-choose-section {
    background: #111827 !important;
    background-color: #111827 !important;
    background-image: none !important;
}

.dark .benefit-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .benefit-card:hover {
    border-color: #fb923c !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6) !important;
}

.dark .benefit-title {
    color: #f9fafb !important;
}

.dark .benefit-description {
    color: #d1d5db !important;
}

.dark .benefit-icon {
    background: rgba(251, 146, 60, 0.2) !important;
    color: #fb923c !important;
}

/* CTA Button in Why Choose Us */
.dark .btn-primary-cta {
    background: linear-gradient(135deg, #fb923c 0%, #f97316 100%) !important;
    color: #ffffff !important;
}

.dark .btn-primary-cta:hover {
    color: #ffffff !important;
    box-shadow: 0 12px 32px rgba(251, 146, 60, 0.4) !important;
}

/* Trust Section */
html.dark .trust-section {
    background: linear-gradient(135deg, #0f172a 0%, #111827 100%) !important;
    background-color: #0f172a !important;
}

.dark .trust-section::before {
    background: radial-gradient(circle, rgba(251, 146, 60, 0.08) 0%, transparent 70%) !important;
}

.dark .trust-content {
    color: #f3f4f6 !important;
}

.dark .trust-badge {
    background: rgba(251, 146, 60, 0.2) !important;
    color: #fb923c !important;
}

.dark .trust-title {
    color: #f9fafb !important;
}

.dark .trust-description {
    color: #d1d5db !important;
}

.dark .trust-feature {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .trust-feature:hover {
    border-color: #fb923c !important;
}

.dark .trust-feature-title {
    color: #f9fafb !important;
}

.dark .trust-feature-text {
    color: #9ca3af !important;
}

.dark .trust-icon {
    background: rgba(251, 146, 60, 0.2) !important;
    color: #fb923c !important;
}

/* Testimonials Section */
html.dark .testimonials-display-section {
    background: #111827 !important;
    background-color: #111827 !important;
    background-image: none !important;
}

.dark .testimonial-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .testimonial-card::before {
    color: rgba(251, 146, 60, 0.08) !important;
}

.dark .testimonial-card:hover {
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6) !important;
    border-color: rgba(251, 146, 60, 0.3) !important;
}

.dark .testimonial-text {
    color: #d1d5db !important;
}

.dark .testimonial-author {
    color: #f9fafb !important;
}

.dark .testimonial-rating svg {
    fill: #fb923c !important;
}

/* Testimonials Form Section */
html.dark .testimonials-form-section {
    background: #111827 !important;
    background-color: #111827 !important;
    background-image: none !important;
}

.dark .testimonial-form-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .testimonial-form {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .testimonial-form .form-control,
.dark .testimonial-form-card .form-control,
.dark .testimonials-form-section .form-control {
    background: #0f172a !important;
    border-color: #374151 !important;
    color: #f3f4f6 !important;
}

.dark .testimonial-form .form-control:focus,
.dark .testimonial-form-card .form-control:focus,
.dark .testimonials-form-section .form-control:focus {
    background: #111827 !important;
    border-color: #fb923c !important;
}

.dark .testimonial-form-card textarea.form-control,
.dark .testimonials-form-section textarea.form-control {
    background: #0f172a !important;
    border-color: #374151 !important;
    color: #f3f4f6 !important;
}

.dark .testimonial-form .form-label,
.dark .testimonial-form-card .form-label,
.dark .testimonials-form-section .form-label {
    color: #f3f4f6 !important;
}

.dark .testimonial-form-header .testimonial-title {
    color: #f9fafb !important;
}

.dark .testimonial-form-header .testimonial-description {
    color: #d1d5db !important;
}

.dark .testimonial-badge {
    background: rgba(251, 146, 60, 0.2) !important;
    color: #fb923c !important;
}

.dark .star-rating label {
    color: #4b5563 !important;
}

.dark .star-rating input:checked ~ label {
    color: #fb923c !important;
}

.dark .form-text {
    color: #9ca3af !important;
}

/* Brands Carousel */
html.dark .brands-section {
    background: #0f172a !important;
    background-color: #0f172a !important;
    background-image: none !important;
}

.dark .brand-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .brand-card:hover {
    border-color: #fb923c !important;
}

.dark .brand-image {
    filter: brightness(0.9) !important;
}

.dark .brand-card:hover .brand-image {
    filter: brightness(1) !important;
}

/* Location Contact Section */
html.dark .location-contact-section {
    background: #111827 !important;
    background-color: #111827 !important;
    background-image: none !important;
}

html.dark .location-section {
    background: #111827 !important;
    background-color: #111827 !important;
    background-image: none !important;
}

.dark .locations-wrapper {
    background: transparent !important;
}

.dark .location-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .contact-action-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .contact-action-card:hover {
    border-color: #fb923c !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

.dark .contact-label,
.dark .location-name,
.dark .locations-title,
.dark .schedule-header span {
    color: #f9fafb !important;
}

.dark .contact-value,
.dark .location-address,
.dark .location-contact,
.dark .schedule-day,
.dark .schedule-hours {
    color: #d1d5db !important;
}

.dark .schedule-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark .location-directions {
    color: #fb923c !important;
}

.dark .location-directions:hover {
    color: #f97316 !important;
}

.dark .location-card:hover {
    border-color: #fb923c !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6) !important;
}

.dark .location-title {
    color: #f9fafb !important;
}

.dark .location-address {
    color: #d1d5db !important;
}

.dark .location-phone {
    color: #fb923c !important;
}

.dark .location-icon {
    background: rgba(251, 146, 60, 0.2) !important;
    color: #fb923c !important;
}

/* CTA Section */
html.dark .cta-section {
    background: #111827 !important;
    background-color: #111827 !important;
    background-image: none !important;
}

.dark .cta-section::before {
    background: radial-gradient(circle, rgba(251, 146, 60, 0.1) 0%, transparent 70%) !important;
}

.dark .cta-wrapper {
    background: transparent !important;
}

.dark .cta-content {
    color: #f3f4f6 !important;
}

.dark .cta-badge {
    background: rgba(251, 146, 60, 0.2) !important;
    color: #fb923c !important;
}

.dark .cta-title {
    color: #f9fafb !important;
}

.dark .cta-description,
.dark .cta-subtitle {
    color: #d1d5db !important;
}

.dark .btn-cta-primary {
    background: linear-gradient(135deg, #fb923c 0%, #f97316 100%) !important;
    color: #ffffff !important;
    border-color: #fb923c !important;
}

.dark .btn-cta-primary:hover {
    background: linear-gradient(135deg, #f97316 0%, #ea580c 100%) !important;
    box-shadow: 0 12px 32px rgba(251, 146, 60, 0.4) !important;
    color: #ffffff !important;
}

.dark .btn-cta-secondary {
    background: transparent !important;
    color: #fb923c !important;
    border-color: #fb923c !important;
}

.dark .btn-cta-secondary:hover {
    background: #fb923c !important;
    color: #ffffff !important;
    border-color: #fb923c !important;
}

.dark .cta-contact-info {
    color: #d1d5db !important;
}

.dark .cta-contact-item {
    color: #d1d5db !important;
}

.dark .cta-contact-item svg {
    color: #fb923c !important;
}

.dark .cta-button {
    background: #fb923c !important;
    border-color: #fb923c !important;
}

.dark .cta-button:hover {
    background: #f97316 !important;
    border-color: #f97316 !important;
}

/* Recently Viewed Section - uses productGridMinimal, already styled */

/* ==========================================
   Global Links Dark Mode
   ========================================== */

/* All links in dark mode should be white */
.dark a {
    color: #ffffff !important;
}

.dark a:not(.btn-outline-orange):not(.btn-primary-cta):not(.btn-view-all):not(.btn-arrow-move):not(.btn-testimonial-more):not(.btn-cta-primary):not(.btn-cta-secondary):hover {
    color: #fb923c !important;
}

/* Links in specific contexts */
.dark .navbar a {
    color: #ffffff !important;
}

.dark .navbar a:hover {
    color: #fb923c !important;
}

.dark .footer a {
    color: #ffffff !important;
}

.dark .footer a:hover {
    color: #fb923c !important;
}

/* Navigation links */
.dark .nav-link {
    color: #ffffff !important;
}

.dark .nav-link:hover {
    color: #fb923c !important;
}

/* Dropdown links */
.dark .dropdown-item {
    color: #ffffff !important;
}

.dark .dropdown-item:hover {
    color: #fb923c !important;
    background-color: #374151 !important;
}

/* Button links */
.dark a.btn {
    color: #ffffff !important;
}

/* Exception for button links with specific classes */
.dark a.btn-arrow-move {
    background-color: #1f2937 !important; /* Fondo oscuro en lugar de blanco */
    border-color: #fb923c !important;
    color: #fb923c !important;
}

.dark a.btn-arrow-move:hover {
    background-color: #fb923c !important;
    border-color: #fb923c !important;
    color: white !important;
}

/* Product links */
.dark .product-card-minimal {
    color: inherit !important;
}

/* Category links */
.dark .category-card-hover {
    color: inherit !important;
}

/* Banner links */
.dark .banner-card,
.dark .flyer-card,
.dark .hero-slide-link {
    color: inherit !important;
}

