/* Desktop sizing (≥ 768px): tones down oversized text and images to common web proportions.
   Mobile sizing lives in mobile.css. */
@media (min-width: 768px) {

    /* ---------- Hero banner ---------- */
    .main-banner .banner-slider .swiper-slide > img {
        height: min(620px, 78vh);
        object-fit: cover;
        object-position: center;
    }
    .main-banner .banner-slider .swiper-slide .slide-content h1 {
        font-size: 48px;
        line-height: 1.15;
        margin-bottom: 14px;
    }
    .main-banner .banner-slider .swiper-slide .slide-content p {
        font-size: 18px;
        line-height: 1.5;
        margin-bottom: 0;
    }
    .main-banner .banner-slider .swiper-pagination {
        bottom: 28px;
        gap: 8px;
    }
    .main-banner .banner-slider .swiper-pagination .swiper-pagination-bullet {
        width: 32px;
        height: 5px;
        margin: 0 !important;
        border-radius: 999px;
        background: rgba(255,255,255,.6);
        transition: width .25s ease, background .25s ease;
    }
    .main-banner .banner-slider .swiper-pagination .swiper-pagination-bullet-active {
        width: 56px;
        background: #f7492c !important;
    }
    .main-banner .banner-slider .button-prev img,
    .main-banner .banner-slider .button-next img {
        width: 44px;
        height: 44px;
    }

    /* Inner-page hero (career, etc.) */
    .hero h1 {
        font-size: 2.5rem;
    }
    .hero h2 {
        font-size: 1.5rem;
    }

    /* ---------- Section headings ---------- */
    .section {
        padding-top: 72px;
        padding-bottom: 72px;
    }
    .subtitle {
        font-size: 16px;
        line-height: 22px;
    }
    .title {
        font-size: 32px;
        line-height: 40px;
    }
    .title-2 {
        font-size: 34px;
    }
    .title-desc {
        font-size: 17px;
        line-height: 26px;
    }
    .section-coverage .title-desc {
        font-size: 16px;
    }

    /* ---------- Why Choose Us cards ---------- */
    .card-cs {
        padding: 32px 24px;
    }
    .card-cs img {
        width: 72px;
        height: 72px;
        object-fit: contain;
    }
    .card-cs h4 {
        font-size: 20px;
        margin-top: 20px;
        margin-bottom: 8px;
    }
    .card-cs p {
        font-size: 15px;
        line-height: 23px;
    }
    .section-why .btn-astech.w-25 {
        width: auto !important;
        min-width: 220px;
        padding: 12px 40px;
    }

    /* ---------- Partner logos: same box for every logo ---------- */
    .section-client .client-logo {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 84px;
        padding: 0 12px;
    }
    .section-client .row:has(> .client-logo) {
        justify-content: center;
        max-width: 1100px;
        margin-left: auto;
        margin-right: auto;
    }
    .section-client .client-logo img {
        width: auto;
        height: auto;
        max-width: 140px;
        max-height: 48px;
        object-fit: contain;
    }

    /* ---------- Coverage counters ---------- */
    .section-coverage .count-content .count-item h5 {
        font-size: 32px;
    }
    .section-coverage .count-content .count-item p {
        font-size: 14px;
    }

    /* ---------- Testimonials ---------- */
    .section-testimoni .testimoni-slider .swiper-slide {
        width: 420px;
    }
    .card-testimoni {
        padding: 32px;
    }
    .card-testimoni > img {
        width: 56px;
    }
    .card-testimoni .testi-content {
        margin: 22px 0;
        font-size: 17px;
        line-height: 26px;
    }
    .card-testimoni .testi-user .avatar {
        width: 56px;
    }
    .card-testimoni .testi-user .name {
        font-size: 18px;
    }
    .card-testimoni .testi-user .desc {
        font-size: 15px;
    }

    /* ---------- Footer ---------- */
    .footer {
        padding-top: 72px;
    }
    .footer .col-xl-5 img {
        max-width: 200px;
    }
    .footer .col-xl-5 p {
        font-size: 15px;
        line-height: 24px;
    }
    .footer h5 {
        font-size: 17px;
    }
    .footer .nav-link,
    .footer .hotline {
        font-size: 15px;
    }
}

/* ---------- Header after scrolling: 2 rows ----------
   The top bar is hidden and its items (text, FAQ, language) move into the logo row,
   so every link stays reachable. Only on desktop; mobile keeps its own header. */
.header .head-compact {
    display: none;
}
@media (min-width: 768px) {
    .header.scrolled .header-top {
        display: none;
    }
    /* Logo row and menu row keep the same padding, gaps and sizes as before scrolling */
    .header.scrolled .header-middle .head-container .head-search .searchbar {
        min-width: 160px;
    }
    .header.scrolled .header-middle .head-container .head-search .head-sidenav {
        width: auto;
    }
    .header.scrolled .head-compact {
        display: flex;
        align-items: center;
        gap: 14px;
        white-space: nowrap;
        font-size: 13px;
    }
    .header .head-compact a {
        color: #000;
        text-decoration: none;
    }
    .header .head-compact .dropdown-toggle::after {
        vertical-align: middle;
    }

    /* ---------- Product megamenu: 4 logos per row, same visual size ---------- */
    .megamenu .logo-product {
        height: 96px;
        padding: 12px 20px;
    }
    .megamenu .logo-product img {
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: 56px;
        object-fit: contain;
    }
}
/* The promo text (Free Shipment | Warranty) is left out of the scrolled header */
.header .head-compact .compact-text {
    display: none;
}
