/* ============================= */
/* Estilos base del acordeón */
/* ============================= */

.acordeon-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.acordeon-menu li {
    font-size: 32px;
    color: #fff;
}

.acordeon-item a {
    display: block;
    padding: 10px;
    text-decoration: none;
    color: #fff; /* NORMAL */
    position: relative;
    transition: color 0.2s;
    width: 100%;
}

/* Línea inferior como pointer */
.acordeon-item a::after {
    content: "";
    display: block;
    height: 2px;
    width: 0%;
    background-color: transparent;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: all 0.2s;
}


/* ============================= */
/* Hover */
/* ============================= */
.acordeon-item a:hover {
    color: #DB9245; /* texto hover */
}

.acordeon-item a:hover::after {
    width: 100%; /* línea completa */
    background-color: #663A3A; /* color pointer */
}

/* ============================= */
/* Active / abierto */
/* ============================= */
.acordeon-item.open > a {
    color: red; /* texto activo */
}

.acordeon-item.open > a::after {
    width: 100%;
    background-color: red; /* pointer activo */
}

/* ============================= */
/* Submenús */
.acordeon-item ul {
    display: none;
}

.acordeon-item.open > ul {
    display: block;
}

/* ============================= */
/* Símbolo + / - */
.acordeon-item.has-children > a::before {
    content: " +";
    position: absolute;
    right: 10px;
    font-weight: bold;
}

.acordeon-item.open.has-children > a::before {
    content: " -";
}
