#side-tabs {
    display: none !important;
}

#coming-soon-footer-banner {
    display: none !important;
}

body {
    margin-top: 5.5625rem;
}

#main_content_fullwidth,
main.main-content-fullwidth {
    min-height: 85vh;
}

header.site-header.fixed-header {
    display: flex;
    position: fixed;
    height: 5.625rem;
    z-index: 999;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding: .5rem 1.5rem;
    flex-flow: row wrap;
    justify-content: space-between;
    overflow: hidden;
    border-bottom: 1px solid #3a567a;
    background-image: url('../img/banner-data.png');
    background-position: center right;
    background-size: 35rem;
    background-repeat: no-repeat;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: transform;
}

.site-title-bar {
    display: flex;
    flex-flow: row wrap;
    width: 2rem;
}

.link-header-logo {
    width: 6rem;
    display: block;
    margin: 0 auto;
}

.link-header-logo img {
    display: block;
    width: 100%;
    height: auto;
}

.button-main-menu,
.button-main-menu:active .button-main-menu:focus,
.button-main-menu:focus-visible,
.button-main-menu:hover {
    border: 0;
    width: 2rem;
    height: 1.25rem;
    margin-right: 0;
    align-self: center;
    background: transparent;
    cursor: pointer;
    position: relative;
}

.centered {
    text-align: center;
}

.button-main-menu span:before,
.button-main-menu span:after {
    content: '';
    position: absolute;
    display: block;
    border-top: 1px solid #fefefe;
    transform-origin: center;
    transform: rotate(0);
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    left: 0;
    right: 0;
    width: 100%;
}

.button-main-menu em:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    border-top: 1px solid #fefefe;
    transform-origin: center;
    transform: scale(1);
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
}

.button-main-menu span:before {
    top: 0;
}

.button-main-menu span:after {
    top: 100%;
}

body.open-main-menu .button-main-menu span:before {
    transform: rotate(45deg);
    top: 50%;
}

body.open-main-menu .button-main-menu span:after {
    transform: rotate(-45deg);
    top: 50%;
}

body.open-main-menu .button-main-menu em:before {
    transform: scale(0);
}

.notify-box {
    display: block;
    width: calc(100% - 1rem);
    max-width: 15rem;
    position: fixed;
    padding: 1rem;
    background: #ee015b;
    border-radius: 3px;
    right: 1rem;
    top: 5rem;
    transform: translateX(16rem);
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 9999;
}

.notify-box-content {
    font-size: .875rem;
    line-height: 1.2;
    padding-right: .5rem;
}

body.open-notify-box .notify-box {
    transform: translateX(0);
}

button.notify-box-toggle-off {
    background: #5e91cc;
    color: #fff;
    border: 2px solid #0d0d0d;
    font-size: .5625rem;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 3px;
    line-height: 1;
    position: absolute;
    top: -.5rem;
    right: -.5rem;
    cursor: pointer;
}

.side-main-menu {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    max-width: 100%;
    position: fixed;
    top: 5.5625rem;
    bottom: 0;
    z-index: 998;
    height: -webkit-calc(100% - 5.5625rem);
    height: -moz-calc(100% - 5.5625rem);
    height: calc(100% - 5.5625rem);
    padding: 0;
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateX(-100%);
    background: #263d5933;
    overflow-y: auto;
    padding-bottom: 4rem;
    backdrop-filter: grayscale(1) blur(5px);
    scrollbar-width: thin;
    scrollbar-color: #fcb539 #00000000;
}

.content-main-menu {
    display: flex;
    width: 100%;
    align-self: center;
    position: relative;
    z-index: 10;
    flex-flow: row wrap;
}

.content-main-menu .col-sx-menu {
    display: block;
    width: calc(50% + 4rem);
    text-align: right;
    padding-right: 0;
}

.content-main-menu .col-dx-menu {
    display: block;
    width: 50%;
    text-align: left;
    padding-left: 1rem;
}

.side-main-menu-backdrop {
    display: block;
    width: 100%;
    position: fixed;
    z-index: 997;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    backdrop-filter: blur(1px) grayscale(.5);
}

body.open-main-menu .side-main-menu {
    transform: translateX(0rem);
    background: #18293dcc;
}

body.open-main-menu .side-main-menu-backdrop {
}

/*
@media all and (max-width:1199.5px) {
    .content-main-menu .col-sx-menu,
    .content-main-menu .col-dx-menu {
        width:100%;
    }
}
    */

input.apply-tax-filter-button {
    border: 1px solid #5e91cc;
    padding: .5rem 1rem .5rem 1rem;
    border-radius: 1rem;
    background: #5e91cc;
    color: #fff;
    position: relative;
    font-size: .875rem;
    z-index: 1;
    cursor: pointer;
    width: 12rem;
    margin-left: 1rem;
    margin-top: 2rem;
}

input.apply-tax-filter-button:hover {
    background: #fcb539;
    border: 1px solid #fcb539;
}

input.apply-tax-filter-button.disabled {
    filter: grayscale(1);
    cursor: initial;
    background: #888888 !important;
    pointer-events: none;
}

.site-navigation.top-bar {
    align-self: center;
    display: block;
    text-align: center;
    width: calc(100% - 4rem);
}

.site-header-options {
    display: block;
    width: 2rem;
}

.header-searchform {
    display: inline-flex;
}

input.input-searchform {
    border: 1px solid #fcb539;
    padding: .5rem .75rem;
    border-radius: 0;
    background: #fcb539;
    color: #fff;
    min-width: 12rem;
    font-size: .875rem;
    height: 2.25rem;
    position: relative;
    z-index: 10;
}

input.input-searchform::placeholder,
input.nome-playlist::placeholder {
    color: #ffffffcc;
    opacity: 1;
}

input.submit-searchform {
    border: 1px solid #5e91cc;
    padding: .5rem 1.5rem;
    border-radius: 0;
    background: #5e91cc;
    color: #fff;
    position: relative;
    font-size: .875rem;
    z-index: 1;
    margin-left: .125rem;
    cursor: pointer;
}

.site-header-options a {
    display: block;
    line-height: 1;
    align-self: center;
}

.site-header-options a:not(:last-child) {
    margin-right: 1rem;
}

a.pulsante-medio {
    display: block;
    padding: .625rem 1rem 0 1rem;
    align-self: center;
    border-radius: 1rem;
    height: 2rem;
    line-height: 1;
    text-transform: uppercase;
    font-size: .75rem;
    -webkit-appearance: button;
    text-align: center;
    max-width: 12rem;
}

.main-slider {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
}

.item-main-slider {
    display: flex;
    width: 100%;
    flex-flow: row wrap;
    min-height: 41.66vw;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 2rem;
}

.header-item-main-slider {
    display: block;
    width: 100%;
    max-width: 40rem;
    align-self: center;
}

@media all and (min-width:1024px) {
    .header-item-main-slider {
        padding-left: 4vw;
    }
}

.header-item-main-slider a.pulsante-medio {
    margin-top: 2rem;
}

button.pulsante-circolare {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 0;
}

@media all and (max-width:991.5px) {

    .button-main-menu,
    .button-main-menu:active .button-main-menu:focus,
    .button-main-menu:focus-visible,
    .button-main-menu:hover {
        width: 1.25rem;
        height: 1rem;
        margin-right: .5rem;
    }

    header.site-header.fixed-header {
        padding: .25rem .5rem .25rem .5rem;
        height: auto;
        background-size: contain;
        background-position: center right;
    }

    body {
        margin-top: 3.75rem;
    }

    .side-main-menu {
        top: 3.75rem;
        height: -webkit-calc(100% - 3.75rem);
        height: -moz-calc(100% - 3.75rem);
        height: calc(100% - 3.75rem);
    }

    .link-header-logo {
        width: 4.25rem;
        display: block;
        padding: .125rem;
    }



    body.open-searchform .site-navigation.top-bar {
        transform: translateX(-.5rem);
    }

    body:not(.open-searchform) .pulsante-toggle-search i.fa-xmark-large {
        display: none;
    }

    body.open-searchform .pulsante-toggle-search i.fa-magnifying-glass {
        display: none;
    }

    .site-header-options {
        overflow: hidden;
        font-size: .875rem;
    }

    .site-header-options a.link-iscrizione-gratuita {
        display: none;
    }
}

@media all and (min-width:992px) {
    .pulsante-toggle-search {
        display: none;
    }
}

@media all and (max-width:639.5px) {
    .item-main-slider {
        min-height: calc(100vh - 3rem);
        padding: 1rem;
        position: relative;
    }

    .header-item-main-slider {

        z-index: 10;
    }

    .header-item-main-slider::before {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: rgba(0, 0, 0, .25);
    }
}

.owl-dots {
    position: absolute;
    z-index: 100;
    bottom: 1rem;
    left: 0;
    right: 0;
    width: 100%;
    text-align: center;
}

.owl-dots button.owl-dot:not(:last-child) {
    margin-right: .5rem;
}

.owl-dots button.owl-dot {
    height: 1rem;
    width: 1rem;
    background: #5e91cc !important;
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: .5rem;
}

.owl-dots button.owl-dot.active {
    width: 2rem;
    background: #fcb539 !important;
}

a.upgrade-level-link {
    padding: .5rem 1rem;
    border-radius: 1rem;
    font-size: .75rem;
    text-transform: uppercase;
    position: relative;
}

a.upgrade-level-link>span:first-child {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    display: flex;
    flex-flow: row wrap;
    width: 5rem;
    background: #ffffff;
    border-radius: 1rem;
}

a.upgrade-level-link>span:first-child>span.colore-nero {
    align-self: center;
    text-align: center;
    display: block;
    width: 100%;
}

a.upgrade-level-link>span:first-child>span.colore-nero i {
    font-size: .875rem;
    margin-right: .125rem;
}

a.upgrade-level-link>span:last-child {
    display: inline-block;
    padding-left: 4.5rem;
}

a.download-effettuati {
    font-size: .75rem;
    padding: .5rem 1rem;
    margin-right: 1rem;
    border-radius: 1rem;
    line-height: 1;
    text-transform: uppercase;
}

.logged-in-user-menu {
    position: fixed;
    z-index: 100;
    top: 4rem;
    right: 0;
    background: rgba(0, 0, 0, .75);
    backdrop-filter: blur(1px) grayscale(.5);
    padding: 0;
    display: none;
    width: -webkit-calc(100% - 1rem);
    width: -moz-calc(100% - 1rem);
    width: calc(100% - 1rem);
    max-width: 20rem;
    border-bottom-left-radius: .5rem;
    overflow: hidden;
}

.logged-in-user-menu header h3 {
    font-weight: normal;
    margin: 0;
}

.logged-in-user-menu header {
    margin-bottom: 0;
    padding: 1rem;

}

.logged-in-user-menu header h3 span {
    display: block;
    font-size: .75rem;
    text-transform: uppercase;
}

ul.opzioni-menu-utente {
    list-style-type: none;
    padding-left: 0;
    margin: 0;
}

ul.opzioni-menu-utente li {
    display: block;
    width: 100%;
    font-size: .875rem;
}

ul.opzioni-menu-utente li i {
    font-size: 1rem;
    margin-right: .5rem;
}

ul.opzioni-menu-utente li a {
    padding: .5rem 1rem;
    display: block;
    width: 100%;
    transition: all .25s cubic-bezier(0.4, 0, 0.2, 1);
}

ul.opzioni-menu-utente li a:hover {
    background: red !important;
}

body:not(.user-menu-open) #logged_in_user_menu_link .fa-xmark-large {
    display: none;
}

body.user-menu-open #logged_in_user_menu_link .fa-user {
    display: none;
}

@media all and (max-width:991.5px) {
    .logged-in-user-menu {
        top: 3rem;
    }
}

button.taxonomy-select {
    background: rgb(43, 43, 43);
    border: 0;
    color: rgb(178, 178, 178);
    font-size: 12px;
    padding: .5rem .75rem;
    border-radius: 1rem;
    line-height: 1;
    cursor: pointer;
    margin-bottom: 0.25rem;
    margin-right: .25rem;
    transition: all .25s cubic-bezier(0.4, 0, 0.2, 1);
    display: block;
}

button.taxonomy-select:hover {
    background-color: rgb(77, 77, 77);
    color: rgb(230, 230, 230);
}

button.taxonomy-select.taxonomy-on {
    background: #fcb539;
    color: #ffffff;
}

.taxonomy-section {
    display: block;
    padding: 0rem;
}

.taxonomy-section>h4 {
    margin: 0 0 .5rem 0;
    line-height: 1;
    padding: .25rem 1rem;
    border-bottom: 1px solid #2b2b2b;
    color: #ffffff;
    display: block;
    width: 100%;
    font-size: 1.125rem;
    height: 1.75rem;
    position: relative;
}

.taxonomy-section:not(:last-child) {
    margin-bottom: 1rem;
}

.taxonomy-section-content {
    padding: .5rem 1rem;
    display: flex;
    flex-flow: row wrap;
    width: 100%;
}

button.check-uncheck-taxonomy {
    display: block;
    width: 2rem;
    height: 1rem;
    border-radius: .625rem;
    background: #2b2b2b;
    border: 0;
    position: absolute;
    right: 1rem;
    top: calc(50% - .5rem);
    transition: all .25s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
}

button.check-uncheck-taxonomy.checked-taxonomy {
    background: #5e91cc;
}

button.check-uncheck-taxonomy::before {
    content: '';
    display: block;
    position: absolute;
    width: calc(1rem - 4px);
    height: calc(1rem - 4px);
    background: #4d4d4d;
    border-radius: 50%;
    left: 2px;
    top: 2px;
    transition: all .25s cubic-bezier(0.4, 0, 0.2, 1);
}

button.check-uncheck-taxonomy.checked-taxonomy::before {
    left: calc(100% - 1rem + 2px);
    background: #fff;

}

.sezione-offerte {
    background-image: url('../img/background-sezione-offerte.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.sezione-offerte::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: linear-gradient(to bottom, rgba(13, 13, 13, 1) 0%, rgba(13, 13, 13, 0) 30%, rgba(13, 13, 13, 0) 50%, rgba(13, 13, 13, 0) 70%, rgba(13, 13, 13, 1) 100%);
}


.sezione-offerte>div {
    position: relative;
    z-index: 10;
}

.sezione-offerte .grid-x .col-sx,
.sezione-offerte .grid-x .col-dx {
    border-width: 3px;
    border-style: solid;
    border-radius: 1rem;
    position: relative;
}

.container-offerta .content-offerta {
    padding: 1rem 1rem 4rem 1rem;
    background: rgba(0, 0, 0, .35);
    border-radius: 1rem;
    backdrop-filter: blur(2px);
    position: relative;
}

.container-offerta .content-offerta header h3 {
    margin: 0;
}

ul.elenco-features {
    list-style-type: none;
    padding: 0;
    margin: 1rem 0 2rem 0;
}

ul.elenco-features li {
    display: block;
    font-size: 1.25rem;
}

ul.elenco-features li:not(:last-child) {
    margin-bottom: 1rem;
}

.note-iscrizione {
    font-size: .875rem;
    position: relative;
    margin-bottom: 1rem;
}


.note-iscrizione::after {
    content: '';
    display: block;
    width: 4rem;
    margin: 1rem auto;
}

.free-container .note-iscrizione::after {
    border-top: 1px solid #5e91cc;
}

.pro-container .note-iscrizione::after {
    border-top: 1px solid #fcb539;
}

.sezione-offerte .grid-x .col-sx .options-container,
.sezione-offerte .grid-x .col-dx .options-container {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding: 1rem;
    text-align: center;
}

a.pulsante-big {
    padding: .5rem 2rem;
    border-radius: 1rem;
    font-size: 1rem;
}

.col-sx.img-offerte {
    border: 0 !important;
    margin-bottom: -4rem;
    z-index: 1;
}

.free-subscription .col-dx {
    align-self: center;
    margin-left: -25%;
    position: relative;
    z-index: 5;
}

.free-subscription .col-dx .content-offerta {
    background: rgba(0, 0, 0, .5);
}

@media all and (max-width:639.5px) {
    .free-subscription .col-dx {
        margin-left: 0;
        order: 1;
    }

    .col-sx.img-offerte {
        display: none;
    }
}

.music-list-container {
    display: block;
    width: 100%;
    padding: 0;
}

.riga-brano {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    overflow: hidden;
    padding: .5rem;
    background: #000;
    border-radius: 3px;
    overflow: hidden;
}

.riga-brano:hover {
    background: #222;
}

.riga-brano:not(:last-child) {
    margin-bottom: 3px;
}


.riga-brano div.miniatura-brano {
    width: 4rem;
    height: auto;
    margin: 0;
    border-radius: 3px;
    overflow: hidden;
}

.riga-brano div.miniatura-brano img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0;
}

.riga-brano .titolo-brano {
    display: block;
    width: 15rem;
    padding: .5rem;
    align-self: center;
    overflow: hidden;
}

.riga-brano .elenco-genre {
    align-self: center;
    display: block;
    width: 10rem;
    padding: .5rem;
}

.riga-brano .titolo-brano h2 {
    display: block;
    width: 100%;
    margin: 0;
    overflow: hidden;
    position: relative;
}

.riga-brano .titolo-brano h2::after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 1rem;
    z-index: 10;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
}



.riga-brano .titolo-brano h2>span {
    display: block;
    width: 20rem;
    line-height: 1;
    position: relative;
    z-index: 1;
}

.riga-brano .titolo-brano .elenco-autori {
    font-size: .875rem;
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.riga-brano .titolo-brano .elenco-autori::after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 1rem;
    z-index: 10;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
}

.riga-brano .titolo-brano .elenco-autori>span {
    display: block;
    width: 20rem;
    line-height: 1;
    position: relative;
    z-index: 1;
}

.riga-brano:hover .titolo-brano .elenco-autori::after,
.riga-brano:hover .titolo-brano h2::after {
    background: linear-gradient(to right, rgba(34, 34, 34, 0) 0%, rgba(34, 34, 34, 1) 100%);
}

.riga-brano .titolo-brano .elenco-autori a span.colore-link {
    color: #888888;
}

.riga-brano .elenco-genre a span.colore-link {
    color: #bbb;
}

.riga-brano .pulsanti-opzioni-riga-brano {
    display: flex;
    width: 6.5rem;
    align-self: center;
    padding-left: .5rem;
    flex-flow: row wrap;
    justify-content: space-between;
}

.riga-brano .riga-dx {
    position: relative;
}

.riga-brano .riga-dx::after {
    content: '';
    display: block;
    height: 1.5rem;
    right: 0;
    position: absolute;
    border-right: 2px solid #333;
    top: calc(50% - .75rem);
}

.riga-brano .riga-dx::before {
    content: '';
    display: block;
    height: 1.5rem;
    right: 0px;
    position: absolute;
    border-right: 1px solid #222;
    top: calc(50% - .75rem);
    z-index: 2;
}

.riga-brano .audio-player-brano {
    display: flex;
    position: relative;
    width: -webkit-calc(100% - 35.5rem);
    width: -moz-calc(100% - 35.5rem);
    width: calc(100% - 35.5rem);
    align-self: center;
    padding: .5rem;
    flex-flow: row wrap;
}

.riga-brano .audio-player-brano .dati-file-audio {
    color: #888888;
    width: 4rem;
    font-size: .75rem;
    align-self: center;
}

.riga-brano .audio-player-brano .player-audio-brano {
    display: flex;
    width: calc(100% - 4rem);
    align-self: center;
    position: relative;
    flex-flow: row wrap;
}

.riga-brano .audio-player-brano .player-audio-brano .wp-audio-shortcode {
    background: #000 !important;
    width: 100% !important;
}


.srp_miniplayer_metas,
.srp_player_meta {
    display: none !important;
}

.srp_control_box,
.srp_player_boxed {
    padding: 0 !important;
}

button.play-audio {
    display: block;
    width: 3rem;
    height: 3rem;
    align-self: center;
    background: transparent;
    border: 3px solid #888888;
    border-radius: 50%;
    color: #888888;
    text-align: center;
    line-height: 1;
    margin-right: 1rem;
    align-self: center;
    cursor: pointer;
}

.audio-player-waveform {
    display: block;
    width: calc(100% - 4rem);
    align-self: center;
}



span.play-button-icon {
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 8px 0 8px 13.9px;
    border-color: transparent transparent transparent #888888;
    transform: rotate(0deg);
    display: block;
    margin: 0 auto 0 .625rem;
}

span.pause-button-icon {
    display: block;
    width: 16px;
    height: 16px;
    border-left: 4px solid #888;
    border-right: 4px solid #888;
    margin: 0 auto;
}

button.play-audio.status-pause .pause-button-icon {
    display: none !important;
}

button.play-audio:not(.status-pause) .play-button-icon {
    display: none !important;
}

button.pulsante-riga-brano {
    display: block;
    background: transparent;
    border: 0;
    cursor: pointer;
    color: #888888;
}

button.pulsante-riga-brano:hover {
    color: #ffffff;
}

.pulsante-small {
    display: inline-block;
    width: 100%;
    text-align: center;
    border-radius: .5rem;
    line-height: 1;
    font-size: .75rem;
    padding: .25rem 1rem;
    text-transform: uppercase;
}

.small-text {
    font-size: .875rem;
}

.xsmall-text {
    font-size: .75rem;
}

.colore-grigio {
    color: #888;
}

.colore-bianco {
    color: #fff;
}

.colore-bianco .colore-link {
    color: #fff;
}

.content-download-riga-brano {
    width: 100%;
    padding: 1rem;
    background-color: #0d0d0d;
    background-image: url('../svg/rolling-64px.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 4rem;
    margin-top: .5rem;
    display: none;
    min-height: 20rem;
}

.content-download-riga-brano .grid-x {
    background-color: #0d0d0d;
}

ul.formati-disponibili-download {
    list-style-type: none;
    padding: 0;
    margin: 1rem 0;
    width: 100%;
}

ul.formati-disponibili-download li {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    font-size: .875rem;
    padding: 0;
    justify-content: space-between;
    background: #222;
    border-radius: .5rem;
    height: 2.25rem;
    border: 1px solid #0d0d0d;
}

ul.formati-disponibili-download li>label {
    display: block;
    padding: .5rem .75rem;
}

ul.formati-disponibili-download li:not(:last-child) {
    margin-bottom: 1px;
}

ul.formati-disponibili-download li:nth-child(odd) {
    background: #333;
}

.cover-music-download {
    display: block;
    width: 20rem;
    margin-right: 1rem;
}

ul.formati-disponibili-download li>span {
    display: flex;
    flex-flow: row wrap;
    margin-right: -.75rem;
    margin-top: -.5rem;
    position: relative;
    height: 2.25rem;
    margin-bottom: -.75rem;
    width: 7.25rem;
    background: #5e91cc;
    border-radius: .5rem;
    border: 1px solid #0d0d0d;
    overflow: hidden;
}

ul.formati-disponibili-download li>span:hover {
    background: #fcb539
}

ul.formati-disponibili-download li>span a {
    display: block;
    width: 100%;
    align-self: center;
    height: 2.25rem;
    padding: .75rem 1rem;
}

.cover-music-download img {
    width: 100%;
    height: auto;
}

.data-music-download {
    display: block;
    width: calc(100% - 21rem);
}

.data-music-download header h3 {
    margin: 0;
}

.data-music-download header .elenco-autori {
    margin-bottom: .5rem;
}

.data-music-download header .meta-download {
    color: #888888;
}

.cover-music-download-lp {
    display: block;
    width: 100%;
    height: 0;
    padding-top: 100%;
    position: relative;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
}

.cover-music-download img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    object-fit: cover;
}

.lp-hole {
    display: block;
    width: 20%;
    height: 20%;
    background: #0d0d0d;
    position: absolute;
    z-index: 10;
    transform-origin: center;
    left: 40%;
    top: 40%;
    border-radius: 50%;
    border: .5rem solid rgba(255, 255, 255, 1);
}


@-webkit-keyframes rotating

/* Safari and Chrome */
    {
    from {
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes rotating {
    from {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    to {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.rotating {
    -webkit-animation: rotating 5s linear infinite;
    -moz-animation: rotating 5s linear infinite;
    -ms-animation: rotating 5s linear infinite;
    -o-animation: rotating 5s linear infinite;
    animation: rotating 5s linear infinite;
}

button.button-start-download {
    padding: 0.5rem 1rem;
    border-radius: .5rem;
    border: 2px solid #0d0d0d;
    height: 2.25rem;
    background: #5e91cc;
    color: #fff;
    transition: all .25s cubic-bezier(0.4, 0, 0.2, 1);
    font-size: .75rem;
    text-transform: uppercase;
    line-height: 1;
    cursor: pointer;
}

button.button-start-download:hover {
    background: #fcb539;
}

.footer-player {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    background: rgba(0, 0, 0, .5);
    border-top: 1px solid #333;
    z-index: 990;
    width: calc(100% - 2rem);
    padding: 1rem;
    max-width: 30rem;
    border-left: 1px solid #333;
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
    border-radius: .5rem;
    backdrop-filter: blur(2px) grayscale(.5);
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateX(0);
}

.button-toggle-footer-player {
    display: block;
    width: 3rem;
    height: 3rem;
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    z-index: 990;
    background: #5e91cc;
    color: #fff;
    border-radius: 50%;
    border: 2px solid #fff;
    cursor: pointer;
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateX(0);
}

.button-toggle-footer-player:hover {
    background: #fcb539;
}

.button-toggle-footer-player.hide-footer-player {
    transform: translateX(4rem);
}

.footer-player.hide-footer-player {
    transform: translateX(35rem);
}

.music-row-container {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
}

header.playlist-player-header {
    display: flex;
    width: 100%;
    flex-flow: row wrap;
    padding-bottom: 1rem;
    margin-bottom: 0;
    border-bottom: 1px solid #222;
}

button.play-audio-playlist {
    display: block;
    width: 3rem;
    height: 3rem;
    align-self: center;
    background: transparent;
    border: 3px solid #fcb539;
    border-radius: 50%;
    color: #fcb539;
    text-align: center;
    line-height: 1;
    margin-right: 1rem;
    align-self: center;
    cursor: pointer;
}

button.play-audio-playlist span.play-button-icon {
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 8px 0 8px 13.9px;
    border-color: transparent transparent transparent #fcb539;
    transform: rotate(0deg);
    display: block;
    margin: 0 auto 0 .625rem;
}

button.play-audio-playlist span.pause-button-icon {
    display: block;
    width: 16px;
    height: 16px;
    border-left: 4px solid #fcb539;
    border-right: 4px solid #fcb539;
    margin: 0 auto;
}

button.play-audio-playlist.status-pause .pause-button-icon {
    display: none !important;
}

button.play-audio-playlist:not(.status-pause) .play-button-icon {
    display: none !important;
}

.footer-player .picture-container {
    width: 3.5rem;
    margin-right: .5rem;
    align-self: center;
}

.footer-player .picture-container img {
    border-radius: 3px;
    overflow: hidden;
    display: block;
    margin: 0;
}

.footer-player .title-container {
    width: calc(100% - 4rem);
    align-self: center;
    line-height: 1;
}

.footer-player .title-container h6 {
    margin: 0 0 .25rem 0;
}

.footer-player .player-container {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    align-self: center;
    padding-top: 1rem;
    margin-bottom: 1rem;
}

.footer-player .length-bpm-container.small-text.condensed.weight-normal {
    color: #888;
    margin-top: .5rem;
    font-size: .75rem;
    position: relative;
    width: 100%;
}

.footer-player .music-player-container {
    display: block;
    width: calc(100% - 4rem);
}

.button-options-container {
    display: block;
    width: 100%;
    background: transparent;
    padding: 1rem 0 0 0;
    border-top: 1px solid #222;
}

.button-options-container button.pulsante-opzioni-playlist {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    padding: .5rem;
    border: 0;
    margin: 0 auto;
    background: transparent;
    justify-content: center;
    cursor: pointer;
}

.button-options-container button.pulsante-opzioni-playlist>span {
    display: block;
    width: .25rem;
    height: .25rem;
    background: #888;
    border-radius: 50%;
    overflow: hidden;
}

.button-options-container button.pulsante-opzioni-playlist>span:not(:last-child) {
    margin-right: .25rem;
}

.row-playlist-list {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    justify-content: space-between;
}

.row-playlist-list:not(:last-child) {
    margin-bottom: .25rem;
}

img.mini-picture {
    display: block;
    width: 2rem;
    height: auto;
    align-self: center;
    margin-right: .5rem;
}

.playlist-list-container {
    width: 100%;
    max-height: 40vh;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #eb025a transparent;
    display: none;
}

.row-playlist-list h6.condensed.weight-normal.small-text {
    margin: 0;
    align-self: center;
    display: block;
    width: calc(100% - 12rem);
}

.row-playlist-list .length-bpm-container.small-text.condensed.weight-normal {
    display: block;
    margin-top: 0;
    line-height: 1.2;
    width: 3.5rem;
    align-self: center;
}

.row-playlist-list .mini-button-container {
    display: flex;
    flex-flow: row wrap;
    width: 6rem;
    justify-content: space-around;
    align-self: center;
}

.row-playlist-list button.minibutton-options {
    font-size: .625rem;
    width: 1.5rem;
    height: 1.5rem;
    color: #fff;
    background: #5e91cc;
    border: 0;
    display: block;
    align-self: center;
    cursor: pointer;
    border-radius: 3px;
    overflow: hidden;
}

.row-playlist-list button.minibutton-options:hover {
    background: #fcb539;
}

.active-playlist-item {
    background: #222;
}

button.button-close-footer-player {
    position: absolute;
    right: 0;
    top: 0;
    background: transparent;
    color: #888;
    border: 0;
    padding: .5rem;
    cursor: pointer;
}

header#header_inactive.playlist-player-header {
    width: 100%;
    text-align: center;
}

header#header_inactive.playlist-player-header h3 {
    display: block;
    width: 100%;
    margin: 0 0 0 0;
    text-transform: uppercase;
    font-size: .875rem;
    color: #fff;
}

header#header_inactive.playlist-player-header p {
    display: block;
    width: 100%;
    margin: 0 0 0 0;
    font-size: .75rem;
    text-transform: uppercase;
    color: #888888;
}

.overlay-window {
    display: flex;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2rem;
    z-index: 9999;
    background: rgba(0, 0, 0, .5);
    backdrop-filter: blur(2px) grayscale(1);
    flex-flow: row wrap;
}

.nomarginvert {
    margin-top: 0;
    margin-bottom: 0;
    line-height: 1;
}

.download-content {
    display: block;
    width: 100%;
    max-width: 40rem;
    margin: 0 auto;
    padding: 1rem;
    align-self: center;
    min-height: 16rem;
    max-height: calc(100vh - 4rem);
    overflow-y: auto;
    border-radius: 3px;
    background: #2b2b2b;
    border-top: 1px solid #3b3b3b;
    border-bottom: 1px solid #1b1b1b;
    border-left: 1px solid #3b3b3b;
    border-right: 1px solid #1b1b1b;
    box-shadow: 4px 4px 16px rgba(0, 0, 0, .75);
    position: relative;
    z-index: 10;
    scrollbar-width: thin;
    scrollbar-color: #fcb539 #00000000;
}

button#overlay_content_button_close {
    background: transparent;
    color: #888;
    position: absolute;
    top: 1rem;
    right: 1rem;
    line-height: 1;
    width: 1.5rem;
    height: 1.5rem;
    font-size: .75rem;
    cursor: pointer;
    border-top: 1px solid #3b3b3b;
    border-bottom: 1px solid #1b1b1b;
    border-left: 1px solid #3b3b3b;
    border-right: 1px solid #1b1b1b;
    z-index: 10;
}

button#overlay_content_button_close:hover {
    border-top: 1px solid #1b1b1b;
    border-bottom: 1px solid #3b3b3b;
    border-left: 1px solid #1b1b1b;
    border-right: 1px solid #3b3b3b;
    background: #fcb539;
    color: #fff;
}

.loading-data {
    background-image: url('../svg/rolling-64px.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 2rem;
}

.loading-data::before {
    content: 'loading';
    font-size: .75rem;
    display: block;
    width: 100%;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    line-height: 1;
    top: 50%;
    padding-top: 1.5rem;
    color: #808080;
    animation: blinker 1s linear infinite;
}

.loading-error {
    background-image: url('../svg/exclamation.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 2rem;
}


.loading-error::before {
    content: 'errore!';
    font-size: .75rem;
    display: block;
    width: 100%;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    line-height: 1;
    top: 50%;
    padding-top: 1.5rem;
    color: #808080;
}

.overlay-button {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    cursor: pointer;
}

#download_content_data .fullwidth-download-options header.header-download-options {
    width: calc(100% - 2.5rem);
    background: #0d0d0d22;
    padding: .75rem;
    border-radius: 3px;
    border-top: 1px solid #1b1b1b;
    border-bottom: 1px solid #3b3b3b;
    border-left: 1px solid #1b1b1b;
    border-right: 1px solid #3b3b3b;
    display: flex;
    flex-flow: row wrap;
}

header.header-download-options div.picture-container {
    display: block;
    width: 4rem;
    align-self: flex-start;
    border-radius: 3px;
    overflow: hidden;
}

header.header-download-options div.picture-container img {
    display: block;
    margin: 0;
}

header.header-download-options .header-download-options-content {
    display: block;
    width: calc(100% - 4rem);
    align-self: flex-start;
    padding-left: .5rem;
}

.fullwidth-download-options ul.formati-disponibili-download {
    max-width: 100%;
    padding: .75rem;
    border-radius: 3px;
    border-top: 1px solid #1b1b1b;
    border-bottom: 1px solid #3b3b3b;
    border-left: 1px solid #1b1b1b;
    border-right: 1px solid #3b3b3b;
    background: #0d0d0d22;
}

.fullwidth-download-options ul.formati-disponibili-download li {
    border: 1px solid #2b2b2b;
}

.fullwidth-download-options ul.formati-disponibili-download li button.button-start-download {
    border: 2px solid #2b2b2b;
}

button.normal-button-options.download-single-options {
    background: #5e91cc;
    color: #fff;
    font-size: .75rem;
    font-family: 'Roboto';
    text-transform: uppercase;
    border: 0;
    border-radius: 3px;
    padding: 0;
    cursor: pointer;
    position: absolute;
    right: -.5rem;
    bottom: 0;
    transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
    width: 6rem;
    height: 2rem;
    line-height: 1;
}

button.normal-button-options.download-single-options:hover {
    background: #fcb539;
}


.errore-download-file {
    display: flex;
    width: calc(100% - 6rem);
    height: calc(100% - 6rem);
    position: absolute;
    top: 3rem;
    left: 3rem;
    right: 3rem;
    bottom: 3rem;
    flex-flow: row wrap;
}

button.minibutton-error.download-options {
    align-self: center;
    margin: 3rem auto 0 auto;
    position: relative;
    border: 0;
    border-radius: 3px;
    padding: 0 1rem;
    background: #ee015b;
    width: 8rem;
    color: #fff;
    text-transform: uppercase;
    height: 2rem;
    line-height: 1;
    cursor: pointer;
}

button.minibutton-error.download-options::before {
    content: '';
    display: block;
    width: 2rem;
    height: 2rem;
    background-image: url('../svg/exclamation.svg');
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 2rem;
    position: absolute;
    left: calc(50% - 1rem);
    top: -4rem;
}

button.minibutton-error.download-options::after {
    content: 'errore';
    width: 8rem;
    text-align: center;
    height: 2rem;
    font-size: .75rem;
    display: block;
    color: #8a8a8a;
    position: absolute;
    left: 0;
    right: 0;
    top: -1.5rem;
}

.note-errore-download {
    display: block;
    width: 100%;
    text-align: center;
    color: #8a8a8a;
    font-size: .875rem;
}

h4.titolo-other-versions {
    display: block;
    margin-top: 1.5rem;
    margin-bottom: 0;
    padding-left: .75rem;
}

ul.ul-other-versions {
    margin-top: 0;
}

@keyframes blinker {
    50% {
        opacity: 0;
    }
}

.hidden-item {
    display: none !important;
}

.no-scroll {
    overflow-y: hidden !important;
}

ul.formati-disponibili-download li.titolo-other-format {
    display: block !important;
    width: 100% !important;
    background: transparent !important;
    padding: .75rem !important;
}

ul.formati-disponibili-download li.titolo-other-format h5 {
    font-size: 1rem;
    text-transform: uppercase;
}

ul.formati-disponibili-download li.titolo-other-format h5 span {
    font-size: .875rem;
    text-transform: lowercase;
    color: #8a8a8a;
}

ul.formati-disponibili-download li.titolo-other-format:not(:first-child) {
    margin-top: 1rem;
}

.download-ready-content {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    padding: 3rem;
    z-index: 1;
}

.download-ready-content-data {
    display: block;
    width: 100%;
    align-self: center;
    text-align: center;
}

a.link-download {
    display: block;
    width: 100%;
    max-width: 10rem;
    background: #fcb539;
    color: #fff;
    margin: 1rem auto 2rem auto;
    line-height: 1;
    padding: .75rem 1rem;
    border-radius: .5rem;
}

button.minibutton-download-ready.download-options {
    padding: .5rem 1rem;
    width: 8rem;
    border-radius: 3px;
    border: 0;
    line-height: 1;
    color: #fff;
    background: #0d0d0d;
    cursor: pointer;
}

button.minibutton-download-ready.download-options:hover {
    background: #5e91cc;
}

.colore-bianco {
    color: #fcfcfc;
}

.data-music-download.row-music-download {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

.data-music-download.row-music-download>header {
    width: 100%;
    display: block;
    margin-bottom: 1rem;
    border-bottom: 1px solid #222222;
    padding-bottom: 1rem;
}

.data-music-download.row-music-download>.col-sx-data-download {
    display: block;
    width: calc(50% - 1rem);
}

.data-music-download.row-music-download>.col-dx-data-download {
    display: block;
    width: calc(50% - 1rem);
}

.data-music-download.row-music-download>.col-sx-data-download h4.titolo-other-versions,
.data-music-download.row-music-download>.col-dx-data-download h4.titolo-other-versions {
    margin-top: 0;
    padding-left: 0;
    color: #888888;
}

.current-playing {
    -webkit-animation: playing 5s linear infinite;
    -moz-animation: playing 5s linear infinite;
    -ms-animation: playing 5s linear infinite;
    -o-animation: playing 5s linear infinite;
    animation: playing 5s linear infinite;
}

@-webkit-keyframes playing

/* Safari and Chrome */
    {
    0% {
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        background: #5e91cc;
    }

    50% {
        -webkit-transform: rotate(180deg);
        -o-transform: rotate(180deg);
        transform: rotate(180deg);
        background: #fcb539;
    }

    100% {
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
        background: #5e91cc;
    }
}

@keyframes playing {
    0% {
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        background: #5e91cc;
    }

    50% {
        -webkit-transform: rotate(180deg);
        -o-transform: rotate(180deg);
        transform: rotate(180deg);
        background: #fcb539;
    }

    100% {
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
        background: #5e91cc;
    }
}


header.krotonjazzfestival-tax-header .taxonomy-title {
    margin-top: 2rem !important;
    line-height: 1;
    margin-bottom: 2rem !important;
    font-size: 3rem;
}

.row-single-product {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    justify-content: space-between;
    padding-top: 2rem;
}

.img-single-music {
    width: 30%;
    align-self: flex-start;
    background: #000;
    padding: 1rem;
    border-radius: 3px;
    overflow: hidden;
}

.container-data-single-product {
    width: calc(70% - 3px);
    align-self: flex-start;
    background: #000;
    padding: 1rem;
    border-radius: 3px;
    overflow: hidden;
}



.player-audio-brano.single-player-audio-brano {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    background: #000000;
    padding: 1rem 0 1rem 0;
    border-bottom: 1px solid #1b1b1b;
    border-top: 1px solid #1b1b1b;
}

.img-single-music>figure {
    margin: 0 0 0 0;
    border-radius: 3px;
    overflow: hidden;
}

.img-single-music>figure>img {
    display: block;
}

.container-data-single-product .fullwidth-download-options ul.formati-disponibili-download {
    max-width: 100%;
    padding: 0;
    border-radius: 3px;
    border-bottom: 1px solid #1b1b1b;
    border-left: 0;
    border-right: 0;
    border-top: 0;
}

.container-data-single-product .fullwidth-download-options ul.formati-disponibili-download li {
    border: 1px solid #000;
}

.container-data-single-product .fullwidth-download-options ul.formati-disponibili-download li button.button-start-download {
    border: 2px solid #000;
}

.elenchi-taxonomie {
    display: flex;
    width: calc(100% + .5rem);
    margin-left: -.25rem;
    flex-flow: row wrap;
    margin-bottom: 1rem;
}

.elenco-taxonomie {
    display: flex;
    flex-flow: row wrap;
    padding: .25rem;
}

h5.h5.titolo-elenco-tassonomie {
    margin-top: 0;
    color: #888888;
    display: block;
    width: 100%;
    padding: .125rem;
    border-bottom: 1px solid #1c1c1c;
    margin-bottom: .5rem;
}

a.link-elenco-tassonomie {
    font-size: 12px;
    padding: .5rem .75rem;
    border-radius: 4px;
    line-height: 1;
    cursor: pointer;
    margin-bottom: 0.25rem;
    margin-right: .25rem;
    transition: all .25s cubic-bezier(0.4, 0, 0.2, 1);
    display: block;
    background: #5e91cc;
}

a.link-elenco-tassonomie:hover {
    background: #fcb539;
}

.woocommerce div.product .product_title {
    margin-bottom: 0.25rem;
}

.single-product-durata-bpm {
    display: block;
    width: 100%;
    margin: .5rem 0 0.5rem 0;
    border-bottom: 1px solid #1c1c1c;
    padding-bottom: .25rem;
    font-size: .875rem;
    color: #888;
}

.pt2 {
    padding-top: 2rem;
}

.pb2 {
    padding-bottom: 2rem;
}

.pt4 {
    padding-top: 4rem;
}

.pb4 {
    padding-bottom: 4rem;
}

@media all and (max-width:767.5px) {
    .img-single-music {
        width: 100%;
        margin-bottom: 3px;
    }

    .container-data-single-product {
        width: 100%;
    }

    .main-content-fullwidth {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

@media all and (max-width:511.5px) {
    .main-content-fullwidth {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .pt4 {
        padding-top: 2rem;
    }

    .pb4 {
        padding-bottom: 2rem;
    }

    .pt2 {
        padding-top: 1rem;
    }

    .pb2 {
        padding-bottom: 1rem;
    }
}

.single-related-products {
    display: block;
    width: 100%;
    margin-top: 2rem;
    margin-bottom: 4rem;
}

.title-single-related-products {
    margin-top: 0;
    margin-bottom: 1rem;
}

.result-pagination {
    display: block;
    width: 100%;
    margin-top: 2rem;
}

.result-pagination form#form_tax_search {
    display: block;
    width: 100%;
    text-align: center;
}

.result-pagination .pulsante-paginazione {
    display: inline-block;
    text-align: center;
    line-height: 1;
    background: #5e91cc;
    color: #fff;
    padding: .5625rem 0 0 0;
    height: 2rem;
    width: 2rem;
    font-size: .875rem;
    cursor: pointer;
}

.result-pagination form#form_tax_search .pulsante-paginazione:hover {
    background: #fcb539;
}

.result-pagination .pulsante-paginazione.disable-pagination-number {
    background: #888 !important;
    cursor: initial;
    pointer-events: none;
}

footer#footer_container {
    display: block;
    width: 100%;
    margin-top: 0;
    background: #000;
    padding-top: 4rem;
    padding-bottom: 1rem;
    border-top: 1px solid #3a567a;
}

footer#footer_container .credits>.grid-x {
    justify-content: space-between;
}

footer#footer_container .credits>.grid-x .colonna-padding-sx {
    text-align: left;
    font-size: .75rem;
    color: #888;
}

footer#footer_container .credits>.grid-x .colonna-padding-dx {
    text-align: right;
    font-size: .75rem;
    color: #888;
}

/* Account CSS */
body.woocommerce-account main.main-content-fullwidth>div.woocommerce {
    padding-left: 3rem;
}

body.woocommerce-account main.main-content-fullwidth>div.woocommerce .woocommerce-MyAccount-navigation {
    float: none;
    width: 2rem;
    position: fixed;
    left: 1.5rem;
    box-shadow: 4px 4px 16px rgba(0, 0, 0, .75);
}

body.woocommerce-account main.main-content-fullwidth>div.woocommerce .woocommerce-MyAccount-content {
    float: none;
    width: 100%;
}

.woocommerce-MyAccount-navigation ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

a.link-nav-dahsboard-utente {
    display: flex;
    width: 2rem;
    text-align: center;
    height: 2rem;
    flex-flow: row wrap;
    line-height: 1;
    background: #2b2b2b;
    border-top: 1px solid #3b3b3b;
    border-bottom: 1px solid #1b1b1b;
    border-left: 1px solid #3b3b3b;
    border-right: 1px solid #1b1b1b;
}

a.link-nav-dahsboard-utente>i {
    display: block;
    align-self: center;
    margin: 0 auto;
    color: #888;
}

li.is-active a.link-nav-dahsboard-utente i {
    color: #fff;
}


.riga-download-utente {
    display: flex;
    flex-flow: row wrap;
    width: calc(100% + 1rem);
    justify-content: flex-start;
    margin-left: -.5rem;
}

.miniatura-brano-download {
    display: block;
    width: 100%;
    margin: 0;
    position: relative;
    z-index: 1;
}

.responsive-image,
.responsive-image img {
    width: 100%;
    height: auto;
    display: block;
}

.miniatura-brano-download img.responsive-image {
    display: block;
    width: 100%;
    height: auto;
}

.container-dati-img-file-download {
    position: relative;
    border: 1px solid #1c1c1c;
    border-radius: .25rem;
    overflow: hidden;
}

.dati-brano-download {
    display: block;
    width: 100%;
    padding: .75rem;
    background: #1c1c1c;
}

.dati-brano-download>.row {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    margin: .5rem 0 0 0;
}

.dati-brano-download>.row>* {
    align-self: center;
}

.container-item-download-utente {
    width: calc(25% - 1rem);
    margin: .5rem;
}

.player-audio-brano-download {
    display: flex;
    flex-flow: row wrap;
}

.player-audio-brano-download:not(:last-child) {
    padding-bottom: 1rem;
    border-bottom: 1px solid #1c1c1c;
}

.player-audio-brano-download:not(:first-child) {
    border-top: 1px solid #3b3b3b;
    padding-top: 1rem;
}

.player-audio-brano-download button.play-audio {
    width: 2rem;
    height: 2rem;
    border: 2px solid #888888;
    margin-right: .5rem;
}

.player-audio-brano-download button.play-audio span.play-button-icon {
    border-width: 6px 0 6px 8px;
    margin: 0 auto 0 .4rem;
}

.player-audio-brano-download button.play-audio span.pause-button-icon {
    width: 8px;
    height: 8px;
    border-left: 2px solid #888;
    border-right: 2px solid #888;
}

.dati-files-audio-wave {
    display: block;
    width: 100%;
    margin-bottom: .5rem;
    line-height: 1;
}

.meta-file-download {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

.meta-file-download>div:not(.small-text) span {
    display: inline-block;
    font-size: .75rem;
    text-transform: uppercase;
    background: #888;
    line-height: 1;
    padding: .25rem;
    border-radius: .25rem;
    color: #222;
}

.meta-title-download {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

.meta-file-download>div,
.meta-title-download>div {
    align-self: center;
}

.meta-title-download>div.colore-bianco {
    text-transform: uppercase;
}

.audio-player-waveform.audio-player-waveform-small {
    width: calc(100% - 7rem);
}

.opt-meta-file-download {
    display: block;
    width: 4rem;
    margin-left: .5rem;
}

.opt-meta-file-download>div {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    justify-content: space-between;
}

.opt-meta-file-download>div>span {
    display: block;
    line-height: 1;
    padding: .25rem;
    border-radius: .25rem;
    background: #888;
    font-size: .625rem;
    color: #0d0d0d;
    text-transform: uppercase;
    min-width: 1.5rem;
    text-align: center;
    font-weight: bold;
}

a.link-redownload {
    display: block;
    font-size: .875rem;
    width: 100%;
    background: #fcb539;
    color: #fff !important;
    text-align: center;
    border-radius: .25rem;
    margin-top: .5rem;
}

.opzioni-file-scaricati {
    display: none;
    width: 100%;
    padding: 1rem;
    border: 1px solid #3b3b3b;
    margin-bottom: 1rem;
    border-radius: 3px;
}

.meta-file-download>div:not(.small-text) span:not(:last-child) {
    margin-right: .5rem;
}

.button-download-container {
    display: block;
    width: 100%;
    text-align: right;
    height: auto;
    padding-right: .5rem;
}

.button-switch-info-file {
    border: 0;
    background: #5e91cc;
    color: #fff;
    font-size: .75rem;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    cursor: pointer;
    padding: .5rem .5rem;
    text-transform: uppercase;
    height: auto;
    line-height: 1;
    margin: 0;
}

.button-switch-info-file:hover {
    background: #fcb539;
}

.button-switch-info-file:not(.button-on) span.close-on {
    display: none;
}

.button-switch-info-file.button-on span.file-on {
    display: none;
}

.main-info-download-utente {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    margin-bottom: 1rem;
    border-bottom: 1px solid #3b3b3b;
    padding-bottom: .5rem;
}

.main-info-download-utente>* {
    align-self: center;
}

button.button-expand-shrink {
    border: 0;
    padding: .25rem .5rem;
    font-size: .875rem;
    color: #fff;
    background: #2b2b2b;
    border-radius: 3px;
    cursor: pointer;
}

.main-info-download-utente>div:not(.box-ricerca-endpoint) {
    display: flex;
    flex-flow: row wrap;
}

.main-info-download-utente>div:not(.box-ricerca-endpoint)>* {
    display: block;
    margin-left: 1rem;
    align-self: center;
}

#searchform_endpoint input#chiave_ricerca.input-searchform {
    background: #2b2b2b;


    border-top: 1px solid #1b1b1b;
    border-bottom: 1px solid #3b3b3b;
    border-left: 1px solid #1b1b1b;
    border-right: 1px solid #3b3b3b;
}

#searchform_endpoint input#searchsubmit_endpoint.submit-searchform {

    background: #272727;
    border-top: 1px solid #1b1b1b;
    border-bottom: 1px solid #3b3b3b;
    border-left: 1px solid #1b1b1b;
    border-right: 1px solid #3b3b3b;
}

button.button-expand-shrink:hover {
    background: #fcb539;
}

.pagination-search {
    text-align: center;
}

button.pulsante-riga-brano.brano-presente {
    color: #ee015b;
}

@media all and (max-width:1299.5px) {
    .container-item-download-utente {
        width: calc(33.333% - 1rem);
        margin: .5rem;
    }
}

@media all and (max-width:991.5px) {
    body.woocommerce-account main.main-content-fullwidth>div.woocommerce .woocommerce-MyAccount-navigation {
        left: 3px;
    }

    body.woocommerce-account main.main-content-fullwidth>div.woocommerce {
        padding-left: 1.5rem;
    }

    .container-item-download-utente {
        width: calc(50% - 1rem);
        margin: .5rem;
    }
}

@media all and (max-width:991.5px) {
    .container-item-download-utente {
        width: calc(100% - 1rem);
        margin: .5rem;
    }
}

ul.tabs-favoriti {
    list-style-type: none;
    margin: 0 0 3px 0;
    padding: 0 0 0 1rem;
    display: flex;
    flex-flow: row wrap;
    width: 100%;
}

a.button-opt-favoriti {
    background: #2b2b2b;
    border-top: 1px solid #3b3b3b;
    border-bottom: 0;
    border-left: 1px solid #3b3b3b;
    border-right: 1px solid #1b1b1b;
    border-top: 1px solid #3b3b3b;
    border-bottom: 1px solid #1b1b1b;
    color: #888;
    border-radius: 3px;
    padding: .5rem 1rem;
    cursor: pointer;
    margin-right: 3px;
    color: #fff !important;
    display: block;
}

span.button-opt-favoriti.active {
    background: #500c22;
    color: #fff;
    border-top: 1px solid #6d0d2c;
    border-left: 1px solid #6d0d2c;
    border-right: 1px solid #46071c;
    border-bottom: 1px solid #46071c;
    padding: .5rem 1rem;
    margin-right: 3px;
    border-radius: 3px;
    display: block;
}

.main-data-favoriti {
    display: block;
    width: 100%;
    padding: 1rem;
    border-radius: 3px;
    background: linear-gradient(to bottom, rgba(238, 2, 91, 0.25) 5%, rgba(238, 2, 91, .5) 100%);
}

.main-data-favoriti.loading-section,
.content-playlist-data.loading-section {
    position: relative;
    overflow: hidden;
    min-height: 10rem;
}

.main-data-favoriti.loading-section::before,
.content-playlist-data.loading-section::before {
    content: '';
    display: block;
    position: absolute;
    z-index: 100;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .5);
    background-image: url('../svg/rolling-64px.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 2rem;
    backdrop-filter: grayscale(1) blur(1px);
}


figure.img-mic-off {
    display: block;
    width: 100%;
    max-width: 10rem;
    margin: 2rem auto;
}

.riga-favorito {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    font-size: .875rem;
}



.riga-favorito:not(:last-child) {
    margin-bottom: 3px;
}

.riga-favorito.header-favoriti {
    color: #ffffff;
    margin-bottom: 1rem;
    padding-bottom: .5rem;
    border-bottom: 1px solid #ffffff33;
    font-weight: bold;
}

.riga-favorito:not(.header-favoriti) {
    padding: 3px;
    background: rgba(0, 0, 0, .25);
    border-radius: 3px;
    position: relative;
    z-index: 1;
}

.riga-favorito>* {
    align-self: center;
}

figure.img-favorito {
    display: block;
    width: 3rem;
    border-radius: 3px;
    overflow: hidden;
    margin: 0;
}

figure.img-favorito img {
    display: block;
    margin: 0;
}



.titolo-favorito {
    display: block;
    width: calc(50% - 10.5rem);
    padding: 0 .5rem;
}

.header-favoriti .titolo-favorito {
    width: calc(50% - 7.5rem);
}

.genre-favorito {
    display: block;
    width: calc(50% - 10.5rem);
    padding: 0 1rem;
}

.durata-favorito {
    display: block;
    width: 4rem;
    text-align: center;
    color: #fff;
}

.data-favorito {
    display: block;
    width: 8rem;
    text-align: center;
    color: #fff;
}

.opzioni-favorito {
    display: flex;
    flex-flow: row wrap;
    width: 6rem;
    justify-content: space-between;
    text-align: center;
    height: 1.5rem;
    transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
}

.riga-favorito .titolo-favorito a span.colore-link {
    color: #ffffff !important;
}

.riga-favorito .genre-favorito a span.colore-link {
    color: #fff !important;
}

.opzioni-favorito button.pulsante-riga-brano {
    color: #fff;
    width: 1.5rem;
    height: 1.5rem;
    line-height: 1;
    font-size: .875rem;
}

.menu-playlist {
    display: none;
    position: absolute;
    background: #2b2b2b;
    padding: 0;
    right: .5rem;
    font-size: .75rem;
    top: 2.5rem;
    border-radius: 3px;
    overflow: hidden;
    filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, .5));
}

.menu-playlist>strong,
.menu-playlist>div {
    display: block;
    padding: .5rem;
    color: #888;
    font-weight: normal;
}

.menu-playlist ul.list-menu-playlist {
    display: block;
    width: 100%;
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.riga-favorito.open-menu-playlist {
    position: relative;
    z-index: 5 !important;
}

.riga-favorito.open-menu-playlist .menu-playlist {
    display: block;
}

.menu-playlist ul.list-menu-playlist li {
    display: block;
    width: 100%;
}

.menu-playlist ul.list-menu-playlist li {
    border-top: 1px solid #3b3b3b;
}

.menu-playlist ul.list-menu-playlist li:not(:last-child) {
    border-bottom: 1px solid #1b1b1b;
}

button.add-to-playlist {
    display: block;
    width: 100%;
    background: transparent;
    border: 0;
    color: #fff;
    padding: .5rem;
    cursor: pointer;
    color: #fff;
    line-height: 1;
}

button.add-to-playlist:hover {
    background: #888;
}

.player-audio-brano.player-audio-favoriti {
    display: none;
    width: calc(100% - 10rem);
    height: 100%;
    position: absolute;
    z-index: 10;
    opacity: .5;
    top: 0;
    bottom: 0;
    left: 3.5rem;
    right: 6.5rem;
}

.player-audio-brano.player-audio-favoriti .audio-player-waveform {
    width: 100%;
}

.riga-favorito.active-player {
    justify-content: space-between;
    border: 1px solid #ee015b;
}

.riga-favorito.active-player .titolo-favorito,
.riga-favorito.active-player .genre-favorito,
.riga-favorito.active-player .durata-favorito,
.riga-favorito.active-player .data-favorito {
    pointer-events: none;
    mix-blend-mode: lighten;
    position: relative;
    z-index: 20;
}

.riga-favorito.active-player .player-audio-brano.player-audio-favoriti {
    display: block;
}

.riga-favorito:not(.active-player) .opzioni-favorito i.fa-stop {
    display: none;
}

.riga-favorito.active-player .opzioni-favorito i.fa-play {
    display: none;
}

.nome-playlist {
    background: #360b63;
    border-top: 1px solid #1b1b1b99;
    border-bottom: 1px solid #3b3b3b99;
    border-left: 1px solid #1b1b1b99;
    border-right: 1px solid #3b3b3b99;
    padding: .5rem 1rem;
    border-radius: 1rem;
    color: #fff;
    min-width: 12rem;
    font-size: .875rem;
    height: 2.25rem;
    position: relative;
    z-index: 10;
}

button.pulsante-nuova-playlist {
    background: #272727;
    border-top: 1px solid #1b1b1b99;
    border-bottom: 1px solid #3b3b3b99;
    border-left: 1px solid #1b1b1b99;
    border-right: 1px solid #3b3b3b99;
    padding: .5rem 1rem .5rem 2.5rem;
    border-radius: 1rem;
    color: #fff;
    position: relative;
    font-size: .875rem;
    z-index: 1;
    margin-left: -2rem;
    cursor: pointer;
    height: 2.25rem;
}

button.pulsante-nuova-playlist:hover {
    background: #3b3b3b;
}

#main_data_favoriti.sezione-playlist {
    background: linear-gradient(to bottom, rgb(118 29 214 / 25%) 5%, rgb(118 29 214 / 50%) 100%);
}

body.sezione-playlist .button-opt-favoriti.active {
    background: #360b63;
    border-bottom: 1px solid #1b1b1b99;
    border-top: 1px solid #3b3b3b99;
    border-right: 1px solid #1b1b1b99;
    border-left: 1px solid #3b3b3b99;
}

.riga-playlist {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    justify-content: space-between;
    font-size: .875rem;
}

.riga-playlist>* {
    align-self: center;
    line-height: 1;
}

.riga-playlist:not(.header-playlist) {
    padding: .75rem;
    background: rgba(0, 0, 0, .25);
    border-radius: 3px;
    position: relative;
    z-index: 1;
    min-height: 3rem;
    overflow: hidden;
}

.riga-playlist:not(:last-child) {
    margin-bottom: 3px;
}

.riga-playlist.header-playlist {
    color: #ffffff;
    margin-bottom: 1rem;
    padding: .5rem .75rem;
    ;
    border-bottom: 1px solid #ffffff33;
    font-weight: bold;
    position: relative;
}

.riga-playlist.header-playlist i.fa-solid.fa-up-down {
    position: absolute;
    left: 1.35rem;
}

.riga-playlist:first-child {
    padding: 0;
    background: transparent;
    border-radius: 0;
    margin-bottom: 2rem;
}

.titolo-playlist {
    display: block;
    width: calc(100% - 16rem);
}

button.pulsante-drag-drop {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 3rem;
    background: #1c1c1c;
    border: 0;
    color: #888;
    cursor: pointer;
}

.numero-brani {
    display: block;
    width: 4rem;
    text-align: center;
}

.data-playlist {
    display: block;
    width: 6rem;
    text-align: center;
}

.opzioni-playlist {
    display: flex;
    flex-flow: row wrap;
    width: 6rem;
    text-align: center;
    justify-content: center;
}

button.pulsante-ajax-playlist-favoriti {
    background: transparent;
    color: #fff;
    border: 0;
    width: 1.5rem;
    height: 1.5rem;
    cursor: pointer;
}

.content-playlist-data {
    display: none;
    width: calc(100% - 1rem);
    padding: .75rem;
    background: rgba(0, 0, 0, .25);
    margin-left: 1rem;
    margin-bottom: 1rem;
    border-radius: 3px;
    margin-top: .5rem;
    color: #fff;
}

.riga-favorito.sortable .titolo-favorito {
    display: block;
    width: calc(50% - 5.5rem);
    padding: 0 .5rem;
}

.riga-favorito.sortable .genre-favorito {
    display: block;
    width: calc(50% - 8rem);
    padding: 0 1rem;
}

.riga-favorito.sortable {
    cursor: pointer;
}

.uppercase {
    text-transform: uppercase;
}

button.copia_link {
    background: #ee015b;
    color: #fff;
    border: 0;
    font-size: .875rem;
    padding: .5rem 1.5rem;
    border-radius: 3px;
    cursor: pointer;
}

.exclamation {
    display: block;
    width: 100%;
    align-self: center;
}

.exclamation i.fa-solid.fa-triangle-exclamation {
    font-size: 2rem;
    display: block;
    margin: 0 auto;
}

.riga-brano.riga-brano-share .audio-player-brano {
    width: -webkit-calc(100% - 29rem);
    width: -moz-calc(100% - 29rem);
    width: calc(100% - 29rem);
}

.user-dashboard-row {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    justify-content: space-between;
}


.user-dashboard-details {
    display: block;
    width: calc(50% - 1rem);
    padding: .5rem .5rem 0 .5rem;
    margin: 0;
    border-radius: 3px;
    background: #2b2b2b;
    border-top: 1px solid #3b3b3b;
    border-bottom: 1px solid #1b1b1b;
    border-left: 1px solid #3b3b3b;
    border-right: 1px solid #1b1b1b;
    position: relative;
}

ul.user-dashboard-details {
    list-style-type: none;
}

ul.user-dashboard-details li {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    font-size: .875rem;
    border-radius: 3px;
    overflow: hidden;
    margin: .5rem 0;
}

ul.user-dashboard-details li>* {
    align-self: center;
}

ul.user-dashboard-details li span:first-child {
    display: block;
    width: 5rem;
    background: #ee015b;
    padding: .5rem;
}

ul.user-dashboard-details li span:last-child {
    display: block;
    width: calc(100% - 5rem);
}

ul.user-dashboard-details li span:last-child {
    display: block;
    width: calc(100% - 5rem);
    background: rgba(0, 0, 0, .25);
    padding: .5rem;
}


.user-dashboard-details li.dasboard-section-title {
    position: absolute;
    left: 0.5rem;
    top: -1.5rem;
    background: #1c1c1c;
    display: inline-block;
    padding: .35rem .5rem 0 .5rem;
    width: initial;
    min-width: 4rem;
    line-height: 1;
    height: 1.5rem;
    font-size: .75rem;
    text-transform: uppercase;
    font-weight: bold;
    filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, .35));
}

/* Fallback: se Owl non si inizializza, mostra solo il primo item */
#main_slider_concerti:not(.owl-loaded) .item:not(:first-child) {
    display: none;
}

#main_slider_concerti {
    position: relative;
    z-index: 1;
}

.content-item-concerto {
    display: flex;
    width: 100%;
    height: calc(100vh - 5.5625rem);
    position: relative;
    flex-flow: row wrap;

}

.dati-item-concerto {
    position: relative;
    width: 100%;
    max-width: 50rem;
    align-self: center;
    z-index: 10;
    padding: 4rem;
}

.immagine-item-concerto,
.immagine-item-concerto figure {
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.immagine-item-concerto figure img {
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dati-item-concerto .h1 {
    margin: 0;
    text-transform: uppercase;
    line-height: 1;
}

.dati-item-concerto time,
.header-single-concerto time,
.data-line-up-past time {
    margin-bottom: 1.5rem;
    display: inline-block;
    line-height: 1;
    padding: 1rem;
    transform-origin: center;
    font-size: 1.25rem;
    position: relative;
    margin-left: -4rem;
    padding-left: 4rem;
}

.dati-item-concerto time::after,
.header-single-concerto time::after,
.data-line-up-past time::after {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 2rem;
    background: #5e91cc;
    transform-origin: center;
    transform: skewX(5deg);
    right: -1rem;
}

.dati-item-concerto time>span:not(.luogo-item-concerto),
.header-single-concerto time>span:not(.luogo-item-concerto) {
    display: inline-block;
}

.dati-item-concerto time>span.luogo-item-concerto,
.header-single-concerto time>span.luogo-item-concerto {
    display: block;
    font-size: 1rem;
    margin-top: .5rem;
}

.header-single-concerto time,
.data-line-up-past time {
    margin-left: -1rem;
    padding-left: 2rem;
}

a.link-item-concerto {
    display: inline-block;
    padding: .75rem 1.5rem;
    line-height: 1;
    margin-top: 2rem;
}

.link-item-concerto-edizioni-precedenti {
    display: inline-block;
    padding: .5rem 1rem;
    line-height: 1;
    margin-top: 2rem;
    font-size: .865rem;
    border: 1px solid #fab538;
}

a.link-item-concerto:link,
a.link-item-concerto:visited {
    border: 1px solid #5e91cc;
    background: #5e91cc66;
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    color: #fff;
    backdrop-filter: blur(1px);
}

.link-item-concerto-edizioni-precedenti:link,
.link-item-concerto-edizioni-precedenti:visited {
    border: 1px solid #5e91cc;
    background: #5e91cc66;
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    color: #fff;
    backdrop-filter: blur(1px);
}

a.link-item-concerto:hover {
    border: 1px solid #5e91cc;
    color: #ffffff;
    background: #5e91cc;
}

.link-item-concerto-edizioni-precedenti:hover {
    border: 1px solid #5e91cc;
    color: #ffffff;
    background: #5e91cc;
}

.link-item-concerto-edizioni-precedenti:hover a {
    color:#fff !important;
}

.hash-link-slider-concerti {
    display: block;
    position: absolute;
    z-index: 10;
    bottom: 2rem;
    left: 0;
    right: 0;
    width: 100%;
}

.hash-link-slider-concerti>.main-content-fullwidth {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

.hash-link-slider-concerti>.main-content-fullwidth>a {
    display: block;
    flex: 1;
    max-width: 8rem;
    margin: 0 .5rem;

}

.link-hash-slider-concerti {
    border: 2px solid #000000;
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
    transform: scale(1);
    box-shadow: 4px 4px 8px #00000000;
    filter: grayscale(1);
    background: #000;
}

.link-hash-slider-concerti.active-miniature {
    border: 2px solid #fab538;
    background: #fab538;
    transform: scale(1.1);
    box-shadow: 4px 4px 8px #000;
    filter: grayscale(0);
}

@media all and (max-width:1023.5px) {
    .hash-link-slider-concerti {
        display: none !important;
    }

    .dati-item-concerto {
        padding: 2rem;
        align-self: flex-end;
        margin-bottom: 4rem;
    }

    .dati-item-concerto time {
        margin-left: -2rem;
        padding-left: 2rem;
    }
}

@media all and (min-width:1024px) {
    #main_slider_concerti .owl-dots {
        display: none !important;
    }
}

section.main-info-home {
    position: relative;
    overflow: hidden;
}

section.main-info-home .data-sx-ext {
    position: absolute;
    top: -1px;
    bottom: -1px;
    width: 25%;
    height: calc(100% + 2px);
}

.main-info-home>.grid-x {
    justify-content: space-between;
    margin-left: 25%;
    width: 75%;
}

.data-dx,
.data-ct {
    width: 50%;
}

.data-sx img,
.data-dx img {
    display: block;
    width: 100%;
    height: auto;
}

.data-sx-ext img.desktop-only {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.data-ct h1 {
    text-transform: uppercase;
    margin: 0;
    display: block;
    width: 100%;
    max-width: 30rem;
}

@media all and (max-width:639.5px) {
    .data-ct h1 {
        max-width: 20rem;
    }
}

.data-ct {
    padding: 2rem 1rem;
    align-self: center;
    max-width: 50rem;
}

.data-dx {
    align-self: flex-end;
}

@media all and (max-width:1023.5px) {
    section.main-info-home .data-sx-ext {
        position: relative;
        width: 100%;
    }

    .data-dx,
    .data-ct {
        width: 100%;
    }

    .main-info-home>.grid-x {
        width: 100%;
        margin-left: 0;
    }

    .data-ct {
        margin: 0 auto;
    }
}

.line-up {
    display: block;
    width: 100%;
    margin-top: 0;
    padding-bottom: 4rem;
    background-color: #000;
    background-position: top right;
    background-size: 100%;
    background-repeat: no-repeat;
    background-image: url(../img/background-lineup-home.jpg);
}

header.header-line-up {
    display: block;
    width: 100%;
    margin: 0 auto;
    padding: 4rem 1rem;
    text-align: center;
    max-width: 50rem;
}

.separatore {
    display: block;
    width: 100%;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    margin: 1rem 0;
    height: auto;
    background-size: 3rem 3rem;
    z-index: 1;
}

.separatore::before,
.separatore::after {
    content: '';
    position: absolute;
    z-index: 1;
}

.separatore::before {
    left: 2rem;
    right: 2rem;
    width: calc(100% - 4rem);
    top: 50%;
}

.separatore::after {
    left: 3rem;
    right: 3rem;
    width: calc(100% - 6rem);
    top: calc(50% + 6px);
}

.separatore>span {
    display: block;
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    width: 100%;
    top: calc(50% - 6px);
}

.separatore.separatore-orange::before {
    border-top: 1px solid #fcb539;
}

.separatore.separatore-orange::after {
    border-top: 1px solid #fcb539;
}

.separatore.separatore-blu::before {
    border-top: 1px solid #5e91cc;
}

.separatore.separatore-blu::after {
    border-top: 1px solid #5e91cc;
}


.separatore>img {
    display: block;
    width: 3rem;
    height: auto;
    margin: 0 auto;
    position: relative;
    z-index: 5;
}

.separatore.separatore-blu .mic-orange {
    display: none !important
}

.separatore.separatore-orange .mic-blu {
    display: none !important
}

.separatore.separatore-blu span {
    border-top: 1px solid #5e91cc
}

.separatore.separatore-orange span {
    border-top: 1px solid #fcb539
}

.riga-line-up {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    justify-content: center;
}

.img-line-up {
    width: 50%;
    padding-right: 1rem;
    align-self: flex-start;
    position: relative;
    z-index: 1;
}

.dati-line-up {
    width: 50%;
    padding-left: 1rem;
    align-self: center;
    position: relative;
    z-index: 2;
}

.img-line-up .responsive-image {
    margin: 0;
    border: 1px solid #3a567a;
    box-shadow: 16px 16px 50px rgba(0, 0, 0, .75);
}

.overlay-effect {
    position: relative;
}

.overlay-effect>img {
    filter: grayscale(1);
    display: block;
    position: relative;
    z-index: 1;
}

.overlay-effect::before {
    content: '';
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    mix-blend-mode: overlay;
    opacity: .7;
    transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
}



.overlay-effect.overlay-blu::before {
    background: #5e91cc
}

.overlay-effect.overlay-orange::before {
    background: #fcb539
}

.img-line-up .responsive-image img {
    display: block;
}

ul.elenco-artisti {
    list-style-type: none;
    margin-left: 0;
    margin-bottom: 2rem;
    font-family: "Fjalla One", sans-serif;
    margin-top: 0;
}

ul.elenco-artisti li {
    display: block;
    width: 100%;
}

ul.elenco-artisti li:not(:last-child) {
    margin-bottom: .5rem;
}

ul.elenco-artisti li span:first-child {
    text-transform: uppercase;
    font-size: 1.25rem;
    display: inline-block;
    margin-right: .5rem;
}

ul.elenco-artisti li span:last-child {
    text-transform: lowercase;
    font-size: 1rem;
    display: inline-block;
}

.separatore-riga {
    background-position: left center;
    background-repeat: repeat-x;
    background-image: url('../img/background-separatore-riga.png');
    display: block;
    width: calc(100% + 8rem);
    height: 17px;
    margin-left: -8rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
    opacity: .5;
}

.riga-line-up:not(:last-child) {
    margin-bottom: 4rem;
}

@media all and (min-width:992px) {
    .riga-line-up:nth-child(odd) .img-line-up {
        order: 1;
    }

    .riga-line-up:nth-child(odd) .dati-line-up {
        order: 2;
    }

    .riga-line-up:nth-child(even) .img-line-up {
        order: 2;
        padding-left: 1rem;
        padding-right: 0;
    }

    .riga-line-up:nth-child(even) .dati-line-up {
        order: 1;
        padding-left: 0;
        padding-right: 1rem;
    }

    .riga-line-up:nth-child(even) .dati-line-up .separatore-riga {
        margin-left: auto;
        margin-right: -8rem;
    }
}

@media all and (max-width:991.5px) {
    .img-line-up {
        width: 100%;
        padding-right: 0;
        margin-bottom: 2rem;
    }

    .dati-line-up {
        width: 100%;
        padding-left: 1.5rem;
        position: relative;
    }

    ul.elenco-artisti {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
        padding-left: 1rem;
    }

    ul.elenco-artisti li span:first-child {
        text-transform: uppercase;
        font-size: 1rem;
        display: inline-block;
        margin-right: .25rem;
    }

    .content-item-concerto {
        height: calc(100vh - 3.75rem);
    }

    .dati-item-concerto {
        margin-bottom: 5rem;
    }

    .dati-item-concerto time,
    .header-single-concerto time {
        font-size: .875rem;
        padding: .5rem .5rem .5rem 2rem;
    }

    .dati-item-concerto time>span.luogo-item-concerto,
    .header-single-concerto time>span.luogo-item-concerto {
        font-size: .75rem;
    }

    .dati-line-up>h3.h2>span {
        display: block;
    }

    a.link-item-concerto {
        margin-top: 1rem;
    }

    body,
    p {
        font-size: .875rem;
    }
}

.background-main-menu {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: .05;
    filter: blur(1px);
}

.background-main-menu img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}



section.featured-image-single {
    width: 100%;
    position: relative;
    max-width: 100%;
    margin: 0 auto 4rem auto;
    padding: 2rem;
    background-image: url('../img/background-single-image.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
}

section.featured-image-single>figure {
    width: 100%;
    max-width: 80rem;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    box-shadow: 16px 16px 50px rgba(0, 0, 0, .75);
    border: 1px solid #3a567a;
}

section.featured-image-single>figure img {
    filter: grayscale(1);
    position: relative;
    z-index: 1;
}



.sfumatura-nera {
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 51%, rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 1) 100%);
}

.spot-sx {
    display: block;
    position: absolute;
    z-index: 10;
    top: 0;
    left: -50%;
    width: 120%;
    height: 10rem;
    background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    transform: rotate(30deg);
    transform-origin: center;
    filter: blur(32px);
    opacity: .5;
}

.spot-dx {
    display: block;
    position: absolute;
    z-index: 10;
    top: 0;
    right: -50%;
    width: 120%;
    height: 10rem;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
    transform: rotate(-30deg);
    transform-origin: center;
    filter: blur(32px);
    opacity: .5;
}

@media all and (max-width:639.5px) {
    .site-navigation.top-bar {
        width: 5rem;
    }

    header.site-header.fixed-header {
        justify-content: flex-start;
    }

    section.featured-image-single {
        margin: 0 auto 0rem auto !important;
        padding: 1rem 1rem 2rem 1rem !important;
    }

    .spot-dx,
    .spot-sx {
        height: 4rem;
        opacity: .75;
        filter: blur(16px);
    }
}

section.featured-image-single>figure::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 10;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    mix-blend-mode: overlay;
    background: linear-gradient(45deg, rgba(90, 158, 226, 1) 0%, rgba(169, 210, 243, 0.8) 10%, rgba(144, 186, 228, 0.51) 25%, rgba(144, 191, 240, 0.02) 50%, rgba(144, 191, 240, 0) 51%, rgba(144, 186, 228, 0.65) 83%, rgba(90, 158, 226, 1) 100%);
}

.maxwidth-80 {
    width: 100%;
    max-width: 80rem;
    margin: 0 auto;
}

ul.elenco-artisti.elenco-artisti-single {
    display: flex;
    flex-flow: row wrap;
}

ul.elenco-artisti.elenco-artisti-single li {
    width: auto;
    margin-right: .75rem;
    margin-bottom: 0;
    text-transform: uppercase;
}

ul.elenco-artisti.elenco-artisti-single li span {
    text-transform: uppercase;
}

ul.elenco-artisti.elenco-artisti-single li span:first-child {
    color: #5e91cc;
}

.responsive-video {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    margin: 2rem 0;
}

.responsive-video video,
.responsive-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

header.footer-header {
    display: block;
    width: 100%;
    margin-bottom: 1rem;
}

figure.logo-footer {
    display: block;
    width: 10rem;
    margin: 0 auto;
}

.riga-widget-footer .grid-x {
    justify-content: center;
    width: 100%;
}

.logo-column {
    padding: 1rem;
    align-self: flex-end;
}


.logo-column>img {
    max-width: 10rem;
    margin: 0 auto;
}

.logo-row {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    justify-content: center;
}

.logo-row>figure {
    display: block;
    width: 8rem;
    align-self: center;
    margin: 0;
}

.logo-row>div {
    display: block;
    max-width: 16rem;
    padding-left: .5rem;
    align-self: center;
    font-size: .875rem;
}

.credits {
    padding-top: .5rem;
    color: #666;
    margin-top: 1rem;
    border-top: 1px solid #363636;
}

.link-footer {
    text-align: center;
    display: block;
    width: 100%;
    margin-top: 2rem;
}

@media all and (min-width:900px) {
    .link-footer a {
        display: inline-block;
        margin: 0 .5rem;
    }
}

@media all and (max-width:899.5px) {
    .logo-column {
        width: 50%;
        padding: .5rem;
    }

    .logo-column:nth-child(odd) img {
        margin: 0 0 0 auto;
    }

    .logo-column:nth-child(even) img {
        margin: 0 auto 0 0;
    }

    .logo-row>figure {
        width: 6rem;
    }

    .logo-row>div {
        width: 100%;
        margin-left: 0;
        padding-left: 0;
        text-align: center;
        max-width: 100%;
    }

    .logo-row>div>span {
        display: block;
        width: 100%;
        max-width: 16rem;
        margin: 0 auto;
    }

    .link-footer a {
        display: block;
        text-align: center;
    }

    .link-footer a:not(:last-child) {
        margin-bottom: 1rem;
    }
}

footer.footer-single-concerto {
    display: block;
    width: 100%;
    margin: 4rem 0;
}

.intestazione-gallery {
    display: block;
    width: 100%;
    max-width: 20rem;
    text-align: center;
    margin: 0 auto 3rem auto;
}

.gallery-item .responsive-video {
    margin: 0;
}

.sizer-gallery,
.gallery-item {
    width: 25%;
    border: 1px solid #000;
}

@media all and (max-width:1199.5px) {

    .sizer-gallery,
    .gallery-item {
        width: 50%;
    }
}

.responsive-map {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

}

.responsive-map::before {
    content: '';
    display: block;
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #5e91cc;
    pointer-events: none;
    mix-blend-mode: overlay;
    opacity: .5;
}

.responsive-map iframe {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    filter: grayscale(1);
}

.close-button {
    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;
    background: #5e91cc;
    color: #fff;
    border: 0;
    width: 2rem;
    height: 2rem;
    cursor: pointer;
}

.titolo-data-line-up>span {
    display: block;
}

.riga-line-up-past:not(:last-child) {
    margin-bottom: 2rem;
}

.subrow-lineup {
    margin-bottom: 1rem;
}

.subrow-lineup.has-image {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
}

.section-single-past-edition {
    display: block;
    width: 100%;
    margin-top: 0;
    padding-bottom: 4rem;
    background-color: #000;
    background-position: top right;
    background-size: 100%;
    background-repeat: no-repeat;
    background-image: url('../img/background-lineup-home.jpg');
}

header.header-single-past-edition.centered {
    padding-top: 4rem;
}

header.header-single-past-edition h1 span {
    color: #fff;
}

.subrow-lineup.has-image>figure.img-lineup-past {
    display: block;
    width: 8rem;
    margin: 0;
    align-self: flex-start;
    transform-origin: center;
}

.subrow-lineup.has-image .data-line-up-past-edition {
    display: block;
    width: calc(100% - 8rem);
    padding-left: 1rem;
    align-self: center;
}

.line-up-edizione {
    display: block;
    width: 100%;
    column-count: 2;
    column-gap: 2rem;
}

.data-line-up-past time {
    margin-bottom: 1rem;
}

.subrow-lineup:not(:last-child) {
    padding-bottom: 1rem;
    border-bottom: 1px solid #3a567a;
}

.header-single-past-edition h1 {
    margin-bottom: 2rem;
    line-height: 1;
}

.section-single-past-edition .entry-content {
    display: block;
    width: 100%;
    max-width: 50rem;
    margin: 0 auto 2rem auto;
    text-align: center;
}

.section-single-past-edition {
    position: relative;
}

.section-single-past-edition>* {
    position: relative;
    z-index: 5;
}

.section-single-past-edition::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;

    background: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

}

.riga-line-up-past {
    display: block;
    width: 100%;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

.content-line-up-edizione ul.elenco-artisti.elenco-artisti-single {
    padding-left: 0;
}

.content-line-up-edizione ul.elenco-artisti.elenco-artisti-single li {
    width: auto;
    margin-right: .75rem;
    margin-bottom: 0;
    text-transform: uppercase;
    line-height: 1.2;
}

@media all and (max-width:991.5px) {
    .line-up-edizione {
        column-count: 1;
        column-gap: 0;
    }
}

ul.menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
    max-width: 30rem;
    line-height: 1;
    margin-left: auto;
    margin-right: 0;
}

ul.menu>li:not(:last-child) {
    margin-bottom: 1rem;
}

ul.menu li a {
    color: #fff;
}

ul.vertical.nested.menu {
    font-size: 3rem;
    display: block;
    width: 100%;
    text-align: right;
}

ul.vertical.nested.menu li {
    display: inline-block;
}

ul.vertical.nested.menu li:not(:last-child) {
    margin-right: .5rem;
}

ul.vertical.nested.menu li a {
    color: #fcb539;
}

@media all and (max-width:639.5px) {
    ul.menu {
        max-width: 19rem;
    }

    ul.vertical.nested.menu {
        font-size: 1.75rem;
    }

    ul.vertical.nested.menu li:not(:last-child) {
        margin-right: .25rem;
    }
}

.sezione-intro-contact {
    height: 65vh;
    width: 100vw;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    background-attachment: fixed;
}

.sezione-intro-contact::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #00000036;
}

.titolo-intro-contact {
    position: relative;
    z-index: 2;
    font-size: 7rem;
    text-transform: uppercase;
    margin-bottom: 15rem;
}

.form-cont {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}

.form-container {
    max-width: 60%;
    width: 100%;
    background-color: #fff;
    padding: 4rem;
}

.contact-container {
    position: relative;
    max-width: 40%;
    background-color: #fcb539;
    padding: 4rem;
    width: 100%;
}

@media all and (max-width:991.5px) {

    .form-container,
    .contact-container {
        max-width: 100%;
    }
}

@media all and (max-width:639.5px) {

    .form-container,
    .contact-container {
        padding: 1.5rem;
    }
}

.wpcf7-form-control-wrap {
    position: relative;
    display: block;
    width: 100%;
}

.campo-testo {
    width: 100%;
    height: 2.5rem;
    padding: .5rem;
    color: #fcb539;
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #fcb539;
    font-size: .875rem;
}

.container-campiform {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    gap: 2rem;
    margin-bottom: 3rem;
    justify-content: center;
    width: 100%;
}

.campo-textarea {
    width: 100%;
    padding: .5rem;
    height: 7rem;
    color: #fcb539;
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #fcb539;
    font-size: .875rem;
}

span.wpcf7-list-item-label {
    color: #000;
}

.captcha-form {
    color: #000;
}

.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: .75rem;
    font-weight: normal;
    display: block;
    padding-top: 0.75rem;
}

.bottone-form {
    border: 1px solid #000;
    background-color: #000;
    color: #fcb539;
    font-size: .875rem;
    text-transform: uppercase;
    font-weight: 400;
    padding: .75rem 1.5rem;
    transition: all .4s ease-in-out;
}

.bottone-form:hover {
    border: 1px solid #fcb539;
    background-color: #fcb539;
    color: #fff;
    transition: all .4s ease-in-out;
}

.container-bottone-form {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: flex-end;
}

span.wpcf7-spinner {
    display: none;
}

.captcha-form {
    margin-left: 1.8rem;
}

.titolo-del-form {
    font-size: 1.25rem;
    color: #000;
    margin-top: 0 !important;
}

.info-rec {
    color: #000;
    font-weight: 400;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: .6rem;
    transition: all .4s ease-in-out;
}

.info-rec:hover {
    color: #fff;
    transition: all .4s ease-in-out;
}

.cont-inforec {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    gap: 1rem;
}



.info-social-rec {
    color: #000;
    font-size: 1.25rem;
    transition: all .4s ease-in-out;
}

.info-social-rec:hover {
    color: #fff;
    transition: all .4s ease-in-out;
}

.social-contatti {
    margin-top: 2rem;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: .75rem;
}

.intestazione-press-room {
    display: block;
    width: 100%;
    max-width: 20rem;
    text-align: center;
    margin: 0 auto 3rem auto;
}

.grid-press-room {
    width: 100%;
    justify-content: space-between;
}

.item-press-room {
    width: -webkit-calc(50% - 1rem);
    width: -moz-calc(50% - 1rem);
    width: calc(50% - 1rem);
    margin-bottom: 2rem;
    padding: 1rem;
    background: #2e456144;
    backdrop-filter: blur(2px);
    border: 1px solid #3a567a;
    box-shadow: 16px 16px 50px rgba(0, 0, 0, .75);
}

.item-press-room-content>time {
    display: inline-block;
    margin: 0 0 1rem -1rem;
    line-height: 1;
    padding: .5rem 1rem;
}

.excerpt-articolo {
    display: block;
    width: 100%;
    font-size: .875rem;
    margin: .5rem 0;
}

.fonte-articolo {
    display: block;
    width: 100%;
    margin-bottom: .5rem;
    font-size: .875rem;
}

.fonte-articolo span {
    font-family: "Fjalla One", sans-serif;
}

.link-articolo-press-room {
    display: inline-block;
    line-height: 1;
    padding: .5rem;
    margin-top: .5rem;
    border-width: 1px;
    border-style: solid;
    background: #00000044;
    backdrop-filter: blur(1px);
    min-width: 10rem;
    text-align: center;
    border: 1px solid #3a567a;
}

@media all and (max-width:639.5px) {
    .item-press-room {
        width: 100%;
        margin-bottom: 1rem;
    }
}

header.header-press-room {
    display: block;
    width: 100%;
    padding-top: 1rem;
}

.item-press-room.has-thumbnail {
    display: flex;
    flex-flow: row wrap;
}

.item-press-room.has-thumbnail>figure {
    width: 20%;
    height: auto;
    align-self: flex-start;
}

.item-press-room.has-thumbnail>figure>img {
    display: block;
    width: 100%;
    height: auto;
}

.item-press-room.has-thumbnail>.item-press-room-content {
    width: 80%;
    align-self: flex-start;
    padding-left: 1rem;
}

.item-press-room.has-thumbnail .item-press-room-content>time {
    margin: .5rem 0 1rem -2rem;
}

.logo-kjf-bg {
    position: absolute;
    max-width: 100%;
    width: 100%;
    height: auto;
    opacity: .04;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

@media all and (max-width:899.5px) {
    .item-press-room.has-thumbnail>figure {
        width: 100%;
        position: relative;
        height: 0;
        padding-top: 66%;
    }

    .item-press-room.has-thumbnail>figure>img {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .item-press-room.has-thumbnail>.item-press-room-content {
        width: 100%;
    }
}

a.link-back-home {
    display: inline-block;
    margin-top: 1rem;
    padding: .5rem 1rem;
    font-size: .875rem;
}

figure.content-none-image {
    display: block;
    width: 100%;
    max-width: 30rem;
    margin: 0 auto;
}

.content-none-container {
    display: block;
    width: 100%;
    max-width: 40rem;
    margin: 0 auto;
}

.background-main {
    background-color: #000;
    background-position: top right;
    background-size: 100%;
    background-repeat: no-repeat;
    background-image: url('../img/background-lineup-home.jpg');
    position: relative;
}

.background-main>* {
    position: relative;
    z-index: 10;
}

.background-main::before {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
}

body.search.search-results .main-container,
body.archive .main-container {
    padding-bottom: 4rem;
}

.container-delform,
.cont-inforec {
    margin-top: 2rem;
    width: 100%;
}

.data-concerto-line-up {
    margin-bottom: 1rem;
    display: inline-block;
    padding: .5rem .75rem;
    line-height: 1;
}

.data-concerto-line-up>span {
    display: block;
    font-size: .875rem;
}

.data-concerto-line-up>span:not(:last-child) {
    margin-bottom: .5rem;
}

.data-concerto-line-up>span:last-child {
    font-size: .75rem;
}

.elenco-categorie {
    display: block;
    width: 100%;
    margin-bottom: 2rem;
}

.elenco-categorie>h3.h3 {
    display: inline-block;
}

.elenco-categorie>h3.h3:not(:last-child) {
    margin-right: .5rem;
}

ul.altre-date {
    list-style-type: none;
    margin: 0 0 .5rem 0;
    padding: 0;
}

.header-single-concerto ul.altre-date>li:not(:last-child),
.dati-item-concerto  ul.altre-date>li:not(:last-child) {
    margin-bottom:.5rem;
}

.data-concerto-line-up ul.altre-date>li:not(:last-child) {
    margin-bottom: .5rem;
}

.data-concerto-line-up ul.altre-date>li>span {
    display: block;
    font-size: .875rem;
}
/* ========================================
   SCROLL REVEAL (progressive enhancement)
   Content visibile di default. JS aggiunge .pg-js-ready su <html>
   per abilitare le animazioni — se JS fallisce, content resta visibile
   ======================================== */

.pg-js-ready .reveal {
    opacity: 0;
    transform: translateY(1.5rem);
    transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1),
                transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.pg-js-ready .reveal.revealed {
    opacity: 1;
    transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
    .pg-js-ready .reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* ========================================
   HEADER SHRINK
   ======================================== */

header.site-header.fixed-header {
    will-change: height, padding;
    transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                padding 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                background-size 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

header.site-header.fixed-header.header-scrolled {
    height: 3.5rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    background-size: 25rem;
}

.link-header-logo {
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.header-scrolled .link-header-logo {
    width: 4rem;
}

@media all and (max-width:991.5px) {
    header.site-header.fixed-header.header-scrolled {
        height: auto;
        padding-top: 0.125rem;
        padding-bottom: 0.125rem;
        background-size: contain;
    }

    .header-scrolled .link-header-logo {
        width: 3rem;
    }
}

/* ========================================
   MENU STAGGER
   ======================================== */

.content-main-menu .col-sx-menu a {
    opacity: 0;
    transform: translateX(-1rem);
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

body.open-main-menu .content-main-menu .col-sx-menu a {
    opacity: 1;
    transform: translateX(0);
}

/* ========================================
   HOVER EFFECTS
   ======================================== */

.content-item-concerto {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.content-item-concerto:hover {
    transform: scale(1.02);
    box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.3);
}

a.pulsante-medio,
a.pulsante-big {
    transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                transform 0.15s cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

a.pulsante-medio:hover,
a.pulsante-big:hover {
    transform: translateY(-2px);
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.2);
}

.link-footer a {
    position: relative;
    display: inline-block;
}

.link-footer a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background: #fcb539;
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.link-footer a:hover::after {
    width: 100%;
}

.logo-column {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.logo-column:hover {
    transform: translateY(-3px);
}

/* ========================================
   SIDE MENU BACKDROP SMOOTH
   ======================================== */

.side-main-menu-backdrop {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

body.open-main-menu .side-main-menu-backdrop {
    opacity: 1;
    pointer-events: auto;
}

/* ========================================
   OWL CAROUSEL SMOOTH OVERRIDE
   ======================================== */

.owl-carousel .owl-stage {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

.owl-carousel .owl-item {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    will-change: transform;
}

.owl-carousel.owl-drag .owl-item {
    user-select: none;
}

/* ========================================
   SEZIONE PIXELGRAM
   ======================================== */

.sezione-pixelgram {
    padding: 3rem 0;
    border-top: 1px solid #1a1a2e;
}

.sezione-pixelgram .pixelgram-feed {
    max-width: 100%;
}

.pixelgram-section-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
}

.pixelgram-section-header a {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #fefefe;
    text-decoration: none;
    transition: color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.pixelgram-section-header a:hover {
    color: #fcb539;
}

.pixelgram-section-header svg {
    width: 1.75rem;
    height: 1.75rem;
    flex-shrink: 0;
}

.pixelgram-section-header span {
    font-family: 'Fjalla One', sans-serif;
    font-size: 1.5rem;
    text-transform: uppercase;
}

/* ========================================
   PAGE TRANSITION (progressive enhancement)
   ======================================== */

html.pg-fade-start body {
    opacity: 0;
    transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

html.pg-fade-in body {
    opacity: 1;
}


body.page-template-page-edizioni-precedenti {
    background-position: top right;
    background-size: 100%;
    background-repeat: no-repeat;
    background-image: url('../img/background-lineup-home.jpg');
    background-attachment: fixed;
}

.grid-edizioni {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    justify-content: space-between;
    position: relative;
    backdrop-filter: blur(2px);
    border: 1px solid #3a567a;
    box-shadow: 16px 16px 50px rgba(0, 0, 0, .75);
}

.grid-edizioni:not(:last-child) {
    margin-bottom:2rem;
}

.content-edizione {
    width: calc(100% - 22rem);
    align-self: center;
    padding: 1rem 1rem 1rem 0;
}

figure.link-img-edizione {
    display: block;
    width: 20rem;
    position: relative;
    height: 20rem;
    margin-bottom: 0;
}

figure.link-img-edizione img {
    display: block;
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    width:100%;
    height:100%;
    object-fit: cover;
}

h3.titolo-edizione {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0 0 1rem 0;
    font-size: clamp(2rem, 4.5vw, 3.5rem);
    line-height: 1;
    color: #fab538;
}

h3.titolo-edizione a {
    display: block;
    width: calc(50% - .5rem);
    align-self: center;
    font-weight: 300;
    border: 1px solid #fcb539;
    padding: .5rem 1rem;
    font-size: 1rem;
}

.data-edizione {
    display: inline-block;
    line-height: 1;
    color: #666;
    font-size: 1.25rem;
    background: #fff;
    position: relative;
    padding: .5rem 1rem;
    margin-bottom: .5rem;
    font-weight: 500;
    position:relative;
}

.data-edizione::after {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 2rem;
    background: #fff;
    transform-origin: center;
    transform: skewX(5deg);
    right: -1rem;
}

.luogo-edizione {
    font-size: 1.25rem;
}

.action-edizione {
    display: block;
    margin-top: 1rem;
}

.action-edizione a.link-title-edizione:first-child {
    display: inline-block;
    margin-right: .5rem;
    padding: .5rem 1rem;
    background: #fcb539;
    color: #222;
    font-weight: 500;
}

.action-edizione a.link-title-edizione:last-child {
    display:inline-block;
    margin-left:.5rem;
     padding: .5rem 1rem;
    background: #3a567a;
    color: #fff;
    font-weight: 500;
}

.content-edizioni {
    display: block;
    width: 100%;
}

@media all and (min-width:640px) and (max-width:1023.5px) {
    figure.link-img-edizione {
    width: 16rem;
    height: 16rem;
}
.content-edizione {
    width: calc(100% - 17rem);
}
.grid-edizioni:not(:last-child) {
    margin-bottom:1rem;
}
.data-edizione,
.luogo-edizione {
    font-size:1.125rem;
}
}

@media all and (max-width:639.5px) {
    figure.link-img-edizione {
    width: 100%;
    height: auto;
    margin-bottom:0;
}

.data-edizione,
.luogo-edizione {
    font-size:1rem;
}

figure.link-img-edizione img {
    position:relative;
    width:100%;
    height:auto;
    left:initial;
    right:initial;
    top:initial;
    bottom:initial;
}

.content-edizione {
    width: 100%;
    padding:1rem;
}
.grid-edizioni:not(:last-child) {
    margin-bottom:1rem;
}
}

.intervista-artista {
    display: block;
    width: 100%;
    height: auto;
    margin-top: 2rem;
    margin-bottom:2rem;
}

.macro-container-video-intervista {
    padding: 4rem 0 10rem 0;
    background-image: url('../img/microfono-jazz-blue-right-black.png');
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    max-width: 72rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 4rem;
    margin-bottom: 2rem;
}


.container-video-intervista {
    display: block;
    width: 100%;
    height: auto;
    background: #5e91cc;
    padding: 0;
    border-radius: 0;
    box-shadow: 4px 4px 16px rgba(0, 0, 0, .5);
    border: 1px solid #5e91cc;
}



.container-video-intervista h2 {
 
    text-shadow: 2px 2px 1px #000;
}

.video-intervista {
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
    border-radius: 0;
    aspect-ratio: 16 / 9;
}

.video-intervista video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.testo-intervista {
    font-weight: 400;
    padding-left: 1rem;
    margin-top: 1rem;
     width:100%;
    max-width:40rem; 
}

.testo-intervista h2 {
    font-size:2.5rem;
    line-height:1;
    margin-bottom:.5rem;
}

.macro-container-video-intervista h2 {
    line-height:1;
    margin-bottom:0;
    width:100%;
    max-width:40rem;  
}

.grid-interviste {
    width: 100%;
    justify-content: space-between;
    margin-top: 2rem;
}

.data-video {
    display: block;
    width: calc(100% - 12rem);
    align-self:start;
}

.data-list {
    display:block;
    width:11rem;
    align-self:start;    
}

@media all and (max-width:511.5px) {
    .testo-intervista h2 {
    font-size:1.5rem;
    }
    .testo-intervista {
        padding-left:0;
    }
}

a.item-intervista {
    display: block;
    width: 100%;
    height: auto;
    padding-bottom: .5rem;
    border-bottom: 4px solid #ffffff00;
}

a.item-intervista:not(:last-child) {
    margin-bottom:1rem;
}


a.item-intervista img {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: .75rem;
    border: 1px solid #5e91cc;
}

a.item-intervista.selected {
    border-bottom: 4px solid #fcb539;
}

a.item-intervista.selected img {
    border: 1px solid #fcb539;
}

a.item-intervista h5 {
    font-size:1rem;
}

.item-intervista time {
    font-size:.875rem;
    font-weight:400;
}

.data-video h2 {
    font-size:2.5rem;
    margin-top:1rem;
}

@media all and (max-width:767.5px) {
    .data-video {
    width: 100%;
    margin-bottom:1.5rem;
}

.data-list {
    display:flex;
    flex-flow:row wrap;
    justify-content:space-between;
    width:100%;
}
    a.item-intervista {
        width:calc(50% - .5rem);
        align-self:start;
        margin-bottom:1rem;
    }
    a.item-intervista h5 {
    font-size:.875rem;
}
}