.site-below-footer-wrap,
.site-primary-footer-wrap{
  background:#eaeaea !important; border-top:4px solid var(--navy); padding:44px 0 28px !important;
}
.site-below-footer-wrap,
.site-below-footer-wrap .ast-builder-grid-row,
.site-below-footer-wrap .site-footer-below-section-1{
  height:auto !important; min-height:0 !important; overflow:visible !important;
}
.ast-footer-copyright{ text-align:left !important; width:100%; line-height:1.5; overflow:visible; }

.ft-wrap{ display:grid; grid-template-columns:repeat(3,1fr); gap:36px; text-align:left; }
.ft-wrap br,
.ft-wrap p:empty{ display:none !important; }
.ft-bottom{
  grid-column:1 / -1; border-top:1px solid #b8b8b8; padding-top:16px;
  font-size:14px; color:#333;
}
@media (max-width:768px){ .ft-wrap{ grid-template-columns:1fr; } }

.ft-title{ font-size:26px; font-weight:600; color:#555; margin:0 0 18px; text-align:left; }
.ft-name{ font-size:17px; font-weight:700; color:#333; margin:0 0 12px; }

.ft-list{ list-style:none !important; margin:0 !important; padding:0 !important; }
.ft-list li{ margin-bottom:12px; text-align:left; }
.ft-list a{
  color:#555 !important; text-decoration:none; font-size:16px;
  display:inline-flex; align-items:center; gap:10px;
  transition:color .2s ease, transform .2s ease;
}
.ft-list a::before{
  content:"\203A"; display:inline-flex; align-items:center; justify-content:center;
  width:17px; height:17px; border-radius:50%; background:#111; color:#fff;
  font-size:14px; line-height:1;
}
.ft-list a:hover{ color:var(--navy) !important; transform:translateX(4px); }

.ft-line{
  display:block; color:#333 !important; font-size:16px; line-height:1.6;
  margin:0 0 10px; text-decoration:none;
}
a.ft-line:hover{ color:var(--navy) !important; }
.ft-addr::before, .ft-phone::before, .ft-mail::before{ color:var(--navy); }

.ft-social{ display:flex; flex-direction:row; align-items:center; gap:10px; margin-top:14px; }
.ft-social a{
  position:relative; display:inline-block; width:40px; height:40px; padding:0; margin:0;
  border-radius:50%; background:var(--navy);
  transition:background .2s ease, transform .2s ease;
}
.ft-social a:hover{ background:var(--accent); transform:translateY(-3px); }

.ft-ig::before{
  content:""; position:absolute; inset:0; margin:auto; width:18px; height:18px;
  border:2px solid #fff; border-radius:6px; box-sizing:border-box;
  background:radial-gradient(circle at 76% 24%, #fff 1.4px, transparent 1.8px);
}
.ft-ig::after{
  content:""; position:absolute; inset:0; margin:auto; width:8px; height:8px;
  border:2px solid #fff; border-radius:50%; box-sizing:border-box;
}
.ft-yt::before{
  content:""; position:absolute; inset:0; margin:auto; width:20px; height:14px;
  background:#fff; border-radius:4px;
}
.ft-yt::after{
  content:""; position:absolute; inset:0; margin:auto; width:0; height:0;
  border-left:6px solid var(--navy); border-top:4px solid transparent; border-bottom:4px solid transparent;
  transform:translateX(1px); transition:border-left-color .2s ease;
}
.ft-yt:hover::after{ border-left-color:var(--accent); }
/* phones and tablets: keep the footer text off the screen edge */
@media (max-width:921px){
  .site-below-footer-wrap .ast-builder-grid-row-container-inner,
  .site-primary-footer-wrap .ast-builder-grid-row-container-inner{ padding-left:20px; padding-right:20px; }
}
