@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;
}

img
{
max-width:100%;
}

img.logo
{
display:block;
margin:auto;
max-width:100%;
}

img.logom
{
display:block;
margin:auto;
width:140px;
padding-top:50px;
}

img.soc
{
display:block;
margin:auto;
width:14vw;
margin-left:10px;
margin-right:10px;
}

img.phil
{
display:block;
margin:auto;
width:40%;
}

img.phil1
{
display:block;
margin:auto;
width:40%;
margin-bottom:60px;
}




header
{
width: 100%;
position:relative;
z-index:999;
height:18vw;
position:fixed;
background-color: #ffffff; 
}

#headerxxx
{
width: 100%;
position:relative;
z-index:20;
height:18vw;
}

#headerxxx1
{
width: 100%;
position:relative;
z-index:20;
height:9.5vw;
}


.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: 18vw;
width: 100%;
background-color: #ffffff;
height:100vh;
display: none;
z-index:888;
}


.menu-nav {
position: relative;
margin-left:10%;
width:90%
}

.menu-list{
    flex-direction: column;
    padding-top: 30px;
    align-items: left;      /* centra i "bottoni" */
  }

  .menu-item{
    width: 100%;
    display: flex;
    padding-bottom:20px;
    justify-content: left;  /* centra il contenuto del li */
  }


.menu-separatore {
display: none;
}



footer
{
width: 100%;
position:relative;
z-index:20;
background-color: #ed1944; 
padding-bottom:30px;
}

#footerxxx
{
width: 100%;
position:relative;
z-index:20;
height:30px;
}

#footerxxx1
{
width: 100%;
position:relative;
z-index:20;
height:50px;
}


#bianco
{
width: 100%;
position:relative;
z-index:20;
background-color: #ffffff; 
}


#pagina
{
position:relative;
z-index:20;
width: 100%;
margin:auto;
}


#pos_logo
{
position:absolute;
z-index:50;
top:5.5vw;
width:20vw;
left:9.5vw;
}

#pos_logo_f
{
position:absolute;
z-index:50;
width:144px;
left:50%;
margin-left:-72px;
margin-top:-26px;
}

#pos_menu
{
position:absolute;
z-index:50;
top:0vw;
width:25vw;
right:0vw;
}

#sfondo-premio
{
width: 100%;
position:relative;
z-index:20;
min-height:730px;
background-image: url('../images/sfondo-premi.jpg');
background-position:center top;
background-repeat:no-repeat;
}

#sfondo-int
{
width: 100%;
position:relative;
z-index:20;
}

#sfondo-mec
{
width: 100%;
position:relative;
z-index:20;
min-height:1040px;
background-image: url('../images/sfondo-mec.jpg');
background-position:center top;
background-repeat:no-repeat;
}

#sfondo-win
{
width: 100%;
position:relative;
z-index:20;
}

#mecxxx
{
width: 100%;
position:relative;
z-index:20;
height:75px;
}

#premio
{
width: 100%;
position:relative;
z-index:20;
min-height:175vw;
background-image: url('../images/premio-ph.png');
background-position:center bottom;
background-repeat:no-repeat;
background-size:100%;
}

#premioxxx
{
width: 100%;
position:relative;
z-index:20;
height:9vw;
}

#box-vinci
{
width: 100%;
background-size:100%;
position:relative;
z-index:20;
margin:auto;
height:35.1vw;
background-image: url('../images/box-vinci-ph.png');
background-position:center top;
background-repeat:no-repeat;
margin-bottom:10px;
}

#box-vinci1 {
    width:80%;
    height:138px;
    margin:auto;
    position:relative;
    z-index:20;

    background: url('../images/box-vinci1.png') center top no-repeat;

    display:flex;
    align-items:center;      /* centra verticalmente */
    justify-content:center;  /* centra orizzontalmente (opzionale) */
    box-sizing:border-box;
}

#box-loghi
{
width: 100%;
position:relative;
z-index:20;
margin:auto;
height:31.3vw;
background-image: url('../images/loghi-ph.png');
background-position:center top;
background-repeat:no-repeat;
margin-bottom:20px;
background-size:100%;
}

#box-loghi1
{
width: 100%;
position:relative;
z-index:20;
margin:auto;
height:31.3vw;
background-image: url('../images/loghi-ph.png');
background-position:center top;
background-repeat:no-repeat;
margin-bottom:0px;
background-size:100%;
}



.rigamed
{
width: 80%;
border-top: 1px solid #ffed00;
margin: 0 auto; 
margin-top:40px;
margin-bottom:40px;
}

.rigamed1
{
width: 100%;
border-top: 10px solid #ffffff;
}

.rigafooter
{
width: 100%;
border-top: 10px solid #e3032f;
margin-bottom:25px;
}


.rigareg1
{
width: 100%;
border-top: 10px solid #292f7d;
margin-top:50px;
}

.rigareg10
{
width: 100%;
border-top: 10px solid #292f7d;x
}

.rigareg2
{
width: 100%;
border-top: 10px solid #e3032f;
margin-top:50px;
}


#box-priv
{
position:relative;
z-index:20;
width: 80%;
margin:auto;
}

#box-home
{
position:relative;
z-index:20;
width: 100%;
}

#box-win
{
position:relative;
z-index:20;
width: 100%;
background-image: url('../images/sfondo-win-ph.png');
background-position:center bottom;
background-repeat:no-repeat;
background-size:100%;
height:180vw;
}


#box-int
{
position:relative;
z-index:20;
width: 90%;
background:#ffffff;
margin:auto;
}

#box-login {
    font-family: "bebas-neue-pro", sans-serif;
    color:#292f7d;
    
    background-image: url('../images/bottone-home.png');
    background-position:center top;
    background-repeat:no-repeat;

    margin: 0 auto 0px auto;
    border: 0px solid #ffffff;
    border-radius: 0px;

    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;

    width: 80%;
    height: 16vw;
    font-size: 10vw;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    box-sizing: border-box;
    margin-top:70px;
}


.tabella {display: table;width:100%;position:relative;}
.tabella00 {display: table;width:100%;position:relative;}
.tabella-social {display: table;margin:auto;position:relative;}

.tabella0 {
display: block;
width: 100%;
max-width: 100%; /* limita la larghezza */
margin: 0 auto;
padding: 0em;
border: none; /* rimuove il bordo del fieldset */
box-sizing: border-box;
}

.tabella000 {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    box-sizing: border-box;
}

    .riga000 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 18px;
        width: 100%;
    }

    .colonna000 {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

.corpo_opp {
font-size: 4vw;
font-weight: 400;
text-align: center;
margin-left:10px;
margin-right:10px;
line-height:1;
}


.tabella-box {
display: table;
width:100%;
position:relative;
margin:auto;
background-image: url('../images/mec-ph.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
height:331.2vw;
}



.tabella-login {display: table;width:90%;min-height:540px;position:relative;margin:auto;background:#ffffff;margin-top:45px;padding-bottom:30px;}


.riga {
display: table;
width: 100%;
table-layout: fixed;
}

.riga1 {
display: table;
width: 100%;
table-layout: fixed;
}


.colonna {display: table-cell;vertical-align: middle;width:100%;float:left;}
.colonna500 {display: table-cell;vertical-align: middle;width:100%;float:left;}
.colonna-social {display: table-cell;vertical-align: middle;}
.colonna-box {display: table-cell;vertical-align: middle;width:100%;float:left;}


.colonna-box1 {display:none;}

.colonna-box2 {display:none;}

.colonna-box3 {display:none;}

.colonna-box4 {display:none;}


.colonna-bot {display: table-cell;vertical-align: top;padding-bottom:30px;width:100%;float:left;}


.colonna-footer1 {display: table-cell;vertical-align: top;width:100%;float:left;}
.colonna-footer2 {display: table-cell;vertical-align: top;width:100%;float:left;}

table {
border-collapse: separate;
border-spacing: 3px 0; /* 3px orizzontale, 0 verticale */
}


a.bottoneintro:link,
a.bottoneintro:visited,
a.bottoneintro:active {
    font-family: "bebas-neue-pro", sans-serif;
    color:#292f7d;
    
    
    background-image: url('../images/bottone-home.png');
    background-position:center top;
    background-repeat:no-repeat;

    margin: 0 auto 0px auto;
    border: 0px solid #ffffff;
    border-radius: 0px;

    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;

    width: 80%;
    height: 16vw;
    font-size: 10vw;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    box-sizing: border-box;
    margin-top:20px;
}

A.bottoneintro:HOVER { 
background: #292f7d;
color:#ffffff;
cursor: pointer;
}



A.bottone:LINK, A.bottone:VISITED, A.bottone:ACTIVE { 
font-family: "open-sans", sans-serif;
font-weight: 700;
background-color: #292f7d;
margin-left:auto;
margin-right:auto;
border:0px solid #ffed00;
border-radius: 0px;
font-size: 4vw;
text-align: center;
color:#ffffff;
padding-top: 15px;
padding-bottom: 15px;
padding-right:0px;
padding-left:0px;
width:80%;
display: block;
}


A.bottone:HOVER { 
background-color: #e3032f;
cursor: pointer;
}


A.bottone1:LINK, A.bottone1:VISITED, A.bottone1:ACTIVE { 
font-family: "open-sans", sans-serif;
font-weight: 700;
background-color: #e3032f;
margin-left:auto;
margin-right:auto;
border:0px solid #ffed00;
border-radius: 0px;
font-size: 4vw;
text-align: center;
color:#ffffff;
padding-top: 15px;
padding-bottom: 15px;
padding-right:0px;
padding-left:0px;
width:80%;
display: block;
}


A.bottone1:HOVER { 
background-color: #292f7d;
cursor: pointer;
}


.bottoneform { 
font-family: "open-sans", sans-serif;
font-weight: 700;
background-color: #292f7d;
margin-left:auto;
margin-right:auto;
border:0px solid #ffed00;
border-radius: 0px;
font-size: 4vw;
text-align: center;
color:#ffffff;
padding-top: 15px;
padding-bottom: 15px;
padding-right:0px;
padding-left:0px;
width:80%;
letter-spacing:1px;
}


.bottoneform:hover { 
background-color: #e3032f;
cursor: pointer;
}

.boldo {
font-weight: 700;
}

.boldo1 {
font-weight: 800;
}


.titolo {
font-family: "bebas-neue-pro", sans-serif;
font-size: 15vw;
font-weight: 600;
text-align: center;
margin-left:15px;
margin-right:15px;
padding-top:40px;
margin-bottom:60px;
line-height:1;
color:#e3032f;
text-transform: uppercase;
}


.titolo1 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 15vw;
font-weight: 600;
text-align: center;
margin-left:15px;
margin-right:15px;
padding-top:40px;
margin-bottom:60px;
line-height:1;
color:#292f7d;
text-transform: uppercase;
}

.titolo2 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 15vw;
font-weight: 600;
text-align: center;
margin-left:15px;
margin-right:15px;
padding-top:0px;
margin-bottom:50px;
line-height:1;
color:#e3032f;
text-transform: uppercase;
}

.titolo3 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 10vw;
font-weight: 600;
text-align: center;
margin-left:15px;
margin-right:15px;
padding-top:20px;
line-height:.9;
color:#292f7d;
text-transform: uppercase;
}

.titolo4 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 11vw;
font-weight: 600;
text-align: center;
margin-left:15px;
margin-right:15px;
padding-top:0px;
margin-bottom:50px;
line-height:.9;
color:#292f7d;
text-transform: uppercase;
}


.corpo_menu {
font-family: "bebas-neue", sans-serif;
font-size: 13vw;
font-weight: 400;
text-align: left;
text-transform: uppercase;
}


.corpo_home1 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 26vw;
text-align: center;
color:#ffffff;
line-height:.9;
}

.corpo_home2 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 17vw;
text-align: center;
color:#ffffff;
line-height:.9;
margin-bottom:5px;
}

.corpo_vinci1 {
display:none;
}

.corpo_vinci2 {
display:none;
}

.corpo_vinci3 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 10.7vw;
text-align: center;
color:#ffffff;
text-transform: uppercase;
line-height:1;
}

.corpo_box1 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 70px;
text-align: center;
color:#292f7d;
line-height:.85;
text-transform: uppercase;
padding-top:95px;
}

.corpo_box2 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 28px;
text-align: center;
color:#292f7d;
line-height:.85;
text-transform: uppercase;
}

.corpo_box3 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 70px;
text-align: center;
color:#e3032f;
line-height:.85;
text-transform: uppercase;
padding-top:0px;
}

.corpo_box3 sup {
    font-size: 35%;
    vertical-align: baseline;
    position: relative;
    top: -1.4em;
    line-height: 0;
}

.corpo_box4 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 70px;
text-align: center;
color:#292f7d;
line-height:.85;
text-transform: uppercase;
padding-top:110px;
}

.corpo_box5 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 15vw;
text-align: center;
color:#ffffff;
line-height:1;
text-transform: uppercase;
padding-bottom:20px;
}

.corpo_agg1 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 8vw;
text-align: center;
color:#292f7d;
line-height:1;
text-transform: uppercase;
padding-top:35px;
padding-bottom:25px;
margin-left:8%;
margin-right:8%;
}

.corpo_agg10 {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 8vw;
text-align: center;
color:#292f7d;
line-height:1;
text-transform: uppercase;
padding-top:55px;
padding-bottom:25px;
margin-left:8%;
margin-right:8%;
}

A.corpo_agg2:LINK, A.corpo_agg2:VISITED, A.corpo_agg2:ACTIVE {
font-family: "bebas-neue-pro", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 8vw;
text-align: center;
color:#e3032f;
line-height:1;
text-transform: uppercase;
text-decoration: underline;
}

A.corpo_agg2:HOVER {
color:#292f7d;
}


.corpo_priv {
font-size: 3.5vw;
font-weight: 400;
text-align: left;
margin-left:20px;
margin-right:20px;
}

.corpo_login1 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 18vw;
font-weight: 600;
text-align: center;
margin-left:15px;
margin-right:15px;
margin-top:30px;
margin-bottom:60px;
line-height:1;
color:#292f7d;
text-transform: uppercase;
}

.corpo_login10 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 18vw;
font-weight: 600;
text-align: center;
margin-left:15px;
margin-right:15px;
margin-top:30px;
margin-bottom:60px;
line-height:1;
color:#e3032f;
text-transform: uppercase;
}

.corpo_login2 {
font-size: 4vw;
font-weight: 400;
text-align: center;
margin-left:15px;
margin-right:15px;
margin-bottom:40px;
line-height:1;
}

.corpo_login3 {
font-size: 4vw;
font-weight: 700;
text-align: left;
margin-left:10%;
margin-right:10%;
padding-top:50px;
margin-bottom:20px;
line-height:1;
}

.corpo_form {
font-size: 4vw;
font-weight: 400;
text-align: center;
margin-left:15px;
margin-right:15px;
line-height:18px;
}

.corpo_form1 {
font-size: 3.5vw;
font-weight: 400;
text-align: center;
margin-left:10%;
margin-right:10%;
margin-top:0px;
margin-bottom:50px;
line-height:1.2;
}

.corpo_form10 {
text-decoration: underline;
}


.corpo_pass1 {
font-size: 3.5vw;
font-weight: 400;
text-align: center;
margin-left:10%;
margin-right:10%;
margin-top:0px;
margin-bottom:30px;
line-height:1.2;
}

.corpo_info {
font-size: 3.5vw;
font-weight: 400;
text-align: left;
margin-bottom:20px;
line-height:1;
}

.corpo_info1 {
font-size: 3.5vw;
font-weight: 700;
text-align: left;
margin-left:10%;
margin-right:10%;
padding-top:40px;
line-height:1;
}

.corpo_info2 {
font-size: 3.5vw;
font-weight: 400;
text-align: left;
margin-left:10%;
margin-right:10%;
margin-bottom:20px;
line-height:1.2;
color:#646363;
}


.corpo33, .corpo333 {
font-size: 3vw;
color:#646363;
}

.corpo_privo {
font-size: 4vw;
font-weight: 400;
text-align: left;
margin-top:30px;
margin-bottom:15px;
margin-left:0px;
margin-right:0px;
line-height:1.1;
}


.corpo_sco1 {
font-size: 15px;
font-weight: 400;
text-align: left;
margin-left:10%;
margin-right:10%;
margin-top:20px;
margin-bottom:50px;
line-height:1.2;
}

.corpo_sco2 {
font-size: 15px;
font-weight: 400;
text-align: left;
margin-left:0px;
margin-right:0px;
margin-top:20px;
margin-bottom:0px;
line-height:1.2;
}

.corpo_sco3 {
font-size: 15px;
font-weight: 400;
text-align: left;
margin-left:0px;
margin-right:0px;
margin-top:0px;
margin-bottom:50px;
line-height:1.2;
}


.corpo_gr1 {
font-size: 4vw;
font-weight: 400;
text-align: center;
margin-left:10%;
margin-right:10%;
margin-top:20px;
margin-bottom:50px;
line-height:1.2;
}

.corpo_nowin1 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 15vw;
font-weight: 600;
text-align: center;
margin-left:10%;
margin-right:10%;
padding-top:40px;
margin-bottom:70px;
line-height:.85;
color:#ffffff;
text-transform: uppercase;
}


.corpo_nowin2 {
font-size: 4vw;
font-weight: 400;
text-align: center;
margin-left:10%;
margin-right:10%;
padding-top:40px;
margin-bottom:40px;
line-height:1.2;
}

.corpo_nowin3 {
font-size: 4vw;
font-weight: 400;
text-align: center;
margin-left:10%;
margin-right:10%;
padding-top:0px;
margin-bottom:40px;
line-height:1.2;
}


.corpo_win1 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 20vw;
font-weight: 600;
text-align: center;
margin-left:10%;
margin-right:10%;
padding-top:60px;
margin-bottom:0px;
line-height:1;
color:#ffffff;
text-transform: uppercase;
}

.corpo_win2 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 20vw;
font-weight: 600;
text-align: center;
line-height:.9;
text-transform: uppercase;
letter-spacing:10px;
margin-left:10%;
margin-right:10%;
}

.corpo_win3 {
font-family: "bebas-neue-pro", sans-serif;
font-size: 10vw;
font-weight: 600;
text-align: center;
padding-top:10px;
margin-bottom:0px;
line-height:1;
color:#ffffff;
text-transform: uppercase;
}

.corpo_win4 {
font-size: 4vw;
font-weight: 400;
text-align: center;
margin-left:10%;
margin-right:10%;
padding-top:50px;
margin-bottom:40px;
line-height:1.2;
}

.corpo_win5 {
font-size: 4vw;
font-weight: 400;
text-align: center;
margin-left:10%;
margin-right:10%;
padding-top:0px;
margin-bottom:40px;
line-height:1.2;
}

.corpo_win6 {
font-size: 14px;
font-weight: 400;
text-align: center;
margin-left:10%;
margin-right:10%;
padding-top:0px;
padding-bottom:50px;
line-height:1.2;
}


.corpo_footer1 {
font-size: 4.5vw;
font-weight: 400;
text-align: center;
margin-left:9.5%;
margin-right:9.5%;
line-height:1.2;
}

.corpo_footer1 br {
display:none;
}

.corpo_footer2 {
font-size: 4.5vw;
font-weight: 400;
text-align: center;
margin-left:15px;
margin-right:15px;
line-height:1.4;
margin-top:30px;
padding-bottom:50px;
}

.corpo_footer3 {
font-size: 9px;
font-weight: 400;
text-align: center;
margin-left:15px;
margin-right:15px;
line-height:1;
margin-top:10px;
margin-bottom:35px;
color:#ffffff;
}

.corpo_footer4 {
font-size: 4.5vw;
font-weight: 400;
text-align: center;
margin-left:15px;
margin-right:15px;
line-height:2;
margin-top:30px;
color:#ffffff;
}


input.forma {
margin-left:10%;
margin-right:10%;
margin-top:0px;
margin-bottom:50px;
padding-left:0px;
padding-right:0px;
text-align: left;
width: 80%;
height: 46px;
border-bottom:2px solid #292f7d; 
border-top:2px solid #ffffff; 
border-left:2px solid #ffffff; 
border-right:2px solid #ffffff; 
background-color: #ffffff;
font-size: 4vw;
border-radius: 0px;
color:#292f7d;
}

.forma::-webkit-input-placeholder {
color: #292f7d;
font-size: 4vw;
font-weight: 700;
}


select.gen {
    margin-left:10%;
    margin-right:10%;
    margin-top:0px;
    margin-bottom:50px;

    padding-left:0px;
    padding-right:35px;

    text-align:left;
    width:80%;
    height:46px;

    border-bottom:2px solid #292f7d; 
    border-top:2px solid #ffffff; 
    border-left:2px solid #ffffff; 
    border-right:2px solid #ffffff; 

    background-color:#ffffff;

    /* FRECCIA PERSONALIZZATA */
     background:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'10\'\ height=\'6\'%3E%3Cpath\ d=\'M1\ 1l4\ 4\ 4-4\'\ fill=\'none\'\ stroke=\'%23004187\'\ stroke-width=\'2\'/%3E%3C/svg%3E) no-repeat right center;

    background-repeat:no-repeat;
    background-position:right 10px center;
    background-size:16px auto;

    font-size:4vw;
    font-weight:700;
    border-radius:0px;
    color:#292f7d;

    /* elimina la freccia standard */
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;

    cursor:pointer;
}


select.gen1 {
    margin-left:10%;
    margin-right:10%;
    margin-top:0px;
    margin-bottom:50px;

    padding-left:0px;
    padding-right:35px;

    text-align:left;
    width:80%;
    height:46px;

    border-bottom:2px solid #292f7d; 
    border-top:2px solid #ffffff; 
    border-left:2px solid #ffffff; 
    border-right:2px solid #ffffff; 

    background-color:#ffffff;

    /* FRECCIA PERSONALIZZATA */
     background:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'10\'\ height=\'6\'%3E%3Cpath\ d=\'M1\ 1l4\ 4\ 4-4\'\ fill=\'none\'\ stroke=\'%23004187\'\ stroke-width=\'2\'/%3E%3C/svg%3E) no-repeat right center;

    background-repeat:no-repeat;
    background-position:right 10px center;
    background-size:16px auto;

    font-size:4vw;
    font-weight:700;
    border-radius:0px;
    color:#292f7d;

    /* elimina la freccia standard */
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;

    cursor:pointer;
}


.data-nascita{
    width:80%;
    height:46px;
margin-left:10%;
margin-right:10%;
margin-top:0px;
margin-bottom:50px;
padding-left:0px;
padding-right:0px;
    border-bottom:2px solid #292f7d; 
border-top:2px solid #ffffff; 
border-left:2px solid #ffffff; 
border-right:2px solid #ffffff; ;
    border-radius:0px;
    background:#fff;

    display:flex;
    align-items:center;
    gap:2px;
    box-sizing:border-box;
}

.data-nascita label{
    flex:1;
    white-space:nowrap;
    font-size:4vw;
    font-weight:700;
    color:#004187;
    position:relative;
    top:4px;
}

.data-nascita select{
    flex:0 0 auto;
width:40px;
    border:medium none;
    background:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'10\'\ height=\'6\'%3E%3Cpath\ d=\'M1\ 1l4\ 4\ 4-4\'\ fill=\'none\'\ stroke=\'%23004187\'\ stroke-width=\'2\'/%3E%3C/svg%3E) no-repeat right center;
    outline:none;

    font-size:4vw;
    font-weight:700;
    color:#004187;

    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;

    padding-right:14px;
    cursor:pointer;

    background-position-x:right; background-position-y:center; background-image:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'10\'\ height=\'6\'%3E%3Cpath\ d=\'M1\ 1l4\ 4\ 4-4\'\ fill=\'none\'\ stroke=\'%23004187\'\ stroke-width=\'2\'/%3E%3C/svg%3E); background-repeat:no-repeat
}

.data-nascita select:invalid{
    color:#7a7a7a;
}


/* ==========================================================
   IMPORTI CON EURO E CENTESIMI
   Stessa larghezza e stesso stile di input.forma
   ========================================================== */

.importo-box {
    box-sizing: border-box;
    display: flex;
    align-items: stretch;

    width: 80%;
    height: 50px;

    margin-left: 10%;
    margin-right: 10%;
    margin-top: 0;
    margin-bottom: 50px;

        border-bottom:2px solid #292f7d; 
border-top:2px solid #ffffff; 
border-left:2px solid #ffffff; 
border-right:2px solid #ffffff; ;
    border-radius: 0px;

    background-color: #ffffff;
    overflow: hidden;
}


/* CAMPO EURO */

.importo-box .forma-euro {
    box-sizing: border-box;
    flex: 1;
    min-width: 0;

    height: 46px;

    margin: 0;
    padding-left: 0px;
    padding-right: 8px;

    border: 0px none;
    outline: 0;

    background-color: #ffffff;
    color: #004187;

    text-align: left;
    font-size: 4vw;
    font-weight:700;
}


/* PLACEHOLDER */

.importo-box .forma-euro::-webkit-input-placeholder {
    color: #004187;
    font-size: 4vw;
}

.importo-box .forma-euro::placeholder {
    color: #004187;
    opacity: 1;
    font-size: 4vw;
    font-weight:700;
}


/* VIRGOLA */

.importo-box .virgola {
    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 18px;
    height: 46px;

    background-color: #ffffff;
    color: #004187;

    font-size: 20px;
    font-weight:700;
    line-height: 1;
}


/* TENDINA CENTESIMI */

.importo-box .forma-cent {
    border-right:0px none; border-left:0px none; border-top:0px none; border-bottom:0px none; box-sizing: border-box;

    width: 72px;
    height: 46px;

    margin: 0;
    padding-left: 7px;
    padding-right: 4px;

    outline: 0;

    background-color: #ffffff;
    color: #004187;

    text-align: center;
    font-size: 4vw;
    font-weight:700;
    cursor: pointer
}


/* FOCUS ACCESSIBILE */

.importo-box:focus-within {
    outline: 2px solid #004187;
    outline-offset: 2px;
}



input.radion[type="radio"] {
    position: absolute;
    left: -9999px;
}

input.radion[type="radio"] + label {
    position: relative;
    display: inline-block;
    cursor: pointer;
    padding-right: 0px;
    margin: 0;
}

input.radion[type="radio"] + label::before {
    content: "";
    position: absolute;

    right: 0;
    top: 50%;
    transform: translateY(-50%);

    width: 28px;
    height: 28px;

    border: 1px solid #292f7d;
    background: #ffffff;

    box-sizing: border-box
}

input.radion[type="radio"] + label::after {
    content: "";
    position: absolute;

    right: 7px;
    top: 50%;

    width: 8px;
    height: 16px;

    border-right: 3px solid #ff174d;
    border-bottom: 3px solid #ff174d;

    transform: translateY(-60%) rotate(45deg);

    opacity: 0
}

input.radion[type="radio"]:checked + label::after {
    opacity: 1;
}


/* 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: 28px;
height: 28px;
border: 1px solid #646363;
border-radius: 0px; /* rettangolo con angoli arrotondati */
background: #ffffff
}

[type="checkbox"] + label::after {
content: '';
position: absolute;
top: 5px;
left: 5px;
width: 20px;
height: 20px;
background: #646363;
border-radius: 0px; /* quadratino per checkbox */
transition: all 0.2s ease;
opacity: 0;
transform: scale(0)
}

[type="checkbox"]: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.2;
padding-right:50px;
padding-left:0px;
color:#292f7d;
font-size: 4vw;
font-weight: 700;
text-transform:uppercase;
}


}