.page-blog-khuyen-mai { color: #333333; }
.page-blog-khuyen-mai__promo-hero { display: flex; flex-direction: column; padding-top: 10px; }
.page-blog-khuyen-mai__promo-hero-image { width: 100%; }
.page-blog-khuyen-mai__promo-image { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.page-blog-khuyen-mai__promo-hero-image { width: 100%; }
.page-blog-khuyen-mai__promo-content { background: #B71C1C; padding: 28px 20px; text-align: center; }
.page-blog-khuyen-mai__promo-title { color: #FFF5E1; font-weight: 800; line-height: 1.3; letter-spacing: 0.5px; margin: 0 0 12px; }
.page-blog-khuyen-mai__promo-subtitle { color: #FFF5E1; opacity: 0.95; max-width: 680px; margin: 0 auto 22px; line-height: 1.7; }
.page-blog-khuyen-mai__promo-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; width: 100%; max-width: 100%; overflow: hidden; box-sizing: border-box; }
.page-blog-khuyen-mai__promo-btn { display: inline-block; padding: 13px 34px; border-radius: 999px; font-weight: 700; text-decoration: none; transition: transform 0.2s ease, box-shadow 0.2s ease; max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; }
.page-blog-khuyen-mai__promo-btn--primary { background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; }
.page-blog-khuyen-mai__promo-btn--secondary { background: #E53935; border: 2px solid #F2B544; color: #FFF5E1; }
.page-blog-khuyen-mai__promo-btn:hover, .page-blog-khuyen-mai__promo-cta-final-btn:hover, .page-blog-khuyen-mai__promo-card-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(255, 204, 102, 0.3); }
.page-blog-khuyen-mai__promo-intro { padding: 26px 20px; background: #fcf7f7; }
.page-blog-khuyen-mai__promo-intro-inner { max-width: 980px; margin: 0 auto; color: #333333; line-height: 1.8; }
.page-blog-khuyen-mai__promo-intro-inner strong { color: #C91F17; }
.page-blog-khuyen-mai__promo-detail { background: #7A0E0E; padding: 34px 16px; }
.page-blog-khuyen-mai__promo-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; max-width: 1100px; margin: 0 auto; }
.page-blog-khuyen-mai__promo-card { background: #D32F2F; border-radius: 16px; border: 1px solid #F2B544; overflow: hidden; display: flex; flex-direction: column; transition: box-shadow 0.3s ease; }
.page-blog-khuyen-mai__promo-card:hover { box-shadow: 0 0 24px rgba(244, 211, 77, 0.25); }
.page-blog-khuyen-mai__promo-card-header { width: 100%; }
.page-blog-khuyen-mai__promo-card-image { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.page-blog-khuyen-mai__promo-card-body { padding: 20px; display: flex; flex-direction: column; flex: 1; }
.page-blog-khuyen-mai__promo-card-title { color: #FFF5E1; font-size: 1.5rem; m: 0 0 10px; font-weight: 800; }
.page-blog-khuyen-mai__promo-card-body p { color: #FFF5E1; line-height: 1.7; margin: 0 0 16px; flex: 1; opacity: .95 }
.page-blog-khuyen-mai__promo-card-btn { display: inline-block; background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; font-weight: 800; text-decoration: none; border: none; padding: 10px 22px; border-radius: 999px; margin-top: auto; text-align: center; align-self: flex-start; transition: transform 0.2s ease; }
.page-blog-khuyen-mai__promo-card-btn:hover { background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; }
.page-blog-khuyen-mai__promo-how { padding: 36px 16px; background: #ffffff; }
.page-blog-khuyen-mai__promo-how-inner { max-width: 1000px; margin: 0 auto; }
.page-blog-khuyen-mai__promo-how-title, .page-blog-khuyen-mai__promo-faq-title, .page-blog-khuyen-mai__promo-terms-title { text-align: center; color: #C91F17; margin: 0 0 28px; font-weight: 800; }
.page-blog-khuyen-mai__promo-steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; counter-reset: step; }
.page-blog-khuyen-mai__promo-step { background: #f7f1f1; border-left: 5px solid #C91F17; border-radius: 10px; padding: 16px 18px; box-sizing: border-box; }
.page-blog-khuyen-mai__promo-step-number { display: flex; justify-content: center; align-items: center; width: 28px; height: 28px; border-radius: 50%; background: #C91F17; color: #FFF5E1; font-weight: 800; margin-bottom: 8px; }
.page-blog-khuyen-mai__promo-step p { margin: 0; color: #333333; line-height: 1.6; }
.page-blog-khuyen-mai__promo-terms { background: #B71C1C; padding: 36px 16px; }
.page-blog-khuyen-mai__promo-terms-inner { max-width: 1000px; margin: 0 auto; }
.page-blog-khuyen-mai__promo-terms-title { color: #FFF5E1; }
.page-blog-khuyen-mai__promo-terms-layout { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 24px; align-items: center; }
.page-blog-khuyen-mai__promo-terms-text { background: #D32F2F; padding: 20px; border-radius: 12px; border: 1px solid #F2B544; }
.page-blog-khuyen-mai__promo-terms-list { margin: 0; padding-left: 20px; color: #FFF5E1; line-height: 1.8; }
.page-blog-khuyen-mai__promo-terms-list li::marker { color: #FFCC66; }
.page-blog-khuyen-mai__promo-terms-image { width: 100%; }
.page-blog-khuyen-mai__promo-terms-img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 12px; border: 1px solid #F2B544; display: block; }
.page-blog-khuyen-mai__promo-faq { background: #ffffff; padding: 36px 16px; }
.page-blog-khuyen-mai__promo-faq-inner { max-width: 720px; margin: 0 auto; }
.page-blog-khuyen-mai__promo-faq-title { margin-bottom: 20px; }
.page-blog-khuyen-mai__promo-faq-list { display: flex; flex-direction: column; gap: 10px; }
.page-blog-khuyen-mai__promo-faq-item { background: #fbf3f3; border-radius: 10px; border-left: 4px solid #F2B544; }
.page-blog-khuyen-mai__promo-faq-item summary { font-weight: 700; color: #C91F17; padding: 16px 20px; display: flex; justify-content: space-between; align-items: center; cursor: pointer; list-style: none; position: relative; }
.page-blog-khuyen-mai__promo-faq-item summary::-webkit-details-marker { display: none; }
.page-blog-khuyen-mai__promo-faq-item[open] summary { border-bottom: 1px solid #f4c1b0; }
.page-blog-khuyen-mai__promo-faq-content { padding: 14px 20px 18px; color: #333333; line-height: 1.7; }
.page-blog-khuyen-mai__promo-faq-content p { margin: 0; }
.page-blog-khuyen-mai__promo-faq-item summary::after { content: '+'; font-size: 1.4rem; color: #E53935; font-weight: 700; }
.page-blog-khuyen-mai__promo-faq-item[open] summary::after { content: '-'; }
.page-blog-khuyen-mai__promo-faq-toggle { display: none; }
.page-blog-khuyen-mai__promo-cta-final { background: #7A0E0E; padding: 30px 16px; text-align: center; }
.page-blog-khuyen-mai__promo-cta-final-title { color: #FFF5E1; font-size: 1.5rem; font-weight: 800; margin: 0 0 12px; }
.page-blog-khuyen-mai__promo-cta-final-text { color: #FFF5E1; max-width: 700px; margin: 0 auto 18px; line-height: 1.7; opacity: 0.95; }
.page-blog-khuyen-mai__promo-cta-final-img { aspect-ratio: 16/9; object-fit: cover; border-radius: 12px; margin-bottom: 16px; max-width: 100%; height: auto; }
.page-blog-khuyen-mai__promo-cta-final-btn { background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; font-weight: 800; text-decoration: none; padding: 14px 32px; border-radius: 999px; display: inline-block; transition: transform 0.3s ease, box-shadow 0.3s ease; max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; }
.page-blog-khuyen-mai__promo-cta-final-btn:hover { background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); }
@media (max-width: 768px) {
  .page-blog-khuyen-mai__promo-image { aspect-ratio: 4 / 3; }
  .page-blog-khuyen-mai__promo-content { padding: 20px 16px; }
  .page-blog-khuyen-mai__promo-detail-grid { grid-template-columns: 1fr; }
  .page-blog-khuyen-mai__promo-card-title { font-size: 1.25rem; }
  .page-blog-khuyen-mai__promo-steps { grid-template-columns: 1fr; }
  .page-blog-khuyen-mai__promo-terms-layout { grid-template-columns: 1fr; }
  .page-blog-khuyen-mai__promo-terms-img { width: 100%; max-width: 100% !important; height: auto !important; }
  .page-blog-khuyen-mai img { max-width: 100% !important; height: auto !important; }
  .page-blog-khuyen-mai { max-width: 100%; overflow-x: hidden; }
  .page-blog-khuyen-mai__promo-actions { flex-direction: column; align-items: stretch; }
  .page-blog-khuyen-mai__promo-btn { text-align: center; }
  .page-blog-khuyen-mai__promo-hero { padding-top: 10px; }
}