/* Shared footer for home, catalog, distributors and privacy. */
.footer { background:#251116; color:#fdf8f5; padding:44px 4% 24px; border-top:2px solid #9b7d32; }
.footer-content { display:grid; grid-template-columns:1.05fr .8fr 1.25fr; gap:40px; max-width:1240px; margin:0 auto; }
.footer-brand,.footer-links,.footer-contact { min-width:0; }
.footer-logo { display:inline-flex; }
.footer-logo img { display:block; height:70px; width:auto; }
.footer-brand p { max-width:280px; margin:16px 0 0; color:#d9cdd0; font-size:.9rem; line-height:1.7; }
.footer h2 { color:#d2b34e; font:600 .82rem var(--font-body); letter-spacing:.06em; margin:0 0 12px; }
.footer-links ul { padding:0; margin:0; list-style:none; }
.footer-links a { display:inline-flex; align-items:center; min-height:44px; }
.footer a { color:#f1e9eb; font-size:.88rem; text-decoration:none; line-height:1.5; overflow-wrap:anywhere; }
.footer a:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.footer a:focus-visible { outline:2px solid #d2b34e; outline-offset:4px; border-radius:4px; }
.footer .footer-whatsapp { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; border:1px solid #bc9b4b; border-radius:8px; font-weight:600; background:#47262e; }
.footer-contact-links { display:flex; flex-direction:column; align-items:flex-start; margin:8px 0 12px; }
.footer-contact-links a { display:inline-flex; align-items:center; min-height:44px; }
.footer address { font-style:normal; margin:0; }
.footer address a { display:inline-block; padding:6px 0; }
.footer-hours { color:#d9cdd0; font-size:.85rem; line-height:1.5; margin:8px 0 0; }
.footer-bottom { max-width:1240px; margin:28px auto 0; padding-top:16px; border-top:1px solid #ffffff24; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:8px 24px; }
.footer-bottom p { color:#c9b9be; font-size:.78rem; line-height:1.6; margin:0; }
.footer-bottom nav { display:flex; flex-wrap:wrap; gap:8px 24px; padding-right:64px; }
.footer-bottom nav a { display:inline-flex; align-items:center; min-height:44px; font-size:.8rem; }
@media(min-width:769px) and (max-width:1050px) {
 .footer-content { grid-template-columns:1fr 1fr; gap:24px 32px; }
 .footer-brand { grid-column:1 / -1; display:flex; align-items:center; gap:24px; }
 .footer-brand p { margin:0; max-width:360px; }
}
@media(max-width:768px) {
 .footer { padding:32px 1.25rem 88px; }
 .footer-content { grid-template-columns:1fr; gap:28px; }
 .footer-brand p { max-width:340px; }
 .footer-links ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; }
 .footer-bottom { flex-direction:column; align-items:flex-start; gap:12px; margin-top:24px; }
 .footer-bottom nav { padding-right:0; }
}
