/* =========================================================
   FOOTER — LUXURY THREE-COLUMN LAYOUT
========================================================= */
.lab-footer{
    width:100%;
    background:#050505;
    color:#fff;
    padding:108px 6.5% 22px;
    overflow:hidden;
}

.lab-footer-main{
    width:100%;
    max-width:1370px;
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(430px,1.45fr) repeat(3,minmax(160px,.65fr));
    column-gap:54px;
    align-items:start;
}

.lab-footer-brand{
    min-width:0;
}

.lab-footer-logo-image{
    display:inline-flex;
    align-items:center;
    max-width:490px;
    color:#fff !important;
    text-decoration:none !important;
}

.lab-footer-logo-image img{
    display:block;
    width:auto;
    max-width:100%;
    max-height:135px;
    object-fit:contain;
    object-position:left center;
}

.lab-footer-logo-text{
    display:inline-block;
    color:#c49328 !important;
    text-decoration:none !important;
    font:500 58px/.9 "Cormorant Garamond",Georgia,serif;
    letter-spacing:-1px;
}

.lab-footer-social{
    display:flex;
    align-items:center;
    gap:22px;
    margin-top:34px;
    padding-top:30px;
    border-top:1px solid rgba(255,255,255,.07);
    max-width:500px;
}

.lab-footer-social a{
    width:19px;
    height:19px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#fff !important;
    text-decoration:none !important;
}

.lab-footer-social svg{
    width:18px;
    height:18px;
    display:block;
    fill:currentColor;
}

.lab-footer-columns{
    grid-column:2 / -1;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    column-gap:40px;
}

.lab-footer-column h3{
    margin:0 0 25px !important;
    color:#c49328 !important;
    font:500 italic 25px/1 "Cormorant Garamond",Georgia,serif !important;
}

.lab-footer-column ul{
    list-style:none;
    padding:0;
    margin:0;
}

.lab-footer-column li{
    margin:0 0 11px;
    padding:0;
}

.lab-footer-column a{
    color:rgba(255,255,255,.74) !important;
    text-decoration:none !important;
    font:400 15px/1.15 Arial,Helvetica,sans-serif;
    transition:color .2s ease;
}

.lab-footer-column a:hover{
    color:#fff !important;
}

.lab-footer-bottom{
    width:100%;
    max-width:1370px;
    margin:38px auto 0;
    padding-top:15px;
    border-top:1px solid rgba(255,255,255,.1);
    color:rgba(255,255,255,.42);
    font:400 10px/1.4 Arial,Helvetica,sans-serif;
    letter-spacing:.4px;
}

@media(max-width:1100px) and (min-width:768px){
    .lab-footer{padding-left:4%;padding-right:4%;}
    .lab-footer-main{grid-template-columns:1.2fr repeat(3,1fr);column-gap:28px;}
    .lab-footer-columns{column-gap:22px;}
    .lab-footer-logo-image img{max-height:105px;}
    .lab-footer-column h3{font-size:22px !important;}
    .lab-footer-column a{font-size:13px;}
}

@media(max-width:767px){
    .lab-footer{
        /* Keep the footer content clear of the fixed mobile header. */
        padding:var(--lab-mobile-header-height, 64px) 22px 18px;
    }
    .lab-footer-main{display:block;max-width:100%;}
    .lab-footer-logo-image img{max-height:92px;max-width:92%;}
    .lab-footer-logo-text{font-size:48px;}
    .lab-footer-social{margin-top:28px;padding-top:20px;gap:20px;}
    .lab-footer-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px 24px;margin-top:42px;}
    .lab-footer-column:last-child{grid-column:1/-1;}

    /* Quick Links: keep menu items in a compact horizontal row on mobile. */
    .lab-footer-column:last-child ul{
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        column-gap:16px;
        row-gap:10px;
    }

    .lab-footer-column:last-child li{
        margin:0 !important;
        padding:0;
    }

    .lab-footer-column h3{font-size:23px !important;margin-bottom:17px !important;}
    .lab-footer-column li{margin-bottom:9px;}
    .lab-footer-column a{font-size:13px;}
    .lab-footer-bottom{margin-top:30px;}
}
