.acordeon-vanilla {
    font-family: "HK Grotesk", sans-serif;
}

.acordeon-vanilla__item {
    background: none;
    border: none;
    margin-bottom: 1rem;
}

.acordeon-vanilla__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    background: none;
    border: none;
    padding: 10px 0;
    font-size: 18px;
    font-weight: 500;
    color: #555;
    cursor: pointer;
    text-align: left;
    position: relative;
    transition: font-size 0.3s ease;
}

.acordeon-vanilla__header.is-active {
    color: #111;
}

.acordeon-vanilla__title {
    flex: 1;
    text-align: left;
}

.acordeon-vanilla__icon {
    position: relative;
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    margin-left: 16px;
}

.acordeon-vanilla__icon::before,
.acordeon-vanilla__icon::after {
    content: "";
    position: absolute;
    background: #555;
    transition: all 0.3s ease;
    border-radius: 1px;
}

/* Línea horizontal */
.acordeon-vanilla__icon::before {
    width: 14px;
    height: 2px;
    top: 6px;
    left: 0;
}

/* Línea vertical */
.acordeon-vanilla__icon::after {
    width: 2px;
    height: 14px;
    top: 0;
    left: 6px;
}

.acordeon-vanilla__header.is-active .acordeon-vanilla__icon::after {
    transform: rotate(90deg);
    visibility: hidden;
}

.acordeon-vanilla__header.is-active .acordeon-vanilla__icon::before {
    transform: rotate(180deg);
}

.acordeon-vanilla__body {
    height: 0;
    overflow: hidden;
    transition: height 0.4s ease, padding 0.05s ease;
    padding-top: 0;
    padding-bottom: 0;
    visibility: hidden;
}

.acordeon-vanilla__body--open {
    visibility: visible;
}

/* ===== RTL ARabe ===== */

[dir="rtl"] .acordeon-vanilla__header {
    flex-direction: row-reverse;
    text-align: right;
}

[dir="rtl"] .acordeon-vanilla__title {
    text-align: right;
}

[dir="rtl"] .acordeon-vanilla__icon {
    order: -1;
    margin-right: 16px;
    margin-left: 0;
}

[dir="rtl"] .acordeon-vanilla__icon::before {
    right: 0;
    left: auto;
}

[dir="rtl"] .acordeon-vanilla__icon::after {
    right: 6px;
    left: auto;
}