/* ===== Chân trang (Figma 1:114) ===== */
.tq-footer { margin-top: 16px; background: #fff; color: #2C2C2C; font-family: var(--tq-font) }
.tq-footer > .tq-container { padding-top: 0 }
.tq-footer__grid { display: grid; grid-template-columns: 370px 324px 265px 241px; padding: 30px 0 30px; border-top: .5px solid #FFC718; min-height: 406px }
.tq-footer__col { min-width: 0 }
.tq-footer__col:not(.tq-footer__col--info) { padding-top: 62px }
.tq-footer__logo { display: block; width: 228px; height: 90px; margin-bottom: 26px }
.tq-footer__logo img { display: block; width: 100%; height: 100%; object-fit: contain }
.tq-footer__contact { display: flex; flex-direction: column; gap: 14px; width: 264px; margin: 0 0 20px; padding: 0; list-style: none; font: 500 16px/20px var(--tq-font) }
.tq-footer__ic { position: relative; display: flex; flex-direction: column; gap: 6px; padding-left: 34px }
.tq-footer__ic::before { content: ""; position: absolute; left: 0; top: 2px; width: 24px; height: 24px; background: no-repeat center / contain }
.tq-footer__ic--phone::before { background-image: url(../images/footer/icon-hotline.svg) }
.tq-footer__ic--clock::before { background-image: url(../images/footer/icon-clock.svg) }
.tq-footer__ic b, .tq-footer__hot, .tq-footer__report a { color: #EC0000; font-weight: 700 }
.tq-footer__hot { font-size: 20px; text-decoration: none }
.tq-footer__report { padding-left: 34px }
.tq-footer__report a { font-weight: 500; text-decoration: none }
.tq-footer__store { display: flex; align-items: center; gap: 10px; width: 264px; height: 44px; padding: 8px 34px; border: 1px solid #FFC718; border-radius: 8px; background: #FFF9CE; color: #000; font: 500 16px/20px var(--tq-font); text-decoration: none }
.tq-footer__store:hover { background: #FFC718; color: #000 }
.tq-footer__title { margin: 0 0 20px; color: #000; font: 500 22px/26px var(--tq-font) }
.tq-footer__links { display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 0; list-style: none }
.tq-footer__links a, .tq-footer__links span { color: #2C2C2C; font: 500 16px/22px var(--tq-font); text-decoration: none }
.tq-footer__links a:hover { color: #EC0000 }
.tq-footer__social { display: flex; flex-wrap: wrap; gap: 10px 8px; margin-bottom: 60px }
.tq-footer__social > * { display: block; border-radius: 50% }
.tq-footer__social img { display: block; width: 30px; height: 30px; transition: transform .3s cubic-bezier(.34, 1.56, .64, 1), box-shadow .3s, filter .3s; border-radius: 50% }
.tq-footer__social > *:hover img { transform: translateY(-4px) rotate(-8deg) scale(1.15); box-shadow: 0 6px 14px rgba(255, 199, 24, .55); filter: brightness(1.05) }
.tq-footer__badges { display: flex; align-items: center; gap: 10px }
.tq-footer__badges > * { min-width: 0; flex: 0 1 auto }
.tq-footer__badges img { display: block; max-width: 100%; width: auto; height: auto; max-height: 38px; object-fit: contain }
.tq-footer__copy { padding: 14px 15px 15px; border-top: .5px solid #FFC718; text-align: center; font: 500 16px/normal var(--tq-font) }
.tq-footer__copy a { color: inherit; text-transform: uppercase; font-weight: 700 }
/* Tablet 768–1199: cột thông tin (logo, hotline, cửa hàng) nằm trái chiếm 2 hàng; Hỗ trợ + Về Tiến Quân ở giữa/phải; Kết nối nằm dưới Về Tiến Quân → không còn khoảng trống bên phải logo */
@media (max-width: 1199.98px) {
    .tq-footer__grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) minmax(0, 1fr); gap: 24px 32px; min-height: 0 }
    .tq-footer__col:not(.tq-footer__col--info) { padding-top: 0 }
    .tq-footer__col--info { grid-row: 1 / span 2 }
    .tq-footer__col:nth-child(2) { grid-column: 2; grid-row: 1 / span 2 }
    .tq-footer__col:nth-child(3) { grid-column: 3; grid-row: 1 }
    .tq-footer__col:nth-child(4) { grid-column: 3; grid-row: 2 }
    .tq-footer__contact, .tq-footer__store { width: 100% }
    .tq-footer__social { margin-bottom: 24px }
}
/* Dưới 768: 2 cột (thông tin | hỗ trợ, về Tiến Quân | kết nối), dưới 480: 1 cột */
@media (max-width: 767.98px) {
    .tq-footer__grid { grid-template-columns: 1fr 1fr; gap: 24px 20px }
    .tq-footer__col--info, .tq-footer__col:nth-child(2), .tq-footer__col:nth-child(3), .tq-footer__col:nth-child(4) { grid-column: auto; grid-row: auto }
    .tq-footer__social { margin-bottom: 20px }
    .tq-footer__title { font-size: 18px; margin-bottom: 12px }
    .tq-footer__copy { font-size: 13px }
}
@media (max-width: 479.98px) { .tq-footer__grid { grid-template-columns: 1fr } }
