.form-page {
    width: min(960px, calc(100% - 48px));
    margin: 0 auto;
    padding: 80px 0;
}

.form-card {
    padding: 42px;
    border: 1px solid var(--border-soft);
    border-radius: 28px;
    background: rgba(17, 24, 39, 0.82);
}

.form-card h1 {
    margin: 18px 0;
    font-size: clamp(42px, 5vw, 72px);
    line-height: 1;
}

.form-card p {
    max-width: 720px;
    color: var(--text-muted);
    font-size: 20px;
    line-height: 1.6;
}

.form-field {
    display: grid;
    gap: 8px;
    margin-bottom: 18px;
}

.form-field label {
    color: var(--text-muted);
}

.form-input {
    width: 100%;
    min-height: 48px;
    padding: 0 16px;
    border: 1px solid var(--border-soft);
    border-radius: 14px;
    background: rgba(15, 23, 42, 0.92);
    color: var(--text-main);
    font-size: 16px;
}

.form-textarea {
    padding-top: 14px;
    resize: vertical;
}

.form-error {
    color: #fecaca;
}

.form-message {
    margin: 18px 0;
    padding: 14px 18px;
    border-radius: 14px;
}

.form-message.success {
    background: rgba(34, 197, 94, 0.14);
    color: #bbf7d0;
}
