.site-footer {
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.2fr) minmax(0, 1fr);
  align-items: start;
  gap: 40px;
  padding: 48px max(24px, calc((100vw - 1240px) / 2));
}
.site-footer > * { min-width: 0; }
.site-footer .footer-brand > strong { font-size: 22px; }
.site-footer .footer-brand p { margin-top: 16px; font-size: 16px; line-height: 1.7; }
.site-footer h2 { margin: 0 0 20px; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.5; color: #f2eee5; }
.site-footer .footer-contact { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; margin: 0; font-style: normal; }
.site-footer .footer-contact a { display: block; min-width: 0; padding: 13px 16px; border: 1px solid #3b4148; color: #f2eee5; font-size: 15px; font-weight: 400; line-height: 1.5; text-decoration: none; }
.site-footer .footer-contact span { display: block; margin-bottom: 4px; color: #d6b66b; font-size: 12px; font-weight: 600; }
.site-footer .footer-contact b { font-weight: 500; overflow-wrap: anywhere; }
.site-footer .footer-contact a:hover { border-color: #d6b66b; background: #ffffff08; }
.site-footer .footer-actions { display: grid; grid-template-columns: minmax(0, 1fr); justify-content: start; gap: 0; }
.site-footer .footer-actions a { display: block; padding: 9px 0; border: 0; border-bottom: 1px solid #292d32; color: #c8c9c8; font-size: 14px; font-weight: 500; line-height: 1.5; overflow-wrap: anywhere; text-decoration: none; }
.site-footer .footer-actions a:first-child { padding-top: 0; }
.site-footer .footer-actions a:hover { color: #d6b66b; }
.site-footer a:focus-visible { outline: 2px solid #d6b66b; outline-offset: 4px; }
.contact-panel-grid a { font-size: 16px; font-weight: 500; line-height: 1.5; }
.contact-panel-grid small { font-size: 12px; text-transform: none; }
@media (max-width: 1000px) {
  .site-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
  .site-footer .footer-brand { grid-column: 1 / -1; }
  .site-footer .footer-brand p { max-width: 580px; }
}
@media (max-width: 640px) {
  .site-footer { grid-template-columns: minmax(0, 1fr); padding: 36px 22px; gap: 32px; }
}
