/* ========================================
   RESPONSIVIDADE - MOBILE (< 768px)
   ======================================== */

@media (max-width: 767.98px) {

    /* Container */
    .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    /* Tipografia */
    h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.75rem;
    }

    h3 {
        font-size: 1.25rem;
    }

    .hero-title {
        font-size: 2rem;
        text-align: center;
        color: var(--white);
    }

    .hero-title span {
        color: var(--warning-500);
    }

    .hero-subtitle {
        font-size: 1rem;
        text-align: center;
        color: var(--light-100);
    }

    /* Navbar */
    .navbar {
        background: transparent !important;
        padding: 1rem 0;
        box-shadow: none;
    }

    .navbar.scrolled {
        background: var(--white) !important;
        box-shadow: var(--shadow-sm);
    }

    .navbar-collapse {
        background: var(--white);
        padding: 1.5rem;
        border-radius: 12px;
        box-shadow: var(--shadow-lg);
        margin-top: 1rem;
    }

    .navbar-collapse .nav-link {
        color: var(--dark-700) !important;
    }

    .navbar-collapse .nav-link:hover {
        color: var(--primary-900) !important;
    }

    .navbar-brand {
        font-size: 1.25rem;
    }

    .navbar-brand img {
        filter: brightness(0) invert(1) !important;
    }

    .navbar.scrolled .navbar-brand img {
        filter: none !important;
    }

    .navbar-toggler {
        border: none;
        padding: 0.5rem;
    }

    .navbar-nav {
        align-items: flex-start !important;
    }

    .navbar-nav .nav-item {
        width: 100%;
        text-align: right;
        margin-left: 0 !important;
    }

    .navbar-nav .nav-item .btn {
        width: 100%;
        text-align: center;
        margin-top: 1rem;
    }

    /* Hero Section */
    .hero-section {
        padding: 10rem 0 8rem;
        min-height: 100vh;
        background: linear-gradient(135deg, rgba(26, 62, 146, 0.85) 0%, rgba(26, 26, 46, 0.95) 100%),
            url('https://images.unsplash.com/photo-1558002038-1055907df827?auto=format&fit=crop&w=800&q=80') center/cover no-repeat;
    }

    .hero-section .btn {
        width: 100%;
        margin-bottom: 0.75rem;
    }

    .hero-section .hero-image,
    .badge-24h {
        display: none !important;
    }

    .hero-section .d-flex.gap-4 {
        justify-content: center;
        flex-direction: column;
        gap: 0.75rem !important;
    }

    /* Cards */
    .card-servico {
        padding: 2rem 1.5rem;
    }

    /* Seções */
    .section-light,
    .section-dark,
    .section-gradient {
        padding: 4rem 0;
    }

    /* Grid de Ícones */
    .icon-grid-item {
        padding: 1.5rem 1rem;
    }

    .icon-grid-item i {
        font-size: 2rem;
    }

    /* Footer */
    .footer {
        padding: 3rem 0 1.5rem;
        text-align: center;
    }

    .footer .d-flex.gap-3 {
        justify-content: center;
    }

    /* Botão Flutuante */
    .floating-whatsapp {
        display: block;
        position: fixed;
        bottom: 24px;
        right: 24px;
        z-index: 1050;
        opacity: 0;
        transform: translateY(20px);
        transition: all 0.3s ease;
        pointer-events: none;
    }

    .floating-whatsapp.visible {
        opacity: 1;
        transform: translateY(0);
        pointer-events: all;
    }

    .floating-whatsapp .btn {
        width: 60px;
        height: 60px;
        border-radius: 50%;
        background: var(--danger-900);
        border: none;
        box-shadow: 0 8px 24px rgba(208, 26, 40, 0.4);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        animation: pulse-float 2s infinite;
    }

    .floating-whatsapp .btn i {
        font-size: 1.75rem;
        color: white;
    }

    @keyframes pulse-float {

        0%,
        100% {
            transform: scale(1);
        }

        50% {
            transform: scale(1.05);
        }
    }

    /* Accordions */
    .accordion-button {
        padding: 1rem;
        font-size: 0.95rem;
    }

    .accordion-body {
        padding: 1rem;
        font-size: 0.9rem;
    }

    /* Formulários */
    .form-control-lg,
    .form-select-lg,
    .btn-lg {
        padding: 0.75rem 1rem;
        font-size: 1rem;
    }
}