/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/


a,
a:focus,
button,
button:focus,
input:focus,
textarea:focus {
  outline: none !important;
}




/*
header.scrolling .top-sez {
  background-color: rgba(0, 0, 0, 1) !important;
  transition: all 0.3s;
}
*/

.home .top-sez { background: none !important; }
.home header:not(.scrolling) .top-sez::before { opacity: 0; }


/* MENU OFF-CANVAS CON EFFETTO FADE */
.menu-offcanvas,
.menu-offcanvas[data-direction="left"],
.menu-offcanvas .brx-offcanvas-inner,
.menu-offcanvas[data-direction="left"] .brx-offcanvas-inner {
  transform: none !important;
}

.menu-offcanvas {
  opacity: 0 !important;
  pointer-events: none;
  visibility: visible !important;
  transition: opacity 0.3s ease !important;
}

.menu-offcanvas.brx-open {
  opacity: 1 !important;
  pointer-events: auto;
}

.menu-offcanvas .brx-offcanvas-inner { transition: none !important; }


:root {
  --giallo: #FCE946;
  --viola: #2C3689;
  --azzurro: #00ABE0;
  --rosso: #EF2731;
  --arancione: #FB9337;
  --verde: #8BC04F;
  --blu: #30358c;
  --blu-scuro: #0e1938;
  --viola-fluo: #6F13FA;
  --rosa-fluo: #FF0087;
  --verde-fluo: #02BCC6;
  --blu-fluo:#3A86FF;
  --oro: #A49972;
}

.oro {
color: var(--oro);
}

/* SFONDI */
.distanza-giallo, .data-giallo, .tit-giallo { --sfondo: var(--giallo); }
.distanza-viola, .data-viola, .tit-viola { --sfondo: var(--viola); }
.distanza-azzurro, .data-azzurro, .tit-azzurro { --sfondo: var(--azzurro); }
.distanza-rosso, .data-rosso, .tit-rosso { --sfondo: var(--rosso); }
.distanza-arancione, .data-arancione, .tit-arancione { --sfondo: var(--arancione); }
.distanza-verde, .data-verde, .tit-verde { --sfondo: var(--verde); }
.distanza-blu, .data-blu, .tit-blu { --sfondo: var(--blu); }
.distanza-viola-fluo, .data-viola-fluo, .tit-viola-fluo { --sfondo: var(--viola-fluo); }
.distanza-rosa-fluo, .data-rosa-fluo, .tit-rosa-fluo { --sfondo: var(--rosa-fluo); }
.distanza-verde-fluo, .data-verde-fluo, .tit-verde-fluo { --sfondo: var(--verde-fluo); }
.distanza-blu-fluo, .data-blu-fluo, .tit-blu-fluo { --sfondo: var(--blu-fluo); }
.tit-blu-scuro { --sfondo: var(--blu-scuro); }

:is([class*="distanza-"], [class*="data-"], [class*="tit-"]) {
  background-color: var(--sfondo);
}


/* COLORE TITOLI */
.titolo-giallo { color: var(--giallo); }
.titolo-viola { color: var(--viola); }
.titolo-azzurro { color: var(--azzurro); }
.titolo-rosso { color: var(--rosso); }
.titolo-arancione { color: var(--arancione); }
.titolo-verde { color: var(--verde); }
.titolo-blu { color: var(--blu); }
.titolo-viola-fluo { color: var(--viola-fluo); }
.titolo-rosa-fluo { color: var(--rosa-fluo); }
.titolo-verde-fluo { color: var(--verde-fluo); }
.titolo-blu-fluo { color: var(--blu-fluo); }

.home header { position: fixed; }
.race { font-family: "Race Sport"; }

.scopri-sx,
.scopri-dx {
  overflow: hidden;
}


/* CORPO PRINCIPALE SINISTRO */
.scopri-sx::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 63px;
  background: var(--btn-color, var(--sfondo));
  z-index: -1;
  pointer-events: none;
}

/* PARTE SINISTRA */
.scopri-sx::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 65px;
  height: 101%;
  background: var(--btn-color, var(--sfondo));
  clip-path: polygon(0 0, 65px 0, 65px 100%, 33px 100%, 17px calc(100% - 19px), 0 calc(100% - 8px));
  z-index: -1;
  pointer-events: none;
}

/* CORPO PRINCIPALE DESTRO */
.scopri-dx::after {
  content: "";
  position: absolute;
  top: 0;
  right: 63px;
  bottom: 0;
  left: 0;
  background: var(--btn-color, var(--sfondo));
  z-index: -1;
  pointer-events: none;
}

/* PARTE DESTRA */
.scopri-dx::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 65px;
  height: 101%;
  background: var(--btn-color, var(--sfondo));
  clip-path: polygon(65px 0, 0 0, 0 100%, 32px 100%, 48px calc(100% - 19px), 65px calc(100% - 8px));
  z-index: -1;
  pointer-events: none;
}

.scopri-sx,
.scopri-dx {
  position: relative;
  align-items: center;
  background: var(--btn-color);
  background: transparent;
  isolation: isolate;
}

.b-giallo { --btn-color: var(--giallo); }
.b-viola { --btn-color: var(--viola); }
.b-azzurro { --btn-color: var(--azzurro); }
.b-rosso { --btn-color: var(--rosso); }
.b-arancione { --btn-color: var(--arancione); }
.b-verde { --btn-color: var(--verde); }
.b-blu { --btn-color: var(--blu); }
.b-blu-scuro { --btn-color: var(--blu-scuro); }
.b-oro { --btn-color: var(--oro); }
.b-bianco { --btn-color: #fff; }
.b-viola-fluo { --btn-color: var(--viola-fluo); }
.b-rosa-fluo { --btn-color: var(--rosa-fluo); }
.b-verde-fluo { --btn-color: var(--verde-fluo); }
.b-blu-fluo { --btn-color: var(--blu-fluo); }


.brxe-countdown .suffix {
  color: var(--oro);
  font-size: 18px;
  font-style: italic;
  font-family: "Race Sport";
}

.brxe-countdown .field {
  border-right: 1px solid var(--oro);
  padding-left: 20px;
  padding-right: 20px;
}

.brxe-countdown .field:last-child { border-right: 0; }

.trail-box-foto,
.news-foto {
  clip-path: polygon(calc(100% - 120px) 0, 100% 100px, 100% 100%, 0 100%, 0 0);
}

.p-slide-box-img { clip-path: polygon(calc(100% - 45px) 0, 100% 45px, 100% 100%, 0 100%, 0 0); }
.p-slide-box-img-sx { clip-path: polygon(45px 0, 100% 0, 100% 100%, 0 100%, 0 45px); }
.p-slide-det::after { clip-path: polygon(0 0, 100% 0, calc(100% - 0px) 100%, 0 100%); }
.cycling-box-foto { clip-path: polygon(0 0, 100% 0, 100% 100%, 120px 100%, 0 calc(100% - 100px)); }

.scopri-sx.b-blu,
.scopri-sx.b-blu-scuro,
.scopri-sx.b-rosa-fluo,
.scopri-sx.b-verde-fluo,
.scopri-sx.b-viola-fluo,
.scopri-sx.b-blu-fluo,
.distanza-blu,
.distanza-verde-fluo,
.distanza-blu-fluo,
.distanza-rosa-fluo,
.distanza-viola-fluo,
.scopri-sx.tit-verde-fluo .per-titolo,
.scopri-sx.tit-blu-fluo .per-titolo,
.scopri-sx.tit-viola-fluo .per-titolo,
.scopri-sx.tit-rosa-fluo .per-titolo,
.tit-blu .per-titolo {
  color: #fff !important;
}

.percorsi-slider-box { overflow: hidden; }

.p-slide-img {
  transition: transform 2000ms cubic-bezier(0.19, 1, 0.22, 1);
  will-change: transform;
}

.percorsi-slider-box:hover .p-slide-img,
.percorsi-slider-box:hover .p-slide-img {
  transform: scale(1.06);
}

.lista-oro { border-top: 1px solid var(--oro); }
.lista-oro * { transition: all 0.3s; }

.lista-oro li {
  border-bottom: 1px solid var(--oro);
  padding-top: 10px;
  padding-bottom: 10px;
}

.p-slide-data::before { width: 42px !important; }
.p-slide-data::after { left: 40px !important; }

.p-slide-info strong,
.menu-con-sottomenu strong,
.reg-query strong {
  font-family: "Race Sport";
}

.menu-con-sottomenu li a {
  display: flex;
  align-items: baseline;
  column-gap: 10px;
}

.download {
  justify-content: space-between;
  align-items: flex-start;
}

.download i {
  z-index: 9;
  transition: all 0.3s;
}

.download i::after {
  content: "";
  position: absolute;
  top: -10px;
  right: -25px;
  width: 95px;
  height: 200px;
  background-color: var(--blu-scuro);
  clip-path: polygon(41% 0, 100% 0, 100% 100%, 0% 100%);
  z-index: -1;
  pointer-events: none;
}

.download:hover i {
  color: var(--oro) !important;
  transition: all 0.3s;
}

.festival-box {
  position: relative;
  width: 100%;
  aspect-ratio: 976 / 790;
  overflow: hidden;
}

.reg-query {
  opacity: 0.7;
  transition: all 0.3s ease;
}

.reg-query[aria-current="page"],
.reg-query:hover {
  opacity: 1;
}

.per-titolo strong { font-family: "Race Sport"; }
.pettorali-box .pet-riga:nth-child(odd) { background-color: #f2f2f2; }


/* BOX GENERICI */
.festival-card {
  position: absolute !important;
  inset: 0 !important;
  width: 100%;
  height: 100%;
  display: flex;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

/* BOX INFERIORE */
.box-run {
  z-index: 1;
  clip-path: polygon(0 25%, 23% 52%, 55% 52%, 64.5% 70%, 100% 24%, 100% 100%, 0 100%);
}

/* BORDO BIANCO */
.festival-box::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: #fff;
  clip-path: polygon(0 23.5%, 23% 51%, 55.5% 51%, 64.5% 68.5%, 100% 22.5%, 100% 25%, 64.5% 71%, 54.5% 53%, 22.5% 53%, 0 26%);
  pointer-events: none;
}

/* BOX SUPERIORE */
.box-cycling {
  z-index: 3;
  clip-path: polygon(0 0, 100% 0, 100% 22.5%, 64.5% 68.5%, 55.5% 51%, 23% 51%, 0 23.5%);
}

.iscrizioni-box {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 100px), calc(100% - 120px) 100%, 0 100%);
}

.ev-a { clip-path: polygon(calc(100% - 120px) 0, 100% 100px, 100% 100%, 0 100%, 0 0); }
.ev-b { clip-path: polygon(0 0, 100% 0, 100% 100%, 120px 100%, 0 calc(100% - 100px)); }

.off-box-logo {
  position: relative;
  z-index: 3;
  width: 100%;
  max-height: 400px;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 100% 22.5%, 64.5% 68.5%, 55.5% 51%, 23% 51%, 0 23.5%);
}

.menu-con-sottomenu li {
  background: color-mix(in srgb, var(--btn-color, var(--sfondo)) 70%, transparent);
  transition: all 0.3s;
}

.menu-con-sottomenu li:hover {
  background: color-mix(in srgb, var(--btn-color, var(--sfondo)) 100%, transparent);
  transition: all 0.3s;
}

.wpml-ls-legacy-list-horizontal { padding: 1px !important; }

.wpml-ls-legacy-list-horizontal a {
  line-height: 1;
  padding: 2px 4px 6px;
}
.reg-query.tit-giallo strong {
color: var(--blu-scuro);
}

.wpml-ls-legacy-list-horizontal img { width: 20px; }
.codice-chat > div { border: 0 !important; }
.tdut-elevation { padding: 0 !important; }
.programma-acco b {
color: var(--blu-scuro);
}
.mytabella {
width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  margin-top: 30px;
}



@media (min-width: 991px) {
.slider-cycling .splide__arrows, .slider-cycling .splide__pagination {
visibility: hidden;
}


}




@media (min-width: 768px) {
.gallery-percorso img {
clip-path: polygon(calc(100% - 120px) 0, 100% 100px, 100% 100%, 0 100%, 0 0);
}
#brx-header .box-logo img,
#brx-header .box-logo a {
  display: block;
  width: 380px;
  height: auto;
  transform: scale(1);
  transform-origin: top center;
  transition: transform 0.35s ease;
  will-change: transform;
}

#brx-header.scrolling .box-logo img,
#brx-header.scrolling .box-logo a,
body:not(.home) #brx-header .box-logo img,
body:not(.home) #brx-header .box-logo a {
  transform: scale(0.80);
  transition: all 0.3s;
}


/* L'Offcanvas chiuso non deve intercettare il dito */
    .brxe-offcanvas:not(.brx-open) {
        pointer-events: none !important;
        visibility: hidden;
    }

    .brxe-offcanvas:not(.brx-open) .brx-offcanvas-inner,
    .brxe-offcanvas:not(.brx-open) .brx-offcanvas-backdrop {
        pointer-events: none !important;
    }

    /* Riattiva tutto quando viene aperto */
    .brxe-offcanvas.brx-open {
        pointer-events: auto !important;
        visibility: visible;
    }

    .brxe-offcanvas.brx-open .brx-offcanvas-inner,
    .brxe-offcanvas.brx-open .brx-offcanvas-backdrop {
        pointer-events: auto !important;
    }

    /* Gestione corretta dello scroll interno */
    .brx-offcanvas-inner {
        flex-wrap: nowrap !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        max-height: 100dvh;
    }

}


@media (max-width: 767px) {
.wpml-ls-legacy-list-horizontal img { width: 27px; }
  .brxe-countdown .field {
    padding-left: 4px;
    padding-right: 7px;
  }
.brxe-countdown .suffix { font-size: 12px; }
.ev-a, .trail-box-foto, .news-foto {
  clip-path: polygon(calc(100% - 90px) 0, 100% 70px, 100% 100%, 0 100%, 0 0);
}
.ev-b, .cycling-box-foto {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 90px 100%, 0 calc(100% - 70px));
}
.trail-box-foto, .p-slide-box-img, .cycling-box-foto {
clip-path: none;
}
.trail-box-testo .scopri-dx.b-oro {
font-size: 22px;
}
  
  
  
  
}