.page-khuyen-mai{
    max-width:100%;
    overflow-x:hidden;
    color:#FFF5E1;
    background:#B71C1C;
}

.page-khuyen-mai__hero-section{
    padding-top: 10px;
    max-width:1200px;
    margin:0 auto;
}

.page-khuyen-mai__hero-image-wrap{
    width:100%;
}

.page-khuyen-mai__hero-image{
    width:100%;
    height:auto;
    aspect-ratio:17/5;
    object-fit:cover;
    display:block;
    border-radius:12px;
}

.page-khuyen-mai__hero-content{
    padding:16px 16px 8px;
}

.page-khuyen-mai__hero-title{
    font-size: clamp(1.4rem, 3vw, 2.2rem);
    font-weight:800;
    line-height:1.2;
    color:#FFF5E1;
    margin-bottom:8px;
    max-width: 900px;
}

.page-khuyen-mai__hero-desc{
    font-size:1rem;
    line-height:1.6;
    color:#FFF5E1;
    max-width: 900px;
    opacity:0.9;
}

.page-khuyen-mai__promo-highlights{
    max-width:1200px;
    margin:0 auto;
    padding:16px;
}

.page-khuyen-mai__section-title{
    font-size:1.8rem;
    font-weight:700;
    text-align:center;
    color:#FFF5E1;
    margin-bottom:24px;
}

.page-khuyen-mai__promo-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.page-khuyen-mai__promo-card{
    background:#D32F2F;
    border:1px solid #F2B544;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 4px 15px rgba(122,14,14,0.2);
    display:flex;
    flex-direction:column;
}

.page-khuyen-mai__promo-card-image{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    display:block;
}

.page-khuyen-mai__promo-card-body{
    padding:16px;
    flex-grow:1;
    display:flex;
    flex-direction:column;
}

.page-khuyen-mai__promo-card-title{
    font-size:1.2rem;
    font-weight:700;
    color:#F4D34D;
    margin-bottom:8px;
    line-height:1.3;
}

.page-khuyen-mai__promo-card-text{
    font-size:0.9rem;
    line-height:1.6;
    color:#FFF5E1;
    margin-bottom:16px;
    flex-grow:1;
    opacity:0.9;
}

.page-khuyen-mai__promo-card-btn{
    display:inline-block;
    width:100%;
    padding:10px 16px;
    background:linear-gradient(180deg, #FFD86A 0%, #E6B800 100%);
    color:#7A0E0E;
    font-weight:700;
    font-size:0.95rem;
    text-align:center;
    text-decoration:none;
    border-radius:8px;
    transition: transform 0.2s ease;
    box-sizing:border-box;
}

.page-khuyen-mai__promo-card-btn:hover{
    transform: scale(1.02);
}

.page-khuyen-mai__promo-detail{
    max-width:1200px;
    margin:0 auto;
    padding:16px;
}

.page-khuyen-mai__promo-list{
    display:grid;
    gap:16px;
}

.page-khuyen-mai__promo-item{
    background:#D32F2F;
    border-radius:12px;
    padding:20px;
    border-left:4px solid #F2B544;
}

.page-khuyen-mai__promo-item-header{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:8px;
}

.page-khuyen-mai__promo-item-title{
    font-size:1.3rem;
    font-weight:700;
    color:#F4D34D;
    margin:0;
}

.page-khuyen-mai__promo-item-badge{
    background:#B71C1C;
    color:#F4D34D;
    padding:4px 10px;
    border-radius:999px;
    font-size:0.75rem;
    font-weight:700;
    text-transform:uppercase;
    white-space:nowrap;
}

.page-khuyen-mai__promo-item-text{
    font-size:0.95rem;
    line-height:1.7;
    color:#FFF5E1;
    margin-bottom:8px;
    opacity:0.9;
}

.page-khuyen-mai__promo-item-cta{
    font-size:0.9rem;
    color:#FFF5E1;
}

.page-khuyen-mai__promo-item-link{
    color:#F4D34D;
    font-weight:700;
    text-decoration:underline;
}

.page-khuyen-mai__steps-section{
    max-width:1200px;
    margin:0 auto;
    padding:32px 16px;
}

.page-khuyen-mai__steps-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-bottom:24px;
}

.page-khuyen-mai__step-item{
    background:#D32F2F;
    border-radius:12px;
    padding:20px;
    text-align:center;
}

.page-khuyen-mai__step-number{
    width:48px;
    height:48px;
    border-radius:50%;
    background:linear-gradient(180deg, #FFD86A 0%, #E6B800 100%);
    color:#7A0E0E;
    font-size:1.4rem;
    font-weight:800;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 12px;
}

.page-khuyen-mai__step-title{
    font-size:1.1rem;
    font-weight:700;
    color:#F4D34D;
    margin-bottom:8px;
}

.page-khuyen-mai__step-desc{
    font-size:0.9rem;
    line-height:1.6;
    color:#FFF5E1;
    opacity:0.9;
}

.page-khuyen-mai__steps-cta{
    display:flex;
    gap:16px;
    justify-content:center;
    flex-wrap:wrap;
}

.page-khuyen-mai__steps-btn{
    display:inline-block;
    padding:12px 32px;
    background:linear-gradient(180deg, #FFD86A 0%, #E6B800 100%);
    color:#7A0E0E;
    font-weight:700;
    font-size:1rem;
    text-align:center;
    text-decoration:none;
    border-radius:50px;
    transition: transform 0.2s ease;
    max-width:100%;
    box-sizing:border-box;
    white-space:normal;
    word-wrap:break-word;
}

.page-khuyen-mai__steps-btn:hover{
    transform: scale(1.02);
}

.page-khuyen-mai__faq-section{
    max-width:1000px;
    margin:0 auto;
    padding:16px;
}

.page-khuyen-mai__faq-list{
    display:grid;
    gap:12px;
}

.page-khuyen-mai__faq-item{
    background:#D32F2F;
    border-radius:8px;
    border:1px solid #F2B544;
    overflow:hidden;
}

.page-khuyen-mai__faq-question{
    padding:16px;
    font-size:1rem;
    font-weight:600;
    color:#FFF5E1;
    display:flex;
    justify-content:space-between;
    align-items:center;
    cursor:pointer;
    list-style:none;
}

.page-khuyen-mai__faq-question::-webkit-details-marker{
    display:none;
}

.page-khuyen-mai__faq-toggle{
    color:#F4D34D;
    font-size:1.4rem;
    font-weight:700;
}

.page-khuyen-mai__faq-answer{
    padding:0 16px 16px;
    font-size:0.9rem;
    line-height:1.6;
    color:#FFF5E1;
    opacity:0.9;
}

@media (max-width: 1024px){
    .page-khuyen-mai__promo-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width: 768px){
    .page-khuyen-mai__hero-image{
        aspect-ratio:2/1;
    }

    .page-khuyen-mai__hero-content{
        padding:12px 12px 4px;
    }

    .page-khuyen-mai__promo-grid{
        grid-template-columns:1fr;
        gap:12px;
    }

    .page-khuyen-mai__steps-grid{
        grid-template-columns:1fr;
        gap:12px;
    }

    .page-khuyen-mai__promo-item-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .page-khuyen-mai__promo-card-btn,
    .page-khuyen-mai__steps-btn{
        max-width:100%;
        box-sizing:border-box;
        white-space:normal;
        word-wrap:break-word;
    }

    .page-khuyen-mai__steps-cta{
        flex-direction:column;
        width:100%;
        max-width:100%;
        overflow:hidden;
        box-sizing:border-box;
    }

    .page-khuyen-mai img{
        max-width:100% !important;
        height:auto !important;
    }

    .page-khuyen-mai{
        overflow-x:hidden;
        max-width:100%;
    }
}