.km-container-8aaf5032 {
    display: block;
    width: 100%;
}

.km-items-wrapper-8aaf5032 {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
    /* justify-content and gap controlled via Elementor settings */
}

/* Full width modifier */
.km-container-8aaf5032.km-full-width-8aaf5032 .km-items-wrapper-8aaf5032 {
    width: 100%;
    justify-content: space-between !important;
}

.km-container-8aaf5032.km-full-width-8aaf5032 .km-item-8aaf5032 {
    flex-grow: 1;
    flex-basis: 0;
}

.km-item-8aaf5032 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.3s ease;
    color: inherit;
}

.km-item-text-8aaf5032 {
    position: relative;
    display: inline-block; /* strictly fits the text width */
}

/* The hover/active underline */
.km-item-text-8aaf5032::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px; /* default, controlled by settings */
    width: 100%;
    height: 2px; /* default, controlled by settings */
    background-color: currentColor; /* defaults to text color unless specified in hover/active tab */
    transform: scaleX(0);
    transition: transform 0.3s ease;
    transform-origin: center;
}

/* Trigger on container hover */
.km-item-8aaf5032:hover .km-item-text-8aaf5032::after,
.km-item-8aaf5032.active .km-item-text-8aaf5032::after {
    transform: scaleX(1);
}

/* Responsive behavior based on data-breakpoint */
@media (max-width: 767px) {
    .km-container-8aaf5032[data-breakpoint="mobile"] .km-items-wrapper-8aaf5032 {
        flex-direction: column;
        align-items: stretch;
    }
}

@media (max-width: 1024px) {
    .km-container-8aaf5032[data-breakpoint="tablet"] .km-items-wrapper-8aaf5032 {
        flex-direction: column;
        align-items: stretch;
    }
}
