/* Alin Digital footer v5.2.0 — professional multi-column; overrides bd504 accordion look */
footer.bd520-footer,footer.site-footer.bd520-footer{
  padding:48px 0 20px!important;min-height:0!important;height:auto!important;
  background:#142825!important;color:#f3f6f2!important;
  border-top:3px solid #1f3f38!important;overflow:visible
}
.bd520-footer .bd520-footer-grid{
  display:grid;grid-template-columns:1.25fr .9fr .85fr 1.15fr;gap:36px 40px;align-items:start
}
.bd520-footer :is(p,a,address,summary,small,h2){
  font-family:inherit;letter-spacing:normal;text-transform:none;white-space:normal;
  overflow-wrap:anywhere;word-break:normal
}
.bd520-footer .bd520-heading{
  font-size:15px!important;line-height:1.4;margin:0 0 16px!important;
  color:#fff!important;font-weight:700;letter-spacing:.02em
}
.bd520-footer a{color:#e8f0eb!important;font-size:14px;line-height:1.65;text-decoration:none}
.bd520-footer a:hover{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.bd520-footer .bd520-col-brand p{
  font-size:14px;line-height:1.75;margin:14px 0 18px;max-width:36ch;color:#c9d8d1!important
}
.bd520-footer .brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.bd520-footer .brand img{width:44px;height:44px;object-fit:contain;border-radius:10px;flex-shrink:0}
.bd520-footer .brand-copy strong{font-size:18px;line-height:1.25;display:block;color:#eef5f1!important}
.bd520-footer .brand-copy strong b{color:#ffbe76!important}
.bd520-footer .brand-copy small{font-size:11px;color:#b7c9c1!important}
.bd520-social{display:flex;flex-wrap:wrap;gap:10px}
.bd520-social-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:6px 14px;
  border:1px solid #3d5f57;border-radius:999px;font-size:13px!important;font-weight:600;
  background:rgba(255,255,255,.04);color:#f3f6f2!important;text-decoration:none!important
}
.bd520-social-btn:hover{background:rgba(255,255,255,.1);border-color:#6a9488;text-decoration:none!important}
.bd520-footer-nav,.bd520-contact-stack{display:flex;flex-direction:column;gap:8px;min-width:0}
.bd520-footer-nav a{padding:2px 0}
.bd520-hiring{font-weight:700;color:#ffd166!important}
.bd520-wa{
  display:inline-flex;align-items:center;align-self:flex-start;gap:6px;
  margin-top:4px;padding:9px 14px;border-radius:10px;font-weight:700;font-size:13px!important;
  background:#bfe3ce!important;color:#133b29!important;text-decoration:none!important
}
.bd520-wa:hover{background:#d4f0df!important;text-decoration:none!important}
.bd520-office{margin-top:12px;padding-top:12px;border-top:1px solid #35564f}
.bd520-office-label{margin:0 0 6px!important;font-size:12px!important;font-weight:700;color:#9fbfb4!important;max-width:none!important}
.bd520-office address{font-style:normal;font-size:13px;line-height:1.7;margin:0 0 6px;color:#d5e4de!important;max-width:42ch}
.bd520-office-note{margin:0 0 8px!important;font-size:12px!important;line-height:1.6;color:#a8c0b7!important;max-width:42ch!important}
.bd520-maps{font-size:13px!important;font-weight:600}
.bd520-directory-wrap{margin-top:28px}
.bd520-directory{border-top:1px solid #35564f;border-bottom:1px solid #35564f;margin:0}
.bd520-directory>summary{
  cursor:pointer;list-style:disclosure-closed inside;min-height:44px;padding:12px 0;
  font-size:14px;font-weight:600;color:#f3f6f2
}
.bd520-directory[open]>summary{list-style-type:disclosure-open}
.bd520-directory>nav{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 22px;padding:4px 0 18px
}
.bd520-footer-bottom{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding-top:18px;font-size:12px;color:#a8c0b7
}
.bd520-legal{display:flex;gap:18px}
.bd520-footer-bottom a,.bd520-footer-bottom small{font-size:12px;color:#a8c0b7!important}
.bd520-footer :is(a,summary):focus-visible{outline:2px solid #ffd166;outline-offset:3px}

/* Mobile: tidy stacked columns; optional accordion only for directory */
@media(max-width:900px){
  .bd520-footer .bd520-footer-grid{grid-template-columns:1fr 1fr;gap:28px 24px}
  .bd520-col-brand{grid-column:1/-1}
  .bd520-directory>nav{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  footer.bd520-footer{padding:32px 0 16px!important}
  .bd520-footer .bd520-footer-grid{grid-template-columns:1fr;gap:22px}
  .bd520-footer .bd520-col-brand p{max-width:none}
  .bd520-directory>nav{grid-template-columns:1fr}
  .bd520-footer-bottom{gap:10px 16px}
  .bd520-footer-bottom>small{width:100%}
}
/* Hide legacy bd504 accordion leftovers if any cached markup briefly appears */
.bd520-footer details.bd504-links,.bd520-footer details.bd504-office{display:none!important}

/* Mobile PSI: defer paint of below-fold footer */
@media (max-width: 900px) {
  .site-footer.bd520 { content-visibility: auto; contain-intrinsic-size: 1px 720px; }
}
