:root {
  --heading-1:56px;
  --heading-1-lh:67px;
  --heading-2:40px;
  --heading-2-lh:47px;
  --heading-3:20px;
  --heading-3-lh:24px;
  --heading-4:16px;
  --heading-4-lh:20px;
  --heading-5:30px;
  --heading-5-lh:34px;
}
a{text-decoration:underline;}
.heading-1{font-size:var(--heading-1);line-height:var(--heading-1-lh);}
.heading-2{font-size:var(--heading-2);line-height:var(--heading-2-lh);}
.heading-3{font-size:var(--heading-3);line-height:var(--heading-3-lh);}
.heading-4{font-size:var(--heading-4);line-height:var(--heading-4-lh);}
.heading-5{font-size:var(--heading-5);line-height:var(--heading-5-lh);}
@media (max-width: 991px) {
    :root {
        --heading-1:40px;
        --heading-1-lh:47px;
        --heading-2:30px;
        --heading-2-lh:34px;
        --heading-3:20px;
        --heading-3-lh:24px;
        --heading-4:16px;
        --heading-4-lh:20px;
        --heading-5:25px;
        --heading-5-lh:26px;
  }
}

/*pannelli*/
.windowLayerOpened{}
.windowLayerOpened:before{content:"";position:fixed;width:100%;height:100%;top:0;left:0;background:#000;opacity:0.2;z-index:999999;transition:opacity 0.3s linear;}

.btn.btn-round-edge{border-radius:27px}

.btn-gradient-color,.wpcf7 .wpcf7-submit{background-image:linear-gradient(90deg,rgba(255, 98, 0, 1) 0%, rgba(34, 42, 104, 1) 40%, rgba(30, 144, 255, 1) 70%)!important;border:none!important;background-size: 150% auto!important;color: var(--white)!important;}
.text-gradient-base-color {background-image:linear-gradient(90deg,rgba(255, 98, 0, 1) 0%, rgba(30, 144, 255, 1) 50%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}

.bg-cut{position:relative;}
.bg-cut:before{content:"";position:absolute;left:0;top:0;width:100%;height:70%;z-index:-1;background:var(--very-light-gray);}
.bg-image{background-size: cover;background-position:center center;background-repeat:no-repeat}
.bg-image.bg-top-right{background-size:auto;background-position:top right;}
.bg-image.bg-top-left{background-size:auto;background-position:top left;}
.bg-dark, .bg-dark h1, .bg-dark h2, .bg-dark h3, .bg-dark h4, .bg-dark  p{color:#fff;}
.bg-dark .feature-box-content p{color:#fff;}
.bg-dark .bg-white .feature-box-content p{color:initial;}

.feature-box .feature-box-real-overlay{position: absolute;top: 0;width: 100%;height: 100%;display: flex;flex-flow: column;text-align: center;align-items: center;justify-content: center;padding: 30px;}
.feature-box .feature-box-real-overlay.bg-image{background-size:cover;background-position:center;}
.feature-box .feature-box-overlay{z-index:99;position:relative;aspect-ratio:1/1}
.feature-box .feature-box-overlay a.btn-link{margin-top:10px;font-weight:700;display:block;}
.feature-box-icon{min-height:35px;display:flex;align-items:center;}
.stack-item.bg-very-light-gray .feature-box .feature-box-icon-rounded{background-color:#fff}
.stack-item .note-asterisk{display:block;margin:10px 0 0 0;padding:0;font-size:13px;line-height:18px}

.infinite-container {width: 100%;height:350px;overflow: hidden;position: relative;background: #000;}
.infinite-container .infinite-scroll-wrapper {display: flex;width: max-content; height: 100%;animation: scrollContinuous 60s linear infinite;}
.infinite-container .panorama-img {height: 100%;width: auto;display: block;}
.infinite-container:hover .infinite-scroll-wrapper {animation-play-state: paused;}
@keyframes scrollContinuous {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* CF7: fix */
.CF7FormWP label {width:100%;font-weight:500}
.CF7FormWP .fs-11 .wpcf7-list-item label {display: flex !important;align-items: flex-start !important;gap: 10px;margin-bottom: 0;}
.CF7FormWP .fs-11 input[type="checkbox"] {margin-top: 3px; width:15px;height:15px;flex-shrink: 0;}
.CF7FormWP p {margin-bottom: 0;width:100%;}
.CF7FormWP .wpcf7-form-control-wrap {margin-bottom:15px;display:block;}
.CF7FormWP .wpcf7-form-control-wrap input{padding:0}
.CF7FormWP .wpcf7-form-control-wrap textarea{padding:7px 0}
.CF7FormWP .wpcf7-list-item{margin:0}
.wpcf7 .wpcf7-form-control-wrap, .wpcf7 .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-acceptance, .wpcf7 .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item{display:block;width:100%}
.wpcf7 .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item label{display:flex;flex-flow:row;font-size:12px;line-height:17px;}
.wpcf7 .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item label input{width: 20px;height: 20px;margin-right: 10px;min-width: 20px;}
.wpcf7 .wpcf7-submit{border-radius:27px;font-family:var(--alt-font);font-weight:700;font-size:16px;}
.wpcf7 .wpcf7-submit:disabled{opacity:.5}
/* popup */
.showAsidePanel{cursor:pointer;}
.asidePanel{padding:30px 20px;position:fixed;z-index:9999999999;visibility:hidden;opacity:0;transition: opacity .2s linear;overflow-y:auto;background:#fff;top: 50%; left: 50%;transform: translate(-50%, -50%);right:unset;width:700px;max-width:95%;max-height:95%}
.asidePanel.opened{visibility:visible;opacity:1}
.asidePanel .closeAsidePanel{height:25px;width:auto;display:block;cursor:pointer;background:transparent;border:none;margin:0;padding:0;position:absolute;right:10px;top:10px}
.asidePanel.popup-style .main-title{font-size:var(--font-size-C);font-family:var(--secondary-font-family);display:block;margin:30px 0;line-height:1}
.asidePanel.popup-style .wrap-panel{position:relative;width:600px;max-width:90%;padding:30px;background-color:#fff;border-radius:var(--borderRadius);max-height: 90%;overflow: auto;}
.asidePanel.popup-style .text-area .main-title{font-size:20px;margin:0 0 3px 0;font-family:var(--main-font-family);line-height:22px}
.asidePanel.popup-style .text-area .sub-title{color:var(--color-E);margin-bottom:20px;display:block;}
/* FINE sidepanel popup */

.page-simple{padding-top:170px}
.page-simple h2.wp-block-heading{font-size:var(--heading-2);line-height:var(--heading-2-lh);margin:40px 0 20px 0}
.page-simple h3.wp-block-heading{font-size:var(--heading-4);line-height:var(--heading-4-lh);font-weight:500;text-transform:uppercase;margin:30px 0 15px 0}
@media (max-width: 991px) {
    .page-simple{padding-top:110px}
}

@media (max-width:1560px) {
    header .navbar [class*=col-]{padding:0}
    .navbar .navbar-nav .nav-link{padding:10px 12px}
}
@media (max-width:1380px) {
    .navbar .navbar-nav .nav-link{font-size:13px!important;padding:10px}
}