/* Footer: charcoal background with light text */
.footer{background:var(--charcoal, #264653);border-top:1px solid rgba(255,255,255,.08);padding:20px 0;color:var(--on-dark, #ffffff);margin-top:auto}
.footer a{color:var(--on-dark, #ffffff)}
.footer-grid{display:grid;gap:25px;grid-template-columns:1fr 1fr 1fr;align-items:start;grid-template-areas:'brand brand brand' 'company contact explore'}
.footer-brand{grid-area:brand;text-align:center}
.footer-company{grid-area:company;text-align:center}
.footer-explore{grid-area:explore;text-align:center}
.footer-contact{grid-area:contact;text-align:center}
@media (max-width:900px){
  /* Two-column layout and include contact row to prevent overflow */
  .footer-grid{
    grid-template-columns:1fr 1fr;
    grid-template-areas:
      'brand brand'
      'contact contact'
      'company explore';
  }
  .footer-brand p{display:none}
  /* Avoid awkward spacing due to justify on small screens */
  .footer-company .footer-links,
  .footer-explore .footer-links{
    text-align:center; justify-content:center
  }
}

@media (max-width:600px){
  /* Single-column stack for very small devices */
  .footer-grid{
    grid-template-columns:1fr;
    grid-template-areas:
      'brand'
      'contact'
      'company'
      'explore'
      ;
  }
}
.footer .brand{justify-content:center}
.social{display:flex;justify-content:center;gap:12px;margin-top:8px}
.social .social-icon{width:26px;height:26px;object-fit:contain;display:block}
.footer .brand{display:flex;align-items:center;justify-content:center;gap:10px}
.footer-brand{display:flex;flex-direction:column;align-items:center;text-align:center}
.footer .brand-name{font-weight:800}
.footer p{margin:8px 0}
.footer-links{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:8px}
.footer-links a{text-decoration:none}
.footer-links a:hover{text-decoration:underline}
.footer .policies a:hover{text-decoration:underline}
.contact-inline{margin-top:8px}
.contact-inline .policies{margin-top:6px}
