#site-footer p{margin-top:0}
    #site-footer { background: #252a3f; }
    .footer-shell {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 24px;
    }
    .footer-shell-top { padding-top: 64px; padding-bottom: 0; }
    .footer-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 40px;
      padding: 0 0 48px;
      border-bottom: 1px solid rgba(255,255,255,0.06);
    }
    .footer-brand {
      font-family: 'Sora', sans-serif;
      font-weight: 700;
      font-size: 1.25rem;
      color: #fff;
      margin-bottom: 12px;
    }
    .footer-description {
      font-family: 'Inter', sans-serif;
      font-size: 0.875rem;
      color: rgba(255,255,255,0.5);
      line-height: 1.7;
      max-width: 280px;
      margin-bottom: 16px;
    }
    .footer-phone {
      display: block;
      margin-bottom: 16px;
      font-weight: 500;
      color: rgba(255,255,255,0.7);
    }
    .footer-section-title {
      font-family: 'Inter', sans-serif;
      font-size: 0.72rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: rgba(255,255,255,0.6);
      margin-bottom: 20px;
    }
    .footer-link-list {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }
    .footer-link {
      font-family: 'Inter', sans-serif;
      font-size: 0.875rem;
      color: rgba(255,255,255,0.6);
      text-decoration: none;
      transition: color 0.15s;
    }
    .footer-link:hover { color: #fff; }
    .footer-social-group {
      display: flex;
      align-items: flex-start;
      flex-direction: column;
      gap: 14px;
    }
    .footer-social-link {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: 'Inter', sans-serif;
      font-size: 0.85rem;
      font-weight: 500;
      color: rgba(255,255,255,0.7);
      text-decoration: none;
      transition: color 0.15s;
    }
    .footer-social-link:hover { color: #fff; }
    .footer-social-link svg,
    .footer-google-link img { flex-shrink: 0; }
    .footer-google-link {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: 'Inter', sans-serif;
      font-size: 0.85rem;
      font-weight: 500;
      color: rgba(255,255,255,0.7);
      text-decoration: none;
      transition: color 0.15s;
    }
    .footer-google-link:hover { color: #fff; }
    .footer-review-stars { display: flex; gap: 2px; margin-bottom: 3px; }
    .footer-stack { display: flex; flex-direction: column; gap: 12px; }
    .footer-logo-wrap {
      overflow: hidden;
      padding: 24px 0 8px;
    }
    .footer-logo {
      display: block;
      width: min(100%, 920px);
      max-width: 100%;
      height: auto;
      padding: 0 24px;
      object-fit: contain;
      margin: 0 auto;
    }
    .footer-meta {
      padding: 20px 0;
    }
    .footer-copy {
      font-family: 'Inter', sans-serif;
      font-size: 0.72rem;
      text-align: center;
      color: rgba(255,255,255,0.6);
      line-height: 1.7;
    }
    .footer-meta-link {
      color: rgba(255,255,255,0.6);
      text-decoration: none;
      transition: color 0.15s;
    }
    .footer-meta-link:hover { color: #fff; }
    @media (max-width: 1024px) {
      .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .footer-logo { width: min(100%, 920px); }
    }
    @media (max-width: 768px) {
      .footer-shell { padding: 0 20px; }
      .footer-shell-top { padding-top: 48px; }
      .footer-grid { grid-template-columns: 1fr; gap: 32px; padding-bottom: 40px; }
      .footer-social-group { gap: 16px; }
      .footer-logo { width: min(100%, 320px); max-width: calc(100vw - 48px); height: auto; padding: 0; }
    }
