/**
 * Mobile Improvements - Site Principal
 * Melhorias específicas para dispositivos móveis
 */

/* Touch-friendly navigation */
@media (max-width: 768px) {
    /* Header mobile */
    header nav {
        padding: 12px 16px !important;
    }
    
    /* Botões de navegação mobile */
    #mobile-menu-btn {
        min-width: 44px !important;
        min-height: 44px !important;
        padding: 10px !important;
    }
    
    /* Menu mobile links */
    .mobile-nav-link {
        min-height: 48px !important;
        padding: 12px 16px !important;
        font-size: 1rem !important;
    }
    
    /* Hero section mobile */
    section:first-of-type {
        min-height: 80vh !important;
        padding: 40px 16px !important;
    }
    
    /* Hero title */
    h1 {
        font-size: 2rem !important;
        line-height: 1.2 !important;
        padding: 0 16px !important;
    }
    
    /* Hero subtitle */
    section:first-of-type p {
        font-size: 1rem !important;
        padding: 0 16px !important;
    }
    
    /* CTA buttons */
    section:first-of-type a {
        padding: 12px 24px !important;
        font-size: 1rem !important;
    }
    
    /* Section headings */
    h2 {
        font-size: 1.75rem !important;
        padding: 0 16px !important;
    }
    
    h3 {
        font-size: 1.5rem !important;
    }
    
    /* Cards grid responsive */
    #featured-trabalhos,
    #trabalhos-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        padding: 0 16px !important;
    }
    
    /* Footer mobile */
    footer {
        padding: 32px 16px !important;
    }
    
    footer .grid {
        gap: 24px !important;
    }
}

/* Extra small devices */
@media (max-width: 480px) {
    /* Reduce padding further */
    header nav,
    section,
    footer {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    
    /* Hero adjustments */
    section:first-of-type {
        min-height: 70vh !important;
    }
    
    h1 {
        font-size: 1.75rem !important;
    }
    
    h2 {
        font-size: 1.5rem !important;
    }
    
    /* Buttons smaller */
    button,
    a[class*="btn"],
    a[class*="button"] {
        padding: 10px 20px !important;
        font-size: 0.9rem !important;
    }
    
    /* Reduce card padding */
    .card,
    [class*="card"] {
        padding: 16px !important;
    }
}

/* Landscape mobile optimization */
@media (max-height: 500px) and (orientation: landscape) {
    section:first-of-type {
        min-height: 100vh !important;
        padding: 20px 16px !important;
    }
    
    h1 {
        font-size: 1.5rem !important;
    }
    
    section:first-of-type p {
        font-size: 0.9rem !important;
    }
    
    /* Hide scroll indicator */
    .scroll-indicator-bounce {
        display: none !important;
    }
}

/* Tablet improvements */
@media (min-width: 769px) and (max-width: 1024px) {
    h1 {
        font-size: 2.5rem !important;
    }
    
    h2 {
        font-size: 2rem !important;
    }
    
    #featured-trabalhos,
    #trabalhos-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 24px !important;
    }
}

/* Touch-friendly interactive elements */
@media (hover: none) and (pointer: coarse) {
    /* Increase touch target size */
    a,
    button,
    input,
    select,
    textarea {
        min-height: 44px !important;
        min-width: 44px !important;
    }
    
    /* Remove hover animations on touch */
    a:hover,
    button:hover {
        transform: none !important;
    }
    
    /* Better focus for touch */
    a:active,
    button:active {
        background-color: rgba(0, 0, 0, 0.05) !important;
    }
}

/* Acessibilidade - High Contrast Mode */
@media (prefers-contrast: high) {
    body {
        background: #fff !important;
        color: #000 !important;
    }
    
    a {
        text-decoration: underline !important;
    }
}

/* Reduzir movimento */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    
    html {
        scroll-behavior: auto !important;
    }
}

