/* PSD footer: four independent columns; each column follows its own content. */
#footer.opes-footer, .home-content.content-flow-home #footer.opes-footer {
  position: relative; display: block; width: 100%; max-width: none; height: auto !important;
  min-height: 0 !important; margin: 0; padding: 0; border: 0;
  color: #fff; background-color: #073d7d; background-image: none !important; box-sizing: border-box;
}
#footer.opes-footer::before, #footer.opes-footer::after { display: none; }
#footer.opes-footer * { box-sizing: border-box; }
#footer.opes-footer .opes-footer-inner { width: 75.625%; max-width: 1452px; margin: 0 auto; }
#footer.opes-footer .opes-footer-columns { display: flex; align-items: flex-start; padding: 49px 0 40px; }
#footer.opes-footer .opes-footer-column { display: block; flex: 0 0 auto; min-width: 0; margin: 0 7.65% 0 0; padding: 0; }
#footer.opes-footer .opes-footer-story { width: 21.35%; }
#footer.opes-footer .opes-footer-contact { width: 15%; }
#footer.opes-footer .opes-footer-follow { width: 18%; }
#footer.opes-footer .opes-footer-products { flex: 1; margin-right: 0; }
#footer.opes-footer .opes-footer-column h2 { position: relative; margin: 0 0 35px; padding: 0; color: #fff; font-size: 18px; font-weight: 400; line-height: 1.5; word-wrap: break-word; }
#footer.opes-footer .opes-footer-column h2::after { position: absolute; bottom: -14px; left: 0; width: 38px; height: 2px; background: #cb9b3b; content: ""; }
#footer.opes-footer .opes-footer-copy, #footer.opes-footer .opes-footer-category-list { margin: 0; padding: 0; font-size: 14px; line-height: 1.8; word-wrap: break-word; }
#footer.opes-footer .opes-footer-contact-lines { display: flex; flex-direction: column; align-items: flex-start; }
#footer.opes-footer .opes-footer-contact-lines p { position: relative; width: 100%; height: auto; min-height: 20px; margin: 0 0 12px; padding: 0 0 0 28px; font-size: 16px; line-height: 20px; word-wrap: break-word; }
#footer.opes-footer .opes-footer-contact-lines p:last-child { margin-bottom: 0; }
#footer.opes-footer .opes-footer-contact-lines p::before { position: absolute; top: 1px; left: 0; width: 18px; height: 18px; content: ""; background-repeat: no-repeat; background-position: center; background-size: contain; }
#footer.opes-footer .opes-footer-phone::before { background-image: url(../images/footer-phone-icon.png); }
#footer.opes-footer .opes-footer-email::before { background-image: url(../images/footer-email-icon.png); }
#footer.opes-footer .opes-footer-category-list a { display: block; width: auto; margin: 0 0 7px; color: #fff; line-height: 1.6; text-decoration: none; word-wrap: break-word; transition: color .2s; }
#footer.opes-footer .opes-footer-category-list a:hover { color: #ffb34d; }
#footer.opes-footer .opes-footer-social { display: flex; align-items: center; flex-wrap: wrap; margin: 0 -11px 0 0; }
#footer.opes-footer .opes-footer-social-link { display: inline-block; position: relative; flex: 0 0 38px; width: 38px; height: 40px; margin: 0 22px 12px 0; overflow: hidden; background-repeat: no-repeat; text-decoration: none; color: #fff; transition: transform .25s, opacity .25s; }
#footer.opes-footer .opes-footer-social-link:last-child { margin-right: 0; }

#footer.opes-footer .opes-footer-social-link img { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: contain; background: #073d7d; }
#footer.opes-footer .opes-footer-social-other { border: 1px solid rgba(255,255,255,.6); border-radius: 50%; line-height: 38px; font-size: 11px; text-align: center; }
#footer.opes-footer a.opes-footer-social-link:hover { opacity: .8; transform: translateY(-3px); }
#footer.opes-footer .opes-footer-social-link[aria-disabled="true"] { opacity: .75; }
#footer.opes-footer a:focus { outline: 2px solid #ee8301; outline-offset: 4px; }
#footer.opes-footer .opes-footer-copyright { position: relative; margin: 0; padding: 23px 0 22px; font-size: 13px; line-height: 1.65; text-align: center; word-wrap: break-word; }
#footer.opes-footer .opes-footer-copyright::before { position: absolute; top: 0; left: -16.116%; right: -16.116%; height: 1px; background: rgba(255,255,255,.18); content: ""; }
@media (max-width: 1399px) {
 #footer.opes-footer .opes-footer-inner { width: 90%; }
 #footer.opes-footer .opes-footer-column { margin-right: 4%; }
 #footer.opes-footer .opes-footer-story { width: 26%; }
 #footer.opes-footer .opes-footer-contact { width: 21%; }
 #footer.opes-footer .opes-footer-follow { width: 22%; }
 #footer.opes-footer .opes-footer-products { margin-right: 0; }
 #footer.opes-footer .opes-footer-social-link { margin-right: 12px; }
 #footer.opes-footer .opes-footer-copyright::before { left: -5.556%; right: -5.556%; }
}
@media (max-width: 1023px) {
 #footer.opes-footer .opes-footer-columns { flex-wrap: wrap; padding: 40px 0 8px; }
 #footer.opes-footer .opes-footer-column { flex: 0 0 47%; width: 47%; margin: 0 6% 32px 0; }
 #footer.opes-footer .opes-footer-column:nth-child(2n) { margin-right: 0; }
 #footer.opes-footer .opes-footer-column h2 { margin-bottom: 30px; }
}
@media (max-width: 559px) {
 #footer.opes-footer .opes-footer-column { flex-basis: 100%; width: 100%; margin-right: 0; }
 #footer.opes-footer .opes-footer-social-link { margin-right: 22px; }
 #footer.opes-footer .opes-footer-copyright { font-size: 12px; }
}
