@font-face {
    font-family: 'Gotham';
    src: url('../fonts/GothamGreek-Book.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Gotham';
    src: url('../fonts/GothamGreek-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'Narrow';
    src: url('../fonts/normal.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}
html,
body { padding: 0; margin: 0; width: 100%; height: 100%; overflow: hidden; }
body { background: #fcf1e3; color: #534f4c; font-family: 'Gotham', Arial, Sans-serif; font-size: 1.2vw; }
header { width: 100%; z-index: 9; background: #404c53; box-shadow: 0px 15px 20px -16px #000000; }
a { transition: color 0.4s; border: none; outline: 0; text-decoration: none; color: #534f4c; }
p { line-height: 1.2em; margin: 0; }
h1,h2 { padding-top: 5vh; margin: 0; padding: 1em 0; position: relative; font-size: 2em; font-weight: bold; }
h2:after { content: ''; position: absolute; bottom: 10px; left: 0; width: 100%; height: 1px; background: #534f4c; }
h2:after { bottom: 0.8em; top: auto; }
h2 { font-size: 2em; text-align: center; display: inline-block; line-height: 1; }

.mainMenu { display: flex; justify-content: center; align-items: center; list-style: none; padding: 0 3em 0 0; margin: 0; }
.mainMenu li { position: relative; display: flex; align-items: center; }
.mainMenu li:after { content: ''; width: 4px; height: 1em; margin: 0.5em; background: #ffffff; display: inline-block; }
.mainMenu li:last-child:after { display: none; }
.mainMenu a { color: #f9b712; text-decoration: none; font-weight: bold; font-size: 1.2em; padding: 0.1em 0.2em; display: block; text-align: center; transition: color 0.8s; line-height: 1; }
.mainMenu a.active { color: #ffffff; }


.mobileMenu { width: 60px; height: 60px; position: absolute; top: 0; right: 0; cursor: pointer; z-index: 10; display: none; }
.mobileMenu div { position: absolute; left: 10px; top: 19px; width: 40px; height: 3px; transition: all 0.5s ease-out; transform: rotate(0); background: #534f4c; }
.headerActive .mobileMenu div,
.homeActive .mobileMenu div { background: #fcf1e3; }
.mobileMenu div:nth-child(2) { top: 29px; } 
.mobileMenu div:nth-child(3) { top: 40px; }
.headerActive .mobileMenu div:nth-child(1) { transform: rotate(45deg); top: 29px; }
.headerActive .mobileMenu div:nth-child(2) { width: 0; left: 50%; }
.headerActive .mobileMenu div:nth-child(3) { transform: rotate(-45deg); top: 29px; }

.mainWrapper { width: 100%; height: 100%; display: flex; position: relative; flex-direction: column; }
.mainWrapper .imgBg { width: 100%; height: 100%; top: 0; left: 0; position: absolute; object-fit: cover; object-position: center center; }
.leftWrapper { height: 100%; display: flex; }
.bg { position: relative; top: auto; left: auto; width: auto; height: 100%; display: block; }
.mobileBg { display: none; }
.autan { height: 20vh; position: relative; margin-bottom: 1em; }
.leftWrapper h2 { color: #f9b712; position: absolute; font-size: 5.2vh; top: 12vh; left: 2rem; width: 100%; z-index: 2; text-align: left; text-shadow: 0.2em 0.2em 1em #000000; }
.leftWrapper h2:after { display: none; }
.leftWrapper h2 span { color: #ffffff; }
.leftWrapper h1:after { display: none; }
.notice { position: absolute; z-index: 2; bottom: 1em; left: 1em; font-size: 1vw; text-align: left; line-height: 1; }

.contentWrapper { display: grid; grid-template-rows: auto 1fr auto; height: 100vh; width: 100vw; }
.rightWrapper { flex-grow: 1; text-align: center; }

img { position: absolute; width: auto; height: auto; } 
.date { display: none; }
.homeActive .date { display: block; }
.logo { height: 5vh; top: 3em; left: 2rem; z-index: 2; }
.home-title { position: relative; display: block; width: 100%; }
.home-title img { position: relative; height: 7vh; margin: 0 auto; display: block; }
.gifts { padding: 1em; text-align: center; margin: 0 auto; position: relative; width: auto; }
.gifts img { position: relative; top: auto; right: auto; height: 49vh; margin: 0; box-sizing: border-box; }

.text { width: 100%; height: auto; box-sizing: border-box; padding: 2em; position: absolute; bottom: 2em; overflow: hidden; }
.text h1 { font-size: 6vh; position: relative; z-index: 2; width: 100%; text-align: center; margin: 0; padding: 0; line-height: 1; font-weight: 900; }
.text h1 div { font-size: 1.4em; }

.top { display: flex; flex-direction: row; overflow: hidden; }
.bottom { width: 100%; padding: 0.3em; font-family: 'Narrow', Arial, sans-serif; font-size: 0.6em; box-sizing: border-box; display: flex; align-items: center; justify-content: center; background: #ffffff; text-align: center; }

.sklavenitis { bottom: 1vw; right: 1em; height: 2vw; }

.page.homeWrapper { flex-direction: column; align-items: center; justify-content: space-evenly; height: 100%; width: 100%; }
.homeWrapper h1:before,
.homeWrapper h1:after { display: none; }
.homeWrapper .textWrapper p { margin: 0; }
.homeWrapper .info { position: relative; font-size: 4.2vh; border: 2px solid; border-left: 0; border-right: 0; padding: 0.5em 0; }
.homeWrapper .textWrapper .goto { border: none; outline: 0; }

.page,
.successActive .page.formWrapper.active { display: none; }
.page.active { display: block; }
.successActive .successMsg { display: flex; height: 100%; }
.page.formWrapper.active,
.page.homeWrapper.active { display: flex; }
.dateWrapper { width: 100%; }
.page { position: relative; z-index: 2; }
.bug { position: absolute; bottom: 1em; left: 86vh; width: 25vh; }
.homeActive .bug { display: none; }


.formWrapper { width: 75%; height: 100%; margin: 0 auto; flex-wrap: wrap; align-items: center; justify-content: space-between; display: none; box-sizing: border-box; overflow: hidden; overflow-y: auto; max-width: 700px; }
.formActive .formWrapper { display: flex; }
.formActive .rightWrapper { padding-bottom: 4vw; padding-top: 2em; }
.termspageActive .rightWrapper { font-size: 0.8em; }

.formWrapper > * { width: 100%; }
.seperator { display: block; width: 100%; height: 0.1em; background: #ffffff; display: none; }
.seperator:first-child { background: transparent; }
input,
input:-webkit-autofill { color: #404c53; width: 100%; font-size: 2.8vh; font-weight: bold; border: 2px solid #534f4c; padding: 0.5em 1em; display: block; margin: 0 auto; text-align: left; outline: 0; box-sizing: border-box; transition: 0.4s; background: transparent; font-family: 'Gotham', Arial, Sans-serif; }

input[type="submit"] { background: #f9b712; font-size: 2em; cursor: pointer; padding: 0.3em 0.6em 0.35em; color: #404c53; margin-bottom: 0.5em; font-weight: bold; border: none; border-radius: 2em; width: auto; }
input[type="submit"]:hover { background: #404c53; color: #f9b712; }

.formWrapper span.error { color: #c30000; text-align: center; display: block; margin: 3px 0; font-size: 12px; background: #ffffff; }

.checkboxWrapper { position: relative; display: flex; flex-direction: column; padding: 10px 0; align-items: center; overflow: hidden; color: #000000; margin-top: 2em; }
.checkboxWrapper .error { order: 2; }
.checkboxWrapper input { visibility: hidden; opacity: 0; width: 0; height: 0; top: -100px; left: -100px; position: absolute; }
.checkboxWrapper label { display: inline-block; padding-left: 30px; position: relative; cursor: pointer; font-size: 12px; line-height: 1.8em; }
.checkboxWrapper label::before { content: ''; position: absolute; top: 0; left: 0; width: 18px; height: 18px; border: 2px solid #404c53; box-sizing: border-box; }
.checkboxWrapper label:after {content: '\00d7';position: absolute;transform: scale(0);left: 0;top: -1px;margin: 0;color: #404c53;transition: 0.2s;font-weight: 900;line-height: 20px;font-size: 18px;backface-visibility: hidden;display: block;width: 18px;text-align: center;}
.checkboxWrapper input:checked~label:after { transform: scale(1); }
.checkboxWrapper a { text-decoration: underline; }
.checkboxWrapper a:hover { color: #fff200; }

::placeholder { opacity: 0.5; color: #404c53; }
input:-webkit-autofill { color: #404c53 !important; background: transparent !important; transition: all 5000s ease-in-out 0s; font-family: 'Gotham', Arial, Sans-serif !important; }

.successActive.formActive .stars { top: 20vh; left: 10vw; }
.successMsg { display: none; flex-direction: column; align-items: center; justify-content: center; box-sizing: border-box; }
.successMsg h2 { margin: 0; font-weight: bold; line-height: 1; }
.successMsg h2 span { font-size: .75em; }

.successMsg p { display: block; }
.successMsg p span { color: #ffff00; font-weight: bold; }
.successActive .successMsg .mosquito-wrapper { display: block; height: 17vh; transform: none; }
.successMsg .mosquito-wrapper img { height: 100%; left: 50%; }

.termsWrapper,
.winnersWrapper { overflow: hidden; overflow-y: auto; height: 100%; width: 100%; box-sizing: border-box; }
.winnersWrapper { text-align: center; }
.termsWrapper p,
.termsWrapper ul { line-height: 1.5em; margin-bottom: 1.4em; }
.termsWrapper li { margin-bottom: 1.2em; text-align: left; }
.winnersWrapper p { color: #ffff00; }
.winners { display: inline-block; text-align: center; text-transform: uppercase; padding-bottom: 4em; }
.winner { margin-bottom: 2em; text-align: center; }
.winners table { width: 100%; }
.winners td,
.winners th { padding: 0.5em 0.2em; text-align: left; font-size: 0.7em; width: 50%; }
.winners td:nth-child(1),
.winners th:nth-child(1) { text-align: right; }
.winners td h4 { text-align: center; font-size: 1.15em; }
.winnersWrapper .cookie { display: none; }

.termsWrapper { max-width: 85%; margin: 0 auto; text-align: center; padding: 0 2em; box-sizing: border-box; }
.termsContent a { text-decoration: underline; }



@media screen and (max-width: 1600px) {
	
}

@media(orientation:portrait){
	body { font-size: 2vh; }
    .mobileMenu { display: block; }
    header { display: flex; height: 100%; align-items: center; justify-content: center; transform: translate3d(-100%,0,0); transition: 0.8s ease-in-out; position: absolute; top: 0; left: 0; }
	.logo { z-index: 12; }
	.menuduck { display: block; } 
    .headerActive header { transform: translate3d(0,0,0); }
    .mainMenu { display: block; }
	.mainMenu li { margin: 1em 0; }
    .mainMenu li:after { display: none; }
    .mainMenu li:before { content: ''; width: 2em; height: 2em; background: url(../images/feet.svg) no-repeat center; background-size: contain; display: inline-block; }
    .mainMenu a { font-size: 1.2em; padding-left: 0.51em; }
    .logo {top: 1rem;left: 1rem; width: 15%; height: auto; }

    .top { flex-direction: column; }
	.contentWrapper { grid-template-rows: 1fr auto; }
	.leftWrapper { display: none; height: 40vh; width: 100%; overflow: hidden; position: relative; }
	.homeActive .leftWrapper { display: block; }

    .leftWrapper h1,
    .homeWrapper h1 { font-size: 1.2em; }
    .leftWrapper h2 { font-size: 2.3vh; top: 5vh; left: 1rem; }
	.bg.mobileBg { position: absolute; bottom: 0; left: 0; width: 100%; height: auto; display: block; }
	.bg { display: none; }


	.gifts img { height: 25vh; }
	.homeWrapper .info { position: relative; font-size: 4vw; }
	.home-title img {width: 50%;margin: 0 auto;}

	.formActive .rightWrapper { padding-bottom: 0; padding-top: 5em; }
	.formActive .formWrapper { max-height: 80vh; margin-right: auto; }
	input { font-size: 1em; }
	.checkboxWrapper label { font-size: 0.8em; text-align: left; padding-top: 0.4em; }
	.checkboxWrapper { margin: 0; }

	.bottom { padding: 0; }
	.intro .bottom { flex: 1; }
	.intro .mobileMenu { display: none; }
	.intro a { pointer-events: none; }
	.sklavenitis { position: relative; height: 3vh; bottom: auto; }
	.bottom p { padding: 1em; }
	
	
	.termsWrapper { font-size: 1.2em; }
	.winnersWrapper,
	.termsWrapper { padding: 2em; }
	.termspageActive .rightWrapper,
	.winnersActive .rightWrapper { padding-bottom: 1em; font-size: 1em; height: 100%; overflow: hidden; overflow-y: auto; }
	
	.successMsg p { text-align: center; width: 100%; }
	.date { text-align: center; }
}

@media only screen and (max-width: 1023px) and (min-width: 600px)  {

}

@media screen and (max-width: 700px) {

}