@charset "UTF-8";
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

html {
  background: #fff;
  color: #000;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

html,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

body {
  margin: 0;
}

a {
  background: transparent;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

h2 {
  font-size: 1.5em;
  margin: 0.83em 0;
}

h3 {
  font-size: 1.17em;
  margin: 1em 0;
}

h4 {
  font-size: 1em;
  margin: 1.33em 0;
}

h5 {
  font-size: 0.83em;
  margin: 1.67em 0;
}

h6 {
  font-size: 0.75em;
  margin: 2.33em 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

q {
  quotes: "“" "”" "‘" "’";
}

q:before, q:after {
  content: "";
  content: none;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 0;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
  white-space: normal;
}

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
}

button,
input {
  line-height: normal;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

@font-face {
  font-family: "TIM Sans";
  src: url("fonts/TIMSans-Regular.eot");
  src: url("fonts/TIMSans-Regular.eot?#iefix") format("embedded-opentype"), url("fonts/TIMSans-Regular.woff") format("woff"), url("fonts/TIMSans-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "TIM Sans";
  src: url("fonts/TIMSans-Bold.eot");
  src: url("fonts/TIMSans-Bold.eot?#iefix") format("embedded-opentype"), url("fonts/TIMSans-Bold.woff") format("woff"), url("fonts/TIMSans-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "TIM Sans";
  src: url("fonts/TIMSans-Heavy.eot");
  src: url("fonts/TIMSans-Heavy.eot?#iefix") format("embedded-opentype"), url("fonts/TIMSans-Heavy.woff") format("woff"), url("fonts/TIMSans-Heavy.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "TIM Sans";
  src: url("fonts/TIMSans-Light.eot");
  src: url("fonts/TIMSans-Light.eot?#iefix") format("embedded-opentype"), url("fonts/TIMSans-Light.woff") format("woff"), url("fonts/TIMSans-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "gobold";
  src: url("fonts/gobold_regular-webfont.woff2") format("woff2"), url("fonts/gobold_regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
}

p,
span {
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
  -moz-text-size-adjust: none;
}

p.big {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  p.big {
    font-size: 1rem;
  }
}

p.small {
  font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
  p.small {
    font-size: 0.9rem;
  }
}

:root {
  color-scheme: light only;
}

body,
html {
  width: 100%;
  margin: 0;
  padding: 0;
  font-family: "TIM Sans", sans-serif;
  font-size: 16px;
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
  -moz-text-size-adjust: none;
  background-color: #122ac2;
}
body *,
html * {
  box-sizing: border-box;
}
body a,
body select,
body input,
body input[type=image],
html a,
html select,
html input,
html input[type=image] {
  font-family: "TIM Sans", sans-serif;
  outline: none;
}
body a:active, body a:focus,
body select:active,
body select:focus,
body input:active,
body input:focus,
body input[type=image]:active,
body input[type=image]:focus,
html a:active,
html a:focus,
html select:active,
html select:focus,
html input:active,
html input:focus,
html input[type=image]:active,
html input[type=image]:focus {
  outline: none;
}
body a,
html a {
  text-decoration: none;
}
body img,
html img {
  max-width: 100%;
  vertical-align: middle;
}
body button,
html button {
  font-family: "TIM Sans", sans-serif;
  outline: none;
  border: none;
  cursor: pointer;
}
body button:active, body button:focus,
html button:active,
html button:focus {
  outline: none;
}

body {
  background: #014dc3;
  background: linear-gradient(rgb(1, 17, 195) 0%, rgb(0, 32, 92) 100%);
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.relative {
  position: relative;
}

.nowrap {
  white-space: nowrap;
}

.regular {
  font-weight: normal;
}

.bold {
  font-weight: bold;
}

.uppercase {
  text-transform: uppercase;
}

.mt10 {
  margin-top: 10px;
}

.container {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  text-align: left;
}
@media screen and (max-width: 1400px) {
  .container {
    max-width: 90%;
  }
}

.content {
  max-width: 1280px;
  margin: auto;
}

@media screen and (max-width: 767px) {
  br.desktop {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  br.mobile,
  h4.mobile,
  span.mobile {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  br.desktop {
    display: none;
  }
}

img.mobile__version,
img.mobile__block__version {
  display: none;
}

@media screen and (max-width: 767px) {
  img.desktop__version {
    display: none;
  }
  img.mobile__version {
    display: inline;
  }
  img.mobile__block__version {
    display: block;
  }
}
.regular {
  font-weight: normal;
}

strong {
  font-weight: bold;
}

.italic {
  font-style: italic;
}

.error-wrapper {
  min-height: 50vh;
}
.error-wrapper h4 a {
  color: #122ac2;
}

.sep {
  display: block;
  width: 100%;
  max-width: 150px;
  margin: 1.2rem auto;
  border: 1px solid #ffffff;
  box-shadow: 0px 0px 4px 2px #122ac2, 0px 0px 8px 2px rgba(0, 0, 0, 0.25), inset 0px 0px 4px 2px #122ac2, inset 0px 0px 8px 2px rgba(0, 0, 0, 0.25);
}

.mb0 {
  margin-bottom: 0;
}

.shadow {
  font-weight: 900;
  text-shadow: 0px 0px 17px rgb(0, 0, 0);
}

.modal-logo-wrapper {
  margin-top: 2rem;
}
.modal-logo-wrapper img {
  max-width: 120px;
}

header.top-header {
  background-color: #122ac2;
  height: 4rem;
  padding: 0 2.4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  color: #ffffff;
}
@media screen and (max-width: 768px) {
  header.top-header {
    padding: 0 1rem;
  }
  header.top-header img {
    max-width: 100%;
  }
}
header.top-header .logo-wrapper {
  height: 1.5rem;
}
header.top-header .logo-wrapper img {
  max-width: 100%;
  max-height: 100%;
}
header.top-header .profile-wrapper {
  font-weight: bold;
  font-size: 1.3rem;
}
@media screen and (max-width: 768px) {
  header.top-header .profile-wrapper {
    font-size: 1rem;
  }
}
header.top-header .profile-wrapper span {
  display: inline-block;
  width: 45px;
  height: 45px;
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  header.top-header .profile-wrapper span {
    width: 35px;
    height: 35px;
    margin-left: 5px;
  }
}
header.top-header .profile-wrapper span img {
  max-width: 100%;
  max-height: 100%;
}

.visore {
  position: relative;
  text-align: center;
  color: #ffffff;
}
.visore img.main-visore {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .visore img.main-visore {
    display: none;
  }
}
.visore img.main-visore-mobile {
  display: none;
}
@media screen and (max-width: 767px) {
  .visore img.main-visore-mobile {
    display: inline;
  }
}
@media screen and (max-width: 768px) {
  .visore img {
    max-width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .visore .logo {
    max-width: 100%;
  }
}
.visore > div.logo,
.visore h1 {
  font-size: 4rem;
  text-transform: uppercase;
  padding: 1rem 0 4rem;
  margin: 0;
}
@media screen and (max-width: 1024px) {
  .visore > div.logo,
  .visore h1 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .visore > div.logo,
  .visore h1 {
    font-size: 2rem;
    padding: 1rem 0;
  }
}
@media screen and (max-width: 480px) {
  .visore > div.logo,
  .visore h1 {
    font-size: 1.5rem;
  }
}
.visore .logo-container {
  position: absolute;
  width: 45%;
  height: 100%;
  left: 55%;
  top: 0;
  text-align: left;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .visore .logo-container {
    width: 100%;
    bottom: 20%;
    left: 0;
    display: block;
    height: auto;
    top: auto;
    text-align: center;
  }
}
@media screen and (min-width: 1024px) {
  .visore .logo-container .logo img {
    max-width: 480px;
  }
}
@media screen and (max-width: 1024px) {
  .visore .logo-container .logo img {
    max-width: 360px;
  }
}
@media screen and (max-width: 480px) {
  .visore .logo-container .logo img {
    max-width: 200px;
  }
}
.visore > img.wave {
  margin-top: -10%;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .visore > img.wave {
    margin-top: -1rem;
  }
}

.footer {
  background-color: #122ac2;
  color: #ffffff;
  text-align: center;
  padding: 1rem 5px;
  position: relative;
  font-size: 12px;
  line-height: 1.1;
  max-height: 5000em;
}
.footer .logo-legal {
  font-size: 10px;
  line-height: 1.1;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 768px) {
  .footer {
    position: static;
    font-size: 0.6rem;
  }
}
.footer a,
.footer span.preferenze-cookie {
  color: #ffffff;
  text-decoration: underline;
  cursor: pointer;
}

div.btn,
button.btn {
  text-align: center;
  color: #081677;
  background-color: #ffffff;
  border-radius: 14px;
  font-size: 1.1rem;
  padding: 0.7rem 0;
  font-weight: 700;
  min-width: 200px;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  div.btn,
  button.btn {
    font-size: 1rem;
    padding: 0.6rem 3rem;
  }
}
div.btn.white,
button.btn.white {
  background-color: #ffffff;
  color: #081677;
}
div.btn.blue,
button.btn.blue {
  background-color: #122ac2;
  color: #ffffff;
}
div.btn.btn-neon,
button.btn.btn-neon {
  border-radius: 0;
  background-color: transparent;
  border: 1px solid #ffffff;
  box-shadow: 0px 0px 4px 2px rgb(18, 44, 246), 0px 0px 8px 2px rgba(0, 0, 0, 0.25), inset 0px 0px 4px 2px rgb(18, 44, 246), inset 0px 0px 8px 2px rgba(0, 0, 0, 0.25);
  color: #ffffff;
  min-width: 240px;
}
@media screen and (max-width: 300px) {
  div.btn.btn-neon,
  button.btn.btn-neon {
    min-width: auto;
  }
}

.animation {
  position: fixed;
  z-index: 100;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
}
.animation:after {
  content: "";
  background-color: #081677;
  opacity: 0.8;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.animation.show {
  display: block;
}
.animation .animation-inner {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 101;
}
@media screen and (max-width: 768px) {
  .animation .animation-inner {
    max-width: 70%;
    margin: auto;
  }
}

.main-content {
  color: #081677;
  text-align: center;
  padding: 2rem 5%;
  position: relative;
  background-image: url("../images/bg_desktop.jpg");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .main-content {
    background-image: url("../images/bg_mobile.jpg");
  }
}
.main-content a {
  color: #081677;
  text-decoration: underline;
}
.main-content strong {
  font-weight: bold;
}
.main-content h4 {
  font-size: 1.1rem;
  line-height: 1.2;
  font-weight: normal;
  margin: 1rem auto;
}
@media screen and (max-width: 768px) {
  .main-content h4 {
    font-size: 0.9rem;
    padding: 0;
    margin: 0.7rem auto;
  }
  .main-content h4 br.desktop {
    display: none;
  }
}
.main-content h3 {
  font-size: 1.4rem;
  line-height: 1.2;
  margin: 1rem auto;
  font-weight: normal;
}
.main-content h3 span {
  font-weight: normal;
  text-transform: none;
}
@media screen and (max-width: 768px) {
  .main-content h3 {
    font-size: 1.1rem;
    padding: 0;
    margin-top: 1rem;
  }
  .main-content h3 br.desktop {
    display: none;
  }
}
.main-content h5 {
  margin: 0;
  font-weight: normal;
  font-size: 1rem;
}
.main-content h2.bold,
.main-content h3.bold,
.main-content h4.bold,
.main-content h5.bold {
  font-weight: bold;
}
.main-content .bg-dark-wave.gioca h4 {
  font-size: 1.2rem;
  text-transform: none;
}
@media screen and (max-width: 768px) {
  .main-content .bg-dark-wave.gioca h4 {
    font-size: 1rem;
  }
}
.main-content .bg-dark-wave.gioca h5 {
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .main-content .bg-dark-wave.gioca h5 {
    font-size: 0.9rem;
  }
}
.main-content .neon {
  text-shadow: 0 0 10px #0164f2;
}

#giuria-page .form-dati-wrapper {
  margin: 1rem auto;
}
#giuria-page .form-dati-wrapper .form-dati {
  margin: 2rem auto;
}
#giuria-page .form-dati-wrapper #videoFile {
  display: none;
}
#giuria-page .form-dati-wrapper .plus {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(100px);
}

.box-wrapper {
  max-width: 1280px;
  margin: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 10%;
       column-gap: 10%;
  padding: 2rem 0;
}
@media screen and (max-width: 768px) {
  .box-wrapper {
    grid-template-columns: 1fr;
    row-gap: 3rem;
  }
}
.box-wrapper .box {
  background-color: #122ac2;
}
.box-wrapper .box .box-inner {
  height: 100%;
  padding: 1rem 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: #ffffff;
}
.box-wrapper .box .box-inner h2.title {
  margin: 0;
}
.box-wrapper .box .box-inner h4 {
  margin: 0 auto 2rem;
}
.box-wrapper .box .box-inner .btn-gioca {
  display: inline-block;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .box-wrapper .box .box-inner .btn-gioca {
    min-width: 180px;
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 300px) {
  .box-wrapper .box .box-inner .btn-gioca {
    min-width: auto;
  }
}

.box {
  border: 1px solid #ffffff;
  box-shadow: 0px 0px 4px 2px #122ac2, 0px 0px 8px 2px rgba(0, 0, 0, 0.25), inset 0px 0px 4px 2px #122ac2, inset 0px 0px 8px 2px rgba(0, 0, 0, 0.25);
  position: relative;
  padding: 1rem;
  border-radius: 20px;
}
.box.blue {
  box-shadow: 0px 0px 4px 2px #122ac2, 0px 0px 8px 2px rgba(0, 0, 0, 0.25), inset 0px 0px 4px 2px #122ac2, inset 0px 0px 8px 2px rgba(0, 0, 0, 0.25);
}
.box.red {
  box-shadow: 0px 0px 4px 2px rgb(255, 0, 0), 0px 0px 8px 2px rgba(0, 0, 0, 0.25), inset 0px 0px 4px 2px rgb(255, 0, 0), inset 0px 0px 8px 2px rgba(0, 0, 0, 0.25);
}

.box .box-vectors > div {
  border: 1px solid #ffffff;
  position: absolute;
  box-shadow: 0px 0px 4px 2px rgb(18, 44, 246), 0px 0px 8px 2px rgba(0, 0, 0, 0.25), inset 0px 0px 4px 2px rgb(18, 44, 246), inset 0px 0px 8px 2px rgba(0, 0, 0, 0.25);
}
.box .box-vectors .top {
  height: 1px;
  width: 40%;
  top: -10px;
  left: 30%;
}
.box .box-vectors .right {
  height: 40%;
  width: 1px;
  top: 15%;
  right: -10px;
}
.box .box-vectors .bottom-left {
  height: 1px;
  width: 40%;
  bottom: -10px;
  left: -10px;
}
.box .box-vectors .bottom-right {
  height: 1px;
  width: 35%;
  bottom: -10px;
  right: -10px;
}
.box .box-vectors .left {
  height: 40%;
  width: 1px;
  top: 0;
  left: -10px;
}

#instant-win-page {
  padding-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  #instant-win-page {
    min-height: inherit;
  }
}
#instant-win-page .logo-wrapper {
  width: 235px;
  margin: auto;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  #instant-win-page .logo-wrapper {
    width: 145px;
    margin-top: 1rem;
  }
}

.logo-big-wrapper {
  background: transparent;
  background: linear-gradient(180deg, transparent 0%, rgb(0, 55, 161) 100%);
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  padding: 2rem 0;
}

.form-wrapper .logo-wrapper {
  width: 235px;
  margin: auto;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .form-wrapper .logo-wrapper {
    width: 145px;
    margin-top: 1rem;
  }
}

.form {
  max-height: 5000em;
  padding: 0 20px 20px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .form {
    padding: 0 1rem 1rem;
  }
}
.form#form-participa {
  padding: 0;
}
@media screen and (max-width: 768px) {
  .form h2 {
    font-size: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .form .sep {
    margin: 1rem auto;
  }
}
.form h3 {
  text-align: center;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .form h3 {
    font-size: 0.9rem;
  }
}
.form .cta {
  margin-top: 1rem;
}
.form .form-date {
  margin: 1.5rem auto;
  max-width: 400px;
}
.form .form-date .data {
  padding: 0.3rem 4rem;
  display: inline-block;
  margin: 0.5rem auto;
  text-decoration: underline;
  font-weight: bold;
  font-size: 1.5rem;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .form .form-date .data {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 320px) {
  .form .form-date .data {
    font-size: 1rem;
  }
}
.form .form-date .data.selected {
  color: #f90202;
}
.form input[type=text],
.form input[type=password],
.form input[type=email],
.form select {
  display: block;
  margin: auto;
  margin-bottom: 10px;
  width: 280px;
  line-height: 30px;
  color: #081677;
  font-size: 1.2rem;
  background-color: #ffffff;
  outline: none;
  padding: 0.4rem 0;
  font-weight: lighter;
  border: 1px solid #ffffff;
  border-radius: 14px;
  box-shadow: 0px 0px 3px 1px #122ac2, 0px 0px 8px 2px rgba(0, 0, 0, 0.25), inset 0px 0px 3px 1px #122ac2, inset 0px 0px 8px 2px rgba(0, 0, 0, 0.25);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .form input[type=text],
  .form input[type=password],
  .form input[type=email],
  .form select {
    margin: 0 auto 6px;
    font-size: 1.1rem;
    line-height: 30px;
  }
}
.form ::-moz-placeholder {
  color: #081677;
  font-weight: normal;
  text-transform: uppercase;
}
.form ::placeholder {
  color: #081677;
  font-weight: normal;
  text-transform: uppercase;
}
.form :-ms-input-placeholder {
  color: #081677;
  font-weight: normal;
  text-transform: uppercase;
}
.form ::-ms-input-placeholder {
  color: #081677;
  font-weight: normal;
  text-transform: uppercase;
}
.form small {
  font-size: 0.7em;
  font-weight: 300;
  text-align: center;
  display: block;
  margin-bottom: 20px;
}
.form .informative {
  max-width: 450px;
  margin: 2rem auto 0;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .form .informative {
    max-width: 90%;
    font-size: 0.9rem;
    margin: 0 auto;
  }
}
.form .informative .flag {
  display: flex;
  margin-top: 0.3rem;
}
@media screen and (max-width: 768px) {
  .form .informative .flag {
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
    justify-content: flex-start;
  }
}
.form .informative .flag label {
  margin-left: 0.6rem;
  cursor: pointer;
}
.form .informative .flag label .light {
  font-size: 0.8rem;
}
.form .informative .flag label.consensi {
  font-size: 0.8rem;
}

.error {
  color: #ff0529;
  margin: 1rem auto;
  font-size: 1rem;
  font-weight: bold;
  max-width: 500px;
}
@media screen and (max-width: 768px) {
  .error {
    font-size: 1rem;
  }
}

.back-wrapper {
  position: relative;
  z-index: 100;
  text-align: left;
  padding-bottom: 0;
}
.back-wrapper span {
  color: #ffffff;
  font-size: 0.9rem;
}
.back-wrapper span img {
  fill: #001136;
}
.back-wrapper a {
  text-decoration: none;
}
#game-quiz-data .game-quiz {
  display: none;
}
#game-quiz-data .game-quiz .domanda {
  font-size: 1.3rem;
  font-weight: bold;
}
#game-quiz-data .game-quiz .risposte {
  padding: 2rem 0;
  width: 1024px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1023px) {
  #game-quiz-data .game-quiz .risposte {
    flex-direction: column;
    width: auto;
  }
}
#game-quiz-data .game-quiz .risposte .risposta {
  background: url("../images/btn-risposta.png") 100% 100% no-repeat;
  background-size: 100% 100%;
  min-width: 300px;
  margin: 0.5rem 1rem;
  padding: 0.8rem 0;
}
@media screen and (max-width: 1023px) {
  #game-quiz-data .game-quiz .risposte .risposta {
    max-width: 300px;
  }
}
#game-quiz-data .game-quiz .risposte .risposta.selected {
  background: url("../images/btn-risposta-white.png") 100% 100% no-repeat;
  background-size: 100% 100%;
  color: #081677;
}
#game-quiz-data #confirm-quiz:disabled {
  opacity: 0.7;
}

.serie-a-scopri,
.bic-scopri {
  text-decoration: underline;
  cursor: pointer;
}

#modal-serie-a sup,
#modal-bic sup,
#modal-walkabout sup {
  text-transform: none;
}
#modal-serie-a .modal-close,
#modal-bic .modal-close,
#modal-walkabout .modal-close {
  background-image: url("../images/ico-close-blue.png");
}
#modal-serie-a .modal-content,
#modal-bic .modal-content,
#modal-walkabout .modal-content {
  background: #ffffff url(../images/sponsorship-calcio/bg-light-wave-full.png) top left repeat-y;
  background-size: contain;
  color: #000077;
  padding: 3rem 4rem;
  text-align: left;
  max-height: 5000em;
}
@media screen and (max-width: 768px) {
  #modal-serie-a .modal-content,
  #modal-bic .modal-content,
  #modal-walkabout .modal-content {
    padding: 1rem 1.4rem;
  }
}
#modal-serie-a .modal-content h2,
#modal-bic .modal-content h2,
#modal-walkabout .modal-content h2 {
  font-size: 2.4rem;
  font-weight: 900;
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  #modal-serie-a .modal-content h2,
  #modal-bic .modal-content h2,
  #modal-walkabout .modal-content h2 {
    font-size: 1.6rem;
  }
}
#modal-serie-a .modal-content h4,
#modal-bic .modal-content h4,
#modal-walkabout .modal-content h4 {
  text-transform: uppercase;
  font-size: 1.1rem;
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  #modal-serie-a .modal-content h4,
  #modal-bic .modal-content h4,
  #modal-walkabout .modal-content h4 {
    font-size: 1rem;
    padding: 0;
  }
}
#modal-serie-a .modal-content h5,
#modal-bic .modal-content h5,
#modal-walkabout .modal-content h5 {
  margin: 0.6rem auto 0;
  font-size: 1rem;
}
#modal-serie-a .modal-content p,
#modal-bic .modal-content p,
#modal-walkabout .modal-content p {
  margin-top: 0;
  font-size: 1rem;
}

.vai-timparty {
  margin-top: 2rem;
}

.modal {
  background-color: rgba(14, 32, 70, 0.9);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow-x: hidden;
  overflow-y: auto;
  z-index: 1072;
  display: none;
}

.modal-showing {
  overflow: hidden;
}

.fade.show {
  opacity: 1;
}

.modal-dialog {
  position: relative;
  width: auto;
  pointer-events: none;
  max-width: 900px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(100% - 3.5rem);
  margin: 1.75rem auto;
}
@media screen and (max-width: 767px) {
  .modal-dialog {
    min-height: calc(100% - 2.5rem);
    margin: 1.25rem;
  }
}
.modal-dialog .box {
  padding: 0;
  background-image: url("../images/bg_desktop.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .modal-dialog .box {
    background-image: url("../images/bg_mobile.jpg");
  }
}

.modal-content {
  color: #001136;
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-size: cover;
  outline: 0;
  padding: 0 2rem;
  max-height: 5000em;
}
@media screen and (max-width: 767px) {
  .modal-content {
    padding: 0 1rem;
  }
}
.modal-content a {
  color: #01bdef;
  text-decoration: none;
}

.modal-close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 20px;
  height: 20px;
  background: url("../images/ico-close-blue.png") center center no-repeat;
  cursor: pointer;
  z-index: 10;
}

.btn-modal {
  display: inline-block;
  font-size: 1.8rem;
  padding: 1rem 3rem;
  background-color: #00ffff;
  border: 1px solid #001136;
  text-align: center;
  font-weight: bold;
  text-transform: uppercase;
  cursor: pointer;
}

.alert-error {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
  display: none;
}

.feedback {
  text-align: center;
  padding: 3rem 0 1rem;
}
@media screen and (max-width: 767px) {
  .feedback {
    padding: 2rem 0 2rem;
  }
}
.feedback .feedback-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  row-gap: 0.5rem;
}
.feedback .estrazione-wrapper {
  margin: 2rem auto 2rem;
}
.feedback p.estrazione {
  color: #ffffff;
  display: inline-block;
  margin: 0 auto;
  font-size: 0.8rem;
  padding: 1rem;
}
.feedback a {
  text-decoration: underline;
}
.feedback .logo.amici img {
  margin-top: 1rem;
  max-width: 180px;
}
.feedback h2 {
  font-size: 2rem;
  font-weight: 900;
  text-transform: uppercase;
  margin: 3rem auto 1rem;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .feedback h2 {
    font-size: 1.6rem;
  }
}
.feedback h3 {
  font-size: 1.3rem;
  font-weight: 700;
  display: inline-block;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .feedback h3 {
    font-size: 1.1rem;
  }
}
.feedback h4 {
  font-size: 1.3rem;
  line-height: 1.25;
  font-weight: normal;
  margin: 1rem auto 0;
}
@media screen and (max-width: 767px) {
  .feedback h4 {
    font-size: 1.1rem;
  }
}
.feedback h4.bold {
  font-weight: 700;
}
.feedback h5 {
  margin-top: 2rem;
  line-height: 1.1;
  font-size: 1.1rem;
}
.feedback .btn-close {
  display: inline-block;
  margin: 1.5rem auto 0;
}
.feedback p.error {
  margin-top: 1rem;
  color: #ff0529;
  font-size: 1rem;
  font-weight: bold;
}
.feedback .warning {
  font-weight: bold;
  text-decoration: underline;
}
.feedback .mailto {
  font-weight: bold;
}
.feedback .btn.download {
  margin-top: 0;
  background-color: #00ffff;
  color: #0033a1;
  font-size: 24px;
  padding: 8px 30px;
  font-weight: bold;
}
.feedback .ico-download {
  display: inline-block;
  margin-right: 5px;
}
.feedback .form {
  max-height: 5000em;
  padding: 1rem 0;
}
.feedback .form .form-dati {
  max-width: 550px;
  margin: auto;
}
.feedback .form .form-dati .row {
  display: flex;
  justify-content: center;
  align-items: center;
}
.feedback .form .form-dati .row > div[class^=col] {
  flex: 1;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .feedback .form .form-dati .row > div[class^=col] {
    width: 80%;
  }
}
@media screen and (max-width: 767px) {
  .feedback .form .form-dati .row {
    flex-direction: column;
  }
}
.feedback .form .row-select {
  position: relative;
}
.feedback .form .row-select select {
  -webkit-appearance: none;
  margin: 0;
}
.feedback .form .row-select::after {
  content: "▼";
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  font-size: 12px;
}
.feedback .form input[type=text],
.feedback .form input[type=email],
.feedback .form select {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
  font-size: 1.1rem;
}
.feedback .form .btn {
  font-size: 1.2rem;
}
.feedback .form option {
  color: #122ac2;
}

.feedback-content.form #first-step-vinto-modal h3,
.feedback-content.form #form-dati h3 {
  margin-top: 2rem;
  margin-bottom: 0;
}
.feedback-content.form #first-step-vinto-modal h4,
.feedback-content.form #form-dati h4 {
  text-transform: uppercase;
}
.feedback-content.form #first-step-vinto-modal span.regular,
.feedback-content.form #form-dati span.regular {
  display: inline-block;
  margin-top: 2rem;
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .feedback-content.form #first-step-vinto-modal span.regular,
  .feedback-content.form #form-dati span.regular {
    font-size: 1.1rem;
  }
}
.feedback-content.form #first-step-vinto-modal .btn,
.feedback-content.form #form-dati .btn {
  min-width: 320px;
}
@media screen and (max-width: 767px) {
  .feedback-content.form #first-step-vinto-modal .btn,
  .feedback-content.form #form-dati .btn {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 480px) {
  .feedback-content.form #first-step-vinto-modal .btn,
  .feedback-content.form #form-dati .btn {
    min-width: 70%;
  }
}

.feedback.bic h5 {
  font-size: 1rem;
}

body.prospect {
  background-color: #122ac2;
}
@media screen and (min-width: 1024px) {
  body.prospect .main-content .logo img {
    max-width: 600px;
  }
}
body.prospect .main-content .top-claim-accedi h4,
body.prospect .main-content #signup-top h4,
body.prospect .main-content .gioca h4 {
  text-transform: none;
}
body.prospect img.ico-logout {
  margin-left: 1rem;
  max-height: 1.4rem;
}
body.prospect .scelta-concorso .box-wrapper .box-inner {
  row-gap: 1rem;
}
body.prospect .scelta-concorso .box-wrapper h4.vantaggi {
  text-align: center;
  font-size: 1.2rem;
  max-width: 92%;
  text-transform: none;
  margin: 0 auto;
}
body.prospect .scelta-concorso .box-wrapper h4.vantaggi.regular {
  font-weight: normal;
}
@media screen and (max-width: 768px) {
  body.prospect .scelta-concorso .box-wrapper h4.vantaggi {
    font-size: 1rem;
  }
}
body.prospect .scelta-concorso .box-wrapper h4.vantaggi .new-label {
  max-height: 25px;
}
@media screen and (max-width: 768px) {
  body.prospect .scelta-concorso .box-wrapper h4.vantaggi .new-label {
    max-height: 20px;
  }
}
body.prospect .scelta-concorso .box-wrapper .small {
  font-size: 1rem;
  font-weight: normal;
  margin-top: 1rem;
}
body.prospect .scelta-concorso .box-wrapper .small.mobile {
  display: none;
}
body.prospect .scelta-concorso .box-wrapper .small.bold {
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  body.prospect .scelta-concorso .box-wrapper .small {
    font-size: 0.8rem;
  }
  body.prospect .scelta-concorso .box-wrapper .small.mobile {
    display: inline-block;
    margin-top: 1rem;
  }
}
body.prospect .main-content .bg-light-wave {
  padding: 0;
}
@media screen and (max-width: 768px) {
  body.prospect .main-content .bg-dark-wave.gioca .cta {
    padding: 2rem 0 3rem 0;
  }
}
body.prospect .main-content .bold {
  font-weight: bold;
}
body.prospect .feedback-content.form {
  padding: 1rem 0;
}
body.prospect .form {
  padding: 4rem 0 2rem;
  padding-top: 0;
}
body.prospect .form .form-dati {
  padding-top: 1.5rem;
  margin: auto;
  max-width: 280px;
}
body.prospect .form .password-wrapper {
  position: relative;
}
body.prospect .form .password-wrapper a.show-password {
  position: absolute;
  top: 50%;
  right: 1.2rem;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  cursor: pointer;
}
body.prospect .form .password-wrapper a.show-password svg {
  fill: #ababa9;
  max-height: 2rem;
  width: 1.3rem;
}
body.prospect .form .password-wrapper a.show-password.active svg {
  fill: #ffffff;
}
@media screen and (max-width: 768px) {
  body.prospect .form .password-wrapper a.show-password {
    right: 2.2rem;
  }
}
body.prospect .form .thankyou {
  padding: 4rem 0;
  text-transform: none;
}
body.prospect .form .row.recupera {
  text-align: right;
  margin-right: 0.8rem;
}
body.prospect .form .flag {
  text-align: justify;
  justify-content: flex-start;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  body.prospect .form .flag {
    display: block;
    max-width: 320px;
    padding-left: 0.4rem;
  }
}
body.prospect .form .flag input[type=checkbox] {
  margin-top: 3px;
}
body.prospect .cta {
  margin-bottom: 2rem;
}
body.prospect .cta .registrati,
body.prospect .form a.recupera-pwd {
  margin-top: 0.6rem;
  font-size: 0.8rem;
  cursor: pointer;
}
body.prospect .cta .registrati a,
body.prospect .form a.recupera-pwd a {
  font-weight: bold;
}
body.prospect .cta .btn.login {
  margin-top: 2rem;
}
body.prospect .cta.reset-password-success {
  margin-top: 2rem;
}
body.prospect .main-content .bg-light-wave.gioca {
  padding-bottom: 1rem;
  position: relative;
}
body.prospect .main-content .bg-light-wave.gioca img.pallone-serie-a {
  width: 70px;
  position: absolute;
  bottom: -35px;
  left: 50%;
  transform: translateX(-50%);
}
body.prospect .modal-content .feedback-content h3 {
  margin-bottom: 0;
}
body.prospect .top-claim-reset-password h4 {
  text-transform: none;
}
body.prospect form#form-recupera-pwd {
  display: none;
}
body.prospect #form-accedi {
  padding: 0 5%;
}
body.prospect #form-accedi h4.success {
  display: none;
  text-transform: none;
  min-height: 300px;
}
body.prospect #form-accedi .success h4 {
  text-transform: none;
}
body.prospect #form-dati {
  max-width: 550px;
}

#wcb {
  background-color: #ffffff;
  text-align: center;
  padding: 1.5rem 0;
}
#wcb h4 {
  color: #122ac2;
  margin-top: 0;
}
#wcb .btn {
  background-image: none;
  font-size: 1rem;
}

#modal-wcb {
  background-color: rgba(0, 51, 161, 0.8);
}
#modal-wcb .modal-dialog {
  max-width: 600px;
}
@media screen and (max-width: 767px) {
  #modal-wcb .modal-dialog {
    max-width: 90%;
  }
}
#modal-wcb .modal-content {
  background-color: #ffffff;
  background-image: none;
  text-align: center;
  color: #122ac2;
  border: none;
  border-radius: 0;
  box-shadow: none;
}
#modal-wcb .modal-content .modal-close {
  background-image: url("../images/ico-close-blue.png");
  top: 15px;
}
#modal-wcb #modal-content {
  padding: 2rem 0;
}
#modal-wcb .form {
  padding: 1rem 0 2rem;
}
#modal-wcb .form input[type=text] {
  border: 1px solid #122ac2;
  color: #122ac2;
  width: 300px;
  margin: 8px auto;
  background-image: none;
}
@media screen and (max-width: 480px) {
  #modal-wcb .form input[type=text] {
    width: auto;
    min-width: 80%;
  }
}
#modal-wcb .form .btn {
  width: 300px;
  min-height: 50px;
  font-weight: normal;
  background-image: none;
  font-size: 1rem;
  padding: 1.2rem;
}
#modal-wcb .form .btn img.ico {
  width: 26px;
  margin-right: 8px;
}
@media screen and (max-width: 300px) {
  #modal-wcb .form .btn img.ico {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  #modal-wcb .form .btn {
    width: auto;
    min-width: 80%;
  }
}
#modal-wcb .form ::-moz-placeholder {
  color: #383838;
  font-weight: normal;
  text-transform: none;
}
#modal-wcb .form ::placeholder {
  color: #383838;
  font-weight: normal;
  text-transform: none;
}
#modal-wcb .form :-ms-input-placeholder {
  color: #383838;
  font-weight: normal;
  text-transform: none;
}
#modal-wcb .form ::-ms-input-placeholder {
  color: #383838;
  font-weight: normal;
  text-transform: none;
}
#modal-wcb .servizi {
  font-weight: bold;
}
#modal-wcb .privacy {
  margin-top: 2rem;
}
#modal-wcb .privacy a {
  text-decoration: underline;
}
#modal-wcb #wcb-success {
  display: none;
  margin: 1rem auto;
  color: #2cbe80;
  font-weight: bold;
}
#modal-wcb #wcb-success img.ico {
  width: 20px;
  margin-right: 5px;
}

.btn.blue {
  color: #ffffff;
  background-color: #122ac2;
}