/*
- VARIABILI
- GENERAL
- FONTS
- STILI CUSTOM
    - SLIDER
    - SLIDER QUERY LOOP
    - SLIDER PRODOTTI FEATURED
    - BUTTON
    - ACCORDION
- HEADER
    - LOGO
    - HAMBURGER
    - SUB MENU
    - OVERLAY
- PRELOADER
- FOOTER
    - BACK TO TOP
    - NEWSLETTER
    - RESPONSIVE
    - ICONE SOCIAL

- LOOP PRODOTTI
    - FILTRI
    - CARD VIAGGIO

- VIAGGIO SINGOLO

- PATTERNS
    - HERO SLIDER
    - CARD COLORATE
    - STRIP BOXED

- VIDEO PLAYER

- FIX IPHONE


*/




/** -------------------------------------------------------------------------------- */
/* // ! VARIABILI */
/** -------------------------------------------------------------------------------- */
:root {
  --transition: all 0.3s;
  --transition-cubic: all 0.5s cubic-bezier(0.59, 0.03, 0.2, 1);
  --basic-transition: 0.25s;
  --ease-elastic: cubic-bezier(.32, 1.259, .375, 1.15);
  --ease-snappy: cubic-bezier(.694, .048, .335, 1);
  --ease-cubic-snap: cubic-bezier(1, 0, .175, 1);
  --ease-bounce: cubic-bezier(.3, 1.4, .5, .9);
  --ease-power4: cubic-bezier(.215, .61, .355, 1);
  --ease-soft: cubic-bezier(.165, .84, .44, 1);
  --ease-snap: cubic-bezier(0, .49, .09, .97);
  --ease-sosoft: cubic-bezier(.215, .61, .355, 1);
  --ease-in-out: cubic-bezier(.4, 0, .2, 1);
  --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  --ease-out-swift: cubic-bezier(0.55, 0, 0.1, 1);
  --hop: cubic-bezier(0.625, 0.05, 0, 1);
}



/** -------------------------------------------------------------------------------- */
/* // ! GENERAL */
/** -------------------------------------------------------------------------------- */
.wp-site-blocks{
  overflow: unset;
}




/** -------------------------------------------------------------------------------- */
/* // ! FONTS */
/** -------------------------------------------------------------------------------- */
.has-titolo-grande-font-size,
.has-titolo-sezione-font-size,
.has-titolo-medio-font-size,
.has-titolo-piccolo-font-size,
.has-pretitolo-font-size,
.has-paragrafo-grande-font-size{
  /* font-family: var(--wp--preset--font-family--space-grotesk); */
  line-height: 1;
  font-weight: 400;
}
.has-titolo-grande-font-size{
  font-weight: bold;
}
.has-paragrafo-font-size {
  font-weight: 400;
}

.has-titolo-prodotto-card-font-size,
.has-titolo-sezione-font-size{
  line-height: 1.1 !important;
  font-weight: bold;
}
.has-titolo-xs-font-size{
  line-height: 1;
}




/** -------------------------------------------------------------------------------- */
/* // ! STILI CUSTOM */
/** -------------------------------------------------------------------------------- */
/*? -------------------------------------------------------------------------------- */
/*? SLIDER */
/*? -------------------------------------------------------------------------------- */
/* bullets */
.container-paginazione-slider {
  height: 40px;
}

.swiper-pagination-bullet {
  background: currentColor !important;
}

/* freccie */
.swiper-button-next:after,
.swiper-button-prev:after {
  display: none;
}

.swiper-button-next .material-symbols-outlined,
.swiper-button-prev .material-symbols-outlined {
  color: var(--wp--preset--color--custom-nero);
  font-size: 40px;
}

/* freccie bianche */
.wp-block-query.is-style-freccie-bianche .material-symbols-outlined {
  color: var(--wp--preset--color--custom-bianco) !important;
}

/* parvus */
.parvus-trigger {
  z-index: 2 !important;
}

/* altezza uguale */
.wp-block-create-block-ggwd-block-gutenberg-slider .swiper[data-altezza-uguale="true"] .swiper-slide {
  height: auto !important;
}


/* dots */
.swiper-pagination-bullet{
  transition: all 0.3s;
}
.swiper-pagination-bullet-active{
  width: 25px !important;
  border-radius: 500px !important;
  transition: all 0.3s;
}


/* ! FIX Slider tutto in alto */
.wp-block-cover.swiper-slide{
  display: flex !important;
}





/*? -------------------------------------------------------------------------------- */
/*? SLIDER QUERY LOOP */
/*? -------------------------------------------------------------------------------- */
.container-freccie-slider span {
  color: currentColor !important;
}

:root {
  --swiper-theme-color: currentColor !important;
}



/*? -------------------------------------------------------------------------------- */
/*? SLIDER PRODOTTI FEATURED */
/*? -------------------------------------------------------------------------------- */
.loop-prodotti-star,
.loop-prodotti-star .swiper-wrapper{
  overflow: visible !important;
}
.loop-prodotti-star .swiper-wrapper{
  grid-gap: 0 !important
}




/*? -------------------------------------------------------------------------------- */
/*? BUTTON */
/*? -------------------------------------------------------------------------------- */

:root {
  --cta-red: var(--wp--preset--color--custom-uno);
  --cta-h: 55px;
  --cta-w: 260px;
  --cta-radius: 15px;
  --icon-box: 38px;
  --icon-radius: 8px;
  --icon-gap-right: 12px;
  --text-pad-left: 32px;
  --anim: .4s var(--hop);
}

.wp-block-button__link.cta-expand {
  position: relative;
  display: flex;
  align-items: center;
  height: var(--cta-h);
  background: var(--cta-red);
  border: 2px solid var(--cta-red);
  border-radius: var(--cta-radius);
  overflow: hidden;
  text-decoration: none;
  cursor: pointer;
  width: max-content;
}

/* Layer bianco */
.wp-block-button__link.cta-expand .cta-bg {
  position: absolute;
  right: var(--icon-gap-right);
  top: 50%;
  transform: translateY(-50%);

  width: var(--icon-box);
  height: var(--icon-box);

  background: #fff;
  border-radius: var(--icon-radius);

  transition: all var(--anim);
  z-index: 0;
  pointer-events: none;
}

.wp-block-button__link.cta-expand:hover .cta-bg {
  right: 0;
  top: 0;
  transform: none;
  width: 100%;
  height: 100%;
}

/* Testo */
.wp-block-button__link.cta-expand .testo-pulsante {
  position: relative;
  z-index: 2;
  margin-right: 50px;
  transition: color var(--anim);
}

.wp-block-button__link.cta-expand:hover .testo-pulsante {
  color: var(--cta-red);
}

/* Box freccia */
.wp-block-button__link.cta-expand .pulsante-freccie-container {
  position: absolute;
  right: var(--icon-gap-right);
  top: 50%;
  transform: translateY(-50%);
  width: var(--icon-box);
  height: var(--icon-box);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  overflow: hidden;
  z-index: 3;
}

/* Frecce */
.wp-block-button__link.cta-expand .freccia-pulsante {
  min-width: var(--icon-box);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--cta-red);
  transition: transform var(--anim), opacity var(--anim);
  font-size: 32px;
  font-weight: bold;
}


.wp-block-button__link.cta-expand .freccia-pulsante-1 {
  transform: translateX(-30px);
  opacity: 0;
}
.wp-block-button__link.cta-expand .freccia-pulsante-2 {
  transform: translateX(-100%);
  opacity: 1;
}


.wp-block-button__link.cta-expand:hover .freccia-pulsante-1 {
  transform: translateX(0px);
  opacity: 1;
}
.wp-block-button__link.cta-expand:hover .freccia-pulsante-2 {
  transform: translateX(0%);
  opacity: 0;
}


/* * BACK BUTTON */
.is-style-back-button .testo-pulsante{
  margin-left: 45px;
  margin-right: 0px !important;
}
.is-style-back-button .cta-bg{
  left: var(--icon-gap-right);
}

.is-style-back-button .wp-block-button__link.cta-expand .pulsante-freccie-container{
  left: var(--icon-gap-right);
}
.is-style-back-button .wp-block-button__link.cta-expand:hover .cta-bg{
  left: 0;
}
.is-style-back-button .wp-block-button__link.cta-expand .freccia-pulsante-2{
  transform: translateX(-100%) rotate(180deg);
}
.is-style-back-button .wp-block-button__link.cta-expand:hover .freccia-pulsante-2{
  transform: translateX(0%) rotate(180deg);
}
.is-style-back-button .wp-block-button__link.cta-expand .freccia-pulsante-1{
  transform: translateX(-30px) rotate(180deg);
}
.is-style-back-button .wp-block-button__link.cta-expand:hover .freccia-pulsante-1{
  transform: translateX(0px) rotate(180deg);
}

.is-style-back-button .wp-block-button__link{
  background-color: transparent;
  border: none;
}
.is-style-back-button .wp-block-button__link:hover{
  background-color: transparent !important;
}
.is-style-back-button .testo-pulsante{
  color: var(--wp--preset--color--custom-nero) !important;
}
.is-style-back-button .wp-block-button__link:hover .testo-pulsante{
  color: var(--wp--preset--color--custom-bianco) !important;
}
.is-style-back-button .cta-bg{
  background-color: var(--wp--preset--color--custom-nero) !important;
}
.is-style-back-button .freccia-pulsante{
  color: var(--wp--preset--color--custom-bianco) !important;
}




/* * BTN BLUE SIMPLE */ 

.is-style-simple-blue .wp-block-button__link{
  background-color: var(--wp--preset--color--custom-tre);
  border: 2px solid var(--wp--preset--color--custom-tre);
}
.is-style-simple-blue .wp-block-button__link .freccia-pulsante{
  color: var(--wp--preset--color--custom-tre);
}
.is-style-simple-blue .wp-block-button__link .cta-bg,
.is-style-simple-blue .wp-block-button__link .pulsante-freccie-container{
  display: none;
}
.is-style-simple-blue .wp-block-button__link .testo-pulsante{
  margin-right: 0;
}
.is-style-simple-blue .wp-block-button__link:hover{
  border: 2px solid var(--wp--preset--color--custom-uno);
}
.is-style-simple-blue .wp-block-button__link:hover .testo-pulsante{
  color: var(--wp--preset--color--custom-bianco);
}



/* * BIANCO */
.is-style-btn-bianco .wp-block-button__link.cta-expand{
  background: var(--wp--preset--color--custom-bianco);
  color: var(--cta-red);
}
.is-style-btn-bianco .wp-block-button__link.cta-expand .cta-bg{
  background: var(--cta-red);
}
.is-style-btn-bianco .wp-block-button__link.cta-expand .freccia-pulsante{
  color: var(--wp--preset--color--custom-bianco);
}

.is-style-btn-bianco .wp-block-button__link:hover{
  background-color: var(--wp--preset--color--custom-bianco) !important;
}
.is-style-btn-bianco .wp-block-button__link:hover.cta-expand .testo-pulsante {
  color: var(--wp--preset--color--custom-bianco);
}



/*? -------------------------------------------------------------------------------- */
/*? ACCORDION */
/*? -------------------------------------------------------------------------------- */
.wp-block-accordion-heading__toggle{
  padding: 0px 0px 20px 0px;
}
.wp-block-accordion-heading__toggle-title{
  font-weight: 500;
  font-size: clamp(18px, 4vw, 20px);
}
.wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title{
  text-decoration: none !important;
}
.wp-block-accordion-item{
  margin-bottom: 20px;
}
.wp-block-accordion-item{
  border-bottom: 1px solid var(--wp--preset--color--custom-nero);
}
.wp-block-accordion-panel{
  padding-bottom: 20px;
}
.wp-block-accordion-item .accordion_icon{
  transition: transform 0.25s;
  will-change: transform;
}
.wp-block-accordion-item.is-open .accordion_icon{
  transform: rotate(180deg);
}
.accordion_icon{
  font-size: 40px;
}








/** -------------------------------------------------------------------------------- */
/* // ! HEADER */
/** -------------------------------------------------------------------------------- */
header {
  position: fixed;
  width: 100%;
  z-index: 99;
  transition: var(--transition);
}

.scrollato header {
  /* background-color: var(--wp--preset--color--custom-due);
  box-shadow: 0px 0px 30px #00000030; */
}

.header-logo img{
  width: 100%;
  max-width: 250px;
}


@media(max-width:1024px) {
  .header-menu {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
}


/* visibility */
@media(min-width:1351px) {
  .menu-mobile {
    display: none;
  }
}
@media(max-width:1350px) {
  .menu-desktop {
    display: none;
  }
  .header-logo img {
    max-width: 200px;
    width: 100%;
  }

  /* pointer events */
  header.site-header{
    pointer-events: none;
  }
  .pointer-events{
    pointer-events: all;
  }
}






/*? -------------------------------------------------------------------------------- */
/*? LOGO */
/*? -------------------------------------------------------------------------------- */

/* logo menu open */
.header-logo img {
  transition: opacity 0.4s, filter 0.6s;
  filter: blur(0px);
}

/* .menu-open .header-logo img {
  opacity: 0;
} */

/* @media(min-width:1301px) {
  .menu-open .header-logo img {
    opacity: 1 !important;
    filter: blur(0px);
  }
} */


.scrollato .header-logo img{
  filter: blur(20px);
  opacity: 0;
}

.scrollato .header-logo a{
  pointer-events: none;
}





/*? -------------------------------------------------------------------------------- */
/*? HAMBURGER */
/*? -------------------------------------------------------------------------------- */
/* btn hamburger */
.hamburger-mobile {
  text-align: center;
  margin: 0 !important;
}

.btn-menu {
  z-index: 34;
  background: transparent;
  min-height: 22px;
  padding-left: 0;
  padding-right: 0;
  border: none;
  color: inherit;
  cursor: pointer;
  transition: 0.3s ease;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 10px;
}

.menu-open .btn-menu,
.scrollato .btn-menu {
  background-color: transparent;
}

.btn-menu__bars {
  display: block !important;
  background: var(--wp--preset--color--custom-uno);
  position: relative;
  width: 26px;
  height: 3px;
  transition: 0.3s;
  border-radius: 50px;
}


.btn-menu__bars:before {
  content: "";
  background: var(--wp--preset--color--custom-uno);
  display: block;
  position: absolute;
  right: 0;
  width: 100%;
  height: 100%;
  transition: 0.3s;
  border-radius: 50px;
}


.btn-menu__bars:after {
  content: "";
  background: var(--wp--preset--color--custom-uno);
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  transition: 0.3s;
  border-radius: 50px;
}


.btn-menu__bars:before {
  transform: translate(0, -8px);
}

.btn-menu__bars:after {
  transform: translate(0, 8px);
}

/* menu open */
.menu-open .btn-menu .btn-menu__bars {
  background-color: transparent;
}

.menu-open .btn-menu__bars:before {
  background-color: var(--wp--preset--color--custom-uno);
  transform: rotate(45deg);
  right: 0;
  width: 100%;
}

.menu-open .btn-menu__bars:after {
  background-color: var(--wp--preset--color--custom-uno);
  transform: rotate(-45deg);
  width: 100%;
}


.btn-menu::after{
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border-radius: inherit;
}







/*? -------------------------------------------------------------------------------- */
/*? VOCI E SUB MENU */
/*? -------------------------------------------------------------------------------- */


/* ---------------------------
* main menu
---------------------------- */
.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione ul.menu {
  margin: 0;
}

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione ul.menu > li {
  font-size: 16px;
}

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione ul.menu > li > a {
  padding: 15px 0px;
  align-items: center;
  transition: all var(--basic-transition);
  font-weight: 500;
}

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione ul.menu > li.current-menu-item:not(.btn-header) > a {
  color: var(--wp--preset--color--custom-uno);
}

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione ul.menu > li > a:not(.btn-header > a):hover {
  color: var(--wp--preset--color--custom-uno);
}

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children {
  position: relative;
  display: flex;
}

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children .sub-menu {
  display: block;
  background-color: var(--wp--preset--color--custom-bianco);
  position: absolute;
  top: 80px;
  opacity: 1;
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  opacity: 0;
  visibility: hidden;
  width: max-content;
  padding: 20px 25px 10px 25px;
  border-radius: 12px;
  transform: translateX(-50%);
  left: 50%;
  box-shadow: 0px 4px 20px #00000020;
}


.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children .sub-menu:after{
  content: '';
  position: absolute;
  left: 50%;
  top: -18px;
  width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 20px solid var(--wp--preset--color--custom-bianco);
  clear: both;
  transform: translateX(-50%);
}


.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children:not(.overlay-menu .menu-item-has-children):hover .sub-menu {
  opacity: 1;
  visibility: visible;
  top: 75px;
}

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children .sub-menu > li {
  padding: 0px 0px 10px 0px;
  /* border-bottom: 1px solid var(--wp--preset--color--custom-bianco); */
  transition: all 0.3s;
}

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children .sub-menu a{
  transition: color var(--basic-transition);
  font-weight: 500;
}
.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children .sub-menu a:hover{
  color: var(--wp--preset--color--custom-uno);
}

/* .header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children .sub-menu > li:hover {
  background-color: var(--wp--preset--color--custom-uno);
} */

.header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione .menu-item-has-children > a {
  gap: 0px;
}


/* .header-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione {
  text-transform: uppercase;
} */

.header-menu .freccia-sub-menu {
  position: relative;
  top: 2px;
}



/* pulsante menu */
.btn-header {
  padding: 0;
  align-items: center;
}

.btn-header > a {
  background-color: var(--wp--preset--color--custom-uno);
  padding: 10px;
  height: min-content;
  border-radius: 4px;
  color: var(--wp--preset--color--custom-nero);
  border: 2px solid var(--wp--preset--color--custom-uno);
  transition: all var(--basic-transition);
}

@media(min-width:1025px) {
  .btn-header > a:hover {
    /* background-color: var(--wp--preset--color--custom-nero-light);
    color: var(--wp--preset--color--custom-bianco); */
    box-shadow: 0px 0px 20px var(--wp--preset--color--custom-uno);
  }
}


.main-menu-wrap,
.menu-mobile{
  box-shadow: 0px 10px 20px #00000030;
}




/* --------------------------------- 
* menu cta 
---------------------------------- */
.btn-header-rosso a,
.btn-header-verde a{
  padding-left: 15px !important;
  padding-right: 15px !important;
  border-radius: 16px;
  color: #fff;
}
.btn-header-rosso a svg,
.btn-header-verde a svg{
  max-width: 20px;
}

.btn-header-rosso a{
  background-color: var(--wp--preset--color--custom-uno);
}
.btn-header-verde a {
  background-color: var(--wp--preset--color--custom-nove);
}

.menu-menu-cta-container ul.menu{
  gap: 10px;
}

.btn-header-rosso a:hover{
  background-color: var(--wp--preset--color--custom-due);
  color: var(--wp--preset--color--custom-bianco) !important;
}
.btn-header-verde a:hover {
  background-color: #307b23;
  color: var(--wp--preset--color--custom-bianco) !important;
}


@media(max-width:1350px){
  .btn-header-rosso a,
  .btn-header-verde a {
    padding: 10px 15px !important
  }
}


/*? -------------------------------------------------------------------------------- */
/*? OVERLAY */
/*? -------------------------------------------------------------------------------- */
@media(min-width:1351px){
  .overlay-menu:not(.editor-styles-wrapper .overlay-menu){
    opacity: 0 !important;
  }
}

.overlay-menu:not(.editor-styles-wrapper .overlay-menu) {
  position: fixed;
  width: 100%;
  z-index: -1;
  /* transform: translateY(-110%); */
  transition: all 0.4s cubic-bezier(0.59, 0.03, 0.2, 1);
  top: 0;
  opacity: 0;
  pointer-events: none;
  height: 100dvh;
}

.menu-open .overlay-menu {
  /* transform: translateY(0%) !important; */
  opacity: 1 !important;
  pointer-events: all !important;
}

.overlay-menu ul.menu {
  gap: 5px;
}

.overlay-menu ul.menu > li {
  /* padding: 0 !important; */
  /* font-size: clamp(18px, 6vw, 22px); */
  font-size: 22px;
}

.overlay-menu ul.menu > li > a {
  flex-direction: row;
  align-items: center;
  /* text-transform: uppercase; */
  font-weight: 500;
  /* justify-content: center; */
}

.overlay-menu ul.menu > li.menu-item-has-children .sub-menu > li > a {
  font-size: 18px;
  margin-bottom: 3px;
  font-weight: 400;
}

.overlay-menu .freccia-sub-menu {
  position: relative;
  top: -1px;
}

.wp-block-create-block-t99-block-gutenberg-menu-navigazione .sub-menu{
  /* align-items: center; */
  margin: 5px 0px 5px 10px;
}

/* altezza massima */
.overlay-menu .wp-block-create-block-t99-block-gutenberg-menu-navigazione {
  max-height: 74vh;
  overflow: auto;
}


/* pulsante overlay menu */
.overlay-menu .btn-header {
  align-items: flex-start;
}


.main-menu-overlay a{
  transition: all 0.3s;
}
.main-menu-overlay a:hover{
  color: var(--wp--preset--color--custom-uno);
}



/** -------------------------------------------------------------------------------- */
/* // ! PRELOADER */
/** -------------------------------------------------------------------------------- */
#preloader .preloader-inner {
  flex-direction: column;
  gap: 20px;
  justify-content: center;
}

.preloader_animation {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--wp--preset--color--custom-bianco);
  box-shadow: 32px 0 var(--wp--preset--color--custom-bianco), -32px 0 var(--wp--preset--color--custom-bianco);
  position: relative;
  animation: flash 1s ease-out infinite alternate;
  margin: 20px 0px;
}

@keyframes flash {
  0% {
    background-color: #ffffff20;
    box-shadow: 32px 0 #ffffff20, -32px 0 var(--wp--preset--color--custom-bianco);
  }

  50% {
    background-color: var(--wp--preset--color--custom-bianco);
    box-shadow: 32px 0 #ffffff20, -32px 0 #ffffff20;
  }

  100% {
    background-color: #ffffff20;
    box-shadow: 32px 0 var(--wp--preset--color--custom-bianco), -32px 0 #ffffff20;
  }
}





/** -------------------------------------------------------------------------------- */
/* // FOOTER */
/** -------------------------------------------------------------------------------- */

.menu-footer ul.menu{
  margin: 0;
}



/*? -------------------------------------------------------------------------------- */
/*? BACK TO TOP */
/*? -------------------------------------------------------------------------------- */
.back_to_top:not(.block-editor-block-list__block.back_to_top){
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  opacity: 0;
  transition: opacity 0.25s, bottom 0.25s;
  cursor: pointer;
  will-change: opacity, bottom;
  z-index: 90;
}
.back_to_top .wp-block-create-block-t99-block-gutenberg-svg,
.back_to_top .wp-block-create-block-t99-block-gutenberg-svg > div,
.back_to_top .wp-block-create-block-t99-block-gutenberg-svg svg{
  height: 100%;
}

.scrollato-back-to-top .back_to_top:not(.block-editor-block-list__block.back_to_top){
  opacity: 1;
  bottom: 30px;
}




/*? -------------------------------------------------------------------------------- */
/*? RESPONSIVE */
/*? -------------------------------------------------------------------------------- */
@media(max-width:1200px) and (min-width:782px){
  .colonne-footer{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}



/*? -------------------------------------------------------------------------------- */
/*? ICONE SOCIAL */
/*? -------------------------------------------------------------------------------- */
.footer-icone-social .wp-social-link{
  border-radius: 15px;
}
.footer-icone-social .wp-social-link a{
  font-size: 30px !important;
  font-weight: bold;
  padding: 8px 8px;
  border-radius: 15px;
}
.footer-icone-social .wp-social-link a{
  transition: background-color 0.25s;
}
.footer-icone-social .wp-social-link a:hover {
  background-color: var(--wp--preset--color--custom-uno);
}
.footer-icone-social .wp-social-link:hover{
  transform: scale(1.05);
}





/** -------------------------------------------------------------------------------- */
/* // LOOP PRODOTTI */
/** -------------------------------------------------------------------------------- */
/* ! debug */
.wpc-edit-filter-set{
  display: none;
}


/*? -------------------------------------------------------------------------------- */
/*? GRIGLIA */
/*? -------------------------------------------------------------------------------- */
@media(max-width:1200px){
  .loop-prodotti-container{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  /* .loop-prodotti-container .pt-cv-content-item{
    width: 50%!important;
  } */
}
@media(max-width:781px){
  .loop-prodotti-container{
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
  /* .loop-prodotti-container .pt-cv-content-item {
    width: 100% !important;
  } */
}



/*? -------------------------------------------------------------------------------- */
/*? FILTRI */
/*? -------------------------------------------------------------------------------- */
.wpc-filter-header{
  font-weight: bold;
}
.filtri_prodotti_wrap .wpc-filters-widget-wrapper{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  max-width: 900px;
  margin: 0 auto;
}
.filtri_prodotti_wrap .wpc-instead-of-posts-found{
  display: none;
}
.filtri_prodotti_wrap .widget-title{
  font-size: 18px;
}
.filtri_prodotti_wrap .widget-title,
.filtri_prodotti_wrap .wpc-filters-section{
  margin-bottom: 0px;
}
.filtri_prodotti_wrap .wpc-filter-content{
  background-color: var(--wp--preset--color--custom-otto);
  border-radius: 8px;
  position: absolute;
  z-index: 10;
  width: max-content;
  left: 50%;
  transform: translateX(-50%);
  top: 20px;
  box-shadow: 0px 6px 14px #00000020;
  opacity: 0;
  pointer-events: none;
  transition: top var(--basic-transition), opacity var(--basic-transition);
  will-change: top, opacity;
}
.filtri_prodotti_wrap .wpc-filters-ul-list{
  margin: 0;
  padding: 20px 15px !important;
  min-width: 180px;
}
.filtri_prodotti_wrap .filtri_freccia_wrap{
  display: flex;
  align-items: center;
  gap: 10px;
}
.filtri_prodotti_wrap .wpc-filters-section{
  padding-bottom: 20px;
}
.filtri_prodotti_wrap .wpc-filters-section:hover .wpc-filter-content{
  top: 40px;
  opacity: 1;
  pointer-events: all;
}


.filtri_prodotti_wrap .filtri_freccia_svg svg{
  max-width: 14px;
}
.filtri_prodotti_wrap .filtri_freccia_svg{
  display: flex;
  align-self: center;
  transform: rotate(0deg);
  transition: transform var(--basic-transition);
  will-change: transform;
}
.filtri_prodotti_wrap .wpc-filters-section{
  cursor:pointer;
}
.filtri_prodotti_wrap .wpc-filters-section:hover .filtri_freccia_svg{
  transform: rotate(-180deg);
}


.filtri_attivi{
  margin-right: 10px;
}
.wpc-filter-chips-list{
  align-items: center;
  margin-bottom: 40px;
  flex-wrap: wrap;
  gap: 10px 0px;
}
.filtri_prodotti_wrap .wpc-filter-chips-list.wpc-empty-chips-container{
  margin-bottom: 20px;
}
li.wpc-filter-chip{
  margin-bottom: 0px !important;
}
li.wpc-filter-chip > a{
  transition: background-color var(--basic-transition);
}
li.wpc-filter-chip > a:hover{
  background-color: #00000014;
}
li.wpc-filter-chip > a:not(.wpc-chip-reset-all a){ 
  border: 1px solid var(--wp--preset--color--custom-quattro) !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
}

.wpc-chip-reset-all a{
  border: 1px solid var(--wp--preset--color--custom-due) !important;
  background-color: #cc2b3212 !important;
  color: var(--wp--preset--color--custom-due) !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
  transition: background-color var(--basic-transition);
  will-change: background-color;
}
.wpc-chip-reset-all a:hover{
  background-color: #cc2b3221 !important;
}
.wpc-filter-chips-list a:hover .wpc-chip-remove-icon{
  color: var(--wp--preset--color--custom-due) !important;
}


/* MOBILE FILTRI */
.svg_btn_filtri{
  width: 20px;
}
.pulsante-filtri-mobile{
  position: relative;
}
.pulsante-filtri-mobile .wp-block-button__link{
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: var(--wp--preset--color--custom-nero);
  border: 2px solid var(--wp--preset--color--custom-nero) !important;
}
.pulsante-filtri-mobile .wp-block-button__link svg path{
  fill: var(--wp--preset--color--custom-bianco);
  transition: all var(--basic-transition);
}
.pulsante-filtri-mobile .wp-block-button__link:hover svg path{
  fill: var(--wp--preset--color--custom-bianco);
}
.pulsante-filtri-mobile .freccia-pulsante{
  color: var(--wp--preset--color--custom-nero) !important;
}
.pulsante-filtri-mobile .wp-block-button__link:hover{
  background-color: var(--wp--preset--color--custom-nero) !important;
}
.pulsante-filtri-mobile .wp-block-button__link:hover .testo-pulsante{
  color: var(--wp--preset--color--custom-nero) !important;
}
.pulsante-footer-fixed{
  position: fixed;
  z-index: 90;
}


@media(min-width:1025px){
  .btn-filtri-mobile:not(.block-editor-block-list__block.btn-filtri-mobile){
    display: none;
  }
}
@media(max-width:1024px){
  .filtri_prodotti_wrap{
    display: none;
  }
}


/* PANNELLO FILTRI MOBILE */
.close-btn-filtri svg{
  cursor: pointer;
}

.filtri-mobile-wrapper:not(.block-editor-block-list__block.filtri-mobile-wrapper){
  position: fixed;
  z-index: 9999999;
  width: 100%;
  bottom: 0;
  transform: translateX(-100%);
  pointer-events: none;
  transition: transform 0.6s var(--hop);
  /* opacity: 0; */
}
.filtri-open .filtri-mobile-wrapper:not(.block-editor-block-list__block.filtri-mobile-wrapper){
  transform: translateX(0%);
  pointer-events: all;
  /* opacity: 1; */
}

.pannello-filtri-mobile{
  overflow-y: auto;
  max-height: 86vh;
}

.filtri-mobile-wrapper{
  min-height: 100dvh;
}

.filtri-mobile-wrapper .wpc-filters-ul-list{
  max-height: none !important;
}

.filtri-mobile-wrapper .filtri_freccia_svg{
  display: none;
}

.filtri-mobile-wrapper .wpc-filters-section{
  border-bottom: 1px solid var(--wp--preset--color--custom-cinque);
}

/* chips */
.filtering .pannello-filtri-mobile .wpc-filter-chips-list{
  margin-bottom: 90px;
}


/* BTN RISULTATI */
.btn_mostra_risultati{
  position: fixed;
  bottom: 20px;
  left: 50%;
  opacity: 0;
  transform: translateX(-50%);
  z-index: 10;
  pointer-events: none;
  will-change: opacity, bottom;
  transition: opacity 0.25s, bottom 0.25s;
}
.filtering .btn_mostra_risultati{
  bottom: 30px;
  opacity: 1;
  pointer-events: all;
}
@media(min-width:1024px) {
  .btn_mostra_risultati {
    display: none !important;
    pointer-events: none;
  }
}


/* BTN FILTRI FLOAT */
@media(min-width:1024px){
  footer .pulsante-filtri-mobile{
    display: none !important;
    pointer-events: none;
  }
}
footer .pulsante-filtri-mobile{
  opacity: 0;
  pointer-events: none;
}
footer .pulsante-filtri-mobile.filtri-float{
  position: fixed;
  /* bottom: 20px; */
  bottom: calc(20px + env(safe-area-inset-bottom));
  left: 50%;
  opacity: 0;
  transform: translateX(-50%);
  z-index: 10;
  pointer-events: none;
  will-change: opacity, bottom;
  transition: opacity 0.25s, bottom 0.25s;
}
.scrollato-back-to-top footer .pulsante-filtri-mobile.filtri-float{
  bottom: 25px;
  opacity: 1;
  pointer-events: all;
}



/* BADGE FILTRI ATTIVI */
.badge_filtri{
  background-color: var(--wp--preset--color--custom-uno);
  color: var(--wp--preset--color--custom-bianco);
  font-weight: 500;
  border-radius: 500px;
  width: 20px;
  height: 20px;
  position: absolute;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  right: -10px;
  top: -8px;
  display: none;
  font-size: 12px;
}
body.filtering .badge_filtri{
  display: flex;
}



/*? -------------------------------------------------------------------------------- */
/*? CARD VIAGGIO */
/*? -------------------------------------------------------------------------------- */
.card_viaggio_li{
  list-style-type: none !important;
  list-style: none !important;
}
.card_viaggio{
  padding-top: 0px;
  padding-bottom: 0px;
  border-radius: 20px;
  height: 100%;
}

.card_viaggio_li{
  height: 100%;
}

/* disponibilità */
.card_viaggio .block_disponibilita{
  position: absolute;
  z-index: 2;
  right: 15px;
  top: 15px;
  pointer-events: none;
}
.viaggio-al-completo,
.viaggio-ultimi-posti,
.viaggio-confermato,
.viaggio-disponibile{
  color: var(--wp--preset--color--custom-bianco);
  padding: 2px 15px;
  border-radius: 4px;
  font-size: 14px;
}

.viaggio-al-completo{
  background-color: var(--wp--preset--color--custom-nove);
}
.viaggio-ultimi-posti{
  background-color: var(--wp--preset--color--custom-dieci);
}
.viaggio-confermato{
  background-color: var(--wp--preset--color--custom-nove);
}
.viaggio-disponibile{
  background-color: #8ed1fc;
}
.viaggio-disponibile{
  color: var(--wp--preset--color--custom-nero) !important;
}

.viaggio-al-completo{
  display: none;
}


/* img featured */
.img_viaggio img{
  width: 100%;
  height: auto;
}



/* label con icona */
.wrap_icona_flex{
  gap: 5px;
}

.card_viaggi__meta_group{
  gap: 10px;
  justify-content: space-between;
}


/* prtecipanti */
.wrapper_partecipanti{
  gap: 2px;
}


/* mezzi di trasporto */
.card_viaggio .viaggio_mezzi-trasporto{
  position: absolute;
  z-index: 2;
  bottom: 5px;
  left: 15px;
  display: flex;
  gap: 5px;
  align-items: baseline;
}
.mezzo-trasporto__icon{
  width: 100%;
  max-width: 40px;
  margin-right: 2px;
}
.card_viaggio .mezzo-trasporto__name,
.pannello_info_viaggio .mezzo-trasporto__name{
  display: none;
}

.mezzi_cornacchini .item_mezzo_simple{
  display: none !important;
}




/* Prezzo */
.card_viaggio .wc-block-components-product-price{
  display: flex;
  flex-direction: column-reverse;
  align-items: self-end;
}
.card_viaggio__prezzo del .woocommerce-Price-amount bdi{
  font-weight: 400;
  color: var(--wp--preset--color--custom-cinque);
  font-size: 16px;
}
.card_viaggio__prezzo del{
  text-decoration: none;
}
.card_viaggio__prezzo del .woocommerce-Price-amount bdi{
  position: relative;
}
.card_viaggio__prezzo del .woocommerce-Price-amount bdi:after{
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: 2px;
  background-color: var(--wp--preset--color--custom-nero);
}

.card_viaggio__prezzo_cta{
  justify-content: space-between;
}

.card_viaggio__price_group{
  flex-direction: column;
  align-items: end;
}

.striked-price{
  padding: 0px;
  text-decoration: line-through;
  font-weight: 400 !important;
  font-size: 20px;
  color: #939393 !important;
}

.card_viaggio__variable_price bdi span:not(:first-child) {
  display: none;
}

.prezzo_prodotto_variabile {
  flex-direction: column-reverse;
}


/* sconto label */
.card_viaggio .wc-block-components-product-sale-badge{
  display: none;
}


/*  PREZZO */
.pt-cv-view .product .amount {
  padding-right: 0px;
}


.treno-cornacchini,
.aereo-cornacchini,
.autobus-cornacchini,
.crociera-cornacchini{
  max-width: 60px;
}


/** -------------------------------------------------------------------------------- */
/* // VIAGGIO SINGOLO */
/** -------------------------------------------------------------------------------- */
/* COLONNE TABLET */
@media(max-width:1024px){
  .viaggio_singolo__colonne{
    flex-direction: column-reverse !important;
  }
  .viaggio_singolo__back_btn{
    justify-content: center;
  }
}




/* PANNELLO INFO */
.pannello_info_viaggio{
  z-index: 10;
}
.meta__data_viaggio{
  flex-wrap: wrap;
}
.panel_info__mezzi{
  display: flex;
  gap: 5px;
  justify-content: center;
}
.panel_info__mezzi img{
  max-width: 60px;
}
.panel_info__mezzi .item_mezzo_cornacchini img{
  max-width: 80px;
}
.pannello_info_viaggio .mezzo-trasporto__item{
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--wp--preset--color--custom-uno);
}

/* se sconto */
.pannello_info_viaggio .wc-block-components-product-price{
  display: flex;
  flex-direction: column;
}
.pannello_info_viaggio .wc-block-components-product-price del{
  font-size: 20px;
  color: var(--wp--preset--color--custom-cinque);
  text-decoration-color: var(--wp--preset--color--custom-nero);
  font-weight: 500;
}

@media(min-width:1025px){
  .colonna-pannello-info{
    padding-bottom: 60px;
  }
}


/* LISTA ACF */
.lista_acf{
  padding-left: 20px;
}


/* FORM */
.campo-html-form{
  color: var(--wp--preset--color--custom-nero) !important;
  margin-bottom: 10px !important;
}
.frm_button_submit{
  transition: background-color 0.25s;
  will-change: background-color;
  border: none !important;
}
.frm_button_submit:hover{
  background-color: var(--wp--preset--color--custom-due) !important;
}
.frm_checkbox a{
  color: var(--wp--preset--color--custom-uno);
}



/* PRODOTTO VARIABILE */
.single-product.product-type-variable .wc-block-components-product-price span:not(:first-child){
  display: none;
}

.single-product.product-type-variable .panel_info__prezzo_wrap{
  display: flex;
  flex-direction: column-reverse;
}
.single-product.product-type-variable .per-person-text{
  margin-right: 0px !important;
}
.product-type-simple  .pacchetto_famiglia_box{
  display: none;
}


/* CARD PRODOTTO VARIABILE */
.loop-prodotti-card .product-type-variable .card_viaggio__prezzo .wc-block-components-product-price span:not(:first-child){
  display: none;
}
.loop-prodotti-card .product-type-variable .card_viaggio__price_group{
  flex-direction: column-reverse !important;
}
.loop-prodotti-card .per-person-text{
  line-height: 1;
}




/* PRODOTTO COMPLETO */
.disclaimer_viaggio_completo{
  margin-bottom: 0px;
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.2;
  padding: 10px;
  border-radius: 8px;
  background-color: var(--wp--preset--color--custom-tre);
  color: #fff;
  text-align: center;
  font-weight: bold;
}


/* CONDIVISIONE */
.viaggio_condivisione .wp-social-link{
  border-radius: 15px;
}

.viaggio_condivisione .wp-block-social-link-label{
  font-size: 16px !important;
}





/** -------------------------------------------------------------------------------- */
/* // PATTERNS */
/** -------------------------------------------------------------------------------- */

/*? -------------------------------------------------------------------------------- */
/*? HERO SLIDER */
/*? -------------------------------------------------------------------------------- */

/* freccie */
.pattern-hero-slider .swiper-button-next,
.pattern-hero-slider .swiper-button-prev{
  border-radius: 500px;
  width: 45px;
  height: 45px;
  background-color: currentColor;
  transform: scale(1);
  transition: transform 0.3s var(--ease-elastic), background-color 0.3s var(--ease-elastic);
  will-change: transform, background-color;
}
.pattern-hero-slider .swiper-button-next .material-symbols-outlined,
.pattern-hero-slider .swiper-button-prev .material-symbols-outlined{
  color: var(--wp--preset--color--custom-uno) !important;
  font-size: 28px;
  font-weight: bold;
  transition: color 0.3s var(--ease-elastic);
}

.pattern-hero-slider .swiper-button-next:hover,
.pattern-hero-slider .swiper-button-prev:hover{
  background-color: var(--wp--preset--color--custom-uno);
  transform: scale(1.08);
}

.pattern-hero-slider .swiper-button-next:hover .material-symbols-outlined,
.pattern-hero-slider .swiper-button-prev:hover .material-symbols-outlined{
  color: var(--wp--preset--color--custom-bianco) !important;
}

@media(max-width:781px) {
  .pattern-hero-slider .container-freccie-slider {
    display: none;
  }
}

/* dots */
.pattern-hero-slider .container-paginazione-slider{
  height: 0px;
  position: relative;
  top: -90px;
}
.pattern-hero-slider .container-paginazione-slider .swiper-pagination{
  margin-bottom: -10px;
}


/* animazioni */
/* .pattern-hero-slider .wp-block-cover.swiper-slide-active img{
  transform: scale(1);
  will-change: transform;
  transition: transform 10s var(--ease-power4);
}
.pattern-hero-slider .wp-block-cover img {
  transform: scale(1.08);
  will-change: transform;
  transition: transform 10s var(--ease-power4);
} */




/*? -------------------------------------------------------------------------------- */
/*? CARD COLORATE */
/*? -------------------------------------------------------------------------------- */
.img-card-colorata img{
  position: absolute;
  top: -140px;
  left: 30px;
}



/*? -------------------------------------------------------------------------------- */
/*? STRIP BOXED */
/*? -------------------------------------------------------------------------------- */
@media(max-width:781px){
  .pattern-strip-boxed{
    margin-top: -60px !important;
  }
}




/** -------------------------------------------------------------------------------- */
/* // VIDEO PLAYER */
/** -------------------------------------------------------------------------------- */
:root{
  --plyr-color-main: var(--wp--preset--color--custom-uno);
}
.wp-block-embed,
.wp-block-video{
  border-radius: 15px;
  overflow: hidden;
}
.plyr__control--overlaid{
  background-color: var(--wp--preset--color--custom-bianco);
  color: var(--wp--preset--color--custom-uno);
}






/** -------------------------------------------------------------------------------- */
/* // FIX IPHONE */
/** -------------------------------------------------------------------------------- */
/* .filtri-open .filtri-mobile-wrapper{
  height: 100dvh;
  inset: 0;
} */
/* .filtri-mobile-wrapper:after{
  content: '';
  position: absolute;
  width:100%;
  height: 300px;
  background-color: var(--wp--preset--color--custom-otto) !important;
  bottom: 0px;
  left: 0px;
  z-index: -1;
} */



