/* Shared footer: readable text, spacious navigation and comfortable touch targets. */
.site-footer { padding-block-start: 44px; }
.footer-grid {
  grid-template-columns: minmax(0,1.4fr) repeat(3,minmax(0,1fr)) minmax(0,1.6fr);
  gap: 28px;
  padding-block-end: 40px;
}
.footer-grid > div:not(:first-child) { padding-inline-start: 24px; }
.footer-grid h2 { font-size: 20px; line-height: 1.4; margin-block-end: 16px; }
.footer-grid a, .footer-grid p, .footer-link {
  font-size: 16px;
  line-height: 1.7;
  margin-block-end: 6px;
  overflow-wrap: anywhere;
}
.footer-grid a:not(.brand), .footer-link { min-block-size: 40px; }
.footer-grid a:not(.lj-button):hover, .footer-bottom a:hover, .footer-bottom button:hover { color: #ebcb75; text-decoration: underline; text-underline-offset: 5px; }
.footer-muted { opacity: 1; color: #cbd5e1!important; font-size: 14px!important; }
.footer-prompt { padding: 20px; border-radius: 12px; }
.footer-prompt > div { align-items: flex-start; gap: 12px; margin-block-end: 20px; }
.footer-prompt > div > .lj-icon { inline-size: 36px; block-size: 36px; flex-shrink: 0; }
.footer-prompt strong { display: block; font-size: 18px; line-height: 1.55; }
.footer-prompt small { font-size: 15px; line-height: 1.6; margin-block-start: 6px; color: #e2e8f0; }
.footer-prompt .lj-button { font-size: 16px; min-block-size: 48px; padding: 10px 12px; line-height: 1.5; margin: 0; gap: 8px; }
.footer-prompt .lj-button .lj-icon { inline-size: 20px; block-size: 20px; flex-shrink: 0; }
.footer-brand .brand { align-items: center; gap: 10px; margin-block-end: 18px; }
.footer-brand .brand-title { white-space: nowrap; overflow-wrap: normal; }
.footer-brand .brand-title bdi { font-size: 38px; }
.footer-brand .brand-title strong { font-size: 21px; }
.footer-brand .brand small { font-size: 13px; line-height: 1.6; }
.footer-brand .brand-mark { inline-size: 42px; block-size: 48px; flex-shrink: 0; }
.footer-brand p { color: #cbd5e1; }
.footer-bottom { padding-block: 16px; }
.footer-bottom > .lj-container { font-size: 14px; color: #e2e8f0; flex-wrap: wrap; }
.footer-bottom > .lj-container > div { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.footer-bottom button, .footer-bottom a { font-size: 14px; min-block-size: 44px; margin: 0; padding-block: 8px; display: inline-flex; align-items: center; }
@media (max-width: 1200px) {
  .footer-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
  .footer-brand { grid-column: 2 / 4; }
}
@media (max-width: 639px) {
  .site-footer { padding-block-start: 32px; }
  .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 20px; padding-block-end: 30px; }
  .footer-grid > div:not(:first-child) { padding-inline-start: 0; border: 0; }
  .footer-grid h2 { font-size: 20px; margin-block-end: 12px; }
  .footer-grid a:not(.brand), .footer-link { min-block-size: 44px; }
  .footer-prompt, .footer-brand { grid-column: 1 / -1; }
  .footer-prompt { padding: 22px; }
  .footer-prompt .lj-button { min-block-size: 48px; }
  .footer-brand .brand-title bdi { font-size: 40px; }
  .footer-bottom > .lj-container { align-items: flex-start; gap: 12px; }
  .footer-bottom > .lj-container > div { gap: 4px 20px; }
}
/* Two adjacent legal-area columns replace the footer brand panel. */
.footer-grid{grid-template-columns:minmax(0,1.35fr) repeat(4,minmax(0,1fr))}
.footer-grid>div{min-width:0}
@media(max-width:1200px){.footer-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.footer-prompt{grid-column:1/-1}}
@media(max-width:639px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:'prompt prompt' 'lawyers info' 'areas areas-more'}.footer-prompt{grid-area:prompt}.footer-lawyers{grid-area:lawyers}.footer-info{grid-area:info}.footer-areas{grid-area:areas}.footer-areas-more{grid-area:areas-more}}
/* Keep the logo at the true center, independent of the width of the side links. */
.footer-bottom > .lj-container{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px}
.footer-bottom .footer-copyright{grid-column:3;grid-row:1;justify-self:end;white-space:nowrap;direction:ltr}
.footer-bottom > .lj-container > .footer-center-logo{grid-column:2;grid-row:1;justify-content:center}
.footer-bottom .footer-center-logo .lawj-brand-logo{margin-inline-start:0}
.footer-bottom > .lj-container > .footer-legal-links{grid-column:1;grid-row:1;justify-content:flex-start;min-width:0}
@media(max-width:639px){
 .footer-bottom > .lj-container{align-items:center;gap:12px}
 .footer-bottom .footer-center-logo .lawj-brand-logo{width:90px}
 .footer-bottom > .lj-container > .footer-legal-links{gap:2px 10px}
 .footer-bottom .footer-legal-links button,.footer-bottom .footer-legal-links a{margin-inline-end:0;font-size:13px;min-block-size:44px}
}
