/* === sizing knobs === */
:root{
  --tsa-green:#125b3f;
  --tsa-white:#ffffff;
  --tsa-gold:#f5a17c;
  --tsa-max:960px;
  --tsa-padY:16px;
  --tsa-gap:24px;
  --tsa-logo:160px;
  --tsa-icon:18px;
  --tsa-link:#005b30;
}

/* paint widgets footer + single gold line */
.footer-widgets, .footer-widgets-area, .footer-widgets-wrap{
  background: var(--tsa-green) !important;
  color: var(--tsa-white) !important;
  border-top: 4px solid var(--tsa-gold) !important;
}

/* 3 equal columns */
.footer-widgets, .footer-widgets .container, .footer-widgets-wrap{
  max-width: var(--tsa-max);
  margin: 0 auto;
  padding: var(--tsa-padY) 12px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--tsa-gap);
  align-items: center;   /* ensures same midline */
}

/* remove any card styling */
.footer-widgets .widget{margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
.footer-widgets .widget *, .footer-widgets .widget:before, .footer-widgets .widget:after{border:0!important;box-shadow:none!important;}

/* flex alignment for each widget */
.footer-widgets .widget:nth-child(1),
.footer-widgets .widget:nth-child(2),
.footer-widgets .widget:nth-child(3){
  display:flex;
  align-items:center;         /* vertical centering within cell */
  height:100%;                /* equal column height */
}
.footer-widgets .widget:nth-child(1){justify-content:flex-start;text-align:left;}
.footer-widgets .widget:nth-child(2){justify-content:center;text-align:center;}
.footer-widgets .widget:nth-child(3){justify-content:flex-end;text-align:right;}

/* logo */
.footer-widgets img{max-width:var(--tsa-logo);height:auto;display:inline-block;}

/* text + links */
.footer-widgets p{margin:0 0 6px;line-height:1.45;}
.footer-widgets a, .footer-widgets p, .footer-widgets strong{color:var(--tsa-white)!important;text-decoration:none;}
.footer-widgets a:hover{color:var(--tsa-link)!important;}

/* --- SOCIAL ICON ALIGNMENT --- */
.footer-widgets .widget:nth-child(3){
  align-items:center;          /* perfectly center vertically with logo/address */
}
.footer-widgets .widget:nth-child(3) a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  margin-left:10px;
  text-decoration:none;
}
.footer-widgets .widget:nth-child(3) i{
  font-size:var(--tsa-icon);
  line-height:1;
}

/* copyright bar (optional) */
.site-info, .bottom-footer, .footer-bar{
  background: var(--tsa-green)!important;
  color:#fff!important;
  border-top:0!important;
  padding:8px 0;
  text-align:center;
}
.site-info a{color:#fff!important;text-decoration:none;}
.site-info a:hover{color:var(--tsa-link)!important;}

/* mobile stack */
@media (max-width:782px){
  .footer-widgets, .footer-widgets .container, .footer-widgets-wrap{
    grid-template-columns:1fr;
    gap:14px;
    text-align:center;
  }
  .footer-widgets .widget:nth-child(1),
  .footer-widgets .widget:nth-child(3){
    justify-content:center;text-align:center;
  }
}
