/* ============================================================
   PlusHeat footer (Figma "Desktop-11").
   Uses theme CSS variables from root.css + Rubik.
   .site-logo base styles live in header.css.
   ============================================================ */

.site-footer{
    font-family:var(--font-primary);
}
.site-footer .container-lg{
    max-width: 100%;
}
.site-footer *{box-sizing:border-box}
.site-footer a{text-decoration:none}

/* ---------------- FOOTER ---------------- */
.site-footer{font-weight:var(--font-regular);background:var(--color-white);color:var(--color-text);letter-spacing:-.03em;position:relative;z-index:2;border-top:1px solid var(--color-border-light);    border-radius: 64px 64px 0 0;
    background-color: var(--color-white);
    box-shadow: 0 -32px 46.6px -6px rgba(0, 0, 0, 0.05);}
.site-footer-top{display:grid;grid-template-columns:2fr 0.7fr 0.7fr 0.7fr 1.5fr;gap:24px;padding:64px 0 56px}

.site-fbrand .site-logo img{max-width:160px;margin-bottom:16px}
.site-ftagline{font-size:16px;line-height:24px;max-width:300px;margin:0 0 22px;color:var(--color-heading)}
.site-social{display:flex;gap:14px}
.site-social a{display:inline-flex;width:24px;height:24px}
.site-social img{width:100%;height:100%;object-fit:contain}

.site-fcol h4{color:var(--color-heading);font-size:20px;font-weight:var(--font-semibold);line-height:28px;margin:0 0 16px}
.site-fcol ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.site-fcol ul li{margin:0}
.site-fcol ul li a{font-size:20px;line-height:28px;color:var(--color-text);transition:color .15s}
.site-fcol ul li a:hover{color:var(--color-primary)}

.site-fcontact{font-size:20px;line-height:28px}
.site-fcontact h4 a{color:var(--color-heading)}
.site-fcontact a:hover{color:var(--color-primary)}
.site-fcontact-body p{margin:-3px 0 0;line-height:2}
.site-fcontact-body p strong{color:var(--color-heading);font-weight:var(--font-semibold);}
.site-fcontact .site-cicon{width:18px;height:18px;display:inline-block;vertical-align:-4px;margin-right:8px}

.site-footer-bottom{padding:36px 0 48px;font-size:16px;line-height:24px;color:var(--color-text)}
.site-agreement{margin:0 0 14px;max-width:100%}
.site-agreement p{margin:0 0 12px}
.site-agreement a{color:var(--color-text);text-decoration:underline;text-underline-offset:2px}
.site-agreement a:hover{color:var(--color-primary);}
.site-legal{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;padding-top:6px}
.site-legal a,.site-legal span{color:var(--color-text);font-size:16px}
.site-legal a:hover{color:var(--color-primary)}
.site-legal .site-copy{margin-left:auto}

/* ---------------- DARK FOOTER ----------------
   General Settings > Footer > Footer style = Dark adds .site-footer--dark. */
.site-footer--dark{background-color:#161616;color:#F5F5F5;border-top-color:#161616}
.site-footer--dark .site-ftagline,
.site-footer--dark .site-fcol h4,
.site-footer--dark .site-fcol ul li a,
.site-footer--dark .site-fcontact a,
.site-footer--dark .site-fcontact h4 a,
.site-footer--dark .site-fcontact-body p strong,
.site-footer--dark .site-footer-bottom,
.site-footer--dark .site-agreement a,
.site-footer--dark .site-legal a,
.site-footer--dark .site-legal span{color:#F5F5F5}
.site-footer--dark .site-fcol ul li a:hover,
.site-footer--dark .site-fcontact a:hover,
.site-footer--dark .site-agreement a:hover,
.site-footer--dark .site-legal a:hover{color:var(--color-primary)}
.site-footer--dark .site-social img{filter:brightness(0) invert(1)}
.site-footer--dark .site-footer-bottom{opacity:.65}

/* Zoho chat float: clear of the screen bottom on mobile, and clear of the
   includes plan card CTA on the plan pages. */
@media(max-width:768px){.zsiq_theme1.zsiq_floatmain,.zsiq-float{bottom:55px!important}}
body:has(.plusheat-plan--includes) #zsiq_float,
body:has(.plusheat-plan--includes) .zsiq_theme1.zsiq_floatmain,
body:has(.plusheat-plan--includes) .zsiq-float{bottom:50px!important}

/* ---------------- RESPONSIVE ---------------- */
@media(max-width:1100px){
    .site-footer-top{grid-template-columns:2fr 1fr 1fr 1fr 2fr;}
}
@media(max-width:1000px){
    /* Mobile footer: single-column stack, Contact us first (matches mobile design) */
    .site-footer{margin-top:1rem;}
    .site-footer-top{grid-template-columns:1fr;gap:34px;padding:44px 0 24px}
    .site-fbrand{order:0}
    .site-ftagline{max-width:100%;}
    .site-fcol ul li a{font-size:16px;line-height:26px}
    .site-fcontact{font-size:16px;line-height:24px}
    .site-fcol--contact{order:1}
    .site-fcol--plans{order:2}
    .site-fcol--about{order:3}
    .site-fcol--support{order:4}
    .site-fcol--plans ul,
    .site-fcol--about ul,
    .site-fcol--support ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}
    .site-legal{flex-direction:column;align-items:flex-start;}
    .site-legal .site-copy{margin-left:0;flex-basis:100%;margin-top:30px;}
}
