/* navbar */
.navbar-default{
    background-color:#fff;
    border-color:#000;
    font-size:15px;
    font-weight:bold;
    margin-bottom:0;
    border-top:1px solid #000;
}

/* title */
.navbar-default .navbar-brand {
    color: #333;
    font-size:15px;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
    color: #5E5E5E;
}

/* link */
.navbar-default .navbar-nav > li > a {
    color: #333;
}

.navbar-default .navbar-nav > .active > a, 
.navbar-default .navbar-nav > .active > a:hover, 
.navbar-default .navbar-nav > .active > a:focus {
    color: #555;
    background-color: #E7E7E7;
}

/* caret */
.navbar-default .navbar-nav > .dropdown > a .caret {
    border-top-color: #777;
    border-bottom-color: #777;
}
.navbar-default .navbar-nav > .dropdown > a:hover .caret,
.navbar-default .navbar-nav > .dropdown > a:focus .caret {
    border-top-color: #333;
    border-bottom-color: #333;
}
.navbar-default .navbar-nav > .open > a .caret, 
.navbar-default .navbar-nav > .open > a:hover .caret, 
.navbar-default .navbar-nav > .open > a:focus .caret {
    border-top-color: #555;
    border-bottom-color: #555;
}

/* Que los dos links (texto y caret) se vean como uno solo (desktop/base) */
.navbar-nav > li.dropdown > a:first-child {
    display: inline-block;
    padding-right: 0;
}
.navbar-nav > li.dropdown > a.dropdown-toggle {
    display: inline-block;
    padding-left: 4px;
    padding-right: 10px;
}

/* mobile version */
.navbar-default .navbar-toggle {
    border-color: #3E8C3E;
    background:#cedacf;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: #cedacf;
}
.navbar-default .navbar-toggle .icon-bar {
    background-color: #3E8C3E;
}

/* Fondo gris claro para ítems activos o desplegados */
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  background-color: #f5f5f5;
  color: #333;
}

/* Hover en ítems de primer nivel */
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  background-color: #f5f5f5;
  color: #000;
}

/* --- BOTÓN HAMBURGUESA --- */
.navbar-toggle {
  float: left !important;
  margin-left: 10px !important;
  margin-right: 0 !important;
}

/* Estilo del botón hamburguesa cuando está fuera del navbar */
#hamburguesa-top {
  background-color: #ffffff !important;
  border: 2px solid #d9251d !important;
  border-radius: 6px !important;
  padding: 6px 10px !important;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
  margin-top: 0 !important;
  animation: pulse-borde 2.6s ease-in-out infinite;
}

#hamburguesa-top .icon-bar {
  display: block;
  background-color: #0c3c78;
  height: 2px;
  width: 22px;
  border-radius: 1px;
  margin: 4px 0;
}

/* SOLUCIÓN ESPECÍFICA: vertical entre 767px y 991px */
@media (min-width: 768px) and (max-width: 991px) {
    #menu-principal.in .navbar-nav > li {
        float: none !important;
    }
    #menu-principal.in .navbar-nav {
        width: 100%;
        margin: 0 !important;
    }
}

/* --- MOBILE --- */
@media (max-width: 991px){
    .navbar-toggle{ display:block !important; }

    .navbar-default:not(:has(#menu-principal.in)){
        display: none !important;
        min-height: 0 !important;
        margin-bottom: 0 !important;
        border: none !important;
    }
    .navbar-default:has(#menu-principal.in){
        display: block !important;
        margin-bottom: 0;
        border-top: 1px solid #000;
    }

    #menu-principal.collapse{
        display: none;
    }
    #menu-principal.in{
        display: block !important;
        overflow-y: auto !important;
        background:#fff;
        border-top:1px solid #eee;
        box-shadow:none;
        padding:8px 0;
    }

    .navbar-nav .dropdown-menu{
        display: none !important;
        position: static !important;
        float: none !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        box-shadow: none !important;
        border-bottom: 1px solid #eee !important;
    }
    .navbar-nav .open .dropdown-menu{
        display: block !important;
    }

    #menu-principal{
        font-size:16px;
        line-height:1.4;
        font-family:"Inter", Arial, sans-serif;
    }

    #menu-principal .navbar-nav > li{
        border-bottom:1px solid #eee;
    }
    #menu-principal .navbar-nav > li:last-child{
        border-bottom:0;
    }
    #menu-principal .navbar-nav > li > a{
        padding:14px 16px;
        padding-left:40px;
        color:#333;
        font-weight:500;
    }

    #menu-principal .navbar-nav > li > a:hover,
    #menu-principal .navbar-nav > li > a:focus{
        background-color:#f5f5f5;
        color:#000;
    }
    #menu-principal .navbar-nav > .active > a{
        background:#e7e7e7;
        color:#333;
        font-weight:600;
    }

    #menu-principal a:focus{
        outline: none !important;
        box-shadow: none !important;
    }
    #menu-principal a:focus-visible{
        outline:2px solid #0c3c78;
        outline-offset:2px;
    }

    #menu-principal .dropdown-menu > li > a{
        padding:12px 16px;
        padding-left:55px;
        border-top:1px solid #eee;
        color:#444;
    }
    #menu-principal .dropdown-menu > li:first-child > a{ border-top:0; }

    #menu-principal .navbar-nav > li.open > a{
        border-bottom:0 !important;
    }

    /* caret a la izquierda, texto a la derecha */
    #menu-principal .navbar-nav > li.dropdown{
        position:relative;
    }
    #menu-principal .navbar-nav > li.dropdown > a:first-child{
        display:block;
        padding-left:55px;
    }
    #menu-principal .navbar-nav > li.dropdown > a.dropdown-toggle{
        position:absolute;
        left:26px;
        top:0;
        height:48px;            /* alto fijo de la fila */
        display:flex;
        align-items:center;     /* centra verticalmente el caret */
        justify-content:center; /* lo centra dentro del cuadradito */
        padding:0;
        width:18px;
        text-align:center;
    }

    /* --- Resalte con píldora para "Más muebles" --- */
    #menu-principal .menu-mas-muebles{
        position: relative;
        padding-right: 110px;
    }
    #menu-principal .menu-mas-muebles::before{
        content: "Ver más";
        position: absolute;
        top: 50%;
        right: 52px;
        transform: translateY(-50%);
        font-size: 12px; line-height: 1;
        padding: 2px 8px;
        border-radius: 999px;
        background: rgba(217,37,29,0.08);
        color: #d9251d;
        border: 1px solid rgba(217,37,29,0.35);
        white-space: nowrap;
    }
    #menu-principal .menu-mas-muebles:hover::before,
    #menu-principal .menu-mas-muebles:focus::before{
        background: rgba(217,37,29,0.12);
        border-color: rgba(217,37,29,0.5);
    }
    #menu-principal .open > .menu-mas-muebles::before{
        background: rgba(217,37,29,0.16);
        border-color: rgba(217,37,29,0.6);
    }

    #menu-principal .navbar-nav > li > a.menu-mas-muebles{
        background-image: linear-gradient(90deg, rgba(217,37,29,0.06), rgba(217,37,29,0) 65%);
        background-color: transparent;
        background-repeat: no-repeat;
    }
    #menu-principal .navbar-nav > li > a.menu-mas-muebles:hover,
    #menu-principal .navbar-nav > li > a.menu-mas-muebles:focus,
    #menu-principal .navbar-nav > li.open > a.menu-mas-muebles{
        background-image: linear-gradient(90deg, rgba(217,37,29,0.10), rgba(217,37,29,0) 65%);
    }
}

/* desktop */
@media (min-width: 992px){
    .dropdown:hover .dropdown-menu { display:block; }

    /* Ocultar el botón con el ícono (+ / caret) en escritorio */
    #menu-principal .navbar-nav > li.dropdown > a.dropdown-toggle{
        display:none;
    }

    /* En escritorio, que Sillas / Mesas / Ver Mas tengan el mismo padding que el resto */
    #menu-principal .navbar-nav > li.dropdown > a:first-child{
        display:block;
        padding-left:15px;
        padding-right:15px;
    }

    .caret-right{
        width:0; height:0;
        border-top:4px solid transparent;
        border-bottom:4px solid transparent;
        border-left:4px solid #777;
    }

    .navbar-default .navbar-nav .open .dropdown-menu > li > a { color:#777; }
    .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
    .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { color:#333; }

    #hamburguesa-top { display: none; }
}
  

/* Ajuste fino: subir el ícono de hamburguesa */
#hamburguesa-top.navbar-toggle {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 4px 4px !important;
}

#hamburguesa-top:hover {
  background-color: #f8f8f8 !important;
  border-color: #b71b12 !important;
}

#hamburguesa-top:focus,
#hamburguesa-top:active {
  background-color: #ffffff !important;
  border-color: #d9251d !important;
  outline: none !important;
  box-shadow: none !important;
}

@keyframes pulse-borde {
  0% { box-shadow: 0 0 0 0 rgba(217, 37, 29, 0.5); }
  60% { box-shadow: 0 0 0 7px rgba(217, 37, 29, 0.15); }
  100%{ box-shadow: 0 0 0 0 rgba(217, 37, 29, 0); }
}
