/* ESTILOS BASE */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
        }
        
        :root {
            --azul-farmacia: #0A5C8A;
            --azul-claro: #4A8CB0;
            --verde-salud: #2E7D32;
            --whatsapp: #25D366;
            --instagram: #E4405F;
            --facebook: #1877F2;
            --email: #EA4335;
            --blanco: #FFFFFF;
            --gris-claro: #F8F9FA;
            --gris-medio: #E9ECEF;
            --gris-oscuro: #495057;
            --sombra: 0 4px 12px rgba(0,0,0,0.08);
            --sombra-hover: 0 8px 24px rgba(0,0,0,0.12);
        }
        
        body {
            background-color: #f9fbfd;
            color: var(--gris-oscuro);
            line-height: 1.6;
        }
        
        .container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 20px;
        }
        
       /* HEADER MÉDICO PROFESIONAL */
.header {
    background: linear-gradient(135deg, #0A5C8A 0%, #083B5A 100%);
    color: var(--blanco);
    padding: 25px 0 20px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    position: relative;
    overflow: hidden;
}

/* Líneas de ECG animadas en el fondo */
.header:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        var(--whatsapp) 10%,
        transparent 20%,
        var(--whatsapp) 30%,
        transparent 40%,
        var(--whatsapp) 50%,
        transparent 60%,
        var(--whatsapp) 70%,
        transparent 80%,
        var(--whatsapp) 90%,
        transparent 100%);
    animation: ecg-line 3s infinite linear;
    z-index: 1;
}

@keyframes ecg-line {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

.header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 25px;
    position: relative;
    z-index: 2;
}

.logo-container {
    display: flex;
    align-items: center;
    gap: 20px;
    background: rgba(255,255,255,0.1);
    backdrop-filter: blur(10px);
    padding: 15px 25px;
    border-radius: 15px;
    border: 1px solid rgba(255,255,255,0.2);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
}

.logo-container:hover {
    background: rgba(255,255,255,0.15);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.15);
}

.logo-img {
    height: 75px;
    width: auto;
    border-radius: 10px;
    background: var(--blanco);
    padding: 8px;
    box-shadow: 0 3px 15px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
}

.logo-container:hover .logo-img {
    transform: rotate(5deg);
}

.logo-text h1 {
    font-size: 1.9rem;
    font-weight: 800;
    line-height: 1.2;
    color: var(--blanco);
    text-shadow: 1px 1px 3px rgba(0,0,0,0.3);
    position: relative;
    padding-bottom: 8px;
    letter-spacing: 0.5px;
}

.logo-text h1:before {
    content: '⚕️';
    margin-right: 10px;
    font-size: 1.6rem;
    animation: heartbeat 1.5s infinite;
}

@keyframes heartbeat {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.2); }
}

.logo-text p {
    opacity: 0.9;
    font-size: 0.95rem;
    margin-top: 8px;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.logo-text p i {
    font-size: 1rem;
    color: var(--whatsapp);
    background: rgba(255,255,255,0.1);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Botón WhatsApp con efecto médico */
.whatsapp-btn {
    background: linear-gradient(135deg, var(--whatsapp) 0%, #1DA851 100%);
    color: var(--blanco);
    text-decoration: none;
    padding: 14px 30px;
    border-radius: 30px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-weight: 700;
    transition: all 0.3s;
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
    border: 2px solid rgba(255,255,255,0.3);
    position: relative;
    overflow: hidden;
}

.whatsapp-btn:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(255,255,255,0.3);
    transform: translate(-50%, -50%);
    transition: width 0.6s, height 0.6s;
}

.whatsapp-btn:hover:before {
    width: 300px;
    height: 300px;
}

.whatsapp-btn span {
    position: relative;
    z-index: 1;
}

.whatsapp-btn i {
    font-size: 1.4rem;
    position: relative;
    z-index: 1;
    animation: ring 2s infinite;
}

@keyframes ring {
    0%, 100% { transform: rotate(0deg); }
    10%, 30%, 50%, 70%, 90% { transform: rotate(-10deg); }
    20%, 40%, 60%, 80% { transform: rotate(10deg); }
}

.whatsapp-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(37, 211, 102, 0.6);
}

/* Partículas de pastillas flotantes */
.floating-pills {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 1;
}

.pill {
    position: absolute;
    font-size: 1.2rem;
    opacity: 0.1;
    animation: float-pill 15s infinite linear;
}

@keyframes float-pill {
    0% {
        transform: translateY(100vh) rotate(0deg);
        opacity: 0;
    }
    10% {
        opacity: 0.1;
    }
    90% {
        opacity: 0.1;
    }
    100% {
        transform: translateY(-100px) rotate(720deg);
        opacity: 0;
    }
}
        
        /* HERO SECTION */
        .hero {
            text-align: center;
            padding: 60px 20px;
            background: linear-gradient(rgba(255,255,255,0.95), rgba(255,255,255,0.95)), 
                        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><circle cx="50" cy="50" r="2" fill="%230A5C8A" opacity="0.1"/></svg>');
        }
        
        .hero h2 {
            color: var(--azul-farmacia);
            font-size: 2.2rem;
            margin-bottom: 15px;
            font-weight: 700;
        }
        
        .hero p {
            color: var(--gris-oscuro);
            font-size: 1.1rem;
            max-width: 600px;
            margin: 0 auto 30px;
        }
        
        .search-container {
            max-width: 600px;
            margin: 30px auto 0;
            position: relative;
        }
        
        .search-box {
            display: flex;
            background: var(--blanco);
            border-radius: 50px;
            overflow: hidden;
            box-shadow: var(--sombra);
            border: 2px solid var(--gris-medio);
            transition: all 0.3s;
        }
        
        .search-box:focus-within {
            border-color: var(--azul-farmacia);
            box-shadow: 0 0 0 3px rgba(10, 92, 138, 0.1);
        }
        
        .search-box input {
            flex: 1;
            border: none;
            padding: 16px 25px;
            font-size: 1rem;
            outline: none;
        }
        
        .search-btn {
            background: var(--azul-farmacia);
            color: var(--blanco);
            border: none;
            padding: 0 30px;
            cursor: pointer;
            font-weight: 600;
            transition: all 0.3s;
            display: flex;
            align-items: center;
            gap: 10px;
        }
        
        .search-btn:hover {
            background: var(--azul-claro);
        }
        
        /* SUGERENCIAS DE BÚSQUEDA */
        .suggestions-container {
            position: absolute;
            top: 100%;
            left: 0;
            right: 0;
            background: var(--blanco);
            border-radius: 10px;
            box-shadow: var(--sombra-hover);
            margin-top: 5px;
            max-height: 300px;
            overflow-y: auto;
            display: none;
            z-index: 100;
        }
        
        .suggestion-item {
            padding: 12px 20px;
            cursor: pointer;
            border-bottom: 1px solid var(--gris-medio);
            transition: all 0.2s;
            display: flex;
            align-items: center;
            gap: 10px;
        }
        
        .suggestion-item:hover {
            background: var(--gris-claro);
        }
        
        .suggestion-item:last-child {
            border-bottom: none;
        }
        
        .suggestion-icon {
            font-size: 1.2rem;
            opacity: 0.7;
        }
        
        /* CARRUSEL DE PRODUCTOS DESTACADOS */
        .destacados {
            padding: 60px 0 40px;
            background: linear-gradient(135deg, #f0f7ff 0%, #e6f2ff 100%);
            display: block;
        }
        
        .section-title {
            text-align: center;
            color: var(--azul-farmacia);
            font-size: 1.8rem;
            margin-bottom: 40px;
            font-weight: 700;
            position: relative;
        }
        
        .section-title:after {
            content: '';
            display: block;
            width: 60px;
            height: 3px;
            background: var(--azul-farmacia);
            margin: 10px auto;
            border-radius: 2px;
        }
        
        .carousel-wrapper {
            position: relative;
            max-width: 1200px;
            margin: 0 auto;
            overflow: hidden;
        }
        
        .carousel-container {
            width: 100%;
            overflow: hidden;
        }
        
        .carousel-track {
            display: flex;
            transition: transform 0.5s ease-in-out;
        }
        
        .carousel-slide {
            flex: 0 0 25%; /* 4 productos por vista = 25% cada uno */
            padding: 0 15px;
            box-sizing: border-box;
        }
        
        .carousel-btn {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: var(--blanco);
            border: none;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            color: var(--azul-farmacia);
            box-shadow: var(--sombra);
            transition: all 0.3s;
            z-index: 10;
        }
        
        .carousel-btn:hover {
            background: var(--azul-farmacia);
            color: var(--blanco);
            transform: translateY(-50%) scale(1.1);
        }
        
        .carousel-btn.prev {
            left: 10px;
        }
        
        .carousel-btn.next {
            right: 10px;
        }
        
        .carousel-dots {
            display: flex;
            justify-content: center;
            gap: 10px;
            margin-top: 30px;
        }
        
        .carousel-dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: var(--gris-medio);
            border: none;
            cursor: pointer;
            transition: all 0.3s;
            padding: 0;
        }
        
        .carousel-dot.active {
            background: var(--azul-farmacia);
            transform: scale(1.2);
        }
        
        /* TARJETA DE PRODUCTO DESTACADO */
        .destacado-card {
            background: var(--blanco);
            border-radius: 15px;
            overflow: hidden;
            box-shadow: var(--sombra);
            transition: all 0.3s;
            border: 1px solid var(--gris-medio);
            height: 100%;
            max-width: 100%;
        }
        
        .destacado-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--sombra-hover);
            border-color: var(--azul-farmacia);
        }
        
        .destacado-badge {
            position: absolute;
            top: 15px;
            right: 15px;
            background: linear-gradient(135deg, #FF4081 0%, #FF6B9D 100%);
            color: var(--blanco);
            padding: 6px 12px;
            border-radius: 20px;
            font-size: 0.8rem;
            font-weight: 600;
            z-index: 2;
        }
        
        .destacado-imagen {
            height: 160px;
            background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 20px;
        }
        
        .destacado-imagen span {
            font-size: 3.5rem;
            opacity: 0.9;
        }
        
        .destacado-contenido {
            padding: 20px;
            display: flex;
            flex-direction: column;
        }
        
        .destacado-titulo {
            font-size: 1.1rem;
            font-weight: 600;
            color: var(--azul-farmacia);
            margin-bottom: 10px;
            line-height: 1.3;
            height: 2.6em;
            overflow: hidden;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
        }
        
        .destacado-desc {
            color: var(--gris-oscuro);
            font-size: 0.85rem;
            margin-bottom: 15px;
            line-height: 1.4;
            height: 4.2em;
            overflow: hidden;
            display: -webkit-box;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
        }
        
        .destacado-precio {
            display: flex;
            align-items: baseline;
            gap: 10px;
            margin-bottom: 20px;
        }
        
        .destacado-actual {
            font-size: 1.3rem;
            font-weight: 700;
            color: var(--verde-salud);
        }
        
        .destacado-anterior {
            text-decoration: line-through;
            color: var(--gris-oscuro);
            font-size: 0.85rem;
            opacity: 0.7;
        }
        
        /* BOTÓN WHATSAPP ELEGANTE */
        .btn-whatsapp-producto {
            background: linear-gradient(135deg, var(--whatsapp) 0%, #128C7E 100%);
            color: var(--blanco);
            border: none;
            border-radius: 8px;
            padding: 14px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            width: 100%;
            font-size: 0.9rem;
            box-shadow: 0 4px 12px rgba(37, 211, 102, 0.2);
        }
        
        .btn-whatsapp-producto:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(37, 211, 102, 0.3);
        }
        
        /* CATEGORÍAS MEJORADAS */
        .categorias {
            padding: 60px 0 40px;
        }
        
        .categorias-grid {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            gap: 12px;
            margin-top: 25px;
        }
        
        .categoria-btn {
            padding: 10px 20px;
            background: var(--blanco);
            border: 2px solid var(--gris-medio);
            border-radius: 25px;
            cursor: pointer;
            font-weight: 500;
            transition: all 0.3s;
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 0.9rem;
            white-space: nowrap;
        }
        
        .categoria-btn:hover, .categoria-btn.active {
            background: var(--azul-farmacia);
            color: var(--blanco);
            border-color: var(--azul-farmacia);
            transform: translateY(-2px);
        }
        
        /* CATÁLOGO COMPLETO */
        .catalogo {
            padding: 40px 0 80px;
        }
        
        .productos-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
            gap: 30px;
            margin-top: 30px;
        }
        
        .producto-card {
            background: var(--blanco);
            border-radius: 15px;
            overflow: hidden;
            box-shadow: var(--sombra);
            transition: all 0.3s;
            position: relative;
            border: 1px solid var(--gris-medio);
        }
        
        .producto-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--sombra-hover);
            border-color: var(--azul-farmacia);
        }
        
        .producto-badge {
            position: absolute;
            top: 15px;
            right: 15px;
            background: var(--verde-salud);
            color: var(--blanco);
            padding: 6px 12px;
            border-radius: 20px;
            font-size: 0.8rem;
            font-weight: 600;
            z-index: 2;
        }
        
        .producto-badge.oferta {
            background: linear-gradient(135deg, #FF4081 0%, #FF6B9D 100%);
        }
        
        .producto-imagen {
            height: 200px;
            background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 30px;
        }
        
        .producto-imagen span {
            font-size: 4rem;
            opacity: 0.9;
        }
        
        .producto-contenido {
            padding: 25px;
            display: flex;
            flex-direction: column;
        }
        
        .producto-titulo {
            font-size: 1.3rem;
            font-weight: 600;
            color: var(--azul-farmacia);
            margin-bottom: 12px;
            line-height: 1.3;
        }
        
        .producto-desc {
            color: var(--gris-oscuro);
            font-size: 0.95rem;
            margin-bottom: 20px;
            line-height: 1.5;
        }
        
        .producto-precio {
            display: flex;
            align-items: baseline;
            gap: 15px;
            margin-bottom: 25px;
        }
        
        .precio-actual {
            font-size: 1.5rem;
            font-weight: 700;
            color: var(--verde-salud);
        }
        
        .precio-anterior {
            text-decoration: line-through;
            color: var(--gris-oscuro);
            font-size: 0.95rem;
            opacity: 0.7;
        }
        
        /* PAGINACIÓN */
        .paginacion {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 10px;
            margin-top: 40px;
            flex-wrap: wrap;
        }
        
        .paginacion-btn {
            padding: 10px 18px;
            background: var(--blanco);
            border: 2px solid var(--gris-medio);
            border-radius: 8px;
            color: var(--gris-oscuro);
            cursor: pointer;
            transition: all 0.3s;
            font-weight: 500;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }
        
        .paginacion-btn:hover:not(.disabled) {
            background: var(--azul-farmacia);
            color: var(--blanco);
            border-color: var(--azul-farmacia);
            transform: translateY(-2px);
        }
        
        .paginacion-btn.disabled {
            opacity: 0.5;
            cursor: not-allowed;
        }
        
        .paginacion-info {
            color: var(--gris-oscuro);
            margin: 0 10px;
        }
        
        .paginacion-numeros {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
        }
        
        .paginacion-numero {
            padding: 8px 14px;
            background: var(--blanco);
            border: 2px solid var(--gris-medio);
            border-radius: 6px;
            color: var(--gris-oscuro);
            cursor: pointer;
            transition: all 0.3s;
            text-decoration: none;
        }
        
        .paginacion-numero:hover,
        .paginacion-numero.active {
            background: var(--azul-farmacia);
            color: var(--blanco);
            border-color: var(--azul-farmacia);
        }
        
        /* FOOTER MEJORADO */
        .footer {
            background: linear-gradient(135deg, var(--azul-farmacia) 0%, #083B5A 100%);
            color: var(--blanco);
            padding: 50px 0 20px;
        }
        
        .footer-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 40px;
            margin-bottom: 40px;
        }
        
        .footer-col h3 {
            font-size: 1.3rem;
            margin-bottom: 20px;
            position: relative;
            padding-bottom: 10px;
        }
        
        .footer-col h3:after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 40px;
            height: 3px;
            background: var(--whatsapp);
            border-radius: 2px;
        }
        
        .footer-logo {
            display: flex;
            align-items: center;
            gap: 15px;
            margin-bottom: 20px;
        }
        
        .footer-logo-img {
            height: 60px;
            width: auto;
        }
        
        .footer-lista {
            list-style: none;
        }
        
        .footer-lista li {
            margin-bottom: 12px;
            display: flex;
            align-items: center;
            gap: 12px;
            font-size: 0.95rem;
            opacity: 0.9;
        }
        
        /* REDES SOCIALES */
        .redes-sociales {
            display: flex;
            gap: 15px;
            margin-top: 20px;
        }
        
        .social-icon {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--blanco);
            text-decoration: none;
            transition: all 0.3s;
            font-size: 1.2rem;
        }
        
        .social-icon.facebook {
            background: var(--facebook);
        }
        
        .social-icon.instagram {
            background: linear-gradient(45deg, #405DE6, #5851DB, #833AB4, #C13584, #E1306C, #FD1D1D);
        }
        
        .social-icon.whatsapp {
            background: var(--whatsapp);
        }
        
        .social-icon.email {
            background: var(--email);
        }
        
        .social-icon:hover {
            transform: translateY(-3px);
            box-shadow: 0 4px 12px rgba(0,0,0,0.2);
        }
        
        /* MÉTODOS DE PAGO */
        .metodos-pago {
            display: flex;
            flex-wrap: wrap;
            gap: 15px;
            margin-top: 20px;
        }
        
        .metodo-pago {
            background: rgba(255, 255, 255, 0.1);
            border-radius: 8px;
            padding: 8px 15px;
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 0.9rem;
            transition: all 0.3s;
        }
        
        .metodo-pago:hover {
            background: rgba(255, 255, 255, 0.2);
            transform: translateY(-2px);
        }
        
        .metodo-pago i {
            font-size: 1.2rem;
        }
        
        /* BOTÓN CORREO */
        .btn-email {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            background: rgba(255, 255, 255, 0.1);
            color: var(--blanco);
            text-decoration: none;
            padding: 10px 20px;
            border-radius: 25px;
            margin-top: 15px;
            transition: all 0.3s;
        }
        
        .btn-email:hover {
            background: rgba(255, 255, 255, 0.2);
            transform: translateY(-2px);
        }
        
        .footer-bottom {
            text-align: center;
            padding-top: 25px;
            border-top: 1px solid rgba(255,255,255,0.1);
            font-size: 0.9rem;
            opacity: 0.8;
        }
        
        /* SIN RESULTADOS */
        .sin-resultados {
            text-align: center;
            padding: 80px 20px;
            grid-column: 1 / -1;
        }
        
        .sin-resultados span {
            font-size: 5rem;
            color: var(--gris-medio);
            margin-bottom: 20px;
            display: block;
        }
        
        /* CONTADOR DE RESULTADOS */
        .resultados-info {
            text-align: center;
            margin-bottom: 20px;
            color: var(--gris-oscuro);
            font-size: 1.1rem;
        }
        
        .resultados-info span {
            color: var(--azul-farmacia);
            font-weight: 600;
        }
        
        /* RESPONSIVE PARA CARRUSEL */
        @media (max-width: 1200px) {
            .carousel-slide {
                flex: 0 0 33.333%; /* 3 productos por vista */
            }
        }
        
        @media (max-width: 992px) {
            .carousel-slide {
                flex: 0 0 50%; /* 2 productos por vista */
            }
            
            .destacado-imagen {
                height: 140px;
            }
            
            .destacado-imagen span {
                font-size: 3rem;
            }
            
            .destacado-titulo {
                font-size: 1rem;
                height: 3em;
            }
            
            .destacado-desc {
                font-size: 0.8rem;
                height: 4.8em;
            }
            
            .categoria-btn {
                padding: 8px 16px;
                font-size: 0.85rem;
            }
            
            .footer-grid {
                gap: 30px;
            }
        }
        
        @media (max-width: 768px) {
            .carousel-slide {
                flex: 0 0 100%; /* 1 producto por vista */
            }
            
            .carousel-btn {
                width: 40px;
                height: 40px;
                font-size: 1rem;
            }
            
            .carousel-btn.prev {
                left: 5px;
            }
            
            .carousel-btn.next {
                right: 5px;
            }
            
            .header-content {
                justify-content: center;
                text-align: center;
            }
            
            .logo-container {
                justify-content: center;
            }
            
            .contacto-header {
                width: 100%;
                justify-content: center;
            }
            
            .hero h2 {
                font-size: 1.8rem;
            }
            
            .productos-grid {
                grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
                gap: 20px;
            }
            
            .categorias-grid {
                justify-content: flex-start;
                overflow-x: auto;
                padding-bottom: 10px;
                gap: 8px;
            }
            
            .categoria-btn {
                white-space: nowrap;
                font-size: 0.8rem;
                padding: 8px 14px;
            }
            
            .footer-grid {
                grid-template-columns: 1fr;
                gap: 30px;
            }
            
            .redes-sociales {
                justify-content: center;
            }
            
            .metodos-pago {
                justify-content: center;
            }
        }
        
        @media (max-width: 480px) {
            .productos-grid {
                grid-template-columns: 1fr;
            }
            
            .hero {
                padding: 40px 20px;
            }
            
            .hero h2 {
                font-size: 1.5rem;
            }
            
            .logo-img {
                height: 60px;
            }
            
            .destacado-card {
                margin: 0 10px;
            }
            
            .carousel-slide {
                padding: 0 10px;
            }
            
            .categoria-btn {
                font-size: 0.75rem;
                padding: 6px 12px;
            }
            
            .social-icon {
                width: 35px;
                height: 35px;
                font-size: 1rem;
            }
            
            .metodo-pago {
                padding: 6px 12px;
                font-size: 0.8rem;
            }
        }
        
        /* Diseño minimalista moderno */
        .social-icon.minimal {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--blanco);
            text-decoration: none;
            transition: all 0.3s ease;
            font-size: 1.3rem;
            position: relative;
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.2);
        }
        
        .social-icon.minimal i {
            position: relative;
            z-index: 2;
        }
        
        /* Efecto de fondo animado */
        .social-icon.minimal:before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            border-radius: 50%;
            background: conic-gradient(from 0deg, 
                var(--azul-farmacia) 0%, 
                var(--azul-claro) 25%, 
                var(--blanco) 50%, 
                var(--azul-claro) 75%, 
                var(--azul-farmacia) 100%);
            opacity: 0;
            transition: opacity 0.3s;
            z-index: 1;
        }
        
        .social-icon.minimal.facebook:hover:before {
            background: conic-gradient(from 0deg, #1877F2, #0A5CBF, #fff, #0A5CBF, #1877F2);
            opacity: 1;
        }
        
        .social-icon.minimal.instagram:hover:before {
            background: conic-gradient(from 0deg, #405DE6, #5851DB, #833AB4, #C13584, #E1306C, #FD1D1D);
            opacity: 1;
        }
        
        .social-icon.minimal:hover {
            transform: translateY(-3px);
            box-shadow: 0 8px 20px rgba(0,0,0,0.15);
            border-color: rgba(255, 255, 255, 0.4);
        }
        
        /* Efecto de brillo interno */
        .social-icon.minimal:after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 60%;
            height: 60%;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0) 70%);
            opacity: 0;
            transition: opacity 0.3s;
        }
        
        .social-icon.minimal:hover:after {
            opacity: 1;
        }
		
		/* MEJORAS PARA EL BUSCADOR */
.search-box {
    position: relative;
}

.search-box:focus-within {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(10, 92, 138, 0.15);
}

/* ANIMACIÓN PARA SUGERENCIAS */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

.suggestions-container {
    animation: fadeIn 0.3s ease;
}

/* EFECTO PARA ITEMS DE SUGERENCIAS */
.suggestion-item {
    transition: all 0.2s ease;
}

.suggestion-item:hover {
    background: linear-gradient(135deg, #f0f7ff 0%, #e6f2ff 100%);
    transform: translateX(5px);
}

/* LOADING PARA BUSCADOR */
.search-loading {
    display: none;
    position: absolute;
    right: 70px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--azul-farmacia);
}

/* ÍCONO DE VOZ (opcional) */
.voice-search {
    background: none;
    border: none;
    color: var(--azul-farmacia);
    cursor: pointer;
    padding: 0 15px;
    font-size: 1.1rem;
    transition: all 0.3s;
}

.voice-search:hover {
    color: var(--azul-claro);
    transform: scale(1.1);
}

/* BOTÓN DE BÚSQUEDA AVANZADA */
.advanced-search {
    margin-top: 15px;
    text-align: center;
}

.advanced-search-btn {
    background: none;
    border: 2px solid var(--gris-medio);
    color: var(--gris-oscuro);
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.3s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.advanced-search-btn:hover {
    border-color: var(--azul-farmacia);
    color: var(--azul-farmacia);
    background: rgba(10, 92, 138, 0.05);
}

/* RESPONSIVE PARA BUSCADOR */
@media (max-width: 768px) {
    .search-box input {
        font-size: 16px; /* Evita zoom en iOS */
    }
    
    .suggestions-container {
        position: fixed;
        left: 20px;
        right: 20px;
        max-height: 50vh;
    }
}
/* ESTILOS PARA LA BÚSQUEDA DINÁMICA */
.search-loading {
    display: none;
    position: absolute;
    right: 70px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--azul-farmacia);
}

.buscador-contenedor {
    position: relative;
    display: flex;
    align-items: center;
}

.boton-limpiar {
    position: absolute;
    right: 80px;
    background: none;
    border: none;
    color: var(--gris-oscuro);
    cursor: pointer;
    font-size: 1.1rem;
    opacity: 0.7;
    transition: all 0.3s;
    display: none;
}

.boton-limpiar:hover {
    opacity: 1;
    color: var(--azul-farmacia);
}

.buscador:not(:placeholder-shown) + .boton-limpiar {
    display: block;
}

/* ANIMACIÓN PARA RESULTADOS */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.producto-card {
    animation: fadeInUp 0.5s ease forwards;
}

.producto-card:nth-child(1) { animation-delay: 0.1s; }
.producto-card:nth-child(2) { animation-delay: 0.2s; }
.producto-card:nth-child(3) { animation-delay: 0.3s; }
.producto-card:nth-child(4) { animation-delay: 0.4s; }
.producto-card:nth-child(5) { animation-delay: 0.5s; }

/* ========== BOTÓN LIMPIAR MEJORADO ========== */
#btn-limpiar {
    background: linear-gradient(135deg, #ff6b6b 0%, #ee5a52 100%);
    color: white;
    border: none;
    padding: 0 25px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

#btn-limpiar:hover {
    background: linear-gradient(135deg, #ff5252 0%, #d32f2f 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(211, 47, 47, 0.3);
}

#btn-limpiar i {
    font-size: 1rem;
}

/* Animación para mostrar/ocultar botón */
#btn-limpiar {
    animation: fadeIn 0.3s ease;
}

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



.destacado-original.tachado {
    text-decoration: line-through;
    color: #999;
    font-size: 0.9rem;
}

.destacado-actual.precio-oferta {
    color: #ff4444;
    font-weight: bold;
    font-size: 1.2rem;
}

.destacado-descuento {
    background: #ff4444;
    color: white;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: bold;
}

/* MEJORAS PARA EL CARRUSEL */
.carousel-slide {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.carousel-slide:hover {
    transform: translateY(-5px);
}

.destacado-card {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    background: white;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    height: 100%;
    transition: all 0.3s ease;
}

.destacado-card:hover {
    box-shadow: 0 8px 20px rgba(0,0,0,0.12);
}

.destacado-imagen {
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f8f9ff, #e8f4ff);
    overflow: hidden;
}

.destacado-imagen img {
    max-height: 140px;
    max-width: 140px;
    object-fit: contain;
}

.destacado-imagen span {
    font-size: 3.5rem;
}
/* BADGE DE OFERTA PARA CATEGORÍAS - ESQUINA SUPERIOR DERECHA */
.badge-oferta-container {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 10;
}

.badge-oferta.small.right-top {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, #ff4444, #ff6b6b);
    color: white;
    border-radius: 50%;
    font-size: 14px;
    font-weight: bold;
    box-shadow: 0 3px 8px rgba(255, 68, 68, 0.4);
    animation: pulse-oferta-small 1.5s infinite alternate;
    cursor: pointer;
    transition: all 0.3s ease;
}

.badge-oferta.small.right-top:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(255, 68, 68, 0.6);
}

@keyframes pulse-oferta-small {
    0% {
        transform: scale(1);
        box-shadow: 0 3px 8px rgba(255, 68, 68, 0.4);
    }
    100% {
        transform: scale(1.05);
        box-shadow: 0 4px 12px rgba(255, 68, 68, 0.6);
    }
}

/* ESTILOS DE PRECIO PARA OFERTAS */
.precio-actual.oferta-color {
    color: #ff4444;
    font-weight: bold;
    font-size: 1.25rem;
}

.precio-original.tachado {
    text-decoration: line-through;
    color: #999;
    font-size: 0.9rem;
    margin-right: 5px;
}

.descuento-badge {
    background: #ff4444;
    color: white;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.75rem;
    font-weight: bold;
    margin-left: 8px;
    display: inline-block;
}

/* MEJORAS PARA LAS TARJETAS DE PRODUCTO */
.producto-card {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    background: white;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.producto-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.producto-card:hover .badge-oferta.small.right-top {
    animation: rotate-badge 0.5s ease;
}

@keyframes rotate-badge {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.producto-imagen {
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f8f9ff, #e8f4ff);
    overflow: hidden;
    padding: 20px;
    border-bottom: 1px solid #f0f0f0;
}

.producto-imagen img {
    max-height: 140px;
    max-width: 140px;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.producto-card:hover .producto-imagen img {
    transform: scale(1.05);
}

.producto-imagen span {
    font-size: 3rem;
}

.producto-contenido {
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.producto-titulo {
    font-size: 1.1rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
    line-height: 1.3;
    height: 2.6em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.producto-desc {
    color: #666;
    font-size: 0.9rem;
    line-height: 1.4;
    margin-bottom: 15px;
    flex-grow: 1;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.producto-precio {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 15px;
}

/* BOTÓN DE WHATSAPP */
.btn-whatsapp-producto {
    background: linear-gradient(135deg, #25D366, #128C7E);
    color: white;
    border: none;
    padding: 12px 20px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: auto;
}

.btn-whatsapp-producto:hover {
    background: linear-gradient(135deg, #128C7E, #25D366);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
}
/* BADGE DE OFERTA ELEGANTE Y PULSANTE */
.badge-oferta-container {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 10;
}

.badge-oferta.small.right-top.pulsante {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    background: linear-gradient(135deg, #ff4444, #ff6b6b);
    color: white;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 700;
    padding: 4px 8px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    box-shadow: 0 3px 8px rgba(255, 68, 68, 0.3);
    animation: pulse-elegante 2s infinite;
    cursor: pointer;
    overflow: hidden;
    min-width: 55px;
}

.badge-oferta.small.right-top.pulsante .badge-text {
    position: relative;
    z-index: 2;
}

.badge-oferta.small.right-top.pulsante .badge-pulse {
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0));
    border-radius: 4px;
    animation: pulse-interno 1.5s infinite;
    z-index: 1;
}

@keyframes pulse-elegante {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 3px 8px rgba(255, 68, 68, 0.3);
    }
    50% {
        transform: scale(1.05);
        box-shadow: 0 5px 15px rgba(255, 68, 68, 0.5);
    }
}

@keyframes pulse-interno {
    0% {
        opacity: 0;
        transform: scale(0.8);
    }
    50% {
        opacity: 0.3;
    }
    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

/* VERSIÓN ALTERNATIVA MÁS ELEGANTE (AZUL FARMACIA) */
.badge-oferta.small.right-top.pulsante.alternativo {
    background: linear-gradient(135deg, var(--azul-farmacia), #4a90e2);
    box-shadow: 0 3px 8px rgba(74, 144, 226, 0.3);
    animation: pulse-elegante-azul 2s infinite;
}

@keyframes pulse-elegante-azul {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 3px 8px rgba(74, 144, 226, 0.3);
    }
    50% {
        transform: scale(1.05);
        box-shadow: 0 5px 15px rgba(74, 144, 226, 0.5);
    }
}

/* VERSIÓN CON ICONO + TEXTO */
.badge-oferta.small.right-top.con-icono {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    background: linear-gradient(135deg, #ff4444, #ff6b6b);
    border-radius: 15px;
    font-size: 9px;
    font-weight: 700;
}

.badge-oferta.small.right-top.con-icono::before {
    content: "↓";
    font-size: 10px;
    font-weight: bold;
}

/* EFECTO HOVER ELEGANTE */
.producto-card:hover .badge-oferta.small.right-top.pulsante {
    animation: hover-pulse 0.5s ease;
    background: linear-gradient(135deg, #ff3333, #ff5555);
}

@keyframes hover-pulse {
    0% { transform: scale(1.05) rotate(0deg); }
    25% { transform: scale(1.1) rotate(-2deg); }
    50% { transform: scale(1.1) rotate(2deg); }
    75% { transform: scale(1.1) rotate(-1deg); }
    100% { transform: scale(1.05) rotate(0deg); }
}

/* MEJORAS PARA LAS TARJETAS DE PRODUCTO */
.producto-card {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    background: white;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.producto-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.15);
}

.producto-imagen {
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f8faff, #f0f7ff);
    overflow: hidden;
    padding: 20px;
    border-bottom: 1px solid #f0f0f0;
    position: relative;
}

.producto-imagen::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--azul-farmacia-light), transparent);
}

.producto-imagen img {
    max-height: 140px;
    max-width: 140px;
    object-fit: contain;
    transition: transform 0.5s ease;
}

.producto-card:hover .producto-imagen img {
    transform: scale(1.08);
}

/* PRECIO CON OFERTA ELEGANTE */
.precio-actual.oferta-color {
    color: #ff4444;
    font-weight: 700;
    font-size: 1.25rem;
    position: relative;
    display: inline-block;
}

.precio-actual.oferta-color::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #ff4444, transparent);
    animation: precio-destello 2s infinite;
}

@keyframes precio-destello {
    0%, 100% { opacity: 0.3; }
    50% { opacity: 1; }
}

.precio-original.tachado {
    text-decoration: line-through;
    color: #999;
    font-size: 0.85rem;
    margin-right: 8px;
    position: relative;
}

.descuento-badge {
    background: linear-gradient(135deg, #ff4444, #ff6b6b);
    color: white;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 700;
    margin-left: 8px;
    box-shadow: 0 2px 5px rgba(255, 68, 68, 0.3);
    animation: descuento-pulse 2s infinite alternate;
}

@keyframes descuento-pulse {
    0% { transform: scale(1); }
    100% { transform: scale(1.05); }
}

/* PARA PRODUCTOS SIN OFERTA (SIN BADGE) */
.producto-card:not(:has(.badge-oferta)) .producto-contenido {
    padding-top: 25px; /* Compensar falta de badge */
}
/* ESTILOS ESPECÍFICOS PARA EL CARRUSEL */
.destacado-card {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    background: white;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
    margin: 0 8px;
}

.destacado-contenido {
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    min-height: 220px; /* Altura mínima para consistencia */
}

.destacado-titulo {
    font-size: 1rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
    line-height: 1.3;
    height: 2.6em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.destacado-desc {
    color: #666;
    font-size: 0.85rem;
    line-height: 1.4;
    margin-bottom: 15px;
    flex-grow: 1;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.destacado-precio {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 15px;
    min-height: 35px; /* Altura fija para precio */
}

.destacado-original.tachado {
    text-decoration: line-through;
    color: #999;
    font-size: 0.85rem;
}

.destacado-actual.precio-oferta {
    color: #ff4444;
    font-weight: bold;
    font-size: 1.1rem;
}

.destacado-descuento {
    background: #ff4444;
    color: white;
    padding: 2px 6px;
    border-radius: 10px;
    font-size: 0.75rem;
    font-weight: bold;
}

/* BOTÓN DE WHATSAPP PARA CARRUSEL */
.destacado-acciones {
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid #f0f0f0;
}

.btn-whatsapp-destacado {
    background: linear-gradient(135deg, #25D366, #128C7E);
    color: white;
    border: none;
    padding: 10px 15px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.85rem;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.btn-whatsapp-destacado:hover {
    background: linear-gradient(135deg, #128C7E, #25D366);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
}

.btn-whatsapp-destacado .btn-text {
    overflow: hidden;
    text-overflow: ellipsis;
}

/* BADGE PARA CARRUSEL */
.destacado-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: linear-gradient(135deg, #ff4444, #ff6b6b);
    color: white;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: bold;
    z-index: 2;
    box-shadow: 0 2px 5px rgba(255, 68, 68, 0.3);
}

/* IMÁGENES DEL CARRUSEL */
.destacado-imagen {
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f8f9ff, #e8f4ff);
    overflow: hidden;
    padding: 15px;
    border-bottom: 1px solid #f0f0f0;
}

.destacado-imagen img {
    max-height: 120px;
    max-width: 120px;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.destacado-card:hover .destacado-imagen img {
    transform: scale(1.05);
}

.destacado-imagen span {
    font-size: 3rem;
}

/* RESPONSIVE PARA CARRUSEL */
@media (max-width: 1200px) {
    .destacado-contenido {
        padding: 15px;
        min-height: 200px;
    }
    
    .destacado-titulo {
        font-size: 0.95rem;
    }
    
    .destacado-desc {
        font-size: 0.8rem;
    }
    
    .btn-whatsapp-destacado {
        padding: 8px 12px;
        font-size: 0.8rem;
    }
}

@media (max-width: 768px) {
    .destacado-card {
        margin: 0 5px;
    }
    
    .destacado-contenido {
        min-height: 180px;
        padding: 12px;
    }
    
    .btn-whatsapp-destacado .btn-text {
        display: none;
    }
    
    .btn-whatsapp-destacado {
        justify-content: center;
        padding: 10px;
    }
    
    .btn-whatsapp-destacado i {
        font-size: 1.2rem;
    }
}

/* INDICADOR DE BÚSQUEDA ACTIVA */
.busqueda-activa {
    position: relative;
}

.busqueda-activa:after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 3px;
    background: var(--whatsapp);
    border-radius: 2px;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* LOADING SPINNER */
.spinner {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 3px solid rgba(10, 92, 138, 0.3);
    border-radius: 50%;
    border-top-color: var(--azul-farmacia);
    animation: spin 1s ease-in-out infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}
/* ESTILOS PARA SUGERENCIAS MEJORADAS */
.suggestion-header {
    padding: 15px 20px;
    background: var(--azul-farmacia);
    color: white;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
}

.suggestion-header i {
    font-size: 1.1rem;
}

.suggestion-item {
    padding: 15px 20px;
    cursor: pointer;
    border-bottom: 1px solid var(--gris-medio);
    transition: all 0.2s;
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.suggestion-item:last-child {
    border-bottom: none;
}

.suggestion-item:hover {
    background: linear-gradient(135deg, #f0f7ff 0%, #e6f2ff 100%);
}

.suggestion-item.categoria:hover {
    background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
}

.suggestion-item.producto:hover {
    background: linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%);
}

.suggestion-icon {
    font-size: 1.4rem;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--gris-claro);
    border-radius: 8px;
    color: var(--azul-farmacia);
    flex-shrink: 0;
}

.suggestion-title {
    font-weight: 600;
    color: var(--azul-farmacia);
    margin-bottom: 4px;
    font-size: 1rem;
    line-height: 1.3;
}

.suggestion-subtitle {
    color: var(--gris-oscuro);
    font-size: 0.85rem;
    line-height: 1.4;
    margin-bottom: 6px;
}

.suggestion-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.85rem;
}

.suggestion-precio {
    color: var(--verde-salud);
    font-weight: 600;
}

.suggestion-categoria {
    color: var(--gris-oscuro);
    background: var(--gris-claro);
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.75rem;
}

.suggestion-oferta {
    background: linear-gradient(135deg, #FF4081 0%, #FF6B9D 100%);
    color: white;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.75rem;
    margin-left: 8px;
    font-weight: 600;
}

.suggestion-footer {
    border-top: 1px solid var(--gris-medio);
    background: var(--gris-claro);
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.suggestion-footer .suggestion-item {
    background: transparent;
}

.suggestion-footer .suggestion-item:hover {
    background: rgba(255, 255, 255, 0.5);
}

.suggestion-footer .suggestion-icon {
    background: var(--azul-farmacia);
    color: white;
}

.highlight {
    background: #fff9c4;
    padding: 1px 3px;
    border-radius: 3px;
    font-weight: 700;
}

/* PRODUCTO ÚNICO */
.producto-unico {
    max-width: 500px;
    margin: 0 auto;
}

.producto-detalles {
    margin: 15px 0;
    padding: 15px;
    background: var(--gris-claro);
    border-radius: 10px;
    font-size: 0.95rem;
}

.producto-detalles p {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.producto-detalles p:last-child {
    margin-bottom: 0;
}

.producto-detalles strong {
    color: var(--azul-farmacia);
    min-width: 140px;
}

/* BOTÓN LIMPIAR */
.search-btn[onclick="limpiarBusqueda()"] {
    background: var(--gris-oscuro);
}

.search-btn[onclick="limpiarBusqueda()"]:hover {
    background: #495057;
}

/* EFECTO PARA DESTACADOS OCULTOS */
.destacados {
    transition: all 0.3s ease;
}

.destacados.oculto {
    opacity: 0.3;
    pointer-events: none;
}

/* ANIMACIÓN PARA SUGERENCIAS */
@keyframes slideInDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.suggestions-container {
    animation: slideInDown 0.3s ease forwards;
}

/* ========== ESTILOS PARA IMÁGENES DE PRODUCTOS ========== */
.destacado-imagen,
.producto-imagen {
    height: 160px;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    overflow: hidden;
    position: relative;
    border-radius: 10px 10px 0 0;
}

.destacado-imagen img,
.producto-imagen img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.5s ease;
    max-width: 100%;
    max-height: 100%;
}

.destacado-card:hover .destacado-imagen img,
.producto-card:hover .producto-imagen img {
    transform: scale(1.05);
}

.destacado-imagen span,
.producto-imagen span {
    font-size: 3.5rem;
    opacity: 0.9;
    color: var(--azul-farmacia);
}

/* Para el carrusel */
.carousel-slide .destacado-imagen {
    height: 140px;
}

.carousel-slide .destacado-imagen img {
    max-height: 120px;
    object-fit: contain;
}

/* Loading para imágenes */
.imagen-loading {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
}

@keyframes loading {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Imagen por defecto si falla */
.destacado-imagen img::after,
.producto-imagen img::after {
    content: '💊';
    font-size: 3rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--azul-claro);
}

/* Responsive para imágenes */
@media (max-width: 992px) {
    .destacado-imagen,
    .producto-imagen {
        height: 140px;
    }
    
    .destacado-imagen span,
    .producto-imagen span {
        font-size: 2.8rem;
    }
    
    .carousel-slide .destacado-imagen {
        height: 120px;
    }
}

@media (max-width: 768px) {
    .destacado-imagen,
    .producto-imagen {
        height: 130px;
        padding: 15px;
    }
    
    .destacado-imagen span,
    .producto-imagen span {
        font-size: 2.5rem;
    }
}

@media (max-width: 480px) {
    .destacado-imagen,
    .producto-imagen {
        height: 120px;
        padding: 12px;
    }
    
    .destacado-imagen span,
    .producto-imagen span {
        font-size: 2.2rem;
    }
    
    .carousel-slide .destacado-imagen {
        height: 100px;
    }
}

/* ========== ESTILOS PARA SUGERENCIAS (SIMPLIFICADO) ========== */
.suggestion-header {
    padding: 12px 20px;
    background: var(--azul-farmacia);
    color: white;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    font-size: 0.95rem;
}

.suggestion-header i {
    font-size: 1rem;
}

.suggestion-item {
    padding: 12px 20px;
    cursor: pointer;
    border-bottom: 1px solid var(--gris-medio);
    transition: all 0.2s;
    display: flex;
    align-items: center;
    gap: 12px;
}

.suggestion-item:last-child {
    border-bottom: none;
}

.suggestion-item:hover {
    background: var(--gris-claro);
}

.suggestion-icon {
    font-size: 1.3rem;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--gris-claro);
    border-radius: 8px;
    color: var(--azul-farmacia);
    flex-shrink: 0;
}

.suggestion-title {
    font-weight: 600;
    color: var(--azul-farmacia);
    margin-bottom: 2px;
    font-size: 0.95rem;
    line-height: 1.3;
}

.suggestion-subtitle {
    color: var(--gris-oscuro);
    font-size: 0.8rem;
    line-height: 1.3;
}

.suggestion-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.8rem;
    margin-top: 4px;
}

.suggestion-precio {
    color: var(--verde-salud);
    font-weight: 600;
}

.suggestion-categoria {
    color: var(--gris-oscuro);
    background: var(--gris-claro);
    padding: 2px 6px;
    border-radius: 10px;
    font-size: 0.7rem;
}

.suggestion-oferta {
    background: linear-gradient(135deg, #FF4081 0%, #FF6B9D 100%);
    color: white;
    padding: 2px 6px;
    border-radius: 10px;
    font-size: 0.7rem;
    margin-left: 6px;
    font-weight: 600;
}

.highlight {
    background: #fff9c4;
    padding: 1px 3px;
    border-radius: 3px;
    font-weight: 700;
}

/* Sin resultados */
.suggestion-item.no-results .suggestion-icon {
    background: var(--gris-medio);
    color: var(--gris-oscuro);
}

.suggestion-item.no-results .suggestion-title {
    color: var(--gris-oscuro);
}

/* ========== EFECTOS PARA BUSCADOR ACTIVO ========== */
.buscador-activo .destacados {
    opacity: 0.4;
    filter: blur(2px);
    transition: all 0.3s ease;
}

.buscador-activo .catalogo {
    opacity: 0.4;
    filter: blur(2px);
    transition: all 0.3s ease;
}

/* ========== PRODUCTO ÚNICO (SIMPLIFICADO) ========== */
.producto-unico {
    max-width: 400px;
    margin: 0 auto;
}

/* ========== ANIMACIONES ========== */
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideInDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.suggestions-container {
    animation: slideInDown 0.3s ease forwards;
}

.producto-card {
    animation: fadeIn 0.5s ease forwards;
}
/* ========== ANIMACIONES PARA CARRUSEL ========== */
.destacados {
    transition: all 0.5s ease;
    max-height: 1000px;
    overflow: hidden;
}

.destacados.oculto {
    opacity: 0;
    max-height: 0;
    padding: 0;
    margin: 0;
    overflow: hidden;
    pointer-events: none;
}

/* Para que la transición sea suave */
.catalogo {
    transition: margin-top 0.5s ease;
}

/* Cuando el carrusel está oculto, el catálogo sube */
.destacados.oculto + .catalogo {
    margin-top: 0;
}

/* Cuando el carrusel está visible, el catálogo tiene margen normal */
.destacados:not(.oculto) + .catalogo {
    margin-top: 20px;
}
/* BADGE PARA CARRUSEL - ESQUINA SUPERIOR DERECHA */
.destacado-badge {
    position: absolute;
    top: 10px;
    right: 10px;  /* Cambiado de left a right */
    left: auto;   /* Asegurar que no quede en left */
    background: linear-gradient(135deg, #ff4444, #ff6b6b);
    color: white;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: bold;
    z-index: 2;
    box-shadow: 0 2px 5px rgba(255, 68, 68, 0.3);
}

/* OPCIONAL: Si quieres que sea igual que los otros badges elegantes */
.destacado-badge.elegante {
    top: 12px;
    right: 12px;
    background: linear-gradient(135deg, #ff4444, #ff6b6b);
    color: white;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 700;
    padding: 4px 8px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    box-shadow: 0 3px 8px rgba(255, 68, 68, 0.3);
    animation: pulse-elegante 2s infinite;
    min-width: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.destacado-badge.elegante::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0));
    border-radius: 4px;
    animation: pulse-interno 1.5s infinite;
    z-index: 1;
}

@keyframes pulse-elegante {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 3px 8px rgba(255, 68, 68, 0.3);
    }
    50% {
        transform: scale(1.05);
        box-shadow: 0 5px 15px rgba(255, 68, 68, 0.5);
    }
}

@keyframes pulse-interno {
    0% {
        opacity: 0;
        transform: scale(0.8);
    }
    50% {
        opacity: 0.3;
    }
    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}
/* BOTÓN VER MÁS */
.btn-ver-mas {
    background: linear-gradient(135deg, var(--azul-farmacia), #4a90e2);
    color: white;
    border: none;
    padding: 15px 30px;
    border-radius: 10px;
    font-weight: 600;
    font-size: 1rem;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 30px auto;
    width: 100%;
    max-width: 400px;
}

.btn-ver-mas:hover {
    background: linear-gradient(135deg, #4a90e2, var(--azul-farmacia));
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(74, 144, 226, 0.3);
}

.btn-ver-mas:disabled {
    background: #cccccc;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.btn-ver-mas.loading {
    background: #cccccc;
    cursor: wait;
}

.btn-ver-mas.loading i {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* LOADING PARA CARGA MÁS */
.loading-mas {
    text-align: center;
    padding: 30px;
    color: var(--azul-farmacia);
    font-size: 1.2rem;
}

.loading-mas i {
    font-size: 2rem;
    margin-bottom: 15px;
    display: block;
}