/* Site footer styles (#sal-custom-footer). Moved 2026-09-27 from the WPCode global footer box
   and Kadence element 102262 (tablet layout, Sam 2026-09-26 decision 13). Enqueued by
   template-parts/footer/base.php. */
 /* Main Footer Styles */
 .sal-footer {
 background: #071620;
 color: #ffffff;
 padding: 60px 40px;
 margin-top: 0;
 font-size: 16px;
 line-height: 1.6;
 }

 .sal-footer * {
 box-sizing: border-box;
 }

 /* Footer Container */
 .sal-footer-container {
 max-width: 1200px;
 margin: 0 auto;
 }

 /* Four Column Grid Layout */
 .sal-footer-content {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 40px;
 margin-bottom: 40px;
 }

 /* Column Styles */
 .sal-footer-column {
 display: flex;
 flex-direction: column;
 }

 /* Headings */
 .sal-footer-heading {
 color: #D97706;
 font-weight: 700;
 font-size: 20px;
 margin-bottom: 20px;
 text-transform: uppercase;
 letter-spacing: 0.5px;
 }

 /* Office Sections */
 .sal-footer-office {
 margin-bottom: 25px;
 }

 .sal-footer-office:last-child {
 margin-bottom: 0;
 }

 .sal-footer-office-name {
 font-weight: 700;
 font-size: 18px;
 margin-bottom: 8px;
 color: #D97706;
 text-transform: uppercase;
 letter-spacing: 0.5px;
 }

 .sal-footer-address {
 margin-bottom: 6px;
 font-size: 16px;
 line-height: 1.5;
 }

 .sal-footer-address a {
 color: #ffffff;
 text-decoration: none;
 transition: color 0.3s ease;
 }

 .sal-footer-address a:hover {
 color: #D97706;
 }

 .sal-footer-phone {
 font-size: 16px;
 margin-bottom: 0;
 }

 .sal-footer-phone a {
 color: #ffffff;
 text-decoration: none;
 transition: color 0.3s ease;
 }

 .sal-footer-phone a:hover {
 color: #D97706;
 }

 /* Social Icons (in bottom bar) */
 .sal-footer-social {
 display: flex;
 gap: 18px;
 justify-content: center;
 margin-bottom: 15px;
 }

 .sal-footer-social-link {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 width: 32px;
 height: 32px;
 transition: all 0.3s ease;
 }

 .sal-footer-social-link svg {
 width: 22px;
 height: 22px;
 fill: #ffffff;
 transition: fill 0.3s ease;
 }

 .sal-footer-social-link:hover svg {
 fill: #D97706;
 }

 /* Links Column */
 .sal-footer-links {
 list-style: none;
 padding: 0;
 margin: 0;
 }

 .sal-footer-links li {
 margin-bottom: 12px;
 }

 .sal-footer-links li:last-child {
 margin-bottom: 0;
 }

 .sal-footer-links a {
 color: #ffffff;
 text-decoration: none;
 font-size: 16px;
 transition: color 0.3s ease;
 }

 .sal-footer-links a:hover {
 color: #D97706;
 }

 /* CTA Column */
 .sal-footer-cta-heading {
 color: #D97706;
 font-weight: 700;
 font-size: 22px;
 margin-bottom: 15px;
 text-transform: uppercase;
 letter-spacing: 0.5px;
 }

 .sal-footer-cta-description {
 font-size: 16px;
 margin-bottom: 20px;
 line-height: 1.5;
 color: #ffffff;
 }





 /* Bottom Bar */
 .sal-footer-bottom {
 border-top: 1px solid rgba(248, 156, 34, 0.2);
 padding-top: 25px;
 background: rgba(0, 0, 0, 0.3);
 margin: 0 -40px -60px -40px;
 padding: 20px 40px;
 text-align: center;
 font-size: 16px;
 color: rgba(255, 255, 255, 0.8);
 }

 /* Bottom-bar text size (was forced by WPCode 60659 until 2026-09-27): 16px, 13px at 768px, 12px at 400px. */
 .sal-footer-bottom a,
 .sal-footer-bottom p,
 .sal-footer-bottom span {
 font-size: 16px;
 }

 .sal-footer-bottom-content {
 max-width: 1200px;
 margin: 0 auto;
 }

 .sal-footer-bottom a {
 color: #D97706;
 text-decoration: none;
 transition: color 0.3s ease;
 }

 .sal-footer-bottom a:hover {
 color: #ffffff;
 }

 .sal-footer-bottom-separator {
 margin: 0 8px;
 color: rgba(255, 255, 255, 0.6);
 }

 /* Responsive Design */
 /* Tablet: 2 columns */

 @media (max-width: 1024px) {
 .sal-footer {
 padding: 50px 30px;
 }

 /* Match the medium-width bottom bar to the footer's 30px gutter. */
 .sal-footer-bottom {
 margin: 0 -30px -50px -30px;
 padding: 20px 30px;
 }

 .sal-footer-content {
 grid-template-columns: repeat(2, 1fr);
 gap: 30px;
 }
 }

 /* Mobile: 1 column */
 @media (max-width: 768px) {
 #sal-custom-footer.sal-footer {
 padding: 40px 20px;
 }

 #sal-custom-footer .sal-footer-content {
 grid-template-columns: 1fr !important;
 gap: 30px;
 }

 #sal-custom-footer .sal-footer-column {
 text-align: center !important;
 align-items: center !important;
 justify-content: center !important;
 }

 #sal-custom-footer .sal-footer-office,
 #sal-custom-footer .sal-footer-links,
 #sal-custom-footer .sal-footer-cta-description,
 #sal-custom-footer .sal-footer-heading,
 #sal-custom-footer .sal-footer-cta-heading,
 #sal-custom-footer .sal-footer-address,
 #sal-custom-footer .sal-footer-phone,
 #sal-custom-footer .sal-footer-links li {
 text-align: center !important;
 margin-left: auto !important;
 margin-right: auto !important;
 }

 .sal-footer-bottom {
 margin: 0 -20px -40px -20px;
 padding: 15px 20px;
 }

 .sal-footer-bottom-separator {
 display: none;
 }

 .sal-footer-bottom-content {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: 6px;
 line-height: 1.6;
 }

 .sal-footer-heading,
 .sal-footer-cta-heading {
 font-size: 18px;
 }


 .sal-footer-bottom,
 .sal-footer-bottom a,
 .sal-footer-bottom p,
 .sal-footer-bottom span {
 font-size: 13px;
 }
 }

 @media (max-width: 400px) {
 .sal-footer-bottom,
 .sal-footer-bottom a,
 .sal-footer-bottom p,
 .sal-footer-bottom span {
 font-size: 12px;
 }
 }

 /* Extra small screens */
 @media (max-width: 480px) {
 .sal-footer {
 padding: 30px 15px;
 }

 .sal-footer-content {
 gap: 20px;
 }
 }
 

/* Tablet layout: offices, Quick Links, Practice Areas in three columns; Free Case Review full width below. */
@media (min-width:641px) and (max-width:1024px){
  html body #sal-custom-footer .sal-footer-content{grid-template-columns:1.2fr 1fr 1fr !important;gap:36px 32px !important;}
  html body #sal-custom-footer .sal-footer-column{text-align:left !important;align-items:flex-start !important;justify-content:flex-start !important;}
  html body #sal-custom-footer .sal-footer-column :is(.sal-footer-office,.sal-footer-links,.sal-footer-heading,.sal-footer-address,.sal-footer-phone,.sal-footer-links li,.sal-footer-cta-heading,.sal-footer-cta-description){text-align:left !important;margin-left:0 !important;margin-right:0 !important;}
  html body #sal-custom-footer .sal-footer-content>.sal-footer-column:nth-child(4){grid-column:1/-1;display:grid !important;grid-template-columns:minmax(0,1fr) auto;column-gap:32px;align-items:center !important;padding-top:28px;border-top:1px solid rgba(255,255,255,.18);}
  html body #sal-custom-footer .sal-footer-content>.sal-footer-column:nth-child(4)>.sal-footer-cta-heading{grid-column:1;margin:0 0 6px !important;}
  html body #sal-custom-footer .sal-footer-content>.sal-footer-column:nth-child(4)>.sal-footer-cta-description{grid-column:1;margin:0 !important;}
}

/* Desktop: column headings stay aligned with their links even when a page's own CSS centers h3
   (Spanish chrome QA 2026-09-27: WP 89233 ships "h1,h2,h3{text-align:center !important}"). Tablet and
   mobile keep the rules above. */
@media (min-width:1025px){
  html body #sal-custom-footer .sal-footer-column :is(.sal-footer-heading,.sal-footer-cta-heading){text-align:left !important;}
}
