* {
    margin: 0%;
    padding: 0%;
    box-sizing: border-box;
}

@font-face {
    font-family: 'Karla';
    src: url(./assets/fonts/Karla-VariableFont_wght.ttf);
}

body {
    font-family: 'Karla', sans-serif;
}

.contact-form {
    border-radius: 1.5rem;
}

input,
div.form-check {
    border-radius: 0.5rem;
}

label.required::after {
    content: " *";
    color: #198754;
    font-weight: bold;
}

input.form-control:hover,
textarea.form-control:hover {
    border-color: #198754;
    cursor: pointer;
}

button.btn-success:hover {
    background-color: #157347;
    border-color: #157347;
    cursor: pointer;
}

.form-check {
    cursor: pointer;
}

#inputFirstName:focus,
#inputFirstName:active,
#inputLastName:active,
#inputLastName:focus {
    border-color: #198754;
    box-shadow: none;
}

#Textarea1:focus,
#Textarea1:active,
.inputEmail:focus,
.inputEmail:active {
    box-shadow: none;
}

.form-check.border:focus-within {
    background-color: rgba(25, 135, 84, 0.6);
}

.form-check-input:checked {
    background-color: #198754;
    border-color: #198754;
    box-shadow: none;
}

input[type="radio"]:checked {
    background-color: #198754;
    border-color: #198754;
    box-shadow: none;
}

.form-check-input[type="checkbox"]:not(:checked) {
    box-shadow: none;
}

input.is-invalid,
textarea.is-invalid {
    border-color: #dc3545;
}

input.is-invalid+.invalid-feedback,
textarea.is-invalid+.invalid-feedback {
    display: block;
    color: #dc3545;
}

.toast-body {
    font-family: 'Karla', sans-serif;
}



@media (min-width: 992px) {
    body {
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 100vh;
    }

    .contact-form {
        width: 90%;
        max-width: 750px;
        padding: 3rem;
    }

    .names {
        display: flex;
        gap: 2%;
    }

    .names .mb-3 {
        flex: 1 1 48%;
    }

    .rad-buttons {
        display: flex;
        flex-wrap: wrap;
        gap: 1rem;
    }

    .rad-buttons .form-check {
        flex: 1 1 48%;
        box-sizing: border-box;
    }
}