﻿ .site-footer {
      padding: 40px 16px 32px;
      display: flex;
      justify-content: center;
    }

    .footer-inner {
      width: 100%;
      max-width: 1100px;
      text-align: center;
      font-size: 0.98rem;
    }

    /* Marca */
    .footer-brand {
      display: flex;
      flex-direction: row;     /* logo + texto en línea */
      align-items: center;
      justify-content: center;
      gap: 8px;
      margin-bottom: 16px;
    }

    .footer-logo-mark {
      width: 40px;
      height: 40px;
      border-radius: 999px;
      background: #6b7280;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #f9fafb;
      font-size: 1.4rem;
    }

    .footer-logo-text {
      font-size: 1.2rem;
      font-weight: 700;
      color: #4b5563;
    }

    .footer-description {
      max-width: 960px;
      margin: 0 auto 24px;
      line-height: 1.6;
    }

    .footer-row {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      gap: 8px;
      margin-bottom: 12px;
    }

    .footer-row:last-of-type {
      margin-bottom: 0;
    }

    .footer-label {
      color: #6b7280;
    }

    .footer-link {
      color: #4b5563;
      text-decoration: none;
      position: relative;
    }

    .footer-link:hover {
      color: #111827;
    }

    .footer-link--underline:hover::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: -2px;
      width: 100%;
      height: 1px;
      background: #4b5563;
    }

    .footer-separator {
      color: #9ca3af;
    }

    /* Redes sociales */
    .footer-social-link {
      color: #9ca3af;
      font-size: 1.25rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      transition: color 0.12s ease;
    }

    .footer-social-link:hover {
      color: #4b5563;
    }

    .footer-social-link--fb {
      width: 28px;
      height: 28px;
      border-radius: 999px;
      border: 1px solid #d1d5db;
      background: transparent;
    }

    .footer-small {
      font-size: 0.9rem;
      color: #6b7280;
    }

    /* Responsive */
    @media (max-width: 768px) {
      .site-footer {
        padding: 32px 12px 24px;
      }
      .footer-description {
        font-size: 0.95rem;
      }
    }

    @media (max-width: 480px) {
      .footer-inner {
        font-size: 0.95rem;
      }
      .footer-description {
        font-size: 0.9rem;
      }
    }
