/* PATCH 06 - extracted from resources/views/pages/user/home.blade.php. Static CSS only; kept for compatibility. */
/* PATCH 04.9: form giống hình mẫu - gọn, bo góc mạnh, nút đầy đủ trong slider */
.alogiare-booking-hero{
    position:relative;
    overflow:visible;
    background:#f7f2ea;
}
.alogiare-booking-hero-container{
    position:relative;
}
.alogiare-booking-hero .home__hannerDesktopWrapper,
.alogiare-booking-hero .desktop__wrapperDesktopSlider,
.alogiare-booking-hero .alogiare-main-banner,
.alogiare-booking-hero .swiper-wrapper,
.alogiare-booking-hero .swiper-slide{
    min-height:430px;
}
.alogiare-booking-hero .alogiare-main-banner img{
    width:100%;
    height:430px;
    object-fit:cover;
    display:block;
}
.alogiare-booking-layer{
    position:absolute;
    left:28px;
    top:18px;
    width:430px;
    max-width:calc(100% - 56px);
    z-index:20;
}
.alogiare-booking-panel{
    background:var(--alogiare-booking-form-bg, linear-gradient(135deg, rgba(9,48,103,.96), rgba(12,70,137,.94)));
    border:1px solid rgba(255,255,255,.20);
    box-shadow:0 18px 42px rgba(15,23,42,.22);
    backdrop-filter:blur(5px);
    border-radius:30px;
    padding:15px 17px 16px;
    color:#fff;
    overflow:visible;
}
.alogiare-booking-tabs{
    display:flex;
    align-items:center;
    gap:0;
    margin:0 0 11px;
    padding:0 0 9px;
    border-bottom:1px solid rgba(255,255,255,.28);
    list-style:none;
}
.alogiare-booking-tabs button{
    height:30px;
    padding:0 14px;
    border:0;
    background:transparent;
    color:#fff;
    font-size:14px;
    font-weight:900;
    display:flex;
    align-items:center;
    gap:7px;
    border-right:1px solid rgba(255,255,255,.28);
    cursor:pointer;
}
.alogiare-booking-tabs li:last-child button{
    border-right:0;
}
.alogiare-booking-tabs button.is-active{
    color:var(--alogiare-booking-button-bg, #ff7a00);
}
.alogiare-booking-form{
    margin:0;
}
.dt-row{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    margin-bottom:8px;
}
.dt-row.dt-place-row{
    position:relative;
}
.dt-row.dt-two{
    grid-template-columns:1fr 1fr;
    gap:9px;
}
.dt-field{
    position:relative;
    background:#fff;
    border-radius:6px;
    height:39px;
    display:flex;
    align-items:center;
    overflow:hidden;
    box-shadow:0 3px 10px rgba(15,23,42,.06);
}
.dt-field label{
    width:96px;
    min-width:96px;
    margin:0;
    text-align:center;
    color:#0f172a;
    font-weight:900;
    font-size:13px;
    border-right:1px solid #e2e8f0;
    line-height:1;
}
.dt-field input,
.dt-field select{
    flex:1;
    width:100%;
    height:100%;
    border:0;
    outline:none;
    background:#fff;
    color:#243044;
    font-size:13px;
    padding:0 10px;
    min-width:0;
}
.dt-field input::placeholder{
    color:#9aa4b2;
}
.dt-switch-btn{
    position:absolute;
    right:12px;
    top:32px;
    width:42px;
    height:42px;
    border-radius:999px;
    border:0;
    background:var(--alogiare-booking-button-bg, linear-gradient(135deg,#ff7900,#ff4b00));
    color:#fff;
    box-shadow:0 10px 20px rgba(255,102,0,.32);
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    cursor:pointer;
}
.dt-option-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px 18px;
    align-items:center;
    padding:2px 0 9px;
    margin-bottom:9px;
    border-bottom:1px solid rgba(255,255,255,.28);
}
.dt-check{
    display:flex;
    align-items:center;
    gap:7px;
    color:#fff;
    font-size:13px;
    font-weight:800;
    white-space:nowrap;
}
.dt-check input{
    width:16px;
    height:16px;
    accent-color:var(--alogiare-booking-button-bg, #ff7a00);
}
.dt-promo{
    display:none!important;
}
.dt-submit-row{
    display:block;
    margin-top:10px;
}
.dt-submit{
    width:100%;
    height:46px;
    border:0;
    border-radius:8px;
    background:var(--alogiare-booking-button-bg, linear-gradient(135deg,#ff7900,#ff4b00));
    color:#fff;
    font-weight:900;
    font-size:15px;
    text-transform:uppercase;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    box-shadow:0 12px 24px rgba(255,102,0,.28);
    cursor:pointer;
}
.dt-submit:hover{
    filter:brightness(.98);
    transform:translateY(-1px);
}
.dt-submit-note{
    display:none!important;
}
.dt-booking-message{
    display:none;
    margin-top:7px;
    padding:7px 9px;
    border-radius:6px;
    font-size:12px;
    font-weight:700;
}
.dt-booking-message.is-success{
    display:block;
    background:#dcfce7;
    color:#166534;
}
.dt-booking-message.is-error{
    display:block;
    background:#fee2e2;
    color:#991b1b;
}
.dt-booking-modal{
    position:fixed;
    inset:0;
    z-index:999999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:18px;
    background:rgba(15,23,42,.52);
}
.dt-booking-modal.is-open{
    display:flex;
}
.dt-booking-modal-card{
    width:100%;
    max-width:480px;
    background:#fff;
    border-radius:14px;
    box-shadow:0 24px 70px rgba(15,23,42,.28);
    overflow:hidden;
}
.dt-booking-modal-head{
    padding:16px 20px;
    background:var(--alogiare-booking-form-bg, #0b3b7d);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-weight:900;
}
.dt-booking-modal-close{
    border:0;
    background:transparent;
    color:#fff;
    font-size:24px;
    line-height:1;
    cursor:pointer;
}
.dt-booking-modal-body{
    padding:18px 20px;
    color:#0f172a;
}
.dt-booking-summary{
    display:grid;
    gap:8px;
    margin:0;
}
.dt-booking-summary div{
    display:grid;
    grid-template-columns:120px 1fr;
    gap:10px;
    font-size:15px;
}
.dt-booking-summary strong{
    color:#334155;
}
.dt-booking-modal-foot{
    padding:14px 20px 20px;
    display:flex;
    justify-content:flex-end;
    gap:10px;
}
.dt-modal-btn{
    height:42px;
    border-radius:8px;
    border:0;
    padding:0 16px;
    font-weight:800;
    cursor:pointer;
}
.dt-modal-cancel{
    background:#e5e7eb;
    color:#111827;
}
.dt-modal-confirm{
    background:var(--alogiare-booking-button-bg, #ff7900);
    color:#fff;
}
@media(max-width:1199px){
    .alogiare-booking-layer{
        left:18px;
        top:16px;
        width:405px;
        max-width:calc(100% - 36px);
    }
    .alogiare-booking-panel{
        padding:13px 15px 14px;
        border-radius:26px;
    }
    .dt-field{
        height:37px;
    }
    .dt-field label{
        width:88px;
        min-width:88px;
        font-size:12.5px;
    }
    .dt-field input,
    .dt-field select{
        font-size:12.5px;
        padding:0 8px;
    }
    .dt-switch-btn{
        width:38px;
        height:38px;
        top:31px;
    }
    .dt-submit{
        height:42px;
        font-size:14px;
    }
}
@media(max-width:991.98px){
    .alogiare-booking-hero .home__hannerDesktopWrapper,
    .alogiare-booking-hero .desktop__wrapperDesktopSlider,
    .alogiare-booking-hero .alogiare-main-banner,
    .alogiare-booking-hero .swiper-wrapper,
    .alogiare-booking-hero .swiper-slide{
        min-height:220px;
    }
    .alogiare-booking-hero .alogiare-main-banner img{
        height:220px;
    }
    .alogiare-booking-layer{
        position:relative;
        left:auto;
        top:auto;
        width:100%;
        max-width:100%;
        margin:18px auto 0;
        padding:0 12px 18px;
    }
    .alogiare-booking-panel{
        border-radius:18px;
        background:var(--alogiare-booking-form-bg, #0b3b7d);
        max-height:none;
        overflow:visible;
    }
    .dt-row.dt-two{
        grid-template-columns:1fr;
    }
    .dt-field{
        height:44px;
    }
    .dt-field label{
        width:96px;
        min-width:96px;
        font-size:13px;
    }
    .dt-field input,
    .dt-field select{
        font-size:13px;
        padding:0 10px;
    }
    .dt-switch-btn{
        right:16px;
        top:38px;
        width:38px;
        height:38px;
    }
    .dt-submit{
        height:46px;
        font-size:14px;
    }
}
@media(max-width:575.98px){
    .alogiare-booking-panel{
        padding:0px;
    }
    .alogiare-booking-tabs button{
        font-size:14px;
        padding:0 12px;
        height:34px;
    }
    .dt-field label{
        width:92px;
        min-width:92px;
        font-size:13px;
    }
    .dt-option-row{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }
    .dt-booking-summary div{
        grid-template-columns:1fr;
        gap:2px;
    }
}
	
	
	
	
	
	
	.alogiare-booking-hero{
    position: relative;
}

.alogiare-booking-hero-container{
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: 100%;
    z-index: 20;
    pointer-events: none;
}

.alogiare-booking-layer{
    pointer-events: auto;
}
	
	
	
	
	@media(max-width:991.98px){
    .alogiare-booking-hero-container{
        position: relative;
        left: auto;
        top: auto;
        transform: none;
        z-index: 20;
        pointer-events: auto;
    }
}
	
	
	
	
	@media(max-width:767px){
    #pickuptime_tif{
        text-align:left !important;
        padding-left:10px !important;
    }
}


/* PATCH V8 REAL: banner/slider trang chủ full màn hình như alogiare_province_strip */
.alogiare-home .alogiare-banner-wrap.alogiare-booking-hero,
.alogiare-home section.alogiare-banner-wrap.home__wrapperBanner.alogiare-booking-hero{
    width:100vw !important;
    max-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
}
.alogiare-home .alogiare-booking-hero .home__hannerDesktopWrapper,
.alogiare-home .alogiare-booking-hero .desktop__wrapperDesktopSlider,
.alogiare-home .alogiare-booking-hero .alogiare-main-banner,
.alogiare-home .alogiare-booking-hero .alogiare-banner,
.alogiare-home .alogiare-booking-hero .swiper,
.alogiare-home .alogiare-booking-hero .swiper-wrapper,
.alogiare-home .alogiare-booking-hero .swiper-slide{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
}
.alogiare-home .alogiare-booking-hero .alogiare-main-banner img,
.alogiare-home .alogiare-booking-hero .alogiare-banner img{
    width:100vw !important;
    max-width:100vw !important;
    min-width:100vw !important;
    height:430px !important;
    object-fit:cover !important;
    display:block !important;
}
.alogiare-home .alogiare-booking-hero-container,
.alogiare-home .home__containerBanner.alogiare-booking-hero-container{
    max-width:1280px !important;
    width:100% !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    padding-left:16px !important;
    padding-right:16px !important;
    box-sizing:border-box !important;
}
@media(max-width:991.98px){
    .alogiare-home .alogiare-banner-wrap.alogiare-booking-hero,
    .alogiare-home section.alogiare-banner-wrap.home__wrapperBanner.alogiare-booking-hero{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }
    .alogiare-home .alogiare-booking-hero .alogiare-main-banner img,
    .alogiare-home .alogiare-booking-hero .alogiare-banner img{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        height:220px !important;
    }
    .alogiare-home .alogiare-booking-hero-container,
    .alogiare-home .home__containerBanner.alogiare-booking-hero-container{
        max-width:100% !important;
        left:auto !important;
        transform:none !important;
        padding-left:8px !important;
        padding-right:8px !important;
    }
}


/* PATCH MOBILE EDGE - đồng bộ mép trái/phải trang chủ mobile theo alogiare_province_strip */
@media (max-width: 575.98px){
    .alogiare-home{
        --alogiare-mobile-edge: 10px !important;
        --alogiare-mobile-slide-gap: 8px !important;
        --alogiare-mobile-icon-w: 82px !important;
        --alogiare-mobile-vip-w: 95px !important;
    }

    .alogiare-home .home__homeContainer,
    .alogiare-home .alogiare-home-wrapper{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
        overflow-x:hidden !important;
    }

    .alogiare-home .alogiare-province-strip,
    .alogiare-home .alogiare-service-strip,
    .alogiare-home .alogiare-categories,
    .alogiare-home .alogiare-vip,
    .alogiare-home .alogiare-latest-listings,
    .alogiare-home .alogiare-listings,
    .alogiare-home .alogiare-seo{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
        overflow:hidden !important;
    }

    .alogiare-home .alogiare-province-strip > .alogiare-container,
    .alogiare-home .alogiare-province-strip > .alogiare-container-fluid,
    .alogiare-home .alogiare-service-strip > .alogiare-container,
    .alogiare-home .alogiare-service-strip .home__subMenuWrapper,
    .alogiare-home .alogiare-categories > .alogiare-container,
    .alogiare-home .alogiare-vip > .alogiare-container,
    .alogiare-home .alogiare-vip .gridAds__wrapper,
    .alogiare-home .alogiare-latest-listings > .alogiare-container,
    .alogiare-home .alogiare-listings > .alogiare-container,
    .alogiare-home .alogiare-seo > .alogiare-container{
        width:100% !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding-left:var(--alogiare-mobile-edge) !important;
        padding-right:var(--alogiare-mobile-edge) !important;
        box-sizing:border-box !important;
    }

    /* Mobile 3 swiper này bám theo alogiare_province_strip: item đầu sát mép, lướt tự do, không chia page */
    .alogiare-home .alogiare-top-province-swiper,
    .alogiare-home .alogiare-service-swiper,
    .alogiare-home .alogiare-category-swiper,
    .alogiare-home .alogiare-vip-swiper{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
        overflow:hidden !important;
        box-sizing:border-box !important;
    }

    /* FIX ONLY alogiare_province_strip mobile: desktop Swiper bị destroy dưới 992px,
       nên cần bật native horizontal scroll để vuốt được trên mobile. */
    .alogiare-home .alogiare-top-province-swiper:not(.alogiare-province-controlled){
        overflow-x:auto !important;
        overflow-y:hidden !important;
        -webkit-overflow-scrolling:touch !important;
        touch-action:pan-x !important;
        scrollbar-width:none !important;
    }

    .alogiare-home .alogiare-top-province-swiper:not(.alogiare-province-controlled)::-webkit-scrollbar{
        display:none !important;
    }

    .alogiare-home .alogiare-top-province-swiper:not(.alogiare-province-controlled) .swiper-wrapper{
        display:flex !important;
        align-items:stretch !important;
        flex-wrap:nowrap !important;
        gap:0 !important;
        width:max-content !important;
        min-width:max-content !important;
        transform:none !important;
        margin-left:0 !important;
        padding-left:0 !important;
    }

    .alogiare-home .alogiare-top-province-swiper:not(.alogiare-province-controlled) .swiper-slide{
        width:var(--alogiare-mobile-icon-w) !important;
        flex:0 0 var(--alogiare-mobile-icon-w) !important;
        margin-left:0 !important;
        margin-right:var(--alogiare-mobile-slide-gap) !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    /* FIX 4: province strip dùng page-grid riêng + vuốt mobile/drag PC/wheel mượt. */
    .alogiare-home .alogiare-province-strip--controlled{
        --alo-province-gap:8px;
        --alo-province-rows-current:var(--alo-province-rows-pc,1);
        --alo-province-items-current:var(--alo-province-items-pc,13);
        --alo-province-title-lines-current:var(--alo-province-title-lines-pc,1);
    }

    .alogiare-home .alogiare-province-controlled.alogiare-swiper{
        position:relative !important;
        width:100% !important;
        max-width:100% !important;
        overflow:hidden !important;
        padding:0 0 2px !important;
        margin:0 !important;
        box-sizing:border-box !important;
        touch-action:pan-y !important;
        cursor:grab !important;
        user-select:none !important;
        -webkit-user-select:none !important;
        overscroll-behavior:contain !important;
    }

    .alogiare-home .alogiare-province-controlled.alogiare-swiper.swiper-grabbing{
        cursor:grabbing !important;
    }

    .alogiare-home .alogiare-province-source{
        display:none !important;
    }

    .alogiare-home .alogiare-province-controlled .swiper-wrapper{
        display:flex !important;
        align-items:stretch !important;
        width:100% !important;
        min-width:0 !important;
        gap:0 !important;
        margin:0 !important;
        padding:0 !important;
    }

    .alogiare-home .alogiare-province-controlled .swiper-slide.alogiare-province-page-slide{
        width:100% !important;
        min-width:100% !important;
        max-width:100% !important;
        flex:0 0 100% !important;
        height:auto !important;
        box-sizing:border-box !important;
    }

    /* PATCH 120.9: trang cuối của strip chỉ rộng bằng số item còn lại trên PC.
       Khi kéo/scroll tới cuối sẽ dừng ở item cuối, không lộ mảng trắng lớn bên phải. */
    .alogiare-home .alogiare-province-controlled .swiper-slide.alogiare-province-page-slide.alo-province-fit-last{
        width:var(--alo-province-fit-width, 100%) !important;
        min-width:var(--alo-province-fit-width, 100%) !important;
        max-width:var(--alo-province-fit-width, 100%) !important;
        flex:0 0 var(--alo-province-fit-width, 100%) !important;
    }

    .alogiare-home .alogiare-province-controlled .swiper-slide.alogiare-province-page-slide.alo-province-fit-last .alogiare-province-page{
        grid-template-columns:repeat(var(--alo-province-fit-cols, var(--alo-province-items-current)), minmax(0,1fr)) !important;
    }

    .alogiare-home .alogiare-province-page{
        width:100% !important;
        display:grid !important;
        grid-template-columns:repeat(var(--alo-province-items-current), minmax(0,1fr)) !important;
        gap:var(--alo-province-gap) !important;
        align-items:start !important;
        justify-items:center !important;
        box-sizing:border-box !important;
    }

    .alogiare-home .alogiare-province-controlled .alogiare-province-card{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        flex:none !important;
        margin:0 !important;
        padding:0 !important;
        box-sizing:border-box !important;
    }

    .alogiare-home .alogiare-province-controlled .alogiare-province-card a{
        position:relative !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:flex-start !important;
        width:100% !important;
        min-width:0 !important;
        text-align:center !important;
        text-decoration:none !important;
        color:#000 !important;
        font-weight:600 !important;
        line-height:1.28 !important;
        overflow:visible !important;
    }

    .alogiare-home .alogiare-province-controlled .alogiare-province-img{
        position:relative !important;
        width:min(100%,108px) !important;
        max-width:108px !important;
        aspect-ratio:1 / 1 !important;
        height:auto !important;
        margin:0 auto 6px !important;
        border:1px solid #e3e3e3 !important;
        border-radius:8px !important;
        overflow:hidden !important;
        background:#fff !important;
        box-sizing:border-box !important;
        isolation:isolate !important;
    }

    .alogiare-home .alogiare-province-controlled .alogiare-province-img:before{
        display:none !important;
        content:none !important;
    }

    .alogiare-home .alogiare-province-controlled .alogiare-province-img img{
        position:absolute !important;
        inset:0 !important;
        z-index:1 !important;
        display:block !important;
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
        pointer-events:none !important;
        user-select:none !important;
        -webkit-user-select:none !important;
        -webkit-user-drag:none !important;
    }

    /* ALO_108.5: badge item nổi bật hiển thị cố định ở góc trên bên phải ảnh. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-img .alogiare-province-badge,
    .alogiare-home .alogiare-province-controlled .alo-featured-strip-badge,
    .alogiare-home .alogiare-province-badge,
    .alogiare-home .alo-featured-strip-badge{
        position:absolute !important;
        top:5px !important;
        right:5px !important;
        left:auto !important;
        bottom:auto !important;
        z-index:20 !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        max-width:calc(100% - 10px) !important;
        min-height:19px !important;
        padding:3px 7px !important;
        border-radius:999px !important;
        background:var(--alo-strip-badge-bg,#ef4444) !important;
        color:var(--alo-strip-badge-color,#fff) !important;
        font-size:10px !important;
        font-weight:800 !important;
        line-height:1 !important;
        letter-spacing:.01em !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        box-shadow:0 6px 14px rgba(15,23,42,.20) !important;
        pointer-events:none !important;
        font-style:normal !important;
        text-decoration:none !important;
        transform:none !important;
    }


    /* ALO PRICE BADGE PATCH V2: nhãn giá vàng nằm góc dưới bên phải trong ảnh, badge trên giữ nguyên vị trí cũ. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > span.alo-price-hard,
    .alogiare-home .alogiare-province-controlled .alogiare-province-img > span.alo-price-hard,
    .alogiare-home .alogiare-service-card a > span.alo-price-hard,
    .alogiare-home .alogiare-service-img > span.alo-price-hard,
    .alogiare-home [data-alo-price-hard="1"]{
        position:absolute!important;
        top:auto!important;
        right:4px!important;
        left:auto!important;
        bottom:4px!important;
        z-index:2147483646!important;
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:auto!important;
        min-width:54px!important;
        max-width:calc(100% - 8px)!important;
        min-height:18px!important;
        height:auto!important;
        margin:0!important;
        padding:3px 6px!important;
        border-radius:6px!important;
        background:#ffd600!important;
        color:#000000!important;
        font-size:10px!important;
        font-weight:900!important;
        line-height:1!important;
        letter-spacing:0!important;
        text-align:center!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        opacity:1!important;
        visibility:visible!important;
        pointer-events:none!important;
        box-shadow:0 6px 14px rgba(15,23,42,.18)!important;
        transform:none!important;
        text-decoration:none!important;
        font-style:normal!important;
        -webkit-line-clamp:unset!important;
        -webkit-box-orient:unset!important;
        -webkit-text-fill-color:#000000!important;
        clip:auto!important;
        clip-path:none!important;
    }

    /* ALO_108.4: ép ảnh item dải link nổi bật luôn render rõ, kể cả ảnh admin mới upload. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-img img,
    .alogiare-home .alogiare-province-img img{
        opacity:1 !important;
        visibility:visible !important;
    }

    /* ALO_108.6: chỉ style span tiêu đề, không đè lên badge Hot/Sale. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > span:not(.alogiare-province-badge):not(.alo-featured-strip-badge):not(.alo-price-hard),
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > .alogiare-province-title{
        display:-webkit-box !important;
        -webkit-box-orient:vertical !important;
        -webkit-line-clamp:var(--alo-province-title-lines-current) !important;
        width:100% !important;
        max-width:128px !important;
        margin:0 auto !important;
        white-space:normal !important;
        overflow:hidden !important;
        text-overflow:clip !important;
        text-align:center !important;
        line-height:1.28 !important;
        min-height:calc(1.28em * var(--alo-province-title-lines-current));
        word-break:normal !important;
        overflow-wrap:anywhere !important;
    }

    /* ALO_108.6: đặt lại badge sau selector title để tránh bị span title override. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-img > .alogiare-province-badge,
    .alogiare-home .alogiare-province-controlled .alogiare-province-img > .alo-featured-strip-badge,
    .alogiare-home .alogiare-province-controlled [data-alo-strip-badge="1"]{
        position:absolute !important;
        top:5px !important;
        right:5px !important;
        left:auto !important;
        bottom:auto !important;
        z-index:50 !important;
        display:inline-flex !important;
        width:auto !important;
        max-width:calc(100% - 10px) !important;
        min-width:0 !important;
        min-height:19px !important;
        margin:0 !important;
        padding:3px 7px !important;
        border-radius:999px !important;
        background:var(--alo-strip-badge-bg,#ef4444) !important;
        color:var(--alo-strip-badge-color,#fff) !important;
        align-items:center !important;
        justify-content:center !important;
        font-size:10px !important;
        font-weight:800 !important;
        line-height:1 !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        box-shadow:0 6px 14px rgba(15,23,42,.20) !important;
        pointer-events:none !important;
        font-style:normal !important;
        text-decoration:none !important;
        transform:none !important;
        -webkit-line-clamp:unset !important;
        -webkit-box-orient:unset !important;
    }

    /* ALO_108.7: fallback cứng bằng pseudo-element, không phụ thuộc span badge/Swiper clone. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-img[data-badge-text]::after,
    .alogiare-home .alogiare-province-img[data-badge-text]::after{
        content:attr(data-badge-text) !important;
        position:absolute !important;
        top:5px !important;
        right:5px !important;
        left:auto !important;
        bottom:auto !important;
        z-index:80 !important;
        display:inline-flex !important;
        width:auto !important;
        max-width:calc(100% - 10px) !important;
        min-width:0 !important;
        min-height:19px !important;
        margin:0 !important;
        padding:3px 7px !important;
        border-radius:999px !important;
        background:var(--alo-strip-badge-bg,#ef4444) !important;
        color:var(--alo-strip-badge-color,#ffffff) !important;
        align-items:center !important;
        justify-content:center !important;
        font-size:10px !important;
        font-weight:800 !important;
        line-height:1 !important;
        letter-spacing:.01em !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        box-shadow:0 6px 14px rgba(15,23,42,.20) !important;
        pointer-events:none !important;
        font-style:normal !important;
        text-decoration:none !important;
        transform:none !important;
    }

    .alogiare-home .alogiare-province-controlled .alogiare-province-img[data-badge-text] > .alogiare-province-badge,
    .alogiare-home .alogiare-province-controlled .alogiare-province-img[data-badge-text] > .alo-featured-strip-badge{
        display:none !important;
    }


    /* ALO_108.8: badge cho Menu ngành nổi bật, giữ layout cũ nhưng cho nhãn nằm góc trên phải ảnh. */
    .alogiare-home .alogiare-service-img{
        position:relative !important;
        overflow:hidden !important;
    }

    .alogiare-home .alogiare-service-img[data-badge-text]::after{
        content:attr(data-badge-text) !important;
        position:absolute !important;
        top:5px !important;
        right:5px !important;
        left:auto !important;
        bottom:auto !important;
        z-index:80 !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        max-width:calc(100% - 10px) !important;
        min-height:18px !important;
        padding:3px 7px !important;
        border-radius:999px !important;
        background:var(--alo-strip-badge-bg,#ef4444) !important;
        color:var(--alo-strip-badge-color,#ffffff) !important;
        font-size:10px !important;
        font-weight:800 !important;
        line-height:1 !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        box-shadow:0 6px 14px rgba(15,23,42,.20) !important;
        pointer-events:none !important;
        font-style:normal !important;
        text-decoration:none !important;
    }


    /* ALO_119.1: Badge admin nhập hiển thị bằng span thật, tránh pseudo-element bị clone/Swiper làm mất nhãn. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-img[data-badge-text]::after,
    .alogiare-home .alogiare-province-img[data-badge-text]::after,
    .alogiare-home .alogiare-service-img[data-badge-text]::after{
        content:none!important;
        display:none!important;
    }
    .alogiare-home .alogiare-province-controlled .alogiare-province-img[data-badge-text] > .alogiare-province-badge,
    .alogiare-home .alogiare-province-controlled .alogiare-province-img[data-badge-text] > .alo-featured-strip-badge,
    .alogiare-home .alogiare-province-img[data-badge-text] > .alogiare-province-badge,
    .alogiare-home .alogiare-service-img[data-badge-text] > .alogiare-service-badge,
    .alogiare-home .alogiare-service-img[data-badge-text] > .alo-featured-strip-badge{
        position:absolute!important;
        top:5px!important;
        right:5px!important;
        left:auto!important;
        bottom:auto!important;
        z-index:90!important;
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        max-width:calc(100% - 10px)!important;
        min-height:19px!important;
        padding:3px 7px!important;
        border-radius:999px!important;
        background:var(--alo-strip-badge-bg,#ef4444)!important;
        color:var(--alo-strip-badge-color,#fff)!important;
        font-size:10px!important;
        font-weight:800!important;
        line-height:1!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        box-shadow:0 6px 14px rgba(15,23,42,.20)!important;
        pointer-events:none!important;
        text-decoration:none!important;
    }


    /* ALO 122.1: khóa nhãn giá đúng góc dưới phải trong ảnh, không nhảy xuống dưới tiêu đề. */
    .alogiare-home .alogiare-province-img,
    .alogiare-home .alogiare-service-img{
        position:relative!important;
        overflow:hidden!important;
    }
    .alogiare-home .alogiare-province-img > .alo-price-hard,
    .alogiare-home .alogiare-service-img > .alo-price-hard{
        top:auto!important;
        right:4px!important;
        bottom:4px!important;
        left:auto!important;
        z-index:95!important;
        background:#ffd600!important;
        color:#000!important;
        border:1px solid rgba(0,0,0,.08)!important;
    }

    @media (max-width: 991.98px){
        .alogiare-home .alogiare-province-strip--controlled{
            --alo-province-rows-current:var(--alo-province-rows-mb,1);
            --alo-province-items-current:var(--alo-province-items-mb,5);
            --alo-province-title-lines-current:var(--alo-province-title-lines-mb,2);
        }
        .alogiare-home .alogiare-province-strip--controlled .alogiare-nav-btn{
            display:none !important;
        }
        .alogiare-home .alogiare-province-controlled .alogiare-province-img{
            width:min(100%,88px) !important;
            max-width:88px !important;
            border-radius:10px !important;
        }
        .alogiare-home .alogiare-province-controlled .alogiare-province-card a{
            font-size:13px !important;
        }
        .alogiare-home .alogiare-province-controlled .alogiare-province-card a > span:not(.alogiare-province-badge):not(.alo-featured-strip-badge):not(.alo-price-hard),
        .alogiare-home .alogiare-province-controlled .alogiare-province-card a > .alogiare-province-title{
            max-width:92px !important;
        }
        .alogiare-home .alogiare-province-controlled .alogiare-province-img > .alogiare-province-badge,
        .alogiare-home .alogiare-province-controlled .alogiare-province-img > .alo-featured-strip-badge{
            top:4px !important;
            right:4px !important;
            min-height:17px !important;
            padding:2px 6px !important;
            font-size:9px !important;
        }
    }

    .alogiare-home .alogiare-service-swiper .swiper-wrapper,
    .alogiare-home .alogiare-category-swiper .swiper-wrapper,
    .alogiare-home .alogiare-vip-swiper .swiper-wrapper{
        display:flex !important;
        align-items:stretch !important;
        gap:0 !important;
        margin-left:0 !important;
        padding-left:0 !important;
    }

    .alogiare-home .alogiare-service-swiper .swiper-slide,
    .alogiare-home .alogiare-category-swiper .swiper-slide{
        width:var(--alogiare-mobile-icon-w) !important;
        flex:0 0 var(--alogiare-mobile-icon-w) !important;
        margin-left:0 !important;
        margin-right:var(--alogiare-mobile-slide-gap) !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    .alogiare-home .alogiare-vip-swiper .swiper-slide{
        width:var(--alogiare-mobile-vip-w) !important;
        flex:0 0 var(--alogiare-mobile-vip-w) !important;
        margin-left:0 !important;
        margin-right:var(--alogiare-mobile-slide-gap) !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    .alogiare-home .alogiare-service-source-card,
    .alogiare-home .alogiare-category-card,
    .alogiare-home .alogiare-service-card,
    .alogiare-home .alogiare-cat-link,
    .alogiare-home .homeGrid16Item,
    .alogiare-home .alogiare-vip-item{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    .alogiare-home .alogiare-vip-img,
    .alogiare-home .homeGrid16Img{
        width:100% !important;
        max-width:100% !important;
        height:auto !important;
        aspect-ratio:1/1 !important;
        margin-left:0 !important;
        margin-right:0 !important;
        object-fit:cover !important;
    }

    .alogiare-home .alogiare-vip-text,
    .alogiare-home .homeGrid16Text{
        width:100% !important;
        max-width:100% !important;
        text-align:center !important;
    }


    /* FIX FINAL: service/category/vip mobile chạy giống province strip - native horizontal, không page grid */
    .alogiare-home .alogiare-service-swiper,
    .alogiare-home .alogiare-category-swiper,
    .alogiare-home .alogiare-vip-swiper{
        overflow-x:auto !important;
        overflow-y:hidden !important;
        -webkit-overflow-scrolling:touch !important;
        scrollbar-width:none !important;
        touch-action:pan-x !important;
    }
    .alogiare-home .alogiare-service-swiper::-webkit-scrollbar,
    .alogiare-home .alogiare-category-swiper::-webkit-scrollbar,
    .alogiare-home .alogiare-vip-swiper::-webkit-scrollbar{
        display:none !important;
    }
    .alogiare-home .alogiare-service-swiper .swiper-wrapper,
    .alogiare-home .alogiare-category-swiper .swiper-wrapper,
    .alogiare-home .alogiare-vip-swiper .swiper-wrapper{
        width:max-content !important;
        min-width:max-content !important;
        display:flex !important;
        flex-wrap:nowrap !important;
        gap:var(--alogiare-mobile-slide-gap) !important;
        transform:none !important;
        margin-left:0 !important;
        padding-left:0 !important;
        justify-content:flex-start !important;
    }
    .alogiare-home .alogiare-service-swiper .swiper-slide,
    .alogiare-home .alogiare-category-swiper .swiper-slide,
    .alogiare-home .alogiare-vip-swiper .swiper-slide{
        flex:0 0 auto !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
    }
    .alogiare-home .alogiare-service-swiper .swiper-slide{width:var(--alogiare-mobile-icon-w) !important;}
    .alogiare-home .alogiare-category-swiper .swiper-slide{width:var(--alogiare-mobile-icon-w) !important;}
    .alogiare-home .alogiare-vip-swiper .swiper-slide{width:var(--alogiare-mobile-vip-w) !important;}
    .alogiare-home .alogiare-service-page,
    .alogiare-home .alogiare-category-page{
        min-width:0 !important;
    }

    .header-wow-top > .container,
    .header-wow-sticky > .container,
    .header-wow-top .container,
    .header-wow-sticky .container{
        width:100% !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding-left:2px !important;
        padding-right:2px !important;
        box-sizing:border-box !important;
    }
	
	
	/* FIX SERVICE + CATEGORY: item đầu bám sát mép trái như province */
.alogiare-home .alogiare-service-swiper .swiper-wrapper,
.alogiare-home .alogiare-category-swiper .swiper-wrapper{
    margin-left:0 !important;
    padding-left:0 !important;
    transform:translate3d(0,0,0) !important;
}

.alogiare-home .alogiare-service-swiper .swiper-slide:first-child,
.alogiare-home .alogiare-category-swiper .swiper-slide:first-child{
    margin-left:0 !important;
    padding-left:0 !important;
}

.alogiare-home .alogiare-service-card,
.alogiare-home .alogiare-category-card,
.alogiare-home .subMenuSlider__subMenuSliderItem{
    margin-left:0 !important;
    padding-left:0 !important;
}
	
	
	
	
	/* FIX CUỐI: kéo item thật của service/category sát mép trái */
.alogiare-home .alogiare-service-free-slide,
.alogiare-home .alogiare-category-free-slide{
    width:74px !important;
    flex:0 0 74px !important;
    margin-left:0 !important;
    margin-right:8px !important;
    padding-left:0 !important;
    padding-right:0 !important;
}

.alogiare-home .alogiare-service-free-slide .alogiare-service-source-card,
.alogiare-home .alogiare-category-free-slide .alogiare-category-card{
    width:74px !important;
    max-width:74px !important;
    margin:0 !important;
    padding:0 !important;
}

/* category title giữ chuẩn, chỉ kéo swiper */
.alogiare-home .alogiare-categories > .alogiare-container{
    padding-left:10px !important;
    padding-right:10px !important;
}

.alogiare-home .alogiare-category-swiper{
    margin-left:-8px !important;
    width:calc(100% + 8px) !important;
}
	
	/* service title giữ chuẩn, chỉ kéo swiper */
.alogiare-home .alogiare-service-strip .home__subMenuWrapper{
    padding-left:10px !important;
    padding-right:10px !important;
}

.alogiare-home .alogiare-service-swiper{
    margin-left:-8px !important;
    width:calc(100% + 8px) !important;
}
	
	
	
	/* FIX: mobile ăn đúng số dòng setup trong admin */
.alogiare-home .alogiare-service-swiper .swiper-wrapper{
    display:grid !important;
    grid-auto-flow:column !important;
    grid-template-rows:repeat(var(--alogiare-service-mobile-rows), auto) !important;
    grid-auto-columns:74px !important;
    gap:8px !important;
    width:max-content !important;
    min-width:max-content !important;
}

.alogiare-home .alogiare-category-swiper .swiper-wrapper{
    display:grid !important;
    grid-auto-flow:column !important;
    grid-template-rows:repeat(var(--alogiare-cat-mobile-rows), auto) !important;
    grid-auto-columns:74px !important;
    gap:8px !important;
    width:max-content !important;
    min-width:max-content !important;
}

.alogiare-home .alogiare-service-free-slide,
.alogiare-home .alogiare-category-free-slide{
    width:74px !important;
    margin:0 !important;
}
	
}
	
	
@media(min-width:992px){
    .alogiare-home .alogiare-home-ad-after-slider{
        margin-bottom:16px!important;
    }
}	

@media (min-width: 576px) and (max-width: 991.98px){
    .alogiare-home .alogiare-province-strip > .alogiare-container,
    .alogiare-home .alogiare-province-strip > .alogiare-container-fluid,
    .alogiare-home .alogiare-service-strip > .alogiare-container,
    .alogiare-home .alogiare-service-strip .home__subMenuWrapper,
    .alogiare-home .alogiare-categories > .alogiare-container,
    .alogiare-home .alogiare-vip > .alogiare-container,
    .alogiare-home .alogiare-vip .gridAds__wrapper,
    .alogiare-home .alogiare-latest-listings > .alogiare-container,
    .alogiare-home .alogiare-listings > .alogiare-container,
    .alogiare-home .alogiare-seo > .alogiare-container{
        padding-left: 4px !important;
        padding-right: 4px !important;
    }
}

	
	
	
	
	
	
	/* CLEAN HOME MOBILE SPACING - 11/05/2026
   Chỉ xử lý khoảng cách các khối/banner trên mobile, không ảnh hưởng desktop.
   Mục tiêu: bỏ CSS vá chồng, gom spacing về một nơi duy nhất.
*/
.alogiare-home .alogiare-service-strip,
.alogiare-home .alogiare-categories,
.alogiare-home .alogiare-vip,
.alogiare-home .alogiare-latest-listings{
    margin-top:0 !important;
    padding-top:0 !important;
}

.alogiare-home .alogiare-home-ad{
    box-sizing:border-box !important;
}

.alogiare-home .alogiare-home-ad:empty{
    display:none !important;
    margin:0 !important;
    padding:0 !important;
    height:0 !important;
    min-height:0 !important;
}

.alogiare-home .alogiare-home-ad .front-banner{
    width:100% !important;
    max-width:100% !important;
    aspect-ratio:auto !important;
    background:transparent !important;
    overflow:hidden !important;
    border-radius:12px !important;
}

.alogiare-home .alogiare-home-ad .front-banner img,
.alogiare-home .alogiare-home-ad .front-banner-script,
.alogiare-home .alogiare-home-ad ins.adsbygoogle{
    width:100% !important;
    max-width:100% !important;
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:12px !important;
    overflow:hidden !important;
}

.alogiare-home .alogiare-home-ad .front-banner img{
    height:auto !important;
    object-fit:cover !important;
}

@media(max-width:575.98px){
    .alogiare-home .alogiare-service-strip,
    .alogiare-home .alogiare-categories,
    .alogiare-home .alogiare-vip,
    .alogiare-home .alogiare-latest-listings{
        margin-top:25px !important;
        margin-bottom:8px !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
    }

    .alogiare-home .alogiare-service-strip:has(+ .alogiare-home-ad),
    .alogiare-home .alogiare-vip:has(+ .alogiare-home-ad),
    .alogiare-home .alogiare-latest-listings:has(+ .alogiare-home-ad){
        margin-bottom:0 !important;
        padding-bottom:0 !important;
    }

    .alogiare-home .alogiare-home-ad{
        margin:4px auto 8px !important;
        padding-left:10px !important;
        padding-right:10px !important;
    }

    .alogiare-home .alogiare-home-ad-after-slider,
    .alogiare-home .alogiare-home-ad-after-vip,
    .alogiare-home .alogiare-home-ad-after-latest{
        margin-top:4px !important;
    }

    .alogiare-home .alogiare-vip .gridAds__wrapper,
    .alogiare-home .alogiare-vip-swiper,
    .alogiare-home .alogiare-vip-swiper .swiper-wrapper,
    .alogiare-home .alogiare-vip-swiper .swiper-slide{
        margin-bottom:0 !important;
        padding-bottom:0 !important;
    }

    .alogiare-home .homeGrid16Pagination{
        display:none !important;
        height:0 !important;
        margin:0 !important;
        padding:0 !important;
    }
}
	
@media(max-width:575.98px){
    .alogiare-home .alogiare-service-strip{
        margin-top:8px!important;
    }
}
	
@media(min-width:992px){
    .alogiare-home .alogiare-service-strip{
        margin-top:16px!important;
    }
}	
	
	
	
@media(min-width:992px){
    .alogiare-home .alogiare-vip{
        margin-bottom:12px!important;
        padding-bottom:0!important;
    }

    .alogiare-home .alogiare-vip .gridAds__wrapper,
    .alogiare-home .alogiare-vip-swiper,
    .alogiare-home .homeGrid16Pagination{
        margin-bottom:0!important;
        padding-bottom:0!important;
    }

    .alogiare-home .alogiare-home-ad-after-vip{
        margin-top:12!important;
    }
}
	
	
@media(min-width:992px){
    .alogiare-home .alogiare-latest-listings{
        margin-top:30px!important;
    }
}	
	
	
@media(min-width:992px){
    .alogiare-home .alogiare-categories{
        margin-top:30px!important;
    }
}	
	

@media(min-width:992px){
    .alogiare-home .alogiare-category-swiper .swiper-wrapper{width:100%!important;min-width:0!important;display:flex!important;flex-wrap:nowrap!important;gap:0!important;transform:translate3d(0,0,0);}
    /* Để Swiper tự set width theo data-per-row trong Admin > Dàn trang chủ. Không ép width:auto vì sẽ làm item/dòng không ăn. */
    .alogiare-home .alogiare-category-swiper .swiper-slide.alogiare-category-one-slide{margin:0!important;padding:0!important;box-sizing:border-box!important;}
    .alogiare-home .alogiare-category-swiper .alogiare-category-card{width:86px!important;max-width:86px!important;margin:0 auto!important;padding:0!important;}
}

/* PATCH alogiare_232: PC category grid ăn đúng số dòng hiển thị trong Admin > Dàn trang chủ */
@media(min-width:992px){
    .alogiare-home .alogiare-category-swiper .swiper-wrapper{
        display:flex!important;
        flex-wrap:nowrap!important;
        align-items:stretch!important;
        width:100%!important;
        min-width:0!important;
        gap:0!important;
    }
    .alogiare-home .alogiare-category-swiper .swiper-slide.alogiare-category-page-slide{
        width:100%!important;
        flex:0 0 100%!important;
        margin:0!important;
        padding:0!important;
        box-sizing:border-box!important;
    }
    /* ALO_122.46: taxonomy danh mục PC không kéo sang trang trắng ở page cuối.
       Slide cuối ít item sẽ co đúng tới item cuối; nếu chỉ có 1 page thì ẩn nút next/prev. */
    .alogiare-home .alogiare-category-swiper.alogiare-category-swiper--single-page .alogiare-nav-btn{
        display:none!important;
    }
    .alogiare-home .alogiare-category-swiper .swiper-slide.alogiare-category-page-slide--partial{
        width:var(--alo-cat-partial-width,100%)!important;
        flex:0 0 var(--alo-cat-partial-width,100%)!important;
        max-width:100%!important;
    }
    .alogiare-home .alogiare-category-swiper .swiper-slide.alogiare-category-page-slide--partial .alogiare-category-page{
        grid-template-columns:repeat(var(--alo-cat-partial-cols,var(--dt-cat-per-row-current,8)), minmax(0,1fr))!important;
    }
    .alogiare-home .alogiare-category-swiper.alogiare-category-swiper--single-page{
        width:max-content!important;
        max-width:100%!important;
        overflow:visible!important;
        padding-right:0!important;
    }
    .alogiare-home .alogiare-category-swiper.alogiare-category-swiper--single-page .swiper-wrapper{
        width:max-content!important;
        min-width:0!important;
        max-width:100%!important;
        transform:none!important;
        display:flex!important;
        gap:0!important;
    }
    .alogiare-home .alogiare-category-swiper.alogiare-category-swiper--single-page .swiper-slide.alogiare-category-page-slide,
    .alogiare-home .alogiare-category-swiper.alogiare-category-swiper--single-page .swiper-slide.alogiare-category-page-slide--partial{
        width:auto!important;
        flex:0 0 auto!important;
        max-width:100%!important;
    }
    .alogiare-home .alogiare-category-swiper.alogiare-category-swiper--single-page .alogiare-category-page{
        width:max-content!important;
        max-width:100%!important;
        grid-template-columns:repeat(var(--alo-cat-static-cols,1), minmax(var(--alo-cat-static-card-width,126px), var(--alo-cat-static-card-width,126px)))!important;
        gap:18px!important;
    }
    .alogiare-home .alogiare-category-page{
        width:100%!important;
        display:grid!important;
        grid-template-columns:repeat(var(--dt-cat-per-row-current, 8), minmax(0, 1fr))!important;
        grid-auto-rows:auto!important;
        gap:18px 18px!important;
        align-items:start!important;
    }
    .alogiare-home .alogiare-category-page .alogiare-category-card{
        width:100%!important;
        max-width:100%!important;
        margin:0 auto!important;
        padding:0!important;
    }
    .alogiare-home .alogiare-category-page .alogiare-cat-link{
        width:100%!important;
        max-width:100%!important;
        margin:0 auto!important;
        padding:0!important;
    }
}

/* ALO_122.48: Fix các item taxonomy PC bị dính nhau ở ranh giới giữa 2 page swiper.
   Nguyên nhân: các rule cũ ép .swiper-slide margin:0!important nên Swiper không tạo được khoảng cách
   giữa page cuối của nhóm trước và page đầu của nhóm sau. Chỉ xử lý taxonomy danh mục trang chủ. */
@media(min-width:992px){
    .alogiare-home .alogiare-category-swiper:not(.alogiare-category-swiper--single-page) .swiper-slide.alogiare-category-page-slide,
    .alogiare-home .alogiare-category-swiper:not(.alogiare-category-swiper--single-page) .swiper-slide.alogiare-category-page-slide--partial{
        margin-right:18px!important;
    }
    .alogiare-home .alogiare-category-swiper:not(.alogiare-category-swiper--single-page) .swiper-slide.alogiare-category-page-slide:last-child,
    .alogiare-home .alogiare-category-swiper:not(.alogiare-category-swiper--single-page) .swiper-slide.alogiare-category-page-slide--partial:last-child{
        margin-right:0!important;
    }
    .alogiare-home .alogiare-category-swiper:not(.alogiare-category-swiper--single-page) .alogiare-category-page{
        column-gap:18px!important;
        row-gap:18px!important;
    }
}

/* PATCH alogiare_232: PC kéo chuột danh mục mượt hơn */
@media(min-width:992px){
    .alogiare-home .alogiare-category-swiper{
        cursor:grab!important;
        touch-action:pan-y!important;
        user-select:none!important;
    }
    .alogiare-home .alogiare-category-swiper:active{
        cursor:grabbing!important;
    }
    .alogiare-home .alogiare-category-swiper .swiper-wrapper{
        will-change:transform!important;
    }
    .alogiare-home .alogiare-category-swiper .alogiare-cat-link,
    .alogiare-home .alogiare-category-swiper img{
        -webkit-user-drag:none!important;
        user-drag:none!important;
        user-select:none!important;
    }
}


    /* ALO FIX 20260701: 2 khối external hiển thị đồng bộ.
       - alogiare_province_strip: badge trên + giá vàng nằm gọn trong ảnh.
       - alogiare_service_menu: hiển thị badge/giá giống province nhưng nhỏ hơn một chút.
       - Chống item cuối bị trôi badge/giá ra ngoài do swiper clone / CSS global. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-img,
    .alogiare-home .alogiare-service-card .alogiare-service-img{
        position:relative!important;
        overflow:hidden!important;
        isolation:isolate!important;
        background:#fff!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-card .alogiare-service-img{
        width:100%!important;
        max-width:none!important;
        aspect-ratio:1/1!important;
        height:auto!important;
        margin:0 auto 6px!important;
        border:1px solid #e5e7eb!important;
        border-radius:8px!important;
    }
    .alogiare-home .alogiare-service-card .alogiare-service-img img{
        position:absolute!important;
        inset:0!important;
        z-index:1!important;
        display:block!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        pointer-events:none!important;
        user-select:none!important;
        -webkit-user-drag:none!important;
    }
    .alogiare-home .alogiare-province-controlled .alogiare-province-img > [data-alo-badge-hard="1"],
    .alogiare-home .alogiare-service-card .alogiare-service-img > [data-alo-badge-hard="1"]{
        position:absolute!important;
        top:4px!important;
        right:4px!important;
        left:auto!important;
        bottom:auto!important;
        z-index:30!important;
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:auto!important;
        min-width:0!important;
        max-width:calc(100% - 8px)!important;
        min-height:18px!important;
        margin:0!important;
        padding:3px 6px!important;
        border-radius:999px!important;
        background:var(--alo-strip-badge-bg,#ef4444)!important;
        color:var(--alo-strip-badge-color,#fff)!important;
        font-size:10px!important;
        font-weight:900!important;
        line-height:1!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        pointer-events:none!important;
        transform:none!important;
        clip:auto!important;
        clip-path:none!important;
    }
    .alogiare-home .alogiare-province-controlled .alogiare-province-img > [data-alo-price-hard="1"],
    .alogiare-home .alogiare-service-card .alogiare-service-img > [data-alo-price-hard="1"]{
        position:absolute!important;
        top:auto!important;
        right:4px!important;
        left:auto!important;
        bottom:4px!important;
        z-index:29!important;
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:auto!important;
        min-width:54px!important;
        max-width:calc(100% - 8px)!important;
        min-height:18px!important;
        height:auto!important;
        margin:0!important;
        padding:3px 6px!important;
        border-radius:6px!important;
        background:#ffd600!important;
        color:#000!important;
        font-size:10px!important;
        font-weight:900!important;
        line-height:1!important;
        text-align:center!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        pointer-events:none!important;
        transform:none!important;
        clip:auto!important;
        clip-path:none!important;
        -webkit-text-fill-color:#000!important;
    }
    .alogiare-home .alogiare-service-card .alogiare-service-img > [data-alo-badge-hard="1"]{
        top:4px!important;
        right:4px!important;
        min-height:17px!important;
        padding:3px 6px!important;
        font-size:9px!important;
    }
    .alogiare-home .alogiare-service-card .alogiare-service-img > [data-alo-price-hard="1"]{
        right:4px!important;
        bottom:4px!important;
        min-width:48px!important;
        min-height:17px!important;
        padding:3px 5px!important;
        font-size:9px!important;
        border-radius:5px!important;
    }
    .alogiare-home .alogiare-service-card .subMenuSlider__subMenuSliderLink{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        text-decoration:none!important;
        color:#0f172a!important;
    }



/* ALO FIX 20260701 SERVICE MENU ONLY:
   - alogiare_service_menu bám đúng container 1280, không thụt lệch.
   - Không còn khoảng trắng khi kéo đến trang cuối: JS bên dưới sẽ bù item cho đủ page.
   - Ảnh item giữ tỷ lệ vuông 1:1, badge/giá nằm gọn trong ảnh. */
@media (min-width: 992px){
    .alogiare-home .home__containerSubBanner.alogiare-service-strip{
        width:100%!important;
        max-width:100%!important;
        margin:0 auto!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:visible!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .home__containerSubBanner.alogiare-service-strip > .alogiare-container,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip .home__subMenuWrapper{
        width:min(1280px, calc(100% - 32px))!important;
        max-width:1280px!important;
        margin-left:auto!important;
        margin-right:auto!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-wrapper{
        margin-left:0!important;
        padding-left:0!important;
        gap:0!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-slide.alogiare-service-page{
        width:100%!important;
        min-width:100%!important;
        max-width:100%!important;
        margin:0!important;
        padding:0!important;
        flex:0 0 100%!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid{
        width:100%!important;
        display:grid!important;
        grid-template-columns:repeat(var(--dt-service-per-row-current, var(--alogiare-service-per-row, 10)), minmax(0, 1fr))!important;
        column-gap:12px!important;
        row-gap:12px!important;
        justify-content:stretch!important;
        justify-items:stretch!important;
        align-items:start!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-source-card,
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-card{
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .subMenuSlider__subMenuSliderLink{
        width:100%!important;
        max-width:none!important;
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        text-align:center!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-img{
        width:100%!important;
        max-width:none!important;
        aspect-ratio:1/1!important;
        height:auto!important;
        margin:0 0 6px!important;
        border-radius:8px!important;
        overflow:hidden!important;
        position:relative!important;
        background:#fff!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-img img{
        position:absolute!important;
        inset:0!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        display:block!important;
    }
    .alogiare-home .alogiare-service-strip .subMenuSlider__spanText{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        text-align:center!important;
    }
}
@media (max-width: 991.98px){
    .alogiare-home .home__containerSubBanner.alogiare-service-strip > .alogiare-container,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip .home__subMenuWrapper{
        width:100%!important;
        max-width:100%!important;
        padding-left:8px!important;
        padding-right:8px!important;
        margin-left:0!important;
        margin-right:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        overflow:hidden!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid{
        width:100%!important;
        display:grid!important;
        grid-template-columns:repeat(var(--dt-service-per-row-current, var(--alogiare-service-mobile-per-row, 4)), minmax(0, 1fr))!important;
        column-gap:8px!important;
        row-gap:8px!important;
        justify-items:stretch!important;
        align-items:start!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-source-card,
    .alogiare-home .alogiare-service-strip .alogiare-service-card,
    .alogiare-home .alogiare-service-strip .subMenuSlider__subMenuSliderLink{
        width:100%!important;
        max-width:none!important;
        margin-left:0!important;
        margin-right:0!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-img{
        width:100%!important;
        max-width:none!important;
        aspect-ratio:1/1!important;
        height:auto!important;
        margin:0 0 5px!important;
        position:relative!important;
        overflow:hidden!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-img img{
        position:absolute!important;
        inset:0!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
    }
}

/* ALO Step 7: block ưu đãi external/deal trên trang chủ */
.alogiare-deal-section{padding:18px 0 8px;background:#f8fafc;}
.alogiare-deal-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 0 14px;}
.alogiare-deal-head span{display:inline-flex;border-radius:999px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;padding:6px 10px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;}
.alogiare-deal-head h2{margin:8px 0 0;font-size:24px;line-height:1.25;color:#0f172a;font-weight:900;}
.alogiare-deal-head p{margin:4px 0 0;color:#64748b;line-height:1.55;}
.alogiare-deal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.alogiare-deal-card{position:relative;overflow:hidden;border:1px solid #e5e7eb;background:#fff;border-radius:18px;text-decoration:none;color:#0f172a;box-shadow:0 12px 26px rgba(15,23,42,.06);transition:transform .18s ease, box-shadow .18s ease;}
.alogiare-deal-card:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(15,23,42,.10);}
.alogiare-deal-img{height:132px;background:#e2e8f0;overflow:hidden;}
.alogiare-deal-img img{width:100%;height:100%;object-fit:cover;display:block;}
.alogiare-deal-body{padding:13px 14px 14px;display:grid;gap:8px;}
.alogiare-deal-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#64748b;font-size:12px;font-weight:800;}
.alogiare-deal-meta b{color:#f97316;}
.alogiare-deal-title{font-size:15px;line-height:1.38;font-weight:900;color:#0f172a;min-height:42px;}
.alogiare-deal-price{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.alogiare-deal-price strong{color:#dc2626;font-size:16px;}
.alogiare-deal-price small{color:#94a3b8;text-decoration:line-through;}
.alogiare-deal-cta{display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:999px;background:#ffcc00;color:#111827;font-weight:900;margin-top:2px;}
.alogiare-deal-coupon{display:inline-flex;align-items:center;gap:5px;border:1px dashed #f97316;border-radius:999px;color:#9a3412;background:#fff7ed;padding:5px 8px;font-size:12px;font-weight:900;width:max-content;max-width:100%;}
@media(max-width:991.98px){.alogiare-deal-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.alogiare-deal-head{align-items:flex-start;flex-direction:column;}.alogiare-deal-img{height:120px;}}
@media(max-width:575.98px){.alogiare-deal-grid{grid-template-columns:1fr 1fr;gap:10px;}.alogiare-deal-body{padding:10px;}.alogiare-deal-title{font-size:13px;min-height:38px;}.alogiare-deal-cta{min-height:36px;font-size:13px;}.alogiare-deal-img{height:96px;}}


    /* ALO_120.5: FIX CỨNG badge item dải nổi bật.
       Lý do: file public/css/alo-home-default.css có rule a span rất rộng, nó đè span badge thành tiêu đề nên không thấy nhãn. */
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > span:not(.alogiare-province-badge):not(.alo-featured-strip-badge):not(.alo-badge-hard):not(.alo-price-hard),
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > .alogiare-province-title{
        display:-webkit-box!important;
        -webkit-box-orient:vertical!important;
        -webkit-line-clamp:var(--alo-province-title-lines-current)!important;
    }
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > span.alogiare-province-badge,
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > span.alo-featured-strip-badge,
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > span.alo-badge-hard,
    .alogiare-home .alogiare-province-controlled .alogiare-province-img > span.alogiare-province-badge,
    .alogiare-home .alogiare-province-controlled .alogiare-province-img > span.alo-featured-strip-badge,
    .alogiare-home .alogiare-province-controlled .alogiare-province-img > span.alo-badge-hard,
    .alogiare-home .alogiare-service-card a > span.alogiare-service-badge,
    .alogiare-home .alogiare-service-card a > span.alo-featured-strip-badge,
    .alogiare-home .alogiare-service-card a > span.alo-badge-hard,
    .alogiare-home .alogiare-service-img > span.alogiare-service-badge,
    .alogiare-home .alogiare-service-img > span.alo-featured-strip-badge,
    .alogiare-home .alogiare-service-img > span.alo-badge-hard,
    .alogiare-home [data-alo-badge-hard="1"]{
        position:absolute!important;
        top:4px!important;
        right:4px!important;
        left:auto!important;
        bottom:auto!important;
        z-index:2147483647!important;
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:auto!important;
        min-width:54px!important;
        max-width:calc(100% - 8px)!important;
        min-height:18px!important;
        height:auto!important;
        margin:0!important;
        padding:3px 6px!important;
        border-radius:999px!important;
        background:var(--alo-strip-badge-bg,#ef4444)!important;
        color:var(--alo-strip-badge-color,#ffffff)!important;
        font-size:10px!important;
        font-weight:900!important;
        line-height:1!important;
        letter-spacing:0!important;
        text-align:center!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        opacity:1!important;
        visibility:visible!important;
        pointer-events:none!important;
        box-shadow:0 6px 14px rgba(15,23,42,.25)!important;
        transform:none!important;
        text-decoration:none!important;
        font-style:normal!important;
        -webkit-line-clamp:unset!important;
        -webkit-box-orient:unset!important;
        -webkit-text-fill-color:var(--alo-strip-badge-color,#ffffff)!important;
        clip:auto!important;
        clip-path:none!important;
    }
    .alogiare-home .alogiare-province-controlled .alogiare-province-card:hover [data-alo-badge-hard="1"],
    .alogiare-home .alogiare-service-card:hover [data-alo-badge-hard="1"]{
        color:var(--alo-strip-badge-color,#ffffff)!important;
        -webkit-text-fill-color:var(--alo-strip-badge-color,#ffffff)!important;
    }


/* ALO 121.2: đồng bộ trục PC 1280px cho các khối trang chủ, không đụng alogiare_province_strip */
@media(min-width:992px){
    .alogiare-home{
        --alo-home-container-w:1280px;
        overflow-x:hidden!important;
    }

    /* Khung cha trang chủ giữ đúng 1280. Các khối con không được tự trừ thêm 32px nữa. */
    .alogiare-home .home__homeContainer{
        width:min(var(--alo-home-container-w), calc(100% - 32px))!important;
        max-width:var(--alo-home-container-w)!important;
        margin-left:auto!important;
        margin-right:auto!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
        overflow:visible!important;
    }
    .alogiare-home .home__wrapperHome,
    .alogiare-home .alogiare-home-wrapper{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
        overflow:visible!important;
    }

    /* Tất cả khối nội dung dưới đây bám cùng mép trái/phải 1280. */
    .alogiare-home .agr-home-hero--v18-promo-grid,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip,
    .alogiare-home .alogiare-service-strip,
    .alogiare-home .alogiare-categories,
    .alogiare-home .alogiare-vip,
    .alogiare-home .alogiare-latest-listings,
    .alogiare-home .alogiare-listings,
    .alogiare-home .alogiare-seo,
    .alogiare-home .alogiare-deal-section,
    .alogiare-home .alogiare-home-ad{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
    }

    .alogiare-home .agr-home-hero--v18-promo-grid .agr-home-hero__shell,
    .alogiare-home .alogiare-service-strip > .alogiare-container,
    .alogiare-home .alogiare-service-strip .home__subMenuWrapper,
    .alogiare-home .alogiare-categories > .alogiare-container,
    .alogiare-home .alogiare-vip > .alogiare-container,
    .alogiare-home .alogiare-vip .gridAds__wrapper,
    .alogiare-home .alogiare-latest-listings > .alogiare-container,
    .alogiare-home .alogiare-listings > .alogiare-container,
    .alogiare-home .alogiare-seo > .alogiare-container,
    .alogiare-home .alogiare-deal-section > .alogiare-container,
    .alogiare-home .alogiare-deal-section .alogiare-container,
    .alogiare-home .alogiare-home-ad.alogiare-container,
    .alogiare-home .homeGrid16Pagination,
    .alogiare-home .alogiare-category-swiper,
    .alogiare-home .alogiare-vip-swiper,
    .alogiare-home .alogiare-service-swiper{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
    }

    /* Bỏ double padding/margin gây thụt ra thụt vào giữa các khối. */
    .alogiare-home .alogiare-container{
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
    }

    /* Không áp container 1280 lên alogiare_province_strip: giữ đúng chế độ cũ của section này. */
    .alogiare-home .alogiare-province-strip--full{
        width:100vw!important;
        max-width:100vw!important;
        margin-left:calc(50% - 50vw)!important;
        margin-right:calc(50% - 50vw)!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-province-strip--full > .alogiare-container-fluid{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:var(--alogiare-province-full-padding, 10px)!important;
        padding-right:var(--alogiare-province-full-padding, 10px)!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-province-strip--container > .alogiare-container{
        width:min(1200px, calc(100% - 20px))!important;
        max-width:1200px!important;
        margin-left:auto!important;
        margin-right:auto!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
    }
}
@media(min-width:1281px){
    .alogiare-home .home__homeContainer{
        width:1280px!important;
    }
}


/* ALO UX FINAL 2 BLOCKS: province full width, service 1280, ảnh vuông 1:1, số item theo admin */
@media (min-width: 992px){
    .alogiare-home .alogiare-province-strip,
    .alogiare-home .home__containerSubBanner.alogiare-province-strip,
    .alogiare-home .alogiare-province-strip--full,
    .alogiare-home .alogiare-province-strip--container{
        width:100vw!important;
        max-width:100vw!important;
        margin-left:calc(50% - 50vw)!important;
        margin-right:calc(50% - 50vw)!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-province-strip > .alogiare-container,
    .alogiare-home .alogiare-province-strip > .alogiare-container-fluid{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:var(--alogiare-province-full-padding, 8px)!important;
        padding-right:var(--alogiare-province-full-padding, 8px)!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip{
        width:100%!important;
        max-width:100%!important;
        margin-left:auto!important;
        margin-right:auto!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:visible!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip > .alogiare-container,
    .alogiare-home .alogiare-service-strip .home__subMenuWrapper{
        width:min(1280px, calc(100% - 32px))!important;
        max-width:1280px!important;
        margin-left:auto!important;
        margin-right:auto!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-province-page,
    .alogiare-home .alogiare-service-page-grid{
        align-items:start!important;
        justify-items:center!important;
    }
    .alogiare-home .alogiare-service-page-grid{
        width:100%!important;
        display:grid!important;
        grid-template-columns:repeat(var(--dt-service-per-row-current, var(--alogiare-service-per-row, 10)), minmax(0,1fr))!important;
        column-gap:12px!important;
        row-gap:12px!important;
        justify-content:stretch!important;
    }
    .alogiare-home .alogiare-service-page-grid .alogiare-service-source-card,
    .alogiare-home .alogiare-service-page-grid .alogiare-service-card{
        width:100%!important;
        max-width:92px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }
    .alogiare-home .alogiare-service-page-grid .alogiare-service-img{
        width:min(100%,82px)!important;
        max-width:82px!important;
    }
}

.alogiare-home .alogiare-province-img,
.alogiare-home .alogiare-service-img{
    position:relative!important;
    aspect-ratio:1 / 1!important;
    height:auto!important;
    overflow:hidden!important;
    background:#fff!important;
    box-sizing:border-box!important;
}
.alogiare-home .alogiare-province-img img,
.alogiare-home .alogiare-service-img img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
}
.alogiare-home .alogiare-service-card .subMenuSlider__subMenuSliderLink{
    overflow:visible!important;
}
.alogiare-home .alogiare-service-card .subMenuSlider__spanText,
.alogiare-home .alogiare-service-card span:not(.alogiare-service-badge):not(.alo-featured-strip-badge):not(.alo-badge-hard):not(.alo-price-hard){
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
    text-align:center!important;
}

@media (max-width: 991.98px){
    .alogiare-home .alogiare-service-swiper .swiper-wrapper{
        display:flex!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        gap:0!important;
        transform:none;
    }
    .alogiare-home .alogiare-service-swiper .swiper-slide.alogiare-service-page{
        width:100%!important;
        min-width:100%!important;
        max-width:100%!important;
        flex:0 0 100%!important;
        margin:0!important;
        padding:0!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-page-grid{
        width:100%!important;
        display:grid!important;
        grid-template-columns:repeat(var(--dt-service-per-row-current, var(--alogiare-service-mobile-per-row, 4)), minmax(0,1fr))!important;
        column-gap:8px!important;
        row-gap:8px!important;
        justify-items:center!important;
        align-items:start!important;
    }
    .alogiare-home .alogiare-service-page-grid .alogiare-service-card{
        width:100%!important;
        max-width:76px!important;
        margin:0 auto!important;
    }
    .alogiare-home .alogiare-service-page-grid .alogiare-service-img{
        width:min(100%,64px)!important;
        max-width:64px!important;
        aspect-ratio:1 / 1!important;
    }
}


/* ALO 20260701 SERVICE MENU FINAL: riêng khối Menu ngành nổi bật
   - bám full container 1280, không chừa mép trái/phải.
   - item dùng hết bề ngang ô grid.
   - ảnh vuông 1:1 thật, không bị thu nhỏ 64/82px.
   - giữ số item PC/mobile theo cấu hình admin. */
@media (min-width: 992px){
    .alogiare-home .home__containerSubBanner.alogiare-service-strip,
    .alogiare-home .alogiare-service-strip{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:visible!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .home__containerSubBanner.alogiare-service-strip > .alogiare-container,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip .home__subMenuWrapper,
    .alogiare-home .alogiare-service-strip > .alogiare-container,
    .alogiare-home .alogiare-service-strip .home__subMenuWrapper{
        width:100%!important;
        max-width:1280px!important;
        margin-left:auto!important;
        margin-right:auto!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        padding:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .swiper-wrapper{
        margin:0!important;
        padding:0!important;
    }
    .alogiare-home .alogiare-service-strip .swiper-slide.alogiare-service-page{
        width:100%!important;
        min-width:100%!important;
        max-width:100%!important;
        flex:0 0 100%!important;
        margin:0!important;
        padding:0!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        padding:0!important;
        display:grid!important;
        grid-template-columns:repeat(var(--dt-service-per-row-current, var(--alogiare-service-per-row, 10)), minmax(0, 1fr))!important;
        gap:12px!important;
        align-items:start!important;
        justify-items:stretch!important;
        justify-content:stretch!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-source-card,
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-card,
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .subMenuSlider__subMenuSliderItem,
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .subMenuSlider__subMenuSliderLink{
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
        box-sizing:border-box!important;
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        text-align:center!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-img{
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
        flex:0 0 auto!important;
        align-self:stretch!important;
        height:auto!important;
        aspect-ratio:1 / 1!important;
        margin:0 0 7px!important;
        border-radius:8px!important;
        position:relative!important;
        overflow:hidden!important;
        background:#fff!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-img img{
        position:absolute!important;
        inset:0!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        display:block!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .subMenuSlider__spanText{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        text-align:center!important;
        font-size:13px!important;
        line-height:1.25!important;
        font-weight:800!important;
    }
}
@media (max-width: 991.98px){
    .alogiare-home .home__containerSubBanner.alogiare-service-strip > .alogiare-container,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip .home__subMenuWrapper,
    .alogiare-home .alogiare-service-strip > .alogiare-container,
    .alogiare-home .alogiare-service-strip .home__subMenuWrapper{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:8px!important;
        padding-right:8px!important;
        box-sizing:border-box!important;
        overflow:hidden!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid{
        width:100%!important;
        display:grid!important;
        grid-template-columns:repeat(var(--dt-service-per-row-current, var(--alogiare-service-mobile-per-row, 4)), minmax(0, 1fr))!important;
        gap:8px!important;
        justify-items:stretch!important;
        align-items:start!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-card,
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .subMenuSlider__subMenuSliderLink{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
        box-sizing:border-box!important;
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-img{
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
        flex:0 0 auto!important;
        align-self:stretch!important;
        aspect-ratio:1 / 1!important;
        height:auto!important;
        margin:0 0 5px!important;
        position:relative!important;
        overflow:hidden!important;
        background:#fff!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-page-grid .alogiare-service-img img{
        position:absolute!important;
        inset:0!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        display:block!important;
    }
}




@media (min-width: 992px){
    .alogiare-home .alogiare-province-strip--full > .alogiare-container-fluid,
    .alogiare-home .alogiare-province-strip--controlled.alogiare-province-strip--full > .alogiare-container-fluid{
        padding-left:max(var(--alogiare-province-full-padding, 0px), 12px)!important;
        padding-right:max(var(--alogiare-province-full-padding, 0px), 12px)!important;
        box-sizing:border-box!important;
        overflow:hidden!important;
    }
    .alogiare-home .alogiare-province-strip--full .alogiare-province-controlled.alogiare-swiper{
        width:100%!important;
        max-width:100%!important;
        padding-left:0!important;
        padding-right:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-province-strip--full .alogiare-province-controlled .swiper-wrapper{
        margin-left:0!important;
        margin-right:0!important;
    }
    .alogiare-home .alogiare-province-strip--full .alogiare-nav-prev{
        left:8px!important;
    }
    .alogiare-home .alogiare-province-strip--full .alogiare-nav-next{
        right:8px!important;
    }
}
@media (max-width: 991.98px){
    .alogiare-home .alogiare-province-strip--full > .alogiare-container-fluid,
    .alogiare-home .alogiare-province-strip--controlled.alogiare-province-strip--full > .alogiare-container-fluid{
        padding-left:max(var(--alogiare-mobile-edge, 10px), 10px)!important;
        padding-right:max(var(--alogiare-mobile-edge, 10px), 10px)!important;
        box-sizing:border-box!important;
        overflow:hidden!important;
    }
}




.alogiare-home .alogiare-province-strip,
.alogiare-home .alogiare-province-strip *,
.alogiare-home .alogiare-service-strip,
.alogiare-home .alogiare-service-strip *,
.alogiare-home .alogiare-deal-section,
.alogiare-home .alogiare-deal-section *{
    font-family:var(--site-font-family, inherit)!important;
    letter-spacing:0!important;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
.alogiare-home .alogiare-province-controlled .alogiare-province-title,
.alogiare-home .alogiare-province-controlled .alogiare-province-card a > span:not(.alogiare-province-badge):not(.alo-featured-strip-badge):not(.alo-badge-hard):not(.alo-price-hard),
.alogiare-home .alogiare-service-card .subMenuSlider__spanText,
.alogiare-home .alogiare-service-card span:not(.alogiare-service-badge):not(.alo-featured-strip-badge):not(.alo-badge-hard):not(.alo-price-hard){
    font-family:var(--site-font-bold, var(--site-font-family, inherit))!important;
    font-weight:600!important;
    letter-spacing:0!important;
}
.alogiare-home .alogiare-province-badge,
.alogiare-home .alogiare-service-badge,
.alogiare-home .alo-featured-strip-badge,
.alogiare-home .alo-badge-hard,
.alogiare-home [data-alo-badge-hard="1"],
.alogiare-home .alo-price-hard,
.alogiare-home [data-alo-price-hard="1"]{
    font-family:var(--site-font-bold, var(--site-font-family, inherit))!important;
    font-weight:600!important;
    letter-spacing:0!important;
}
@media(max-width:767.98px){
    
    .alogiare-home .alogiare-service-card .subMenuSlider__spanText,
    .alogiare-home .alogiare-province-controlled .alogiare-province-title,
    .alogiare-home .alogiare-province-controlled .alogiare-province-card a > span:not(.alogiare-province-badge):not(.alo-featured-strip-badge):not(.alo-badge-hard):not(.alo-price-hard){
        font-family:var(--site-font-family, Arial, sans-serif)!important;
        font-weight:500!important;
        line-height:1.26!important;
        letter-spacing:-.01em!important;
        word-break:normal!important;
        overflow-wrap:normal!important;
        hyphens:none!important;
        -webkit-font-smoothing:antialiased!important;
        text-rendering:optimizeLegibility!important;
    }
}



/* ALO_SERVICE_MENU_MOBILE_SWIPE_FIX: Mobile dùng native horizontal scroll theo từng item, không khóa 1 page 4 item. */
@media (max-width: 991.98px){
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper{
        overflow-x:auto!important;
        overflow-y:hidden!important;
        -webkit-overflow-scrolling:touch!important;
        touch-action:pan-x!important;
        overscroll-behavior-x:contain!important;
        cursor:grab!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-wrapper{
        width:max-content!important;
        min-width:max-content!important;
        display:flex!important;
        flex-wrap:nowrap!important;
        gap:8px!important;
        transform:none!important;
        transition:none!important;
        align-items:flex-start!important;
        padding-left:0!important;
        padding-right:8px!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-slide.alogiare-service-free-slide{
        width:calc((100vw - 40px) / 4)!important;
        min-width:78px!important;
        max-width:96px!important;
        flex:0 0 calc((100vw - 40px) / 4)!important;
        margin:0!important;
        padding:0!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-slide.alogiare-service-free-slide .alogiare-service-source-card,
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-slide.alogiare-service-free-slide .alogiare-service-card,
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-slide.alogiare-service-free-slide .subMenuSlider__subMenuSliderLink{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
        box-sizing:border-box!important;
    }
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-slide.alogiare-service-free-slide .subMenuSlider__spanText{
        display:-webkit-box!important;
        -webkit-line-clamp:2!important;
        -webkit-box-orient:vertical!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        min-height:34px!important;
        line-height:1.22!important;
        font-size:14px!important;
    }
}


/* ALO_FIX_20260704: Mobile menu ngành nổi bật - title dài hơn nhưng không rớt 3 dòng. */
@media (max-width: 991.98px){
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper .swiper-slide.alogiare-service-free-slide .subMenuSlider__spanText,
    .alogiare-home .alogiare-service-card .subMenuSlider__spanText{
        display:-webkit-box!important;
        -webkit-box-orient:vertical!important;
        -webkit-line-clamp:2!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        white-space:normal!important;
        word-break:normal!important;
        overflow-wrap:normal!important;
        hyphens:none!important;
        font-size:12px!important;
        line-height:1.16!important;
        letter-spacing:-.025em!important;
        font-weight:500!important;
        min-height:28px!important;
        max-height:28px!important;
        width:100%!important;
        max-width:100%!important;
        margin:6px auto 0!important;
        text-align:center!important;
    }
}



@media (min-width: 992px){
    .alogiare-home .alogiare-province-strip--controlled{
        margin-bottom:4px!important;
        padding-bottom:0!important;
    }
    .alogiare-home .alogiare-province-controlled.alogiare-swiper{
        padding-bottom:0!important;
        margin-bottom:0!important;
    }
    .alogiare-home .agr-home-hero--v18-promo-grid{
        margin-top:0!important;
        padding-top:4px!important;
        padding-bottom:6px!important;
        margin-bottom:8px!important;
    }
    .alogiare-home .home__containerSubBanner.alogiare-service-strip,
    .alogiare-home .alogiare-service-strip{
        margin-top:8px!important;
        margin-bottom:4px!important;
        padding-top:0!important;
        padding-bottom:0!important;
    }
    .alogiare-home .alogiare-service-strip .home__subMenuWrapper,
    .alogiare-home .alogiare-service-strip .alogiare-service-swiper,
    .alogiare-home .alogiare-service-strip .swiper-wrapper{
        margin-bottom:0!important;
        padding-bottom:0!important;
    }
    .alogiare-home .alogiare-home-ad-after-slider{
        margin-top:4px!important;
        margin-bottom:8px!important;
        padding-top:0!important;
    }
}
@media (max-width: 575.98px){
    .alogiare-home .alogiare-province-strip--controlled{
        margin-bottom:3px!important;
        padding-bottom:0!important;
    }
    .alogiare-home .agr-home-hero--v18-promo-grid{
        margin-top:0!important;
        padding-top:3px!important;
        padding-bottom:4px!important;
        margin-bottom:6px!important;
    }
    .alogiare-home .home__containerSubBanner.alogiare-service-strip,
    .alogiare-home .alogiare-service-strip{
        margin-top:6px!important;
        margin-bottom:3px!important;
        padding-top:0!important;
        padding-bottom:0!important;
    }
    .alogiare-home .alogiare-home-ad-after-slider{
        margin-top:3px!important;
        margin-bottom:6px!important;
    }
}


/* ALO_FIX_20260704_RESTORE_PC_SERVICE_BANNER_GAP:
   Quay lại giao diện chuẩn trước các patch lỗi, chỉ xử lý khoảng cách PC giữa
   Trang chủ: Menu ngành nổi bật và banner ngay bên dưới.
   Không đụng mobile, không đụng layout item/ảnh/swiper khác. */
@media (min-width: 992px){
    .alogiare-home .home__containerSubBanner.alogiare-service-strip,
    .alogiare-home section.home__containerSubBanner.alogiare-service-strip{
        margin-bottom:0!important;
        padding-bottom:0!important;
    }

    .alogiare-home .home__containerSubBanner.alogiare-service-strip .home__subMenuWrapper,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip .alogiare-service-swiper,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip .swiper-wrapper,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip .swiper-slide,
    .alogiare-home .home__containerSubBanner.alogiare-service-strip .alogiare-service-page-grid{
        min-height:0!important;
        height:auto!important;
        margin-bottom:0!important;
        padding-bottom:0!important;
    }

    .alogiare-home .home__containerSubBanner.alogiare-service-strip .swiper-wrapper{
        align-items:flex-start!important;
    }

    .alogiare-home .home__containerSubBanner.alogiare-service-strip + .alogiare-home-ad-after-slider,
    .alogiare-home section.home__containerSubBanner.alogiare-service-strip + .alogiare-home-ad-after-slider{
        margin-top:12px!important;
        padding-top:0!important;
    }
}


/* ALO HOME TAXONOMY PROGRESSIVE LOAD */
.alo-home-taxonomy-loader-wrap{
    width:100%;
    max-width:1280px;
    margin:8px auto 18px;
    padding:0 14px;
    box-sizing:border-box;
    text-align:center;
}
.alo-home-taxonomy-loader{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:46px;
}
.alo-home-taxonomy-more{
    min-width:180px;
    min-height:42px;
    padding:0 20px;
    border:1px solid var(--alo-ui-primary-button-bg,#ed2028);
    border-radius:999px;
    background:#fff;
    color:var(--alo-ui-primary-button-bg,#ed2028);
    font-weight:800;
    cursor:pointer;
}
.alo-home-taxonomy-more:hover{
    background:var(--alo-ui-primary-button-bg,#ed2028);
    color:#fff;
}
.alo-home-taxonomy-loader.is-loading .alo-home-taxonomy-more{opacity:.55;pointer-events:none}
.alo-home-taxonomy-loader[data-mode="scroll"] .alo-home-taxonomy-more{display:none}
.alo-home-taxonomy-loader__status{
    min-height:18px;
    color:#64748b;
    font-size:12px;
}
.alo-home-taxonomy-loader__spinner{
    display:none;
    width:24px;
    height:24px;
    border:3px solid #e5e7eb;
    border-top-color:var(--alo-ui-primary-button-bg,#ed2028);
    border-radius:50%;
    animation:aloTaxonomySpin .7s linear infinite;
}
.alo-home-taxonomy-loader.is-loading .alo-home-taxonomy-loader__spinner{display:block}
.alo-home-taxonomy-sentinel{width:100%;height:1px}
@keyframes aloTaxonomySpin{to{transform:rotate(360deg)}}
@media(max-width:767.98px){
    .alo-home-taxonomy-loader-wrap{padding:0 8px;margin-bottom:14px}
    .alo-home-taxonomy-more{width:100%;max-width:320px}
}
