/* Global Mobile Responsive Styles */
@media (max-width: 768px) {
    /* Navbar mobile styles */
    .navbar-gold { height: auto !important; min-height: 70px !important; }
    .navbar-gold .navbar-brand img { height: 60px !important; top: 5px !important; border-width: 5px !important; }
    .navbar-gold .nav-link { font-size: 1rem !important; padding: 0.5rem !important; }
    .navbar-gold .navbar-collapse { background-color: var(--brand-gold) !important; padding: 1rem !important; margin-top: 1rem !important; border-radius: 4px !important; }
    
    /* Hero section mobile - stack links vertically */
    .hero-section .overlay-content { text-align: center !important; }
    .hero-section .overlay-text { max-width: 100% !important; padding: 1.5rem !important; }
    .hero-section .d-flex { 
        flex-direction: column !important; 
        gap: 0.75rem !important; 
        align-items: center !important;
        width: 100% !important;
    }
    .hero-section .d-flex a { 
        font-size: 1rem !important; 
        display: block !important;
        width: 100% !important;
        text-align: center !important;
    }
    .hero-section .d-flex span { display: none !important; }
    
    /* Event/Webinar Hero mobile - COMPLETE FIX */
    .hero-event, .hero-webinar { 
        height: auto !important; 
        min-height: auto !important; 
        overflow: visible !important;
    }
    .hero-event img, .hero-webinar img { 
        position: relative !important; 
        height: auto !important; 
        max-height: 50vh !important;
        min-height: 200px !important;
        width: 100% !important;
    }
    .hero-event .overlay, .hero-webinar .overlay { 
        position: relative !important; 
        padding: 1.5rem 1rem !important; 
        align-items: center !important;
        text-align: center !important;
        inset: auto !important;
        justify-content: flex-start !important;
    }
    .hero-event .overlay h1, .hero-webinar .overlay h1 { 
        font-size: 1.4rem !important; 
        text-align: center !important;
        line-height: 1.3 !important;
        margin-bottom: 0.5rem !important;
        max-width: 100% !important;
        white-space: normal !important;
    }
    .hero-event .overlay p, .hero-webinar .overlay p { 
        font-size: 0.9rem !important; 
        text-align: center !important;
        margin-bottom: 1rem !important;
        max-width: 100% !important;
        white-space: normal !important;
    }
    
    /* Hero CTA container - force full width, no min-width */
    .hero-cta-container {
        width: 100% !important;
        max-width: 100% !important;
        min-width: auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }
    
    /* Date/location bar - full width, wrap content */
    .hero-date-location {
        width: 100% !important;
        justify-content: center !important;
        flex-wrap: wrap !important;
        white-space: normal !important;
    }
    .hero-date-location span {
        font-size: 0.75rem !important;
        white-space: nowrap !important;
    }
    
    /* Calendar buttons container - stack vertically */
    .hero-calendar-btns {
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        white-space: normal !important;
        margin-top: 0.5rem !important;
    }
    
    /* Individual calendar buttons - full width */
    .hero-calendar-btns a {
        display: flex !important;
        width: 100% !important;
        max-width: none !important;
        min-width: auto !important;
        font-size: 0.65rem !important;
        padding: 0.5rem 0.25rem !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
    }
    .hero-calendar-btns a svg {
        flex-shrink: 0 !important;
        width: 12px !important;
        height: 12px !important;
    }
    
    /* gold-btn mobile styles - stack vertically */
    .gold-btn {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        text-align: center !important;
        padding: 0.75rem 1rem !important;
        font-size: 0.85rem !important;
        white-space: normal !important;
    }
    
    /* Event card buttons */
    .event-card .gold-btn,
    .event-card span.gold-btn {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
    }
    
    /* Form buttons - full width */
    button.gold-btn,
    input.gold-btn,
    .text-center .gold-btn {
        width: 100% !important;
        max-width: none !important;
    }
    
    /* Timeline mobile */
    .timeline::before { left: 15px !important; }
    .tl-time { display: none !important; }
    .tl-dot-col { width: 30px !important; }
    .tl-dot { margin-top: 16px !important; }
    .tl-content { padding: 8px 0 8px 12px !important; }
    .tl-card { padding: 12px 14px !important; }
    .tl-speakers { grid-template-columns: 1fr !important; }
    .tl-speaker img, .tl-speaker .tl-speaker-avatar { width: 48px !important; height: 48px !important; }
    
    /* Speaker modal mobile */
    .speaker-modal-content { 
        max-height: 90vh !important; 
        overflow-y: auto !important;
        padding: 1rem !important;
    }
    .speaker-modal-img { 
        width: 100% !important; 
        height: auto !important; 
        max-height: 300px !important;
        object-fit: cover !important;
    }
    
    /* Content wrapper mobile */
    .content-wrapper { padding: 1.5rem 1rem !important; }
    
    /* Delegates ticker mobile */
    .delegates-title { font-size: 0.85rem !important; padding: 0 10px !important; }
    .delegates-logos img { height: 28px !important; }
}

@media (max-width: 576px) {
    .navbar-gold .navbar-brand img { height: 50px !important; top: 3px !important; }
    
    .hero-section .overlay-text { padding: 1rem !important; }
    .hero-section .d-flex a { font-size: 0.95rem !important; }
    
    .hero-event .overlay h1, .hero-webinar .overlay h1 { font-size: 1.2rem !important; }
    .hero-event .overlay p, .hero-webinar .overlay p { font-size: 0.8rem !important; }
    .hero-calendar-btns a { 
        font-size: 0.6rem !important;
        padding: 0.4rem 0.15rem !important;
    }
    
    /* Smaller buttons on very small screens */
    .gold-btn {
        padding: 0.6rem 0.8rem !important;
        font-size: 0.8rem !important;
    }
}
