/* Shared footer spacing, without stacked column padding. */
#footer { --tts-footer-block-space: 60px; --tts-footer-grid-gap: 24px; }
#footer :is(.sec__branch, .sec__info) { padding-block: calc(var(--tts-footer-block-space) / 2); }
#footer :is(.sec__branch, .sec__info) > .container { padding-inline: 16px; gap: 0; }
#footer .sec__branch { background: #fff !important; border-bottom: 1px solid #e6e6e6; }
#footer .sec__branch > .container { display: block; }
#footer .tts-footer-branches-heading { margin: 0 0 20px; color: #0a0a0a; font-size: 24px; font-weight: 700; line-height: 1.4; text-align: center; text-transform: uppercase; }
#footer .sec__branch .branch-list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--tts-footer-grid-gap); }
#footer .branch-item { min-width: 0; }
#footer .branch-title { margin: 0 0 12px; padding: 8px; border-radius: 4px; background: #c9252c; color: #fff; font-size: 16px; font-weight: 700; line-height: 1.4; }
#footer :is(.sec__branch, .sec__info) ul { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; }
#footer :is(.sec__branch, .sec__info) li { min-width: 0; margin: 0; color: #231f20; font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; }
#footer .sec__branch .info-item > div,
#footer .sec__info .list_info_f .tts-footer-info-row { display: flex; align-items: flex-start; gap: 8px; min-width: 0; }
#footer .info-item :is(img, svg) { flex: 0 0 16px; display: block; width: 16px; height: 16px; margin-top: 3px; object-fit: contain; fill: #c9252c; }
#footer .info-item span { min-width: 0; }
#footer .list_info_f .tts-footer-info-icon { color: #c9252c; fill: none; }
#footer .sec__branch .tts-footer-info-icon { color: #c9252c; fill: none; }
#footer :is(.sec__branch, .sec__info) li a { color: inherit; font-size: 14px; line-height: 1.6; }
#footer :is(.sec__branch, .sec__info) a:hover { color: #c9252c; }
#footer :is(.sec__branch, .sec__info) a:focus-visible { outline: 2px solid #c9252c; outline-offset: 3px; }
#footer .sec__info .row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); column-gap: clamp(32px, 6vw, 112px); row-gap: 32px; width: 100%; margin: 0; }
#footer .sec__info .row::before,
#footer .sec__info .row::after { content: none; }
#footer .sec__info :is(.info.col, .quick_links-item.col) { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; width: 100%; max-width: 100%; margin: 0; padding: 0; }
#footer .sec__info .row > .info.col { grid-row: 1 / 3; gap: 16px; }
#footer .tts-footer-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; min-width: 0; }
#footer .tts-footer-extras { grid-column: 2; display: flex; flex-direction: column; align-items: flex-end; align-self: end; gap: 20px; min-width: 0; }
#footer .sec__info .title { margin: 0; color: #0a0a0a; font-size: 18px; font-weight: 700; line-height: 1.4; text-transform: uppercase; }
#footer .sec__info .info.col > img { display: block; flex: 0 0 auto; width: 464px; max-width: 100%; height: auto; }
#footer .sec__info .info.col > p:not(.title) { margin: 0; color: #231f20; font-size: 14px; line-height: 1.6; }
#footer .sec__info .list_info_f { gap: 2px; }
#footer .sec__info .chungnhan { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; max-width: 100%; margin: 0; }
#footer .sec__info .chungnhan a { display: block; max-width: 100%; }
#footer .sec__info .chungnhan img { display: block; max-width: 100%; height: auto; max-height: 64px; }
#footer .sec__info .chungnhan a:first-child img { width: 160px; }
#footer .sec__info .chungnhan a:last-child img { width: 116px; }
#footer .tts-footer-social { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 16px 20px; margin: 0; padding: 0; }
#footer .tts-footer-social a { display: inline-flex; align-items: center; gap: 5px; min-width: 0; color: #111; font-size: 14px; line-height: 1.5; }
#footer .tts-footer-social a:hover { color: #c9252c; }
#footer .tts-footer-social svg { display: block; flex: 0 0 20px; width: 20px; height: 20px; fill: none; }
#footer .tts-footer-social .tts-footer-zalo-icon { flex-basis: 18px; width: 18px; height: 18px; }
#footer .absolute-footer { display: none; }
@media (min-width: 850px) {
    #footer .tts-footer-extras { padding-right: 56px; }
}
@media (max-width: 1100px) {
    #footer .sec__branch .branch-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    #footer .sec__info .row { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    #footer .sec__info .row > .info.col { grid-column: 1; grid-row: auto; }
    #footer .tts-footer-extras { grid-column: 1; }
}
@media (max-width: 849px) {
    #footer { --tts-footer-block-space: 40px; --tts-footer-grid-gap: 20px 16px; }
    #footer :is(.sec__branch, .sec__info) > .container { padding-inline: 8px; }
    #footer .sec__branch .branch-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #footer .tts-footer-branches-heading { font-size: 22px; margin-bottom: 16px; }
    #footer .sec__branch .branch-item:last-child:nth-child(odd) { grid-column: 1 / -1; }
    #footer .sec__info .row { gap: 24px; }
    #footer .tts-footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; }
    #footer .tts-footer-links .quick_links-item:last-child:nth-child(odd) { grid-column: 1 / -1; }
    #footer .tts-footer-extras { align-items: flex-start; }
    #footer .tts-footer-social { justify-content: flex-start; gap: 12px 16px; }
    #footer .sec__info .title { font-size: 16px; }
    #footer .sec__info .info.col > img { width: 260px; }
    #footer .sec__info .chungnhan { gap: 12px; }
    #footer .sec__info .chungnhan a:first-child img { width: 120px; }
    #footer .sec__info .chungnhan a:last-child img { width: 88px; }
}
@media (max-width: 549px) {
    #footer .sec__branch .branch-list { grid-template-columns: minmax(0, 1fr); }
}
