@media (max-width: 768px) {
    .program-card-btns {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }
    .program-card-btns .btn-program {
        flex: 1 1 auto;
        min-width: 0;
        margin-left: 0 !important;
        border-radius: 9999px !important;
        text-align: center;
        box-sizing: border-box;
        padding: 0.5rem 0.75rem;
        font-size: 0.85rem;
    }
    .hero { height: 100vh; display: flex; align-items: center; justify-content: center; background-position: center !important; }
    .line-1, .line-2, .line-3 { transform: none !important; }
    .container { width: 90%; padding: 0; }
    .navbar { background: transparent !important; padding: 1.5rem 1rem; justify-content: space-between; pointer-events: auto; }
    .logo { display: block !important; font-size: 1.5rem; }
    .desktop-links { display: none !important; }
    .menu-trigger { font-size: 1.2rem; background: transparent; color: white; border: none; padding: 0; }
    .preview-grid, .faq-list, .contact-section .container>div { grid-template-columns: 1fr !important; gap: 2rem !important; }
    .contact-section h2 { font-size: 3rem !important; }
    .contact-section .container>div>div { border-right: none !important; border-bottom: 2px solid white; padding: 1.5rem !important; }
    section .container>div:nth-child(2) { grid-template-columns: 1fr !important; }
    .vibe-box { aspect-ratio: 4/3; }
    footer .grid { grid-template-columns: 1fr !important; text-align: center; }
    footer .grid>div:last-child { text-align: center !important; margin-top: 2rem; }
    body, html { overflow-x: hidden; width: 100%; }
    body { padding-bottom: 80px; }
    .cursor-dot, .cursor-outline { display: none !important; }
    .faq-section h2 { text-align: left !important; font-size: 3rem !important; line-height: 0.9; }
}

.bottom-nav {
    position: fixed; bottom: 0; left: 0; width: 100%; height: 70px; background: black;
    border-top: 2px solid var(--accent-color); display: flex; justify-content: space-around; align-items: center;
    z-index: 10001 !important; padding: 0 10px;
}
.nav-item { display: flex; flex-direction: column; align-items: center; justify-content: center; color: white; font-family: var(--font-heading); font-size: 0.8rem; gap: 5px; opacity: 0.7; transition: all 0.3s; cursor: pointer; }
.nav-item:hover, .nav-item.active { opacity: 1; color: var(--accent-color); transform: translateY(-5px); }
.nav-center-btn {
    width: 60px; height: 60px; background: var(--accent-color); border-radius: 50%;
    display: flex; align-items: center; justify-content: center; margin-bottom: 30px;
    border: 4px solid black; color: black; box-shadow: 0 0 10px rgba(204, 255, 0, 0.5);
}
.nav-center-btn svg { width: 30px; height: 30px; stroke: black; }
.nav-icon svg { width: 24px; height: 24px; stroke: currentColor; fill: none; stroke-width: 2; }
.bottom-nav, .bottom-nav * { cursor: default !important; pointer-events: auto !important; }
.bottom-nav a { cursor: pointer !important; }
@media (max-width: 480px) { .nav-item span { font-size: 0.6rem; } }
