
/* ==================================================
   ONLINETAROT.NL - FOOTER
   Vier navigatiekolommen
   ================================================== */


/* ==================================================
   ALGEMEEN
   ================================================== */

.site-footer {
    margin-top: 0;
    padding: 35px 25px 0;
    background: #080F20;
    border-top: 1px solid #52617F;
    color: #C5C9D5;
    font-family: 'Lora', serif;
    font-size: 12px;
}

.site-footer,
.site-footer * {
    box-sizing: border-box;
}

.footer-inner {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}


/* ==================================================
   INTRODUCTIE
   ================================================== */

.footer-intro {
    max-width: 650px;
    margin: 0 auto 40px;
    text-align: center;
    color: #AEB8CC;
    font-size: 12px;
    line-height: 1.8;
}

.footer-logo {
    display: inline-block;
    margin-bottom: 10px;
    color: #C9A96E;
    font-family: 'Cormorant Garamond', serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
}

.footer-logo:hover {
    color: #E8D5A9;
}

.footer-slogan {
    margin: 0 0 15px;
    color: #C9A96E;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 2px;
    line-height: 1.7;
    text-transform: uppercase;
}

.footer-description {
    margin: 0;
    color: #AEB8CC;
    font-size: 12px;
    line-height: 1.9;
}


/* ==================================================
   NAVIGATIE - DESKTOP
   VIER KOLOMMEN
   ================================================== */

.footer-grid {
    display: grid;
    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(0, 0.85fr)
        minmax(0, 1.15fr)
        minmax(0, 1.15fr);
    column-gap: 30px;
    row-gap: 30px;
    width: 100%;
    align-items: start;
}

.footer-column {
    min-width: 0;
}

.footer-column h2 {
    margin: 0 0 16px;
    color: #D5C397;
    font-family: 'Cormorant Garamond', serif;
    font-size: 19px;
    font-weight: 600;
    line-height: 1.25;
}

.footer-column ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.footer-column li {
    margin: 0 0 10px;
    padding: 0;
}

.footer-column li:last-child {
    margin-bottom: 0;
}

.footer-column a {
    display: inline-block;
    color: #AEB8CC;
    font-family: 'Lora', serif;
    font-size: 12px;
    line-height: 1.65;
    text-decoration: none;
    overflow-wrap: break-word;
    transition: color 0.2s ease;
}

.footer-column a:hover,
.footer-column a:focus-visible {
    color: #E8D5A9;
    text-decoration: underline;
}

.site-footer a:focus-visible {
    outline: 2px solid #C9A96E;
    outline-offset: 4px;
    border-radius: 2px;
}


/* ==================================================
   DISCLAIMER
   ================================================== */

.footer-disclaimer {
    max-width: 800px;
    margin: 40px auto 0;
    padding: 22px 0;
    border-top: 1px solid #35435C;
    text-align: center;
}

.footer-disclaimer p {
    margin: 0;
    color: #8995AA;
    font-size: 11px;
    line-height: 1.85;
}


/* ==================================================
   COPYRIGHT EN INFORMATIE
   ================================================== */

.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 0;
    padding: 18px 0 22px;
    border-top: 1px solid #35435C;
    color: #8995AA;
    font-size: 11px;
}

.footer-bottom p {
    margin: 0;
    line-height: 1.7;
}

.footer-bottom-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.footer-bottom-links a {
    color: #AEB8CC;
    font-size: 11px;
    text-decoration: none;
    transition: color 0.2s ease;
}

.footer-bottom-links a:hover {
    color: #E8D5A9;
    text-decoration: underline;
}


/* ==================================================
   TABLET - TWEE KOLOMMEN
   ================================================== */

@media (max-width: 800px) {

    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 35px 25px;
    }

}


/* ==================================================
   MOBIEL - TWEE KOLOMMEN
   ================================================== */

@media (max-width: 600px) {

    .site-footer {
        padding: 30px 20px 0;
    }

    .footer-intro {
        margin-bottom: 35px;
    }

    .footer-logo {
        font-size: 29px;
    }

    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 30px 18px;
    }

    .footer-column h2 {
        margin-bottom: 12px;
        font-size: 18px;
    }

    .footer-column a {
        font-size: 11px;
    }

    .footer-disclaimer {
        margin-top: 35px;
    }

    .footer-bottom {
        flex-direction: column;
        justify-content: center;
        text-align: center;
        gap: 12px;
    }

    .footer-bottom-links {
        justify-content: center;
    }

}


/* ==================================================
   KLEINE MOBIELE SCHERMEN
   ================================================== */

@media (max-width: 380px) {

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .footer-column {
        text-align: center;
    }

    .footer-column h2 {
        font-size: 19px;
    }

    .footer-column a {
        font-size: 12px;
    }

}


/* ==================================================
   VERMINDERDE ANIMATIE
   ================================================== */

@media (prefers-reduced-motion: reduce) {

    .footer-column a,
    .footer-bottom-links a {
        transition: none;
    }

}
