/* ==========================================================================
   DTC - Cổng xếp, barrier tự động
   Giao diện clone congxepdtc.vn trên theme thoitrang05. Mọi class dùng tiền tố dtc-.
   ========================================================================== */

:root {
    --dtc-red: #BA3538;
    --dtc-red-dark: #952123;
    --dtc-border: #E4E4E4;
    --dtc-text: #333;
    --dtc-text-light: #777;
    --dtc-navy: #000080;
    --dtc-blue: #0000FF;
    --dtc-phone: #B22222;
    --dtc-green: #1fb14b;
    --dtc-dark: #333;
}

/* ---------- Theme ---------- */
body {
    font-family: Arial, Helvetica, sans-serif;
    color: var(--dtc-text);
    background-color: #fff;
}

ul.dtc-support__list li {
    padding-left: 10px;
}

.dtc-content {
    line-height: 1.6;
    overflow-wrap: break-word;
}

.dtc-content img,
.dtc-content video,
.dtc-content iframe {
    max-width: 100%;
}

.dtc-content img {
    height: auto !important;
}

.dtc-content table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    border-collapse: collapse;
    margin-bottom: 1.5rem;
}

.dtc-content table td,
.dtc-content table th {
    padding: .8rem 1rem;
    border: 1px solid #ddd;
}

.dtc-empty {
    padding: 2rem;
    border: 1px dashed var(--dtc-border);
    color: var(--dtc-text-light);
    text-align: center;
    margin-bottom: 2rem;
}

.dtc-price {
    color: var(--dtc-red);
    font-weight: 700;
}

.dtc-date {
    color: #999;
    font-size: 1.2rem;
    margin-bottom: 1rem;
}

.dtc-date i {
    margin-right: .5rem;
}

.dtc-btn {
    display: inline-flex;
    align-items: center;
    gap: .8rem;
    padding: .9rem 1.8rem;
    border: 0;
    border-radius: .4rem;
    background-color: var(--dtc-red);
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
}

.dtc-btn:hover,
.dtc-btn:focus {
    color: #fff;
    background-color: var(--dtc-red-dark);
    text-decoration: none;
}

/* ---------- Khối tiêu đề (tab đỏ) ---------- */
.dtc-heading {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    border-top: 1px solid var(--dtc-dark);
    margin-bottom: 1.6rem;
}

.dtc-heading__title {
    position: relative;
    display: inline-block;
    margin: 0;
    padding: .8rem .8rem;
    background-color: var(--dtc-red);
    color: #fff;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.5;
    text-transform: uppercase;
}

.dtc-heading__title::after {
    content: '';
    position: absolute;
    left: 3rem;
    top: 100%;
    border: .8rem solid transparent;
    border-top-color: var(--dtc-red);
}

.dtc-heading__title a {
    color: inherit;
}

.dtc-heading__title a:hover {
    color: #fff;
    text-decoration: none;
}

.dtc-heading__nav {
    display: flex;
    gap: 1rem;
    padding-top: .8rem;
}

.dtc-heading__btn {
    width: 2.6rem;
    height: 2.6rem;
    padding: 0;
    border: 1px solid #ddd;
    background-color: #f2f2f2;
    color: var(--dtc-text);
    font-size: 1.6rem;
    line-height: 1;
    cursor: pointer;
}

.dtc-heading__btn:hover {
    background-color: var(--dtc-red);
    border-color: var(--dtc-red);
    color: #fff;
}

.dtc-heading__btn.swiper-button-disabled {
    opacity: .4;
    cursor: default;
}

.dtc-heading__btn.swiper-button-lock {
    display: none;
}

/* ---------- Header: banner thương hiệu ---------- */
.dtc-brand__link {
    display: block;
}

.dtc-brand__image {
    display: block;
    width: 100%;
    height: auto;
}

/* ---------- Header: thanh menu + tìm kiếm ---------- */
.dtc-nav-row > .container > .row > [class*="col"] {
    display: flex;
    align-items: stretch;
}

.dtc-nav-row [nh-block] {
    background-color: var(--dtc-red);
}

.dtc-nav-row [nh-block]:first-child {
    flex: 1 1 auto;
    min-width: 0;
    border-radius: 1rem 0 0 1rem;
    padding-left: 1rem;
}

.dtc-nav-row [nh-block]:last-child {
    flex: 0 0 auto;
    border-radius: 0 1rem 1rem 0;
    padding-right: 1rem;
}

.dtc-menu {
    position: relative;
}

.dtc-menu__toggle {
    display: none;
    align-items: center;
    gap: .8rem;
    height: 4rem;
    padding: 0 1rem;
    border: 0;
    background: transparent;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
}

.dtc-menu__list {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
}

.dtc-menu__item {
    position: relative;
}

.dtc-menu__link {
    display: block;
    height: 4rem;
    padding: 0 1rem;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 4rem;
    text-transform: uppercase;
    white-space: nowrap;
}

.dtc-menu__link:hover,
.dtc-menu__link:focus,
.dtc-menu__link.active,
.dtc-menu__item.active > .dtc-menu__link,
.dtc-menu__item:hover > .dtc-menu__link {
    color: #fff;
    background-color: var(--dtc-red-dark);
    text-decoration: none;
}

.dtc-menu__caret {
    display: none;
}

.dtc-menu__sub {
    position: absolute;
    left: 0;
    top: 100%;
    z-index: 1030;
    min-width: 26rem;
    margin: 0;
    padding: 0;
    list-style: none;
    background-color: var(--dtc-red);
    box-shadow: 0 .6rem 1.2rem rgba(0, 0, 0, .2);
    opacity: 0;
    visibility: hidden;
    transform: translateY(.6rem);
    transition: all .2s ease;
}

.dtc-menu__item:hover > .dtc-menu__sub,
.dtc-menu__item:focus-within > .dtc-menu__sub {
    opacity: 1;
    visibility: visible;
    transform: none;
}

.dtc-menu__sub a {
    display: block;
    padding: 1rem 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, .15);
    color: #fff;
    font-size: 1.3rem;
    text-transform: uppercase;
}

.dtc-menu__sub a:hover,
.dtc-menu__sub a.active {
    color: #fff;
    background-color: var(--dtc-red-dark);
    text-decoration: none;
}

.dtc-search {
    position: relative;
    height: 100%;
}

.dtc-search__toggle {
    width: 5.6rem;
    height: 4rem;
    border: 0;
    background-color: var(--dtc-dark);
    color: #fff;
    font-size: 1.8rem;
    cursor: pointer;
}

.dtc-search__toggle:hover,
.dtc-search.is-open .dtc-search__toggle {
    background-color: #000;
}

.dtc-search__form {
    position: absolute;
    right: -1rem;
    top: 100%;
    z-index: 1031;
    width: 34rem;
    max-width: calc(100vw - 3rem);
    padding: 1rem;
    background-color: #fff;
    border: 1px solid var(--dtc-border);
    box-shadow: 0 .6rem 1.2rem rgba(0, 0, 0, .15);
    display: none;
}

.dtc-search.is-open .dtc-search__form {
    display: block;
}

.dtc-search__form .form-control {
    height: 4rem;
    font-size: 1.4rem;
    border-radius: 0;
}

.dtc-search__submit {
    height: 4rem;
    border-radius: 0;
    background-color: var(--dtc-red);
    color: #fff;
}

.dtc-search__submit:hover {
    background-color: var(--dtc-red-dark);
    color: #fff;
}

/* ---------- Banner luân phiên ---------- */
.dtc-slider {
    position: relative;
}

.dtc-slider__image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1920 / 595;
    object-fit: cover;
}

.dtc-slider .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 2.4rem;
}

.dtc-slider .swiper-pagination-bullet {
    width: 2.2rem;
    height: .5rem;
    margin: 0 .2rem !important;
    border-radius: 0;
    background-color: #fff;
    opacity: 1;
}

.dtc-slider .swiper-pagination-bullet-active {
    background-color: #2ecc40;
}

.dtc-slider__nav {
    position: absolute;
    top: 50%;
    z-index: 5;
    width: 2.8rem;
    height: 6rem;
    margin-top: -3rem;
    padding: 0;
    border: 0;
    background-color: rgba(255, 255, 255, .9);
    color: #000;
    font-size: 2rem;
    cursor: pointer;
}

.dtc-slider__nav--prev {
    left: 0;
    border-radius: 0 3rem 3rem 0;
}

.dtc-slider__nav--next {
    right: 0;
    border-radius: 3rem 0 0 3rem;
}

.dtc-slider__nav:hover {
    background-color: #fff;
    color: var(--dtc-red);
}

/* ---------- Bố cục chính ---------- */
.dtc-main-row {
    padding-top: 1.5rem;
    padding-bottom: 2rem;
}

/* cột flex chứa swiper không được giãn theo nội dung */
[nh-row] > .container > .row > [class*="col"],
[nh-row] > .row > [class*="col"] {
    min-width: 0;
}

.dtc-carousel,
.dtc-slider {
    max-width: 100%;
    overflow: hidden;
}

/* ---------- Hộp sidebar ---------- */
.dtc-box {
    margin-bottom: 1rem;
    border: 1px solid var(--dtc-border);
    border-radius: 1rem 1rem 0 0;
    background-color: #fff;
}

.dtc-box__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin: 0;
    padding: 1rem 1rem;
    border: 0;
    border-radius: 1rem 1rem 0 0;
    background-color: var(--dtc-red);
    color: #fff;
    font-size: 1.5rem;
    font-weight: 400;
    text-align: left;
    text-transform: uppercase;
}

.dtc-box__empty {
    padding: 1.5rem;
    color: var(--dtc-text-light);
}

.dtc-support__image img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 800 / 286;
    object-fit: cover;
}

.dtc-support__list {
    padding: .5rem 0;
}

.dtc-support__phone {
    display: flex;
    padding: .2rem 0;
    font-weight: 700;
    font-size: 1.4rem;
}

.dtc-support__phone:hover {
    text-decoration: none;
}

.dtc-support__name {
    flex: 0 0 8.5rem;
    color: var(--dtc-blue);
}

.dtc-support__number {
    color: var(--dtc-phone);
}

.dtc-support__number::before {
    content: ': ';
    color: var(--dtc-navy);
}

.dtc-category__heading {
    cursor: default;
}

.dtc-category__caret {
    display: none;
}

.dtc-category__list {
    padding: 0 1.5rem;
}

.dtc-category__list > li > a,
.dtc-category__child a {
    position: relative;
    display: block;
    padding: 1.2rem 0 1.2rem 1.5rem;
    border-bottom: 1px solid #eee;
    color: #464145;
    font-size: 1.3rem;
    text-transform: uppercase;
}

.dtc-category__list > li:last-child > a {
    border-bottom: 0;
}

.dtc-category__list > li > a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: .5rem;
    height: .5rem;
    margin-top: -.25rem;
    border-radius: 50%;
    background-color: currentColor;
}

.dtc-category__child {
    padding-left: 1.5rem;
}

.dtc-category__list a:hover,
.dtc-category__list a.active {
    color: var(--dtc-red);
    text-decoration: none;
}

.dtc-video__frame {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    background-color: #000;
}

.dtc-video__frame iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.dtc-news__item {
    display: flex;
    gap: 1rem;
    padding: 1rem;
    border-bottom: 1px solid #eee;
}

.dtc-news__item:last-child {
    border-bottom: 0;
}

.dtc-news__image {
    flex: 0 0 7.5rem;
    max-width: 7.5rem;
}

.dtc-news__image img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.dtc-news__body {
    min-width: 0;
}

.dtc-news__title {
    display: block;
    color: var(--dtc-text);
    font-size: 1.3rem;
    line-height: 1.5;
}

.dtc-news__title:hover {
    color: var(--dtc-red);
    text-decoration: none;
}

.dtc-news__date {
    display: block;
    color: #bbb;
    font-size: 1.2rem;
}

/* ---------- Thẻ sản phẩm ---------- */
.dtc-product__image {
    display: block;
    margin: .4rem .4rem 1rem;
    box-shadow: 0 0 .5rem .1rem rgba(0, 0, 0, .45);
    background-color: #fff;
    overflow: hidden;
}

.dtc-product__image img {
    display: block;
    width: 100%;
    aspect-ratio: 5 / 3;
    object-fit: cover;
    transition: transform .3s ease;
}

.dtc-product__image:hover img {
    transform: scale(1.04);
}

.dtc-product__name {
    margin: 0 0 1rem;
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
    text-transform: uppercase;
}

.dtc-product__name a {
    color: var(--dtc-text);
}

.dtc-product__name a:hover {
    color: var(--dtc-red);
    text-decoration: none;
}

.dtc-product__detail {
    display: none;
}

.dtc-product__desc {
    margin-bottom: 1rem;
    color: #555;
    text-align: justify;
}

.dtc-carousel {
    margin-bottom: 1rem;
}

.dtc-carousel__swiper {
    padding-bottom: .4rem;
}

/* ---------- Danh sách sản phẩm ---------- */
.dtc-listing__intro {
    margin-bottom: 2rem;
    padding: 0 1.5rem;
}

.dtc-listing__keyword {
    margin-bottom: 1.5rem;
}

.dtc-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 2rem;
    margin-bottom: 3rem;
    padding: 1.5rem;
    border: 1px solid var(--dtc-border);
    color: var(--dtc-text-light);
}

.dtc-toolbar__view {
    display: flex;
    align-items: center;
    gap: .6rem;
}

.dtc-toolbar__mode,
.dtc-toolbar__sort-btn {
    padding: .2rem .4rem;
    border: 0;
    background: transparent;
    color: #999;
    font-size: 1.6rem;
    cursor: pointer;
}

.dtc-toolbar__mode.active,
.dtc-toolbar__mode:hover {
    color: var(--dtc-green);
}

.dtc-toolbar__sort-btn {
    font-size: 1.4rem;
}

.dtc-toolbar__sort-btn:hover {
    color: var(--dtc-red);
}

.dtc-toolbar .dropdown-item {
    font-size: 1.4rem;
    padding: .8rem 1.5rem;
}

.dtc-listing__col {
    margin-bottom: 2rem;
}

.dtc-listing.is-list .dtc-listing__col {
    flex: 0 0 100%;
    max-width: 100%;
}

.dtc-listing.is-list .dtc-product {
    display: flex;
    gap: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #eee;
}

.dtc-listing.is-list .dtc-product__image {
    flex: 0 0 33%;
    max-width: 33%;
    margin: .4rem;
}

.dtc-listing.is-list .dtc-product__body {
    flex: 1 1 auto;
    min-width: 0;
}

.dtc-listing.is-list .dtc-product__name {
    font-size: 1.6rem;
    font-weight: 700;
    text-align: left;
}

.dtc-listing.is-list .dtc-product__detail {
    display: block;
}

/* Ghi đè .pagination chung của page.css trong phạm vi block DTC */
.dtc-pagination {
    margin: 1rem 0 3rem;
}

.dtc-pagination .pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .6rem;
    margin: 0;
    padding: 0;
    border-top: 0;
}

.dtc-pagination .pagination .page-item {
    border-left: 0;
}

.dtc-pagination .pagination .page-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 3.4rem;
    height: 3.4rem;
    padding: 0 1rem;
    border: 1px solid #ddd;
    border-radius: .3rem;
    background-color: #fff;
    color: var(--dtc-text);
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
}

.dtc-pagination .pagination .page-item:hover .page-link {
    border-color: var(--dtc-red);
    color: var(--dtc-red);
    text-decoration: none;
}

.dtc-pagination .pagination .page-item.active .page-link {
    border-color: var(--dtc-red);
    background-color: var(--dtc-red);
    color: #fff;
    cursor: default;
}

.dtc-pagination .pagination .page-item.disabled .page-link {
    border-color: transparent;
    background-color: transparent;
    color: #999;
    cursor: default;
}

/* ---------- Chi tiết sản phẩm ---------- */
.dtc-product-detail {
    margin-bottom: 2rem;
}

.dtc-product-detail .product-image-detail {
    margin-bottom: 2rem;
}

.dtc-product-detail__noimage {
    aspect-ratio: 5 / 3;
    background-color: #f2f2f2;
    margin-bottom: 2rem;
}

.dtc-product-detail__name {
    margin: 0 0 1.5rem;
    color: var(--dtc-red);
    font-size: 2.4rem;
    font-weight: 400;
    text-transform: uppercase;
}

.dtc-product-detail__meta {
    margin-bottom: .8rem;
}

.dtc-product-detail__desc {
    margin: 1.5rem 0;
    text-align: justify;
}

.dtc-product-detail__price {
    margin-bottom: 2rem;
    font-size: 1.6rem;
}

.dtc-product-detail__price .dtc-price {
    font-size: 2rem;
}

.dtc-product-detail__cta {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 2rem;
}

.dtc-btn--call strong {
    display: block;
    font-size: 1.6rem;
}

.dtc-btn--call span {
    line-height: 1.3;
    text-align: left;
}

.dtc-btn--zalo {
    background-color: #0068ff;
}

.dtc-btn--zalo:hover,
.dtc-btn--zalo:focus {
    background-color: #0050c4;
}

.dtc-btn--zalo img {
    background-color: #fff;
    border-radius: 50%;
}

.dtc-product-detail__content {
    margin-top: 2rem;
}

.dtc-tags {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    align-items: center;
    margin: 2rem 0;
}

.dtc-tags a {
    padding: .3rem 1rem;
    border: 1px solid #ddd;
    color: #666;
    font-size: 1.2rem;
}

.dtc-tags a:hover {
    border-color: var(--dtc-red);
    color: var(--dtc-red);
    text-decoration: none;
}

/* ---------- Bài viết ---------- */
.dtc-article-row {
    margin-bottom: 3rem;
}

.dtc-article-row__image {
    display: block;
    margin-bottom: 1.5rem;
}

.dtc-article-row__image img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.dtc-article-row__title {
    margin: 0 0 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px dashed #ddd;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.4;
    text-transform: uppercase;
}

.dtc-article-row__title a {
    color: var(--dtc-text);
}

.dtc-article-row__title a:hover {
    color: var(--dtc-red);
    text-decoration: none;
}

.dtc-article-row__desc {
    margin: 0;
    padding-top: 1rem;
    border-top: 1px dashed #ddd;
    color: #444;
    text-align: justify;
}

.dtc-article__title {
    margin: 0 0 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px dashed #ddd;
    color: var(--dtc-red);
    font-size: 2.6rem;
    font-weight: 400;
    line-height: 1.3;
    text-transform: uppercase;
}

.dtc-article__date {
    padding-bottom: 2rem;
    margin-bottom: 2rem;
    border-bottom: 1px solid var(--dtc-dark);
}

.dtc-article__desc {
    margin-bottom: 1.5rem;
    font-weight: 700;
    text-align: justify;
}

.dtc-article__content {
    font-size: 1.6rem;
    text-align: justify;
}

.dtc-article__files {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 2rem 0;
}

/* ---------- Giới thiệu trang chủ ---------- */
.dtc-intro {
    margin: 1rem 0 2rem;
}

.dtc-intro__title {
    margin: 0 0 1rem;
    color: var(--dtc-text);
    font-size: 3.2rem;
    font-weight: 400;
    text-transform: uppercase;
}

.dtc-intro__content {
    color: var(--dtc-navy);
    font-size: 1.6rem;
    text-align: justify;
}

/* ---------- Liên hệ ---------- */
.dtc-contact__desc {
    margin-bottom: 1.5rem;
}

.dtc-contact__form .form-control {
    height: 4rem;
    border-radius: 0;
    font-size: 1.4rem;
}

.dtc-contact__form textarea.form-control {
    height: auto;
    min-height: 10rem;
}

.dtc-btn--send {
    background-color: var(--dtc-green);
}

.dtc-btn--send:hover,
.dtc-btn--send:focus {
    background-color: #178a3a;
}

/* ---------- Footer ---------- */
.dtc-footer-row {
    padding-bottom: 2rem;
}

.dtc-footer {
    padding: 2rem 2rem 1rem;
    background-color: var(--dtc-red);
    color: #fff;
}

.dtc-footer__column {
    margin-bottom: 2rem;
}

.dtc-footer__title {
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #fff;
    color: #fff;
    font-size: 1.7rem;
    font-weight: 700;
    text-transform: uppercase;
}

.dtc-footer__content {
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.6;
}

.dtc-footer__content p {
    margin-bottom: 1rem;
}

.dtc-footer__content a {
    color: #fff;
}

.dtc-footer__content a:hover {
    color: #fff;
    text-decoration: underline;
}

/* ---------- Hotline và thanh liên hệ nổi ---------- */
.dtc-hotline {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 999;
    display: block;
    width: 22.5rem;
}

.dtc-hotline img {
    display: block;
    width: 100%;
    height: auto;
}

.dtc-contact-bar {
    position: fixed;
    left: 1.2rem;
    top: 50%;
    z-index: 998;
    transform: translateY(-50%);
    padding: .5rem 0;
    background-color: #fff;
    border: 1px solid #eee;
    border-radius: .4rem;
    box-shadow: 0 0 .6rem rgba(0, 0, 0, .1);
}

.dtc-contact-bar__item a {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 8rem;
    padding: 1rem .4rem;
    color: #444;
    font-size: 1.1rem;
    font-weight: 700;
    text-align: center;
}

.dtc-contact-bar__item a:hover {
    color: var(--dtc-red);
    text-decoration: none;
}

.dtc-contact-bar__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2.6rem;
    margin-bottom: .4rem;
    color: var(--dtc-red);
    font-size: 2rem;
}

.dtc-contact-bar__icon img {
    width: 2.4rem;
    height: 2.4rem;
}

.dtc-contact-bar__item--call {
    display: none;
}

/* ---------- Responsive ---------- */
@media (min-width: 992px) {
    .dtc-menu__list {
        display: flex !important;
    }
}

@media (max-width: 1199.98px) {
    .dtc-menu__link {
        padding: 0 .7rem;
        font-size: 1.3rem;
    }
}

@media (max-width: 991.98px) {
    /* Nội dung chính lên trước, sidebar xuống sau */
    .dtc-main-row > .container > .row > [class*="col"] {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .dtc-main-row > .container > .row > [class*="col"]:last-child {
        order: -1;
    }

    .dtc-nav-row > .container > .row > [class*="col"] {
        flex-wrap: wrap;
        position: relative;
    }

    .dtc-menu {
        position: static;
    }

    .dtc-menu__toggle {
        display: inline-flex;
    }

    .dtc-menu__list {
        display: none;
        position: absolute;
        left: 15px;
        right: 15px;
        top: 100%;
        z-index: 1032;
        flex-direction: column;
        background-color: var(--dtc-red);
        box-shadow: 0 .6rem 1.2rem rgba(0, 0, 0, .2);
    }

    .dtc-menu.is-open .dtc-menu__list {
        display: flex;
    }

    .dtc-menu__item {
        border-top: 1px solid rgba(255, 255, 255, .15);
    }

    .dtc-menu__link {
        height: auto;
        padding: 1.1rem 5rem 1.1rem 1.5rem;
        line-height: 1.5;
        white-space: normal;
    }

    .dtc-menu__item:hover > .dtc-menu__link {
        background-color: transparent;
    }

    .dtc-menu__caret {
        position: absolute;
        right: 0;
        top: 0;
        display: block;
        width: 4.6rem;
        height: 4.4rem;
        border: 0;
        background: transparent;
        color: #fff;
        font-size: 1.8rem;
        cursor: pointer;
    }

    .dtc-menu__item.is-open > .dtc-menu__caret i {
        transform: rotate(180deg);
    }

    .dtc-menu__sub {
        position: static;
        display: none;
        min-width: 0;
        box-shadow: none;
        background-color: var(--dtc-red-dark);
        opacity: 1;
        visibility: visible;
        transform: none;
        transition: none;
    }

    .dtc-menu__item.is-open > .dtc-menu__sub {
        display: block;
    }

    .dtc-menu__sub a {
        padding-left: 3rem;
    }

    .dtc-category__heading {
        cursor: pointer;
    }

    .dtc-category__caret {
        display: inline-block;
        transition: transform .2s ease;
    }

    .dtc-category [nh-dtc-collapse-body] {
        display: none;
    }

    .dtc-category.is-open [nh-dtc-collapse-body] {
        display: block;
    }

    .dtc-category.is-open .dtc-category__caret {
        transform: rotate(180deg);
    }

    .dtc-box {
        margin-bottom: 1.5rem;
    }

    .dtc-intro__title {
        font-size: 2.6rem;
    }

}

@media (max-width: 767.98px) {
    .dtc-brand__image {
        min-height: 7rem;
        object-fit: cover;
    }

    .dtc-slider .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: .8rem;
    }

    .dtc-slider .swiper-pagination-bullet {
        width: 1.4rem;
        height: .4rem;
    }

    .dtc-slider__nav {
        width: 2.2rem;
        height: 4.4rem;
        margin-top: -2.2rem;
        font-size: 1.6rem;
    }

    .dtc-heading__title {
        font-size: 1.3rem;
    }

    .dtc-toolbar {
        justify-content: space-between;
        gap: 1rem;
        margin-bottom: 2rem;
        padding: 1rem;
    }

    .dtc-listing.is-list .dtc-product {
        gap: 1rem;
    }

    .dtc-listing.is-list .dtc-product__image {
        flex-basis: 40%;
        max-width: 40%;
    }

    .dtc-listing.is-list .dtc-product__name {
        font-size: 1.4rem;
    }

    .dtc-listing.is-list .dtc-product__desc {
        display: none;
    }

    .dtc-product-detail__name,
    .dtc-article__title {
        font-size: 2rem;
    }

    .dtc-article-row__title {
        font-size: 1.6rem;
    }

    .dtc-article__content,
    .dtc-intro__content {
        font-size: 1.5rem;
    }

    .dtc-intro__title {
        font-size: 2.2rem;
    }

    .dtc-footer {
        padding: 2rem 1.5rem .5rem;
    }
}

/* Thanh liên hệ nổi: 992-1439px thu gọn còn icon để không đè nội dung */
@media (min-width: 992px) and (max-width: 1439.98px) {
    .dtc-contact-bar {
        left: 0;
        border-left: 0;
        border-radius: 0 .4rem .4rem 0;
    }

    .dtc-contact-bar__item a {
        width: 4.4rem;
        padding: .9rem .2rem;
    }

    .dtc-contact-bar__icon {
        margin-bottom: 0;
    }

    .dtc-contact-bar__label {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        white-space: nowrap;
    }

    .dtc-hotline {
        width: 17rem;
    }
}

/* Dưới 992px: thanh liên hệ chuyển xuống đáy màn hình */
@media (max-width: 991.98px) {
    body,
    body.is-mobile {
        margin-bottom: 0;
        padding-bottom: 6.4rem;
    }

    .dtc-hotline {
        display: none;
    }

    .dtc-contact-bar {
        left: 0;
        right: 0;
        top: auto;
        bottom: 0;
        transform: none;
        padding: 0;
        border: 0;
        border-top: 1px solid #eee;
        border-radius: 0;
        box-shadow: 0 -.2rem .8rem rgba(0, 0, 0, .1);
    }

    .dtc-contact-bar ul {
        display: flex;
    }

    .dtc-contact-bar__item {
        flex: 1 1 0;
        min-width: 0;
    }

    .dtc-contact-bar__item a {
        width: auto;
        height: 6.4rem;
        padding: .8rem .2rem;
        justify-content: flex-end;
        font-size: 1.1rem;
        white-space: nowrap;
    }

    .dtc-contact-bar__item--call {
        display: block;
    }

    .dtc-contact-bar__item--call .dtc-contact-bar__icon {
        width: 4.6rem;
        height: 4.6rem;
        margin-top: -2.6rem;
        border-radius: 50%;
        background-color: var(--dtc-green);
        color: #fff;
        box-shadow: 0 0 0 .4rem rgba(31, 177, 75, .25);
        animation: dtc-pulse 1.6s infinite;
    }
}

@keyframes dtc-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(31, 177, 75, .5);
    }
    70% {
        box-shadow: 0 0 0 1rem rgba(31, 177, 75, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(31, 177, 75, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .dtc-contact-bar__item--call .dtc-contact-bar__icon {
        animation: none;
    }

    .dtc-product__image img,
    .dtc-menu__sub {
        transition: none;
    }
}
