/*
Theme Name: Nardin & Diniz – Sociedade de Advogados
Theme URI: https://wordpress.org/themes/twentytwenty/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors.
Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks, accessibility-ready
Version: 1.3
Requires at least: 5.0
Tested up to: 5.4
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nardin-diniz-advogados
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

:root {
    --primary-dark: #730000;     /* vermelho oficial */
    --secondary-dark: #021130;   /* azul oficial */
    --text-dark: #212529;
    --text-light: #ffffff;
    --bg-light: #f8f9fa;
    --border-color: #dee2e6;
    --shadow: 0 4px 12px rgba(0,0,0,0.08);
}

        body {
            font-family: 'Inter', sans-serif;
            color: var(--text-dark);
            background-color: #ffffff;
        }

        .navbar {
            background-color: white;
            box-shadow: 0 2px 10px rgba(0,0,0,0.05);
        }

        .navbar-brand img {
            height: 60px;
            width: auto;
        }

        .nav-link {
            font-weight: 500;
            color: var(--text-dark) !important;
            transition: color 0.3s ease;
        }

        .nav-link:hover {
            color: var(--primary-dark) !important;
        }

        .btn-primary {
            background-color: var(--primary-dark);
            border-color: var(--primary-dark);
            font-weight: 600;
            padding: 0.75rem 1.5rem;
            border-radius: 0.5rem;
            transition: all 0.3s ease;
        }

        .btn-primary:hover {
            background-color: #6a0d0f;
            border-color: #6a0d0f;
            transform: translateY(-2px);
        }

        .btn-secondary {
            background-color: white;
            border-color: var(--secondary-dark);
            color: var(--secondary-dark);
            font-weight: 600;
            padding: 0.75rem 1.5rem;
            border-radius: 0.5rem;
            transition: all 0.3s ease;
        }

        .btn-secondary:hover {
            background-color: var(--secondary-dark);
            color: white;
            border-color: var(--secondary-dark);
            transform: translateY(-2px);
        }

        .hero-section {
            background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
            padding: 5rem 0;
            position: relative;
        }

        .hero-content {
            max-width: 600px;
        }

        .hero-title {
            font-size: 2.5rem;
            font-weight: 700;
            color: var(--secondary-dark);
            line-height: 1.2;
            margin-bottom: 1rem;
        }

        .hero-subtitle {
            font-size: 1.25rem;
            color: #555;
            margin-bottom: 2rem;
        }

        .hero-image {
           max-width: 600px;
            height: auto;
            border-radius: 1rem;
            box-shadow: var(--shadow);
        }

        .section-title {
            font-size: 2rem;
            font-weight: 700;
            color: var(--secondary-dark);
            text-align: center;
            margin-bottom: 3rem;
        }

        .service-card {
            border: 1px solid var(--border-color);
            border-radius: 0.75rem;
            padding: 1.5rem;
            height: 100%;
            transition: all 0.3s ease;
            background-color: white;
            box-shadow: var(--shadow);
        }

        .service-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 25px rgba(0,0,0,0.1);
            border-color: var(--primary-dark);
        }

        .service-icon {
            font-size: 2.5rem;
            color: var(--primary-dark);
            margin-bottom: 1rem;
        }

.problem-solution {
    background-color: var(--bg-light);
    border-radius: 1rem;
    padding: 2rem;
    height: 100%; /* ← esta linha é essencial */
    box-shadow: var(--shadow);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}
        .problem-solution:hover {
            transform: translateY(-5px);
        }

        .problem-title {
            font-size: 1.5rem;
            font-weight: 600;
            color: var(--secondary-dark);
            margin-bottom: 1rem;
        }

        .lead-form {
            background-color: white;
            padding: 2.5rem;
            border-radius: 1rem;
            box-shadow: var(--shadow);
            max-width: 600px;
            margin: 0 auto;
        }

/* Estilos adicionais para o formulário */
.form-control,
.form-select {
    border: 1px solid #ced4da;
    border-radius: 0.75rem;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    transition: border-color 0.3s, box-shadow 0.3s;
}

.form-control:focus,
.form-select:focus {
    border-color: var(--primary-dark);
    box-shadow: 0 0 0 0.2rem rgba(122, 15, 18, 0.15);
}

.form-control::placeholder {
    color: #aaa;
}

.form-text {
    font-size: 0.875rem;
}

/* Destaque para ícones nos labels */
.text-primary {
    color: var(--primary-dark) !important;
}
        .team-section {
            background-color: var(--bg-light);
            padding: 5rem 0;
        }

        .team-photo {
            max-width: 300px;
            height: auto;
            border-radius: 1rem;
            box-shadow: var(--shadow);
            margin-bottom: 2rem;
        }

        .faq-item {
            margin-bottom: 1rem;
        }

        .accordion-button {
            font-weight: 600;
            color: var(--secondary-dark);
            background-color: white;
            border: 1px solid var(--border-color);
            border-radius: 0.5rem;
        }

        .accordion-button:not(.collapsed) {
            background-color: var(--primary-dark);
            color: white;
            box-shadow: none;
        }

        .footer {
            background-color: var(--secondary-dark);
            color: white;
            padding: 3rem 0;
            border-top: 1px solid rgba(255,255,255,0.1);
        }

        .footer-title {
            color: white;
            font-weight: 600;
            margin-bottom: 1.5rem;
        }

        .footer-link {
            color: #ccc;
            text-decoration: none;
            transition: color 0.3s ease;
        }

        .footer-link:hover {
            color: white;
        }

        .social-icon {
            color: #ccc;
            font-size: 1.5rem;
            margin-right: 1rem;
            transition: color 0.3s ease;
        }

        .social-icon:hover {
            color: white;
        }

        @media (max-width: 768px) {
            .hero-title {
                font-size: 2rem;
            }
            
            .hero-subtitle {
                font-size: 1rem;
            }
            
            .section-title {
                font-size: 1.75rem;
            }
            
            .lead-form {
                padding: 1.5rem;
            }
        }
        .btn-primary .bi-whatsapp {
    color: white;
    font-size: 1.2rem;
}
/* Cores personalizadas */
.text-primary-dark {
    color: var(--primary-dark) !important;
}

/* Ícones nos pontos-chave */
.bi-scale,
.bi-award,
.bi-people {
    font-size: 1.2rem;
}

/* Estilo do botão de contato */
.btn-primary {
    background-color: var(--primary-dark)!important;
    border-color: var(--primary-dark)!important;;
    padding: 0.75rem 1.5rem!important;;
    border-radius: 0.5rem!important;;
    transition: all 0.3s ease!important;;
}

.btn-primary:hover {
    background-color: #6a0d0f!important;
    border-color: #6a0d0f!important;;
    transform: translateY(-2px)!important;;
}
/* Ajustes Contact Form 7 */
.wpcf7-form .form-check-input {
    width: 18px;
    height: 18px;
    margin-top: 0.3rem;
}

.wpcf7-not-valid-tip {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

.wpcf7-response-output {
    border: none !important;
    margin: 2rem 0 !important;
}

.wpcf7-spinner {
    display: none;
}
/* ===== CORREÇÕES ESPECÍFICAS DO FORMULÁRIO ===== */

.lead-form {
    padding: 1.5rem !important;
    background: white;
    border-radius: 1rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

/* Reduzir espaçamento entre linhas */
.lead-form .row.g-3 {
    --bs-gutter-y: 1rem !important; /* Reduz de 1.5rem para 1rem */
    margin-bottom: 0.5rem !important;
}

/* Reduzir margin-bottom dos labels e campos */
.lead-form .form-label {
    margin-bottom: 0.5rem !important;
    font-weight: 500;
    color: #333;
    font-size: 0.95rem;
}

/* Reduzir espaçamento entre grupos de campos */
.lead-form .mb-4 {
    margin-bottom: 1rem !important; /* Reduz de 1.5rem para 1rem */
}

.lead-form .mt-3 {
    margin-top: 0.75rem !important; /* Reduz de 1rem para 0.75rem */
}

/* Ajustar altura dos inputs */
.lead-form .form-control-lg,
.lead-form .form-select-lg {
    padding: 0.5rem 1rem !important; /* Reduz padding vertical */
    font-size: 1rem !important;
    height: auto !important;
    min-height: 48px !important; /* Altura mínima consistente */
    line-height: 1.5 !important;
}

/* Textarea específico */
.lead-form textarea.form-control-lg {
    min-height: 100px !important; /* Altura razoável para textarea */
    resize: vertical;
    padding-top: 0.75rem !important;
}

/* Checkbox mais compacto */
.lead-form .form-check {
    margin-top: 0.75rem !important;
    margin-bottom: 0.75rem !important;
    padding-left: 0 !important;
}

.lead-form .form-check-input {
    margin-top: 0.25rem !important;
    margin-right: 0.5rem !important;
}

.lead-form .form-check-label {
    font-size: 0.9rem;
    line-height: 1.4;
}

/* Botão mais compacto */
.lead-form .btn-primary {
    padding: 0.75rem !important; /* Reduz de py-3 (1rem) para 0.75rem */
    margin-top: 0.5rem !important;
    font-size: 1.1rem !important;
}

/* Texto abaixo do botão */
.lead-form .text-center.mt-3 {
    margin-top: 1rem !important; /* Reduz de 1.5rem para 1rem */
}

.lead-form .text-center.mt-3 small {
    font-size: 0.85rem;
}

/* Ajustar ícones nos labels */
.lead-form .form-label .bi {
    font-size: 1rem;
    min-width: 20px;
}

/* Reduzir espaçamento do texto de ajuda */
.lead-form .form-text {
    margin-top: 0.25rem !important;
    font-size: 0.85rem;
}

/* Para dispositivos móveis */
@media (max-width: 768px) {
    .lead-form {
        padding: 1.25rem !important;
    }
    
    .lead-form .row.g-3 {
        --bs-gutter-y: 0.75rem !important;
    }
    
    .lead-form .mb-4 {
        margin-bottom: 0.75rem !important;
    }
    
    .lead-form .btn-primary {
        padding: 0.65rem !important;
        font-size: 1rem !important;
    }
}