/* =============================================
   Tree-Ripe Accordion
   Style: Thick Full Border (Seasonal C)
   !important on all declarations to override
   Kadence/WordPress/theme defaults.
   ============================================= */

.tr-accordion {
    --tr-acc-accent: #0F5E41;
    --tr-acc-border-idle: #E6E0D6;
    --tr-acc-bg: #FFFFFF;
    --tr-acc-radius: 12px;
    --tr-acc-border-width: 3px;
    --tr-acc-gap: 8px;
}

/* ---- Individual Item (Card) ---- */
.tr-accordion__item {
    background: var(--tr-acc-bg) !important;
    border-radius: var(--tr-acc-radius) !important;
    margin-bottom: var(--tr-acc-gap) !important;
    margin-top: 0 !important;
    overflow: hidden !important;
    border: var(--tr-acc-border-width) solid var(--tr-acc-border-idle) !important;
    transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
    padding: 0 !important;
    box-shadow: none !important;
    list-style: none !important;
}

.tr-accordion__item:last-child {
    margin-bottom: 0 !important;
}

.tr-accordion__item.is-active {
    border-color: var(--tr-acc-accent) !important;
}

/* ---- Header (div with role="button") ---- */
.tr-accordion__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 18px 24px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    text-align: left !important;
    transition: background 0.2s ease !important;
    gap: 16px !important;
    font-family: 'Avenir Next', Avenir, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    margin: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    line-height: 1.4 !important;
    -webkit-user-select: none !important;
    user-select: none !important;
}

.tr-accordion__header:focus-visible {
    outline: 2px solid var(--tr-acc-accent) !important;
    outline-offset: -2px !important;
    border-radius: calc(var(--tr-acc-radius) - var(--tr-acc-border-width)) !important;
}

/* ---- Title ---- */
.tr-accordion__title {
    font-family: 'Avenir Next', Avenir, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-weight: 600 !important;
    font-size: 18px !important;
    color: #333333 !important;
    flex: 1 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-decoration: none !important;
}

/* ---- Chevron Icon ---- */
.tr-accordion__icon {
    width: 28px !important;
    height: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.tr-accordion__icon svg {
    width: 14px !important;
    height: 14px !important;
    stroke: #999999 !important;
    fill: none !important;
    transition: transform 0.3s ease, stroke 0.3s ease !important;
}

.tr-accordion__item.is-active .tr-accordion__icon svg {
    transform: rotate(180deg) !important;
    stroke: #666666 !important;
}

/* ---- Panel (collapsible) ---- */
.tr-accordion__panel {
    overflow: hidden !important;
    max-height: 0 !important;
    transition: max-height 0.35s ease !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}

/* JS overrides max-height inline for open items */

/* ---- Panel Content ---- */
.tr-accordion__content {
    padding: 0 24px 24px !important;
    color: #555555 !important;
    font-family: 'Avenir Next', Avenir, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    margin: 0 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.tr-accordion__content p {
    margin: 0 0 12px !important;
    font-family: 'Avenir Next', Avenir, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: #555555 !important;
}

.tr-accordion__content p:last-child {
    margin-bottom: 0 !important;
}

/* ---- Responsive ---- */
@media (max-width: 600px) {
    .tr-accordion__header {
        padding: 16px 18px !important;
    }

    .tr-accordion__content {
        padding: 0 18px 20px !important;
    }

    .tr-accordion__content p {
        font-size: 16px !important;
    }

    .tr-accordion__title {
        font-size: 16px !important;
    }
}
