/* trang Hẹn hò thực tế */
.hero h1 { font-size: clamp(28px, 4.5vw, 40px); }
.hero .checks { margin-bottom: 16px; }
.from-price { color: var(--pink); font-size: 18px; }
.cols-2-stats { grid-template-columns: repeat(2, 1fr); }
.center-y { align-items: center; }
.cols-4 { grid-template-columns: 1fr; }
.step-icon { margin-bottom: 12px; }
.verified { display: flex; gap: 12px; align-items: center; background: var(--pink-soft); border-radius: var(--radius); padding: 16px; margin: 20px 0; color: var(--ink); }
.gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.gallery .thumb img { aspect-ratio: 1; }
.gallery .thumb::after { display: none; }
.pkg-head { display: flex; gap: 12px; align-items: center; margin-bottom: 12px; }
.pkg-head h3 { margin: 0; }
.pkg-head small { color: var(--muted); }
.features li.off { color: var(--muted); }
.features li.off::before { width: 12px; height: 0; border: 0; border-top: 3px solid var(--muted); top: 17px; transform: none; }
.register-box { max-width: 560px; margin: 32px auto 0; }
.register-box h3 { font-size: 16px; margin: 20px 0 6px; }
.form fieldset { border: 0; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 16px; }
.form .radio { display: flex; flex-direction: row; align-items: center; gap: 8px; }
.form .radio input { width: auto; }
.total del { color: var(--muted); }
.summary { display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; margin: 16px 0; }
.summary dt { color: var(--muted); }
.summary dd { margin: 0; }
.bank { display: grid; gap: 16px; align-items: center; justify-items: center; text-align: center; margin-top: 12px; }
.bank .qr { width: 140px; height: 140px; }
.faq .answer { color: var(--muted); margin-top: 8px; }
.sticky-cta { position: fixed; inset: auto 0 0; z-index: 40; background: var(--pink); color: #fff; padding: 10px 0; transform: translateY(100%); transition: transform .3s; }
.sticky-cta.show { transform: none; }
.sticky-cta .wrap { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.sticky-cta .btn { padding: 8px 18px; }

@media (min-width: 768px) {
    .cols-4 { grid-template-columns: repeat(4, 1fr); }
    .gallery { grid-template-columns: repeat(6, 1fr); }
    .bank { grid-template-columns: auto 1fr auto; text-align: left; }
}
@media (prefers-reduced-motion: reduce) { .sticky-cta { transition: none; } }
