/* ===== IMPORTAR ESTILOS BASE DEL INDEX PRINCIPAL ===== */
/* Reset */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'Nunito', sans-serif; color: #333; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
a { text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
ul { list-style: none; }
section { padding: 80px 0; }

/* ===== TOP BAR ===== */
.top-bar { background: #092179; color: #fff; padding: 8px 0; font-size: 13px; }
.top-bar-content { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
.contact-info { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.address, .phone { display: flex; align-items: center; gap: 6px; }
.contact-info i { color: #FE5627; }
.email-btn { background: #FE5627; color: #fff; padding: 5px 14px; border-radius: 20px; font-size: 13px; font-weight: 600; transition: background 0.3s; }
.email-btn:hover { background: #e04a20; }
.email-btn i { margin-right: 4px; }

/* ===== NAVEGACIÓN IDÉNTICA AL INDEX PRINCIPAL ===== */
.main-navigation {
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    position: sticky;
    top: 0;
    z-index: 1000;
}
.main-navigation .container { max-width: 100%; padding: 0; }
.nav-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 40px;
    max-width: 1400px;
    margin: 0 auto;
}
.logo { flex-shrink: 0; }
.logo img { max-width: 293px; height: auto; }

/* Botón hamburguesa móvil */
.mobile-toggle {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    flex-direction: column;
    gap: 4px;
    padding: 5px;
}
.mobile-toggle span { width: 25px; height: 3px; background: #092179; display: block; border-radius: 3px; transition: all 0.3s; }
.mobile-toggle.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.mobile-toggle.active span:nth-child(2) { opacity: 0; }
.mobile-toggle.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

/* Menú principal */
.main-menu { display: flex; justify-content: flex-end; }
.main-menu ul { display: flex; flex-wrap: nowrap; list-style: none; gap: 30px; margin: 0; padding: 0; }
.main-menu a { color: #092179; text-decoration: none; font-weight: 600; font-size: 18px; white-space: nowrap; position: relative; padding: 5px 0; transition: color 0.3s ease; }
.main-menu a:hover { color: #FE5627; }
.main-menu a::after { content:''; position:absolute; bottom:0; left:0; width:0; height:2px; background:#FE5627; transition:width 0.3s ease; }
.main-menu a:hover::after { width: 100%; }
.fa.fa-chevron-down { font-size: 10px; }

/* Link activo */
.main-menu a.active {
    color: #1a1a1a !important;
    background: #FE5627;
    padding: 7px 18px !important;
    border-radius: 6px;
    font-weight: 700;
    box-shadow: 0 3px 10px rgba(254,86,39,0.35);
}
.main-menu a.active:hover { background: #e04a20 !important; color: #0c1e3e !important; }
.main-menu a.active::after { display: none; }

/* Submenú */
.has-submenu { position: relative; }
.has-submenu .submenu {
    display: none;
    position: absolute;
    top: 100%; left: 0; right: auto;
    background: #fff;
    list-style: none;
    padding: 8px 0;
    margin: 0;
    z-index: 999;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    border-top: 2px solid #092179;
    flex-direction: column;
    gap: 0;
    min-width: 230px;
}
.has-submenu:hover .submenu { display: flex; }
.has-submenu .submenu li a { display:block; padding:10px 22px; font-size:15px; white-space:nowrap; color:#092179; font-weight:500; }
.has-submenu .submenu li a:hover { background:#f0f4ff; color:#FE5627; padding-left:28px; }
.has-submenu .submenu li a::after { display:none; }
.has-submenu .submenu li:not(:last-child) { border-bottom: 1px solid #f0f0f0; }

/* ===== SLIDER ===== */
.hero-banner { height:600px; position:relative; overflow:hidden; background:#092179; }
.slide { position:absolute; top:0; left:0; width:100%; height:100%; background-size:cover; background-position:center; opacity:0; transition:opacity 1s; }
.slide.active { opacity:1; }
.slide-content {
    position:absolute; top:50%; left:8%;
    transform:translateY(-50%);
    max-width:600px;
    padding:40px 50px;
    background:rgba(5,15,50,0.78);
    border-radius:15px;
    border-left:6px solid #FE5627;
    box-shadow:0 10px 40px rgba(0,0,0,0.3);
}
.slide-content::before { content:''; position:absolute; top:0; left:0; width:60px; height:60px; background:#FE5627; clip-path:polygon(0 0,100% 0,0 100%); border-radius:12px 0 0 0; }
.slide.active .slide-content { animation:slideInLeft 0.8s ease-out; }
@keyframes slideInLeft { 0%{opacity:0;left:-10%} 100%{opacity:1;left:8%} }
.slide-content h1 { color:#FE5627; font-size:53px; font-weight:800; margin-bottom:20px; line-height:1.2; letter-spacing:-1px; }
.slide-content p  { color:#CCC; font-size:25px; font-weight:600; line-height:1.4; }
.slider-controls { position:absolute; top:50%; width:100%; transform:translateY(-50%); display:flex; justify-content:space-between; padding:0 20px; z-index:10; }
.slider-controls button { background:rgba(254,86,39,0.8); color:white; border:2px solid white; width:60px; height:60px; border-radius:50%; cursor:pointer; font-size:21px; transition:all 0.3s; }
.slider-controls button:hover { background:rgba(254,86,39,1); transform:scale(1.1); }
.slider-dots { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); display:flex; gap:10px; z-index:10; }
.dot { width:14px; height:14px; border-radius:50%; background:rgba(9,33,121,0.5); border:2px solid white; cursor:pointer; transition:all 0.3s; }
.dot.active { background:#FE5627; transform:scale(1.2); }

/* ===== SECCIONES ===== */
.section-title { font-size:32px; font-weight:800; color:#092179; margin-bottom:15px; }
.section-title::after { content:''; display:block; width:60px; height:4px; background:#FE5627; margin:10px auto 0; border-radius:2px; }
.section-subtitle { display:inline-block; background:#FE5627; color:#fff; padding:4px 16px; border-radius:20px; font-size:13px; font-weight:700; margin-bottom:12px; text-transform:uppercase; letter-spacing:1px; }

/* ===== SERVICIOS ===== */
.services-section { background:#fff; }
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.service-card { background:#f8f9fa; border-radius:15px; padding:30px 25px; text-align:center; transition:transform 0.3s, box-shadow 0.3s; display:flex; flex-direction:column; align-items:center; }
.service-card:hover { transform:translateY(-8px); box-shadow:0 15px 35px rgba(9,33,121,0.15); }
.service-icon { width:80px; height:80px; background:#092179; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 20px; }
.service-icon i { color:#fff; font-size:32px; }
.service-card h3 { color:#092179; font-size:18px; font-weight:800; margin-bottom:12px; }
.service-card p  { color:#666; font-size:14px; line-height:1.7; flex:1; }
.service-card a  { display:inline-block; background:#FE5627; color:#092179; border-radius:20px; padding:7px 25px; margin-top:18px; font-weight:700; font-size:14px; transition:all 0.3s; }
.service-card a:hover { background:#092179; color:#fff; }

/* ===== ABOUT ===== */
.about-section { background:#f8f9fa; }
.about-content { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.about-text h2 { text-align:left; }
.about-text h2::after { margin:10px 0 0; }
.about-text p { color:#666; font-size:15px; line-height:1.8; margin-bottom:15px; }
.about-image img { width:100%; border-radius:15px; box-shadow:0 10px 30px rgba(0,0,0,0.15); }

/* Check list */
.check-list { list-style:none; padding:0; margin:20px 0; }
.check-list li { display:flex; align-items:flex-start; gap:12px; margin-bottom:16px; font-size:15px; color:#555; line-height:1.6; }
.check-list li i { color:#FE5627; font-size:18px; margin-top:2px; flex-shrink:0; }

/* Features grid */
.features-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:15px; margin-top:25px; }
.feature-item { background:#f8f9fa; border-radius:10px; padding:18px; display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px; border-left:3px solid #FE5627; }
.feature-item i  { color:#FE5627; font-size:26px; }
.feature-item h4 { color:#092179; font-size:14px; font-weight:700; margin:0; }

/* ===== SAFETY SECTION ===== */
.safety-section { background:#fff; }
.safety-items { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; }
.safety-item { background:#f8f9fa; border-radius:12px; padding:25px; display:flex; align-items:flex-start; gap:18px; box-shadow:0 4px 15px rgba(0,0,0,0.07); transition:transform 0.3s, box-shadow 0.3s; }
.safety-item:hover { transform:translateY(-5px); box-shadow:0 10px 25px rgba(0,0,0,0.13); }
.safety-item > i { color:#FE5627; font-size:28px; flex-shrink:0; margin-top:3px; }
.safety-item h4   { color:#092179; font-size:16px; margin-bottom:6px; }
.safety-item p    { color:#666; font-size:13px; line-height:1.6; margin:0; }

/* ===== MAPA ===== */
#contact { padding: 0; }

/* ===== CARRUSEL CLIENTES ===== */
.clientes { background:#fff; padding:60px 0; }
.clientes .section-title { text-align:center; margin-bottom:35px; }
.carrusel-container { position:relative; display:flex; align-items:center; justify-content:center; width:100%; max-width:1200px; margin:0 auto; padding:0 60px; }
.carrusel-window { overflow:hidden; width:100%; }
.item-carrusel { display:flex; gap:30px; align-items:center; transition:transform 1.2s cubic-bezier(0.4,0,0.2,1); will-change:transform; }
.item-carrusel img { flex:0 0 calc(16.66% - 30px); max-width:140px; filter:grayscale(100%) brightness(1.1); transition:filter 0.8s ease, transform 0.4s ease; }
.item-carrusel img:hover { filter:grayscale(0%) brightness(1); opacity:1; transform:scale(1.08) translateY(-5px); box-shadow:0 10px 30px rgba(0,0,0,0.15); }
.carrusel-btn { position:absolute; top:50%; transform:translateY(-50%); z-index:10; border:none; background:#092179; color:white; width:45px; height:45px; border-radius:50%; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background 0.3s ease, box-shadow 0.3s ease; box-shadow:0 4px 15px rgba(9,33,121,0.3); }
.carrusel-btn.prev { left:0; margin-right:20px; color:white; }
.carrusel-btn.next { right:0; margin-left:20px; color:white; }
.carrusel-btn:hover { background:#FE5627; transform:translateY(-50%); box-shadow:0 4px 15px rgba(254,86,39,0.4); }
.carrusel-btn:active { background:#b30006; }
.carrusel-btn i { font-size:18px; color:white; }
@media (max-width:992px) { .item-carrusel img { flex:0 0 calc(25% - 20px); max-width:100px; } }
@media (max-width:768px) { .item-carrusel img { flex:0 0 calc(33.33% - 15px); max-width:80px; } .carrusel-btn { width:38px; height:38px; } .carrusel-btn i { font-size:14px; } }
@media (max-width:480px) { .item-carrusel img { flex:0 0 calc(50% - 15px); } }

/* ===== FOOTER ===== */
footer { background:#0a1628; color:#ccc; padding:60px 0 0; }
.footer-content { display:grid; grid-template-columns:2fr 1fr 1fr 1.5fr; gap:40px; margin-bottom:40px; }
.footer-logo { margin-bottom:20px; }
.footer-logo img { max-width:200px; }
.footer-description { font-size:14px; line-height:1.8; color:#aaa; margin-bottom:20px; }
.footer-social { display:flex; gap:12px; margin-bottom:20px; }
.footer-social a { width:38px; height:38px; background:rgba(255,255,255,0.08); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#ccc; transition:all 0.3s; }
.footer-social a:hover { background:#FE5627; color:#fff; }
.payment-methods { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.payment-methods span { font-size:13px; color:#aaa; }
.payment-methods i { font-size:24px; color:#aaa; }
.footer-title { color:#fff; font-size:16px; font-weight:700; margin-bottom:20px; text-transform:uppercase; letter-spacing:1px; }
.footer-title::after { content:''; display:block; width:30px; height:3px; background:#FE5627; margin-top:8px; border-radius:2px; }
.footer-links { list-style:none; padding:0; }
.footer-links li { margin-bottom:10px; }
.footer-links a { color:#aaa; font-size:14px; transition:color 0.3s; display:flex; align-items:center; gap:8px; }
.footer-links a i { color:#FE5627; font-size:12px; }
.footer-links a:hover { color:#FE5627; padding-left:5px; }
.footer-contact-info p { display:flex; align-items:flex-start; gap:10px; font-size:14px; color:#aaa; margin-bottom:12px; line-height:1.5; }
.footer-contact-info i { color:#FE5627; margin-top:3px; flex-shrink:0; }
.footer-contact-info a { color:#aaa; }
.footer-contact-info a:hover { color:#FE5627; }
.footer-bottom { border-top:1px solid rgba(255,255,255,0.08); padding:20px 0; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; }
.copyright p { font-size:13px; color:#888; }
.footer-legal { display:flex; gap:15px; align-items:center; }
.footer-legal a { color:#888; font-size:13px; transition:color 0.3s; }
.footer-legal a:hover { color:#FE5627; }
.footer-legal span { color:#555; }
.newsletter-title { margin-top:25px !important; }
.footer-brands-list { list-style:none; padding:0; display:grid; grid-template-columns:repeat(2,1fr); gap:10px 20px; margin-top:10px; }
.footer-brands-list li { font-size:14px; color:#b0b0b0; position:relative; padding-left:15px; transition:color 0.3s; }
.footer-brands-list li::before { content:'•'; color:#FE5627; position:absolute; left:0; font-weight:bold; }
.footer-brands-list li:hover { color:#fff; }

/* ===== WHATSAPP ===== */
.whatsapp-wrapper { position:fixed; bottom:20px; right:20px; z-index:9999; display:flex; flex-direction:column; align-items:flex-end; gap:10px; }
.whatsapp-bubble { background:#fff; border-radius:12px; box-shadow:0 8px 30px rgba(0,0,0,0.15); width:280px; overflow:hidden; animation:bubbleIn 0.4s ease; }
@keyframes bubbleIn { from{opacity:0;transform:scale(0.8) translateY(20px)} to{opacity:1;transform:scale(1) translateY(0)} }
.whatsapp-bubble-header { background:#25D366; padding:12px 14px; display:flex; align-items:center; gap:10px; }
.whatsapp-avatar { width:38px; height:38px; background:rgba(255,255,255,0.25); border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.whatsapp-avatar i { color:#fff; font-size:20px; }
.whatsapp-bubble-info { display:flex; flex-direction:column; flex:1; }
.whatsapp-name  { color:#fff; font-weight:700; font-size:14px; }
.whatsapp-status { color:rgba(255,255,255,0.85); font-size:12px; display:flex; align-items:center; gap:4px; }
.whatsapp-dot { width:7px; height:7px; background:#fff; border-radius:50%; display:inline-block; animation:blink 1.5s infinite; }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0.3} }
.whatsapp-close { background:none; border:none; color:#fff; font-size:22px; cursor:pointer; line-height:1; padding:0; opacity:0.8; }
.whatsapp-close:hover { opacity:1; }
.whatsapp-bubble-body { padding:14px 16px; background:#f0f0f0; }
.whatsapp-bubble-body p { background:#fff; border-radius:0 10px 10px 10px; padding:10px 14px; font-size:13px; color:#333; line-height:1.5; margin:0; box-shadow:0 1px 3px rgba(0,0,0,0.1); }
.whatsapp-bubble-btn { display:block; background:#25D366; color:#fff; text-align:center; padding:12px; font-weight:700; font-size:14px; text-decoration:none; transition:background 0.3s; }
.whatsapp-bubble-btn:hover { background:#1ebe5d; }
.whatsapp-float { position:static !important; width:58px; height:58px; background:#25D366; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 15px rgba(37,211,102,0.5); transition:transform 0.3s; animation:none !important; }
.whatsapp-float:hover { transform:scale(1.1); }
.whatsapp-float i { color:#fff; font-size:28px; }

/* ===== BACK TO TOP ===== */
.back-to-top { position:fixed; bottom:90px; right:20px; width:45px; height:45px; background:#092179; color:#fff; border:2px solid #FE5627; border-radius:50%; cursor:pointer; font-size:16px; opacity:0; visibility:hidden; transition:all 0.3s; z-index:9998; }
.back-to-top:hover { background:#FE5627; }

/* ===== RESPONSIVE ===== */
@media (max-width:992px) {
    .services-grid { grid-template-columns:repeat(2,1fr); }
    .safety-items  { grid-template-columns:repeat(2,1fr); }
    .about-content { grid-template-columns:1fr; gap:30px; }
    .footer-content { grid-template-columns:1fr 1fr; }
}
@media (max-width:768px) {
    .mobile-toggle { display:flex; }
    .main-menu {
        display:none;
        position:fixed; top:0; left:0;
        width:80%; max-width:320px; height:100vh;
        background:#fff;
        flex-direction:column;
        padding:80px 20px 30px;
        box-shadow:5px 0 20px rgba(0,0,0,0.15);
        overflow-y:auto;
        z-index:999;
        transition:transform 0.3s;
    }
    .main-menu.open { display:flex; }
    .main-menu ul { flex-direction:column; gap:0; width:100%; }
    .main-menu > ul > li { border-bottom:1px solid #f0f0f0; }
    .main-menu a { padding:15px 10px; font-size:16px; display:block; width:100%; }
    .has-submenu .submenu { position:static; display:none; box-shadow:none; border:none; background:#f8f9fa; padding:0; min-width:auto; }
    .has-submenu.active .submenu { display:flex; }
    .has-submenu .submenu li a { padding:12px 20px; font-size:14px; }
    .slide-content { left:4%; right:4%; max-width:92%; padding:25px 18px; }
    .slide-content h1 { font-size:28px; }
    .slide-content p  { font-size:15px; }
    .hero-banner { height:400px; }
    .services-grid { grid-template-columns:1fr; }
    .footer-content { grid-template-columns:1fr; }
    .footer-bottom { flex-direction:column; text-align:center; }
    .nav-container { padding:12px 20px; }
    .logo img { max-width:200px; }
}
@media (max-width:480px) {
    .hero-banner { height:340px; }
    .slide-content h1 { font-size:22px; }
    .safety-items  { grid-template-columns:1fr; }
    .features-grid { grid-template-columns:repeat(2,1fr); }
    .top-bar .contact-info { display:none; }
}

/* ===== HERO BANNER (imagen de fondo) ===== */
.hero-banner {
    background: linear-gradient(rgba(9,33,121,0.82), rgba(9,33,121,0.82)), url('images/banner1.jpg');
    background-size: cover;
    background-position: center;
    padding: 110px 0;
    text-align: center;
    color: #fff;
}
.hero-banner h1 { color:#FE5627; font-size:46px; font-weight:800; margin-bottom:18px; line-height:1.2; }
.hero-banner p { max-width:700px; margin:0 auto 28px; font-size:18px; color:#e5e9f5; line-height:1.6; }
.hero-banner .btn-primary {
    display:inline-block; background:#FE5627; color:#092179; font-weight:700;
    padding:14px 34px; border-radius:30px; text-decoration:none; transition:all 0.3s;
}
.hero-banner .btn-primary:hover { background:#092179; color:#fff; }
@media (max-width:768px) {
    .hero-banner { padding:70px 0; }
    .hero-banner h1 { font-size:30px; }
    .hero-banner p { font-size:15px; }
}

/* ===== CHECK LIST ===== */
.check-list { list-style:none; padding:0; margin:20px 0; }
.check-list li { display:flex; align-items:flex-start; gap:12px; margin-bottom:16px; font-size:15px; color:#555; line-height:1.6; }
.check-list li i { color:#FE5627; font-size:18px; margin-top:2px; flex-shrink:0; }

/* ===== PROYECTOS / MARCAS ===== */
.projects-section .project-card { background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 4px 15px rgba(0,0,0,0.08); transition:transform 0.3s, box-shadow 0.3s; }
.projects-section .project-card:hover { transform:translateY(-5px); box-shadow:0 10px 25px rgba(0,0,0,0.13); }
.projects-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; }
.project-info { padding:22px; }
.project-category { display:inline-block; background:#FE5627; color:#fff; padding:3px 14px; border-radius:20px; font-size:12px; font-weight:700; margin-bottom:10px; }
.project-info h3 { color:#092179; font-size:18px; margin-bottom:10px; }
.project-info p { color:#666; font-size:14px; line-height:1.6; }
@media (max-width:992px) { .projects-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:576px)  { .projects-grid { grid-template-columns:1fr; } }

/* ===== ICON CARD (usado en marcas sin logo) ===== */
.icon-card { background:#fff; border-radius:12px; padding:35px 25px; text-align:center; box-shadow:0 4px 15px rgba(0,0,0,0.08); transition:transform 0.3s,box-shadow 0.3s; }
.icon-card:hover { transform:translateY(-5px); box-shadow:0 10px 25px rgba(0,0,0,0.13); }
.icon-card .icon-circle { width:70px; height:70px; background:#092179; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 18px; }
.icon-card .icon-circle i { color:#FE5627; font-size:30px; }
.icon-card h3 { color:#092179; font-size:18px; font-weight:800; margin-bottom:10px; }
.icon-card p { color:#666; font-size:14px; line-height:1.6; }

/* ===== MAPA / CONTACTO ===== */
.contact-section { background:#f8f9fa; padding:0; }
.map-container { line-height:0; }

/* ===== CARRUSEL CLIENTES ===== */
.clientes { background:#fff; padding:60px 0; }
.carrusel-container { position:relative; display:flex; align-items:center; justify-content:center; width:100%; max-width:1200px; margin:0 auto; padding:0 60px; }
.carrusel-window { overflow:hidden; width:100%; }
.item-carrusel { display:flex; gap:30px; align-items:center; transition:transform 1.2s cubic-bezier(0.4,0,0.2,1); will-change:transform; }
.item-carrusel img { flex:0 0 calc(16.66% - 30px); max-width:140px; filter:grayscale(100%) brightness(1.1); transition:filter 0.8s ease, transform 0.4s ease; }
.item-carrusel img:hover { filter:grayscale(0%) brightness(1); opacity:1; transform:scale(1.08) translateY(-5px); box-shadow:0 10px 30px rgba(0,0,0,0.15); }
.carrusel-btn { position:absolute; top:50%; transform:translateY(-50%); z-index:10; border:none; background:#092179; color:white; width:45px; height:45px; border-radius:50%; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background 0.3s ease, box-shadow 0.3s ease; box-shadow:0 4px 15px rgba(9,33,121,0.3); }
.carrusel-btn.prev { left:0; margin-right:20px; color:white; }
.carrusel-btn.next { right:0; margin-left:20px; color:white; }
.carrusel-btn:hover { background:#FE5627; transform:translateY(-50%); box-shadow:0 4px 15px rgba(254,86,39,0.4); }
.carrusel-btn:active { background:#b30006; }
.carrusel-btn i { font-size:18px; color:white; }
@media (max-width:992px) { .item-carrusel img { flex:0 0 calc(25% - 20px); max-width:100px; } }
@media (max-width:768px) { .item-carrusel img { flex:0 0 calc(33.33% - 15px); max-width:80px; } .carrusel-btn { width:38px; height:38px; } .carrusel-btn i { font-size:14px; } }
@media (max-width:480px) { .item-carrusel img { flex:0 0 calc(50% - 15px); } }

/* ===== WHATSAPP BURBUJA ===== */
.whatsapp-wrapper { position:fixed; bottom:20px; right:20px; z-index:9999; display:flex; flex-direction:column; align-items:flex-end; gap:10px; }
.whatsapp-bubble { background:#fff; border-radius:12px; box-shadow:0 8px 30px rgba(0,0,0,0.15); width:280px; overflow:hidden; animation:bubbleIn 0.4s ease; display:none; }
@keyframes bubbleIn { from{opacity:0;transform:scale(0.8) translateY(20px)} to{opacity:1;transform:scale(1) translateY(0)} }
.whatsapp-bubble-header { background:#25D366; padding:12px 14px; display:flex; align-items:center; gap:10px; }
.whatsapp-avatar { width:38px; height:38px; background:rgba(255,255,255,0.25); border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.whatsapp-avatar i { color:#fff; font-size:20px; }
.whatsapp-bubble-info { display:flex; flex-direction:column; flex:1; }
.whatsapp-name { color:#fff; font-weight:700; font-size:14px; }
.whatsapp-status { color:rgba(255,255,255,0.85); font-size:12px; display:flex; align-items:center; gap:4px; }
.whatsapp-dot { width:7px; height:7px; background:#fff; border-radius:50%; display:inline-block; animation:blink 1.5s infinite; }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0.3} }
.whatsapp-close { background:none; border:none; color:#fff; font-size:22px; cursor:pointer; line-height:1; padding:0; opacity:0.8; }
.whatsapp-close:hover { opacity:1; }
.whatsapp-bubble-body { padding:14px 16px; background:#f0f0f0; }
.whatsapp-bubble-body p { background:#fff; border-radius:0 10px 10px 10px; padding:10px 14px; font-size:13px; color:#333; line-height:1.5; margin:0; box-shadow:0 1px 3px rgba(0,0,0,0.1); }
.whatsapp-bubble-btn { display:block; background:#25D366; color:#fff; text-align:center; padding:12px; font-weight:700; font-size:14px; text-decoration:none; transition:background 0.3s; }
.whatsapp-bubble-btn:hover { background:#1ebe5d; }
.whatsapp-float { position:static !important; width:58px; height:58px; background:#25D366; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 15px rgba(37,211,102,0.5); transition:transform 0.3s; animation:none !important; }
.whatsapp-float:hover { transform:scale(1.1); }
.whatsapp-float i { color:#fff; font-size:28px; }

/* footer marcas */
.newsletter-title { margin-top:25px !important; }
.footer-brands-list { list-style:none; padding:0; display:grid; grid-template-columns:repeat(2,1fr); gap:10px 20px; margin-top:10px; }
.footer-brands-list li { font-size:14px; color:#b0b0b0; position:relative; padding-left:15px; transition:color 0.3s; }
.footer-brands-list li::before { content:'•'; color:#FE5627; position:absolute; left:0; font-weight:bold; }
.footer-brands-list li:hover { color:#fff; }
.back-to-top.visible { opacity:1; visibility:visible; }
