/* ==========================================================================
   Global Footer Styles
   ========================================================================== */
.site-footer {
    background-image: url(/wp-content/uploads/background-texture.avif);
    background-size: cover;
    background-position: center;
    padding: var(--space-4xl);
    overflow: hidden;
    display: flex;
    align-items: center;
    flex-direction: column;
}

@media (max-width:961px) {
    .site-footer {
        padding: var(--space-lg);
    }
}

.site-footer__inner {
    display: flex;
    max-width: 1440px;
    width: 100%;
    position: relative;
    z-index: 1;
    flex-direction: column;
    align-items: center;
}

.site-footer__brand {
    margin-bottom: var(--space-3xl);
    display: flex;
    justify-content: center;
    width: 100%;
}

.site-footer__sticker-logo {
    width: 180px;
    height: 180px;
    object-fit: contain;
}

.site-footer__heading {
    margin: 0 0 var(--space-lg) 0;
    color: var(--wp--preset--color--fair-sand);
}

.site-footer__address {
    display: inline-flex;
    align-items: center;
    margin-bottom: var(--space-3xl);
    color: var(--wp--preset--color--fair-sand);
}

@media (max-width:961px) {
    .site-footer__address {
        flex-direction: column;
        text-align: center;
    }
}

.icon-localization {
    color: var(--wp--preset--color--game-red);
}

/* Footer Content Box */
.site-footer__content {
    background-color: var(--wp--preset--color--game-red);
    /* textured paper look from mockup */
    color: var(--wp--preset--color--fair-sand);
    padding: var(--space-3xl) var(--space-4xl);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--space-xl);
    justify-content: space-between;
    text-align: right;
    background-image: url(/wp-content/uploads/background-footer-1.avif);
    background-size: cover;
    background-position: center;
    /* Subtle texture noise */
    width: 100%;
}

.site-footer__col-title {
    margin: 0 0 var(--space-md) 0;
    color: var(--wp--preset--color--steel-black);
    font-size: var(--wp--preset--font-size--text-medium);
    text-align: end;
    white-space: nowrap;
}

.site-footer__col {
    display: flex;
    flex-direction: column;
}

@media (max-width:961px) {
    .site-footer__hours {
        width: 100%;
    }

    .site-footer__col {
        align-items: flex-start;
    }
}

.site-footer__col:nth-child(1) {
    grid-column: span 2;
}

/* Social Col */
.site-footer__social-link {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    text-decoration: none;
    color: var(--wp--preset--color--steel-black);
    margin-bottom: var(--space-sm);
    transition: color 0.3s ease;
}

.site-footer__social-link:hover {
    color: #992b2b;
}

/* Hours Col */
.site-footer__hour-row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-bottom: var(--space-2xs);
}

@media (max-width:961px) {
    .site-footer__hour-row {
        justify-content: space-between;
        width: 100%;
    }
}

.site-footer__hour-days {
    display: inline-block;
    color: var(--wp--preset--color--concrete-grey);
    text-align: right;
    margin-right: var(--space-sm);
    white-space: nowrap;
    line-height: var(--lh-150);
}

.site-footer__hour-time {
    color: var(--wp--preset--color--steel-black);
    line-height: var(--lh-150);
}

/* Legal Col */
.footer-legal-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    line-height: var(--lh-150);
}

.footer-legal-menu li {
    margin-bottom: var(--space-2xs);
    justify-content: flex-end;
}

@media (max-width:961px) {
    .footer-legal-menu li {
        justify-content: flex-start;
    }
}

.footer-legal-menu a {
    color: var(--wp--preset--color--steel-black);
    text-decoration: underline;
    text-decoration-color: #992b2b;
    text-decoration-thickness: 2px;
    text-underline-offset: 1px;
    transition: color 0.3s ease;
}

.footer-legal-menu a:hover {
    color: #992b2b;
}

@media (max-width: 961px) {
    .site-footer__content {
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
        text-align: left;
        padding: var(--space-2xl);
    }

    .site-footer__col:nth-child(1) {
        grid-column: auto;
    }

    .site-footer__social-link {
        justify-content: flex-start;
    }

    .social-media-text {
        display: none;
    }

    .social-links__col {
        display: flex;
        flex-direction: row;
    }
}