.agensa-form {
    display: grid;
    place-items: center;
    padding: 32px 16px;
}

.agensa-form .agensa-card {
    width: 100%;
    max-width: 640px;
    background: #eaf3ff;
    /* azul clarinho do print */
    border-radius: 22px;
    padding: 40px 32px 28px;
    box-shadow: 0 8px 24px rgba(24, 39, 75, 0.06);
}

/* Mascote/Logo */
.agensa-form .agensa-logo {
    display: block;
    margin: 0 auto 10px;
    width: 110px;
    height: auto;
}

/* Título */
.agensa-form .agensa-title {
    text-align: center;
    font-weight: 700;
    font-size: 22px;
    color: #0b1f44;
    margin: 10px 0 22px;
}

/* Itens do formulário (Drupal) */
.agensa-form .webform-submission-form,
.agensa-form form {
    margin: 0;
}

/* Labels opcionais (o print usa apenas placeholders) */
.agensa-form .form-item>label {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

/* Campos de texto e textarea */
.agensa-form .form-text,
.agensa-form .form-email,
.agensa-form .form-tel,
.agensa-form .form-url,
.agensa-form textarea {
    width: 100%;
    background: #fff;
    border: 1px solid #e4e8f0;
    border-radius: 10px;
    padding: 14px 16px;
    font-size: 15px;
    color: #0b1f44;
    box-shadow: 0 1px 0 rgba(16, 24, 40, 0.02);
    transition: border-color .15s, box-shadow .15s;
}

/* Espaçamento entre campos */
.agensa-form .form-item:not(:last-child) {
    margin-bottom: 14px;
}

/* Textarea maior para "Sua pergunta" */
.agensa-form textarea {
    min-height: 140px;
    resize: vertical;
}

/* Placeholders */
.agensa-form ::placeholder {
    color: #667085;
}

/* Focus */
.agensa-form .form-text:focus,
.agensa-form textarea:focus {
    outline: none;
    border-color: #3577ff;
    box-shadow: 0 0 0 4px rgba(53, 119, 255, 0.15);
}

/* Mensagens de erro do Drupal */
.agensa-form .form-item--error-message,
.agensa-form .messages.messages--error {
    color: #b42318;
    background: #fef3f2;
    border: 1px solid #fecdca;
    border-radius: 10px;
    padding: 10px 12px;
    margin-top: 8px;
    font-size: 14px;
}

/* Botão Enviar */
.agensa-form .form-actions .button,
.agensa-form button[type="submit"],
.agensa-form input[type="submit"] {
    width: 100%;
    border: 0;
    border-radius: 10px;
    padding: 14px 18px;
    font-weight: 700;
    font-size: 15px;
    color: #fff;
    background: linear-gradient(180deg, #2f6bff 0%, #1f57ff 100%);
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(47, 107, 255, 0.35);
    transition: transform .03s ease-in, filter .15s ease-in;
}

.agensa-form .form-actions .button:hover,
.agensa-form button[type="submit"]:hover,
.agensa-form input[type="submit"]:hover {
    filter: brightness(0.98);
}

.agensa-form .form-actions .button:active,
.agensa-form button[type="submit"]:active,
.agensa-form input[type="submit"]:active {
    transform: translateY(1px);
}

.agensa-form .form-actions .button:disabled {
    opacity: .5;
    cursor: not-allowed;
    box-shadow: none;
}

/* Aviso do reCAPTCHA/Política */
.agensa-form .agensa-note {
    margin-top: 14px;
    font-size: 12px;
    color: #667085;
    text-align: left;
}

.agensa-form .agensa-note a {
    color: #1f57ff;
    font-size: 12px;
    text-decoration: none;
}

.agensa-form .agensa-note a:hover {
    text-decoration: underline;
}

/* Responsivo */
@media (max-width: 480px) {
    .agensa-form .agensa-card {
        padding: 28px 18px 22px;
    }

    .agensa-form .agensa-title {
        font-size: 20px;
    }
}

.agensa-success-card {
    max-width: 500px;
    margin: 80px auto;
    background: #eaf3ff;
    border-radius: 20px;
    padding: 40px 32px;
    text-align: center;
    box-shadow: 0 8px 24px rgba(24, 39, 75, 0.06);
}

.agensa-success-title {
    font-size: 22px;
    font-weight: 700;
    color: #0b1f44;
    margin-bottom: 10px;
}

.agensa-success-text {
    color: #667085;
    font-size: 15px;
    margin-bottom: 20px;
}

.agensa-success-btn {
    background: linear-gradient(180deg, #2f6bff 0%, #1f57ff 100%);
    border: 0;
    border-radius: 8px;
    color: #fff;
    font-weight: 700;
    padding: 12px 24px;
    cursor: pointer;
}

.agensa-success-btn:hover {
    filter: brightness(0.95);
}