/* Mobile-specific styles for Header */
@media (max-width: 768px) {
    /* Reduce logo size */
    .logo-img {
        height: 35px !important;
    }

    /* Reduce text size */
    .logo-title {
        font-size: 1rem !important;
    }

    .logo-subtitle {
        font-size: 0.6rem !important;
    }
    
    /* Adjust container padding for better spacing on small screens */
    .header-content {
        padding: 0 1rem !important;
    }

    /* =========================================
       HERO SECTION MOBILE ADJUSTMENTS
       ========================================= */

    /* Quick Access Dock - 4 items in one row, smaller, inside the blue area */
    
    /* Center Hero Text */
    .hero-text-block {
        text-align: center !important;
        margin: 0 auto !important;
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    .hero-text-block h1, 
    .hero-text-block p,
    .hero-text-block .welcome-badge {
        text-align: center !important;
    }
    
    .quick-access-dock {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 8px !important;
        padding: 12px 8px !important;
        
        /* Positioning inside the hero (blue area) */
        position: absolute !important;
        width: 95% !important;
        max-width: 400px !important; /* Prevent it from stretching too wide on tablets */
        left: 50% !important; 
        transform: translateX(-50%) !important;
        /* Moving it up into the hero image. 
           Since parent (.relative-container) is below .hero-background, 
           negative top moves it upwards into the background. */
        top: -140px !important; 
        bottom: auto !important;
        margin: 0 !important;
        
        /* Visual adjustments */
        border-radius: 20px !important;
        background: rgba(255, 255, 255, 0.95) !important; /* Slightly more opaque for readability */
        backdrop-filter: blur(10px) !important;
    }

    /* Adjust Card Items */
    .quick-card {
        min-width: 0 !important;
        padding: 0 !important;
        gap: 5px !important;
    }

    /* Adjust Icons */
    .quick-icon {
        width: 40px !important;
        height: 40px !important;
        font-size: 1.2rem !important;
        border-radius: 12px !important;
        margin-bottom: 0 !important;
    }

    /* Adjust Text */
    .quick-card span {
        font-size: 0.65rem !important;
        line-height: 1.1;
        text-align: center;
        white-space: normal; /* Allow text wrapping if needed (e.g. Nota Fiscal) */
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 2; /* Limit to 2 lines */
        -webkit-box-orient: vertical;
        width: 100%;
    }

    /* =========================================
       SERVICES SECTION MOBILE ADJUSTMENTS
       ========================================= */
    
    .services-section {
        padding: 40px 0 !important;
    }

    .services-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important; /* 2 colunas para parecer grid de apps */
        gap: 15px !important; /* Espaçamento menor */
        padding: 0 10px !important;
        margin-bottom: 30px !important;
    }

    .service-card {
        padding: 20px 15px !important;
        border-radius: 16px !important;
        gap: 12px !important;
        box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.05) !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }
    
    .service-card i {
        font-size: 2rem !important; /* Ícone menor */
        margin-bottom: 0 !important;
    }
    
    .service-card span {
        font-size: 0.9rem !important;
        line-height: 1.2 !important;
        font-weight: 500 !important;
    }

    /* Botão "Ver Todos" */
    .services-more .btn-more {
        padding: 10px 25px !important;
        font-size: 0.9rem !important;
        width: 80% !important; /* Botão largo é mais fácil de clicar */
    }

    /* =========================================
       MAPA CULTURAL MOBILE ADJUSTMENTS
       ========================================= */

    .map-banner {
        border-radius: 20px !important;
    }

    .map-banner-content {
        flex-direction: row !important; /* Força linha mesmo no mobile */
        align-items: center !important;
        padding: 20px !important; /* Reduz padding */
        gap: 15px !important;
        text-align: left !important;
    }

    .map-icon-pulse {
        width: 50px !important;
        height: 50px !important;
        font-size: 1.2rem !important;
        flex-shrink: 0 !important; /* Garante que o ícone não suma ou amasse */
    }

    .map-text h3 {
        font-size: 1.2rem !important;
        margin-bottom: 5px !important;
    }

    .map-text p {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        font-size: 0.9rem !important;
        line-height: 1.4 !important;
        overflow: hidden;
    }

    .map-cta {
        display: none !important; /* Esconde o botão grande no mobile para economizar espaço e manter layout limpo, ou podemos transformar em icone pequeno */
    }

    /* =========================================
       HISTORY SECTION MOBILE ADJUSTMENTS
       ========================================= */
       
    .history-section {
        padding-bottom: 40px !important; /* Reduzir padding excessivo se houver */
    }

    .history-content {
        flex-direction: column !important;
        gap: 20px !important;
    }
    
    .history-text {
        text-align: center !important;
        width: 100% !important;
    }
    
    /* Remove photos on mobile */
    .history-gallery {
        display: none !important;
    }

    /* =========================================
       FOOTER MOBILE ADJUSTMENTS
       ========================================= */
    
    .footer {
        padding: 40px 0 30px !important;
        margin-top: 0 !important;
        border-top-left-radius: 30px !important;
        border-top-right-radius: 30px !important;
        text-align: center !important;
        background: linear-gradient(135deg, #021B35 0%, #043263 100%) !important; /* Re-force gradient */
    }

    .footer::before {
        display: none !important; /* Remove overlay effect that creates the line */
    }

    .footer-content {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
        margin-bottom: 40px !important;
    }

    /* Logo Center */
    .footer-logo {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .footer-column h3 {
        font-size: 1.1rem !important;
        margin-bottom: 20px !important;
        display: inline-block !important; /* Para centralizar o after se precisar */
    }
    
    /* Centralizar o traço decorativo do título */
    .footer-column h3::after {
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: 50px !important;
    }

    /* Links maiores para toque */
    .footer-column ul li {
        margin-bottom: 12px !important;
    }

    .footer-column a {
        padding: 5px !important;
        font-size: 1rem !important;
    }

    /* Contact Box simplificado */
    .footer-contact .contact-box {
        padding: 20px !important;
        background: rgba(255, 255, 255, 0.08) !important;
        text-align: center !important;
    }
    
    .footer-contact p {
        margin-bottom: 15px !important;
        font-size: 0.95rem !important;
    }
    
    /* Icones de contato mais visíveis */
    .footer-contact i {
        color: var(--accent-color) !important;
        font-size: 1.1rem !important;
        margin-bottom: 5px !important;
        display: block !important;
    }

    /* Footer Bottom */
    .footer-bottom {
        flex-direction: column-reverse !important; /* Copyright por ultimo */
        gap: 25px !important;
        padding-top: 25px !important;
        text-align: center !important;
    }
    
    .social-icons {
        justify-content: center !important;
        gap: 20px !important;
    }
    
    .social-icons a {
        width: 50px !important;
        height: 50px !important;
        font-size: 1.3rem !important;
        background: rgba(255, 255, 255, 0.15) !important; /* Mais contraste */
    }
}
