*, *::before, *::after { box-sizing: border-box; }
body { margin: 0px; padding: 0px; }  .container-sm  { max-width: 600px; margin: 0px auto; }
.container-md  { max-width: 800px; margin: 0px auto; }
.container-lg  { max-width: 1000px; margin: 0px auto; }
.container-xl  { max-width: 1200px; margin: 0px auto; }
.container-xxl { max-width: 1400px; margin: 0px auto; } .columns { display: flex; flex-wrap: wrap; }
.columns > * { width: 100%; }
.col-1 { width: 8.33334%; } .col-2 { width: 16.66667%; } .col-3 { width: 25%; } .col-4 { width: 33.33333%; } .col-5 { width: 41.66667%; } .col-6 { width: 50%; } .col-7 { width: 58.33333% } .col-8 { width: 66.66667%; } .col-9 { width: 75%; } .col-10 { width: 83.33333%; } .col-12 { width: 100%; }
@media screen and (min-width: 400px)  { .col-xs-1 { width: 8.33334%; } .col-xs-2 { width: 16.66667%; } .col-xs-3 { width: 25%; } .col-xs-4 { width: 33.33333%; } .col-xs-5 { width: 41.66667%; } .col-xs-6 { width: 50%; } .col-xs-7 { width: 58.33334% } .col-xs-8 { width: 66.66667%; } .col-xs-9 { width: 75%; } .col-xs-10 { width: 83.33333%; } .col-xs-12 { width: 100%; } }
@media screen and (min-width: 600px)  { .col-sm-1 { width: 8.33334%; } .col-sm-2 { width: 16.66667%; } .col-sm-3 { width: 25%; } .col-sm-4 { width: 33.33333%; } .col-sm-5 { width: 41.66667%; } .col-sm-6 { width: 50%; } .col-sm-7 { width: 58.33334% } .col-sm-8 { width: 66.66667%; } .col-sm-9 { width: 75%; } .col-sm-10 { width: 83.33333%; } .col-sm-12 { width: 100%; } }
@media screen and (min-width: 800px)  { .col-md-1 { width: 8.33334%; } .col-md-2 { width: 16.66667%; } .col-md-3 { width: 25%; } .col-md-4 { width: 33.33333%; } .col-md-5 { width: 41.66667%; } .col-md-6 { width: 50%; } .col-md-7 { width: 58.33334% } .col-md-8 { width: 66.66667%; } .col-md-9 { width: 75%; } .col-md-10 { width: 83.33333%; } .col-md-12 { width: 100%; } }
@media screen and (min-width: 1000px) { .col-lg-1 { width: 8.33334%; } .col-lg-2 { width: 16.66667%; } .col-lg-3 { width: 25%; } .col-lg-4 { width: 33.33333%; } .col-lg-5 { width: 41.66667%; } .col-lg-6 { width: 50%; } .col-lg-7 { width: 58.33334% } .col-lg-8 { width: 66.66667%; } .col-lg-9 { width: 75%; } .col-lg-10 { width: 83.33333%; } .col-lg-12 { width: 100%; } }
@media screen and (min-width: 1200px) { .col-xl-1 { width: 8.33334%; } .col-xl-2 { width: 16.66667%; } .col-xl-3 { width: 25%; } .col-xl-4 { width: 33.33333%; } .col-xl-5 { width: 41.66667%; } .col-xl-6 { width: 50%; } .col-xl-7 { width: 58.33334% } .col-xl-8 { width: 66.66667%; } .col-xl-9 { width: 75%; } .col-xl-10 { width: 83.33333%; } .col-xl-12 { width: 100%; } }  .columns-va-center { align-items: center; }
.col-va-center { align-self: center; }
.col-va-bottom { align-self: flex-end; } .columns-p-30, .columns-p-30 > * { padding: 15px; }
.columns-p-60, .columns-p-60 > * { padding: 30px; }
.columns-p-90, .columns-p-90 > * { padding: 45px; }
@media screen and (max-width: 1000px)
{
.columns-p-90, .columns-p-90 > * { padding: 30px; }
}
@media screen and (max-width: 600px)
{
.columns-p-60, .columns-p-60 > * { padding: 15px; }
.columns-p-90, .columns-p-90 > * { padding: 15px; }
} .columns-gap-15 { margin: -7.5px; }
.columns-gap-15 > * { padding: 7.5px; }
.columns-gap-30 { margin: -15px; }
.columns-gap-30 > * { padding: 15px; }
.columns-gap-60 { margin: -30px; }
.columns-gap-60 > * { padding: 30px; }
.columns-gap-90 { margin: -45px; }
.columns-gap-90 > * { padding: 45px; }
@media screen and (max-width: 1000px)
{
.columns-gap-90 { margin: -30px; }
.columns-gap-90 > * { padding: 30px; }
}
@media screen and (max-width: 600px)
{
.columns-gap-60 { margin: -15px; }
.columns-gap-60 > * { padding: 15px; }
.columns-gap-90 { margin: -15px; }
.columns-gap-90 > * { padding: 15px; }
} .p-30 { padding: 30px; }
.p-60 { padding: 60px; }
.p-90 { padding: 90px; }
@media screen and (max-width: 1000px)
{
.p-90 { padding: 60px; }
}
@media screen and (max-width: 600px)
{
.p-60 { padding: 30px; }
.p-90 { padding: 30px; }
} .mt-30 { margin-top: 30px; }
.mt-inner-15 > * + * { margin-top: 15px; }
.mt-inner-30 > * + * { margin-top: 30px; }
.mt-inner-60 > * + * { margin-top: 60px; }
.mt-inner-90 > * + * { margin-top: 90px; }
@media screen and (max-width: 1000px)
{
.mt-inner-90 > * + * { margin-top: 60px; }
}
@media screen and (max-width: 600px)
{
.mt-inner-60 > * + * { margin-top: 30px; }
.mt-inner-90 > * + * { margin-top: 30px; }
}  .h0 { font-size: 100px; line-height: 1.1em; }
h1, .h1 { font-size: 85px; line-height: 1.1em; }
h2, .h2 { font-size: 56px; line-height: 1.3em; }
h3, .h3 { font-size: 40px; line-height: 1.3em; }
h4, .h4 { font-size: 30px; line-height: 1.5em; }
body { font-size: 18px; line-height: 1.5em; }
.small { font-size: 14px; line-height: 1.5em; }
@media screen and (max-width: 1000px)
{
.h0 { font-size: 72px; line-height: 1.1em; }
h1, .h1 { font-size: 64px; line-height: 1.1em; }
h2, .h2 { font-size: 44px; line-height: 1.3em; }
h3, .h3 { font-size: 32px; line-height: 1.3em; }
h4, .h4 { font-size: 24px; line-height: 1.5em; }
body { font-size: 18px; line-height: 1.5em; }
.small { font-size: 14px; line-height: 1.5em; }
}
@media screen and (max-width: 600px)
{
.h0 { font-size: 48px; line-height: 1.1em; }
h1, .h1 { font-size: 42px; line-height: 1.1em; }
h2, .h2 { font-size: 32px; line-height: 1.3em; }
h3, .h3 { font-size: 26px; line-height: 1.3em; }
h4, .h4 { font-size: 20px; line-height: 1.5em; }
body { font-size: 16px; line-height: 1.5em; }
.small { font-size: 13px; line-height: 1.5em; }
} h1, .h1, h2, .h2, h3, .h3, h4, .h4
{ overflow-wrap: break-word; word-wrap: break-word; word-break: break-word; } .bolder { font-weight: bolder; }
.italic { font-style: italic; }
.align-left { text-align: left; }
.align-right { text-align: right; }
.align-center { text-align: center; }
.align-justify { text-align: justify; }
.uppercase { text-transform: uppercase; }
.lowercase { text-transform: lowercase; }
.capitalize { text-transform: capitalize; }  #header { }
#header ul, #header li { margin: 0px; padding: 0px; }
#header .lot .toggler { width: 32px; height: 32px; cursor: pointer; }
#header .lot .toggler svg { width: 100%; height: 100%; color: #FFFFFF; transition: color 0.2s ease; }
#header .lot .toggler:hover svg { color: #F1AD4B; }
#header .lot .logo { width: calc( 100% - 32px - 30px ); margin-right: 30px; }
#header .lot .logo a { display: block; width: 100%; }
#header .lot .logo a img { display: block; width: 100%; max-width: 175px; height: auto; }
#header .nav ul, #header .nav li { list-style: none; }
#header .nav a { display: block; text-decoration: none; font-size: 15px; line-height: 15px; color: #FFFFFF; transition: color 0.2s; }
#header .nav a:hover { color: #F1AD4B; }
#header .nav ul.menu > li > a { text-transform: uppercase; font-weight: bolder; } @media screen and (max-width: 1199px)
{
#header { position: relative; }
#header::after {
content: ""; position: absolute; left: 0; bottom: -10px; width: 100%; height: 10px;
background: transparent url(//www.humusmusicfest.com/wp-content/themes/mpsb/graphic/hr-onda-viola-giu.png) repeat-x scroll center center;
background-size: auto 100%;
pointer-events: none; z-index: 9999999;
}
#header .lot { background: #6E4D83; padding: 15px; display: flex; align-items: center; position: relative; z-index: 999999; box-shadow: 0px 0px 15px rgba(0,0,0,0.3); }
#header .nav { background: #6E4D83; overflow-y: auto; position: fixed; z-index: 999999; top: 0px; left: -100%; transition: left 0.2s ease; height: 100%; width: 100%; }
#header .nav.opened { left: 0%; z-index: 9999999999999999; }
#header .nav ul.menu { padding-top: 15px; padding-bottom: 60px; }
#header .nav ul.menu ul { padding-left: 15px; }
#header .nav ul.menu li a { display: block; padding: 10px 15px; }
#header .nav ul.menu > li:has(svg) { }
#header .nav ul.menu > li:has(svg) a {  }
#header .nav ul.menu > li:has(svg) a svg { width: 20px; height: 20px; margin-right: 10px; } #header .nav ul.menu > li > a:has(span.c2a) { padding: 10px 0px 10px 10px; }
#header .nav ul.menu > li > a:has(span.c2a) span.c2a { display: inline-block; background: #555555; padding: 10px 20px; color: white; border-radius: 20px; transition: background-color 0.2s ease; }
#header .nav ul.menu > li > a:has(span.c2a):hover span.c2a { background: #C73950; }
} @media screen and (min-width: 1200px)
{
#header {
background: #6E4D83; padding: 15px 90px; position: relative; z-index: 999;
display: flex; align-items: center; justify-content: space-between;
}
#header::after {
content: ""; position: absolute; left: 0; bottom: -10px; width: 100%; height: 10px;
background: transparent url(//www.humusmusicfest.com/wp-content/themes/mpsb/graphic/hr-onda-viola-giu.png) repeat-x scroll center center;
background-size: auto 100%;
pointer-events: none;
}
#header .lot { display: flex; align-items: center; }
#header .lot .toggler { display: none; }
#header .lot .logo { width: 175px; }
#header .nav .lot { display: none; }
#header .nav ul.menu > li { display: inline-block; position: relative; margin-left: 20px; }
#header .nav ul.menu > li > a { padding: 20px 0px; border-radius: 5px; color: white; transition: color 0.2s ease; }
#header .nav ul.menu > li > a:hover { color: #F1AD4B; }
#header .nav ul.menu > li.current-menu-item > a { color: #F1AD4B; }
#header .nav ul.menu > li:has(svg) { width: 20px; position: relative; top: 3px; }
#header .nav ul.menu > li:has(svg) a { width: 20px; height: 20px; }
#header .nav ul.menu > li:has(svg) a svg { width: 100%; height: 20px; }
#header .nav ul.menu > li:has(svg) a span { display: none; } #header .nav ul.menu > li.menu-item-has-children > a::after { content: "\25BE"; display: inline-block; margin-left: 6px; font-size: 1em; }
#header .nav ul.menu > li > ul { opacity: 0; visibility: hidden; transition: opacity 0.2s, visibility 0.2s; padding: 10px 20px; position: absolute; z-index: 99999999; top: 100%; left: 50%; margin-left: -150px; width: 300px; background: white; border-radius: 5px; box-shadow: 0px 0px 10px rgba(0,0,0,0.15); }
#header .nav ul.menu > li:hover > ul { opacity: 1; visibility: visible; }
#header .nav ul.menu > li > ul > li > a { padding: 7px 0px; border-radius: 5px; color: #000000; transition: color 0.2s ease; line-height: 1.3em; }
#header .nav ul.menu > li > ul > li > a:hover { color: #555555; } #header .nav ul.menu > li > a:has(span.c2a) { padding: 10px 0px; }
#header .nav ul.menu > li > a:has(span.c2a) span.c2a { display: inline-block; background: #555555; padding: 10px 20px; color: white; border-radius: 20px; transition: background-color 0.2s ease; }
#header .nav ul.menu > li > a:has(span.c2a):hover span.c2a { background: #C73950; }
}  .site-main * > h1:first-child { margin-top: 0px; }
.site-main * > h2:first-child { margin-top: 0px; }
.site-main * > h3:first-child { margin-top: 0px; }
.site-main * > h4:first-child { margin-top: 0px; }
.site-main * > h5:first-child { margin-top: 0px; } body { background: #EEE2D1; }
.site-main { background: #EEE2D1; } .site-main a { color: #8F6F1E; transition: color 0.2s ease; }
.site-main a:hover { color: #AF8F3E; } .site-main img { max-width: 100%; height: auto; border-radius: 10px; } .site-main hr, .wp-block-separator {
border: 0; height: 15px; margin: 60px 0px 90px;
background: transparent url(//www.humusmusicfest.com/wp-content/themes/mpsb/graphic/hr-palline-giu.png) repeat-x left center;
background-size: auto 15px;
}
.site-main .wp-block-separator:not(.is-style-wide):not(.is-style-dots) { max-width: none; }
.site-main .wp-block-separator.is-style-dots {
height: 15px;
background: transparent url(//www.humusmusicfest.com/wp-content/themes/mpsb/graphic/hr-palline-giu.png) repeat-x center center;
background-size: auto 15px;
} .page-header { background: #000000; color: white; position: relative; z-index: 800; margin-bottom: 100px; }
.page-header::after {
content: ""; position: absolute; left: 0; bottom: -85px; width: 100%; height: 100px;
background: transparent url(//www.humusmusicfest.com/wp-content/themes/mpsb/graphic/hr-colline.png) repeat-x center center;
background-size: auto 100%;
pointer-events: none; z-index: 9999;
}
.page-header * { color: white !important; }
.page-header .page-description { font-size: 24px; line-height: 1.5em; }
@media screen and (max-width: 1000px) { .page-header .page-description { font-size: 18px; line-height: 1.5em; } }
@media screen and (max-width: 600px)  { .page-header .page-description { font-size: 16px; line-height: 1.5em; } }
.page-header.type-immagine-in-evidenza { position: relative;  background-size: cover; background-position: center; min-height: 700px; }
.page-header.type-immagine-in-evidenza::before { content: ''; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.3); z-index: 1; }
.page-header.type-immagine-in-evidenza .page-header-inner { position: relative; z-index: 10; max-width: 900px; } .gallery .item { position: relative; }
.gallery .item .image { aspect-ratio: 1 / 1; overflow: hidden; position: relative; z-index: 10; }
.gallery .item .image img { height: 100%; width: 100%; object-fit: cover; }
.gallery .item .caption {
position: absolute; z-index: 10; top: 20px; left: 20px;
color: white; text-shadow: 0px 0px 5px #000000;
font-size: 40px; line-height: 1.3em;
} .programma table { width: 100%; border-collapse: collapse; }
.programma table td { padding: 7px 10px; border: 1px solid black; vertical-align: top; }
.programma table tr td:first-child { background: #63467C; color: white; font-weight: bolder; width: 200px; }
.programma table tr td:nth-child(2) { background: white; }
.programma table tr td:nth-child(2) strong { font-size: 1.3em; line-height: 1.5em; }
@media (max-width: 767px) {
.programma table tbody,
.programma table tr,
.programma table td { display: block; width: 100%; }
.programma table tr { margin-bottom: 10px; }
.programma table tr td:first-child { width: 100%; box-sizing: border-box; }
.programma table tr td:nth-child(2) { box-sizing: border-box; }
} .hero { position: relative; overflow: hidden; min-height: 100px; }
.hero .hero__bg { position: absolute; inset: 0; background-size: cover; background-position: center center; background-repeat: no-repeat; opacity: 0; transition: opacity 1s ease; z-index: 1; }
.hero .hero__bg.is-visible { opacity: 1; }
.hero .hero__content { position: relative; max-width: 1400px; margin: 0px auto; }
.hero .hero__content .hero__text { padding: 150px 50px 150px; position: relative; z-index: 3; width: var(--desktop-text-width); box-sizing: border-box; opacity: 0; transform: translateX(-80px); transition: opacity .9s ease, transform .9s ease; }
.hero .hero__content .hero__text * { margin: 0px; padding: 0px; color: #fff; text-shadow: 0 2px 4px rgba(0,0,0,0.85), 0 0 2px rgba(0,0,0,1); }
.hero .hero__content .hero__text.is-visible { opacity: 1; transform: translateX(0); }
.hero .hero__content .hero__image { position: absolute; top: 0; right: 0; bottom: 0; width: var(--desktop-img-width); z-index: 2; opacity: 0; transform: translateX(80px); transition: opacity .9s ease, transform .9s ease; }
.hero .hero__content .hero__image.is-visible { opacity: 1; transform: translateX(0); }
.hero .hero__content .hero__image .hero__foreground-img { width: 100%; height: 100%; object-fit: contain; object-position: var(--img-position); display: block; }
@media (max-width: 767px) {
.hero .hero__content .hero__text { width: 100%; padding: 75px 20px; }
.hero .hero__content .hero__image { position: relative; width: 100%; height: auto; top: auto; right: auto; bottom: auto; }
.hero .hero__content .hero__foreground-img { width: 100%; height: auto; }
} .hero__text.is-pulsing {
animation: humusPulseText 7s ease-in-out infinite;
transform-origin: center center;
will-change: transform;
}
@keyframes humusPulseText {
0%, 100% { transform: scale(1); }
50% { transform: scale(1.035); }
}  .site-footer { margin-top: 170px; background: #273049; color: #FFFFFF; position: relative; z-index: 999; }
.site-footer::before {
content: ""; position: absolute; left: 0; top: -170px; width: 100%; height: 200px;
background: transparent url(//www.humusmusicfest.com/wp-content/themes/mpsb/graphic/hr-palco.png) repeat-x scroll center center;
background-size: auto 100%;
pointer-events: none;
}
.site-footer a { color: #CCCCCC; }
.site-footer a:hover { color: #FFFFFF; } .site-subfooter { background: #000000; color: #FFFFFF; }
.site-subfooter a { color: #CCCCCC; }
.site-subfooter a:hover { color: #FFFFFF; }