@import url('../font/fonts.css');

* {
    font-family: 'HelveticaTTC', sans-serif !important;
}

.fa,
.fab,
.fas,
.far,
.fal,
.fad {
    font-family: "Font Awesome 6 Brands" !important;
}

.material-icons {
    font-family: 'Material Icons' !important;
}

body.Shop div.Date.Parametro::before {
    background-color: #000;
}

body.Shop div.Date.Parametro div.Calendar span.Month {
    background-color: #000;
    height: 60px !important;
    font-size: 30px !important;
    text-transform: capitalize;
}

body.Shop div.Date.Parametro div.Calendar {
    background-color: #000;
}

body.Shop div.Date.Parametro div.Calendar i {
    font-family: "Font Awesome 6 Free" !important;
}

table.Plain {
    border-top-left-radius: 20px !important;
    border-top-right-radius: 20px !important;
    border-bottom-left-radius: 20px !important;
    border-bottom-right-radius: 20px !important;
    border: 1px solid #000 !important;
}

body.Shop div.Date.Parametro div.Calendar th {
    background-color: var(--event-primary-color) !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    padding: 10px !important;
    color: #000 !important;
}

body.Shop div.Date.Parametro div.Calendar td {
    background-color: #000 !important;
    color: #AAAAAA !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    border: 1px solid #434343 !important;
    padding: 40px !important;
}

body.Shop div.Date.Parametro div.Calendar td.Active {
    color: #fff !important;
}

body.Shop div.Date.Parametro div.Calendar td>div {
    padding: 0px !important;
}

body.Shop div.Date.Parametro div.Calendar td.Active:hover {
    border: 1px solid var(--event-primary-color) !important;
}

body.Shop div.Date.Parametro div.Calendar td.Selected {
    background-color: transparent !important;
    color: none !important;
    border: 1px solid var(--event-primary-color) !important;
}

body.Shop div.Date.Parametro div.Calendar tr.Last__Visible__Row > td:last-child {
    border-bottom-right-radius: 20px;
}

body.Shop div.Date.Parametro div.Calendar tr.Last__Visible__Row > td:first-child {
    border-bottom-left-radius: 20px;
}

body.Shop div.Date.Parametro div.TicketsContainer {
    max-width: fit-content !important;
    padding-top: 35px !important;
}

span.Brand {
    display: none;
}

div.Calendar a.Arrow.PreviousMonth {
    left: 85px !important;
}

div.Calendar a.Arrow.NextMonth {
    right: 85px !important;
}

div.Calendar a.Arrow.Active {
    font-size: 22px !important;
}




/* popup */
div.Dialog.Cart div.Container {
    background: var(--event-primary-color) !important;
    box-shadow: none !important;
    border-radius: 20px !important;
    padding: 15px 5px 5px 5px !important;
    width: 658px !important;
    overflow-y: hidden !important;
}

body.Shop div.FasceGroup div.RaggruppamentiFascia div.Fasce__Item div.Orario {
    background-color: black !important;
    border: 1px solid #434343 !important;
    border-radius: 10px !important;
}

body.Shop div.FasceGroup div.RaggruppamentiFascia div.Fasce__Item div.Orario:hover {
    border-color: var(--event-primary-color) !important;
}

body.Shop div.FasceGroup div.Fasce div.Fasce__Item.Fasce__Item--Selected,
body.Shop div.FasceGroup div.RaggruppamentiFascia div.Fasce__Item.Fasce__Item--Selected {
    border-color: transparent !important;
}

body.Shop div.FasceGroup div.RaggruppamentiFascia div.Fasce__Item.Fasce__Item--Selected>div {
    border-color: var(--event-primary-color) !important;
}

div.Fasce div.Fasce__Item:not(.Fasce__Item--Disabled)>div:hover {
    border-color: var(--event-primary-color) !important;
}

body.Shop div.Date.Parametro {
    padding-top: 0px !important;
}

body.Shop div.Date.Parametro div.Legend {
    background-color: black !important;
}

body.Shop div.FasceGroup div.Legend div.Legend__Item {
    color: #fff !important;
}

.Divider {
    display: none !important;
}

body.Dialog div.Dialog div.Container h3 {
    display: none !important;
}

body.Shop div.Coupon.NoDateCoupon {
    /* display: none !important; */
    background: #000 !important;
    margin: 0 !important;
    padding-top: 15px;
    padding-bottom: 40px;
    /* border-bottom-left-radius: 17px !important;
    border-bottom-right-radius: 17px !important; */
}

.popup-header {
    width: 100% !important;
    margin-bottom: 32px !important;
    display: flex !important;
    justify-content: space-between;
    padding-left: 20px;
    padding-right: 20px;
}

.header-image {
    width: 35% !important;
    height: auto !important;
}

.custom-close::before {
    content: "close";
    font-family: "Material Icons";
    font-size: 45px;
}

.custom-close {
    border: 3px solid #000;
    border-radius: 50%;
    color: #000;
    display: flex;
    align-items: center;
    width: 50px;
    height: 50px;
    cursor: pointer;
}

p.popup-data-fasce {
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    margin-bottom: 0px !important;
}

.popup-data-fasce::before {
    content: "trending_flat";
    font-family: "Material Icons";
    font-size: 40px;
}

p.popup-data-fasce-ora {
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
}

.popup-data-fasce-ora::before {
    content: "trending_flat";
    font-family: "Material Icons";
    font-size: 40px;
}

form.Vendita {
    background: #000 !important;
    border-bottom-left-radius: 17px !important;
    border-bottom-right-radius: 17px !important;
}

/* form.Vendita div.Date.Parametro::before {
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
} */

.Wrap.Riepilogo.Bind.ContinueBtn {
    display: block !important;
    justify-items: center !important;
}

.Legend__Item.Combo {
    display: none !important;
}

body.Shop div.FasceGroup div.Legend {
    justify-content: left !important;
    gap: 8px !important;
    padding-bottom: 30px !important;
    clear: left !important;
    padding-top: 20px !important;
}

body.Shop div.FasceGroup div.Legend>div {
    font-size: 16px !important;
}

body.Shop div.FasceGroup div.Legend div.Legend__Item.Legend__Item--Green::before {
    background-color: var(--event-availability-high);
}

body.Shop div.FasceGroup div.Legend div.Legend__Item.Legend__Item--Orange::before {
    background-color: var(--event-availability-medium);
}

body.Shop div.FasceGroup div.Legend div.Legend__Item.Legend__Item--Red::before {
    background-color: var(--event-availability-low);
}

body.Shop div.FasceGroup div.Legend div.Legend__Item.Legend__Item--Grey::before {
    background-color: var(--event-availability-soldout);
}

body.Shop div.FasceGroup div.Legend div.Legend__Item:not(.Combo)::before {
    width: 8px !important;
    height: 8px !important;
}

body.Shop div.FasceGroup div.Legend div.Legend__Item {
    padding-left: 13px !important;
}

body.Shop div.FasceGroup div.RaggruppamentiFascia {
    /* padding-top: 20px !important; */
    gap: 0px !important;
    justify-content: left !important;
}

.ball-fasce {
    width: 6px;
    height: 6px;
    background-color: beige;
    position: absolute;
    top: 6px;
    left: 6px;
    border-radius: 50%;
}

body.Shop div.FasceGroup div.Fasce {
    margin-bottom: 30px !important;
    gap: 6px !important;
    justify-content: left !important;
    display: unset !important;
}

div.Fasce div.Fasce__Item>div {
    border-radius: 10px !important;
}

div.Fasce div.Fasce__Item:not(.Fasce__Item--Disabled)>div {
    background-color: black !important;
    border: 1px solid #434343 !important;
    border-radius: 10px !important;
}

/* step 2 */
body.Shop div.Raggruppamento.Biglietti {
    display: block !important;
    flex-wrap: unset !important;
    align-items: unset !important;
    margin: 0 auto !important;
    margin-top: 15px !important;
}

body.Shop div.Raggruppamento div.Prodotto {
    margin: 0 !important;
    width: 100% !important;
    margin-bottom: 10px !important;
    border-radius: 20px !important;
    border: 1px solid #434343 !important;
}

form.Vendita div.Step div.Wrap {
    background: #000 !important;
    /* border-bottom-left-radius: 17px !important;
    border-bottom-right-radius: 17px !important; */
}

div.Dialog.Cart div.Container {
    max-height: max-content !important;
}

div.Dialog.Cart {
    overflow-y: scroll !important;
    scrollbar-gutter: stable both-edges;
}

body.Shop div.Raggruppamento div.Prodotto.BackgroundImage div.Content {
    padding: 20px !important;
    height: fit-content !important;
}

body.Shop div.Raggruppamento div.Prodotto h4 {
    color: #fff !important;
    border-bottom: 0px !important;
}

body.Shop div.Raggruppamento div.Prodotto.BackgroundImage div.Content div.BackgroundWrapper {
    display: none !important;
}

.custom-content-ticket {
    position: relative;
    display: flex;
    align-items: center;
    width: 83%;
    font-size: 18px;
    color: #fff;
    line-height: 20px;
    /* font-weight: bold; */
}

.custom-title-ticket {
    width: 80%;
}

.custom-totals {
    font-size: 1.2rem;
}

.StrikedPrice.Bind {
    display: none !important;
}

div.NumberPicker input[readonly] {
    background-color: #000 !important;
    color: #fff !important;
    font-weight: normal !important;
    font-size: 14px !important;
    border-radius: 10px !important;
    cursor: pointer !important;
}

div.NumberPicker {
    background-color: #000 !important;
    border-radius: 10px !important;
    border: 1px solid #434343 !important;
    width: 70px !important;
}

div.NumberPicker::after {
    border: 0px !important;
}

div.NumberPicker::before {
    content: "expand_more" !important;
    font-family: "Material Icons" !important;
    font-size: 25px !important;
    right: unset !important;
    border: 0px !important;
    width: unset !important;
    border: 0px !important;
    top: unset !important;
    margin-top: 5px !important;
    color: #fff !important;
}

.custom-price-ticket {
    width: 25% !important;
    text-align: end;
    font-weight: bold !important;
}

p.custom-firsttitle-ticket {
    color: #fff !important;
    margin-bottom: 0px !important;
    font-size: 14px !important;
    font-weight: bold !important;
}

p.custom-secondtitle-ticket {
    color: #AAAAAA !important;
    margin-top: 0px !important;
    font-size: 14px !important;
    padding-right: 35px !important;
}

.CMSContent.Wrap {
    display: none !important;
}

.BundleNote.Wrap {
    display: none !important;
}

div.NumberPickerList {
    background: #000 !important;
    border: 1px solid #434343 !important;
    padding: 4px 0 4px 0 !important;
}

div.NumberPickerList a {
    line-height: 1.5 !important;
    height: auto !important;
    border-bottom: 0px !important;
    font-size: 14px !important;
}

div.NumberPickerList a:hover {
    background-color: var(--event-primary-color) !important;
    color: #fff !important;
}

body.Shop div.Raggruppamento div.Prodotto div.Content>div.Bar>div.Bind:first-child {
    display: flex !important;
    align-items: center !important;
    place-content: space-between !important;
}

body.Shop div.Coupon.NoDateCoupon div.Field {
    width: 100% !important;
    display: inline-block;
}

/* body.Shop div.Coupon.NoDateCoupon div.Field input {
    height: 65px !important;
    background: #000 !important;
    border: 1px solid #434343 !important;
    border-radius: 12px !important;
    width: 80% !important;
    padding: 10px !important;
    color: #fff !important;
    padding-top: 25px !important;
} */

body.Shop div.Coupon div.Field .Icon {
    border-radius: 12px !important;
    top: 10px !important;
    color: var(--event-primary-color) !important;
    border: 2px solid var(--event-primary-color) !important;
    width: 17% !important;
    height: 65px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 17px !important;
    font-weight: bold !important;
    background-color: #000 !important;
}

body.Shop div.Coupon div.Field .Icon i {
    display: none !important;
}

div.Group>label[for="Bundle_CouponHypotesis"] {
    top: 18px !important;
    font-size: 14px !important;
}

/* body.Shop div.Coupon.NoDateCoupon div.Field input::placeholder {
    position: relative !important;
    top: -20px !important;
    font-weight: bold !important;
} */


div.Riepilogo {
    color: #fff !important;
    background: #000 !important;
    border-bottom-left-radius: 17px !important;
    border-bottom-right-radius: 17px !important;
    padding: 0px 18px 18px 18px !important;
    display: none !important;
}

div.Riepilogo div.Header {
    display: none !important;
}

div.Riepilogo div.ProductList {
    border: 1px solid #434343 !important;
    border-bottom: 0px !important;
    padding: 20px !important;
    border-top-left-radius: 20px !important;
    border-top-right-radius: 20px !important;
}

div.Riepilogo div.ProductList div.Product {
    border: 0px !important;
}

div.Riepilogo div.Column {
    border: 0px !important;
}

div.Riepilogo div.Column1 {
    padding-left: 0px !important;
}

div.Riepilogo div.Column4 {
    padding-right: 0px !important;
}

div.Riepilogo div.Totale {
    margin-top: 0px !important;
    border-top: 0px !important;
    border-bottom: 1px solid #434343 !important;
    border-left: 1px solid #434343 !important;
    border-right: 1px solid #434343 !important;
    border-bottom-left-radius: 20px !important;
    border-bottom-right-radius: 20px !important;
    padding: 10px !important;
}

.custom-riepilogo {
    border: 1px solid #434343;
    border-radius: 20px;
    padding: 18px;
    line-height: 50px;
    /* display: none; */
    font-size: 14px;
}

.custom-riepilogo p {
    font-size: 14px !important;
    color: #fff !important;
    font-weight: bold;
    text-align: start !important;
}

.custom-riepilogo-row {
    display: flex;
    justify-content: space-between;
    font-size: 1.2rem;
    line-height: 30px;
}

.content-riepilogo {
    background: #000;
    padding-left: 18px;
    padding-right: 18px;
    font-size: 18px;
    color: #fff;
    font-weight: bold;
    border-top-left-radius: 17px !important;
    border-top-right-radius: 17px !important;
    padding-bottom: 18px;
}

hr.hr-riepilogo {
    border-top: 1px solid #434343 !important;
    border-left: 1px solid #434343 !important;
    border-right: 1px solid #434343 !important;
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

.custom-subtotals {
    display: flex;
    justify-content: space-between;
    font-weight: bold;
    color: #AAAAAA;
}

.custom-totalone {
    display: flex;
    justify-content: space-between;
    font-size: 1.2rem;
}

.Button {
    float: none !important;
}

.Wrap.Riepilogo.Bind.ContinueBtn a i {
    display: none !important;
}

.Wrap.Riepilogo.Bind.ContinueBtn .Button.Icon {
    padding: 15px 20px !important;
    margin: auto !important;
    border-radius: 16px !important;
    border: 1px solid transparent !important;
    color: #000000 !important;
    background-color: var(--event-primary-color) !important;
    width: 245px !important;
    text-align: center !important;
    text-transform: lowercase !important;
    font-size: 16px !important;
    font-weight: bold !important;
}

.Wrap.Riepilogo.Bind.ContinueBtn .Button.Icon:hover {
    color: #fff !important;
    opacity: 0.8 !important;
}

.Wrap.Riepilogo.Bind.ContinueBtn .Button.Icon::first-letter {
    text-transform: capitalize;
}

.Wrap.Riepilogo.Bind.ContinueBtn .Button.Icon::before {
    display: none !important;
}

a.PayButton.Button.Icon.Right.Squared.Standard:hover {
    color: #fff !important;
    opacity: 0.8 !important;
}

a.PayButton.Button.Icon.Right.Squared.Standard::first-letter {
    text-transform: capitalize;
}

.Accessories {
    display: none !important;
}



.Registrazione.Module {
    display: grid !important;
}

form.Columns2.Vendita.Pagamento {
    background: #000 !important;
    margin-top: -20px !important;
}

form.Columns2.Vendita.Pagamento div.Group input {
    width: 100% !important;
    height: 48px;
    background: #000 !important;
    border: 1px solid #434343 !important;
    border-radius: 12px !important;
    padding: 10px !important;
    color: #fff !important;
    padding-top: 25px !important;
}

form.Columns2.Vendita.Pagamento div.Group input::placeholder {
    position: relative !important;
    top: -20px !important;
    font-weight: bold !important;
}

input#Bundle_CouponHypotesis {
    width: 80% !important;
    height: 65px !important;
    background: #000 !important;
    border: 1px solid #434343 !important;
    border-radius: 12px !important;
    padding: 10px !important;
    color: #fff !important;
    padding-top: 25px !important;
    position: relative !important;
    font-weight: normal !important;
}

input#Bundle_CouponHypotesis.has-error.active {
    border: 2px solid #B94A48 !important;
    background-color: #FFECEB !important;
}

.TabContainer.Tabs.Bind.AuthenticationBox {
    background: #000 !important;
    border-bottom-left-radius: 17px;
    border-bottom-right-radius: 17px;
}

.CheckBox.Privacy {
    color: #fff !important;
    font-weight: bold;
}

.CheckBox.Privacy a {
    color: var(--event-primary-color) !important;
    font-weight: bold;
}

p.RecaptchaPrivacyNotice {
    display: none !important;
}

.Wrap.Step.Step1.Steps-2 {
    padding: 0px 20px 20px 20px !important;
    background: #000 !important;
    border-bottom-left-radius: 17px !important;
    border-bottom-right-radius: 17px !important;
    text-align: left !important;
}

p.information-text {
    color: #fff !important;
    margin-bottom: 15px !important;
}

body div.Tabs div.TabContent {
    border: 0px !important;
}

.Registrazione.Module .Group i {
    font-size: 20px;
}

a.Button.Fill {
    padding: 15px 20px !important;
    margin: auto !important;
    border-radius: 16px !important;
    border: 1px solid transparent !important;
    color: #000000 !important;
    background-color: var(--event-primary-color) !important;
    width: 245px !important;
    text-align: center !important;
    text-transform: lowercase !important;
    font-size: 16px !important;
    font-weight: bold !important;
}

a.Button.Fill:hover {
    color: #fff !important;
    opacity: 0.8 !important;
}

a.Button.Fill::first-letter {
    text-transform: capitalize;
}

form.Columns2.Vendita.Pagamento div.Group.Clear {
    margin: 0 auto !important;
    padding-right: 0px !important;
    margin-top: 20px !important;
}

body.Shop div.Pagamento div.Step1.Steps-2>h4 {
    display: none !important;
}

.Wrap.Step.Step1.Steps-2 .RadioButton {
    display: none !important;
}

.Wrap.Step.Step1.Steps-2>div.Group {
    display: block !important;
    padding: 0px !important;
}

div.MetodoPagamento.Stripe #container {
    background: #000;
    box-shadow: none !important;
    border-radius: 12px 12px 12px 12px;
    border: 1px solid var(--event-primary-color) !important;
    padding: 0px !important;
    margin-bottom: 20px !important;
}

.header-pagamento {
    width: 100% !important;
    border-left: 1px solid !important;
    border-right: 1px solid !important;
    border-top: 1px solid !important;
    border-color: var(--event-primary-color) !important;
    border-radius: 12px 12px 0px 0px !important;
    display: flex !important;
    justify-content: space-between !important;
    padding: 20px !important;
}

.header-pagamento span {
    font-weight: bold;
    color: #fff;
    font-size: 16px;
    line-height: 20px;
}

.div-card-image {
    position: relative !important;
    width: 34px;
    height: 24px;
    padding: 4px;
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
}

.div-card-images {
    display: flex;
    gap: 10px;
}

.div-card-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

div.MetodoPagamento.Stripe input {
    margin-bottom: 0px !important;
}

div.MetodoPagamento.Stripe #StripePaymentElement {
    margin-top: 20px !important;
    border-radius: 12px !important;
}

a.PayButton.Button.Icon.Right.Squared.Standard {
    padding: 15px 20px !important;
    margin: auto !important;
    border-radius: 16px !important;
    border: 1px solid transparent !important;
    color: #000000 !important;
    background-color: var(--event-primary-color) !important;
    width: 245px !important;
    text-align: center !important;
    text-transform: lowercase !important;
    font-size: 16px !important;
    font-weight: bold !important;
}

a.PayButton.Button.Icon.Right.Squared.Standard::before {
    display: none !important;
}

i.fas.fa-caret-circle-right {
    display: none !important;
}

.MetodoPagamento.Stripe {
    text-align: center !important;
}

/* input:-webkit-autofill {
    transition: background-color 5000s ease-in-out 0s !important;
    -webkit-text-fill-color: #fff !important;
} */

/** Manage errors **/
form.Columns2.Vendita.Pagamento div.Group input.has-error {
    border: 2px solid #B94A48 !important;
    background-color: #FFECEB !important;
    color: #B94A48 !important;
}

span.ErrorPlaceholder {
    display: none !important;
}

.FinalError.Error {
    /* display: none !important; */
    background: #e36f70 !important;
    border-radius: 14px !important;
    color: #fff !important;
    font-size: 16px !important;
    margin-left: 20px !important;
    margin-right: 20px !important;
    line-height: 20px !important;
    padding: 15px !important;
}

div.StripeElement.StripeElement--invalid {
    border: 2px solid #B94A48 !important;
    background-color: #FFECEB !important;
}

body.Shop div.Date.Parametro div.Calendar td.Selected>div {
    border: solid 2px var(--event-primary-color) !important;
}

div.Dialog {
    background-color: rgb(217 217 217 / 10%) !important;
}

body.Shop div.Coupon>label[for="Bundle_CouponHypotesis"] {
    color: var(--event-primary-color) !important;
    font-weight: bold !important;
    font-size: 16px !important;
    pointer-events: none !important;
}

body.Shop div.FasceGroup div.Fasce div.Fasce__Item div.Orario {
    height: max-content !important;
    width: 130px !important;
    line-height: unset !important;
    padding: 1rem !important;
}

div.label-fascia-oraria {
    clear: left !important;
    color: var(--event-primary-color) !important;
    padding-top: 15px !important;
    padding-bottom: 3px !important;
    font-size: 16px !important;
}

body.Shop div.Coupon label {
    width: unset !important;
}

div.container-term-of-use {
    margin-bottom: 30px !important;
}

div.container-term-of-use p {
    color: #fff !important;
    text-align: left !important;
}

div.container-term-of-use p a {
    color: var(--event-primary-color) !important;
    text-decoration: none !important;
}

div.container-term-of-use p a:hover {
    color: var(--event-primary-color)9e !important;
}

body.Shop div.Coupon div.Field .Icon.AnimatedCheck {
    display: none !important;
}

div.Coupon div.Field.CouponValid input {
    width: 100% !important;
    height: 65px !important;
    background: var(--event-primary-color) !important;
    border: 1px solid #434343 !important;
    border-radius: 16px !important;
    padding: 10px !important;
    color: #000 !important;
    position: relative !important;
    font-weight: normal !important;
}

div.Coupon div.Field.CouponValid label {
    display: none !important;
}

del.event_testo_barrato {
    color: var(--event-primary-color);
}








.Group {
    position: relative !important;
    margin: 7px 0 !important;
    padding-right: 0px !important;
    padding-bottom: 0px !important;
    width: 100% !important;
}

.Group input {
    width: 100% !important;
    padding: 12px 8px !important;
    font-size: 16px !important;
    box-sizing: border-box !important;
}

.Group label {
    z-index: 1 !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    left: 6px !important;
    color: #909090 !important;
    pointer-events: none !important;
    background: transparent !important;
    padding: 0 4px !important;
    font-size: 16px !important;
    font-weight: bold !important;
    transition:
        top 0.4s ease,
        transform 0.4s ease,
        font-size 0.4s ease,
        color 0.4s ease !important;
}

.required {
    color: #e36f70;
}

.Group.active label {
    top: 0px !important;
    font-size: 15px !important;
    color: #909090 !important;
    transform: none !important;
}

.Group input.active {
    height: 65px !important;
}


div#Content h3:first-child:not(.MarginTop) {
    display: none !important;
}

div.div-description {
    height: 100%;
    width: 50%;
    color: #fff;
    font-size: 18px;
    line-height: 1.5;
    padding: 35px;
}

div.div-description div {
    margin-top: 25px;
    margin-bottom: 25px;
}

div.div-description a {
    color: var(--event-primary-color) !important;
    text-decoration: none !important;
    background-color: transparent;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    fill: var(--event-primary-color);
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: var(--event-primary-color);
    border-radius: 32px 32px 32px 32px;
    padding: 12px 24px;
}

img.img-line-description {
    width: 79px;
    vertical-align: middle;
    margin-right: 20px;
    margin-top: -7px;
}

div.custom-wrap {
    padding-top: 40px;
    display: flex;
    padding-bottom: 40px;
}


/** Fasce **/
.Fasce__Item {
    display: block !important;
    float: left !important;
}

.RaggruppamentiFascia.Bind {
    display: none !important;
}






a.Button.Icon.Next.Right.Bind.Standard {
    display: none !important;
}


div#Content {
    padding-top: 0px !important;
    min-height: 0px !important;
    display: none !important;
}

body:not(.CMSPage) footer {
    margin: 0px !important;
}

div.Matematici {
    display: none !important;
}

.Wrap.Vendita.Pagamento.Biglietti.Padding {
    color: #fff !important;
    background-color: #000 !important;
    margin: 0px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 100px !important;
}

a.Button.Download.Right.Standard {
    display: grid !important;
    width: fit-content !important;
    background-color: var(--event-primary-color);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    fill: #000;
    color: #000 !important;
    border-radius: 10px;
    padding: 12px 35px;
    cursor: pointer;
    margin: 0;
}

a.home_page_button {
    display: grid !important;
    width: fit-content !important;
    background-color: transparent;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    color: var(--event-primary-color) !important;
    border-radius: 10px;
    padding: 12px 35px;
    cursor: pointer;
    border: 1px solid var(--event-primary-color);
    height: fit-content;
    margin: 0;
    text-decoration: none !important;
}

a.home_page_button:hover {
    text-decoration: none !important;
}

.thankyou_page_buttons {
    display: flex;
    gap: 25px;
    width: 100%;
    justify-content: center;
}

a.Button.Download.Right.Standard:hover {
    border-color: var(--event-primary-color) !important;
}

form.Columns2 {
    text-align: center !important;
    line-height: 40px !important;
    font-size: 18px !important;
}

h1.Wrap {
    display: none !important;
}

div.event_menu_overlay {
    width: 500px;
    height: auto;
    position: fixed;
    top: 10px;
    right: 35px;
    background: #FBFAF8;
    z-index: 999;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
}

div.event_menu_overlay.active {
    opacity: 1;
    visibility: visible;
}

div.event_menu_overlay.active .event_menu_items>ul>li {
    opacity: 1;
    transform: translateY(0);
}

.event_menu_items ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.event_menu_items>ul>li {
    margin-bottom: 2px;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
}

.event_menu_items>ul>li:nth-child(1) {
    transition-delay: 0.1s;
}

.event_menu_items>ul>li:nth-child(2) {
    transition-delay: 0.15s;
}

.event_menu_items>ul>li:nth-child(3) {
    transition-delay: 0.20s;
}

.event_menu_items>ul>li:nth-child(4) {
    transition-delay: 0.25s;
}

.event_menu_items>ul>li:nth-child(5) {
    transition-delay: 0.30s;
}

.event_menu_items a {
    display: block;
    padding: 10px;
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

.submenu {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 15px;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: all 0.3s ease;
    padding: 0;
}

.submenu li a {
    padding-left: 20px;
    font-size: 18px;
    font-weight: 400;
}

.has-submenu.active .submenu {
    max-height: 300px;
    opacity: 1;
    padding-top: 15px;
}

.has-submenu.active .event_arrow_bottom {
    transform: rotate(180deg);
}

.has-submenu .event_arrow_bottom {
    transition: all 0.3s ease;
}

.event_menu_items .submenu li a {
    display: flex;
    align-items: center;
    gap: 10px;
}

.event_menu_items .submenu .left,
.event_menu_items .submenu .right {
    white-space: nowrap;
}

.event_menu_items .submenu .line {
    flex-grow: 1;
    height: 1px;
    background-color: #999;
}

.event_menu_items>ul>li>a {
    font-size: 24px;
    font-weight: 700;
    display: flex;
    justify-content: space-between;
}

.event_menu_items>ul>li:not(:last-child) {
    margin-bottom: 10px;
}

.event_arrow_right {
    opacity: 0;
    transform: translateX(-5px);
    transition: all 0.3s ease;
}

.event_arrow_active {
    opacity: 1;
    transform: translateX(0px);
}

button.event_menu_button {
    background: transparent;
    border: none;
    margin-right: 35px;
    cursor: pointer;
}

button.event_menu_close {
    position: absolute;
    background: transparent;
    border: none;
    right: 15px;
    top: 15px;
    cursor: pointer;
}

.event_menu_header {
    display: none;
}


span.event_hey {
    font-size: 22px;
    font-weight: bold;
}

span.event_thankyou {
    font-weight: bold;
    font-size: 63px !important;
}

span.event_emailed {
    font-weight: bold;
    font-size: 17px;
}

.container-checkbox-conditions {
    color: #fff;
    text-align: left;
    margin-bottom: 30px !important;
    margin-top: 30px !important;
}

.container-checkbox-conditions label {
    font-size: 16px !important;
    line-height: 25px !important;
    margin-bottom: 10px !important;
    width: fit-content !important;
}

.container-checkbox-conditions label a {
    text-decoration: none !important;
    color: var(--event-primary-color) !important;
}

.container-checkbox-conditions input[type="checkbox"] {
    width: 17px !important;
    height: 17px !important;
    margin-right: 3px !important;
    margin-top: 3px !important;
    margin-left: 0px !important;
    background-color: #ffffff !important;
    border-color: #55555540 !important;
    color: #555555 !important;
    border-radius: 4px !important;
    border: 1px solid #ccc !important;
    cursor: pointer !important;
    vertical-align: text-bottom !important;
    position: relative !important;
    background: white !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    padding: 0px !important;
}

.container-checkbox-conditions input[type="checkbox"]:checked::after {
    content: "✓";
    color: #000;
    font-size: 14px;
    font-weight: 700;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.container-checkbox-conditions input[type="checkbox"]:checked {
    background-color: var(--event-primary-color) !important;
}

.div-waiver {
    font-weight: normal !important;
    font-size: 16px;
    line-height: 25px;
    border: 1px solid #fff;
    border-radius: 10px;
    padding: 12px;
    margin: 15px 0px 15px 0px !important;
}

.div-waiver a {
    text-decoration: none !important;
    color: var(--event-primary-color) !important;
}

.div-waiver a:hover {
    text-decoration: none !important;
    color: var(--event-primary-color) !important;
}

input.error-border {
    border: 2px solid #e36f70 !important;
}

.event_thankyou {
    margin-top: 50px;
    display: grid;
    margin-bottom: 50px;
}

span.event_thankyou_name {
    font-weight: 700;
    font-size: 32px;
    color: #fff;
}

span.event_thankyou_title {
    font-weight: 700;
    font-size: 100px;
    color: var(--event-primary-color);
    margin-bottom: 70px;
    margin-top: 40px;
}

span.event_thankyou_emailed {
    font-weight: 700;
    font-size: 24px;
    color: #fff;
}

span.event_thankyou_note {
    font-weight: 400;
    font-size: 18px;
    color: #fff;
    margin-bottom: 20px;
}

i.Bind.far.fa-square.unchecked {
    display: none !important;
}

div.CheckBox {
    display: flex !important;
    line-height: 25px !important;
}

div.CheckBox span.Label {
    color: #fff !important;
    font-size: 16px !important;
    line-height: 25px !important;
    margin-bottom: 10px !important;
    width: fit-content !important;
    font-weight: 700 !important;
    margin-left: 5px !important;
}

input#ConsensoMarketing {
    margin-right: 8px !important;
}

i.Bind.far.fa-square {
    color: #fff !important;
}

.fa-check-square:before,
.fa-square-check:before {
    content: "" !important;
}

div.CheckBox i {
    margin-right: 0px !important;
}

.Orario.Bind.ExtraPanel {
    display: none !important;
}

.custom-riepilogo-row span:first-child {
    width: 70%;
    line-height: 25px;
    align-content: center;
}

.custom-riepilogo-row span:last-child {
    position: relative;
    width: 30%;
    display: contents;
}

.custom-content-loader {
    position: relative;
    width: 100%;
    height: 100vh;
    background: #000;
    display: flex;
    justify-content: center;
}

.spinner {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
    margin-top: 14rem;
}

.spinner div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 64px;
    height: 64px;
    margin: 8px;
    border: 6px solid var(--event-primary-color);
    border-radius: 50%;
    animation: spinner-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: var(--event-primary-color) transparent transparent transparent;
}

.spinner div:nth-child(1) {
    animation-delay: -0.45s;
}

.spinner div:nth-child(2) {
    animation-delay: -0.3s;
}

.spinner div:nth-child(3) {
    animation-delay: -0.15s;
}

@keyframes spinner-ring {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.open-ticket {
    padding: 0px 20px;
    justify-items: center;
    text-align: center;
}

.container-open-ticket {
    max-width: 1280px;
    margin: 0 auto;
    border-radius: 12px;
    padding: 35px 12px 35px 12px;
    margin-top: 40px;
    border: 1px solid var(--event-primary-color);
    display: flex;
}

.open-ticket-logos {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 40%;
    padding: 20px;
}

.open-ticket-text {
    width: 45%;
    font-size: 24px;
    font-weight: 400;
    line-height: 32px;
    padding: 20px;
    text-align: left;
}

.open-ticket-btn {
    width: 15%;
    height: initial;
    padding: 20px;
}

.open-ticket-btn a {
    background: var(--event-primary-color);
    display: flex;
    width: 100%;
    font-weight: 700;
    font-size: 1.4rem;
    align-items: center;
    height: 100% !important;
    justify-content: center;
    text-decoration: none !important;
    color: #000 !important;
    border-radius: 4px;
}

img.choose-your-day {
    margin-top: 50px;
    margin-bottom: 10px;
}

a.event_map_location {
    color: var(--event-primary-color);
    text-decoration: underline;
}

a.event_map_location:hover {
    color: var(--event-primary-color);
}

/** OTP - Start **/
.iti__search-input {
    width: 100% !important;
    height: 48px;
    background: #000 !important;
    border: 1px solid var(--event-primary-color) !important;
    border-radius: 12px !important;
    padding: 10px !important;
    color: #fff !important;
    padding-top: 25px !important;
    padding-left: 10px !important;
}

.iti__selected-dial-code {
    font-size: 16px !important;
    font-weight: bold !important;
    /* font-style: italic; */
}

.iti__search-input::placeholder {
    position: relative !important;
    top: -20px !important;
    font-weight: bold !important;
}

ul#iti-0__country-listbox {
    overflow-y: auto;
    scrollbar-width: none;
}

a.confirm-otp-btn {
    width: 35% !important;
    border-radius: 12px !important;
    top: 10px !important;
    color: #000 !important;
    border: 2px solid var(--event-primary-color) !important;
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 17px !important;
    font-weight: bold !important;
    background-color: var(--event-primary-color) !important;
    /* font-style: italic !important; */
    text-decoration: none !important;
    cursor: pointer !important;
}

a.confirm-otp-btn-length {
    height: 65px !important;
}

.active-btn-otp {
    display: flex !important;
    gap: 10px;
}

a.confirm-otp-btn.confirm-otp-btn-disabled {
    color: #999 !important;
    border: 2px solid #ccc !important;
    background-color: #e0e0e0 !important;
    cursor: not-allowed !important;
    opacity: 0.6 !important;
    pointer-events: none !important;
}

.confirm-otp-box {
    display: none;
    position: relative;
    transition: opacity 0.5s ease !important;
    opacity: 1 !important;
}

#otp-box h3 {
    display: block !important;
    font-weight: 700 !important;
    color: #fff !important;
    font-family: 'Merriweather' !important;
}

#otp-box {
    position: relative !important;
    width: 100% !important;
    max-width: fit-content !important;
    margin: 30px auto !important;
    padding: 20px !important;
    border: 1px solid var(--event-primary-color) !important;
    border-radius: 12px !important;
    background: #000 !important;
    text-align: center !important;
    font-family: sans-serif !important;
}

.otp-inputs {
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin: 20px 0 !important;
}

.otp-inputs input {
    color: #fff !important;
    background: transparent !important;
    width: 45px !important;
    height: 48px !important;
    font-size: 24px !important;
    text-align: center !important;
    border: 1px solid var(--event-primary-color) !important;
    border-radius: 12px !important;
    outline: none !important;
    transition: 2px solid var(--event-primary-color) !important;
}

.otp-inputs input:focus {
    border-color: var(--event-primary-color) !important;
}

#submit-otp {
    width: 100% !important;
    height: 48px !important;
    padding: 12px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    background-color: var(--event-primary-color) !important;
    color: #000 !important;
    border: none !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    /* font-style: italic !important; */

}

#submit-otp:hover {
    background-color: var(--event-primary-color) !important;
}

input.iti__tel-input.otp-btn-valid {
    background: var(--event-primary-color) !important;
    color: #000 !important;
}

.otp-box-overlay {
    background: rgb(from var(--event-otp-overlay-bg) r g b / 0.29) !important;
    top: 0;
    left: 0;
    position: absolute !important;
    width: 100% !important;
    height: 100% !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 32px !important;
    border-radius: 12px !important;
    display: none !important;
    transition: opacity 0.5s ease !important;
    opacity: 1 !important;
}

.loader {
    width: 40px !important;
    height: 40px !important;
    border: 4px solid #ccc !important;
    border-top: 4px solid var(--event-primary-color) !important;
    border-radius: 50% !important;
    animation: spin 1s linear infinite !important;
    display: none;
}

.success-icon {
    color: rgb(45, 104, 45) !important;
    font-size: 48px !important;
    font-weight: bold !important;
    display: none;
}

.error-icon {
    color: #B94A48 !important;
    font-size: 48px !important;
    font-weight: bold !important;
    display: none;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/** OTP - End **/

div.Parametro.Coupon {
    display: none !important;
}


@media (max-width: 768px) {
    div.Calendar a.Arrow.NextMonth {
        right: 10px !important;
    }

    div.Calendar a.Arrow.PreviousMonth {
        left: 10px !important;
    }

    .iti__selected-dial-code {
        font-size: 16px !important;
    }

    input.iti__tel-input {
        font-size: 16px !important;
        padding-left: 90px !important;
    }

    .iti .iti__selected-dial-code {
        margin-left: 0px !important;
    }

    a.confirm-otp-btn {
        font-size: 12px !important;
    }

    .otp-inputs input {
        flex: 1 1 0 !important;
        min-width: 0 !important;
    }

    .open-ticket {
        text-align: center;
    }

    img.choose-your-day {
        width: 70%;
    }

    .container-open-ticket {
        display: grid;
        padding: 20px 12px 20px 12px;
    }

    .open-ticket-logos {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 16px;
        flex-wrap: nowrap;
        padding: 10px;
    }

    .open-ticket-logos img:nth-child(1),
    .open-ticket-logos img:nth-child(3) {
        width: 45%;
    }

    .open-ticket-logos img:nth-child(2) {
        width: 10%;
    }


    .open-ticket-text {
        width: 100%;
        font-size: 16px;
        padding: 10px;
        text-align: left;
    }

    .open-ticket-btn {
        width: 100%;
        padding: 10px;
    }

    .open-ticket-btn a {
        width: max-content;
        margin: 0 auto;
        padding: 20px;
    }

    body.Shop div.Date.Parametro div.TicketsContainer {
        width: 100% !important;
        max-width: 100% !important;
    }

    div.CheckBox span.Label {
        font-size: 14px !important;
    }

    span.event_thankyou_name {
        font-weight: 700;
        font-size: 18px;
        color: #fff;
    }

    span.event_thankyou_title {
        font-weight: 700;
        font-size: 48px;
        color: var(--event-primary-color);
        margin-bottom: 35px;
        margin-top: 14px;
    }

    span.event_thankyou_emailed {
        font-weight: 700;
        font-size: 16px;
        color: #fff;
    }

    span.event_thankyou_note {
        font-weight: 400;
        font-size: 16px;
        color: #fff;
        margin-bottom: 20px;
    }


    .container-checkbox-conditions label {
        font-size: 14px !important;
    }

    .div-waiver {
        font-size: 14px !important;
    }

    div.Dialog {
        background-color: #000 !important;
    }

    body.Shop div.Date.Parametro div.Calendar td {
        padding: 1.4rem !important;
    }

    div.Dialog.Cart div.Container {
        width: 95% !important;
    }

    .header-image {
        width: 55% !important;
        height: 55% !important;
    }

    body.Shop div.Coupon div.Field .Icon {
        width: 29% !important;
    }

    input#Bundle_CouponHypotesis {
        width: 67% !important;
    }

    .custom-content-ticket {
        width: 100% !important;
        display: grid !important;
        /* line-height: 27px !important; */
    }

    img#event_logo {
        width: 100px !important;
        margin-left: 0px !important;
    }

    div.event_menu {
        padding: 15px !important;
    }

    div.event_content {
        width: inherit !important;
        height: 630px !important;
        position: relative !important;
        overflow: visible !important;
    }

    /* img#event_image {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        transform: translate(-50%, -50%) !important;
        object-fit: cover !important;
        width: -webkit-fill-available !important;
    } */

    div.event_over img {
        max-width: 300px !important;
    }

    div.event_over span {
        font-size: 14px !important;
    }

    div.event_over {
        top: 230px !important;
    }

    div.custom-wrap {
        display: inline-grid !important;
    }

    div.div-description {
        width: 100% !important;
        padding: 5px !important;
        font-size: 16px !important;
    }

    div.event_line {
        margin-left: 0px !important;
        margin-right: 0px !important;
    }

    .event_line_text span {
        font-size: 17px !important;
    }

    div.event_cnt_footer {
        display: inline-grid !important;
        padding: 35px 20px 35px 20px !important;
        border-top: 1px solid #808080 !important;
    }

    div.event_copyright {
        margin-bottom: 25px !important;
        gap: 15px !important;
    }

    img.event_logo_beam {
        width: 132px !important;
    }

    img.event_logo_lux {
        max-width: fit-content !important;
    }

    div.event_menu {
        z-index: 500 !important;
    }

    div.event_social {
        gap: 0px !important;
        justify-content: space-between !important;
    }

    .Wrap.Vendita.Pagamento.Biglietti.Padding {
        padding: 50px 10px 50px 10px !important;
    }

    button.event_menu_button {
        margin-right: 0px;
    }

    div.event_menu_overlay {
        width: 100%;
        top: 0px;
        right: 0px;
        padding: 0px;
        border-radius: 0px;
    }

    button.event_menu_close {
        display: none;
    }

    .event_menu_header {
        display: flex;
        background: #000;
        height: 70px;
        padding: 0 12px;
        align-items: center;
        justify-content: space-between;
    }

    .event_menu_header img {
        width: 120px;
        height: fit-content;
    }

    .event_menu_items {
        padding: 25px 15px;
    }

    button.event_menu_close_mobile {
        border: none;
        background: transparent;
    }

    .event_no_scroll {
        overflow: hidden;
    }

    .thankyou_page_buttons {
        display: grid;
        place-items: center;
    }

    .event_thankyou {
        margin-top: 50px;
        display: grid;
        margin-bottom: 25px;
    }

    div.event_line {
        padding-top: 0px !important;
    }

    div.CookiePolicyManager-Banner {
        max-width: 100% !important;
        max-height: 100vh !important;
    }

    .custom-footer-policy {
        display: grid !important;
        justify-content: unset !important;

    }

    div.CookiePolicyManager-Banner>div.Wrap {
        max-height: 50vh !important;
        overflow: auto;
    }

    body.Shop div.Raggruppamento div.Prodotto div.Content>div.Bar>div.Bind:first-child {
        display: inline !important;
    }

    body.Shop div.Raggruppamento div.Prodotto div.Content {
        height: auto !important;
    }

    .custom-title-ticket {
        width: 100%;
    }

    .custom-price-ticket {
        width: 100% !important;
    }

    div.NumberPicker {
        margin-top: 7px !important;
    }

    p.custom-secondtitle-ticket {
        margin-bottom: 10px !important;
    }

    p.popup-data-fasce-ora {
        font-size: 14px !important;
    }

    p.popup-data-fasce {
        font-size: 14px !important;
    }

    body.Shop div.FasceGroup div.Legend div.Legend__Item {
        font-size: 14px !important;
    }

    body.Shop div.FasceGroup div.Legend>div {
        font-size: 14px !important;
    }

    body.Shop div.Coupon>label[for="Bundle_CouponHypotesis"] {
        font-size: 14px !important;
    }

    .custom-riepilogo-row {
        font-size: 14px !important;
    }

    .custom-subtotals {
        font-size: 14px !important;
        line-height: 30px;
    }

    .custom-totalone {
        font-size: 14px !important;
    }

    p.first-paragraph,
    p.second-paragraph {
        font-size: 14px !important;
    }

    span.event_dicitura_text {
        line-height: 20px !important;
        font-size: 12px !important;
        text-align: left !important;
        display: block !important;
        padding: 0px 20px 10px 20px !important;
    }

    .Wrap>span.event_dicitura_text {
        padding: 0px !important;
    }

    p.custom-secondtitle-ticket {
        padding-right: 0px !important;
    }

    body.Shop div.FasceGroup div.Fasce div.Fasce__Item div.Orario {
        height: max-content !important;
        width: 110px !important;
        line-height: unset !important;
        padding: 15px 10px 15px 10px !important;
        font-size: 13px !important;
    }

    .ball-fasce {
        width: 5px !important;
        height: 5px !important;
    }

}

span.event_dicitura_text {
    line-height: 20px;
    font-size: 14px;
}




/** policy popup **/
div.CookiePolicyManager-Banner {
    background: #212121 !important;
    color: #fff !important;
    border: 2px solid #2A2A2A !important;
    width: 845px !important;
    box-shadow: 0 32px 68px rgba(0, 0, 0, 0.3) !important;
    border-radius: 6px;
    padding: 0px !important;
}

div.CookiePolicyManager-Banner__Content img {
    display: none !important;
}

div.custom-content-policy {
    font-size: 14px;
    line-height: 24px;
    font-weight: 400;
    padding: 12px 0;
    border-bottom: 1px solid #2A2A2A;
}

div.custom-content-policy p {
    margin-block-start: 0;
    margin-block-end: .9rem;
}

div.custom-header-policy {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 24px;
    border-bottom: 1px solid;
    border-color: #2A2A2A;
}

div.custom-header-policy span {
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
}

.policy_accordion {
    margin: auto;
}

.policy_accordion input {
    display: none;
}

.policy_accordion label {
    position: relative;
    display: block;
    background: transparent;
    padding: 15px 15px 0 25px;
    font-weight: bold;
    cursor: pointer;
    margin-bottom: 5px;
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: transparent;
    padding: 0 15px;
    border-top: none;
}

.accordion-content p {
    color: #d0d0d0;
    background-color: #2a2a2a;
    border-color: #474444;
    font-size: 12px;
    line-height: 24px;
    margin: 0;
    padding: 10px;
    border-radius: 6px;
    margin-left: 10px;
    margin-top: 10px;
}

.policy_accordion input:checked+label+.accordion-content {
    max-height: 100px;
}

.policy_accordion .header {
    display: flex;
    justify-content: space-between;
}

.policy_accordion .header span:first-child {
    font-size: 16px;
    line-height: 24px;
    font-weight: bold;
    color: #fff;
}

.policy_accordion .header span:last-child {
    color: #008000;
    font-weight: bold;
    line-height: 24px;
    font-size: 14px;
}

.policy_accordion .title {
    margin: 10px 0 0 0;
}

.policy_accordion .title span {
    color: #fff;
    line-height: 24px;
    font-size: 14px;
}

svg.arrow {
    position: absolute;
    color: #fff;
    left: 0px;
    top: 20px;
    transition: all 0.3s ease;
}

.policy_accordion label.active svg.arrow {
    transform: rotate(180deg);
}

div.CookiePolicyManager-Banner div.Block {
    display: none !important;
}

div.CookiePolicyManager-Banner>div.Wrap {
    max-height: 575px;
    overflow: auto;
}

a.Block.Ok.AcceptBtn {
    display: none !important;
}

.custom-footer-policy {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 24px;
    border-top: 1px solid;
    border-color: #2A2A2A;
    gap: 7px;
}

.custom-footer-policy button {
    flex: auto;
    max-width: 100%;
    border: 2px solid;
    padding: 8px 27px 8px 27px;
    cursor: pointer;
    font-size: 14px;
    line-height: 24px;
    font-weight: 500;
    border-radius: 2px;
}

.policy-btn-reject,
.policy-btn-prefer {
    color: #FFFFFF;
    background-color: transparent;
    border-color: #FFFFFF;
}

.policy-btn-accept {
    background-color: var(--event-primary-color);
    border-color: var(--event-primary-color) !important;
    color: #000;
}

img.custom-header-image {
    cursor: pointer;
    padding: 10px;
}

body.Shop div.Raggruppamento div.Prodotto a.Information {
    display: none !important;
}

.custom-price-ticket-desc {
    color: #787878;
    line-height: 1.5;
    font-size: 12px;
    font-weight: normal;
}

.custom-price-ticket-total {
    font-size: 14px;
    margin-bottom: 2px;
}

.leaflet-control-zoom.leaflet-bar.leaflet-control {
    display: none !important;
}









img#event_logo {
    width: 130px;
    margin-left: 35px;
}

div.event_menu {
    z-index: 100;
    position: fixed;
    width: 100%;
    height: auto;
    padding: 10px;
    background-color: var(--event-primary-color);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

div.event_content {
    width: 100%;
    height: 927px;
    overflow: hidden;
    background-image: url('../imgs/header_event_image.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    position: relative;
}

div.event_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: inherit;
    background: rgb(0 0 0 / 81%);
    pointer-events: none;
}

img#event_image {
    width: 100%;
}

div.event_over {
    width: 100%;
    position: absolute;
    top: 270px;
    margin: 0 auto;
    text-align: center;
    color: #fff;
}

div.event_over img {
    max-width: 528px;
}

div.event_over span {
    font-size: 24px;
    display: grid;
}

div.event_over span strong {
    font-weight: bold;
}

div.event_over a {
    background-color: var(--event-primary-color);
    font-family: "Helvetica", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    fill: #000;
    color: #000;
    border-radius: 32px 32px 32px 32px;
    padding: 12px 24px;
    display: block;
    width: fit-content;
    margin: 0 auto;
    margin-top: 15px;
    margin-bottom: 20px;
    text-decoration: none;
    cursor: pointer;
}

div.event_text {
    padding: 50px 10px 70px 10px;
    width: 100%;
    background-color: var(--event-primary-color);
    overflow: hidden;
    white-space: nowrap;
    box-sizing: border-box;
    display: flex;
    align-items: center;
}

div.event_text span {
    display: inline-block;
    padding-left: 100%;
    animation: scroll 30s linear infinite;
    color: #000;
    font-weight: 400;
    font-size: 24px;
}

footer.event_footer {
    background-color: #000;
}

div.event_line {
    padding-top: 15px;
    padding-bottom: 15px;
    margin-left: 75px;
    margin-right: 75px;
}

div.event_line hr {
    height: 1px !important;
    background-color: #808080 !important;
    border: none !important;
}

div.event_map {
    margin: 0 auto;
    margin-bottom: 40px;
    max-width: 1650px;
    padding-left: 6%;
    padding-right: 6%;
}

div.event_line_text {
    margin-bottom: 25px;
}

.event_line_text img {
    width: 79px;
    vertical-align: middle;
    margin-right: 20px;
    margin-top: -7px;
}

.event_line_text span {
    color: #fff;
    font-size: 24px;
    font-weight: 400;
}

div#event_cnt_map {
    width: 100%;
    height: 500px;
}

.leaflet-control-attribution {
    display: none !important;
}

div.event_cnt_footer {
    padding: 20px 35px 20px 35px;
    display: flex;
    align-items: center;
    color: #fff;
    justify-content: space-between;
}

img.event_logo_beam {
    width: 150px;
}

img.event_logo_lux {
    width: 28px;
    height: 28px;
}

span.event_copy_text {
    font-size: 10px;
    color: #fff;
}

div.event_copyright {
    display: flex;
    align-items: center;
    gap: 30px;
}

div.event_social {
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    gap: 30px;
}

a.event_policy {
    color: #fff;
    text-decoration: underline;
    font-size: 10px;
}

a.event_policy:hover {
    color: #fff;
}

div.event_social a {
    color: #fff;
}

.leaflet-top {
    z-index: 400 !important;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}



@keyframes scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}