/**
 * Rebel Monkey Ride - Footer
 *
 * El pre-footer y el footer principal son componentes propios. La convivencia
 * con Divi se resuelve exclusivamente en la integración de vista previa.
 */

.rmr-footer-pre {
    padding: var(--rmr-space-lg);

    background: var(--rmr-color-accent);
    color: var(--rmr-color-black);
}

.rmr-footer-pre__inner {
    width: min(100%, var(--rmr-container-width));
    margin-inline: auto;
}

.rmr-footer-pre .rmr-event-countdown {
    display: grid;
    grid-template-columns: minmax(10rem, 0.8fr) minmax(0, 2fr);
    align-items: center;
    gap: var(--rmr-space-xl);

    color: currentColor;
}

.rmr-footer-pre .rmr-event-countdown__title {
    margin: 0;

    font-size: clamp(24px, 3vw, 38px);
    letter-spacing: 0.04em;
}

.rmr-footer-pre .rmr-event-countdown__units {
    gap: var(--rmr-space-md);
}

.rmr-footer-pre .rmr-event-countdown__unit {
    min-height: 104px;
    padding: var(--rmr-space-md);

    place-content: center;
    text-align: center;
    background: var(--rmr-footer-background-color, var(--rmr-color-black));
    color: var(--rmr-color-white);
}

.rmr-footer-pre .rmr-event-countdown__value {
    font-size: clamp(34px, 4vw, 58px);
}

.rmr-footer-pre .rmr-event-countdown__label {
    color: rgb(255 255 255 / 92%);
    font-size: 14px;
    font-weight: var(--rmr-font-weight-medium);
    letter-spacing: 0.04em;
    line-height: 1.25;
}

.rmr-footer {
    position: relative;
    overflow: hidden;
    isolation: isolate;

    padding: var(--rmr-space-xl) var(--rmr-space-lg) var(--rmr-space-lg);

    background-color: var(--rmr-footer-background-color, var(--rmr-color-black));
    color: var(--rmr-color-white);
}

.rmr-footer__background,
.rmr-footer__background::after {
    position: absolute;
    inset: 0;
}

.rmr-footer__background {
    z-index: 0;
}

.rmr-footer__background picture,
.rmr-footer__background img {
    display: block;
    width: 100%;
    height: 100%;
}

.rmr-footer__background img {
    object-fit: cover;
}

.rmr-footer__background::after {
    content: '';
    background: rgb(0 0 0 / calc(var(--rmr-footer-overlay-opacity, 65) * 1%));
}

.rmr-footer__inner,
.rmr-footer__bottom {
    position: relative;
    z-index: 1;
    width: min(100%, var(--rmr-container-width));
    margin-inline: auto;
}

.rmr-footer__inner {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(11rem, 0.7fr) minmax(11rem, 0.7fr);
    gap: clamp(var(--rmr-space-lg), 5vw, var(--rmr-space-xl));
}

.rmr-footer__brand,
.rmr-footer__site-name {
    display: inline-block;
    color: currentColor;
    text-decoration: none;
}

.rmr-footer__logo {
    display: block;
    width: auto;
    max-width: min(100%, 180px);
    height: auto;
}

.rmr-footer__site-name {
    font-size: 22px;
    line-height: 1;
    text-transform: uppercase;
}

.rmr-footer__description {
    max-width: 36rem;
    margin: var(--rmr-space-md) 0 0;
    color: rgb(255 255 255 / 80%);
}

.rmr-footer__menu-column {
    display: grid;
    align-content: start;
    gap: var(--rmr-space-lg);
}

.rmr-footer__menu-group,
.rmr-footer__social {
    display: grid;
    gap: var(--rmr-space-md);
}

.rmr-footer__menu,
.rmr-footer__social-list,
.rmr-footer__legal {
    margin: 0;
    padding: 0;
    list-style: none;
}

.rmr-footer__menu {
    display: grid;
    gap: var(--rmr-space-sm);
}

.rmr-footer a {
    color: currentColor;
}

.rmr-footer__menu a,
.rmr-footer__legal a {
    text-decoration: none;
}

.rmr-footer__menu a:hover,
.rmr-footer__menu a:focus-visible,
.rmr-footer__legal a:hover,
.rmr-footer__legal a:focus-visible {
    text-decoration: underline;
}

.rmr-footer__heading {
    margin: 0;
    color: currentColor !important;
    font-family: var(--rmr-font-heading) !important;
    font-size: 22px;
    font-weight: var(--rmr-font-weight-medium);
    letter-spacing: 0.05em;
    line-height: 1;
    text-transform: uppercase;
}

.rmr-footer__social-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--rmr-space-sm);
}

.rmr-footer__social-link {
    display: inline-grid;
    width: 42px;
    height: 42px;

    place-items: center;
    border: 1px solid rgb(255 255 255 / 60%);
    border-radius: 50%;

    transition: background var(--rmr-transition-fast), color var(--rmr-transition-fast);
}

.rmr-footer__social-link:hover,
.rmr-footer__social-link:focus-visible {
    background: var(--rmr-color-white);
    color: var(--rmr-color-black);
}

.rmr-footer__social-link svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.75;
}

.rmr-footer__social-link svg path {
    fill: currentColor;
    stroke: none;
}

.rmr-footer__bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--rmr-space-md);

    margin-top: var(--rmr-space-xl);
    padding-top: var(--rmr-space-md);

    border-top: 1px solid rgb(255 255 255 / 24%);
}

.rmr-footer__legal {
    display: flex;
    flex-wrap: wrap;
    gap: var(--rmr-space-sm) var(--rmr-space-md);
}

.rmr-footer__copyright {
    margin: 0;
    color: rgb(255 255 255 / 72%);
    font-size: 14px;
}

.rmr-footer__mountains {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;

    height: 96px;

    pointer-events: none;
    background: rgb(255 255 255 / 8%);
    clip-path: polygon(0 78%, 14% 34%, 28% 68%, 44% 22%, 62% 71%, 78% 30%, 100% 75%, 100% 100%, 0 100%);
}

@media (max-width: 980px) {

    .rmr-footer-pre .rmr-event-countdown {
        grid-template-columns: 1fr;
        gap: var(--rmr-space-md);
    }

    .rmr-footer__inner {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .rmr-footer__intro {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {

    .rmr-footer-pre,
    .rmr-footer {
        padding: var(--rmr-space-lg) var(--rmr-space-md);
    }

    .rmr-footer-pre .rmr-event-countdown__units {
        gap: 6px;
    }

    .rmr-footer-pre .rmr-event-countdown__unit {
        min-height: 82px;
        padding: var(--rmr-space-sm);
    }

    .rmr-footer-pre .rmr-event-countdown__value {
        font-size: clamp(28px, 9vw, 40px);
    }

    .rmr-footer-pre .rmr-event-countdown__label {
        font-size: clamp(10px, 3vw, 12px);
        letter-spacing: 0.02em;
    }

    .rmr-footer__inner {
        grid-template-columns: 1fr;
        gap: var(--rmr-space-lg);
    }

    .rmr-footer__intro {
        grid-column: auto;
    }

    .rmr-footer__bottom {
        align-items: flex-start;
        flex-direction: column;
        margin-top: var(--rmr-space-lg);
    }

    .rmr-footer__mountains {
        height: 64px;
    }
}
