*
{
	margin:0;
	padding:0;
	border:0;
	font-family:inherit;
	color:inherit;
	box-sizing:border-box;
}

html,
body,
form
{
	width:100%;
	height:100%;
	position:relative;
}

@font-face {
  font-family: customAmaticBold;
  src: url("AmaticSC-Bold.ttf");
}

@font-face {
  font-family: customRoundendExtraBold;
  src: url("MPLUSRounded1c-ExtraBold.ttf");
}


.breaker
{
	clear:both;
}

.defaultWaiticon
{
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:rgba(255,255,255,0.3);
	background-image:url(../images/animated_loading_icon.gif);
	background-repeat: no-repeat;
	background-position: center center;
	z-index:3;
}

.menu
{
	width:100%;
	padding-top:30px;
}

.menu_line1
{
	width:100%;
	display:flex;
	height:21pt;
}

.menu_line2
{
	background-color:#FFF;
}

.menu_body
{
	max-width:1600px;
	margin-left:auto;
	margin-right:auto;
	display:grid;
	grid-template-columns:auto auto auto;
	justify-content:space-between;
}

.menu_img
{
	background-image:url('../img/header.png');
	width:160px;
	height:100px;
	margin-top:-40px;
	position:relative;
	background-position:center;
	background-size: cover;
}

.menu_profile_image
{
	background-image:url('../img/mucca.png');
	height:76px;
	width:76px;
	margin-top:-20px;
}

.menu_sections
{
	display:grid;
	grid-template-columns:auto auto auto auto;
	grid-column-gap:50px;
	font-size:30pt;
	width:100%;
	font-family:"customAmaticBold";
	justify-content:space-between;
}

.menu_sections a
{
	text-decoration:none;
}

.menu_profile_text
{
	color:#D02D26;
	font-family:"Quicksand",sans-serif;
	font-weight:700;
	font-size:18pt;
	margin-right:22px;
	padding-top:17px;
}

.menu_profile
{
	display:flex;
}

.menu_mobile
{
	display:none;
}

.page
{
	width:100%;
	background-image: linear-gradient(#63B5E9, #FFF);
}

.page_container .partecipa {
	width: 100%;
}

.top_img
{
	background-position: center;
	background-size: cover;
	margin-right:auto;
	margin-left:auto;
}

.first_img
{
	background-image:url('../img/movimento.png');
	height:180px;
	width:708px;
	margin-bottom:17px;
}

.second_img
{
	background-image:url('../img/macchine_desk.png');
	height:379px;
	width:963px;
	margin-bottom:76px;
}

.data_form_container
{
	text-align:center;
	padding-top:76px;
	border-width: 3px;
}

.data_form_text
{
	color:#172E70;
	font-family:"Montserrat", sans-serif;
	font-weight:300;
	font-size:30pt;
	margin-bottom:23px;
}

.data_form_field input
{
	background-color:#D02D26;
	color:#FFF;
	font-family:"Quicksand", sans-serif;
	font-weight:500;
	font-size:30pt;
	text-align:center;
	margin-bottom:53px;
	padding:14px 0px 14px 0px;
}

.last_field
{
	border-bottom: dashed #172E70 2px;
}

::placeholder {
  color: #FFF;
}

.data_form_submit
{
	margin-top:72px;
}

.data_form_submit input[type=submit]
{
	background-color:#D02D26;
	color:#FFF;
	padding:15px 160px;
	font-family:"Quicksand", sans-serif;
	font-size:30pt;
	font-weight:500;
	border-radius:40px;
}

.bottom_text
{
	color:#172E70;
	font-size:18pt;
	font-family:"Montserrat",sans-serif;
	font-weight:300;
	margin-top:171px;
	margin-bottom:30px;
	text-align:center;
}

.page_title
{
	margin-top: 65px;
	color:#D02D26;
	text-shadow:
   -1px -1px 0 #FFF,
    1px -1px 0 #FFF,
    -1px 1px 0 #FFF,
     1px 1px 0 #FFF;
   text-align:center;
   font-family:"customRoundendExtraBold";
   font-size:70px;
	line-height: 80px;
}
.page_title span {
	font-size: 40px;
}
.instructions_list
{
	display:grid;
	grid-template-rows:auto auto auto;
	grid-row-gap: 30px;
	width: 100%;
	margin: 0 auto 30px auto;
}

.instruction
{
	display:grid;
	grid-template-columns:62px 70px auto;
	grid-column-gap: 30px;
}

.instruction_image1
{
	background-image:url('../img/ico_carrello.png');
	width:50px;
	height:46px;
	justify-self:end;
}

.instruction_image2
{
	background-image:url('../img/ico_scontrino.png');
	width:46px;
	height:57px;
	justify-self:end;
}

.instruction_image3
{
	background-image:url('../img/ico_computer.png');
	width:62px;
	height:60px;
	justify-self:end;
}

.instruction_number
{
	color:#D02D26;
	text-shadow:
   -1px -1px 0 #FFF,
    1px -1px 0 #FFF,
    -1px 1px 0 #FFF,
     1px 1px 0 #FFF;
   text-align:center;
   font-family:"customRoundendExtraBold";
   font-size:50px;
   margin-right:20px;
   margin-left:10px;
}

.instruction_text
{
	font-family:"Montserrat", sans-serif;
	font-weight:500;
	font-size:20pt;
	color:#172E70;
	align-self:end;
	margin-bottom:10px;
}

.price_images
{
	background-image:url('../img/macchine_desk.png');
	width:936px;
	height:379px;
	margin-right:auto;
	margin-left:auto;
	background-size:contain;
	background-repeat:no-repeat;
	margin-bottom:27px;
}

.price_logo
{
	background-image:url('../img/peg_desktop.png');
	width:376px;
	height:125px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:58px;
	margin-top: 40px;
}

.price_descriptions
{
	display:flex;
	justify-content:center;
	text-align:center;
}

.price_element_title
{
	color:#FFF;
	font-family:"Montserrat",sans-serif;
	font-weight:700;
	font-size:18px;
	background-color:#172E71;
	border-top:9px solid #E0B14A;
	max-width:278px;
	margin-right:auto;
	margin-left:auto;
	padding-top:10px;
	padding-bottom:10px;
	margin-bottom:55px;
}

.price_element_description
{
	color:#172E70;
	font-family:"Montserrat",sans-serif;
	font-weight:400;
	font-size:18px;
	margin-bottom:40px;
	max-width:550px;
}

.price_button
{
	text-align:center;
}

.button
{
	background-color:#D02D26;
	color:#FFF;
	font-family:"Quicksand",sans-serif;
	font-weight:700;
	font-size:30px;
	padding:14px 30px 14px 30px;
	border-radius:30px;
}

.win_title
{
	margin-top:0;
}

.winner_description
{
	text-align:center;
	font-family:"Montserrat",sans-serif;
	font-weight:400;
	font-size:30px;
	color:#172E70;
	margin-top:45px;
}
.loose {
	padding: 0 200px;
}

.footer
{
	width:100%;
}

.footer_line1
{
	width:100%;
	display:flex;
}

.footer_color_line
{
	height:21pt;
}

.footer_line2
{
	background-color:#82C2E6;
	height:35px;
}

.footer_container
{
	background-color:#E1F2FC;
	padding: 0 20px;
}

.footer_container_text
{
	display:flex;
	position:relative;
}

.footer_img
{
	background-image:url('../img/footer.png');
	position:absolute;
	bottom:80px;
	width:180px;
	height:110px;
	right:0px;
	background-position:center;
	background-size: cover;
}

.footer_left
{
	width:50%;
	display:flex;
	color:#172E70;
	font-size:20px;
	font-family:"Montserrat",sans-serif;
	font-weight:300;
	margin-left: 50px;
	justify-content: space-evenly;
}
.footer_left a {
	text-decoration: none;
}
.footer_left a:hover {
	text-decoration: underline;
}

.footer_left > div
{
	margin-top:35px;
	margin-bottom:35px;
}

.footer_right
{
	width:50%;
	text-align:right;
	color:#172E70;
	font-size:20px;
	font-family:"Montserrat",sans-serif;
	font-weight:300;
}

.footer_right > div
{
	margin-top:35px;
	margin-bottom:35px;
}

.instruction_image_mobile
{
	display:none;
}
.win {
	background-image: url("../img/background-win.png");
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;

}
.win .partecipa {
	width: 50%;
	display: block;
	margin: 0 auto;
}
.win .bottom_text {
	padding-bottom: 35px;
	margin-bottom: 0;
	margin-top: 70px;
}
.mobile-hidden {
	display: block;
}
.desktop-hidden {
	display: none;
}
.premi_container {
	position: relative;
}
.box-container {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
@media only screen and (max-width: 800px) {
	.price_element_description {
		margin: 0 auto 40px;
	}
	.page {
		background-image: linear-gradient(#63B5E9, #FFF);
	}
	.page_container.premi_container {
		padding: 0 0;
		background-image: none;
	}
	.page_container {
		padding-top: 10px;
		padding: 0 20px;
		background-image: url("../img/background-mobile.png");
		background-position: top center;
		background-repeat: no-repeat;
		background-size: cover;

	}
	.box-container {
		width: 100%;
		padding: 0 20px;
	}
	.instructions_list {
		grid-row-gap: 0px;
	}
	.mobile-hidden {
		display: none;
	}
	.desktop-hidden {
		display: block;
	}
	.data_form_text
	{
		font-size:16px;
	}

	.data_form_field input[type=text]
	{
		font-size:20px;
		width: 80%;
	}
	.data_form_container {
		padding-top: 30px;
		border-top: dashed #172E70 2px;
		margin-top: 30px;
	}
	.bottom_text
	{
		font-size:14px;
		margin-left:10px;
		margin-right:10px;
		margin-top:59px;
	}

	.data_form_submit input[type=submit]
	{
		font-size:20px;
	}

	.first_img
	{
		width:291px;
		height:74px;
	}

	.second_img
	{
		display:none;
	}

	.footer_left
	{
		display:block;
		font-size:12px;
		margin-left:10px;
		padding-top:10px;
	}

	.footer_right
	{
		text-align:left;
		font-size:12px;
	}

	.menu_color_line
	{
		height:5px;
	}

	.footer_color_line
	{
		height:5px;
	}

	.footer_container_text
	{
		display:block;
	}

	.footer_right > div
	{
		margin-bottom:0px;
	}

	.menu_sections
	{
		display:none;
	}

	.menu_profile
	{
		display:none;
	}

	.menu
	{
		padding-top:50px;
	}

	.page_title
	{
		text-align: center;
		font-size:25px;
		text-shadow:
		   -1px -1px 0 #FFF,
		    1px -1px 0 #FFF,
		    -1px 1px 0 #FFF,
		     1px 1px 0 #FFF;
	}

	.instruction
	{
		display:block;
	}


	.instruction_text
	{
		text-align:center;
		font-size:16px;
	}

	.price_images
	{
		background-image:url('../img/macchine_mobile.png');
		width:99%;
		height:138px;
	}

	.price_logo
	{
		background-image:url('../img/peg_mobile.png');
		width:168px;
		height:55px;
	}

	.price_descriptions
	{
		display:block;
		margin-left:10px;
		margin-right:10px;
	}

	.price_element_description
	{
		font-size:14px;
	}

	.button
	{
		font-size:20px;
	}

	.winner_description
	{
		font-size:16px;
	}

	.win_title
	{
		margin-top:0;
		font-size: 35px;
		line-height: 42px;
	}

	.menu_image
	{
		position:absolute;
		top:11px;
		right:13px;
		background-image:url('../img/menu.png');
		width:44px;
		height:34px;
	}

	.close_menu_image
	{
		display:none;
		position:absolute;
		top:11px;
		right:13px;
		background-image:url('../img/chiudi.png');
		width:44px;
		height:34px;
	}

	.menu_mobile
	{
		background-color:#FFF;
		position:absolute;
		width:100%;
		height:100%;
		z-index:2;
	}

	.menu_sections_mobile
	{
		margin: 0 10px;
		display:block;
	}

	.menu_section > a
	{
		text-decoration:none;
	}

	.menu
	{
		margin-bottom:0px;
	}

	.top_img
	{
		margin-top:20px;
	}

	.mobile_menu_separator
	{
		background-image:url('../img/tratteggio.png');
		width:100%;
		height:2px;
		margin-top:10px;
		margin-bottom:10px;
	}

	.menu_section
	{
		margin-left:10px;
		font-family:"customAmaticBold";
		font-size:30px;
		color:#82C2E6 !important;
	}

	.page
	{
		position:relative;
	}

	.instruction_number_container
	{
		display:flex;
		text-align:center;
		margin-top:10px;
		width:50%;
		margin-left:auto;
		margin-right:auto;
		justify-content: center;
	}

	.instruction_image1
	{
		margin-top:10px;
	}

	.instruction_image_desktop
	{
		display:none;
	}

	.instruction_image_mobile
	{
		display:block;
	}

	.menu_line1
	{
		height:5px;
	}
    .footer_right {
		width: 100%;
	}
	.footer_right > div
	{
		margin-left:10px;
		padding-bottom:10px;
	}
	.data_form_submit input[type=submit] {
		padding: 15px 120px;
	}
	.footer_img {
		right: 10px;
	}
	.win .partecipa {
		width: 100%;
	}
	.loose {
		padding: 0;
	}
}
@media only screen and (min-width: 1500px) and (max-width: 1630px) {
	.box-container .page_title {
		margin-top: 40px;
		line-height: 70px;
	}
	.box-container .instructions_list {
		grid-row-gap: 16px;
	}
}
@media only screen and (min-width: 1280px) and (max-width: 1500px) {
	.box-container .page_title {
		margin-top: 15px;
		line-height: 65px;
		font-size: 60px;
	}
	.box-container .instructions_list {
		grid-row-gap: 10px;
	}
	.instruction_text {
		font-size: 20px;
	}
}
@media only screen and (min-width: 800px) and (max-width: 1280px) {
	.box-container .page_title {
		margin-top: 10px;
		line-height: 45px;
		font-size: 45px;
	}
	.box-container .page_title span {
		font-size: 30px;
	}
	.box-container .instructions_list {
		grid-row-gap: 0px;
	}
	.instruction_text {
		font-size: 20px;
	}
	.box-container .instruction  {
		grid-template-columns: 62px 70px 526px;
		grid-column-gap: 10px;
	}
}
@media only screen and (min-width: 800px) and (max-width: 930px) {
	.menu_profile_image {
		display: none;
	}
	.menu_profile_text {
		margin-right: 0;
	}
}
@media only screen and (min-width: 560px) and (max-width: 800px) {
	.instruction_number_container {
		padding: 35px 0;
	}
	.instruction_text {
		font-size: 20px;
	}
}
@media only screen and (max-width: 320px) {
	.instruction_number_container {
		width: 55%;
	}
	.instruction_text {
		font-size: 13px;
		line-height: 1;
	}
}
