/* Hoạt động nhà trường - giao diện thân thiện với học sinh. */
.dt-news-section,
.dt-news-section * {
    box-sizing: border-box;
}

.dt-news-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 35px 0 40px;
    background: #fffaf0;
}

    .dt-news-section::before,
    .dt-news-section::after {
        content: "";
        position: absolute;
        z-index: -1;
        border-radius: 50%;
        pointer-events: none;
    }

    .dt-news-section::before {
        width: 430px;
        height: 430px;
        top: -230px;
        left: -160px;
        background: rgba(255, 210, 63, .18);
    }

    .dt-news-section::after {
        width: 400px;
        height: 400px;
        right: -180px;
        bottom: -240px;
        background: rgba(43, 181, 112, .1);
    }

.dt-news-container {
    position: relative;
    z-index: 1;
}

.dt-news-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
}

.dt-news-heading-copy {
    max-width: 680px;
}

.dt-news-heading .htk-news-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    padding: 6px 11px;
    border-radius: 999px;
    background: #06aee3;
    color: #fff;
    font: 700 10px 'Montserrat-Bold', Arial, sans-serif;
    letter-spacing: 1px;
    text-transform: uppercase;
}

    .dt-news-heading .htk-news-kicker i {
        color: #f1b900;
    }

.dt-news-heading .htk-section-title {
    margin: 0;
    padding: 0;
    color: #1e305b;
    font: 800 clamp(27px, 3vw, 30px)/1.15 'Montserrat-ExtraBold', Arial, sans-serif;
    letter-spacing: -.8px;
    text-transform: uppercase;
}

    .dt-news-heading .htk-section-title::before,
    .dt-news-heading .htk-section-title::after {
        display: none;
    }

.dt-news-heading-copy > p {
    max-width: 590px;
    margin: 10px 0 0;
    color: #6d7682;
    font: 500 13px/1.6 'Montserrat-Medium', Arial, sans-serif;
}

.dt-news-heading .btn-link-new {
    flex-shrink: 0;
}

    .dt-news-heading .btn-link-new a {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        min-height: 42px;
        padding: 9px 17px;
        border: 1px solid #cfe0f0;
        border-radius: 999px;
        background: #fff;
        color: #1e305b;
        font: 700 15px 'Montserrat-Bold', Arial, sans-serif;
        text-decoration: none;
        transition: background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    }

        .dt-news-heading .btn-link-new a:hover {
            color: #fff;
            background: #1e305b;
            transform: translateY(-3px);
            box-shadow: 0 10px 20px rgba(7, 85, 165, .2);
        }

.dt-news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.42fr) minmax(280px, .78fr);
    gap: 24px;
    align-items: stretch;
}

.dt-news-feature-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    min-width: 0;
}

    .dt-news-feature-grid .htk-news-card {
        overflow: hidden;
        border: 1px solid #f1e5c8;
        border-radius: 22px;
        background: #fff;
        box-shadow: 0 12px 25px rgba(121, 92, 28, .09);
        transition: transform .3s ease, box-shadow .3s ease;
    }

        .dt-news-feature-grid .htk-news-card:hover {
            transform: translateY(-6px) rotate(-.25deg);
            box-shadow: 0 20px 35px rgba(121, 92, 28, .15);
        }

        .dt-news-feature-grid .htk-news-card > a {
            display: block;
            height: 100%;
            color: inherit;
            text-decoration: none;
        }

    .dt-news-feature-grid .htk-news-card-img {
        height: 204px;
        border-radius: 0;
    }

        .dt-news-feature-grid .htk-news-card-img img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            transition: transform .55s ease, filter .55s ease;
        }

    .dt-news-feature-grid .htk-news-card:hover .htk-news-card-img img {
        transform: scale(1.055);
        filter: saturate(1.08);
    }

    .dt-news-feature-grid .htk-news-card-content {
        padding: 19px 20px 14px;
    }

    .dt-news-feature-grid .htk-news-date {
        display: flex;
        align-items: center;
        gap: 8px;
        margin: 0;
    }

    .dt-news-feature-grid .htk-cate-n {
        padding: 5px 9px;
        border-radius: 999px;
        background: #e9f7ef;
        color: #08744b;
        font: 700 10px 'Montserrat-Bold', Arial, sans-serif;
        text-transform: uppercase;
    }

    .dt-news-feature-grid .htk-date {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        color: #87919d;
        font: 600 12px 'Montserrat-SemiBold', Arial, sans-serif;
    }

        .dt-news-feature-grid .htk-date i {
            color: #f1b900;
        }

    .dt-news-feature-grid .htk-news-title {
        margin: 12px 0 0;
        color: #173c60;
        font: 800 16px/1.5 'Montserrat-Bold', Arial, sans-serif;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .dt-news-feature-grid .htk-news-desc {
        display: -webkit-box;
        margin: 9px 0 0;
        color: #75808c;
        font: 500 15px/1.55 'Montserrat-Medium', Arial, sans-serif;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .dt-news-feature-grid .htk-news-more {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        margin-top: 16px;
        padding: 9px 13px;
        border-radius: 999px;
        background: #eef7ff;
        color: #1e305b;
        font: 700 12px 'Montserrat-Bold', Arial, sans-serif;
        font-style: normal;
        line-height: 1.6;
        transition: background .25s ease, color .25s ease, transform .25s ease;
    }

    .dt-news-feature-grid .htk-news-card:hover .htk-news-more {
        color: #fff;
        background: #1e305b;
        transform: translateX(3px);
    }

    .dt-news-feature-grid .htk-news-card:nth-child(2) {
        border-color: #dcefe5;
    }

        .dt-news-feature-grid .htk-news-card:nth-child(2) .htk-cate-n {
            background: #fff1c7;
            color: #9b6900;
        }

        .dt-news-feature-grid .htk-news-card:nth-child(2) .htk-news-more {
            background: #eaf8f0;
            color: #08744b;
        }

        .dt-news-feature-grid .htk-news-card:nth-child(2):hover .htk-news-more {
            background: #08744b;
            color: #fff;
        }

.dt-news-side {
    display: grid;
    grid-template-columns: 1fr;
    align-content: start;
    gap: 11px;
    padding: 20px 17px 17px;
    border: 1px solid #dceaf5;
    border-radius: 22px;
    background: #f6fbff;
    box-shadow: 0 12px 25px rgba(22, 70, 110, .07);
}

    .dt-news-side::before {
        content: "Tin mới cập nhật";
        display: block;
        margin: 0 0 3px;
        color: #1e305b;
        font: 800 20px 'Montserrat-Bold', Arial, sans-serif;
    }

    .dt-news-side .htk-small-news {
        position: relative;
        min-width: 0;
        padding-bottom: 11px;
        border-bottom: 1px dashed #d6e5f1;
        transition: transform .25s ease;
    }

        .dt-news-side .htk-small-news:last-child {
            padding-bottom: 0;
            border-bottom: 0;
        }

        .dt-news-side .htk-small-news:hover {
            transform: translateX(3px);
        }

    .dt-news-side .htk-news-side-index {
        position: absolute;
        z-index: 2;
        top: 4px;
        left: 4px;
        min-width: 24px;
        padding: 4px 5px;
        border-radius: 999px;
        background: #ffcf42;
        color: #634600;
        font: 800 10px 'Montserrat-Bold', Arial, sans-serif;
        text-align: center;
    }

    .dt-news-side .htk-news-side-item {
        display: grid;
        grid-template-columns: 92px minmax(0,1fr);
        gap: 11px;
        align-items: center;
        color: inherit;
        text-decoration: none;
    }

    .dt-news-side .htk-news-side-thumb {
        width: 92px;
        height: 72px;
        overflow: hidden;
        border-radius: 13px;
        background: #dfeef8;
    }

        .dt-news-side .htk-news-side-thumb img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            transition: transform .4s ease;
        }

    .dt-news-side .htk-news-side-item:hover .htk-news-side-thumb img {
        transform: scale(1.07);
    }

    .dt-news-side .htk-news-side-content {
        min-width: 0;
    }

    .dt-news-side .htk-news-side-date {
        margin: 0;
    }

    .dt-news-side .htk-date {
        color: #8494a2;
        font: 600 13px 'Montserrat-SemiBold', Arial, sans-serif;
    }

        .dt-news-side .htk-date i {
            color: #21a76b;
        }

    .dt-news-side .htk-news-side-title {
        display: -webkit-box;
        margin-top: 5px;
        color: #173c60;
        font: 700 15px/1.4 'Montserrat-Bold', Arial, sans-serif;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        transition: color .2s ease;
    }

    .dt-news-side .htk-news-side-item:hover .htk-news-side-title {
        color: #1e305b;
    }

    .dt-news-side .htk-news-side-desc {
        display: none;
    }

@media (max-width: 1100px) {
    .dt-news-layout {
        grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr);
        gap: 12px;
    }

    .dt-news-feature-grid .htk-news-card-img {
        height: 210px;
    }

    .dt-news-feature-grid .htk-news-title {
        font-size: 17px;
    }
}

@media (max-width: 850px) {
    .dt-news-section {
        padding: 60px 0 66px;
    }

    .dt-news-layout {
        grid-template-columns: 1fr;
    }

    .dt-news-side {
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 13px;
    }

        .dt-news-side::before {
            grid-column: 1 / -1;
        }

        .dt-news-side .htk-small-news:nth-last-child(-n+2) {
            border-bottom: 0;
        }
}

@media (max-width: 599px) {
    .dt-news-section {
        padding: 28px 0 28px;
    }

    .dt-news-heading {
        align-items: unset;
        gap: 13px;
        margin-bottom: 21px;
        flex-direction: column;
    }

        .dt-news-heading .htk-news-kicker {
            margin-bottom: 6px;
            padding: 5px 8px;
            font-size: 11px;
            letter-spacing: .7px;
        }

        .dt-news-heading .htk-section-title {
            font-size: 19px;
            line-height: 1.6;
        }

    .htk-news-heading-copy p {
        font-size: 15px;
        text-align: justify;
    }

    .dt-news-heading-copy > p {
        margin-top: 7px;
        font-size: 11px;
        line-height: 1.5;
    }

    .dt-news-heading .btn-link-new a {
        min-height: 34px;
        padding: 7px 10px;
        font-size: 13px;
        white-space: nowrap;
    }

    .dt-news-feature-grid {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

        .dt-news-feature-grid .htk-news-card {
            border-radius: 17px;
        }

        .dt-news-feature-grid .htk-news-card-img {
            height: 145px;
        }

        .dt-news-feature-grid .htk-news-card-content {
            padding: 10px 10px 10px;
        }

        .dt-news-feature-grid .htk-news-title {
            margin-top: 9px;
            font-size: 13px;
            text-align: left;
        }

        .dt-news-feature-grid .htk-news-desc {
            font-size: 12px;
        }

        .dt-news-feature-grid .htk-news-more {
            margin-top: 12px;
            padding: 8px 11px;
            font-size: 9px;
        }

    .dt-news-side {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 16px 13px 13px;
        border-radius: 17px;
    }

        .dt-news-side::before {
            font-size: 18px;
        }

        .dt-news-side .htk-small-news {
            padding-bottom: 10px;
        }

            .dt-news-side .htk-small-news:nth-last-child(-n+2) {
                border-bottom: 1px dashed #d6e5f1;
            }

            .dt-news-side .htk-small-news:last-child {
                border-bottom: 0;
            }

        .dt-news-side .htk-news-side-item {
            grid-template-columns: 82px minmax(0,1fr);
            gap: 10px;
        }

        .dt-news-side .htk-news-side-title {
            font-size: 13px;
            line-height: 1.5;
        }

        .dt-news-side .htk-news-side-thumb {
            width: 82px;
            height: 65px;
        }
}

/* Slider ổn định: mỗi trang là một cặp tin xếp 2 hàng, không phụ thuộc Grid của Swiper. */
.dt-news-side-slider .dt-news-side-track {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 284px;
    transform: translate3d(0, 0, 0);
    transition: transform .85s cubic-bezier(.22, .61, .36, 1);
    will-change: transform;
    touch-action: pan-y;
    cursor: grab;
}

    .dt-news-side-slider .dt-news-side-track:active {
        cursor: grabbing;
    }

.dt-news-side-page {
    display: grid;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 12px;
    flex: 0 0 100%;
    min-width: 100%;
    height: 100%;
}

    .dt-news-side-page .htk-small-news {
        width: auto;
        height: auto !important;
        min-height: 0;
        flex: 0 0 auto;
        padding: 0;
    }

.dt-news-side-dot {
    width: 7px;
    height: 7px;
    margin: 0 2px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #9bd8d2;
    cursor: pointer;
    transition: width .25s ease, background .25s ease;
}

    .dt-news-side-dot.is-active {
        width: 19px;
        border-radius: 99px;
        background: #008f98;
    }

@media (max-width: 850px) {
    .dt-news-side-slider .dt-news-side-track {
        height: 266px;
    }
}

@media (max-width: 599px) {
    .dt-news-side-slider .dt-news-side-track {
        height: 248px;
    }
}

/* Keep the Swiper layout authoritative after the legacy slider rules above. */
.dt-news-side-slider .dt-news-side-track {
    display: block;
    flex-wrap: initial;
    height: 284px;
    overflow: hidden;
    transform: none;
    transition: none;
    touch-action: pan-y;
}

.dt-news-side-slider .dt-news-side-slides {
    display: flex;
    flex-wrap: nowrap;
    height: 100%;
}

.dt-news-side-slider .dt-news-side-page {
    display: grid;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    flex: 0 0 100%;
    min-width: 100%;
    width: 100%;
    height: 100%;
    gap: 12px;
    padding: 1px;
    box-sizing: border-box;
}

    .dt-news-side-slider .dt-news-side-page .htk-small-news {
        width: auto;
        height: auto !important;
        min-height: 0;
        padding: 0;
        flex: 0 0 auto;
    }

.dt-news-side-slider .htk-news-side-item {
    height: 100%;
    padding: 10px;
}

.dt-news-side-slider .dt-news-side-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 15px;
    padding-top: 0;
    border-top: 0;
}

.dt-news-side-slider .dt-news-side-pagination {
    position: static !important;
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

    .dt-news-side-slider .dt-news-side-pagination .swiper-pagination-bullet {
        width: 7px;
        height: 7px;
        margin: 0 !important;
        background: #b9d9d4;
    }

    .dt-news-side-slider .dt-news-side-pagination .swiper-pagination-bullet-active {
        width: 20px;
        border-radius: 10px;
        background: #08744b;
    }

@media (max-width: 599px) {
    .dt-news-side-slider .dt-news-side-track {
        height: 248px;
    }

    .dt-news-side-slider .htk-news-side-item {
        padding: 8px;
    }
}

/* Final news carousel: two stacked stories per horizontal slide. */
.dt-news-side-slider {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 22px 19px 16px;
    border: 1px solid #d7e8f2;
    border-radius: 24px 8px 24px 8px;
    background: linear-gradient(160deg, #ffffff 0%, #f4fbff 100%);
    box-shadow: 0 18px 35px rgba(28, 79, 109, .10);
}

    .dt-news-side-slider::after {
        content: "";
        position: absolute;
        z-index: -1;
        right: -34px;
        top: -44px;
        width: 116px;
        height: 116px;
        border-radius: 50%;
        background: rgba(33, 167, 107, .10);
    }

    .dt-news-side-slider .htk-news-side-heading {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 16px;
    }

        .dt-news-side-slider .htk-news-side-heading small {
            display: block;
            margin-bottom: 4px;
            color: #21a76b;
            font: 700 13px/1.2 'Montserrat-Bold', Arial, sans-serif;
            letter-spacing: 1.1px;
            text-transform: uppercase;
        }

        .dt-news-side-slider .htk-news-side-heading strong {
            display: block;
            color: #173c60;
            font: 800 21px/1.25 'Montserrat-Bold', Arial, sans-serif;
        }

        .dt-news-side-slider .htk-news-side-heading > span {
            display: grid;
            flex: 0 0 38px;
            width: 38px;
            height: 38px;
            place-items: center;
            border-radius: 13px;
            color: #fff;
            background: #08744b;
            box-shadow: 0 7px 14px rgba(8, 116, 75, .20);
        }

    .dt-news-side-slider .dt-news-side-track {
        display: block;
        width: 100%;
        height: 284px;
        overflow: hidden;
        transform: none;
        transition: none;
        cursor: grab;
        touch-action: pan-y;
    }

        .dt-news-side-slider .dt-news-side-track:active {
            cursor: grabbing;
        }

    .dt-news-side-slider .dt-news-side-slides {
        height: 100%;
    }

    .dt-news-side-slider .dt-news-side-page {
        display: grid;
        grid-template-rows: repeat(2, minmax(0, 1fr));
        gap: 12px;
        box-sizing: border-box;
        width: 100%;
        height: 100%;
        padding: 1px;
    }

        .dt-news-side-slider .dt-news-side-page .htk-small-news {
            min-width: 0;
            min-height: 0;
            height: auto !important;
            padding: 0;
            border: 0;
            border-radius: 15px;
            background: #fff;
            box-shadow: 0 5px 14px rgba(42, 91, 118, .08);
            overflow: hidden;
            transition: transform .25s ease, box-shadow .25s ease;
        }

            .dt-news-side-slider .dt-news-side-page .htk-small-news:hover {
                transform: translateY(-2px);
                box-shadow: 0 9px 18px rgba(42, 91, 118, .13);
            }

    .dt-news-side-slider .htk-news-side-item {
        grid-template-columns: 88px minmax(0, 1fr);
        gap: 12px;
        height: 100%;
        padding: 10px;
    }

    .dt-news-side-slider .htk-news-side-thumb {
        width: 88px;
        height: 100%;
        min-height: 108px;
        border-radius: 10px;
    }

    .dt-news-side-slider .htk-news-side-index {
        top: 14px;
        left: 14px;
        min-width: 23px;
        padding: 4px 5px;
        border-radius: 7px;
        color: #fff;
        background: #08744b;
        font-size: 10px;
    }

    .dt-news-side-slider .htk-news-side-title {
        margin-top: 6px;
        color: #173c60;
        font-size: 14px;
        line-height: 1.35;
    }

    .dt-news-side-slider .dt-news-side-controls {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-top: 15px;
    }

    .dt-news-side-slider .dt-news-side-pagination {
        position: static;
        flex: 1 1 auto;
        width: auto;
        text-align: center;
    }

    .dt-news-side-slider .swiper-pagination-bullet {
        width: 7px;
        height: 7px;
        margin: 0 3px !important;
        opacity: 1;
        background: #b9d9d4;
        transition: width .25s ease, background .25s ease;
    }

    .dt-news-side-slider .swiper-pagination-bullet-active {
        width: 20px;
        border-radius: 10px;
        background: #08744b;
    }

    .dt-news-side-slider .dt-news-side-prev,
    .dt-news-side-slider .dt-news-side-next {
        display: grid;
        flex: 0 0 31px;
        width: 31px;
        height: 31px;
        margin: 0;
        padding: 0;
        place-items: center;
        border: 1px solid #cde5df;
        border-radius: 50%;
        color: #08744b;
        background: #fff;
        cursor: pointer;
        transition: color .2s ease, background .2s ease, transform .2s ease;
    }

        .dt-news-side-slider .dt-news-side-prev:hover,
        .dt-news-side-slider .dt-news-side-next:hover {
            color: #fff;
            background: #08744b;
            transform: translateY(-2px);
        }

@media (max-width: 850px) {
    .dt-news-side-slider .dt-news-side-track {
        height: 266px;
    }
}

@media (max-width: 599px) {
    .dt-news-side-slider {
        padding: 17px 13px 13px;
        border-radius: 19px 7px 19px 7px;
    }

        .dt-news-side-slider .htk-news-side-heading strong {
            font-size: 17px;
        }

        .dt-news-side-slider .htk-news-side-heading > span {
            width: 33px;
            height: 33px;
            flex-basis: 33px;
        }

        .dt-news-side-slider .dt-news-side-track {
            height: 248px;
        }

        .dt-news-side-slider .htk-news-side-item {
            grid-template-columns: 78px minmax(0, 1fr);
            gap: 9px;
            padding: 8px;
        }

        .dt-news-side-slider .htk-news-side-thumb {
            width: 78px;
            min-height: 100px;
        }

        .dt-news-side-slider .htk-news-side-title {
            font-size: 12px;
        }
}

@media (prefers-reduced-motion: reduce) {
    .dt-news-section * {
        transition: none !important;
    }
}

/* News refresh: nhật ký hoạt động + băng chuyền tin mới. */
.dt-news-section {
    position: relative;
    overflow: hidden;
    padding: clamp(42px, 2vw, 82px) 0 clamp(46px, 2vw, 74px);
    background: linear-gradient(135deg, #f5fcfb 0%, #fffdf7 55%, #f1f7ff 100%);
    background: linear-gradient(rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), url(/Design/img/TieuHocHungLong/dt-ab.jpg) no-repeat;
    background-size: cover;
    background-position: right;
}

    .dt-news-section::before {
        width: 500px;
        height: 500px;
        top: -270px;
        left: -220px;
        border: 42px solid rgba(0,179,170,.08);
        background: transparent;
    }

    .dt-news-section::after {
        width: 400px;
        height: 400px;
        right: -175px;
        bottom: -250px;
        background: rgba(244,189,61,.12);
    }

.dt-news-heading {
    position: relative;
    align-items: center;
    margin-bottom: 28px;
    padding-bottom: 18px;
    border-bottom: 1px solid #d6ece9;
}

    .dt-news-heading::after {
        content: "✦";
        position: absolute;
        right: 2px;
        bottom: 13px;
        color: #efb328;
        font-size: 21px;
        transform: rotate(10deg);
    }

.dt-news-heading-copy {
    max-width: 700px;
}

.dt-news-heading .htk-news-kicker {
    margin-bottom: 10px;
    padding: 7px 12px;
    color: #fff;
    background: #008f98;
    font-size: 12px;
    letter-spacing: .9px;
    box-shadow: 4px 4px 0 #ffe19a;
}

    .dt-news-heading .htk-news-kicker i {
        color: #ffdb5d;
    }

.dt-news-heading .htk-section-title {
    color: #075d76;
    font-size: clamp(27px, 3.2vw, 33px);
    letter-spacing: -1.2px;
    text-transform: none;
}

.dt-news-heading-copy > p {
    max-width: 630px;
    margin-top: 12px;
    color: #6c8091;
    font-size: 13px;
    line-height: 1.7;
}

.dt-news-heading .btn-link-new a {
    min-height: 40px;
    padding: 9px 15px;
    border-color: #a9dcd7;
    color: #008b98;
    background: #fff;
    font-size: 15px;
    transition: transform .25s ease, color .25s ease, background .25s ease, box-shadow .25s ease;
}

    .dt-news-heading .btn-link-new a:hover {
        color: #fff;
        background: #008b98;
        transform: translateY(-3px);
        box-shadow: 0 10px 20px rgba(0,139,152,.2);
    }

.dt-news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(305px, .75fr);
    gap: clamp(20px, 1vw, 42px);
    align-items: stretch;
}

.dt-news-feature-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 16px;
    min-width: 0;
}

    .dt-news-feature-grid .htk-news-card {
        position: relative;
        overflow: hidden;
        min-width: 0;
        border: 1px solid #d9ece9;
        border-radius: 25px 25px 25px 6px;
        background: #fff;
        box-shadow: 0 16px 30px rgba(31,91,104,.09);
        transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
    }

        .dt-news-feature-grid .htk-news-card::before {
            content: "✦";
            position: absolute;
            top: 13px;
            right: 15px;
            z-index: 4;
            display: grid;
            place-items: center;
            width: 29px;
            height: 29px;
            border-radius: 50%;
            color: #a07205;
            background: rgba(255,255,255,.9);
            font-size: 14px;
            transition: transform .35s ease;
        }

        .dt-news-feature-grid .htk-news-card:hover {
            transform: translateY(-8px) rotate(-.25deg);
            border-color: #8bd3cd;
            box-shadow: 0 25px 42px rgba(31,91,104,.16);
        }

            .dt-news-feature-grid .htk-news-card:hover::before {
                transform: rotate(25deg) scale(1.1);
            }

        .dt-news-feature-grid .htk-news-card > a {
            display: block;
            height: 100%;
            color: inherit;
        }

    .dt-news-feature-grid .htk-news-card-img {
        height: 225px;
        border-radius: 0;
    }

        .dt-news-feature-grid .htk-news-card-img img {
            transition: transform .75s cubic-bezier(.2,.8,.2,1), filter .5s ease;
        }

    .dt-news-feature-grid .htk-news-card:hover .htk-news-card-img img {
        transform: scale(1.09);
        filter: saturate(1.12);
    }

    .dt-news-feature-grid .htk-news-card-content {
        padding: 16px 18px 18px;
    }

    .dt-news-feature-grid .htk-news-date {
        align-items: center;
        gap: 7px;
    }

    .dt-news-feature-grid .htk-cate-n {
        padding: 5px 8px;
        color: #087c78;
        background: #e3f8f4;
        font-size: 10px;
    }

    .dt-news-feature-grid .htk-date {
        color: #8395a0;
        font-size: 12px;
    }

        .dt-news-feature-grid .htk-date i {
            color: #e3a913;
        }

    .dt-news-feature-grid .htk-news-title {
        margin-top: 11px;
        color: #1c4b62;
        font-size: 16px;
        line-height: 1.42;
    }

    .dt-news-feature-grid .htk-news-desc {
        margin-top: 8px;
        color: #748895;
        font-size: 14px;
        line-height: 1.6;
    }

    .dt-news-feature-grid .htk-news-more {
        margin-top: 13px;
        padding: 8px 11px;
        color: #008b98;
        background: #e5f8f5;
        font-size: 12px;
        transition: transform .25s ease, color .25s ease, background .25s ease;
    }

    .dt-news-feature-grid .htk-news-card:hover .htk-news-more {
        color: #fff;
        background: #008b98;
        transform: translateX(4px);
    }

    .dt-news-feature-grid .htk-news-card:nth-child(2) {
        border-color: #efe2b6;
        border-radius: 25px 25px 6px 25px;
    }

        .dt-news-feature-grid .htk-news-card:nth-child(2) .htk-cate-n {
            color: #916a09;
            background: #fff2c8;
        }

        .dt-news-feature-grid .htk-news-card:nth-child(2) .htk-news-more {
            color: #966d0a;
            background: #fff4d2;
        }

        .dt-news-feature-grid .htk-news-card:nth-child(2):hover .htk-news-more {
            color: #fff;
            background: #d99e18;
        }

/* Tin mới cập nhật: slider loop ngang, chuyển động trái/phải bằng Swiper. */
.dt-news-side-slider {
    position: relative;
    display: block;
    min-width: 0;
    overflow: hidden;
    padding: 18px 17px 14px;
    border: 1px solid #b7e0dc;
    border-radius: 25px 25px 7px 25px;
    background: #e9faf7;
    box-shadow: 0 16px 30px rgba(31,91,104,.10);
}

    .dt-news-side-slider::before {
        content: "";
        position: absolute;
        right: -30px;
        top: -34px;
        width: 115px;
        height: 115px;
        border: 20px solid rgba(244,189,61,.3);
        border-radius: 50%;
        pointer-events: none;
    }

    .dt-news-side-slider::after {
        content: "✦";
        position: absolute;
        right: 35px;
        top: 18px;
        color: #e8ae1e;
        font-size: 18px;
    }

.dt-news-side-heading {
    position: relative;
    z-index: 2;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0 0 12px;
    padding: 0 1px 13px;
    border-bottom: 1px solid rgba(0,139,152,.18);
}

    .dt-news-side-heading div {
        display: grid;
        gap: 3px;
    }

    .dt-news-side-heading small {
        color: #3a877f;
        font: 800 9px 'Montserrat-Bold', Arial, sans-serif;
        letter-spacing: 1px;
        text-transform: uppercase;
    }

    .dt-news-side-heading strong {
        color: #075d76;
        font: 800 19px/1.1 'Montserrat-Bold', Arial, sans-serif;
    }

    .dt-news-side-heading > span {
        display: grid;
        place-items: center;
        width: 37px;
        height: 37px;
        border-radius: 13px;
        color: #987009;
        background: #ffdb60;
        transform: rotate(8deg);
    }

.dt-news-side-track {
    display: flex;
    width: 100%;
    align-items: stretch;
}

.dt-news-side-slider .htk-small-news {
    position: relative;
    display: block;
    flex: 0 0 100%;
    min-width: 0;
    height: auto;
    padding: 4px 0 8px;
    border: 0;
    transition: transform .25s ease;
}

.dt-news-side-slider .htk-news-side-index {
    position: absolute;
    left: 0;
    top: 9px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 33px;
    height: 33px;
    border-radius: 12px;
    color: #008b98;
    background: #d1f2ed;
    font: 800 11px 'Montserrat-Bold', Arial, sans-serif;
}

.dt-news-side-slider .htk-news-side-item {
    display: grid;
    grid-template-columns: 104px minmax(0,1fr);
    gap: 13px;
    align-items: start;
    padding: 0 0 3px 18px;
    color: inherit;
}

.dt-news-side-slider .htk-news-side-thumb {
    width: 104px;
    height: 116px;
    overflow: hidden;
    border-radius: 17px 17px 17px 4px;
    background: #d9eeeb;
    box-shadow: 5px 5px 0 rgba(0,179,170,.13);
}

    .dt-news-side-slider .htk-news-side-thumb img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        transition: transform .65s ease;
    }

.dt-news-side-slider .htk-news-side-item:hover .htk-news-side-thumb img {
    transform: scale(1.1);
}

.dt-news-side-slider .htk-news-side-content {
    min-width: 0;
    padding-top: 1px;
}

.dt-news-side-slider .htk-news-side-date {
    margin: 0;
}

.dt-news-side-slider .htk-date {
    color: #738a93;
    font-size: 13px;
}

    .dt-news-side-slider .htk-date i {
        color: #e2a514;
    }

.dt-news-side-slider .htk-news-side-title {
    display: -webkit-box;
    margin-top: 3px;
    color: #1c5060;
    font-size: 14px;
    line-height: 1.45;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color .25s ease;
}

.dt-news-side-slider .htk-news-side-item:hover .htk-news-side-title {
    color: #008b98;
}

.dt-news-side-slider .htk-news-side-desc {
    display: -webkit-box;
    margin-top: 5px;
    color: #7b8e97;
    font-size: 14px;
    line-height: 1.5;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.dt-news-side-controls {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 11px;
    padding-top: 11px;
    border-top: 1px dashed rgba(0,139,152,.22);
}

    .dt-news-side-controls button {
        display: grid;
        place-items: center;
        width: 28px;
        height: 28px;
        border: 1px solid #a9dcd7;
        border-radius: 9px;
        color: #008b98;
        background: #fff;
        cursor: pointer;
        transition: transform .25s ease, color .25s ease, background .25s ease;
    }

        .dt-news-side-controls button:hover {
            color: #fff;
            background: #008b98;
            transform: translateY(-2px);
        }

.dt-news-side-pagination {
    position: static !important;
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

    .dt-news-side-pagination .swiper-pagination-bullet {
        width: 6px;
        height: 6px;
        margin: 0 !important;
        opacity: 1;
        background: #9bd8d2;
        transition: width .25s ease, background .25s ease;
    }

    .dt-news-side-pagination .swiper-pagination-bullet-active {
        width: 18px;
        border-radius: 99px;
        background: #008f98;
    }

@media (max-width: 1100px) {
    .dt-news-layout {
        grid-template-columns: minmax(0,1.3fr) minmax(285px,.7fr);
        gap: 18px;
    }

    .dt-news-feature-grid .htk-news-card-img {
        height: 205px;
    }

    .dt-news-side-slider .htk-news-side-item {
        grid-template-columns: 86px minmax(0,1fr);
        gap: 10px;
    }

    .dt-news-side-slider .htk-news-side-thumb {
        width: 86px;
        height: 110px;
    }
}

@media (max-width: 850px) {
    .dt-news-layout {
        grid-template-columns: 1fr;
    }

    .dt-news-side-slider {
        max-width: none;
    }

        .dt-news-side-slider .htk-small-news {
            flex-basis: 100%;
        }

        .dt-news-side-slider .htk-news-side-item {
            grid-template-columns: 120px minmax(0,1fr);
        }

        .dt-news-side-slider .htk-news-side-thumb {
            width: 120px;
            height: 130px;
        }
}

@media (max-width: 599px) {
    .dt-news-section {
        padding: 29px 0 28px;
    }

    .dt-news-side-slider .htk-date {
        font-size: 11px;
    }

    .dt-news-heading {
        align-items: flex-start;
        gap: 13px;
        margin-bottom: 20px;
        padding-bottom: 0;
    }

        .dt-news-heading .htk-news-kicker {
            font-size: 10px;
            padding: 5px 8px;
        }

        .dt-news-heading .htk-section-title {
            font-size: 20px;
        }

    .dt-news-heading-copy > p {
        font-size: 11px;
    }

    .dt-news-heading .btn-link-new a {
        min-height: 32px;
        padding: 7px 10px;
        font-size: 13px;
        position: absolute;
        top: 0;
        right: 0;
    }

    .dt-news-feature-grid {
        grid-template-columns: 1fr 1fr;
        gap: 9px;
    }

        .dt-news-feature-grid .htk-news-card {
            border-radius: 17px 17px 17px 5px;
        }

        .dt-news-feature-grid .htk-news-card-img {
            height: 135px;
        }

        .dt-news-feature-grid .htk-news-card-content {
            padding: 10px 10px 11px;
        }

        .dt-news-feature-grid .htk-cate-n {
            font-size: 7px;
        }

        .dt-news-feature-grid .htk-date {
            font-size: 10px;
        }

        .dt-news-feature-grid .htk-news-title {
            margin-top: 8px;
            font-size: 13px;
        }

        .dt-news-feature-grid .htk-news-desc {
            font-size: 12px;
        }

        .dt-news-feature-grid .htk-news-more {
            margin-top: 9px;
            padding: 6px 8px;
            font-size: 9px;
        }

        .dt-news-feature-grid .htk-news-card::before {
            top: 8px;
            right: 8px;
            width: 22px;
            height: 22px;
            font-size: 10px;
        }

    .dt-news-side-slider {
        padding: 15px 12px 12px;
        border-radius: 19px 19px 6px 19px;
    }

    .dt-news-side-heading strong {
        font-size: 17px;
    }

    .dt-news-side-heading > span {
        width: 32px;
        height: 32px;
    }

    .dt-news-side-slider .htk-news-side-item {
        grid-template-columns: 92px minmax(0,1fr);
        gap: 10px;
        padding-left: 15px;
    }

    .dt-news-side-slider .htk-news-side-thumb {
        width: 92px;
        height: 101px;
    }

    .dt-news-side-slider .htk-news-side-title {
        font-size: 13px;
    }

    .dt-news-side-slider .htk-news-side-desc {
        font-size: 12px;
        margin-top: 3px;
    }

    .dt-news-side-slider .htk-news-side-index {
        width: 28px;
        height: 28px;
        font-size: 9px;
    }

    .dt-news-side-slider .dl-notice-scroll {
        height: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dt-news-section *, .dt-news-section *::before, .dt-news-section *::after {
        animation: none !important;
        transition-duration: .01ms !important;
    }
}

/* Fix slider layout: mỗi lượt hiển thị 2 tin theo 2 hàng, không dồn thành một cột dài. */
.dt-news-side-slider {
    width: 100%;
    max-width: 396px;
    height: 442px;
}

    .dt-news-side-slider .dt-news-side-track {
        display: flex;
        flex-wrap: wrap;
        height: 284px;
        align-content: stretch;
    }

    .dt-news-side-slider .htk-small-news {
        width: 100%;
        height: calc((100% - 12px) / 2) !important;
        min-height: 0;
        flex: 0 0 100%;
        margin: 0;
    }

    .dt-news-side-slider .htk-news-side-item {
        height: 100%;
    }

@media (max-width: 850px) {
    .dt-news-side-slider {
        height: 402px;
    }

        .dt-news-side-slider .dt-news-side-track {
            height: 266px;
        }
}

@media (max-width: 599px) {
    .dt-news-side-slider {
        height: 385px;
    }

        .dt-news-side-slider .dt-news-side-track {
            height: 248px;
        }
}

/* Final override for the custom two-row loop track. */
.dt-news-side-slider .dt-news-side-track {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 284px;
    transform: translate3d(0, 0, 0);
    transition: transform .85s cubic-bezier(.22, .61, .36, 1);
    will-change: transform;
}

.dt-news-side-page {
    display: grid;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 12px;
    flex: 0 0 100%;
    min-width: 100%;
    height: 100%;
}

    .dt-news-side-page .htk-small-news {
        width: auto;
        height: auto !important;
        min-height: 0;
        flex: 0 0 auto;
        padding: 0;
    }

.dt-news-side-dot {
    width: 7px;
    height: 7px;
    margin: 0 2px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #9bd8d2;
    cursor: pointer;
    transition: width .25s ease, background .25s ease;
}

    .dt-news-side-dot.is-active {
        width: 19px;
        border-radius: 99px;
        background: #008f98;
    }

@media (max-width: 850px) {
    .dt-news-side-slider .dt-news-side-track {
        height: 266px;
    }
}

@media (max-width: 599px) {
    .dt-news-side-slider .dt-news-side-track {
        height: 248px;
    }
}

/* Final Swiper layout override. */
.dt-news-side-slider .dt-news-side-track {
    display: block;
    flex-wrap: initial;
    height: 284px;
    overflow: hidden;
    transform: none;
    transition: none;
    touch-action: pan-y;
}

.dt-news-side-slider .dt-news-side-slides {
    display: flex;
    flex-wrap: nowrap;
    height: 100%;
}

.dt-news-side-slider .dt-news-side-page {
    display: grid;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    flex: 0 0 100%;
    min-width: 100%;
    width: 100%;
    height: 100%;
    gap: 12px;
    padding: 1px;
    box-sizing: border-box;
}

    .dt-news-side-slider .dt-news-side-page .htk-small-news {
        width: auto;
        height: auto !important;
        min-height: 0;
        padding: 0;
        flex: 0 0 auto;
    }

.dt-news-side-slider .htk-news-side-item {
    height: 100%;
    padding: 10px;
}

.dt-news-side-slider .dt-news-side-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 15px;
    padding-top: 0;
    border-top: 0;
    position: relative;
}

.dt-news-side-slider .dt-news-side-pagination {
    position: static !important;
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    gap: 4px;
    transform: unset !important;
}

    .dt-news-side-slider .dt-news-side-pagination .swiper-pagination-bullet {
        width: 7px;
        height: 7px;
        margin: 0 !important;
        background: #b9d9d4;
    }

    .dt-news-side-slider .dt-news-side-pagination .swiper-pagination-bullet-active {
        width: 20px;
        border-radius: 10px;
        background: #08744b;
    }

@media (max-width: 599px) {
    .dt-news-side-slider .dt-news-side-track {
        height: 248px;
    }

    .dt-news-side-slider .htk-news-side-item {
        padding: 8px;
    }
}