* {
    margin: 0;
    padding: 0;
    border: none;
    font-family: 'Gibson_Regular', sans-serif;
}

body {
    width: 100%;
    height: 100%;
    background-image: url('../img/background.jpg');

    color: #fff;
    font-family: 'Gibson_Regular', sans-serif;
}

#containerButtons {
    display: grid; 
    grid-auto-rows: 1fr; 
    grid-template-columns: 1fr 1fr 1fr; 
    grid-template-rows: 1fr; 
    gap: 0 0.9375em;
}

#gameForm {
    display: none;
    margin: auto;
    width: 100%;
    background-image: url('../img/backgroundform.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    padding: 1.5625em 0;
}

#gameForm #containerDates {
    display: grid; 
    grid-auto-rows: 1fr; 
    grid-template-columns: 1fr 1fr 1fr; 
    grid-template-rows: 1fr; 
    gap: 0 0.9375em;
}

#gameForm #containerCabins,
#gameForm #containerHeaderWish,
#gameForm #containerHeaderRaffle,
#gameForm #containerHeaderMessage {
    display: grid; 
    grid-auto-rows: 1fr; 
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: 1fr; 
    gap: 0 0.9375em;
}

@media (min-width: 1000px) {
    #gameForm {
        background-image: url('../img/backgroundformbig.jpg');
    }
}

@media (min-width: 1999px) {
    body {
        font-size: 2em;
    }
}

@media (min-width: 3999px) {
    body {
        font-size: 4em;
    }
}

#gameForm #headerImage {
    width: 100%;
    height: auto;

    margin-bottom: 1.25em;
}

#gameForm .previewImage {
    max-width: 500px;
    max-height: 400px;
    margin: auto;
    display: block;

    position: absolute;
    right: 10em;

    display: none;
}

#gameForm .previewAnchor {
    text-decoration: none;
    color: #ec6500;
    font-size: 1.3em;
}

#gameForm #main {
    width: 95%;
    margin: auto;
}

#gameForm #main #headerText {
    margin-bottom: 1.5625em;
}

#gameForm .headline-small {
    font-size: 1.6em;
    text-align: center;
    font-family: 'Gibson_SemiBold', sans-serif;

    margin-bottom: 0.625em;
}

.marginbottom {
    margin-bottom: 2.5em;
}

#gameForm #main #headerText .headline {
    font-size: 2.1em;
    text-align: center;
    font-family: 'Gibson_Bold', sans-serif;
}

#gameForm #main #containerTextfields {
    display: grid; 
    grid-auto-rows: 1fr; 
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: 1fr; 
    gap: 0 0.9375em;
}

#gameForm #main .textfield {
    border: none;
    border-radius: 1.5625em;
    padding: 0.9375em;
    margin: 5px 0;
    font-size: 1.4em;
}

@media (min-width: 470px) {
    #gameForm #main #containerTextfields #inputAnswer {
        grid-area: auto / span 2;
    }
}

#gameForm #main #containerTextfields .textfield[notvalid=true] {
    background-color: #ffe4e4;
}

@media (max-width: 575px) {
    #gameForm #main #containerTextfields .textfield {
        width: calc( 100% - 30px )
    }
}

@media (max-width: 470px) {
    #gameForm #main #containerTextfields {
        grid-template-columns: 1fr; 
        grid-template-rows: 1fr 1fr 1fr 1fr; 
    }
    #gameForm #main #containerTextfields .textfield {
        width: auto;
    }
}

#gameForm #main #linkSection {
    margin: 0.9375em 0;
    display: grid; 
    grid-auto-rows: 1fr; 
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: 1fr; 
    gap: 0.9375em 0.9375em; 
}

#gameForm #main #linkSection .linkButton {
    cursor: pointer;
    background: #F08700;
    color: #fff;
    border-radius: 3.125em;
    padding: 0.9375em;
    box-shadow: 0.0625em 0.5625em 1.25em -0.625em rgba( 0, 0, 0, 0.4 );
    display: block;

    font-size: 1.45em;
    font-family: 'Gibson_Regular', sans-serif;
    white-space: normal;
    text-decoration: none;
    text-align: center;
}

@media (max-width: 61.25em) {
    #gameForm #main #linkSection .linkButton {
        font-size: 1.05em;
    }
}

#gameForm #main #linkSection .linkButton:hover {
    background: #f08e0e;
}

#gameForm #main #linkSection .linkButton:focus {
    background: #ae6404;
}

#gameForm #main #checkboxSection div {
    margin-bottom: -23px;
}

#gameForm #main #checkboxSection input[type=checkbox] {
    cursor: pointer;
    display: none;
}

#gameForm #main #checkboxSection .label {
    cursor: pointer;
    width: 38px;
    height: 30.5625em;
    content:url('../img/checkboxempty.png');
}

#gameForm #main #checkboxSection input[type=checkbox]:checked +.label {
    content:url('../img/checkboxfilled.png');
}

#gameForm #main #checkboxSection .textLabel {
    position: relative;
    bottom: 32px;
    left: 45px;
    max-width: 90%;
    display: inline-block;
}

#gameForm #main #checkboxSection .inlineLink {
    color: #fff;
}

#gameForm #buttonSend {
    cursor: pointer;
    background: #ec6500;
    color: #fff;
    border-radius: 3.125em;
    padding: 0.9375em;
    box-shadow: 0.0625em 0.5625em 1.25em -0.625em rgba( 0, 0, 0, 0.4 );
    display: block;

    font-size: 1.6em;
    font-family: 'Gibson_SemiBold', sans-serif;
    white-space: normal;

    margin: 0.625em auto 1.5625em auto;
    max-width: 275px;
    width: 100%;
}

#gameForm #buttonSend:disabled,
#gameForm #buttonSend[disabled] {
    cursor: default;
    opacity: 0.3;
}

#gameForm #buttonSend:hover {
    background: #f08e0e;
}

#gameForm #buttonSend:focus {
    background: #ae6404;
}

#gameForm #buttonSend img {
    margin: 5px 0 5px 0.9375em;
    width: 15%;
    height: auto;
    float: left;
}

#gameForm .buttons {
    cursor: pointer;
    background: #f08700;
    color: #fff;
    border-radius: 3.125em;
    padding: 0.9375em;
    box-shadow: 0.0625em 0.5625em 1.25em -0.625em rgba( 0, 0, 0, 0.4 );
    display: block;

    font-size: 1.45em;
    font-family: 'Gibson_SemiBold', sans-serif;
    white-space: normal;

    margin: 0.625em auto 1.5625em auto;
    width: 100%;
}

#gameForm .buttonDelete {
    border-radius: 1.5625em;
    width:fit-content;
    height: fit-content;
    display: none;
}

#gameForm .containerImageInput {
    display: grid; 
    grid-auto-rows: 1fr; 
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: 1fr; 
    gap: 0 0.9375em;
}

#gameForm .inputs {
    cursor: pointer;
    background: #ffffff;
    color: #000;
    border-radius: 3.125em;
    padding: 0.9375em;
    box-shadow: 0.0625em 0.5625em 1.25em -0.625em rgba( 0, 0, 0, 0.4 );
    display: block;

    font-size: 1em;
    font-family: 'Gibson_SemiBold', sans-serif;
    white-space: normal;

    margin: 0.625em;
    width: 90%;
}

#gameForm .inputs[type="time"],
#gameForm .inputs[type="date"] {
    width: fit-content;
}

#gameForm #containerRaffle textarea {
    cursor: auto;
    padding-left: 1.5625em;
}

#gameForm #containerRaffle .textareaLarge {
    min-height: 175px;
}

#gameForm .labels {
    background: #03aabb;
    color: #fff;
    border-radius: 3.125em;
    padding: 0.9375em;
    box-shadow: 0.0625em 0.5625em 1.25em -0.625em rgba( 0, 0, 0, 0.4 );
    display: block;

    font-size: 1em;
    font-family: 'Gibson_SemiBold', sans-serif;
    white-space: normal;

    margin: 0.625em ;
    width: 90%;
}

#gameForm #buttonBack img {
    margin: 2px 0;
    width: 10%;
    height: auto;
    float: left;
}

#gameForm #buttonBack:hover {
    background: #f08e0e;
}

#gameForm #buttonBack:focus {
    background: #ae6404;
}


@keyframes backgroundColorPalette {
	0% {
		background: #f08700;
	}
	25% {
		background: #905100;
	}
	50% {
		background: #ff9100;
	}
	75% {
		background: #7b4600;
	}
	100% {
		background: #f08700;
	}
}

#alertSave {
    background: #f08700;
    color: #fff;
    border-radius: 3.125em;
    padding: 0.9375em;
    box-shadow: 0.0625em 0.5625em 1.25em -0.625em rgba( 0, 0, 0, 0.4 );
    display: block;

    font-size: 1.45em;
    font-family: 'Gibson_SemiBold', sans-serif;
    white-space: normal;

    margin: 0.625em;
    width: fit-content;

    position: fixed;
    right: 0;
    top: 0;

    animation-name: backgroundColorPalette;
	animation-duration: 3s;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-timing-function: linear; 
    display: none;
}

#alertLoad {
    background: #f08700;
    color: #fff;
    border-radius: 3.125em;
    padding: 0.9375em;
    box-shadow: 0.0625em 0.5625em 1.25em -0.625em rgba( 0, 0, 0, 0.4 );
    display: block;

    font-size: 1.45em;
    font-family: 'Gibson_SemiBold', sans-serif;
    white-space: normal;

    margin: 0.625em;
    width: fit-content;

    position: fixed;
    right: 0;
    top: 0;

    animation-name: backgroundColorPalette;
	animation-duration: 3s;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-timing-function: linear; 
}