@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

        :root {
            --maldonado-red: #d31219;          
            --maldonado-red-hover: #b00e14;    
            --maldonado-blue: #003875;         
            --maldonado-yellow: #fbc02d;       
            --maldonado-silver: #6c757d;       
            
            --bg-page: #f8fafc;
            --surface: #ffffff;
            --text-main: #0f172a;
            --text-muted: #64748b;
            --border-color: #e2e8f0;
            --shadow-sm: 0 2px 4px rgba(0,0,0,0.06);
            --shadow-md: 0 4px 12px rgba(0,0,0,0.1);
            --radius-md: 12px;
            --radius-full: 9999px;
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        body {
            font-family: 'Inter', system-ui, -apple-system, sans-serif;
            background-color: var(--bg-page);
            color: var(--text-main);
            line-height: 1.5;
            padding-bottom: 2rem;
        }

        .announcement-bar {
            background-color: var(--maldonado-blue);
            color: #ffffff;
            text-align: center;
            padding: 0.4rem 1rem;
            font-size: 0.85rem;
            font-weight: 600;
        }

        .announcement-bar a {
            color: var(--maldonado-yellow);
            text-decoration: underline;
            margin-left: 0.5rem;
            font-weight: 700;
        }

        .top-bar {
            background-color: #002957;
            color: #ffffff;
            padding: 0.4rem 1.5rem;
            font-size: 0.8rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .top-bar-info {
            display: flex;
            gap: 1.5rem;
        }

        header {
            background-color: var(--surface);
            border-bottom: 3px solid var(--maldonado-red);
            position: sticky;
            top: 0;
            z-index: 100;
            box-shadow: var(--shadow-sm);
        }

        .header-container {
            max-width: 1250px;
            margin: 0 auto;
            padding: 0.8rem 1.5rem;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

        .logo {
            text-decoration: none;
            display: flex;
            align-items: center;
            gap: 0.6rem;
        }

        .logo-img {
            height: 60px;
            width: 56px;
            object-fit: cover;
            object-position: left center;
        }

        .logo-sub {
            font-size: 0.8rem;
            font-weight: 800;
            color: var(--maldonado-blue);
            letter-spacing: 2px;
            text-transform: uppercase;
            display: block;
            margin-bottom: -4px;
        }

        .logo-main {
            font-size: 1.9rem;
            font-weight: 800;
            color: var(--maldonado-red);
            letter-spacing: -0.5px;
            text-transform: uppercase;
        }

        .header-actions {
            display: flex;
            align-items: center;
            gap: 1.2rem;
        }

        .action-item {
            display: flex;
            flex-direction: column;
            align-items: center;
            color: var(--maldonado-blue);
            text-decoration: none;
            font-size: 0.75rem;
            font-weight: 700;
            transition: color 0.2s;
        }

        .action-item:hover {
            color: var(--maldonado-red);
        }

        .action-icon {
            font-size: 1.3rem;
        }

        nav {
            background: linear-gradient(90deg, #002a58, var(--maldonado-blue));
            box-shadow: 0 3px 10px rgba(0, 56, 117, 0.25);
        }

        .nav-container {
            max-width: 1250px;
            margin: 0 auto;
            padding: 0 1.5rem;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 0.3rem;
        }

        .nav-item {
            position: relative;
            display: inline-flex;
            align-items: center;
            gap: 0.45rem;
            padding: 0.9rem 1.1rem;
            color: rgba(255, 255, 255, 0.82);
            text-decoration: none;
            font-size: 0.9rem;
            font-weight: 700;
            letter-spacing: 0.2px;
            transition: color 0.2s ease, background-color 0.2s ease;
        }

        .nav-icon {
            font-size: 1.05rem;
            transition: transform 0.2s ease;
        }

        .nav-item::after {
            content: '';
            position: absolute;
            left: 1.1rem;
            right: 1.1rem;
            bottom: 0;
            height: 3px;
            border-radius: 3px 3px 0 0;
            background-color: var(--maldonado-yellow);
            transform: scaleX(0);
            transition: transform 0.25s ease;
        }

        .nav-item:hover {
            color: #ffffff;
            background-color: rgba(255, 255, 255, 0.08);
        }

        .nav-item:hover .nav-icon {
            transform: translateY(-2px);
        }

        .nav-item:hover::after,
        .nav-item.active::after {
            transform: scaleX(1);
        }

        .nav-item.active {
            color: var(--maldonado-yellow);
        }

        .nav-item.nav-item-extra {
            margin-left: 0.8rem;
            border-left: 1px solid rgba(255, 255, 255, 0.2);
        }

        .nav-largo {
            display: contents;
        }

        @media (min-width: 641px) and (max-width: 1300px) {
            .nav-largo {
                display: none;
            }
            .nav-item {
                padding: 0.9rem 0.85rem;
            }
            .nav-item::after {
                left: 0.85rem;
                right: 0.85rem;
            }
            .nav-item.nav-item-extra {
                margin-left: 0.4rem;
            }
        }

        @media (max-width: 640px) {
            .nav-container {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 0.45rem;
                padding: 0.7rem 1rem;
            }

            .nav-item {
                justify-content: center;
                text-align: center;
                padding: 0.65rem 0.5rem;
                font-size: 0.82rem;
                line-height: 1.2;
                border-radius: 8px;
                background-color: rgba(255, 255, 255, 0.08);
            }

            .nav-item::after {
                left: 30%;
                right: 30%;
            }

            .nav-item.active {
                background-color: rgba(251, 192, 45, 0.15);
            }

            .nav-item.nav-item-extra {
                grid-column: 1 / -1;
                margin-left: 0;
                border-left: none;
            }
        }

        .hero-section {
            max-width: 1250px;
            margin: 1.2rem auto;
            padding: 0 1.5rem;
        }

        .slider-container {
            position: relative;
            border-radius: var(--radius-md);
            overflow: hidden;
            height: 320px;
            box-shadow: var(--shadow-md);
        }

        .slider {
            display: flex;
            height: 100%;
            transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
        }

        .slide {
            flex: 0 0 100%;
            height: 100%;
            background-size: cover;
            background-position: center;
            display: flex;
            align-items: center;
            padding: 2.5rem;
            color: white;
            position: relative;
        }

        .slide-1 {
            background-image: linear-gradient(90deg, rgba(0, 56, 117, 0.95) 0%, rgba(0, 56, 117, 0.35) 100%), url('../img/slider-trituradora.jpg');
        }
        .slide-2 {
            background-image: linear-gradient(90deg, rgba(211, 18, 25, 0.92) 0%, rgba(0, 56, 117, 0.5) 100%), url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?q=80&w=1200&auto=format&fit=crop');
        }
        .slide-3 {
            background-image: linear-gradient(90deg, rgba(0, 56, 117, 0.92) 0%, rgba(211, 18, 25, 0.45) 100%), url('../img/slider-madera.jpg');
        }

        .slide-fondo {
            background-image: var(--slide-degradado), var(--slide-img, none);
        }
        .slide-color-azul      { --slide-degradado: linear-gradient(90deg, rgba(0, 56, 117, 0.95) 0%, rgba(0, 56, 117, 0.35) 100%); }
        .slide-color-rojo      { --slide-degradado: linear-gradient(90deg, rgba(211, 18, 25, 0.92) 0%, rgba(0, 56, 117, 0.5) 100%); }
        .slide-color-azul-rojo { --slide-degradado: linear-gradient(90deg, rgba(0, 56, 117, 0.92) 0%, rgba(211, 18, 25, 0.45) 100%); }
        .slide-color-negro     { --slide-degradado: linear-gradient(90deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.35) 100%); }

        .slide-tarjeta {
            background: linear-gradient(120deg, #002a58 0%, var(--maldonado-blue) 55%, #0a4d96 100%);
            justify-content: space-between;
            gap: 2rem;
            padding: 1.8rem 4.5rem;
        }

        .slide-tarjeta .slide-content {
            flex: 1 1 45%;
        }

        .slide-tarjeta.slide-color-rojo      { background: linear-gradient(120deg, #7f0b0f 0%, var(--maldonado-red) 55%, #e8454b 100%); }
        .slide-tarjeta.slide-color-azul-rojo { background: linear-gradient(120deg, #002a58 0%, var(--maldonado-blue) 50%, var(--maldonado-red) 100%); }
        .slide-tarjeta.slide-color-negro     { background: linear-gradient(120deg, #0b0b0b 0%, #1c1c1c 60%, #2a2a2a 100%); }

        .slide-tarjeta-img {
            flex: 0 1 50%;
            max-width: 50%;
            max-height: 100%;
            object-fit: contain;
            border-radius: 10px;
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
        }

        .slide-badge {
            display: inline-block;
            background-color: var(--maldonado-yellow);
            color: var(--maldonado-blue);
            font-size: 0.78rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            padding: 0.25rem 0.75rem;
            border-radius: var(--radius-full);
            margin-bottom: 0.6rem;
        }

        .slide-legal {
            display: block;
            margin-top: 0.7rem;
            font-size: 0.72rem;
            opacity: 0.75;
        }

        .slide-content {
            max-width: 550px;
            z-index: 2;
        }

        .slide-content h2 {
            font-size: 2.2rem;
            font-weight: 800;
            margin-bottom: 0.4rem;
            line-height: 1.2;
            text-shadow: 0 2px 4px rgba(0,0,0,0.3);
        }

        .slide-content p {
            margin-bottom: 1.2rem;
            font-size: 1.05rem;
            text-shadow: 0 1px 3px rgba(0,0,0,0.3);
        }

        .slider-btn {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(0, 0, 0, 0.4);
            color: white;
            border: none;
            width: 42px;
            height: 42px;
            border-radius: 50%;
            cursor: pointer;
            font-size: 1.2rem;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 10;
            transition: background 0.3s;
        }

        .slider-btn:hover {
            background: var(--maldonado-red);
        }

        .slider-btn.prev { left: 15px; }
        .slider-btn.next { right: 15px; }

        .slider-dots {
            position: absolute;
            bottom: 15px;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            gap: 8px;
            z-index: 10;
        }

        .dot {
            width: 12px;
            height: 12px;
            padding: 0;
            border: none;
            background-color: rgba(255, 255, 255, 0.5);
            border-radius: 50%;
            cursor: pointer;
            transition: all 0.3s;
        }

        .dot:focus-visible,
        .slider-btn:focus-visible {
            outline: 3px solid var(--maldonado-yellow);
            outline-offset: 2px;
        }

        .dot.active {
            background-color: var(--maldonado-yellow);
            width: 28px;
            border-radius: 12px;
        }

        .btn-primary {
            display: inline-block;
            background-color: var(--maldonado-red);
            color: #ffffff;
            padding: 0.65rem 1.5rem;
            border-radius: var(--radius-full);
            text-decoration: none;
            font-weight: 700;
            border: none;
            cursor: pointer;
            box-shadow: 0 3px 6px rgba(0,0,0,0.2);
            transition: background 0.2s;
        }

        .btn-primary:hover {
            background-color: var(--maldonado-red-hover);
        }

        .btn-yellow {
            background-color: var(--maldonado-red);
            color: #ffffff;
        }

        .btn-yellow:hover {
            background-color: var(--maldonado-red-hover);
        }

        .btn-block {
            display: block;
            text-align: center;
        }

        .address-maps {
            margin-top: 0.8rem;
        }

        .footer-sub {
            margin-top: 0.4rem;
            opacity: 0.9;
        }

        .btn-whatsapp-header {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            background: linear-gradient(135deg, #25d366, #128c7e);
            color: #ffffff;
            padding: 0.7rem 1.4rem;
            border-radius: var(--radius-full);
            text-decoration: none;
            font-weight: 800;
            font-size: 0.95rem;
            letter-spacing: 0.3px;
            white-space: nowrap;
            box-shadow: 0 4px 14px rgba(37, 211, 102, 0.45);
            transition: transform 0.2s, box-shadow 0.2s;
            animation: whatsapp-pulse 2s infinite;
        }

        .btn-whatsapp-header:hover {
            transform: translateY(-2px) scale(1.04);
            box-shadow: 0 6px 20px rgba(37, 211, 102, 0.6);
            animation: none;
        }

        .btn-whatsapp-header svg {
            width: 20px;
            height: 20px;
            fill: currentColor;
        }

        @keyframes whatsapp-pulse {
            0%   { box-shadow: 0 4px 14px rgba(37, 211, 102, 0.45), 0 0 0 0 rgba(37, 211, 102, 0.6); }
            70%  { box-shadow: 0 4px 14px rgba(37, 211, 102, 0.45), 0 0 0 12px rgba(37, 211, 102, 0); }
            100% { box-shadow: 0 4px 14px rgba(37, 211, 102, 0.45), 0 0 0 0 rgba(37, 211, 102, 0); }
        }

        @media (prefers-reduced-motion: reduce) {
            .btn-whatsapp-header { animation: none; }
        }

        .features-bar {
            max-width: 1250px;
            margin: 1.5rem auto;
            padding: 0 1.5rem;
        }

        .features-grid {
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-radius: var(--radius-md);
            padding: 1.2rem;
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 1rem;
            box-shadow: var(--shadow-sm);
        }

        .feature-card {
            display: flex;
            align-items: center;
            gap: 0.8rem;
        }

        .feature-icon {
            font-size: 2rem;
            color: var(--maldonado-blue);
        }

        .feature-title {
            font-size: 0.9rem;
            font-weight: 800;
            color: var(--maldonado-blue);
            line-height: 1.2;
        }

        .feature-subtitle {
            font-size: 0.78rem;
            color: var(--maldonado-red);
            font-weight: 700;
        }

        .categories-promo {
            max-width: 1250px;
            margin: 2rem auto;
            padding: 0 1.5rem;
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
            gap: 1.5rem;
        }

        .promo-card {
            position: relative;
            height: 180px;
            border-radius: var(--radius-md);
            overflow: hidden;
            box-shadow: var(--shadow-sm);
            background-size: cover;
            background-position: center;
            display: flex;
            align-items: flex-end;
            text-decoration: none;
            transition: transform 0.2s ease, box-shadow 0.2s ease;
        }

        .promo-card-sin-foto {
            background-image:
                repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0 14px, transparent 14px 28px),
                linear-gradient(120deg, var(--maldonado-red) 0%, #8f0c11 100%);
        }

        .categories-promo[hidden] {
            display: none;
        }

        .promo-card:hover {
            transform: translateY(-3px);
            box-shadow: var(--shadow-md);
        }

        .promo-ver {
            margin-top: 0.5rem;
            font-size: 0.82rem;
            font-weight: 800;
            color: var(--maldonado-yellow);
        }

        .promo-card:hover .promo-ver {
            text-decoration: underline;
        }

        .promo-card-1 {
            background-image: url('https://images.unsplash.com/photo-1584622650111-993a426fbf0a?q=80&w=600&auto=format&fit=crop');
        }

        .promo-card-2 {
            background-image: url('https://images.unsplash.com/photo-1621905251189-08b45d6a269e?q=80&w=600&auto=format&fit=crop');
        }

        .promo-overlay {
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            width: 60%;
            background: linear-gradient(135deg, var(--maldonado-blue) 85%, transparent 85%);
            padding: 1.2rem;
            display: flex;
            flex-direction: column;
            justify-content: center;
            color: white;
        }

        .promo-tag {
            background-color: var(--maldonado-red);
            color: white;
            font-size: 0.7rem;
            font-weight: 800;
            padding: 0.2rem 0.5rem;
            border-radius: 4px;
            align-self: flex-start;
            margin-bottom: 0.4rem;
            text-transform: uppercase;
        }

        .promo-title {
            font-size: 1.1rem;
            font-weight: 800;
            text-transform: uppercase;
            line-height: 1.2;
        }

        .calc-promo {
            max-width: 1250px;
            margin: 2rem auto;
            padding: 0 1.5rem;
        }

        .calc-promo-inner {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 2rem;
            align-items: center;
            background: linear-gradient(120deg, #002a58 0%, var(--maldonado-blue) 60%, #0a4d96 100%);
            color: #ffffff;
            border-radius: var(--radius-md);
            padding: 2rem;
            box-shadow: var(--shadow-md);
        }

        .calc-promo-tag {
            display: inline-block;
            background-color: rgba(251, 192, 45, 0.18);
            color: var(--maldonado-yellow);
            font-size: 0.75rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            padding: 0.25rem 0.75rem;
            border-radius: var(--radius-full);
            margin-bottom: 0.6rem;
        }

        .calc-promo-text h2 {
            font-size: 1.8rem;
            font-weight: 800;
            line-height: 1.2;
            margin-bottom: 0.6rem;
        }

        .calc-promo-text p {
            font-size: 0.95rem;
            opacity: 0.9;
            margin-bottom: 1.2rem;
        }

        .calc-promo-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0.8rem;
        }

        .calc-promo-legal {
            display: block;
            margin-top: 0.9rem;
            font-size: 0.78rem;
            opacity: 0.8;
        }

        .calc-promo-item.calc-promo-ancho {
            grid-column: 1 / -1;
        }

        .calc-promo-item[hidden] {
            display: none;
        }

        .calc-promo-item {
            display: flex;
            flex-direction: column;
            gap: 0.2rem;
            background-color: rgba(255, 255, 255, 0.08);
            border: 1px solid rgba(255, 255, 255, 0.15);
            border-radius: 10px;
            padding: 1rem;
            color: #ffffff;
            text-decoration: none;
            transition: background-color 0.2s, transform 0.2s;
        }

        .calc-promo-item:hover {
            background-color: rgba(255, 255, 255, 0.16);
            transform: translateY(-2px);
        }

        .calc-promo-icon {
            font-size: 1.6rem;
        }

        .calc-promo-item strong {
            font-size: 1rem;
        }

        .calc-promo-item small {
            font-size: 0.78rem;
            opacity: 0.8;
        }

        .unico-promo {
            max-width: 1250px;
            margin: 2rem auto;
            padding: 0 1.5rem;
        }

        .unico-promo-inner {
            display: grid;
            grid-template-columns: 0.8fr 1.2fr;
            gap: 2rem;
            align-items: center;
            background: linear-gradient(120deg, #1f2937 0%, #111827 100%);
            color: #ffffff;
            border-radius: var(--radius-md);
            border-left: 6px solid var(--maldonado-yellow);
            padding: 2rem;
            box-shadow: var(--shadow-md);
        }

        .unico-promo-img {
            background-color: #ffffff;
            border-radius: 10px;
            padding: 1rem;
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 200px;
        }

        .unico-promo-img img {
            max-width: 100%;
            max-height: 240px;
            object-fit: contain;
        }

        .unico-promo-text h2 {
            font-size: 1.8rem;
            font-weight: 800;
            line-height: 1.2;
            margin-bottom: 0.6rem;
        }

        .unico-promo-text p {
            font-size: 0.95rem;
            opacity: 0.9;
            margin-bottom: 1rem;
        }

        .unico-promo-precio {
            opacity: 1 !important;
        }

        .unico-promo-variante {
            display: block;
            font-size: 0.85rem;
            opacity: 0.8;
        }

        .unico-promo-precio strong {
            font-size: 1.8rem;
            color: var(--maldonado-yellow);
        }

        .unico-promo-acciones {
            display: flex;
            align-items: center;
            gap: 1rem;
            flex-wrap: wrap;
        }

        .unico-promo-whatsapp {
            color: #ffffff;
            font-weight: 700;
            font-size: 0.9rem;
            text-decoration: underline;
            text-underline-offset: 3px;
        }

        .steps-section {
            max-width: 1250px;
            margin: 2.5rem auto;
            padding: 0 1.5rem;
            text-align: center;
        }

        .steps-header h2 {
            font-size: 1.6rem;
            font-weight: 800;
            color: var(--maldonado-blue);
            text-transform: uppercase;
        }

        .steps-header p {
            color: var(--text-muted);
            font-size: 0.95rem;
            margin-bottom: 1.5rem;
        }

        .steps-grid {
            list-style: none;
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 1.5rem;
        }

        .step-card {
            position: relative;
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-top: 4px solid var(--maldonado-red);
            border-radius: var(--radius-md);
            padding: 2rem 1.3rem 1.5rem;
            box-shadow: var(--shadow-sm);
            transition: transform 0.2s, box-shadow 0.2s;
        }

        .step-card:hover {
            transform: translateY(-3px);
            box-shadow: var(--shadow-md);
        }

        .step-number {
            position: absolute;
            top: -18px;
            left: 50%;
            transform: translateX(-50%);
            width: 36px;
            height: 36px;
            border-radius: 50%;
            background-color: var(--maldonado-blue);
            color: var(--maldonado-yellow);
            font-weight: 800;
            font-size: 1.1rem;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 3px solid var(--bg-page);
        }

        .step-icon {
            display: block;
            font-size: 2.2rem;
            margin-bottom: 0.5rem;
        }

        .step-card h3 {
            font-size: 1.05rem;
            font-weight: 800;
            color: var(--maldonado-blue);
            margin-bottom: 0.4rem;
        }

        .step-card p {
            font-size: 0.85rem;
            color: var(--text-muted);
        }

        .steps-cta {
            margin-top: 1.5rem;
        }

        .brands-section {
            margin: 3rem 0;
        }

        .brands-marquee {
            overflow: hidden;
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-radius: var(--radius-md);
            box-shadow: var(--shadow-sm);
            padding: 1.2rem 0;
            -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
            mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
        }

        .brands-track {
            display: flex;
            width: max-content;
            animation: brands-scroll 30s linear infinite;
        }

        .brands-marquee:hover .brands-track {
            animation-play-state: paused;
        }

        .brands-group {
            display: flex;
            align-items: center;
            gap: 3rem;
            padding-right: 3rem;
        }

        .brand-logo {
            white-space: nowrap;
            font-weight: 900;
            font-size: 1.5rem;
            letter-spacing: 1px;
            filter: grayscale(1);
            opacity: 0.6;
            transition: filter 0.2s, opacity 0.2s;
        }

        .brand-logo:hover {
            filter: none;
            opacity: 1;
        }

        .brand-truper   { color: #f28c00; font-style: italic; }
        .brand-aquafina { color: #0077c8; font-style: italic; letter-spacing: 0; }
        .brand-multiblock { color: #4b5563; letter-spacing: 2px; }
        .brand-zasc     { color: #1f2937; letter-spacing: 3px; }
        .brand-progreso { color: var(--maldonado-blue); font-size: 1.25rem; letter-spacing: 0; }

        .brand-imagen {
            display: inline-flex;
            align-items: center;
        }

        .brand-imagen img {
            display: block;
            height: 2.6rem;
            width: auto;
            max-width: 10rem;
            object-fit: contain;
        }

        html[data-tema="oscuro"] .brand-imagen {
            background: #ffffff;
            padding: 0.3rem 0.7rem;
            border-radius: 8px;
        }

        html[data-tema="oscuro"] .brand-logo.brand-color-oscuro {
            color: #e5e7eb !important;
        }

        @keyframes brands-scroll {
            from { transform: translateX(0); }
            to   { transform: translateX(-50%); }
        }

        @media (prefers-reduced-motion: reduce) {
            .brands-track { animation: none; width: auto; }
            .brands-group { flex-wrap: wrap; justify-content: center; padding: 0 1rem; gap: 1.5rem 2.5rem; }
            .brands-group[aria-hidden="true"] { display: none; }
            .brands-marquee { -webkit-mask-image: none; mask-image: none; }
        }

        .wholesale-section {
            margin: 3rem 0;
        }

        .wholesale-inner {
            display: grid;
            grid-template-columns: 1.1fr 1fr;
            gap: 2rem;
            align-items: center;
            background: linear-gradient(120deg, var(--maldonado-red-hover) 0%, var(--maldonado-red) 55%, #e8343a 100%);
            color: #ffffff;
            border-radius: var(--radius-md);
            padding: 2rem;
            box-shadow: var(--shadow-md);
        }

        .wholesale-tag {
            display: inline-block;
            background-color: rgba(255, 255, 255, 0.18);
            color: #ffffff;
            font-size: 0.75rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            padding: 0.25rem 0.75rem;
            border-radius: var(--radius-full);
            margin-bottom: 0.6rem;
        }

        .wholesale-text h2 {
            font-size: 1.7rem;
            font-weight: 800;
            line-height: 1.2;
            margin-bottom: 0.6rem;
        }

        .wholesale-text p {
            font-size: 0.95rem;
            opacity: 0.92;
            margin-bottom: 1.2rem;
        }

        .wholesale-list {
            list-style: none;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0.8rem;
        }

        .wholesale-list li {
            display: flex;
            align-items: flex-start;
            gap: 0.6rem;
            background-color: rgba(255, 255, 255, 0.1);
            border: 1px solid rgba(255, 255, 255, 0.2);
            border-radius: 10px;
            padding: 0.9rem;
        }

        .wholesale-icon {
            font-size: 1.5rem;
            line-height: 1;
        }

        .wholesale-icon-q {
            flex-shrink: 0;
            width: 1.5rem;
            height: 1.5rem;
            border-radius: 50%;
            background-color: var(--maldonado-yellow);
            color: var(--maldonado-blue);
            font-size: 0.95rem;
            font-weight: 900;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .wholesale-list strong {
            display: block;
            font-size: 0.95rem;
        }

        .wholesale-list small {
            font-size: 0.78rem;
            opacity: 0.85;
        }

        @media (max-width: 768px) {
            .steps-section {
                padding: 0 1rem;
                margin: 2rem auto;
            }
            .steps-header h2 {
                font-size: 1.3rem;
            }
            .steps-grid {
                grid-template-columns: minmax(0, 1fr);
                gap: 1.8rem;
            }
            .step-card {
                padding: 1.6rem 1rem 1.2rem;
            }
            .brands-section,
            .wholesale-section {
                margin: 2rem 0;
            }
            .brand-logo {
                font-size: 1.2rem;
            }
            .brand-progreso {
                font-size: 1rem;
            }
            .brands-group {
                gap: 2rem;
                padding-right: 2rem;
            }
            .wholesale-inner {
                grid-template-columns: minmax(0, 1fr);
                gap: 1.2rem;
                padding: 1.3rem;
                text-align: center;
            }
            .wholesale-text h2 {
                font-size: 1.3rem;
            }
            .wholesale-list {
                gap: 0.6rem;
                text-align: left;
            }
            .wholesale-list li {
                padding: 0.7rem;
            }
        }

        @media (max-width: 380px) {
            .wholesale-list {
                grid-template-columns: minmax(0, 1fr);
            }
        }

        main {
            max-width: 1250px;
            margin: 0 auto;
            padding: 0 1.5rem;
        }

        main.inicio-secciones {
            max-width: none;
            margin: 0;
            padding: 0;
        }

        .inicio-ancho {
            max-width: 1250px;
            margin: 0 auto;
            padding: 0 1.5rem;
        }

        .seccion-oculta {
            display: none !important;
        }

        .section-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 1.2rem;
            padding-bottom: 0.4rem;
            border-bottom: 3px solid var(--maldonado-blue);
        }

        .section-title {
            font-size: 1.3rem;
            color: var(--maldonado-blue);
            font-weight: 800;
            text-transform: uppercase;
        }

        .products-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
            gap: 1.2rem;
        }

        .product-card {
            position: relative;
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-radius: var(--radius-md);
            overflow: hidden;
            display: flex;
            flex-direction: column;
        }

        .badge-vendido {
            position: absolute;
            top: 10px;
            left: 10px;
            z-index: 1;
            padding: 0.25rem 0.6rem;
            border-radius: var(--radius-full);
            background-color: var(--maldonado-blue);
            color: #ffffff;
            font-size: 0.72rem;
            font-weight: 800;
            box-shadow: var(--shadow-md);
        }

        .badge-vendido.badge-top {
            background-color: var(--maldonado-red);
        }

        .product-card-vendido:first-child .badge-vendido {
            background-color: var(--maldonado-yellow);
            color: var(--maldonado-blue);
        }

        .ofertas-section {
            margin: 2rem 0 2.5rem;
        }

        .ofertas-section[hidden] {
            display: none;
        }

        .product-card-oferta {
            border-color: rgba(211, 18, 25, 0.45);
        }

        .badge-oferta {
            position: absolute;
            top: 10px;
            left: 10px;
            z-index: 1;
            max-width: calc(100% - 20px);
            padding: 0.25rem 0.6rem;
            border-radius: var(--radius-full);
            background-color: var(--maldonado-red);
            color: #ffffff;
            font-size: 0.72rem;
            font-weight: 800;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            box-shadow: 0 3px 8px rgba(211, 18, 25, 0.35);
        }

        .oferta-precios {
            display: flex;
            align-items: baseline;
            flex-wrap: wrap;
            gap: 0.2rem 0.5rem;
            margin: 0.4rem 0 0.7rem;
        }

        .oferta-antes {
            font-size: 0.8rem;
            color: var(--text-muted);
            text-decoration: line-through;
        }

        .oferta-ahora {
            font-size: 1.2rem;
            font-weight: 800;
            color: var(--maldonado-red);
        }

        .oferta-unidad {
            font-size: 0.75rem;
            font-weight: 600;
            color: var(--text-muted);
        }

        .address-tels {
            display: flex;
            flex-wrap: wrap;
            gap: 0.4rem;
            margin: 0.3rem 0 0.4rem;
        }

        .address-text a {
            color: var(--maldonado-red);
            font-weight: 700;
        }

        .address-text .address-tels a {
            padding: 0.25rem 0.7rem;
            border-radius: var(--radius-full);
            background-color: rgba(0, 56, 117, 0.08);
            color: var(--maldonado-blue);
            font-weight: 800;
            text-decoration: none;
        }

        .address-text .address-tels a:hover {
            background-color: var(--maldonado-blue);
            color: #ffffff;
        }

        .tienda-section {
            margin: 3rem 0;
        }

        .tienda-inner {
            display: grid;
            grid-template-columns: 1fr 1.1fr;
            gap: 1.8rem;
            align-items: center;
        }

        .tienda-tag {
            display: inline-block;
            padding: 0.2rem 0.7rem;
            border-radius: var(--radius-full);
            background-color: rgba(211, 18, 25, 0.1);
            color: var(--maldonado-red);
            font-size: 0.75rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.4px;
            margin-bottom: 0.6rem;
        }

        .tienda-texto h3 {
            font-size: 1.5rem;
            line-height: 1.25;
            color: var(--maldonado-blue);
            margin-bottom: 0.7rem;
        }

        .tienda-texto p {
            font-size: 0.95rem;
            color: var(--text-muted);
            line-height: 1.6;
            margin-bottom: 0.7rem;
        }

        .tienda-cifras {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.6rem;
            margin-top: 1.2rem;
        }

        .tienda-tag[hidden],
        .tienda-cifras[hidden],
        .tienda-pie[hidden] {
            display: none;
        }

        .tienda-cifras div {
            padding: 0.8rem 0.5rem;
            text-align: center;
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-top: 3px solid var(--maldonado-red);
            border-radius: 10px;
        }

        .tienda-cifras strong {
            display: block;
            font-size: 1.5rem;
            font-weight: 800;
            color: var(--maldonado-blue);
            line-height: 1.1;
        }

        .tienda-cifras span {
            font-size: 0.75rem;
            color: var(--text-muted);
        }

        .tienda-galeria {
            display: grid;
            grid-template-columns: 1fr 1fr;
            grid-template-rows: 200px 160px;
            gap: 0.7rem;
        }

        .tienda-foto {
            position: relative;
            margin: 0;
            border-radius: var(--radius-md);
            overflow: hidden;
            box-shadow: var(--shadow-sm);
        }

        .tienda-foto-grande {
            grid-column: 1 / -1;
        }

        .tienda-foto img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            transition: transform 0.4s ease;
        }

        .tienda-foto:hover img {
            transform: scale(1.04);
        }

        .tienda-foto figcaption {
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            padding: 1.2rem 0.8rem 0.5rem;
            background: linear-gradient(transparent, rgba(0, 0, 0, 0.65));
            color: #ffffff;
            font-size: 0.82rem;
            font-weight: 700;
        }

        @media (prefers-reduced-motion: reduce) {
            .tienda-foto img { transition: none; }
        }

        .resenas-section {
            margin: 3rem 0;
        }

        .resenas-resumen {
            display: flex;
            align-items: center;
            gap: 0.8rem;
            margin-bottom: 1rem;
        }

        .resenas-nota {
            font-size: 2.4rem;
            font-weight: 800;
            color: var(--maldonado-blue);
            line-height: 1;
        }

        .resenas-resumen small {
            display: block;
            font-size: 0.8rem;
            color: var(--text-muted);
        }

        .resenas-estrellas {
            color: #f59e0b;
            font-size: 1.05rem;
            letter-spacing: 2px;
        }

        .resenas-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 1rem;
        }
        @media (min-width: 769px) and (max-width: 1100px) {
            .resenas-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

        .resena {
            display: flex;
            flex-direction: column;
            gap: 0.6rem;
            padding: 1.2rem;
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-radius: var(--radius-md);
            box-shadow: var(--shadow-sm);
        }

        .resena p {
            flex-grow: 1;
            font-size: 0.92rem;
            line-height: 1.55;
            color: var(--text-main);
            font-style: italic;
        }

        .resena-autor {
            display: flex;
            align-items: center;
            gap: 0.6rem;
            padding-top: 0.7rem;
            border-top: 1px dashed var(--border-color);
        }

        .resena-inicial {
            flex-shrink: 0;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: var(--maldonado-blue);
            color: #ffffff;
            font-weight: 800;
        }

        .resena-autor strong {
            display: block;
            font-size: 0.88rem;
            color: var(--maldonado-blue);
        }

        .resena-autor small {
            font-size: 0.76rem;
            color: var(--text-muted);
        }

        .zonas-section {
            margin: 3rem 0;
        }

        .zonas-inner {
            display: grid;
            grid-template-columns: 1fr 1.6fr;
            gap: 1rem;
        }

        .zonas-gratis,
        .zonas-cobertura,
        .zonas-tiempo {
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-radius: var(--radius-md);
            padding: 1.2rem;
        }

        .zonas-gratis {
            border-left: 5px solid #16a34a;
        }

        .zonas-gratis-tag {
            display: inline-block;
            padding: 0.2rem 0.6rem;
            border-radius: var(--radius-full);
            background-color: rgba(22, 163, 74, 0.12);
            color: #15803d;
            font-size: 0.72rem;
            font-weight: 800;
            text-transform: uppercase;
            margin-bottom: 0.5rem;
        }

        .zonas-inner h3 {
            font-size: 1.05rem;
            color: var(--maldonado-blue);
            margin-bottom: 0.4rem;
        }

        .zonas-inner p {
            font-size: 0.88rem;
            color: var(--text-muted);
        }

        .zonas-lista {
            list-style: none;
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem;
            margin: 0.3rem 0 0.7rem;
            padding: 0;
        }

        .zonas-lista li {
            padding: 0.35rem 0.8rem;
            border-radius: var(--radius-full);
            background-color: rgba(0, 56, 117, 0.08);
            color: var(--maldonado-blue);
            font-size: 0.84rem;
            font-weight: 700;
        }

        .zonas-nota a,
        .faq-item a,
        .faq-mas a {
            color: var(--maldonado-red);
            font-weight: 700;
        }

        .zonas-tiempo {
            grid-column: 1 / -1;
            display: flex;
            align-items: center;
            gap: 0.9rem;
        }

        .zonas-tiempo-icono {
            font-size: 1.8rem;
        }

        .zonas-tiempo strong {
            display: block;
            color: var(--maldonado-blue);
        }

        .zonas-tiempo small {
            font-size: 0.85rem;
            color: var(--text-muted);
        }

        .faq-section {
            margin: 3rem 0;
        }

        .faq-lista {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.7rem;
            align-items: start;
        }

        .faq-item {
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-radius: 10px;
            overflow: hidden;
        }

        .faq-item[open] {
            border-color: var(--maldonado-blue);
        }

        .faq-item summary {
            position: relative;
            padding: 0.9rem 2.6rem 0.9rem 1rem;
            font-weight: 700;
            font-size: 0.95rem;
            color: var(--maldonado-blue);
            cursor: pointer;
            list-style: none;
        }

        .faq-item summary::-webkit-details-marker {
            display: none;
        }

        .faq-item summary::after {
            content: '+';
            position: absolute;
            right: 1rem;
            top: 50%;
            transform: translateY(-50%);
            font-size: 1.3rem;
            font-weight: 800;
            color: var(--maldonado-red);
            transition: transform 0.2s ease;
        }

        .faq-item[open] summary::after {
            transform: translateY(-50%) rotate(45deg);
        }

        .faq-item summary:focus-visible {
            outline: 2px solid var(--maldonado-yellow);
            outline-offset: -2px;
        }

        .faq-item p {
            padding: 0 1rem 1rem;
            font-size: 0.9rem;
            color: var(--text-muted);
            line-height: 1.55;
        }

        .faq-mas {
            margin-top: 1rem;
            font-size: 0.9rem;
            color: var(--text-muted);
            text-align: center;
        }

        @media (prefers-reduced-motion: reduce) {
            .faq-item summary::after { transition: none; }
        }

        .vendidos-puntos {
            display: none;
        }

        .section-link {
            font-size: 0.85rem;
            font-weight: 700;
            color: var(--maldonado-red);
            text-decoration: none;
            white-space: nowrap;
        }

        .section-link:hover {
            text-decoration: underline;
        }

        .product-image {
            width: 100%;
            height: 170px;
            object-fit: contain;
            background-color: #ffffff;
            padding: 0.6rem;
            border-bottom: 1px solid var(--border-color);
        }

        .product-image-foto {
            object-fit: cover;
            padding: 0;
        }

        .product-details {
            padding: 0.9rem;
            display: flex;
            flex-direction: column;
            flex-grow: 1;
        }

        .product-sku {
            font-size: 0.72rem;
            color: var(--maldonado-red);
            font-weight: 700;
        }

        .product-title {
            font-size: 0.95rem;
            font-weight: 700;
            color: var(--maldonado-blue);
            margin: 0.2rem 0 0.4rem 0;
        }

        .product-desc {
            font-size: 0.8rem;
            color: var(--text-muted);
            margin-bottom: 0.8rem;
            flex-grow: 1;
        }

        .btn-outline {
            width: 100%;
            padding: 0.5rem;
            border: 2px solid var(--maldonado-red);
            background: transparent;
            color: var(--maldonado-red);
            border-radius: 6px;
            font-weight: 700;
            font-size: 0.82rem;
            cursor: pointer;
            text-align: center;
            text-decoration: none;
            display: block;
        }

        .btn-outline:hover {
            background-color: var(--maldonado-red);
            color: white;
        }

        .location-section {
            margin: 3rem 0;
        }

        .location-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 1.5rem;
            background-color: var(--surface);
            border: 1px solid var(--border-color);
            border-radius: var(--radius-md);
            overflow: hidden;
            box-shadow: var(--shadow-sm);
        }

        .map-wrapper {
            width: 100%;
            height: 380px;
            background-color: #e2e8f0;
        }

        .map-wrapper iframe {
            width: 100%;
            height: 100%;
            border: 0;
        }

        .address-card {
            padding: 2rem;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .address-card h3 {
            color: var(--maldonado-blue);
            font-size: 1.4rem;
            font-weight: 800;
            margin-bottom: 1rem;
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        .address-item {
            margin-bottom: 1.2rem;
            display: flex;
            align-items: flex-start;
            gap: 0.8rem;
        }

        .address-icon {
            font-size: 1.2rem;
            color: var(--maldonado-red);
            background-color: #fef2f2;
            padding: 0.5rem;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .address-text h4 {
            font-size: 0.9rem;
            color: var(--maldonado-blue);
            font-weight: 700;
        }

        .address-text p {
            font-size: 0.88rem;
            color: var(--text-muted);
        }

        footer {
            background-color: var(--maldonado-blue);
            color: #ffffff;
            padding: 2rem 1.5rem;
            margin-top: 3rem;
            font-size: 0.88rem;
            text-align: center;
            border-top: 4px solid var(--maldonado-yellow);
        }

        footer strong {
            color: var(--maldonado-yellow);
        }

        @media (max-width: 768px) {
            .announcement-bar {
                font-size: 0.78rem;
                padding: 0.45rem 0.8rem;
                line-height: 1.4;
            }
            .top-bar {
                flex-direction: column;
                gap: 0.2rem;
                padding: 0.4rem 0.8rem;
                font-size: 0.75rem;
                text-align: center;
            }
            .top-bar-info {
                gap: 1rem;
                justify-content: center;
            }
            .top-bar span {
                white-space: nowrap;
            }

            header {
                position: static;
            }
            .header-container {
                flex-direction: column;
                gap: 0.6rem;
                padding: 0.7rem 1rem;
            }
            .logo-img {
                height: 48px;
                width: 45px;
            }
            .logo-sub {
                font-size: 0.7rem;
            }
            .logo-main {
                font-size: 1.5rem;
            }
            .header-actions {
                gap: 0.6rem 1rem;
                flex-wrap: wrap;
                justify-content: center;
            }
            .action-icon {
                font-size: 1.1rem;
            }

            .btn-whatsapp-header {
                padding: 0.5rem 1rem;
                font-size: 0.82rem;
                gap: 0.4rem;
            }
            .btn-whatsapp-header svg {
                width: 16px;
                height: 16px;
            }
            .hero-section,
            .features-bar,
            .categories-promo,
            main,
            .inicio-ancho {
                padding: 0 1rem;
            }
            main.inicio-secciones {
                padding: 0;
            }
            .hero-section {
                margin: 1rem auto;
            }

            .features-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                padding: 1rem;
                gap: 1rem 0.8rem;
            }
            .feature-card {
                gap: 0.5rem;
            }
            .feature-icon {
                font-size: 1.5rem;
            }
            .feature-title {
                font-size: 0.82rem;
            }
            .feature-subtitle {
                font-size: 0.72rem;
            }

            .categories-promo {
                margin: 1.5rem auto;
                gap: 1rem;
            }
            .promo-card {
                height: 150px;
            }
            .promo-overlay {
                width: 70%;
                padding: 1rem;
            }
            .promo-title {
                font-size: 0.95rem;
            }

            .calc-promo,
            .unico-promo {
                padding: 0 1rem;
                margin: 1.5rem auto;
            }
            .unico-promo-inner {
                grid-template-columns: minmax(0, 1fr);
                gap: 1.2rem;
                padding: 1.3rem;
                text-align: center;
            }
            .unico-promo-img {
                min-height: 0;
            }
            .unico-promo-img img {
                max-height: 180px;
            }
            .unico-promo-text h2 {
                font-size: 1.35rem;
            }
            .unico-promo-acciones {
                justify-content: center;
            }
            .calc-promo-inner {
                grid-template-columns: minmax(0, 1fr);
                gap: 1.2rem;
                padding: 1.3rem;
                text-align: center;
            }
            .calc-promo-text h2 {
                font-size: 1.35rem;
            }
            .calc-promo-text p {
                font-size: 0.88rem;
            }
            .calc-promo-grid {
                gap: 0.6rem;
            }
            .calc-promo-item {
                padding: 0.8rem 0.6rem;
                align-items: center;
            }
            .calc-promo-icon {
                font-size: 1.3rem;
            }
            .calc-promo-item strong {
                font-size: 0.9rem;
            }
            .calc-promo-item small {
                font-size: 0.72rem;
            }

            .section-title {
                font-size: 1.1rem;
            }
            .products-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0.8rem;
            }
            .product-image {
                height: 120px;
            }
            .product-details {
                padding: 0.7rem;
            }
            .product-title {
                font-size: 0.85rem;
            }
            .product-desc {
                font-size: 0.75rem;
            }

            #destacadosGrid,
            #ofertasGrid {
                display: flex;
                gap: 0.8rem;
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                scroll-behavior: smooth;
                scrollbar-width: none;
                padding: 0.2rem 0.1rem 0.4rem;
            }
            #destacadosGrid::-webkit-scrollbar,
            #ofertasGrid::-webkit-scrollbar {
                display: none;
            }
            #destacadosGrid .product-card,
            #ofertasGrid .product-card {
                flex: 0 0 68%;
                scroll-snap-align: start;
            }

            .tienda-section,
            .resenas-section {
                margin: 2rem 0;
            }
            .tienda-inner {
                grid-template-columns: minmax(0, 1fr);
                gap: 1.2rem;
            }
            .tienda-texto h3 {
                font-size: 1.2rem;
            }
            .tienda-cifras {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
            .tienda-galeria {
                grid-template-rows: 180px 130px;
            }
            .resenas-grid {
                display: flex;
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                scrollbar-width: none;
                gap: 0.8rem;
                padding-bottom: 0.3rem;
            }
            .resenas-grid::-webkit-scrollbar {
                display: none;
            }
            .resena {
                flex: 0 0 82%;
                scroll-snap-align: start;
            }

            .zonas-section,
            .faq-section {
                margin: 2rem 0;
            }
            .zonas-inner,
            .faq-lista {
                grid-template-columns: minmax(0, 1fr);
            }
            .zonas-gratis,
            .zonas-cobertura,
            .zonas-tiempo {
                padding: 1rem;
            }
            .faq-item summary {
                font-size: 0.9rem;
            }
            .vendidos-puntos {
                display: flex;
                justify-content: center;
                gap: 0.45rem;
                margin-top: 0.7rem;
            }
            .vendidos-punto {
                width: 8px;
                height: 8px;
                padding: 0;
                border: none;
                border-radius: var(--radius-full);
                background-color: var(--border-color);
                cursor: pointer;
                transition: width 0.25s ease, background-color 0.25s ease;
            }
            .vendidos-punto.activo {
                width: 22px;
                background-color: var(--maldonado-red);
            }

            .location-section {
                margin: 2rem 0;
            }
            .address-card {
                padding: 1.2rem;
            }
            .address-card h3 {
                font-size: 1.15rem;
            }

            footer {
                padding: 1.5rem 1rem;
                font-size: 0.8rem;
            }

            .slider-container {
                height: 390px;
            }
            .slide {
                padding: 1.5rem 1.5rem 3.4rem;
            }
            .slider-btn {
                top: auto;
                bottom: 8px;
                transform: none;
                width: 34px;
                height: 34px;
                font-size: 0.95rem;
            }
            .slider-btn.prev { left: 12px; }
            .slider-btn.next { right: 12px; }
            .slider-dots {
                bottom: 20px;
            }

            .slide-tarjeta {
                flex-direction: column;
                justify-content: center;
                gap: 0.6rem;
                padding: 1rem 1.5rem 3.4rem;
                text-align: center;
            }
            .slide-tarjeta-img {
                order: -1;
                flex: 0 0 auto;
                max-width: 100%;
                max-height: 90px;
            }
            .slide-tarjeta .slide-content {
                flex: 0 0 auto;
            }
            .slide-tarjeta .slide-content h2 {
                font-size: 1.2rem;
            }
            .slide-tarjeta .slide-content p {
                font-size: 0.82rem;
                margin-bottom: 0.7rem;
            }
            .slide-badge {
                font-size: 0.68rem;
                margin-bottom: 0.4rem;
            }
            .slide-legal {
                margin-top: 0.4rem;
            }
            .slide-content h2 {
                font-size: 1.4rem;
            }
            .slide-content p {
                font-size: 0.9rem;
            }
            .location-grid {
                grid-template-columns: minmax(0, 1fr);
            }
            .map-wrapper {
                height: 280px;
            }
        }

        @media (max-width: 380px) {
            .features-grid,
            .products-grid {
                grid-template-columns: minmax(0, 1fr);
            }
            .product-image {
                height: 160px;
            }
            #destacadosGrid .product-card,
            #ofertasGrid .product-card {
                flex-basis: 80%;
            }
            .slide {
                padding: 1.2rem 1.2rem 3.4rem;
            }
            .slide-tarjeta {
                padding: 1rem 1.2rem 3.4rem;
            }
            .slider-btn.prev { left: 8px; }
            .slider-btn.next { right: 8px; }
        }

