@media only screen and (min-width: 30px) and (max-width: 969px) {


input {
    -webkit-appearance: none;
}

select {
    -webkit-appearance: none;
}

html,
body {
    width: 100%;
    overflow-x: hidden;
}


#vedi-ds
{
display:none;
}

.desktop-only {
display: none !important;
}

.content {
min-height: calc(100vh - 170px);
z-index:1;
}

img
{
max-width:100%;
}

img.logo
{
max-width:100%;
}

img.logof
{
display:none;
}

img.logof-ph
{
display:block;
margin-left:9vw;
width:32vw;
}

img.nota-ph
{
display:block;
float:right;
margin-right:9vw;
width:11vw;
}

img.nota
{
display:none;
}

img.geo
{
display:block;
margin:auto;
width:42vw;
margin-bottom:83vw;
margin-top:10px;
}

img.out3
{
margin-left:5vw;
margin-top:-10vw;
z-index:200;
position:relative;
width:24vw;
}


header
{
width: 100%;
position:relative;
z-index:999;
height:38vw;
background-color: #000000; 
}

#fumetto_pos
{
position:absolute;
z-index:40;
right:0px;
top: 38vw;
width: 100%;
background-color: #000000;
height:100vh;
display: none;
}


footer
{
width: 100%;
position:relative;
z-index:20;
background-color: #1c3075; 
padding-bottom:30px;
padding-top:30px;
}

#footerxxx
{
width: 100%;
position:relative;
z-index:20;
height:100px;
}

#partxxx
{
width: 100%;
position:relative;
z-index:20;
height:26vw;
}

#rexxxx
{
width: 100%;
position:relative;
z-index:20;
height:20vw;
}

#rex1xxx
{
width: 100%;
position:relative;
z-index:20;
height:45vw;
}


#pagina
{
position:relative;
z-index:20;
width: 100%;
margin:auto;
}


#pos_logo
{
position:absolute;
z-index:50;
top:12vw;
width:34vw;
left:8.6vw;
}

#pos_menu
{
position:absolute;
z-index:60;
top:12vw;
width:13.7vw;
right:8vw;
}

#out1
{
width: 14vw;
height:19vw;
position:absolute;
z-index:200;
background-image: url('../images/out2.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
top:50vw;
left:0;
}

#out2
{
width: 19.8vw;
height:24.6vw;
position:absolute;
z-index:200;
background-image: url('../images/out1-ph.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
top:0px;
}

#out4
{
width: 14.1vw;
height:17.1vw;
position:absolute;
z-index:200;
background-image: url('../images/out4-ph.png');
background-position:center top;
background-repeat:no-repeat;
bottom:-35vw;
background-size:100%;
right:0px;
}

#out5
{
width: 20.3vw;
height:22.6vw;
position:absolute;
z-index:200;
background-image: url('../images/out5-ph.png');
background-position:center top;
background-repeat:no-repeat;
bottom:6vw;
background-size:100%;
right:-8vw;
}

#out6
{
width: 20.3vw;
height:188px;
position:absolute;
z-index:200;
background-image: url('../images/out6.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
right:0;
top:20px;
}

#out7
{
width: 18vw;
height:186px;
position:absolute;
z-index:200;
background-image: url('../images/out7.png');
background-position:center top;
background-repeat:no-repeat;
top:105vw;
background-size:100%;
left:0px;
}

#home
{
width: 100%;
position:relative;
z-index:20;
min-height:190vw;
background-image: url('../images/img-home1-ph.jpg');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
}

#sfondo-partecipare
{
width: 100%;
position:relative;
z-index:30;
height:114.7vw;
margin-top:-16vw;
background-image: url('../images/sfondo-partecipare-ph.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
}

#premio
{
width: 100%;
position:relative;
z-index:10;
height:119.9vw;
background-image: url('../images/img-premio-ph.png');
background-position:center top;
background-repeat:no-repeat;
background-size:100%;
margin-top:-27vw;
}

#bottiglia
{
width: 62.5vw;
position:absolute;
z-index:100;
height:91.5vw;
background-image: url('../images/bottiglia-ph.png');
background-position:right top;
background-repeat:no-repeat;
background-size:100%;
right:0px;
top:7vw;
pointer-events: none;
}


#sfondo-reg
{
width: 100%;
position:relative;
z-index:5;
min-height:235vw;
background-image: url('../images/sfondo-reg-ph.jpg');
background-position:center bottom;
background-repeat:no-repeat;
background-color:#000000;
margin-top:-15vw;
background-size:100%;
}

.rigamed
{
width: 750px;
border-top: 1px solid #ffed00;
margin: 0 auto; 
margin-top:40px;
margin-bottom:40px;
}

#box-priv
{
position:relative;
z-index:20;
width: 90%;
margin:auto;
padding-top:30px;
}

.box {
position: relative;
z-index: 20;

width: 100%;
height: 180px;
box-sizing: border-box;
border: 4px solid #1c3075;
border-radius: 30px;
margin: 0;
    }

 .step-box {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 180px;
}

.step-numero {
    width: 45px;
    flex: 0 0 45px;
    font-size: 14vw;
    line-height: 1;
    color: #1c3075;
    text-align: left;
    margin-left: 15px;
}

.step-testo {
font-size: 3.1vw;
line-height: 1.2;
color: #263b8f;
 text-align: left;
margin-right: 24vw;
text-transform: uppercase;
}

.step-testo br {
display:none;
}


    /* PALLINI */

    .slider-dots {
        display: flex;
        justify-content: center;
        align-items: center;

        gap: 9px;

        width: 100%;
        margin-top: 15px;
        margin-bottom: 20px;
    }

    .slider-dots .dot {
        display: block;

        width: 11px;
        height: 11px;

        padding: 0;
        margin: 0;

        border: 0;
        border-radius: 50%;

        background-color: #7a7c94;

        cursor: pointer;
    }

    .slider-dots .dot.active {
        background-color: #182c74;
    }
    
    /* FRECCIA AVANTI */


.slider-dots .slider-next {
    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;
    margin: 0 0 0 4px;

    border: 0;
    background: transparent;

    color: #182c74;

    font-size: 28px;
    font-weight: 700;
    line-height: 11px;

    cursor: pointer;

    position: relative;
    top: -1px;
}



#box-premio {
position: relative;
z-index: 20;
width: 57%;
margin-left: 43%;
padding-top:37vw;
transform: rotate(-9deg);
}

#box-reg
{
position:relative;
margin:auto;
z-index:20;
width: 84vw;
min-height:600px;
background:#fae3bd;
border-radius:20px;
padding-top:30px;
}




.tabella {display: table;width:100%;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;
}


.tabella-menu-sx {display: table;width:100%;position:relative;}
.tabella-menu-dx {display: table;width:100%;position:relative;}


.tabella-box { 
    display: flex; 
    width: 94%; 
    max-width: 94%; 
    margin: 0 auto; 

    gap: 10px; 

    overflow-x: auto; 
    overflow-y: hidden; 

    scroll-snap-type: x mandatory; 
    scroll-behavior: smooth; 
    -webkit-overflow-scrolling: touch;

    box-sizing: border-box;

    scrollbar-width: none;
    overscroll-behavior-x: contain;
} 
 
.tabella-box::-webkit-scrollbar { 
    display: none; 
} 
 
.riga-box { 
    display: contents; 
} 
 
.colonna-box { 
    display: block;
    float: none;

    flex: 0 0 84%; 
    width: 84%; 
    max-width: 84%;

    box-sizing: border-box; 
    padding: 0; 

    scroll-snap-align: start;
    scroll-snap-stop: always;
}

.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;}
.colonna-menu {display: table-cell;vertical-align: middle;width:100%;float:left;}

.colonna-footer1 {display: table-cell;vertical-align: middle;width:100%;float:left;}
.colonna-footer2 {display: table-cell;vertical-align: middle;width:100%;float:left;}
.colonna-footer3 {display: table-cell;vertical-align: middle;width:100%;float:left;}

.colonna50 {display: table-cell;vertical-align: middle;width:100%;float:left;}

.colonna-footer-ph {display: table-cell;vertical-align: middle;width:50%;padding-top:30px;}

table {
border-collapse: separate;
border-spacing: 3px 0; /* 3px orizzontale, 0 verticale */
}


A.bottone1:LINK, A.bottone1:VISITED, A.bottone1:ACTIVE { 
font-family: 'Guzzo Ext Black', sans-serif;
background-color: #5a2015;
margin-left:auto;
margin-right:auto;
border:0px solid #89388a;
border-radius:10px;
font-size: 5vw;
text-align: center;
color:#fae3bd;
padding-top: 10px;
padding-bottom: 10px;
width:55vw;
text-transform: uppercase;
display: block;
}


A.bottone1:HOVER { 
background-color: #022c78;
cursor: pointer;
}



A.bottone:LINK, A.bottone:VISITED, A.bottone:ACTIVE { 
font-family: 'Guzzo Ext Black', sans-serif;
background-color: #5a2015;
margin-left:auto;
margin-right:auto;
border:0px solid #ffed00;
border-radius: 20px;
font-size: 4vw;
text-align: center;
color:#ffe4bd;
padding-top: 15px;
padding-bottom: 15px;
width:74%;
display:block;
text-transform: uppercase;
}


A.bottone:HOVER { 
background-color: #022c78;
cursor: pointer;
}


.bottoneform { 
font-family: 'Guzzo Ext Black', sans-serif;
background-color: #5a2015;
margin-left:auto;
margin-right:auto;
border:0px solid #ffed00;
border-radius: 20px;
font-size: 5vw;
text-align: center;
color:#ffe4bd;
padding-top: 15px;
padding-bottom: 15px;
padding-right:0px;
padding-left:0px;
width:55vw;
text-transform: uppercase;
}


.bottoneform:hover { 
background-color: #022c78;
cursor: pointer;
}


.titolo {
font-size: 6vw;
font-weight: 400;
text-align: center;
text-transform: uppercase;
line-height:1.2;
padding-top:50px;
margin-bottom:30px;
}


.corpo_menu1 {
font-size: 5vw;
font-weight: 400;
text-align: center;
text-transform: uppercase;
padding:14px;
line-height:1;
}

.corpo_menu2 {
font-size: 5vw;
font-weight: 400;
text-align: center;
text-transform: uppercase;
padding:14px;
line-height:1;
}



.corpo_home1 {
font-size: 7vw;
font-weight: 400;
text-align: center;
color:#fae3bd;
line-height:1.1;
margin-left:7%;
margin-right:7%;
padding-top:6vw;
text-transform: uppercase;
}

.corpo_home2 {
font-size: 6vw;
font-weight: 400;
text-align: center;
color:#fae3bd;
line-height:1.1;
margin-left:7%;
margin-right:7%;
padding-top:9vw;
}

.corpo_part1 {
font-size: 6.5vw;
font-weight: 400;
text-align: left;
line-height:1;
margin-left:8vw;
margin-bottom:6vw;
}


.corpo_premio1 {
font-size: 4.6vw;
color:#fae3bd;
font-weight: 400;
text-align: left;
line-height: 1.05;
text-transform: uppercase;
}

.corpo_premio2 {
font-size: 3vw;
color:#fae3bd;
font-weight: 400;
text-align: left;
line-height: 1;
margin-top:5vw;
text-transform: uppercase;
}


.corpo_reg1 {
font-size: 6vw;
color:#fae3bd;
font-weight: 400;
text-align: center;
line-height: 1.1;
margin-bottom:30px;
margin-left:7%;
margin-right:7%;
}

.corpo_reg2 {
font-size: 3vw;
color:#5a2015;
font-weight: 400;
text-align: center;
line-height: 1;
margin-top:30px;
padding-bottom:30px;
margin-left:15%;
margin-right:15%;
text-transform: uppercase;
}


.corpo_priv {
font-size: 16px;
font-weight: 400;
text-align: left;
margin-left:20px;
margin-right:20px;
}


.corpo33, .corpo333 {
font-size: 3vw;
color:#5a2015;
text-transform: uppercase;
}

.corpo_privo {
font-size: 18px;
font-weight: 400;
text-align: left;
margin-top:30px;
margin-bottom:15px;
margin-left:0px;
margin-right:0px;
line-height:1.1;
}


.corpo_fine1 {
font-size: 7vw;
color:#5a2015;
font-weight: 400;
text-align: center;
line-height: 1;
padding-top:100px;
padding-bottom:50px;
margin-left:7%;
margin-right:7%;
text-transform: uppercase;
}

.corpo_fine2 {
font-size: 4vw;
color:#5a2015;
font-weight: 400;
text-align: center;
line-height: 1.1;
margin-left:10%;
margin-right:10%;
}

.corpo_fine3 {
font-size: 4vw;
color:#5a2015;
font-weight: 400;
text-align: center;
line-height: 1.1;
margin-top:30px;
margin-bottom:70px;
margin-left:10%;
margin-right:10%;
}


.corpo_footer1 {
font-size: 3.5vw;
text-align: center;
margin-left:12%;
margin-right:12%;
line-height:1.4;
color:#ffffff;
}


.divi {
display:none;
}



input.forma {
margin-left:10%;
margin-right:10%;
margin-top:6px;
margin-bottom:6px;
padding-left:5%;
padding-right:5%;
text-align: left;
width: 70%;
height: 40px;
border:1px solid #1c3075; 
background-color: #ffffff;
font-size: 4vw;
border-radius: 10px;
color:#1c3075;
}

.forma::placeholder {
font-family: 'Guzzo Ext Black', sans-serif;
font-size: 4vw;
text-transform: uppercase;
color: #1c3075;
}

.codice-riga {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
}

.codice-testo {
    width: 100%;
    font-size: 4vw;
    line-height: 1.15;
    text-align: center;
}

.codice-box {
    position: relative;
    width: 50%;
    height: 60px;
}


/* INPUT VERO */

input.formb {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    box-sizing: border-box;
    border: 1px solid #1c3075;
    border-radius: 10px;
    background-color: #ffffff;

    color: transparent;
    caret-color: transparent;

    font-size: 5vw;

    -webkit-user-select: none;
    user-select: none;

    /* IMPORTANTE */
    -webkit-text-fill-color: transparent;
}

/* Nasconde anche il testo quando viene selezionato */
input.formb::selection {
    background: transparent;
    color: transparent;
}

input.formb::-moz-selection {
    background: transparent;
    color: transparent;
}


/* CARATTERI / TRATTINI */

.codice-display {
    position: absolute;
    inset: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 1px;

    pointer-events: none;

    color: #1c3075;

    font-size: 4vw;
    font-weight: 700;
    line-height: 1;
}

.codice-display span {
    width: 19px;
    text-align: center;
    position: relative;
}

.codice-display span.cursor::after {
    content: "";
    position: absolute;

    width: 2px;
    height: 32px;

    background-color: #1c3075;

    left: 50%;
    top: 50%;

    transform: translate(-50%, -50%);

    animation: lampeggio-cursore 1s steps(1) infinite;
}

@keyframes lampeggio-cursore {
    0%, 50% {
        opacity: 1;
    }

    51%, 100% {
        opacity: 0;
    }
}



/* CHECKBOX */
[type="checkbox"] {
position: absolute;
left: -9999px;
}

[type="checkbox"] + label {
position: relative;
padding-left: 50px;
padding-right: 20px;
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 #5a2015;
background: #fae3bd;
}

[type="checkbox"] + label::after {
content: '';
position: absolute;
top: 7px;
left: 7px;
width: 22px;
height: 22px;
background: #5a2015;
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;
display: inline-block;
vertical-align: middle;
padding-left:0px;
}

label span.corpo333 {
line-height: 1.2;
display: inline-block;
vertical-align: middle;
padding-left:0px;
}

}