/* ==== Global Footer Wrapper ==== */
.footer-wrapper {
    font-family: inherit;
    background: linear-gradient(to top,
            rgba(78, 0, 4, 1) 0%,
            rgba(142, 0, 6, 1) 100%);
    color: #fff;
    width: 100%;
}

.footer-wrapper .footer {
    max-width: 1248px;
    padding: 50px 24px;
    margin: 0 auto;
    padding-bottom: 70px;
}

.footer-wrapper .footer .columns .footer-section--branding {
    flex: unset;
    width: 33%;
}

.footer-wrapper .footer .columns>div {
    gap: 50px;
    padding-bottom: 50px;
}

.footer-wrapper .footer .columns .footer-section--branding .footer-branding__content {
    max-width: 100%;
}

/* ==== Branding + Links Section ==== */
.footer-section--branding {
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
}

.footer-branding__content {
    flex: 1 1 240px;
    max-width: 280px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.footer-branding__intro {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer-branding__intro .footer-branding__logo {
    max-height: 32px;
    display: flex;
    align-items: flex-start;
}

.footer-branding__logo img {
    height: 32px;
    width: auto;
}

.footer-branding__desc {
    font-size: 16px;
    line-height: 150%;
    color: rgba(255, 255, 255, 0.8);
    font-family: var(--body-font-family-medium);
}

.footer-branding__social-link-div {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.footer-branding__social-link a {
    display: inline-block;
    width: 24px;
    height: 24px;
}

.footer-branding__social-link img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(0) invert(1);
    transition: opacity 0.2s;
}

.footer-branding__social-link img:hover {
    opacity: 0.8;
}

/* ==== Desktop/Tablet View ==== */
.footer-links-desktop {
    display: block;
    width: 100%;
}

.footer-links-mobile {
    display: none;
}

/* ==== Individual Dropdown Section ==== */
.footer-dropdown {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-dropdown__header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 20px 0;
    cursor: pointer;
    user-select: none;
}

.footer-dropdown__titles {
    display: flex;
    gap: 63px;
    flex: 1;
}

.footer-dropdown__title {
    font-size: 16px;
    font-family: var(--body-font-family-bold);
    margin: 0;
    flex: 1;
    min-width: 0;
}

.footer-dropdown__icon {
    font-size: 14px;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    margin-left: 16px;
}

.footer-dropdown.open .footer-dropdown__icon {
    transform: rotate(180deg);
}

/* ==== Dropdown Content ==== */
.footer-dropdown__content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.footer-dropdown.open .footer-dropdown__content {
    max-height: 1000px;
    padding-bottom: 20px;
}

/* Add padding when Enlarge Buttons is active */
.big-buttons .footer-dropdown.open .footer-dropdown__content {
    padding-left: 4px;
}

.footer-dropdown__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

/* ==== Link Columns ==== */
.footer-links__column {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.footer-links__column-title {
    font-size: 20px;
    font-family: var(--body-font-family-medium);
    margin: 0 0 8px 0;
    display: none;
}

.columns>div {
    align-items: flex-start;
}

.footer-links__list {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.footer-links__item {
    font-size: 16px;
    color: #f0f0f0;
    text-decoration: none;
    transition: color 0.2s;
    color: rgba(255, 255, 255, 0.6) !important;
}

.footer-links__item:hover {
    color: #ffffff;
}

/* ==== Feature Highlights Section ==== */
.footer-highlights {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 32px;
    padding: 32px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-highlights__item {
    display: flex;
    gap: 16px;
    flex: 1 1 200px;
    align-items: flex-start;
    min-width: 200px;
}

.footer-highlights__icon {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
}

.footer-highlights__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.footer-highlights__text {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.footer-highlights__title {
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 8px;
    font-family: var(--body-font-family-semibold);
    line-height: 120%;
}

.footer-highlights__text .footer-highlights__desc {
    font-size: 16px;
    color: rgba(255, 255, 255, 0.8);
    margin: 0;
    line-height: 120%;
}

/* ==== Bottom Legal Section ==== */
.footer-bottom {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    padding: 16px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 13px;
    color: #ddd;
    gap: 12px;
}

.footer-bottom__left {
    flex: 1 1 auto;
    min-width: 200px;
}

.footer-bottom__left p {
    color: rgba(255, 255, 255, 0.8);
    font-family: var(--body-font-family-medium);
}

.footer-bottom__right {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    justify-content: flex-end;
    min-width: 200px;
}

.footer-bottom__right .footer-bottom__link {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 16px;
    font-family: var(--body-font-family-semibold);
}

.footer-bottom__link:hover {
    opacity: 0.75;
}

.footer-wrapper .footer .columns-wrapper .columns>div {
    align-items: self-start !important;
}

/* .footer-faq__item {
  border-bottom: 1px solid #ddd;
  padding: 1rem 0;
} */

.footer-faq__question {
    width: 100%;
    background: none;
    border: none;
    text-align: left;
    font-size: 32px;
    font-weight: 400;
    cursor: pointer;
    display: flex;
    color: rgba(255, 255, 255, 1);
    justify-content: space-between;
    align-items: center;
    transition: color 0.3s ease;
    padding: 0;
    padding: 12px 0;
    border-radius: 8px;
    font-family: var(--body-font-family);
}

.footer-faq__question span {
    font-size: 20px;
    font-family: var(--body-font-family-semibold);
}

.footer-faq__question span:before {
    content: '';
    background: url(/icons/dislaimer.png) center;
    position: relative;
    width: 20px;
    height: 20px;
    background-size: cover;
    margin-top: 10px;
    margin-right: 5px;
    display: inline-block;
}

.footer-faq__icon {
    font-size: 1.5rem;
    color: #0071e3;
    transition: transform 0.3s ease;
}

.footer-faq__answer {
    display: none;
    line-height: 1.6;
}

.footer-faq__answer.open {
    display: block;
    animation: faqFade 0.3s ease-in-out;
    color: rgba(255, 255, 255, 0.6) !important;
    /* background: rgba(255, 255, 255, 0.2);
  padding: 12px 20px;
  border-radius: 8px;
  border-top-left-radius: 0;
  border-top-right-radius: 0; */
}

footer .faq-icon {
    transition: transform 0.3s ease;
    transform-origin: center;
    transform: rotate(180deg);
}

.faq-icon-path {
    stroke: currentColor;
    stroke-width: 2;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: stroke 0.5s ease;
}

.faq-icon.rotate {
    transform: rotate(0deg);
}

.footer-faq__item {
    margin-bottom: 30px;
}

.footer-quick-links .footer-bottom .footer-bottom__copyright {
    text-align: center;
    font-size: 18px;
    font-family: var(--body-font-family-bold);
    margin: 0;
    flex: 1;
    min-width: 0;
}

.footer-wrapper .footer .footer-quick-links .columns>div {
    gap: 10px;
}

.footer-wrapper .footer .footer-quick-links .footer-bottom__left {
    min-width: 100%;
}

.footer-wrapper .footer .footer-quick-links .columns>div .button-container a {
    color: rgba(255, 255, 255, 0.8);
}

.footer-faq__answer ul {
    list-style: unset;
}

@keyframes faqFade {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 768px) {

    .footer-faq__item {
        margin-bottom: 0;
    }

    .footer-faq__question {
        font-size: 18px;
    }

    .footer-wrapper .footer .columns>div {
        padding-bottom: 0;
        gap: 0;
    }

    .footer-wrapper .footer .footer-quick-links .columns>div p {
        margin: 0;
        font-size: 14px;
    }
}


/* ==== Responsive Adjustments ==== */
/* ==== Mobile Footer (max-width: 820px) ==== */
@media (max-width: 820px) {

    /* Hide desktop view, show mobile view */
    .footer-links-desktop {
        display: none;
    }

    .footer-links-mobile {
        display: block;
        width: 100%;
    }

    .footer-wrapper .footer {
        padding: 24px 16px;
    }

    /* Stack columns vertically */
    .footer-wrapper .footer .columns {
        display: flex;
        flex-direction: column;
        gap: 32px;
    }

    /* Branding Section */
    .footer-wrapper .footer .columns .footer-section--branding {
        width: 100%;
        max-width: 100%;
        margin-bottom: 24px;
    }

    .footer-branding__desc {
        font-size: 14px;
        line-height: 1.5;
    }

    /* Mobile Dropdown Styles */
    .footer-links-mobile .footer-dropdown {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .footer-links-mobile .footer-dropdown__header {
        padding: 16px 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .footer-links-mobile .footer-dropdown__title {
        font-size: 16px;
        flex: 1;
    }

    .footer-links-mobile .footer-dropdown__icon {
        font-size: 14px;
        margin-left: 16px;
    }

    .footer-links-mobile .footer-dropdown__content {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
    }

    .footer-links-mobile .footer-dropdown.open .footer-dropdown__content {
        max-height: 500px;
        padding-bottom: 16px;
    }

    /* Link Columns in Mobile */
    .footer-links-mobile .footer-links__list {
        gap: 9px;
        padding-left: 0;
    }

    .footer-links-mobile .footer-links__item {
        font-size: 14px;
        line-height: 150%;
    }

    /* Highlights stacked */
    .footer-highlights {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
        padding-bottom: 10px;
    }

    .footer-highlights__item {
        flex: 1 1 80px;
    }

    .footer-highlights__title {
        font-size: 16px;
    }

    .footer-highlights__text .footer-highlights__desc {
        font-size: 14px;
    }

    /* Bottom section */
    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        text-align: left;
        padding: 16px 0;
    }

    .footer-bottom__left,
    .footer-bottom__right {
        width: 100%;
        justify-content: flex-start;
        order: 2;
    }

    .footer-bottom__right {
        gap: 16px;
        flex-wrap: wrap;
        order: 1;
    }

    .footer-bottom__right .footer-bottom__link {
        font-size: 16px;
    }

    .footer-bottom__left p {
        line-height: 120%;
    }
}

/* ==== Very Small Screens ==== */
@media (max-width: 480px) {
    .footer-links-mobile .footer-dropdown__title {
        font-size: 15px;
    }

    .footer-links-mobile .footer-links__item {
        font-size: 13px;
    }
}