.eventi { cursor:pointer; }
.lislot { cursor:pointer; }


.panel {display:none;}
.detail { cursor:pointer; }

.calendar-content {
max-width: 1400px;
margin: 0 auto;
margin-top: 200px;
padding: 0 15px;
}

@media (max-width: 767px) {
.calendar-content {
margin-top: 120px;
}

.calendar-content h2.section-title {
font-size: 45px;
}

}

table {
    margin-block-end: 40px !important;
    border: 1px solid white;
}

table td, table tr {
    border: 1px solid white !important;
}

table td {
padding: 2% !important;
width: 10%;
}

tbody {
font-weight: 400;
font-size: 20px;
}

td.nav-mese {
    line-height: 7em;
}

td.nav-mese a {
	font-weight: 600;
    font-size: 28px;
    text-decoration: none;
}

td.nav-mese a:hover {
    text-decoration: none;
}

td.giorno.non-disponibile:hover {
    cursor: not-allowed;
}

table.booking td:hover {
    cursor: pointer;
}

thead.giorni {
font-size: 19px;
}

p.bold,
strong {
font-weight: 600;
}

p {
    font-size: 20px;
    font-weight: 400;
    line-height: 32px;
    letter-spacing: .5px;
}

h3.mtsel {
font-weight: 600;
}

/*Pallocci dentro al calendario */

td.giorno.disponibile.today:after, td.giorno.disponibile:after {
    background-color: #22c3a1;
    border-radius: 50%;
    display: block;
    content: '';
    width: 15px;
    height: 15px;
    bottom: 7px;
}

td.giorno.non-disponibile.today:after, td.giorno.non-disponibile:after {
    background-color: grey;
    border-radius: 50%;
    display: block;
    content: '';
    width: 10px;
    height: 10px;
    bottom: 7px;
}

td.gable.giorno.disponibile.sold-out:after, 
td.giorno.sold-out.today:after, 
td.giorno.sold-out.today:after, 
td.giorno.esaurito:after {
    background-color: #f3120f;
    border-radius: 50%;
    display: block;
    content: '';
    width: 15px;
    height: 15px;
    bottom: 7px;
}


/* Legenda calendario */

.legenda {
    display: block;
    margin: 10px 0 50px 0;
}

.legenda p {
    margin-right: 20px;
    font-size: 18px;
    display: inline-block;
}

p.legenda-disponibile:before {
    background-color: #22c3a1;
    border-radius: 50%;
    display: inline-block;
    content: '';
    width: 14px;
    height: 14px;
    margin-right: 8px;
    position: relative;
}

p.legenda-sold-out:before {
    background-color: #f3120f;
    border-radius: 50%;
    display: inline-block;
    content: '';
    width: 14px;
    height: 14px;
    margin-right: 8px;
    position: relative;
}

p.legenda-chiuso:before {
    background-color: grey;
    border-radius: 50%;
    display: inline-block;
    content: '';
    width: 14px;
    height: 14px;
    margin-right: 8px;
    position: relative;
}

/* Prenotazioni slot */

div#booking-eventi {
    border-top: 1px solid white;
    padding-top: 20px;
}

ul#elist,
ul#slist {
list-style-type: none;
margin: 25px 0 50px 0;
padding: 0;
text-align: center;
}

li.eventi,
li.lislot {
	display: inline-block;
    border: 1px solid white;
    padding: 20px;
}

p.evento,
p.numero-posti {
margin-bottom: 0;
}

p.numero-posti {
font-size: 16px;
}

.slott.slot.disponibile {
    color: white;
}

/*  Per evidenziare lo slot selezionato */

li.lislot.focus {
    border: 4px solid white;
}

li.lislot.focus  p.ora-ingresso {
font-weight: 600;
}

/* stile pallocci dentro al box */

.disponibile:after {
    background-color: #22c3a1;
    border-radius: 50%;
    display: inline-block;
    content: '';
    width: 14px;
    height: 14px;
    }
    
.non-disponibile:after {
    background-color: grey;
    border-radius: 50%;
	display: inline-block;
    content: '';
    width: 14px;
    height: 14px;
}

.slot.esaurito:after {
    background-color: #f3120f;
    border-radius: 50%;
	display: inline-block;
    content: '';
    width: 14px;
    height: 14px;
}

p.sold-out {
    margin-bottom: 0;
}

.slott.slot.ultimi:after {
background-color: yellow;
    border-radius: 50%;
    display: inline-block;
    content: '';
    width: 14px;
    height: 14px;
}

input#submitpr {
    text-transform: uppercase;
    margin: 40px auto;
    width: 200px;
    padding: 15px;
    display: block;
    color: white;
    font-weight: 500;
    letter-spacing: .5px;
    padding: 14px 30px 14px 30px;
    border-radius: 0 0 0 0;
    border: 1px solid white;
}

input#submit,
input#torna,
[type=button], 
[type=submit], button {
   text-transform: uppercase;
    width: auto;
    padding: 15px;
    display: inline-block;
    color: white;
    font-weight: 500;
    letter-spacing: .5px;
    padding: 14px 30px 14px 30px;
    border-radius: 0 0 0 0;
    border: 1px solid white;
    margin-right: 20px;
    margin-bottom: 20px;
}

/* Per rimuovere colore fucsia di default dallo stile dei bottoni */

[type=button]:focus, 
[type=button]:hover,
[type=submit]:focus, 
[type=submit]:hover, 
button:focus, button:hover {
    background-color: #fff !important;
    color: #171717 !important;
}

input#submit:hover,
input#torna:hover,
input#submitpr:hover {
background: white;
color: black;
}

/* Modulo prenotazioni */

.dettagli-evento {
max-width: 900px;
}

.booking-conferma {
margin-top: 50px;
}

.booking-contatti {
    border-top: 1px solid white;
    margin-top: 40px;
    padding-top: 20px;
    max-width: 900px;
}

.booking-contatti input {
background: transparent;
border-radius: 3px;
color: white;
}

.booking-contatti p,
.booking-contatti label {
    margin-bottom: 5px;
    margin-top: 15px;
    font-size: 16px;
}

.booking-contatti label {
color: white;
font-weight: 400;
}

.comandi-calendario {
margin-top: 50px;
}

p.note {
margin-top: 40px;
}

.box-codice-conferma {
    padding-bottom: 25px;
    border-bottom: 1px solid white;
    margin-bottom: 30px;
}









