/* Scoped to the main site footer; greeting video and logos are unchanged. */
#tp-site-footer {box-sizing:border-box;}
#tp-site-footer *,#tp-site-footer *::before,#tp-site-footer *::after {box-sizing:border-box;}
#tp-site-footer .tp-footer-layout {display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:28px;width:100%;}
#tp-site-footer .tp-footer-brand {width:100%;min-width:0;align-items:center;text-align:center;}
#tp-site-footer .tp-footer-logo {min-width:0;justify-content:center;}
#tp-site-footer .tp-footer-brand > p {width:100%;max-width:66ch;margin-left:auto;margin-right:auto;word-break:normal;overflow-wrap:anywhere;}
#tp-site-footer .tp-footer-links {width:100%;min-width:0;justify-content:center;gap:8px 12px;}
#tp-site-footer .tp-footer-links a {white-space:nowrap;}
#tp-site-footer .tp-footer-contact-wrap {width:100%;max-width:100%;min-width:0;}
#tp-site-footer .tp-footer-contact-box {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));width:100%;min-width:0;max-width:100%;gap:16px;padding:20px;}
#tp-site-footer .tp-footer-social {grid-column:1/-1;min-width:0;flex-wrap:wrap;justify-content:center;margin:0;}
#tp-site-footer .tp-footer-contact-row {display:flex;flex-wrap:wrap;align-content:start;justify-content:center;min-width:0;max-width:100%;gap:5px 8px;}
#tp-site-footer .tp-footer-contact-row > span {white-space:nowrap;}
#tp-site-footer .tp-footer-contact-row > a {min-width:0;max-width:100%;overflow-wrap:anywhere;}
#tp-site-footer .tp-footer-separator {display:none;}
@media (min-width:1200px) {
    #tp-site-footer .tp-footer-layout {grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:32px;}
    #tp-site-footer .tp-footer-brand {align-items:flex-start;text-align:left;}
    #tp-site-footer .tp-footer-logo,#tp-site-footer .tp-footer-links {justify-content:flex-start;}
    #tp-site-footer .tp-footer-brand > p {margin-left:0;margin-right:0;}
    #tp-site-footer .tp-footer-social,#tp-site-footer .tp-footer-contact-row {justify-content:flex-start;}
}
@media (max-width:359px) {
    #tp-site-footer .tp-footer-contact-box {padding:16px 12px;}
    #tp-site-footer .tp-footer-links {gap:8px;}
}
@media (max-width:639px) {
    #tp-site-footer {padding-bottom:96px;}
}
