/* css/site-footer.css — Estilos del footer */
.site-footer{
    background:#2b2b2b; color:#e9e9e9; font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,"Helvetica Neue",Arial;
  }
  .site-footer a{ color:#cfe1ff; text-decoration:none; }
  .site-footer a:hover{ text-decoration:underline; }
  .footer-container{
    max-width:1200px; margin:0 auto; padding:32px 16px; display:grid; gap:32px;
    grid-template-columns: minmax(260px, 1fr) 2fr;
  }
  .footer-brand{ padding-right:16px; }
  .brand{ font-size:1.25rem; margin:0 0 4px 0; color:#fff; }
  .byline{ margin:0 0 12px 0; color:#c7c7c7; }
  .contact, .web, address{ margin:8px 0; font-style:normal; }
  .footer-columns{
    display:grid; gap:24px; align-content:start;
    grid-template-columns: repeat(5, minmax(160px,1fr));
  }
  .f-col { text-align: left; }
  .footer-columns { justify-items: start; }
  
  .f-h {
    background: none;
    border: none;
    padding: 0;
    margin-bottom: 8px;
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    cursor: pointer;
    text-align: left;
  }
  .f-h:focus { outline: 2px solid #6aa0ff; outline-offset: 2px; border-radius: 4px; }
  
  .f-list{ list-style: none; margin: 0; padding: 0; }
  .f-list li{ position: relative; margin: 6px 0; padding-left: 1.25rem; color: #bbb; }
  .f-list li::before{
    content: "•"; position: absolute; left: 0; top: 0; line-height: 1.2; color: #6aa0ff; font-weight: 700;
  }
  
  .footer-bottom{
    border-top:1px solid #3a3a3a; margin-top:8px; padding:14px 16px; text-align:center; color:#bdbdbd;
  }
  .footer-bottom .mini{ margin:6px 0 0 0; font-size:.875rem; color:#9a9a9a; }
  
  @media (max-width: 980px){
    .footer-container{ grid-template-columns: 1fr; gap:20px; }
    .footer-columns{ grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 640px){
    .footer-columns{ grid-template-columns: 1fr; }
    .f-list{ display:none; }
    .f-col.open .f-list{ display:block; }
    .f-h{ padding:10px 0; border-top:1px solid #3a3a3a; }
    .f-col:first-child .f-h{ border-top:0; }
  }
  .m-e{ word-break: break-word; }
  
  /* Encabezado de columna que es enlace (Inicio en el footer) */
.f-h-link {
    display: inline-block;
    font-weight: 700;
    color: #fff;
    text-decoration: none;
  }
  .f-h-link:hover { text-decoration: underline; }
  
  /* Uniformar espaciado con .f-h */
.f-h-link {
    margin-bottom: 8px;           /* igual que .f-h */
    font-size: 1rem;              /* igual que .f-h */
  }
  
  /* Accesibilidad: foco visible en teclado, como .f-h */
  .f-h-link:focus {
    outline: 2px solid #6aa0ff;
    outline-offset: 2px;
    border-radius: 4px;
  }
  
  /* En móvil, dar el mismo padding/borde superior que .f-h */
  @media (max-width: 640px){
    .f-h-link{
      display:block;              /* que ocupe toda la línea como .f-h */
      padding:10px 0;
      border-top:1px solid #3a3a3a;
    }
    .f-col:first-child .f-h-link{ border-top:0; }
  }
  