/* =========================================================
   KL LIVING — GLOBAL FOOTER
   Normal pages = KL Living green footer + silver pattern.
   Premium pages override this in premium-luxury.css.
   ========================================================= */
.site-footer{
    position:relative;
    width:100%;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    box-shadow:none;
    overflow:hidden;
    background:#0b653f;
    color:#fff;
    font-family:Inter,Arial,sans-serif;
}

/* Decorative silver border sits ABOVE the footer content */
.site-footer-topline{
    display:block;
    line-height:0;
    width:100%;
    height:42px;
    margin:0;
    padding:0;
    border:0;
    background-color:#fff;
    background-image:url("images/app/KL-Living-Silver-Pattern-Border.webp");
    background-repeat:repeat-x;
    background-position:center bottom;
    background-size:auto 42px;
}

.site-footer-inner{
    width:min(1500px,86%);
    margin:0 auto;
    padding:28px 0 12px;
}

.site-footer-grid{
    display:grid;
    grid-template-columns:1.55fr 1fr 1fr 1fr;
    gap:52px;
    align-items:start;
}

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

.site-footer-logo{
    display:grid;
    place-items:center;
    width:150px;
    height:82px;
    margin:0 0 18px;
    overflow:hidden;
    border-radius:12px;
    background:#fff;
    text-decoration:none;
}

.site-footer-logo img{
    display:block;
    max-width:116px;
    max-height:58px;
    object-fit:contain;
}

.site-footer-brand p{
    margin:0 0 18px;
    color:#fff;
    font-size:14px;
    line-height:1.65;
}

.site-footer-social{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.site-footer-social a{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border:1px solid rgba(255,255,255,.28);
    border-radius:8px;
    background:rgba(255,255,255,.08);
    color:#fff;
    text-decoration:none;
    font-weight:800;
    line-height:1;
}

.site-footer-column{
    display:flex;
    flex-direction:column;
    gap:10px;
    min-width:0;
}

.site-footer-column h4{
    margin:2px 0 8px;
    color:#fff;
    font-size:15px;
    font-weight:800;
}

.site-footer-column a{
    color:rgba(255,255,255,.96);
    text-decoration:none;
    font-size:13px;
    line-height:1.35;
}

.site-footer-column a:hover{
    text-decoration:underline;
}

.site-footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-top:24px;
    padding:16px 0 6px;
    border-top:1px solid rgba(255,255,255,.18);
    color:rgba(255,255,255,.92);
    font-size:12px;
}

.site-footer+.kl-chat-launcher{z-index:50}

@media(max-width:1000px){
    .site-footer-inner{width:min(92%,900px);padding-top:26px}
    .site-footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:32px}
    .site-footer-brand{grid-column:1/-1}
    .site-footer-brand p br{display:none}
}

@media(max-width:650px){
    .site-footer-topline{height:34px;background-size:auto 34px}
    .site-footer-inner{width:90%;padding-top:22px}
    .site-footer-grid{grid-template-columns:1fr 1fr;gap:25px 20px}
    .site-footer-brand{grid-column:1/-1}
    .site-footer-logo{width:132px;height:72px;margin-bottom:14px}
    .site-footer-column h4{font-size:14px}
    .site-footer-column a{font-size:12px}
    .site-footer-bottom{margin-top:20px;padding-top:14px;flex-direction:column;align-items:flex-start}
}
