/* Shop footer layout shared across the storefront and service pages. */
.footer {
    box-sizing:border-box;
    padding:48px 22px 42px !important;
    color:#f5f5f5 !important;
    background:linear-gradient(145deg,#34312e,#20201f 62%,#141515) !important;
    border-top:1px solid #55504a !important;
    box-shadow:inset 0 1px rgba(255,255,255,.16) !important;
}
.footer .footer-container {
    width:min(1200px,100%);
    max-width:1200px !important;
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:clamp(22px,6vw,80px);
    align-items:start;
}
.footer .footer-newsletter {
    box-sizing:border-box;
    min-width:0;
    margin:0 !important;
    padding:23px !important;
    border:1px solid #55504a !important;
    border-radius:9px !important;
    background:linear-gradient(145deg,#34312e,#20201f 62%,#141515) !important;
    box-shadow:inset 0 1px rgba(255,255,255,.16),0 9px 20px rgba(0,0,0,.5) !important;
}
.footer .footer-line { display:none !important; }
.footer .footer-newsletter form {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:end !important;
    gap:9px !important;
}
.footer .footer-newsletter label {
    grid-column:1/-1;
    display:block !important;
    margin:0 0 5px !important;
    color:#fff !important;
    font:700 19px/1.3 Poppins,Arial,sans-serif !important;
    text-align:left !important;
}
.footer .footer-newsletter label::before,
.footer .footer-newsletter label::after { content:none !important; display:none !important; }
.footer .footer-newsletter label strong { display:block; font:inherit; }
.footer .footer-newsletter label small {
    display:block;
    margin-top:5px;
    color:#c8c8c8;
    font:400 11px/1.5 Poppins,Arial,sans-serif;
}
.footer .footer-newsletter input {
    box-sizing:border-box;
    width:100% !important;
    max-width:none !important;
    min-width:0;
    height:44px !important;
    margin:0 !important;
    padding:10px 12px !important;
    color:#fff !important;
    background:#242424 !important;
    border:1px solid #615a52 !important;
    border-radius:5px !important;
}
.footer .footer-newsletter button[type="submit"] {
    box-sizing:border-box;
    width:auto !important;
    height:44px !important;
    margin:0 !important;
    padding:0 16px !important;
    white-space:nowrap;
}
.footer .copyright { margin:22px 0 0 !important; color:#bdbdbd; font-size:12px; }
.footer .footer-info { min-width:0; margin:0 !important; padding:0 !important; text-align:left !important; }
.footer .footer-links,
.bs-info-footer .footer-links,
.bs-legacy-footer-links {
    display:flex !important;
    flex-wrap:wrap;
    justify-content:flex-start !important;
    gap:10px 18px !important;
    margin:0 0 22px !important;
}
.footer .footer-links a,
.bs-info-footer .footer-links a,
.bs-legacy-footer-links a {
    display:inline-block;
    margin:0 !important;
    color:#f5f5f5 !important;
    font:600 13px/1.5 Poppins,Arial,sans-serif;
    text-decoration:none !important;
}
.footer .footer-links a:hover,
.bs-info-footer .footer-links a:hover,
.bs-legacy-footer-links a:hover { color:#f58220 !important; }
.footer .footer-info p { color:#c8c8c8 !important; font-size:13px; line-height:1.7; margin:12px 0 !important; }
.footer .footer-info a[href^="tel:"],
.footer .footer-info a[href^="mailto:"] { color:#f5f5f5; }
.footer .footer-tagline { margin-top:25px; padding-top:17px; border-top:1px solid rgba(255,255,255,.2); color:#f5f5f5; }
.bs-info-footer { background:linear-gradient(145deg,#34312e,#20201f 62%,#141515); border-top:1px solid #55504a; }
.bs-info-footer .footer-links { max-width:1100px; margin:0 auto 20px !important; justify-content:center !important; }
.bs-legacy-footer-links { justify-content:center !important; margin:28px auto 0 !important; max-width:900px; }
@media(max-width:768px) {
    .footer { padding:22px 16px 28px !important; }
    .footer .footer-container { grid-template-columns:minmax(0,1fr); gap:24px !important; }
    .footer .footer-newsletter { padding:18px !important; }
    .footer .footer-info { text-align:left !important; }
    .footer .footer-links { justify-content:flex-start !important; }
    .footer .footer-tagline { text-align:center; }
}
@media(max-width:380px) {
    .footer .footer-newsletter form { grid-template-columns:minmax(0,1fr) !important; }
    .footer .footer-newsletter button[type="submit"] { width:100% !important; }
}
/* Shared footer on older catalog and purchase pages, including desktop. */
.footer.bs-shared-footer { font-family:Poppins,Arial,sans-serif !important; text-align:left !important; font-size:13px !important; }
.footer.bs-shared-footer .footer-container { padding:0 !important; }
.footer.bs-shared-footer .footer-newsletter form { margin:0 !important; }
.footer.bs-shared-footer .footer-newsletter button { background:linear-gradient(145deg,#ea7920,#aa4d0c) !important; color:#fff !important; border:1px solid #b45b1b !important; border-radius:5px !important; font:700 13px Poppins,Arial,sans-serif !important; cursor:pointer; }
.footer.bs-shared-footer .bs-footer-message { min-height:1.4em; font-size:12px !important; }
.footer.bs-shared-footer .footer-info p { max-width:none !important; }
.footer.bs-shared-footer .footer-info .footer-tagline { letter-spacing:.14em; }
.footer.bs-shared-footer .footer-links { width:auto !important; }
@media(min-width:769px) { .footer.bs-shared-footer .footer-container { grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important; } }
