/* Footer dedicated styles (responsive and minimal grouping) */

/* Base grouping for readability; keep minimal to avoid duplication */
.site-footer {
  border-top-left-radius: var(--footer-radius);
  border-top-right-radius: var(--footer-radius);
  border-top: 1px solid var(--footer-border);
  /* Added comfortable vertical spacing */
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.site-footer .footer-policies a { opacity: .95; }
.site-footer .footer-policies a:hover { opacity: 1; }

/* Ensure partner logo is large and prominent by default */
.site-footer .partner-logo { height: 64px; width: auto; }
.site-footer .partner-logo-lg { height: 64px; }
.site-footer .partner-link { display: inline-flex; margin-top: .5rem; }

/* Ensure brand and partner logos stack vertically across breakpoints */
.site-footer .footer-brand-stack { display: flex; flex-direction: column; align-items: flex-start; gap: 1rem; }
.site-footer .footer-brand-stack > a { display: block; }
.site-footer .footer-brand-stack .partner-link { margin-top: 0; }

/* Responsive tweaks */
@media (max-width: 991.98px) {
  .site-footer .footer-logo { height: 42px; }
  /* Keep partner logo large on tablets and small laptops */
  .site-footer .partner-logo { height: 56px; }
}

@media (max-width: 767.98px) {
  .site-footer .footer-heading { margin-bottom: .5rem; }
  .site-footer .footer-links li { margin-bottom: .3rem; }
  .site-footer .footer-social .social-link { width: 32px; height: 32px; }
}

@media (max-width: 575.98px) {
  .site-footer .footer-copy { font-size: .85rem; }
  .site-footer .footer-bottom .row { gap: .5rem; }
  /* Slightly tighter spacing on small screens */
  .site-footer { padding-top: 1.25rem; padding-bottom: 1.25rem; }
  /* Maintain visibility on small phones */
  .site-footer .partner-logo { height: 64px; }
}

/* Minor performance-friendly minification (grouped rules & short values) */
.site-footer .footer-social .social-link{transition:opacity .2s ease}
.site-footer .footer-social .social-link:hover{opacity:.95}
.site-footer .footer-social .social-link{transition:opacity .2s ease}
.site-footer .footer-social .social-link:hover{opacity:.95}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
  .site-footer .footer-social .social-link{transition:none}
}

/* New spacing helpers for footer layout */
.site-footer .footer-links li + li { margin-top: .35rem; }
.site-footer .footer-social { gap: .5rem; }
.site-footer .partner { margin-top: .5rem; }
.site-footer .footer-bottom { margin-top: 1rem; padding-top: 1rem; }