/* ============================================================
   GX-TOGGLE — generic accordion/toggle system
   Works for any element: FAQ, filters, specs, itineraries…
   Scoped entirely to [gx-toggle] attributes, no class overlap.
   ============================================================ */

[gx-section="faq"] [gx-toggle="group"] {
}

[gx-section="faq"] [gx-toggle="item"] {
    border-bottom: 1px solid var(--border-color, #e9ecef);
    margin-top: 10px;
    background: #fff;
    padding: 0px 20px;
    border: 1px solid var(--border-color, #e9ecef);
    border-radius: 12px;
}

[gx-toggle="item"]:last-child {
    border-bottom: none;
}

[gx-section="faq"] [gx-toggle="btn"] {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: transparent;
    border: none;
    padding: 24px 15px;
    text-align: left;
    cursor: pointer;
    font-family: var(--font-heading);
    gap: 16px;
}

[gx-section="faq"] [gx-toggle="btn"] .toggle-label {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--brand-dark-blue, #1B365D);
    transition: color 0.3s ease;
    flex: 1;
}

[gx-toggle="btn"]:hover .toggle-label {
    color: var(--brand-teal, #00829B);
}

[gx-toggle="btn"] .toggle-icon {
    color: var(--brand-teal, #00829B);
    font-size: 1rem;
    flex-shrink: 0;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Active state — rotate icon */
[gx-toggle="item"].is-open [gx-toggle="btn"] .toggle-icon {
    transform: rotate(180deg);
}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width: 767px) {
    [gx-toggle="group"] {
        padding: 0px;
    }
    [gx-toggle="btn"] .toggle-label {
        font-size: 1rem;
    }
}