@charset "utf-8";


/* =====================================================
   SEÇÃO DE CONTATO
   ===================================================== */

.contact-section {
    background-color: #1e293b !important;
    border-color: rgba(255, 255, 255, 0.08);
    color: #f5f7f5;
    padding: 4rem 2rem;
    text-align: center;
}

.contact-section .highlight {
    color: #4fa3ff;
}

.contact-section h2 {
    color: #ffffff;
    font-size: clamp(38px, 4.5vw, 48px);
    line-height: 1.08;
    font-weight: 900;
    letter-spacing: -1.8px;
    margin-bottom: 14px;
}

.contact-section h2 span {
    background: linear-gradient(
        90deg,
        #4d4de9 0%,
        #4f83ff 100%
    );

    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}


/* =====================================================
   GRID DE CONTATO
   ===================================================== */

.contact-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
    margin-top: 3rem;
}

.contact-form,
.contact-info {
    background-color: #141827;
    border-radius: 10px;
    padding: 2rem;
    flex: 1 1 400px;
    color: #f5f7f5;
}


/* =====================================================
   CAMPOS DO FORMULÁRIO
   ===================================================== */

.form-row {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.form-group {
    flex: 1;
    display: flex;
    flex-direction: column;
    text-align: left;
}

.form-group input,
.form-group select,
.form-group textarea {
    background-color: #1e293b;
    border: none;
    border-radius: 6px;
    padding: 0.8rem;
    color: #f5f7f5;
}


/* =====================================================
   INFORMAÇÕES DE CONTATO
   ===================================================== */

.contact-info ul {
    list-style: none;
    padding: 0;
}

.contact-info li {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 1rem;
}

.contact-info i {
    color: #4fa3ff;
    font-size: 1.2rem;
}


/* =====================================================
   PADRÃO GERAL DOS BOTÕES
   ===================================================== */

.btn {
    min-width: 180px;
    min-height: 52px;
    box-sizing: border-box;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 0.9rem 1.8rem;

    border-radius: 10px;
    border: 1px solid transparent;

    font-size: 16px;
    font-weight: 600;
    line-height: 1;

    text-align: center;
    text-decoration: none !important;

    cursor: pointer;

    position: relative;
    overflow: hidden;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background 0.25s ease,
        filter 0.25s ease,
        border-color 0.25s ease;
}


/* =====================================================
   BRILHO ANIMADO
   ===================================================== */

.btn::before {
    content: "";

    position: absolute;
    top: 0;
    left: -100%;

    width: 70%;
    height: 100%;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.18),
        transparent
    );

    transform: skewX(-20deg);

    transition: left 0.6s ease;

    pointer-events: none;
}

.btn:hover::before {
    left: 130%;
}


/* =====================================================
   MOVIMENTO DO BOTÃO
   ===================================================== */

.btn:hover {
    transform: translateY(-3px);
}

.btn:active {
    transform: translateY(-1px);
}


/* =====================================================
   REMOVE SUBLINHADO DOS LINKS
   ===================================================== */

.btn,
.btn:link,
.btn:visited,
.btn:hover,
.btn:focus,
.btn:active {
    text-decoration: none !important;
}


/* =====================================================
   BOTÃO PRIMÁRIO
   ===================================================== */

.btn-primary {
    background: linear-gradient(
        135deg,
        #7872f0 0%,
        #6c63ff 50%,
        #5f57e8 100%
    );

    border-color: #7872f0;
    color: #fff;

    box-shadow:
        0 8px 20px rgba(108, 99, 255, 0.30);
}

.btn-primary:hover {
    background: linear-gradient(
        135deg,
        #857fff 0%,
        #756cff 50%,
        #665df0 100%
    );

    color: #fff;

    box-shadow:
        0 14px 32px rgba(108, 99, 255, 0.48);

    filter: brightness(1.08);
}


/* =====================================================
   BOTÃO SECUNDÁRIO
   ===================================================== */

.btn-secondary {
    background: transparent;

    border-color: #6c63ff;
    color: #fff;

    box-shadow:
        0 4px 12px rgba(108, 99, 255, 0.10);
}

.btn-secondary:hover {
    background: linear-gradient(
        135deg,
        #6c63ff,
        #5f57e8
    );

    border-color: #6c63ff;
    color: #fff;

    box-shadow:
        0 12px 28px rgba(108, 99, 255, 0.38);

    filter: brightness(1.06);
}


/* =====================================================
   BOTÕES DO FORMULÁRIO
   ===================================================== */

.form-buttons {
    display: flex;
    justify-content: center;
    align-items: center;

    gap: 1rem;
    margin-top: 20px;

    flex-wrap: wrap;
}


/* =====================================================
   RESPONSIVIDADE
   ===================================================== */

@media (max-width: 768px) {

    .contact-grid {
        flex-direction: column;
    }

    .form-buttons {
        flex-direction: column;
        align-items: center;
    }

    .form-buttons .btn {
        width: 100%;
        max-width: 320px;
    }
}