/* ============================================
   C7娱乐 - 响应式样式
   cx-responsive.css
   ============================================ */

/* --- xl: >= 1280px (默认桌面端) --- */

/* --- lg: 1024px - 1279px --- */
@media (max-width: 1279px) {
    .cx-hero-content h1 {
        font-size: 3rem;
    }
    .cx-hero-stats {
        gap: 40px;
    }
    .cx-footer-grid {
        grid-template-columns: 1.5fr 1fr 1fr 1fr;
        gap: 30px;
    }
    .cx-stat-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* --- md: 768px - 1023px --- */
@media (max-width: 1023px) {
    .cx-hero-content h1 {
        font-size: 2.5rem;
    }
    .cx-hero-stat-number {
        font-size: 2rem;
    }
    .cx-grid-4 {
        grid-template-columns: repeat(2, 1fr);
    }
    .cx-charts {
        flex-direction: column;
    }
    .cx-charts-podium {
        flex: auto;
        width: 100%;
    }
    .cx-studio-entry {
        flex-direction: column;
    }
    .cx-app-showcase {
        flex-direction: column;
        text-align: center;
    }
    .cx-app-mockup {
        flex: auto;
        max-width: 260px;
    }
    .cx-dashboard {
        flex-direction: column;
    }
    .cx-dashboard-sidebar {
        flex: auto;
    }
    .cx-footer-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .cx-nav-links {
        gap: 16px;
    }
}

/* --- sm: 640px - 767px --- */
@media (max-width: 767px) {
    .cx-hamburger {
        display: flex;
    }
    .cx-nav-links {
        display: none;
        position: absolute;
        top: 72px;
        left: 0;
        width: 100%;
        background: var(--cx-bg);
        flex-direction: column;
        padding: 20px;
        gap: 0;
        border-bottom: 1px solid #D5CFC3;
        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    }
    .cx-nav-links.cx-nav-open {
        display: flex;
    }
    .cx-nav-links li {
        width: 100%;
    }
    .cx-nav-links a {
        display: block;
        padding: 12px 0;
        border-bottom: 1px solid #EDE8DC;
    }
    .cx-nav-cta {
        margin-top: 12px;
    }
    .cx-hero-content h1 {
        font-size: 2rem;
    }
    .cx-hero-subtitle {
        font-size: 0.95rem;
    }
    .cx-hero-stats {
        flex-direction: column;
        gap: 20px;
    }
    .cx-hero-stat-number {
        font-size: 1.8rem;
    }
    .cx-grid-2,
    .cx-grid-3,
    .cx-grid-4 {
        grid-template-columns: 1fr;
    }
    .cx-section {
        padding: 50px 0;
    }
    h1 { font-size: 1.8rem; }
    h2 { font-size: 1.5rem; }
    h3 { font-size: 1.2rem; }
    .cx-page-hero {
        padding: 100px 0 40px;
    }
    .cx-page-hero h1 {
        font-size: 1.8rem;
    }
    .cx-footer-grid {
        grid-template-columns: 1fr;
    }
    .cx-event-card {
        flex-direction: column;
    }
    .cx-event-date {
        flex-direction: row;
        gap: 8px;
        padding: 12px;
    }
    .cx-stat-cards {
        grid-template-columns: repeat(2, 1fr);
    }
    .cx-download-btns {
        flex-direction: column;
        align-items: center;
    }
    .cx-charts-podium {
        display: none;
    }
    .cx-partners {
        gap: 20px;
    }
    .cx-partner-logos {
        gap: 20px;
    }
}

/* --- xs: < 640px --- */
@media (max-width: 639px) {
    .cx-hero-content h1 {
        font-size: 1.6rem;
    }
    .cx-hero-cta {
        flex-direction: column;
        align-items: center;
    }
    .cx-hero-cta .cx-btn-primary,
    .cx-hero-cta .cx-btn-outline {
        width: 100%;
        max-width: 280px;
        text-align: center;
    }
    .cx-stat-cards {
        grid-template-columns: 1fr;
    }
    .cx-radio-tags {
        gap: 8px;
    }
    .cx-radio-tag {
        padding: 6px 14px;
        font-size: 0.8rem;
    }
    .cx-content-block {
        padding: 20px;
    }
}
