/* Goethe Client Intentions */

/* Common Variables */
:root {
    --border-width: 0.3vh;
    --button-width: 14vh;
    --button-height: 5vh;
    --button-font-size: 84%;
    --button-transition: transform var(--transition-duration);
}
.blocker {
    display:block;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:rgba(255,255,255,0.8);
    cursor: not-allowed;
    position: fixed;
    z-index:1000000;
}




/* Main Container */
.Main {
    position: absolute;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    left: 50%;
    top: 50%;
    display: none;
    flex-direction: row;
    flex-wrap: wrap;
    z-index: 900;
}

/* Backgrounds */
.Background, .Background-Dim {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.Background-Dim {
    background-color: white;
    opacity: 0.9;
}

/* Intentions Container */
.Intentions-Container {
    position: relative;
    display: flex;
    width: 45%;
    height: 64vh;
    left: 27.5%;
    top: 3vh;
    flex-direction: column;
    border: 1px gray solid;
    box-shadow: 2px 2px 2px 2px lightgray;
}

/* Title Bar */
.Top-Title-Bar {
    width: 100%;
    height: 5vh;
    border-bottom: 1px lightgray solid;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1vh;
}

.Close-Window {
    width: 2vh;
    height: 1vh;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.Close-Window:hover {
    background-color: #f5f5f5;
}

.Top-Title {
    position: relative;
    width: 93%;
    height: 100%;
    color: black;
    text-transform: uppercase;
    align-content: center;
    margin-left: 2vh;
    font-weight: 550;
    font-size: 1.6vh;
}

/* Inner Container */
.Inner-Container {
    position: relative;
    width: 100%;
    height: 80%;
    background-color: white;
    border-bottom: 1px solid;
   
}

/* Button Container */
.Button-Container {
    position: relative;
    width: 100%;
    height: 8vh;
    background-color: white;
}

.Button-Reset, .Button-Send {
    position: absolute;
    width: var(--button-width);
    height: var(--button-height);
    top: 1vh;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: var(--button-font-size);
    text-transform: uppercase;
    cursor: pointer;
    transition: var(--button-transition);
}

.Button-Reset {
    background: black;
    color: white;
    left: 2%;
}

.Button-Reset:hover, .Button-Send:hover {
    transform: scale(0.95);
}

.Button-Send {
    background: white;
    border: 1px solid;
    box-shadow: 2px 2px lightgray;
    right: 2%;
    color: black;
}

.Button-Send-Title {
    color: black;
}

/* Form Styles */
.form-container {
    width: 100%;
    margin: 0 auto;
    padding: 20px;
    border-radius: 5px;
}

.form-group {
    display: flex;
    align-items: center;
    margin-bottom: 2%;
}

.form-group label {
    width: 30%;
    margin-right: 1vh;
    text-transform: none;
}

.form-group label.required::after {
    content: " *";
    color: red;
}

.form-group div {
    padding: 2%;
    border: 1px solid #ccc;
    border-radius: 3px;
    width: 70%;
    box-sizing: border-box;
}

.form-group div[contenteditable="true"]:empty:before {
    content: attr(placeholder);
    color: #888;
}

.form-group div:focus {
    border-color: #09ff00;
    outline: none;
}

.Text-Title {
    color: black;
    text-transform: uppercase;
    font-size: 1.2vh;
    font-weight: 400;
}

/* AGB Container */
.AGB-Container {
    display: flex;
    font-size: 1vh;
    font-weight: 400;
  
}


.Left-AGB-Title, .AGB-Text-Title, .AGB-Text {
    color: black;
    font-size: 100%;
    margin-bottom: 1vh;
}

.Left-AGB-Title {
    width: 31%;
}

.Text-AGB-Container {
    display: flex;
    flex-direction: column;
    width: 61%;
    max-height: 27vh;
    overflow-y: hidden;
}

.checkbox-Container {
    position: relative;
    width: 49%;
    left: 30.5%;
    top: 10%;
    margin-top: 1vh;
    display: flex;
    flex-direction: row;
    justify-content: left;
    align-items: flex-start;
}

.checkbox-AGB {
    width: 7%;
    height: 100%;
}

.checkbox-AGB-title {
    color: black;
    font-size: 75%;
    font-weight: 500;
}

/* Responsive Styles */
@media (max-width: 768px) {
    .Intentions-Container {
        width: 90%;
        left: 5%;
        top: 2vh;
    }

    .Button-Reset, .Button-Send {
        width: 30%;
        height: 5vh;
        font-size: 70%;
    }

    .Button-Reset {
        left: 5%;
    }

    .Button-Send {
        right: 5%;
    }
}
#errorContainer{
    z-index: 999;
    color: red;
    background-color: white;
    padding-left: 5%;
}
