@media only screen and (min-width: 30px) and (max-width: 969px) {


input {
    -webkit-appearance: none;
}

select {
    -webkit-appearance: none;
}


#vedi-ds
{
display:none;
}

.desktop-only {
display: none !important;
}

.content {
min-height: calc(100vh - 100px);
z-index:1;
}

.menu-toggle{
  background: transparent;
  border: 0;
  padding: 0;
  margin: 0;
  box-shadow: none;

  appearance: none;
  -webkit-appearance: none;

  outline: none;              /* toglie il bordo “strano” */
}

/* Focus accessibile (da tastiera) */
.menu-toggle:focus-visible{
  outline: 3px solid #5A8F00; /* colore accessibile */
  outline-offset: 3px;
}

/* Fix extra per Firefox (bordo interno) */
.menu-toggle::-moz-focus-inner{
  border: 0px none;
}

#fumetto_pos
{
position:absolute;
z-index:40;
right:0px;
top: 15vw;
width: 100%;
background-color: #e30613;
height:100vh;
display: none;
z-index:888;
}


img
{
max-width:100%;
}

img.logo
{
display:block;
margin:auto;
max-width:100%;
}

img.soc
{
display:block;
margin:auto;
width:10vw;
margin-right:14px;
margin-left:14px;
}

img.logof
{
display:block;
margin:auto;
width:46%;
padding-top:30px;
}

header
{
width: 100%;
position:relative;
z-index:999;
height:15vw;
background-color: #e30613; 
box-shadow: 0 12px 30px rgba(30, 30, 28, 0.33);
}

.menu-nav {
position: relative;
margin:auto;
width:100%
}

.menu-list{
    flex-direction: column;
    padding-top: 30px;
    align-items: center;      /* centra i "bottoni" */
  }

  .menu-item{
    width: 100%;
    display: flex;
    padding-bottom:20px;
    justify-content: center;  /* centra il contenuto del li */
  }

  .men{
    display: block;
    width: 100%;              /* area clic full width */
    text-align: center;       /* testo centrato */
  }


footer
{
width: 100%;
position:relative;
z-index:10;
background-color: #e30613; 
padding-top:30px;
padding-bottom:40px;
}

#footerxxx
{
width: 100%;
position:relative;
z-index:20;
height:50px;
}

#footerxxx1
{
width: 100%;
position:relative;
z-index:20;
}

#boxxxx
{
width: 100%;
position:relative;
z-index:20;
height:10vw;
}

#box1xxx
{
width: 100%;
position:relative;
z-index:20;
height:10vw;
}

#regxxx
{
width: 100%;
position:relative;
z-index:20;
height:40px;
}

#winxxx
{
width: 100%;
position:relative;
z-index:20;
height:62vw;
}

#pagina
{
position:relative;
z-index:20;
width: 100%;
margin:auto;
}


#pos_logo
{
position:absolute;
z-index:50;
top:2.5vw;
width:14vw;
left:4vw;
}

#pos_menu
{
position:absolute;
z-index:50;
top:0vw;
width:23vw;
right:0vw;
}

#pos_albero {
position: absolute;
bottom: -5vw;
width: 100%;
}

#pos_albero2 {
display:none;
}

#pos_albero1 {
display:none;
}

#sfondohome
{
width: 100%;
position:relative;
z-index:20;
}

#sfondonowin
{
width: 100%;
position:relative;
z-index:20;
}

#sfondowin
{
width: 100%;
position:relative;
z-index:20;
}

#home
{
width: 100%;
position:relative;
z-index:20;
height:87.1vw;
background-image: url('../images/home-ph.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
}

#int
{
width: 100%;
position:relative;
z-index:20;
height:92.3vw;
background-image: url('../images/int-ph.png');
background-position:center bottom;
background-repeat:no-repeat;
background-size:100%;
}

#int1
{
width: 100%;
position:relative;
z-index:20;
height:64.9vw;
background-image: url('../images/int1-ph.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
}

#int2
{
width: 100%;
position:relative;
z-index:20;
height:92.3vw;
background-image: url('../images/int2-ph.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
}

#box
{
width: 71%;
margin:auto;
position:relative;
z-index:20;
height:17vw;
background-image: url('../images/box.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
}

#ico1
{
width: 100%;
margin:auto;
position:relative;
z-index:20;
height:12.5vw;
background-image: url('../images/ico1.png');
background-position:left top;
background-repeat:no-repeat;
background-size:contain;
}

#ico2
{
width: 100%;
margin:auto;
position:relative;
z-index:20;
height:12.5vw;
background-image: url('../images/ico2.png');
background-position:right top;
background-repeat:no-repeat;
background-size:contain;
}

#ico3
{
width: 100%;
margin:auto;
position:relative;
z-index:20;
height:12.5vw;
background-image: url('../images/ico3.png');
background-position:left top;
background-repeat:no-repeat;
background-size:contain;
}

#ico4
{
width: 100%;
margin:auto;
position:relative;
z-index:20;
height:12.5vw;
background-image: url('../images/ico4.png');
background-position:right top;
background-repeat:no-repeat;
background-size:contain;
}

#albero
{
width: 100%;
margin:auto;
position:relative;
z-index:20;
height:81.6vw;
background-image: url('../images/albero-ph.jpg');
background-position:center bottom;
background-repeat:no-repeat;
background-size:100%;
}

#albero1
{
width: 100%;
margin:auto;
position:relative;
z-index:20;
height:81.6vw;
background-image: url('../images/albero-ph.jpg');
background-position:center bottom;
background-repeat:no-repeat;
background-size:100%;
}

#premi1
{
width: 100%;
position:relative;
z-index:20;
height:62.7vw;
background-image: url('../images/premi-ph.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
}


#box-priv
{
position:relative;
z-index:20;
width: 70%;
margin:auto;
}

#box-login
{
position:relative;
z-index:20;
width: 70%;
margin:auto;
}

#box-win
{
position:relative;
z-index:20;
width: 80%;
margin:auto;
background: #99CAED;
background: linear-gradient(180deg, rgba(153, 202, 237, 1) 0%, rgba(78, 145, 203, 1) 100%);
border-radius: 20px;
}

#box-modulo
{
position:relative;
z-index:20;
width: 70%;
margin:auto;
}


.tabella {display: table;width:100%;position:relative;}

.tabella0 {
display: block;
width: 100%;
max-width: 950px; /* limita la larghezza */
margin: 0 auto;
padding: 0em;
border: none; /* rimuove il bordo del fieldset */
box-sizing: border-box;
}



.tabella-soc {display: table;width:60%;margin:auto;position:relative;}



.riga {
display: table;
width: 100%;
table-layout: fixed;
}

.riga0 { display:table-row;}

.riga1 {
display: table;
width: 100%;
table-layout: fixed;
}


.colonna {display: table-cell;vertical-align: middle;width:100%;float:left;}
.colonna50 {display: table-cell;vertical-align: middle;width:100%;float:left;}
.colonna500 {display: table-cell;vertical-align: middle;width:50%;}
.colonna-soc {display: table-cell;vertical-align: middle;}
.colonna-bot {display: table-cell;vertical-align: middle;width:100%;float:left;padding-bottom:25px;}
.colonna-footer {display: table-cell;vertical-align: middle;}

table {
border-collapse: separate;
border-spacing: 3px 0; /* 3px orizzontale, 0 verticale */
}

A.bottonehome1:LINK, A.bottonehome1:VISITED, A.bottonehome1:ACTIVE { 
font-family:"Phosphate Fixed Solid";
font-style: normal;
background-color: #ffe200;
margin-left:auto;
margin-right:auto;
margin-top:20px;
margin-bottom:40px;
border:0px solid #8a3cad;
border-radius: 0px;
font-size: 5vw;
text-align: center;
color:#ffffff;
padding-top: 15px;
padding-bottom: 15px;
width:50%;
text-transform: uppercase;
display: block;
}


A.bottonehome1:HOVER { 
background-color: #ffffff;
color:#e30613;
cursor: pointer;
}

A.bottone:LINK, A.bottone:VISITED, A.bottone:ACTIVE { 
font-family:"Phosphate Fixed Solid";
background-color: #e30613;
margin-left:auto;
margin-right:auto;
border:0px solid #89388a;
border-radius: 0px;
font-size: 5vw;
font-weight: 800;
text-align: center;
color:#ffffff;
padding-top: 15px;
padding-bottom: 15px;
width:70%;
text-transform: uppercase;
letter-spacing:2px;
font-weight: inherit;
display: block;
}


A.bottone1:LINK, A.bottone1:VISITED, A.bottone1:ACTIVE { 
font-family:"Phosphate Fixed Solid";
background-color: #e30613;
margin-left:auto;
margin-right:auto;
border:0px solid #89388a;
border-radius: 0px;
font-size: 4.5vw;
font-weight: 800;
text-align: center;
color:#ffffff;
padding-top: 15px;
padding-bottom: 15px;
width:70%;
text-transform: uppercase;
letter-spacing:2px;
font-weight: inherit;
display: block;
line-height:1;
}

A.bottone2:LINK, A.bottone2:VISITED, A.bottone2:ACTIVE { 
font-family:"Phosphate Fixed Solid";
background-color: #e30613;
margin-left:auto;
margin-right:auto;
border:0px solid #89388a;
border-radius: 0px;
font-size: 4.5vw;
font-weight: 800;
text-align: center;
color:#ffffff;
padding-top: 22px;
padding-bottom: 22px;
width:70%;
text-transform: uppercase;
letter-spacing:2px;
font-weight: inherit;
display: block;
line-height:1;
}


A.bottone:HOVER, A.bottone1:HOVER, A.bottone2:HOVER { 
background-color: #ffffff;
color:#e30613;
cursor: pointer;
}


.bottoneform { 
font-family:"Phosphate Fixed Solid";
background-color: #e30613;
margin-left:auto;
margin-right:auto;
border:0px solid #89388a;
border-radius: 0px;
font-size: 5vw;
font-weight: 800;
text-align: center;
color:#ffffff;
padding-top: 15px;
padding-bottom: 15px;
width:70%;
text-transform: uppercase;
letter-spacing:2px;
font-weight: inherit;
}


.bottoneform:hover { 
background-color: #ffffff;
color:#e30613;
cursor: pointer;
}

.boldo {
font-weight: 700;
}

.boldo1 {
font-weight: 800;
}


.titolo {
font-size: 36px;
font-weight: 400;
text-align: center;
text-transform: uppercase;
color:#ffed00;
line-height:1.2;
padding-top:110px;
margin-bottom:30px;
}

.titolo1 {
font-size: 8.5vw;
text-align: center;
text-transform: uppercase;
color:#ffffff;
line-height:1;
padding-top:15px;
padding-bottom:15px;
letter-spacing:2px;
}

.titolo-int {
font-size: 54px;
text-align: center;
text-transform: uppercase;
color:#4b8fca;
line-height:1;
padding-top:55px;
padding-bottom:55px;
letter-spacing:3px;
}

.corpo_premi1 {
font-size: 10vw;
text-align: center;
text-transform: uppercase;
color:#ffffff;
line-height:1;
padding-top:40px;
padding-bottom:35px;
letter-spacing:2px;
}


.corpo_menu {
font-family: "termina", sans-serif;
font-weight: 900;
font-style: normal;
font-size: 6vw;
text-align: center;
text-transform: uppercase;
}


.corpo_box1 {
font-size: 5vw;
font-weight: 400;
text-align: center;
color:#ffffff;
line-height:1;
padding-top:10px;
letter-spacing:1px;
}

.corpo_box2 {
font-size: 2.6vw;
font-family: "century-gothic-pro", sans-serif;
font-weight: 400;
font-style: normal;
text-align: center;
color:#ffffff;
line-height:1;
margin-top:2px;
}

.corpo_login1 {
font-size: 10vw;
text-align: center;
margin-left:15px;
margin-right:15px;
padding-top:30px;
margin-bottom:5px;
line-height:1;
color:#4b8fca;
}

.corpo_login2 {
font-size: 6vw;
text-align: center;
margin-left:15px;
margin-right:15px;
padding-top:30px;
margin-bottom:30px;
line-height:1;
color:#4b8fca;
}

.corpo_login3 {
font-size: 18px;
font-weight: 800;
text-align: center;
margin-left:15px;
margin-right:15px;
margin-top:50px;
margin-bottom:5px;
line-height:1;
text-transform: uppercase;
}

.corpo_login10 {
font-size: 5vw;
text-align: center;
margin-left:7%;
margin-right:7%;
margin-bottom:40px;
line-height:1.1;
color:#4b8fca;
}

.corpo_login10 br {
display:none;
}

.corpo_form {
font-size: 5vw;
text-align: left;
line-height:1px;
color:#4b8fca;
letter-spacing:1px;
}

.corpo_form0 {
font-size: 5vw;
text-align: left;
line-height:1px;
color:#4b8fca;
letter-spacing:1px;
margin-top:20px;
}

.corpo_form1 {
font-family: Arial, Helvetica, sans-serif;
font-size: 3.5vw;
font-weight: 400;
text-align: center;
margin-top:2px;
color:#000000;
line-height:1;
padding-bottom:20px;
}

.corpo_form10 {
font-family:"Phosphate Fixed Solid";
}

.corpo_form2 {
font-size: 5vw;
text-align: left;
line-height:1px;
color:#4b8fca;
letter-spacing:1px;
}

.corpo_form3 {
font-size: 5vw;
text-align: left;
line-height:1px;
color:#4b8fca;
letter-spacing:1px;
}

.corpo_sco1 {
font-family: Arial, Helvetica, sans-serif;
font-size: 4vw;
font-weight: 400;
text-align: left;
margin-left:15%;
margin-right:15%;
margin-top:0px;
color:#000000;
line-height:1.1;
padding-bottom:20px;
}



.corpo33 {
font-family: Arial, Helvetica, sans-serif;
font-size: 3.5vw;
color:#000000;
}

.corpo333 {
font-size: 3vw;
color:#4b8fca;
}


.corpo_priv {
font-family: Arial, Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
text-align: left;
margin-left:35px;
margin-right:35px;
color:#000000;
line-height:1.2;
}

.corpo_fine1 {
font-size: 5vw;
text-align: center;
margin-left:7%;
margin-right:7%;
line-height:1.2;
color:#4b8fca;
letter-spacing:1;
}

.corpo_fine1 br {
display:none;
}


.corpo_nowin0 {
font-size: 16vw;
text-align: center;
text-transform: uppercase;
color:#ffffff;
line-height:.9;
padding-top:20px;
letter-spacing:3px;
}

.corpo_nowin00 {
font-size: 9.5vw;
text-align: center;
text-transform: uppercase;
color:#ffffff;
line-height:.9;
padding-bottom:20px;
letter-spacing:3px;
}

.corpo_nowin1 {
font-size: 6vw;
text-align: center;
margin-left:7%;
margin-right:7%;
line-height:1.2;
color:#4b8fca;
letter-spacing:1;
}

.corpo_nowin1 br {
display:none;
}

.corpo_nowin2 {
font-size: 5vw;
text-align: center;
margin-left:7%;
margin-right:7%;
line-height:1.2;
color:#4b8fca;
letter-spacing:1;
margin-top:30px;
margin-bottom:30px;
}

.corpo_nowin3 {
font-size: 4vw;
text-align: center;
margin-left:7%;
margin-right:7%;
line-height:1.2;
color:#4b8fca;
letter-spacing:1;
margin-bottom:50px;
}


.corpo_win0 {
font-size: 8vw;
text-align: center;
text-transform: uppercase;
color:#ffffff;
line-height:.9;
padding-top:15px;
letter-spacing:5px;
}

.corpo_win00 {
font-size: 10vw;
text-align: center;
text-transform: uppercase;
color:#ffffff;
line-height:.9;
padding-bottom:15px;
letter-spacing:5px;
}

.corpo_win1 {
font-size: 5.5vw;
text-align: center;
margin-left:7%;
margin-right:7%;
line-height:1.2;
color:#4b8fca;
letter-spacing:1;
}

.corpo_win1 br {
display:none;
}


.corpo_win2 {
font-size: 4.5vw;
text-align: center;
margin-left:7%;
margin-right:7%;
line-height:1.1;
color:#4b8fca;
letter-spacing:1.2;
margin-top:30px;
margin-bottom:30px;
}

.corpo_win2 br {
display:none;
}


.corpo_win3 {
font-size: 4.5vw;
text-align: center;
margin-left:7%;
margin-right:7%;
line-height:1.2;
color:#4b8fca;
letter-spacing:1;
margin-top:30px;
margin-bottom:35px;
}

.corpo_win4 {
font-family: Arial, Helvetica, sans-serif;
font-size: 4vw;
font-weight: 400;
text-align: left;
margin-left:7%;
margin-right:7%;
margin-bottom:40px;
color:#000000;
line-height:1.1;
padding-bottom:20px;
}


.corpo_footer1 {
font-family: "archivo-black", sans-serif;
font-weight: 400;
font-style: normal;
font-size: 2.4vw;
text-align: center;
margin-left:10%;
margin-right:10%;
margin-top:30px;
line-height:1.7;
text-transform: uppercase;
color:#ffffff;
}

.corpo_footer1 br {
display:none;
}

.divi {
padding: 0 3px;
color:#e30613;
}

.corpo_footer4 {
font-family: "archivo-black", sans-serif;
font-weight: 400;
font-style: normal;
font-size: 2.4vw;
text-align: center;
margin-left:15px;
margin-right:15px;
margin-top:25px;
margin-bottom:40px;
line-height:1.1;
color:#ffffff;
}



.corpo_footer3 {
font-family: "archivo-black", sans-serif;
font-weight: 400;
font-style: normal;
font-size: 2.4vw;
text-align: center;
margin-left:9%;
margin-right:9%;
line-height:1.3;
color:#ffffff;
}

.corpo_footer3 br {
display:none;
}


input.forma {
margin-top:16px;
margin-bottom:34px;
padding-left:5%;
padding-right:5%;
text-align: center;
width: 90%;
height: 50px;
border:3px solid #4b8fca; 
background-color: #ffffff;
font-size: 4vw;
color:#1e345f;
}

input.formb {
margin-top:16px;
margin-bottom:34px;
padding-left:5%;
padding-right:5%;
text-align: center;
width: 90%;
height: 50px;
border:3px solid #4b8fca; 
background-color: #ffffff;
font-size: 4vw;
color:#1e345f;
}

input.formc {
margin-top:16px;
margin-bottom:34px;
padding-left:5%;
padding-right:5%;
text-align: center;
width: 90%;
height: 50px;
border:3px solid #4b8fca; 
background-color: #ffffff;
font-size: 4vw;
color:#1e345f;
}

input.formd {
margin-top:16px;
margin-bottom:34px;
padding-left:5%;
padding-right:5%;
text-align: center;
width: 90%;
height: 50px;
border:3px solid #4b8fca; 
background-color: #ffffff;
font-size: 4vw;
color:#1e345f;
}


/* CHECKBOX */
[type="checkbox"] {
position: absolute;
left: -9999px;
}

[type="checkbox"] + label {
position: relative;
padding-left: 50px;
padding-right: 0px;
cursor: pointer;
display: inline-block;
vertical-align: top;
}

[type="checkbox"] + label::before {
content: '';
position: absolute;
left: 0;
top: 0;
width: 30px;
height: 30px;
border:3px solid #4b8fca;

background: #fff
}

[type="checkbox"] + label::after {
content: '';
position: absolute;
top: 7px;
left: 7px;
width: 22px;
height: 22px;
background: #4b8fca;

transition: all 0.2s ease;
opacity: 0;
transform: scale(0)
}

[type="checkbox"]:checked + label::after {
opacity: 1;
transform: scale(1);
}

/* FOCUS VISIBILE PER CHECKBOX ACCESSIBILE */
[type="checkbox"]:focus-visible + label::before {
  outline: 3px solid #005FCC;   /* blu accessibile */
  outline-offset: 4px;
  background-color: #E6F0FF;    /* sfondo chiaro, contrasto > 3:1 */
}

/* RADIO */
[type="radio"] {
position: absolute;
left: -9999px;
}

[type="radio"] + label {
position: relative;
padding-left: 30px;
padding-right: 0px;
cursor: pointer;
display: inline-block;
vertical-align: top;
margin-left:7%;
}

[type="radio"] + label::before {
content: '';
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
border: 1px solid #4b8fca;
border-radius: 50%; /* rettangolo con angoli arrotondati */
background: #fff
}

[type="radio"] + label::after {
content: '';
position: absolute;
top: 6px;
left: 6px;
width: 10px;
height: 10px;
background: #4b8fca;
border-radius: 50%; /* quadratino per radio */
transition: all 0.2s ease;
opacity: 0;
transform: scale(0)
}

[type="radio"]:checked + label::after {
opacity: 1;
transform: scale(1);
}




/* Stile del testo */

label span.corpo33 {
line-height: 1.2;
display: inline-block;
vertical-align: middle;
padding-left:0px;
}

label span.corpo333 {
display: inline-block;
vertical-align: middle;
line-height: 1.5;
padding-right:10px;
padding-left:0px;
}


}