/*
Theme Name: BigUp
Theme URI: http://bigupclimbing.com
Author: Bagubits
Author URI: http://bagubits.it/
Description:  BigUp WP Theme
Version: 1.0
Template: Avada
*/

/* Mappa footer
   scrollabile */
   

/* 1. Reset per Mobile: il footer si comporta normalmente */
.fusion-tb-footer {
  position: relative !important;
  bottom: 0 !important;
  width: 100%;
  z-index: 9999;
  transition: none; /* Niente transizioni su mobile */
}

/* Menu */

/* menu inizialmente nascosto */
.awb-menu__main-ul {
  opacity: 0;
  transform: translateY(-100%);
  transition: opacity 0.3s ease, transform 0.3s ease;
 /* pointer-events: none;  disabilita click quando nascosto */
}

/* menu aperto */
.awb-menu.expanded .awb-menu__main-ul {
  opacity: 1 !important;
  transform: translateY(0);
  pointer-events: auto; /* permette click quando visibile */
}

/* stato in chiusura */
.awb-menu.closing .awb-menu__main-ul {
  opacity: 0;
  transform: translateY(-100%);
  /* pointer-events: none; */
}

.awb-menu.collapse-enabled ul {
    background: transparent;
}

#menu-megamenu {
    margin-top: 65px;
}

.awb-menu.collapse-enabled ul ul a { 
    background: transparent !important;
    color: #edded4 !important;
    padding: 0 0 10px 0 !important;
}

#menu-megamenu .awb-submenu__main-a {
  position: relative;
  display: flex;
  padding-bottom: 6px;
  text-decoration: none;
  z-index:2;
}
#menu-megamenu .awb-submenu__main-a::after {
    content: '';
    height: 2px;
    position: absolute;
    bottom:0;
    width: 100%;
    z-index: 3;
    display:block;
    background: #edded4!important;
}

#menu-megamenu li:nth-child(1) .awb-submenu__main-a::after,
#menu-megamenu li:nth-child(3) .awb-submenu__main-a::after {
  transform: rotate(-1deg);
}

#menu-megamenu li:nth-child(2) .awb-submenu__main-a::after,
#menu-megamenu li:nth-child(4) .awb-submenu__main-a::after {
  transform: rotate(1deg);
}

#menu-megamenu li:last-child .awb-submenu__main-a::after, .price-list br {
    display:none;
}

.awb-menu.collapse-enabled li {
    border: none !important;
}

.awb-menu.collapse-enabled.mobile-mode-collapse-to-button.expanded .awb-menu__main-ul {
    height: 100vh;
    max-height: unset !important;
    top:-35px;
    z-index: 9 !important;   

  /* Bordo inferiore inclinato di circa 12° */
  clip-path: polygon(
    0 0, 100% 0, 100% calc(100% - 21.26vw), 0 100% );
  background: transparent;
  transition: transform 0.3s ease, opacity 0.3s ease;
   
}

#menu-main-menu .awb-menu__main-a, .hidden,
.awb-menu.collapse-enabled.mobile-mode-collapse-to-button .awb-menu__m-toggle {
    display: none !important;
}

.awb-menu__mega-wrap {
    display: flex !important;
    opacity: 1 !important;
    height: 100vh;
    width: 100vw;
    visibility: visible !important;
    pointer-events: auto !important;
}

.awb-menu__mega-wrap > div {
    width: 100%;
}

label.hamburger {
    position: relative;
    display: block;
    width: 45px;
    height: 50px;
    cursor: pointer;
    background: transparent;
    pointer-events: auto;
    z-index: 99;
    right: 15px;
}

input#hamburger {
  display:none
}

/* Linee hamburger come “finestre” */
.line {
    position: absolute;
    width: 100%;
    height: 5px;
    background-color: #edded4;
}

.mask-logo {
    transition: background-color 0.3s ease;
}

.line {
    transition: background-color 0.3s ease;
}
    /*
    background-color: rgba(0,0,0,0); 
    
    -webkit-backdrop-filter: invert(1);
    backdrop-filter: invert(1);

    transition: 0.5s; 


/* posizionamento linee */
.line:nth-child(1) { top: 12px; }
.line:nth-child(2) { top: 24px; }
.line:nth-child(3) { top: 36px; }

#hamburger:checked + .hamburger .line:nth-child(1){
    transform: rotate(-8deg);
}

#hamburger:checked + .hamburger .line:nth-child(3){
    transform: rotate(-7deg);
}


/* Maschera logo sticky */
.mask-logo {
    width: 120px;
    height: 40px;
    margin: 0 auto;
    position: sticky;
    top: 32px;
    z-index: 99;
    pointer-events: initial;

    -webkit-mask-image: url('/wp-content/uploads/2026/01/logo-bigup-brown.png');
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    -webkit-mask-position: center;

    mask-image: url('/wp-content/uploads/2026/01/logo-bigup-brown.png');
    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center;

    background-color: #3a2618;
    transition: background-color 0.3s ease;
}


body.home .fusion-tb-header {
    /*pointer-events: none; */
    opacity:0;
    transition: opacity 0.3s ease;
}

body.home .fusion-tb-header.show {
      opacity:1;
       transition: opacity 0.3s ease;
}

.fusion-tb-header nav {
     pointer-events: initial;
}

/* Img Carousel */

.img-carousel .awb-imageframe-style-resa .awb-imageframe-caption {
    padding: 0 !important;
}
    
    .img-carousel .awb-imageframe-caption-title,
     .fusion-image-wrapper:hover .awb-imageframe-caption-text {
    z-index: 9;
}

.img-carousel .awb-imageframe-style-resa .awb-imageframe-caption-container:before {
    border: none !important;
}

.img-carousel-cnt-1 .awb-imageframe-style-resa .awb-imageframe-caption-container:after, 
.img-carousel-cnt-1 .awb-imageframe-style-resa:hover .awb-imageframe-caption-container:after  {
    border: none !important;
    background :#9667e0;
    content: "";
    opacity: 1;
    height: 50px;
    width: 90%;
    top: 50% !important;
    left: 50%;
    padding-bottom: 3%;
    transform: translate(-50%, -38%) rotate(4deg);
    transition: width 0.5s ease, height 0.5s ease, transform 0.5s ease;
}

.img-carousel-cnt-2 .awb-imageframe-style-resa .awb-imageframe-caption-container:after, 
.img-carousel-cnt-2 .awb-imageframe-style-resa:hover .awb-imageframe-caption-container:after  {
    border: none !important;
    background :#9667e0;
    content: "";
    opacity: 1;
    height: 110px;
    width: 90%;
    top: 50% !important;
    left: 50%;
    padding-bottom: 0;
    transform: translate(-50%, -45%) rotate(4deg);
    transition: width 0.5s ease, height 0.5s ease, transform 0.5s ease;
}
    
    .img-carousel .awb-imageframe-caption-text {
        height: 0;
    }
    
    .img-carousel-cnt-2 .awb-imageframe-style-resa:hover .awb-imageframe-caption-text {
        margin-top: 0.5em !important;
    }
    
   .img-carousel .swiper-slide:hover .awb-imageframe-caption-container .awb-imageframe-caption-title {
    padding: 0 0 0.2em 0;
}
    .img-carousel .awb-imageframe-style-resa img {
        opacity: 1;
    }
    
    
    .img-carousel-cnt-1 .img-carousel .awb-imageframe-style-resa:hover .awb-imageframe-caption-container:after,
    .img-carousel-cnt-2 .img-carousel .awb-imageframe-style-resa:hover .awb-imageframe-caption-container:after {
    height: 140%;
    width: 140%;
    }
    
    .img-carousel-cnt .fusion-content-layout-row {
        position: relative;
    }
    
    .img-carousel .awb-carousel  {
        overflow: visible !important;
    }
    
    
    .img-carousel-cnt-2 .fusion-column-wrapper {
        justify-content: flex-start;
    }
   
    
    .card-hover-button {
        background: transparent;
        border: 2px solid #edded4;
        color: #edded4;
        padding: 14px 48px;
    }
    
    .card-hover-button:hover, #gform_1 .button:hover {
        background:  #edded4;
        color: #3a2618;
    }

/* Triangle-cnt */

  .triangle-cnt:before {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
 background: #9667e0;
 clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
 height: 100%;
 transform-origin: bottom left;
 transform: skewY(-12deg);
 bottom:0;
 z-index: -1;

}

.triangle-cnt.white:before {
    background: #edded4 !important;
}

.triangle-cnt.brown:before {
    background: #3a2618 !important;
}

.sticky-cnt {
    position: sticky !important;
     z-index: 1;
     top:0;
}

.fusion-tb-header .fusion-sticky-container:not(.fusion-sticky-spacer):not(.fusion-custom-z-index) {
    z-index: 999999 !important;
}

 .fusion-fullwidth:not(.sticky-cnt) {
     z-index: 9;
 }
 
 
.sticky-active {
    position: sticky !important;
    top: 0;
    transform: translateY(0);
}

.rotated-title {
    transform: rotate(-4deg);
}

.rotated-title p {
    margin-bottom: 0;
}
.circle-list p {
    display: flex !important;
}

/* Pricing column */

.pricing-column .subtitled {
   margin-bottom: 8px !important; 
   display: flex;
   flex-direction: column;
}

.entry-pass-tab .entry-pass-tab-title {
    margin-bottom: 8px;
}
.pricing-column small {
    font-size: 12px;
}

.pricing-column sup {
    font-size: 9px;
}

.pricing-column p {
display: flex;
justify-content: space-between;
margin-bottom: 8px !important;
}

.pricing-column.block2 .subtitled:first-child {
    margin-bottom: 0 !important;
}

.pricing-column .tab-header {
display: flex;
justify-content: space-between;
  margin-bottom: 8px !important;  
}

.pricing-column:not(.block2) .tab-header ~ p {
    padding-top: 1em;
}


.entry-pass-tab {
    display: flex;
    justify-content: space-between;
}

.entry-pass-tab span:first-child, .subtitled {
    width: 55%;
}

.pricing-column-wrapper-inner .pricing-column.block2 .subtitled {
    width: 85%;
}

.pricing-column .tab-header img {
    width: 30px;
}

.pricing-column .entry-pass  {
    text-align: right;
    font-size: 10px;
    width: 15%;
}

.entry-pass p {
    text-align: right;
    display:flex;
    justify-content: flex-end;
    margin-bottom: 0 !important;
}
.entry-pass p:first-child {
    height: 53%;
    display: flex;
    align-items: flex-end;
}

span.price {
width: 15%;
text-align: right;
}

.pricing-column strong   {
    margin-top: 10px;
}

.pricing-column.block2 .tab-header strong {
    margin-top: 0;
}

  .footer-info > div:after {
    content:'';
    height: 2px;
    background: #edded4;
    transform: rotate(-2deg);
    display: block;
    margin-bottom: 20px;
}

.pricing-column .price-list:after {
   content:'';
    height: 2px;
    background: #edded4;
    transform: rotate(-2deg);
    display: block;
    margin-bottom: 20px;
    margin-top: 20px;  
}

.pricing-column h3:after, .price-list:nth-last-child(even):after {
    content:'';
    height: 2px;
    background: #edded4;
    transform: rotate(2deg);
    margin-bottom: 20px;
    display: block;
    margin-top: 20px;
}

.pricing-column:not(.brown-text) h3:after{
      background: #edded4;
}

.pricing-column.brown-text h3:after {
    background: #3a2618;
}

.pricing-column.brown-text .price-list:after {
  background: #3a2618;  
}

.price-list-info {
    padding: 0 15% !important;
}

.price-list-info img {
    width: 20px;
}

.price-list-info small {
    width: 100%;
}

.price-list-info div small {
    display: flex;
    align-items: center;
    gap: 5px;
}

.pricing-column h3 p {
    text-align: center;
    justify-content: center;
}

.pricing-column .triangle-cnt.white-triangle:before {
    background: #edded4;
}

/* Footer Form  */

.conditional-title-form, #gform_1 a, .yellow-text {
    color: #ffcb00;
 }
 
 #gform_1 a, .underline-link a {
     text-decoration: underline;
 }
 
 #gform_1 p{
     font-family: "Apfel Grotezk Regular", sans-serif;
 }
 
 
 #gform_1 input::placeholder, #gform_1 input, #gform_1 textarea  {
     font-family: "Apfel Grotezk Regular", sans-serif;
     font-size: 22px;
     line-height: 1.2;
     color:#edded4;
 }
 
 .form-intro {
     color: #edded4;
     font-weight: bold;
 }
 
 #gform_1 .gchoice label {
     font-size: 25px;
     color: #edded4;
      transition: color 0.3s ease;
 }
 
  #gform_1 .ginput_container_radio .gchoice {
         display: flex;
    align-items: center; 
  }
  
  #gform_1 .ginput_container_radio  .gfield-choice-input {
    width: 25px;
    height: 25px;
    background: transparent;
    border: 2px solid #edded4;
  }
  
  #gform_1 .ginput_container_radio  .gfield-choice-input:focus, #gform_1 input, #gform_1 textarea:focus {
      outline: none;
  }
  
  #gform_1 input:not(.gfield-choice-input), #gform_1 textarea  {
      border-color: #edded4;
      background: transparent;
      border-radius: 0px;
  }
 
  #gform_1 .button {
      width: 100%;
      border-radius: none;
      padding: 15px 0;
  }
  
  
  
  #gform_1 .ginput_container_radio  .gfield-choice-input:before {
      background-color: #ffcb00;
      width: 25px;
      height: 25px;
      border: 2px solid  #ffcb00;
      transition: background-color 0.3s ease, border-color 0.3s ease;
      
  }  #gform_1 .gfield-choice-input:checked + label {
  color: #ffcb00 !important; 
}

#gform_1 .gchoice label {
    display: inline-block; 
    padding-left: 5px;    
    position: relative;
    cursor: pointer;
}

#gform_1 .gchoice label {
    margin: 0;            
    padding-left: 10px;   
    display: inline-block;
    position: relative;
    cursor: pointer;
}

#gform_1 .gform_body > div {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.map-cnt .fusion-column-wrapper  {
    overflow: hidden;
}

#custom-preloader {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 99999;
  transition: opacity 0.8s ease;
}

#custom-preloader.hidden {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

body:not(.home) .fusion-tb-header {
    z-index: 9999 !important;
    position: relative;
}


@media only screen and (max-width: 640px) {

    .entry-pass p:first-child {
        font-size: 10px !important;
    }

    .entry-pass-tab span:first-child {
        width: 43% !important;
    }

    /* Carousel */
    .mobile-carousel, 
    .mobile-carousel .awb-swiper {
        overflow: visible !important;
    }

  body.home .mobile-carousel .awb-swiper {
        /* Creiamo lo spazio a destra per vedere la slide successiva */
        /* Più alzi questo valore, più la slide principale si stringe */
        padding: 0 70px 0 0 !important;
        
        
        /* TAGLIO NETTO A SINISTRA: nasconde tutto ciò che esce a sx */
        clip-path: inset(-100px -100vw -100px 0px) !important;
    }

    .mobile-carousel .swiper-wrapper {
        /* Reset degli allineamenti per evitare conflitti con l'effetto Resa */
        display: flex !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
    }

    .mobile-carousel .swiper-slide {
        /* Non tocchiamo il width % per non rompere l'effetto Resa */
        /* La slide occuperà lo spazio rimanente lasciato dal padding-right */
        box-sizing: border-box !important;
        opacity: 0.6;
        transition: opacity 0.3s ease;
    }

    /* La slide attiva (quella a sinistra) è sempre visibile al 100% */
    .mobile-carousel .swiper-slide-active {
        opacity: 1;
    }

    
    /* Nascondiamo la slide precedente per sicurezza se l'utente fa "bounce" a sx */
    .mobile-carousel .swiper-slide-prev {
        visibility: hidden;
    }
    
    .img-carousel-cnt-2 .awb-imageframe-style-resa .awb-imageframe-caption-container:after, .img-carousel-cnt-2 .awb-imageframe-style-resa:hover .awb-imageframe-caption-container:after {
    border: none !important;
    background: #9667e0;
    content: "";
    text-align: center;
    opacity: 1;
    height: 110px;
    width: 86%;
    top: 50% !important;
    left: 50%;
    padding-bottom: 0;
    transform: translate(-48%, -45%) rotate(4deg);
    transition: width 0.5s ease, height 0.5s ease, transform 0.5s ease;
}

.img-carousel-cnt-2 {
    margin-left: 1.92% !important;
    margin-right: 0 !important;
}



   .mobile-right-0 {
     right:0 !important;
   }
   
    
    .rotated-title p {
    font-size: clamp(46px, 4vw, 70px);
}
    .img-carousel .awb-imageframe-caption-title {
        font-size: 24px !important;
    }
    
   .img-carousel .awb-imageframe-caption-text {
       font-size: 16px;
   }
   
   .fusion-button-text {
       font-size: 18px;
   }
   
   .bigger-text p {
       font-size: 50px;
   }
   .awb-menu.collapse-enabled ul ul a span.menu-text {
       font-size: 26px;
       line-height: 1;
   }
   
   .awb-menu.collapse-enabled.mobile-mode-collapse-to-button.expanded .awb-menu__main-ul {
       height: 90vh;
   }
   
   .sx-block, .map-cnt {
       position: relative !important;
   }
   
   .pricing-column .fusion-column-wrapper {
       margin: 0 !important;
   }

  img[title="logo_FASI"] {
    max-width: 170px;
}

h2 .subtitle{
    font-size: clamp(22px, 7vw, 40px);
}

.form-intro, .white-h2 p, .white-h2 .heading {
    font-size: clamp(25px, 7vw, 30px) !important;
}

.conditional-title-form {
      font-size: clamp(20px, 7vw, 23px) !important;
}


}

@media only screen and (max-width: 1024px) {
    body p, .circle-list p, #gform_1 .gchoice label,
    #gform_1 .gchoice label {
      font-size: clamp(20px, 3vw, 25px);
}

 #gform_1 p{
     line-height: 1.2;
 }

h2 .subtitle br {
    display: none;
}

   
   #gform_1 .ginput_container_radio .gchoice {
       width: 45%;
   }
   
  #gform_1 .gfield_radio {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
  }
  
.fusion-footer iframe {
    width: 100%;
}

}

@media only screen and (min-width: 641px) and (max-width: 1024px) {
 .rotated-title p {
      font-size: clamp(70px, 10vw, 150px);
 }
 
 .rotated-title p:last-of-type {
    right: 0 !important;
}
 
 .white-h2 p, .white-h2 .heading, h2 strong, h2 .pricing-heading {
      font-size: clamp(34px, 6vw, 70px) !important;
 }
 h2 .subtitle
 {
     font-size: clamp(26px, 4vw, 40px) !important;
 }
 
 .img-carousel .awb-imageframe-caption-title {
        font-size: 28px;
    }
 
 .circle-list p {
    margin-bottom: 0 !important;
}
 
 .symmetricblock h2 {
     line-height: 0.8 !important;
 }
 
.symmetricblock img {
    width:140%;
}

.symmetricblock .fusion-image-element {
    min-height: 500px;
}
}


@media only screen and (min-width: 1025px) {
    .post-content{
        margin-top: -70px;
    }
    
#block-1, .vh-cnt {
    height: 100vh;
}

}

@media only screen and (min-width: 641px) {

    .fusion-tb-footer {
    position: fixed; /* Fixed garantisce che non lasci buchi bianchi sopra di sé */
    left: 0;
    bottom: -100%; /* Parte nascosto, gestito dal JS */
    transition: bottom 0.2s ease-out;
  }
    
    body.home .fusion-tb-header {
    pointer-events: none; 
    }
    
.conditional-title-form {
    font-size: 25px;
}
.symmetricblock {
    overflow: hidden;
}

 .symmetricblock .fusion-image-element, .symmetricblock .fusion-imageframe {
  max-width: unset;
  width: 50vw;
  height: 100%;
}

.symmetricblock img {
    max-width: unset;
    min-width: 100%;
    position: absolute;
}

.symmetricblock.sx .fusion-imageframe {
    position: absolute;
    right: 0;
}
}