html {
    font-size: 16px;
}

.inputArea {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}

.cf-turnstile {
    margin-top: 10px;
    margin-bottom: 0 !important;
}

.inputFormExternal {
    position: absolute; margin: 50px auto !important;
}

.inputFormExternal * {
    width: 100%;
}

.inputForm, .inputFormExternal {
    margin: 20px;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    background-color: rgb(255, 255, 255);
    padding: 20px 35px;
    min-width: 600px;
    max-width: 600px;
}

.inputForm div, .inputFormExternal div {
    margin-bottom: 10px;
}

.inputField,
.inputForm input,
.inputForm select {
    min-height: 50px;
    min-width: 100%;
    padding: 10px;
    border-radius: 4px;
    border: 1px solid gray;
    margin: 10px 0;
    box-sizing: border-box;
}

.inputLabel,
.inputForm div label {
    font-weight: bold;
}

.button {
    box-sizing: border-box;
    display: block;
    margin: 20px auto;
    min-height: 50px;
    width: 100%;
    font-size: 16px !important;
    text-align: center;
    text-decoration: none;
    padding: 15px;
    border-radius: 5px;
    border: 0px solid black;
    background-color: #333;
    color: white;
}

.button:hover {
    background-color: #575757;
    cursor: pointer;
}

.button:active {
    background-color: #111;
}

.error {
    color: red;
}

.suberror {
    font-style: italic;
    color: red;
}

.success {
    color: green;
}

hr {
    color: black;
    margin-top: 0;
    margin-bottom: 15px;
    width: 100%;
    color: black;
}

.required-field::after {
    content: "*";
    color: red;
}

.div_2 {
    display: grid;
    column-gap: 10px;
    grid-template-columns: 1fr 1fr;
}

.div_3 {
    display: grid;
    column-gap: 10px;
    grid-template-columns: 1fr 1fr 1fr;
}

.div_4 {
    display: grid;
    column-gap: 10px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

.body {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    background-color: #f5f5f5;
}

.text-container {
    background-color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: left;
    min-width: 40vw;
    max-width: 90vw;
    margin-top: 20px;
    padding: 40px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.text-container p {
    width: 100%;
    max-width: 100%;
    overflow-wrap: break-word;
}

@media screen and (max-width: 800px) {
    .inputForm, .inputFormExternal {
        min-width: 90%;
        max-width: 90%;
        padding: 20px;
        border-radius: 0;
    }

    .div_2 {
        grid-template-columns: 1fr;
    }

    .div_3 {
        grid-template-columns: 1fr;
    }

    .div_4 {
        grid-template-columns: 1fr;
    }

    .text-container {
        padding: 20px;
        min-width: 90%;
        max-width: 90%;
    }
}