/* ===================================
LAYOUT
=================================== */
.formulario_inscricao.content {
    margin-top: -55px;
    padding-bottom: 80px;
}

.formulario_inscricao .layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 35px;
    align-items: start;
}

.formulario_inscricao .card {
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, .08);
    padding: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

/* ===================================
FORM
=================================== */
.formulario_inscricao .form-card h2 {
    font-size: 34px;
    margin-bottom: 8px;
    color: #003d7d;
}

.formulario_inscricao .subtitle {
    color: #6b7280;
}

.formulario_inscricao .form-card .preco {
    font-size: 34px;
    margin-bottom: 8px;
    color: #003d7d;
    font-family: var(--font-family-bold);
    display: none;
}

.formulario_inscricao .form-card .preco.active {
    display: block;
}

.formulario_inscricao form {
    margin-top: 35px;
    width: 100%;
}

.formulario_inscricao .form-group {
    margin-bottom: 22px;
}

.formulario_inscricao .form-group label {
    display: block;
    margin-bottom: 8px;
    font-weight: 700;
}

.formulario_inscricao input,
.formulario_inscricao select,
.formulario_inscricao textarea {
    width: 100%;
    border: 1px solid #dbe4ef;
    border-radius: 10px;
    padding: 15px;
    font-size: 15px;
    font-family: inherit;
    transition: .25s;
}

.formulario_inscricao textarea {
    resize: vertical;
}

.formulario_inscricao input:focus,
.formulario_inscricao select:focus,
.formulario_inscricao textarea:focus {
    outline: none;
    border-color: #005db8;
    box-shadow: 0 0 0 4px rgba(0, 93, 184, .15);
}

.formulario_inscricao .grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

/* ===================================
TIPO DE PESSOA
=================================== */
.formulario_inscricao .person-selector {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.formulario_inscricao .person {
    border: 2px solid #dce5f1;
    border-radius: 14px;
    padding: 18px;
    cursor: pointer;
    transition: .25s;
    display: flex;
    align-items: center;
    gap: 14px;
}

.formulario_inscricao .person:hover {
    border-color: #005db8;
}

.formulario_inscricao .person.active {
    border-color: #005db8;
    background: #eef6ff;
}

.formulario_inscricao .person input {
    width: 20px;
    height: 20px;
}

.formulario_inscricao .person strong {
    display: block;
}

.formulario_inscricao .person span {
    font-size: 14px;
    color: #777;
}

/* ===================================
UPLOAD
=================================== */
.formulario_inscricao .upload {
    border: 2px dashed #cbd8ea;
    border-radius: 14px;
    padding: 40px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    transition: .3s;
}

.formulario_inscricao .upload:hover {
    background: #f7fbff;
    border-color: #005db8;
}

.formulario_inscricao .upload input {
    display: none;
}

.formulario_inscricao .upload h4 {
    margin-bottom: 8px;
    color: #003d7d;
}

.formulario_inscricao .upload p {
    color: #888;
    font-size: 14px;
}

/* ===================================
UPLOAD / CHECKBOX
=================================== */
.formulario_inscricao .check {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
}

.formulario_inscricao .check input {
    width: 18px;
    height: 18px;
    accent-color: #005db8;
    margin-bottom: 0px;
}

/* ===================================
BOTÃO
=================================== */
.formulario_inscricao .form-actions {
    margin-top: 35px;
}

.formulario_inscricao .btn-primary {
    width: 100%;
    border: none;
    cursor: pointer;
    background: linear-gradient(135deg, #003d7d, #005db8);
    color: #fff;
    padding: 18px;
    font-size: 16px;
    font-weight: 700;
    border-radius: 12px;
    transition: .3s;
}

.formulario_inscricao .btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 35px rgba(0, 93, 184, .30);
}

/* ===================================
SIDEBAR
=================================== */
.formulario_inscricao .sidebar {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.formulario_inscricao .sidebar h3 {
    margin-bottom: 25px;
    color: #003d7d;
    font-size: 22px;
}

/* ===================================
PASSOS
=================================== */
.formulario_inscricao .step {
    display: flex;
    gap: 18px;
    margin-bottom: 22px;
}

.formulario_inscricao .step:last-child {
    margin-bottom: 0;
}

.formulario_inscricao .number {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #FFC52E;
    color: #003d7d;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    flex-shrink: 0;
}

.formulario_inscricao .step strong {
    display: block;
    margin-bottom: 5px;
}

.formulario_inscricao .step p {
    color: #666;
    font-size: 14px;
}

/* ===================================
CARD EMAIL
=================================== */
.formulario_inscricao .info-card {
    background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.formulario_inscricao .info-card p {
    margin-bottom: 15px;
    color: #555;
}

.formulario_inscricao .email-example {
    margin-top: 20px;
    background: #eef5ff;
    border-left: 5px solid #005db8;
    padding: 16px;
    border-radius: 10px;
}

.formulario_inscricao .email-example strong {
    display: block;
    margin-bottom: 8px;
}

.formulario_inscricao .email-example span {
    font-size: 14px;
    color: #005db8;
    word-break: break-word;
}

/* ===================================
ANIMAÇÕES
=================================== */
.formulario_inscricao .card {
    animation: fadeUp .5s ease;
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===================================
RESPONSIVO
=================================== */
@media (max-width:1100px) {
    .formulario_inscricao .layout {
        grid-template-columns: 1fr;
    }

    .formulario_inscricao .sidebar {
        order: -1;
    }
}

@media (max-width:768px) {
    .formulario_inscricao .grid-2 {
        grid-template-columns: 1fr;
    }

    .formulario_inscricao .person-selector {
        grid-template-columns: 1fr;
    }
}

@media (max-width:480px) {
    .formulario_inscricao .card {
        padding: 25px;
    }

    .formulario_inscricao .form-card h2 {
        font-size: 28px;
    }

    .formulario_inscricao .btn-primary {
        padding: 16px;
    }
}