/* Approved shared footer. All layout rules are scoped to the footer. */
.site-footer *{box-sizing:border-box}
.site-footer{background:#1e1e1e;color:#fff}
.site-footer .wrap{max-width:1300px;margin:auto;padding:0 28px}
.site-footer h2{font:500 14px/1.5 Unbounded,sans-serif;color:#EC7700;margin:0 0 20px}
.site-footer a{color:inherit;text-decoration:none}
.site-footer a:hover{color:#EC7700}
.site-footer a:focus-visible{outline:2px solid #EC7700;outline-offset:4px}
.site-footer .brand img{width:200px;height:auto;display:block;margin-bottom:22px}
.site-footer .brand p{margin:0;max-width:290px}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer .link-group li{margin-bottom:9px}
.site-footer .socials{display:flex;gap:18px;margin-top:24px}
.site-footer .socials a{display:flex;align-items:center;justify-content:center;width:24px;height:28px;font-size:17px}
.site-footer address{font-style:normal}
.site-footer address strong{font-weight:600;display:block;margin-bottom:12px}
.site-footer address p{margin:0 0 12px;overflow-wrap:anywhere}
.site-footer .legal{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--dark-divider-color, #FFFFFF26);padding:22px 0;font-size:11px}
.site-footer .legal p{margin:0}
.site-footer .legal ul{display:flex;flex-wrap:wrap;gap:18px}
.site-footer .contact-actions{display:flex;flex-wrap:wrap;gap:20px;margin:0 0 28px;font-size:12px}
.site-footer .contact-actions a{display:inline-flex;align-items:center;gap:8px}
.site-footer .contact-actions i{color:#EC7700}
@media(max-width:991px){.site-footer .legal{align-items:flex-start;flex-direction:column;gap:12px}
}
@media(max-width:575px){.site-footer .wrap{padding:0 22px}
.site-footer .brand img{width:180px}
.site-footer .legal{font-size:10px}
.site-footer .legal ul{gap:12px}
.site-footer .contact-actions{gap:16px}
.site-footer h2{font-size:13px;margin-bottom:16px}
}
.site-footer .wide-top{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:54px 0;border-bottom:1px solid var(--dark-divider-color, #FFFFFF26)}
.site-footer .wide-top .brand img{width:250px}
.site-footer .wide-top .contact address p:nth-of-type(-n+2){font:500 21px/1.6 Unbounded,sans-serif;margin-bottom:16px}
.site-footer .wide-top .contact{border-left:3px solid #EC7700;padding-left:30px}
.site-footer .nav-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:48px;padding:38px 0}
.site-footer .contact-actions{flex-direction:column;align-items:flex-start;margin:0;gap:16px}
@media(max-width:767px){.site-footer .wide-top{grid-template-columns:1fr;gap:32px;padding:36px 0}
.site-footer .nav-grid{grid-template-columns:1fr 1fr;gap:28px}
.site-footer .wide-top .contact address p:nth-of-type(-n+2){font-size:17px}
}
@media(max-width:575px){.site-footer .nav-grid{grid-template-columns:1fr}
.site-footer .wide-top .brand img{width:210px}
.site-footer .wide-top .contact{padding-left:18px}
}
.site-footer>.our-scrolling-ticker{line-height:27.2px}
@media(max-width:767px){.site-footer>.our-scrolling-ticker{line-height:24px}
}
.site-footer{font-family:Montserrat,sans-serif;font-size:17px;font-weight:400;line-height:1.6}
.site-footer p{line-height:1.9}
.site-footer h2{font-family:Unbounded,sans-serif;font-size:20px;font-weight:600;line-height:1.2;text-transform:capitalize}
.site-footer .brand p{max-width:400px}
.site-footer .link-group li{margin-bottom:5px;text-transform:capitalize}
.site-footer .contact-actions,.site-footer .legal{font-size:17px}
.site-footer .socials a{font-size:20px}
.site-footer .wide-top .contact address p:nth-of-type(-n+2){font-family:Unbounded,sans-serif;font-size:21px;font-weight:500;line-height:1.6}
@media(max-width:1199px){.site-footer-contact-bar{display:flex!important;height:calc(70px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#1e1e1e}
.site-footer .wide-top{gap:36px}
.site-footer .wide-top .brand img{max-width:100%}
}
@media(max-width:991px){.site-footer .wide-top{grid-template-columns:1fr;gap:32px}
.site-footer .wide-top .brand p{max-width:520px}
}
@media(max-width:767px){.site-footer{font-size:15px}
.site-footer h2{font-size:18px}
.site-footer .contact-actions,.site-footer .legal{font-size:15px}
.site-footer .wide-top .contact address p:nth-of-type(-n+2){font-size:17px}
.site-footer .legal ul{gap:12px 18px}
}
.site-footer .wide-top .contact address strong{font-family:Unbounded,sans-serif;font-size:21px;font-weight:500;line-height:1.6;margin-bottom:16px}
.site-footer .wide-top .brand img{width:220px}
@media(max-width:767px){.site-footer .wide-top .contact address strong{font-size:17px}
.site-footer .wide-top .brand img{width:185px}
}
.site-footer .address-line{display:block}
.site-footer .wide-top>div{min-width:0}
@media(max-width:575px){.site-footer .wide-top .contact{padding-left:12px}
.site-footer .wide-top .contact address p:last-child{line-height:1.8;overflow-wrap:normal;word-break:normal;text-wrap:pretty}
.site-footer .address-line{display:block}
.site-footer .wide-top .contact address strong,.site-footer .wide-top .contact address p:nth-of-type(-n+2){font-size:clamp(14px,4.3vw,17px)}
.site-footer .wide-top .contact address p:nth-of-type(2){white-space:nowrap;overflow-wrap:normal}
.site-footer .wide-top .contact address strong{overflow-wrap:normal}
}
@media(max-width:359px){.site-footer .wrap{padding-left:18px;padding-right:18px}
}
.site-footer .wide-top{padding-top:0}
.site-footer .brand .brand-service-line{margin-top:18px;max-width:440px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:600;line-height:1.8;letter-spacing:.4px;color:#EC7700}
.site-footer .brand-service-line span{padding:0 4px}
@media(max-width:767px){.site-footer .brand .brand-service-line{font-size:10px;letter-spacing:.2px}
}
@media(min-width:1200px){.site-footer .wide-top .brand img{width:200px}
}

@media(max-width:1199px){.site-footer{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.site-footer-contact-bar{display:flex!important;height:calc(70px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#1e1e1e}}
@media(min-width:1200px){.site-footer-contact-bar{display:none!important}}

/* Match the shared contact strip's tablet breakpoint; keep other widths intact. */
@media (min-width: 768px) and (max-width: 1199px) {
    .site-footer-contact-bar ~ .shadeco-back-top { bottom: calc(84px + env(safe-area-inset-bottom)); }
}

/* Consistent footer logo size across all pages. */
.site-footer .wide-top .brand img { width: 180px; height: auto; }
@media (max-width: 767px) {
    .site-footer .wide-top .brand img { width: 165px; }
}
