* {
	margin: 0;
	padding: 0;
}

html {
	overflow-x: hidden;
}

body {
	font-family: "PT Sans", sans-serif;
	font-size: 16px;
	background-image: url("/static/assets/images/background/bg1.jpg"),
		url("/static/assets/images/background/bg5.jpg");
	background-size: 100vw;
	background-position: center top, 0% 0%;
	background-repeat: no-repeat, repeat;
	overflow-x: hidden;
}

.no-js #loader {
	display: none;
}
.js #loader {
	display: block;
	position: absolute;
	left: 100px;
	top: 0;
}
.se-pre-con {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: url(/static/assets/images/spinner.gif) center no-repeat #000;
}

.no_decoration {
	text-decoration: none;
}

.no_decoration:hover {
	text-decoration: none;
}

/*Início de Modal de idade*/
body {
	height: 100vh;
}

#age_modal {
	width: 100vw;
	height: 100vh;
	z-index: 20;
	top: 0;
	position: fixed;
	background-image: url("/static/assets/images/background/bg1.jpg"),
		url("/static/assets/images/background/bg5.jpg");
	background-size: 100vw;
	background-position: center top, 0% 0%;
	background-repeat: no-repeat, repeat;
	overflow-x: hidden;
}

#initial_logo {
	height: auto;
}

#initial_logo img {
	display: table;
	margin-right: auto;
	margin-left: auto;
	margin-top: 3.2vh;
	max-width: 100%;
}

#age_form {
	width: 50%;
	height: auto;
	margin-left: 25%;
	border: double 16px rgba(0, 0, 0, 0.7);
	background-size: 100%;
	margin-top: 1.5%;
	margin-bottom: 2.2%;
	color: white;
	text-align: center;
}

#age_form_inside {
	background-color: rgba(0, 0, 0, 0.7);
	background-size: 100%;
	height: 100%;
	padding: 8px;
}

input:-webkit-input-placeholder {
	color: white;
}
input:-moz-placeholder {
	color: white;
}
input::-moz-placeholder {
	color: white;
}
input:-ms-input-placeholder {
	color: white;
}
input::placeholder {
	color: white;
}

/*.border_dots {
  border: dotted 3px rgba(255, 255, 255, 0.3);
  height: 100%;
}*/

#age_form h1 {
	font-family: "Playfair Display SC", serif;
	font-weight: 700;
	color: white;
	font-size: 230%;
	padding: 3% 3% 2% 3%;
}

#age_form h3 {
	font-size: 130%;
	padding: 3% 5% 1% 5%;
	color: white;
}

#age_buttons {
	display: table;
	margin-left: auto;
	margin-right: auto;
}

#age_buttons_box {
	display: flex;
}

.btn_confirmar {
	width: 16vw;
	min-width: 100px;
	padding: 3% 2%;
	text-align: center;
	margin-top: 4.5%;
	margin-left: 1.5vw;
	margin-right: 1.5vw;
	margin-bottom: 4%;
	font-size: 120%;
	background-color: rgba(0, 0, 0, 0);
	float: right;
}

.btn_confirmar:hover {
	padding: calc(3% + 5px) 2%;
}

#aviso {
	font-size: 90%;
	padding: 0% 5%;
}

#accept_cookies {
	color: white;
	font-size: 100%;
	text-align: center;
	text-shadow: 0px 0px 4px #000000;
	width: 90%;
	height: auto;
	margin-left: 5%;
	margin-bottom: 5%;
}

#accept_cookies a {
	color: white;
	font-weight: 700;
}

#modal_end_message {
	color: white;
	font-weight: 700;
	text-shadow: 0px 0px 2px #000000;
	z-index: 2;
	padding: 0% 6%;
	text-align: center;
	margin-bottom: 1.2%;
}

#modal_end_message span {
	text-transform: uppercase;
}

/*Fim de modal de idade*/

#header_normal {
	margin-top: 2.3%;
	text-align: center;
	z-index: 5;
}

#header_normal a {
	font-family: "Playfair Display SC", serif;
	color: white;
	font-size: 125%;
	font-weight: 700;
	text-shadow: 0px 0px 4px #000000;
}

#logo_normal {
	text-align: center;
	margin-bottom: 1%;
}

#logo_normal img {
	max-width: 16%;
}

#menu_normal {
	margin-bottom: 1%;
	z-index: 5;
}

#menu_normal a {
	padding: 0 1.5%;
	text-decoration: none;
	-webkit-transition: transform 0.5s; /* Safari */
	transition: transform 0.5s;
	max-height: 60px;
	display: inline-block;
}

#menu_normal a:hover {
	text-decoration: none;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

#header_mobile {
	display: none;
}

/* Header and menu*/
#logo {
	margin-top: 2.2%;
	margin-left: 8.7%;
	max-width: 30vw;
	z-index: 4;
	position: sticky;
	-webkit-transition: opacity 0.8s; /* Safari */
	transition: opacity 0.8s;
}

#menu {
	float: right;
	margin-top: 7.2%;
	margin-right: 9.8%;
	cursor: pointer;
	max-width: 12vw;
	z-index: 4;
	position: sticky;
	-webkit-transition: opacity 0.8s; /* Safari */
	transition: opacity 0.8s;
}

#logo_copy {
	margin-top: 2.2%;
	margin-left: 8.7%;
	max-width: 30vw;
	z-index: -2;
	position: fixed;
	left: 0;
	opacity: 0;
	-webkit-transition: opacity 0.8s; /* Safari */
	transition: opacity 0.8s;
}

#menu_copy {
	float: right;
	margin-top: 7.2%;
	margin-right: 9.8%;
	cursor: pointer;
	max-width: 12vw;
	z-index: -2;
	position: fixed;
	right: 0;
	opacity: 0;
	-webkit-transition: opacity 0.8s; /* Safari */
	transition: opacity 0.8s;
}

#menu_open {
	background-color: #000000;
	width: 100vw;
	height: 100vh;
	z-index: -2;
	position: fixed;
	opacity: 0;
	text-align: center;
	padding-top: 24vh;
	overflow: hidden;
	-webkit-transition: opacity 0.8s; /* Safari */
	transition: opacity 0.8s;

	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#282828+0,464646+50,282828+100&1+0,0.85+50,1+100 */
	background: -moz-linear-gradient(
		top,
		rgba(40, 40, 40, 1) 0%,
		rgba(70, 70, 70, 0.85) 50%,
		rgba(40, 40, 40, 1) 100%
	); /* FF3.6-15 */
	background: -webkit-linear-gradient(
		top,
		rgba(40, 40, 40, 1) 0%,
		rgba(70, 70, 70, 0.85) 50%,
		rgba(40, 40, 40, 1) 100%
	); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(
		to bottom,
		rgba(40, 40, 40, 1) 0%,
		rgba(70, 70, 70, 0.85) 50%,
		rgba(40, 40, 40, 1) 100%
	); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

#menu_open div.mobile-anchor {
	padding: 2vh 6%;
}

#menu_open a {
	font-family: "Playfair Display SC", serif;
	font-size: 130%;
	font-weight: 700;
	color: white;
	text-shadow: 0px 0px 4px #000000;
	-webkit-transition: font-size 0.5s; /* Safari */
	transition: font-size 0.5s;
}

#menu_open a:hover {
	text-decoration: none;
	font-size: 180%;
}

.i18n {
	display:inline-block;
	position: relative;
	top: -3px;
}

.language-flag-wrapper {
	width: 1.5em;
	height: 1.5em;
	padding-bottom: 1.5em;
	border-radius: 50%;
	position: relative;
	overflow: hidden;
	display: inline-block;
	vertical-align: middle;
	transition: background-color ease-in-out 0.2s;
	box-shadow: 0 0 10px rgba(0,0,0,0.75);
}

.language-flag-wrapper img {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	right: 0;
	object-fit: cover;
	font-family: "object-fit: cover;";
	border-radius: 50%;
	transition: padding ease-in-out 0.2s;
}

.form-lang {
  position: relative;
	margin: 0;
	display: inline-block;
}

.nav-link-lang {
  padding-bottom: 0.3em;
  position: relative;
}

.navbar-lang {
	padding: 0;
  background: transparent;
  border: 0;

}
.navbar-lang:hover,
.navbar-lang:focus {
	outline: none;
}

.lang-toggle {
  position: relative;
  display: block;
}

.lang-text {
  font-size: 0.8em;
  font-weight: 900;
  margin-top: 0.2em;
}

.nav-lang-abv {
	display: inline-block;
	vertical-align: middle;
	font-size: 0.8em;
}

.language-flag-wrapper {
	transition: opacity ease-in-out 0.2s;
}

.language-flag-wrapper:not(.current-language) {
	opacity: 0.6;
	cursor: pointer;
}

button.navbar-lang:hover .language-flag-wrapper:not(.current-language) {
	opacity: 1;
}

/*End of header and menu*/

.box {
	width: 80%;
	margin-left: 10%;
}

/*Basic button style*/
.btn_mais {
	text-decoration: none;
	cursor: pointer;
	border: 8px double white;
	color: white;
	text-transform: uppercase;
	font-weight: 700;
	-webkit-transition: color 0.5s, background-color 0.5s; /* Safari */
	transition: color 0.5s, background-color 0.5s;
}

.btn_mais:hover {
	text-decoration: none;
	border: 3px solid white;
	background-color: white;
	-webkit-box-shadow: inset 0px 0px 0px 3px rgba(105, 105, 105, 1);
	-moz-box-shadow: inset 0px 0px 0px 3px rgba(105, 105, 105, 1);
	box-shadow: inset 0px 0px 0px 3px rgba(105, 105, 105, 1);
	color: #696969;
}

.btn_voltar {
	padding: 2.4%;
	width: 36%;
	margin-left: 32%;
	min-width: 100px;
	text-align: center;
	margin-top: 6%;
	margin-right: 7.5%;
	position: relative;
	z-index: 2;
}

.btn_voltar.btn_mais:hover {
	border: 8px double white;
}

@supports (zoom: 2) {
	input[type="radio"],
	input[type="checkbox"] {
		zoom: 1.5;
	}
}
@supports not (zoom: 2) {
	input[type="radio"],
	input[type="checkbox"] {
		transform: scale(1.5);
		margin: 15px;
	}
}
/*End of basic button style*/

/*Footer*/
footer {
	position: relative;
}

#footer_bg_box {
	width: 100%;
	position: relative;
}

#footer_bg {
	width: 74%;
	margin-left: 13%;
	position: absolute;
	z-index: 1;
	margin-top: 6%;
}

#footer {
	background-image: url("/static/assets/images/background/bg3.jpg");
	background-size: 100%;
	background-repeat: no-repeat;
	width: 100%;
	text-align: center;
	background-position: 0px 0vw;
}

#logo2 {
	margin-top: 11%;
	position: relative;
	z-index: 2;
	max-width: 16vw;
	margin-left: -4px;
}

#footer_menu {
	margin-top: 2%;
	position: relative;
	z-index: 2;
}

#footer_menu a {
	font-family: "Playfair Display SC", serif;
	font-size: 130%;
	color: white;
	padding: 1%;
	text-shadow: 0px 0px 4px #000000;
	-webkit-transition: transform 0.5s;
	transition: transform 0.5s;
	display: inline-block;
}

#footer_menu a:hover {
	text-decoration: none;
	-webkit-transform: scale(1.15);
	transform: scale(1.1);
}

#footer_info {
	color: white;
	font-size: 105%;
	margin-top: 2.5%;
	position: relative;
	z-index: 2;
	text-shadow: 0px 0px 4px #000000;
}

#partners {
	position: relative;
	z-index: 2;
	margin-top: 6%;
}

#partners p {
	color: white;
	font-size: 105%;
	text-shadow: 0px 0px 4px #000000;
	font-weight: 700;
}

#partners_imgs {
	display: inline-block;
}

#partners_imgs img {
	max-width: 18%;
	min-width: 75px;
	margin: 1% 2%;
}

.end_message {
	color: white;
	font-weight: 700;
	padding-bottom: 6%;
	text-shadow: 0px 0px 2px #000000;
	z-index: 2;
	padding: 0% 6%;
}

.end_message span {
	text-transform: uppercase;
}

#menu_end {
	margin-top: 6%;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	text-align: center;
	margin-top: 85vh;
}

#footer_end {
	margin-top: 6%;
	position: relative;
	margin-bottom: 6%;
}

#politics {
	margin-top: 2%;
}

#politics a {
	color: white;
	padding: 0% 0.7%;
}
/*End of footer*/

@media screen and (min-width: 1600px) {
	body {
		font-size: 19px;
	}

	#logo {
		margin-left: 10.2%;
	}

	#menu {
		margin-right: 10.8%;
	}

	.box {
		width: 70vw;
		margin-left: 15vw;
	}

	#footer_bg {
		width: 66%;
		margin-left: 17%;
	}
}

@media screen and (max-width: 1200px) {
	#age_form h1 {
		font-size: 210%;
	}

	#age_form h3 {
		font-size: 120%;
	}
}

@media screen and (max-width: 992px) {
	body {
		font-size: 13px;
	}

	#age_form {
		width: 60%;
		margin-left: 20%;
		border: double 14px rgba(0, 0, 0, 0.7);
	}

	.btn_confirmar {
		width: 20vw;
	}

	#logo_normal img {
		max-width: 20%;
	}
}

@media screen and (max-width: 768px) {
	body {
		font-size: 17px;
		line-height: 21px;
	}

	#age_form_inside {
		padding: 5px;
	}

	/*.border_dots {
    border: dotted 2px rgba(255, 255, 255, 0.3);
  }*/

	#age_form {
		width: 70%;
		margin-left: 15%;
		margin-bottom: 8%;
		border: double 12px rgba(0, 0, 0, 0.7);
	}

	#age_form h1 {
		font-size: 190%;
	}

	#age_form h3 {
		padding: 1% 5% 5% 5%;
	}

	#age_buttons_box {
		display: block;
	}

	.btn_confirmar {
		width: 34vw;
		padding: 7% 2%;
		margin-top: 0%;
		margin-bottom: 6%;
		float: none;
	}

	.btn_confirmar:hover {
		padding: calc(7% + 4px) 7%;
	}

	#btn_no {
		margin-top: 8%;
	}

	#accept_cookies {
		width: 94%;
		margin-left: 3%;
		font-size: 90%;
	}

	#header_normal {
		display: none;
	}

	#header_mobile {
		display: block;
	}

	.btn_mais {
		border: 6px solid white;
		border-style: double;
	}

	.btn_voltar.btn_mais:hover {
		border: 6px double white;
	}

	.btn_mais:hover {
		border: 2px solid white;
		-webkit-box-shadow: inset 0px 0px 0px 2px rgba(105, 105, 105, 1);
		-moz-box-shadow: inset 0px 0px 0px 2px rgba(105, 105, 105, 1);
		box-shadow: inset 0px 0px 0px 2px rgba(105, 105, 105, 1);
	}

	#footer_bg {
		width: 120%;
		left: -23%;
	}

	#logo2 {
		max-width: 26vw;
		margin-left: -4px;
	}

	#footer_info {
		margin-top: 4%;
	}

	.footer_end {
		font-size: 85%;
	}
}

@media screen and (max-width: 576px) {
	body {
		font-size: 12px;
		line-height: 16px;
	}

	#age_form_inside {
		padding: 3px;
	}

	#age_form {
		width: 80%;
		margin-left: 10%;
		border: double 9px rgba(0, 0, 0, 0.7);
	}

	.btn_confirmar {
		width: 38vw;
		padding: 8% 2%;
		margin-top: 0%;
		margin-bottom: 6%;
	}

	.btn_confirmar:hover {
		padding: calc(8% + 4px) 2%;
	}

	#btn_no {
		margin-top: 11%;
	}
}
