
        .netplus-form-hero {
            min-height: 100vh;
            background: #f8f9fa;
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1rem 0;
            overflow: hidden;
        }
        .netplus-bg-plus {
            position: absolute;
            inset: 0;
            z-index: 0;
            pointer-events: none;
            background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%230b3367' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
            background-repeat: repeat;
            background-size: 60px 60px;
            opacity: 0.8;
        }
        .netplus-content-card {
            position: relative;
            z-index: 1;
            background: rgba(255,255,255,0.97);
            border-radius: 18px;
            box-shadow: 0 8px 32px rgba(11,51,103,0.10);
            padding: 4rem 5rem 4rem 5rem; /* MAIS padding */
            max-width: 800px;
            width: 100%;
        }
        @media (max-width: 576px) {
            .netplus-content-card {
                padding: 2rem 0.7rem;
            }
        }
        /* Mantém o resto do teu CSS para animações dos fields e botão */
        .is-invalid, .form-control:invalid, .form-select:invalid {
            border-color: #dc3545 !important;
        }
        .invalid-feedback-custom {
            color: #dc3545;
            font-size: 0.95em;
            margin-bottom: 0.2em;
            display: none;
        }
        input:invalid + .invalid-feedback-custom,
        select:invalid + .invalid-feedback-custom {
            display: block;
        }
        /* Para file input */
        input[type="file"]:invalid ~ .invalid-feedback-custom {
            display: block;
        }
        /* Animação para os fields */
        .form-control,
        .form-select {
            transition: 
                transform 0.3s cubic-bezier(.4,0,.2,1),
                box-shadow 0.3s cubic-bezier(.4,0,.2,1),
                border-color 0.3s cubic-bezier(.4,0,.2,1),
                background-color 0.3s cubic-bezier(.4,0,.2,1);
        }
        .form-control:focus,
        .form-control:hover,
        .form-select:focus,
        .form-select:hover {
            border-color: #007bff;
            background-color: #f8f9fa;
            transform: translateY(-6px);
            box-shadow: 0 8px 18px -8px rgba(11, 51, 103, 0.18);
        }
        /* Remove animação dos campos readonly */
        .form-control[readonly]:focus,
        .form-control[readonly]:hover {
            background-color: #e9ecef; /* cor típica de readonly Bootstrap */
            border-color: #ced4da;
            transform: none;
            box-shadow: none;
            cursor: not-allowed;
        }
        input[type="file"]:focus,
        input[type="file"]:hover {
            transform: translateY(-6px);
        }
        .btn-netplus-anim {
        background: linear-gradient(45deg, #0B3367, #1a56b9);
        color: #fff;
        height: 2.375rem; /* igual aos fields */
        padding: 0.35rem 1rem;  /* MAIS padding em cima e em baixo */
        font-size: 1rem;
        border: none;
        border-radius: 8px;
        text-decoration: none;
        box-shadow: 0 4px 10px rgba(0,0,0,0.2);
        transition: transform 0.2s ease, box-shadow 0.2s ease;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        min-width: 120px;
    }

    .btn-netplus-anim:hover,
    .btn-netplus-anim:focus {
        transform: translateY(-3px);
        box-shadow: 0 8px 15px rgba(0,0,0,0.3);
        background: linear-gradient(45deg, #0B3367, #1a56b9);
        color: #fff;
    }
