:root{
  --bs-primary:#3532FF;
  --bs-secondary:#120F4C;
  --bs-font-sans-serif: "Open Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-size: 20px;
  font-style: normal;
  --bs-body-line-height: 1.7;
  --bs-nav-link-font-size:16px;
  --ws-border-blue:   #526CED;
  --ws-border-red: #F46363;
  --ws-border-orange:  #ED4E00;
}

body{
    margin: 0;
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color:#272D2D;
    font-size: 20px;
    line-height: 32px;
}

img {
    margin:0;
}


h1{ 
    font-size: 60px;
    line-height: 65px;
    font-weight: 800;
}

h2{
    font-size:40px;
    line-height: 45px;
    font-weight: 600;
    color: #272D2D;
}

.titolo_pages{
    font-size:40px;
    line-height: 45px;
    font-weight: 600;
    color: #272D2D;
}


h3{
    font-size:25px;
    line-height: 30px;
    font-weight: 600;
    color: #272D2D;
}


a {
    color:#1E0FCB;
    border:none; 
    text-decoration: underline;
}

.relative{
    position: relative;
}

a:hover,
a.active{
    color:#526CED;
    
}

b,strong{
    font-weight:700;
}

.offcanvas-body a{color:#272D2D;}

#bg_onda{
  background: url(/upload/documenti/5/52/526.jpg) top left no-repeat !important;
  background-size: auto 600px !important;
}

.finale{
    background: url(../images/bg_footer.jpg);
    background-size: cover;
    font-size: 14px;
    color: #fff;
}

.finale ul{
    padding-left: 0;
}

.finale li{
    list-style-type: none;
    float: left;
    margin-right: 20px;
}

.finale a{
    color: #fff;    
    padding: 0;
    margin-right: 2rem;
    text-transform:unset!important;
}

.spazio_brand_footer{
    text-align: right;
}

.img_cactus{
    margin-left: 10px;
    width: 31px;
    height: 24px;
    margin-top: -3px;
}

.bg_header{
    background: url(../images/bg_testata2.jpg);
    background-size: cover;
}

.bg_header_bianco{
    background-color: #fff;
}

.bg_header_bianco .nav-link{
    color: #272D2D;
}

.bg_header_bianco .menu_top{
    border-bottom: 1px solid #ED4E00;
}



.navbar{
    background-color: transparent !important;height:70px;
}

.navbar-nav{
    --bs-nav-link-padding-y:0;
}


.navbar .nav-item{
    font-size: 17px;padding:0%!important
}

.nav-link{
    color: #272D2D;    font-size: 18px;
}

.nav-link:hover,
.nav-link.active{
    color: #1E0FCB !important;
}

.navbar .btn-primary{ font-size: 18px;}

.custom-dropdown .dropdown-menu {
    display: none;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.custom-dropdown.open > .dropdown-menu {
    display: flex;
    opacity: 1;
}

.menu_top{
    border-bottom: 1px solid rgb(237 245 252 / 17%);
}

.btn_blue{
    background-color: #1E0FCB;
    border:none;color: #fff !important;
}

.btn_blue:hover,
.btn_blue.active{
    background-color: #526CED;
}

.btn_white{
    background-color: #fff;
    color: #1E0FCB;
    border:none;
}

.btn_white:hover,
.btn_white.active{
    background-color: #526CED;
    color: #fff;
}

.btn_orange, 
.ws_2img_txt .txt .btn{
    background: #ED4E00;
    background: linear-gradient(90deg,rgba(237, 78, 0, 1) 59%, rgba(247, 123, 100, 1) 100%);
    color: #fff;
    border:none;
}

.btn_orange:hover,
.btn_orange.active,
.ws_2img_txt .txt .btn:hover, 
.ws_2img_txt .txt .btn.active{
    background: #ED4E00;
    background: linear-gradient(90deg,rgba(237, 78, 0, 1) 59%, rgba(82, 108, 237, 1) 100%);
    border:none;
    color: #fff;
}


.text_banner{
    position: absolute;
    z-index: 100;
    display: block;
    margin-top: 8%;
    width: 60%;
}

.carousel-control-next, .carousel-control-prev{
    width: 7%;
}

h2 b{
    color: #526CED;
}

.titolo_pages b{
    color: #526CED;
}

.bg_chiaro{
    background: url(../images/bg_image.jpg) left top no-repeat;
    background-size: contain;
}

.text_box{
    font-size: 18px;
    line-height: 25px;
}

h4 a{
    text-decoration: none;
}

h4 a:hover,
h4 a.active{
    color: #526CED;
}

.border_bottom_blue{
    border-bottom: 5px solid var(--ws-border-blue);
}

.border_bottom_red{
    border-bottom: 5px solid var(--ws-border-red);
}

.border_bottom_orange{
    border-bottom: 5px solid var(--ws-border-orange);
}

#occhiello_left .text_smallbox{
    margin: 15px 0;
}

.text_smallbox{
    font-size: 16px;
    line-height: 22px;
    background-color: #F8F9FF;
        width: fit-content;
    margin: 15px auto;
}

.text_smallbox_dark{
    font-size: 16px;
    line-height: 22px;
    background-color: #272D2D;
}

.frase_absolute{
    position: absolute;
    z-index: 100;
    top: -10px;
    left: 15px;
    width: auto;
}

.custom-list, .ws_2img_txt .txt .sottotitolo ul, .ws_text_paraghraph .corpo ul, .ws_text_paraghraph .abstract ul, .ws_pricing_plan .text_box ul {
  list-style: none;  /* rimuove i pallini default */
  padding-left: 0;   /* elimina padding del browser */
}

.custom-list li, .ws_2img_txt .txt .sottotitolo li, .ws_text_paraghraph .corpo li, .ws_text_paraghraph .abstract li, .ws_pricing_plan .text_box li  {
  position: relative;
  padding-left: 2rem; /* spazio per l’icona */
  margin-bottom: 0.5rem;
}

.custom-list li::before, .ws_2img_txt .txt .sottotitolo li:before, .ws_text_paraghraph .corpo li:before, .ws_pricing_plan .text_box li:before, .ws_text_paraghraph .abstract li:before{
  content: "\F4B5"; /* codice Unicode per bi-patch-check-fill */
  font-family: "bootstrap-icons";
  position: absolute;
  left: 0;
  top: 0;
  color: #ED4E00; /* colore icona (blu bootstrap) */
  font-size: 1.2rem;
}

.border_point{
    border-right: 1px solid #EBEBEB;
}

.accordion{
    --bs-accordion-bg:#F8F9FF;
}

.accordion-button{
    font-size: 20px;
    font-weight: bold;
    background-color:#fff;
}

.accordion-button:not(.collapsed){
    background-color:#F8F9FF;
    color: #272D2D;
}

.bg_cta{
    background: url(../images/banner_CTA.jpg) left center no-repeat;
    background-size: cover;
    min-height: 323px;
}

.list-inline-item a:hover,
.list-inline-item a.active{
    color: #fff !important;
    text-decoration: underline;
}

.bg_blu{
    background: #526CED;
    background: linear-gradient(226deg,rgba(82, 108, 237, 1) 42%, rgba(30, 15, 203, 1) 100%);
    width: 80%;
}

.bg_section_blu{
    background: url(../images/bg_blu_small1.jpg) left center no-repeat;
    background-size: cover;
}

.bg_section_blu2{
    background: url(../images/bg_blu_small.jpg) right center no-repeat;
    background-size: cover;
}

.bg_section_orange{
    background: url(../images/bg_arancio_small.jpg) left center no-repeat;
    background-size: cover;
}

.bg_orange{
    background: url(../images/bg_arancio.jpg) center center no-repeat;
    background-size: cover;
    min-height: 550px;
}

.box_up{
    margin-top: -250px;
}

.offcanva_menu{
    background: url(../images/bg_arancio_small.jpg) left center no-repeat;
    background-size: cover;
}

.bg_header .navbar-toggler {
    padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
    font-size: var(--bs-navbar-toggler-font-size);
    line-height: 1;
    color: rgb(255 255 255 / 56%);
    background-color: transparent;
    border: var(--bs-border-width) solid rgb(255 255 255 / 15%);
    border-radius: var(--bs-navbar-toggler-border-radius);
    transition: var(--bs-navbar-toggler-transition);
}

.bg_header .navbar{
    --bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
;}

.orange{
    color: #ED4E00;
}

.bg_cta_offcanva{
    background: url(../images/bg_CTA_offcanva_2.png) top center no-repeat;
}

/* Generali */

.container{padding:0;}
.btn-primary{display: inline-flex;
    justify-content: flex-start;
    align-items: center;}
.btn-primary::after {
  content: "\f138";
  font-family: "bootstrap-icons";
  margin-left: .5rem;
  display: inline-block;
  transition: transform .2s ease;
}
.marginTopHeader{margin-top:70px;}

.btn-primary:hover::after {
  transform: translateX(4px);
}
.inverse.btn-primary{background-color: var(--bs-white);color:var(--bs-primary);border:0;}
.title_box{position:relative;display:block;font-size: 35px;
  line-height: 1.5;}
.subtitle_box{position:relative;display:block;}
.text_box{position:relative;display:block; font-size: 18px;
    line-height: 1.5;}

#header, .logo_brand, .navbar-expand-lg .navbar-nav .nav-link, .btn_menu {transition: all 0.4s ease-out;}
#header{position:fixed;top:0;left:0;width:100%;height:70px;z-index:2000;background-color:var(--bs-white);border-bottom:1px solid #ED4E00;}

.headerTrasparent{background: url(../images/bg_testata2.jpg);
    background-size: cover;border-bottom: 1px solid rgb(237 245 252 / 17%)!important}
.headerTrasparent .logo_brand{filter: invert(1) brightness(5) grayscale(1) contrast(5);}
.headerTrasparent .navbar-expand-lg .navbar-nav .nav-link{color:var(--bs-white)}
.headerTrasparent .btn_menu {color: #fff;}
.headerTrasparent .navbar-toggler-icon{filter: invert(1);}

.logo_brand{width:150px;}
.logo_brand img{width:100%;}
.navbar-collapse{width:calc(100% - 150px)}
.navbar-nav{width: 100%;justify-content: flex-end;gap: 3%;padding-left: 0%;align-items: center;}
.nav-item a{white-space: nowrap;/* padding: 0!important; */}

.navbar-expand-lg .navbar-nav .dropdown-menu {
    position: fixed;
    justify-content: center;
    align-items: center;
    width: 100vw;
    max-width: 1320px;
    top: 75px;
    left: 50%;
    transform: translateX(-50%);border: 0;
    border-bottom: 4px solid #ee4e00;
}
.dropdown-item{text-wrap: unset;}
.dropdown-menu.show {
    display: flex;
}
.dropdown-menu li{width:33%;}
.dropdown-menu li a{font-size:23px;color: var(--bs-primary);white-space: normal;}
.dropdown-menu li p{font-size:18px;color: var(--bs-dropdown-link-color);padding-top: 10px;}
.dropdown-item.active, .dropdown-item:active {
    color: var(--bs-primary);
    text-decoration: none;
    background-color: transparent;
}
.dropdown-item:hover, .dropdown-item:focus {
    color: #ED4E00;
    text-decoration: none;
    background-color: transparent;
}

.menuLingua{display:flex;justify-content: flex-end;align-items: center;gap:10px;}
.menuLingua a{text-decoration:none;color:var(--bs-black)}
.menuLingua .active{color:var(--bs-primary)}

#footer{background-color:var(--bs-primary);background-image: url('../images/bg_footer.jpg');background-size: cover;}
#ws_footer{font-size: 18px;color: var(--bs-white);margin-top:0;}
.logoFooter{width:190px;position: relative;display: block;}
.logoFooter img{width:100%;}

.text_footer .label{
  font-size: 25px;
  font-weight: 700;
  margin-bottom: 20px;
}

.text_footer .item{
  margin-bottom: 20px;
}

#ws_footerend{font-size: 14px;color: var(--bs-white);}
#ws_footerend .container{border-top:1px solid rgba(255,255,255,0.5);}
#ws_footerend ul{padding-left: 0;}
#ws_footerend li{list-style-type: none;float: left;margin-right: 20px;}


#ws_bloglist_horizontal .article{border-bottom: 1px solid var(--bs-black);}

.ws_portfolio_container{position: relative;display: block;width:100%;background-image: url('../upload/documenti/5/53/539.jpg');background-position: right center;background-size: cover;}


/* widget 3 */
#ws_banner{position:relative;display:block;z-index:10;}
#ws_banner .container-fluid{
    background-size: cover;
    height: 70vh;    padding: 0;
}

.itemRisorse{position:relative;display:flex;width:100%;justify-content: flex-start;align-items: flex-start;padding:1rem 0;border-bottom:1px solid var(--bs-black)}
.itemRisorse img{position:relative;width:30%;}
.itemRisorse .txt{position:relative;width:70%;padding-left:3%;}
.itemRisorse .txtFullW{width:100%;padding-left:0%;}

.itemPortfolio:nth-child(even) {flex-direction: row-reverse;}

/* lista altre news */
.ws_list_blog{}
.ws_list_blog h2{
font-size:25px;
  margin-bottom:20px !important;
}

.ws_list_blog a{
    text-decoration: none;
}

/* widget 4 */
.ws_BannerFullScreen{}
.ws_BannerFullScreen .banner{position:relative;display:flex;width:100%;justify-content: center;align-items: center;padding: 10% 0;background-size: cover;background-position: center;border-radius:20px;}
.ws_BannerFullScreen .text{position:relative;display:block;width: 60%;margin-bottom:0;color: var(--bs-white);text-align: center;}
.ws_BannerFullScreen .text .btn{margin-top:2rem}
.ws_BannerFullScreen .title_box{color: #fff; font-size: 37px; margin-bottom: 20px;}

#ws_title_up{position:relative;display:block;z-index:20;}
#ws_title_up .box_text_banner{
    background-color: #fff;
        margin-top: -180px;
}

.ws_BannerFullScreen .btn-light{
  color:var(--bs-primary);
  border:none;
}

.ws_BannerFullScreen .btn-light:hover,
.ws_BannerFullScreen .btn-light.active{
  background-color: #fff;
  border:none;
}

/* widget 5 */
.sectionSlideshow .titolo{max-width: 1320px;
    margin: 0 auto;
    padding: 0;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);    position: absolute;
    display: block;
    width: 100%;
    z-index: 100;
    color: var(--bianco);
    justify-content: flex-start;
    align-items: flex-start;}
 .sectionSlideshow .titolo h1{position:relative;display:block;width: 50%;letter-spacing: 0;color:var(--bs-white);line-height: 1;text-align: left;transition: all 0.4s ease-out;}


/* widget 6 */
.ws_VisualTop .container{padding:0;}
.ws_VisualTop .banner{position:relative;display:block;width:100%;background-position: center;background-size: cover;}
.ws_VisualTop .banner .img{position:relative;display:block;top:0;left:0;width:100%;z-index:1;background-position: center;background-size: cover;aspect-ratio: 16/6;border-radius: 18px;}
.ws_VisualTop .banner .mask{position:absolute;display: none;top:0;left:0;width:100%;height:100%;z-index:5;background: #000;background: linear-gradient(100deg, rgba(0, 0, 0, 0) 48%, rgba(0, 0, 0, 1) 53%);}
.ws_VisualTop .text{position:absolute;top:50%;left: 50%;transform: translate(-50%,-50%);width: 80%;z-index:100;color:var(--bs-white);text-align: left;}
.ws_VisualTop .text .title_box{font-size:4rem;text-align: center;font-weight:500;line-height: 1.2;}
.ws_VisualTop .text .subtitle_box{font-size:2rem;text-align:left;font-weight:500;}
.ws_VisualTop .text .subtitle_box b, .ws_VisualTop .text .subtitle_box strong{color:var(--bs-secondary)}
.ws_VisualTop .text .btn{margin-top:2rem}
.ws_VisualTop .btn-primary{color:#fff !important;}
.ws_VisualTop .btn-primary:hover,
.ws_VisualTop .btn-primary.active{color:#fff !important; }
.ws_VisualTop h2 {font-family: "Michroma", sans-serif; color: #fff;}
/* widget 7 */
.ws_immagine_singola img{position:relative;display:block;margin:0 auto;border-radius: 18px;}
/* widget 8 */
.ws_video_pagina{padding:2rem 0}
.ws_video_pagina .container{padding:0%;}
.ws_video_pagina .container .video{position: relative;width:100%;aspect-ratio: 16/10;}
.ws_video_pagina .container .video iframe{position: absolute;width:100%;height: 100%;}
/* widget 25 */
.ws_noteIcona{position:relative;width:100%;padding:1rem 0;}
.ws_noteIcona .item{position:relative;width:100%;height:100%;padding:1.5rem;display:flex;justify-content: flex-start;align-items: flex-start;background-color:var(--bs-orange);color:var(--bs-black);gap:0.8rem}
.ws_noteIcona .item .ico{position:relative;display:flex;justify-content: center;align-items: center;width:40px;height:40px;}
.ws_noteIcona .item .ico img{position:relative;max-width:100%;max-height:100%;}
.ws_noteIcona .item .txt{position:relative;display:block;}
.ws_noteIcona .item .txt .titolo,.ws_noteIcona h3{font-size:24px!important;text-align:left;font-weight:600;}
.ws_noteIcona .item .txt .sottotitolo, .ws_noteIcona .custom-list{font-size:16px!important;text-align:left;font-weight:300;}
/* widget 28 */

.ws_paragrafi_colonna{margin:1.2rem auto;}
.ws_paragrafi_colonna .label{position:relative;display:block;width:100%;background-color: var(--colBase);}
.ws_paragrafi_colonna .titolo{color:var(--bianco);text-align:center;font-size: 2.3rem;    padding: 2.5rem 0;}
.ws_paragrafi_colonna .titolo p{margin-bottom:0;}
.ws_paragrafi_colonna .sottotitolo{font-size: 1.85rem;font-weight:400;color: var(--colBase);padding-bottom:1rem}
.ws_paragrafi_colonna .itemBox{color:var(--nero);}
.ws_paragrafi_colonna .item{color:var(--nero);padding-bottom:2.5rem}
.ws_paragrafi_colonna .item .txt{position:relative;display:block;font-size:20px;font-weight:700;}
.ws_paragrafi_colonna .item i{font-size: 2rem;margin-top: 0!important;color:var(--bs-primary)}
.ws_paragrafi_colonna .item p{font-size: 20px;font-weight: 500;}
.ws_paragrafi_colonna .item .occhiello span{position:relative;display:block;padding-bottom:0.8rem;margin-bottom:0;}
/* widget 29 */
.ws_item_box{margin-top:50px;margin-bottom:50px;}
.ws_item_box .item{position:relative;width:100%;overflow: hidden;background-position: center;background-size: cover;margin-bottom:30px;}
.ws_item_box .item a{text-decoration: none;color: inherit;}
.ws_item_box .item .testi{position:relative;width:100%;}
.ws_item_box .item .testi h4{color:var(--bs-primary)}
.ws_item_box .item .img{position: relative;display: block;width:100%;aspect-ratio: 16 / 9;background-size: cover;background-position: center;border-radius:0.5rem;margin-bottom:1rem;}
.ws_item_box .col:nth-child(3n+1) .item .img {
  border-bottom: 5px solid var(--ws-border-blue);
}

.ws_item_box .col:nth-child(3n+2) .item .img {
  border-bottom: 5px solid var(--ws-border-red);
}

.ws_item_box .col:nth-child(3n+3) .item .img {
  border-bottom: 5px solid var(--ws-border-orange);
}
/* widget 31 / 32 */
.ws_list_alternate .img{position: relative;width: 100%;height: 100%;background-position: center;background-size: cover;aspect-ratio: 16 / 9;}
.ws_list_alternate .img-icona{position:absolute;top: 0px;right: 0px;width:30%;z-index:10;}
.reverse.ws_list_alternate .img-icona{position:absolute;top: 0px;left: 0px;width:30%;z-index:10;}

/* widget 35 */
.ws_bannerFlex .boxBanner{position:relative;width:100%;}
.ws_bannerFlex .boxBanner .img{position:relative;width:60%;padding-bottom:45%;height:0;z-index:1;overflow: hidden;border-radius:18px;}
.ws_bannerFlex .boxBanner img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width: 100%;height: 100%;object-fit: cover; object-position: center;display: block;}
.ws_bannerFlex .boxBanner .titolo{color: #fff;}
.ws_bannerFlex .boxBanner .testo{position:absolute;top:50%;right:0;transform: translateY(-50%);width:70%;padding: 5rem 3rem;color:var(--bianco);border-radius:18px;z-index:10;text-align:left;background-color: #0B194F;
    color: #fff !important;}
.ws_bannerFlex .boxBanner .testo .titolo{position:relative;font-size: 42px;font-size: clamp(28px, 2vw + 5px, 42px);line-height: 1;width: 80%;}
.ws_bannerFlex .boxBanner .testo .corpo{position:relative;font-size: 20px;    font-size: clamp(14px, 1.304vw + 1.745px, 20px);padding-top:2rem;    padding-bottom: 2rem;    font-size: 18px;}
.ws_bannerFlex .fullW.boxBanner{padding-bottom: 4%;}
.ws_bannerFlex .fullW.boxBanner .img{width:100%}
.ws_bannerFlex .fullW.boxBanner .testo{top:auto;left: 5%;right:auto;transform: translateY(0%);bottom: 0;width: 60%;padding: 3rem;}
.ws_bannerFlex .reverse .boxBanner .testo{left:auto;right:5%;}

/* widget 36 */
.ws_2img_txt{padding:3rem 0 2rem}
.ws_2img_txt .row{}
.ws_2img_txt .img{position: relative;display: flex;width:98%;height:100%;justify-content: space-between;gap:3%;align-items:flex-start;}
.ws_2img_txt .img .imgA,.ws_2img_txt .img .imgB{position: relative;display: block;width:50%;height: auto;z-index:10;background-position:center;background-size: cover;border-radius:0.5rem}
.ws_2img_txt .img .imgA{}
.ws_2img_txt .img .imgB{position: relative;z-index:15;float: right;border:20px solid var(--bs-base);margin-top:5%}
.boxImgTws_2img_txtxt32 {position: relative;width: 100.1%;height:100%;overflow: hidden;box-sizing: border-box;cursor: auto;padding-bottom: 0px;margin: 0;display:flex;justify-content: center;align-items: center;}
.ws_2img_txt .txt {position:relative;display:block;width:100%;color:var(--nero);padding:0px 0 0 5%;z-index:100;text-align:left;}
.ws_2img_txt .txt .titolo {position: relative;display: block;width: 90%;font-size:37px;color:var(--colBase);}

.ws_2img_txt .txt .sottotitolo {position: relative;display: block;font-size: 20px;margin-top: 5px;text-transform: initial;line-height: 1.5;padding-top: 10px;color: var(--bs-black);letter-spacing: 0px;width: 100%;font-weight: 400;}
/* widget 37 */
.ws_testoElenco{padding-top:3rem}
.ws_testoElenco .item i{font-size: 2rem;margin-top: 0!important;color:var(--bs-primary)}

/* widget 40 */
.ws_3img_txt{}
.ws_3img_txt .row{}
.ws_3img_txt .imgA{position: relative;width:100%;}
.ws_3img_txt .imgB{position: relative;width:100%;aspect-ratio: 1 / 1;background-position: center;background-size: cover;border-radius:0.5rem;    margin-bottom: 1.5rem !important;}
.ws_3img_txt .imgC{position: relative;width:55%;margin-left:45%;aspect-ratio: 1 / 1;background-position: center;background-size: cover;border-radius:0.5rem}


/* widget 49 */
.ws_gallery_col{padding:3rem 0 5rem}
.gallery-grid {
  column-count: 4;          /* numero di colonne */
  column-gap: 7px;       /* spazio tra le colonne */
}

.gallery-grid .grid-item {
  display: inline-block;     /* necessario per columns */
  width: 100%;
  margin-bottom: 0px;
  break-inside: avoid;       /* evita che venga spezzato tra colonne */
}

.gallery-grid .grid-item a {
  display: block;
  position: relative;

  overflow: hidden;
}

.gallery-grid .grid-item .img img {
  width: 100%;
  display: block;
}

.ws_item_box .item h4{

}

.ws_item_box .item p{

}


/* Rimuove il gutter Bootstrap */
.gridMasonry {
    row-gap: 0;
    --bs-gutter-x: 0;
    --bs-gutter-y: 0;
}

/* Riduce il margine degli item */
.gridMasonry .col-4 {
    margin-bottom: 10px !important; /* o 5px, a tua scelta */
    padding-right: 5px;
    padding-left: 5px;
}
/* widget 50 */
.ws_list_cat .item .testi{padding:10px 6%}
.ws_list_cat .item h4{font-size:24px;font-weight:700;}
.ws_list_cat .item p{font-size:18px;}


/* widget 56 */
.ws_staff .item .boxFlex{position: relative;display: flex;justify-content: space-between;}
.ws_staff .item .boxFlex .txt{position: relative;display: block;width:calc(100% - 50px);text-align:left;}
.ws_staff .item .boxFlex .btn{position: relative;display: block;font-size:30px;}
/* widget 57 */
.ws_storia h3{font-family: "Michroma", sans-serif; 
  background: #3532FF;
  background: linear-gradient(90deg,rgba(53, 50, 255, 1) 34%, rgba(85, 189, 228, 1) 71%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text; /* fallback */
  color: transparent;
  font-size: 30px;
  line-height: 40px;
margin-bottom: 40px;}
.ws_storia h4{
  font-family: "Michroma", sans-serif;
  color:var(--bs-primary);
}
.ws_storia .item{position:relative;display:block;width:100%;margin-bottom:2rem; }
.ws_storia .item:before{content:"";position:relative;display:block;width:1px;height:60px;border-left:2px solid #3532FF;margin:20px auto;}
/* widget 60 */
.ws_loghi .box{position:relative;display:block;width:100%;padding:4rem;padding-bottom:0;border-radius: 20px;box-sizing: border-box;}
.ws_loghi .box .titolo{position:relative;display:block;width:100%;padding-bottom:4rem;color:var(--bs-white)}
.ws_loghi .box .titolo h3{font-size:37px; color: #fff; font-family: "Michroma", sans-serif; }
.ws_loghi .box .titolo .corpo{font-size:20px; font-family: "Open Sans", sans-serif;}
.ws_loghi .box .containerSwiper{position:relative;display:block;width:100%;padding:20px 0;border-top-left-radius: 20px; border-top-right-radius: 20px;box-sizing: border-box;background-color:var(--bs-white);}
.swiper-button-prev i, .swiper-button-next i{
      font-size: 30px;
}

#swiperLoghi .swiper-img img{
      max-height: 100%;
}

/* widget 66 */
.ws_cta_banner .cta_box {color:var(--bs-white)!important; border-radius: 18px; background-position: center;
    background-size: cover;}
.ws_cta_banner .cta_box .titolo{font-size:2rem; color: #fff;}
.ws_cta_banner .cta_box .titolo b{color:var(--bs-primary)}
.ws_cta_banner .cta_box .sottotitolo {font-size:2rem;color:var(--bs-primary)}
.ws_cta_banner .cta_box .btn{border: none;}
/* widget 67 */
.ws_button_cta .boxBtnCta{display:flex;justify-content:center;align-items: center;width:100%;padding:15px;}
/* widget 70 */
.ws_newsSwipe{position:relative;width:100%;padding:3rem 0;}
.ws_newsSwipe .title_box{text-align:center;}
.ws_newsSwipe .title_box h2{text-align:center;font-weight:500;}

.ws_newsSwipe .subtitle_box{text-align:center;padding-bottom:3}
.ws_newsSwipe .itemNews{text-decoration: none;color:var(--bs-black)}

/* 32 Img Destra + testo */
.ws_list_alternate h2{
  margin-bottom: 25px;
}

.ws_list_alternate .corpo{
  margin-bottom: 30px;
}

/* 77 MAPPA + Contatti*/
.ws_map h3{
  font-family: "Michroma", sans-serif; 
  color: #3532FF;
  font-size: 35px;
  line-height: 50px;
  color: #fff;
}

.ws_map a{
  color: #fff;
}
.ws_map .boxMap{display:flex;justify-content: center;align-items: center;}
.ws_map .img{position: relative;display: block;width: 100%;}

/* 80 pricing & plan*/
.ws_pricing_plan{margin-bottom:50px;}

.ws_form button{
  font-size: 20px;
  padding: 10px 20px;
}


#ws_footerend .img_cactus {
    margin-left: 10px;
    width: 31px;
    height: 24px;
    margin-top: -3px;
}

#ws_footerend a{
  color: #fff;
}

.social{display:flex;justify-content: center;align-items: center;gap:20px;margin:2rem 0}
.social a{font-size:24px;}

@media (min-width: 941px) and (max-width: 1110px){
    .navbar-nav {
        gap: 1%;
    }
}

@media (min-width: 992px) {
    #header .container {
        max-width: 94%;
    }
}

@media (min-width: 941px) {
  .alternate .item:nth-child(odd) {
    flex-direction: row-reverse;
  }
  .itemPortfolio:nth-child(even) {flex-direction: row-reverse;}
}       
@media (max-width: 940px) {

  :root {
    --space-5: 25px;
    --space-4: 20px;
    --space-3: 15px;
    --space-2: 10px;
    --space-1: 5px;
  }

      html, body {
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch; /* Migliora lo scroll su iOS */
        height: auto;
    }



    /* PADDING TOP */
    /* =========================
     PADDING
     ========================= */
  .p-5 { padding: var(--space-5) !important; }
  .p-4 { padding: var(--space-4) !important; }
  .p-3 { padding: var(--space-3) !important; }
  .p-2 { padding: var(--space-2) !important; }
  .p-1 { padding: var(--space-1) !important; }
  /* TOP */
  .pt-5 { padding-top: var(--space-5) !important; }
  .pt-4 { padding-top: var(--space-4) !important; }
  .pt-3 { padding-top: var(--space-3) !important; }
  .pt-2 { padding-top: var(--space-2) !important; }
  .pt-1 { padding-top: var(--space-1) !important; }

  /* BOTTOM */
  .pb-5 { padding-bottom: var(--space-5) !important; }
  .pb-4 { padding-bottom: var(--space-4) !important; }
  .pb-3 { padding-bottom: var(--space-3) !important; }
  .pb-2 { padding-bottom: var(--space-2) !important; }
  .pb-1 { padding-bottom: var(--space-1) !important; }

  /* START */
  .ps-5 { padding-left: var(--space-5) !important; }
  .ps-4 { padding-left: var(--space-4) !important; }
  .ps-3 { padding-left: var(--space-3) !important; }
  .ps-2 { padding-left: var(--space-2) !important; }
  .ps-1 { padding-left: var(--space-1) !important; }

  /* END */
  .pe-5 { padding-right: var(--space-5) !important; }
  .pe-4 { padding-right: var(--space-4) !important; }
  .pe-3 { padding-right: var(--space-3) !important; }
  .pe-2 { padding-right: var(--space-2) !important; }
  .pe-1 { padding-right: var(--space-1) !important; }

  /* X (left + right) */
  .px-5 { padding-left: var(--space-5) !important; padding-right: var(--space-5) !important; }
  .px-4 { padding-left: var(--space-4) !important; padding-right: var(--space-4) !important; }
  .px-3 { padding-left: var(--space-3) !important; padding-right: var(--space-3) !important; }
  .px-2 { padding-left: var(--space-2) !important; padding-right: var(--space-2) !important; }
  .px-1 { padding-left: var(--space-1) !important; padding-right: var(--space-1) !important; }

  /* Y (top + bottom) */
  .py-5 { padding-top: var(--space-5) !important; padding-bottom: var(--space-5) !important; }
  .py-4 { padding-top: var(--space-4) !important; padding-bottom: var(--space-4) !important; }
  .py-3 { padding-top: var(--space-3) !important; padding-bottom: var(--space-3) !important; }
  .py-2 { padding-top: var(--space-2) !important; padding-bottom: var(--space-2) !important; }
  .py-1 { padding-top: var(--space-1) !important; padding-bottom: var(--space-1) !important; }


  /* =========================
     MARGIN
     ========================= */

  /* TOP */
  .mt-5 { margin-top: var(--space-5) !important; }
  .mt-4 { margin-top: var(--space-4) !important; }
  .mt-3 { margin-top: var(--space-3) !important; }
  .mt-2 { margin-top: var(--space-2) !important; }
  .mt-1 { margin-top: var(--space-1) !important; }

  /* BOTTOM */
  .mb-5 { margin-bottom: var(--space-5) !important; }
  .mb-4 { margin-bottom: var(--space-4) !important; }
  .mb-3 { margin-bottom: var(--space-3) !important; }
  .mb-2 { margin-bottom: var(--space-2) !important; }
  .mb-1 { margin-bottom: var(--space-1) !important; }

  /* START */
  .ms-5 { margin-left: var(--space-5) !important; }
  .ms-4 { margin-left: var(--space-4) !important; }
  .ms-3 { margin-left: var(--space-3) !important; }
  .ms-2 { margin-left: var(--space-2) !important; }
  .ms-1 { margin-left: var(--space-1) !important; }

  /* END */
  .me-5 { margin-right: var(--space-5) !important; }
  .me-4 { margin-right: var(--space-4) !important; }
  .me-3 { margin-right: var(--space-3) !important; }
  .me-2 { margin-right: var(--space-2) !important; }
  .me-1 { margin-right: var(--space-1) !important; }

  /* X (left + right) */
  .mx-5 { margin-left: var(--space-5) !important; margin-right: var(--space-5) !important; }
  .mx-4 { margin-left: var(--space-4) !important; margin-right: var(--space-4) !important; }
  .mx-3 { margin-left: var(--space-3) !important; margin-right: var(--space-3) !important; }
  .mx-2 { margin-left: var(--space-2) !important; margin-right: var(--space-2) !important; }
  .mx-1 { margin-left: var(--space-1) !important; margin-right: var(--space-1) !important; }

  /* Y (top + bottom) */
  .my-5 { margin-top: var(--space-5) !important; margin-bottom: var(--space-5) !important; }
  .my-4 { margin-top: var(--space-4) !important; margin-bottom: var(--space-4) !important; }
  .my-3 { margin-top: var(--space-3) !important; margin-bottom: var(--space-3) !important; }
  .my-2 { margin-top: var(--space-2) !important; margin-bottom: var(--space-2) !important; }
  .my-1 { margin-top: var(--space-1) !important; margin-bottom: var(--space-1) !important; }
    
    #content{margin-top:70px}
    .container{width:90vw;margin:0 auto;padding:0;}
    #header,.headerTop,#header .row{height:75px!important}
    #header .row{position:relative;width: 100%;justify-content: space-between;--bs-gutter-x: 0;}
    #header .container{width:100%;}
    #header .logo{margin-left:2vw;width: 100px;display: block;}
    #header .search{position:fixed;top: auto;bottom: -120px;left:0;width: 100vw!important;z-index:2000;transform: translateY(0);background-color: #fff;padding: 0.8rem 0.8rem 1.4rem 0.8rem;}
    #header .open.search{bottom: 60px;}
  #header .text-end {position: relative;top: 0;right: auto;width: 100%;transform: translateY(0%);left: 0;justify-content: flex-start;padding-left: 20px;margin-top: 50px;}

 .navbar-nav{padding:5% 3%;        align-items: flex-start;}
    .nav-link{padding:0 2.5rem;}
.navbar .btn-primary {width:100%;justify-content: center;
           
}
    .navbar-toggler{border:0;}
    .navbar-collapse {
        position: fixed;
        display: block !important;
        top: 75px;
        left: 101vw;
        width: 100%;
        height: 100vh;
        background-color: #fff;
        opacity: 0;
        transition: left 0.4s ease, opacity 0.4s ease;
        z-index: 1000;
         background: url(../images/bg_arancio_small.jpg) left center no-repeat;
    background-size: cover;
    }

    .open.navbar-collapse {
        left: 0;
        opacity: 1;
    }

    .dropdown-menu {
        padding: 0;
        border: 0;
        margin: 0;
        padding-bottom: 20px;
        background-color: transparent;
    }
    .dropdown-item{font-size:14px;}

h1{

  font-size: 40px;

}

h2{

  font-size: 34px;
 
}


h3{

  font-size: 26px!important;
 
}
p {
    margin-top: 0;
    margin-bottom: 10px;
    
}

#title_sfumato .title_box{
  font-size: 30px;
}

.ws_item_box .item .testi{
  height:auto;
}
.navbar .nav-item {
    width: 100%;        margin-bottom: 2%;
}
.nav-item a{
  margin-bottom: 10px;
  color: #fff;
  font-size: 20px;text-align: left;padding:0;text-transform: uppercase;
}



.navbar-expand-lg .navbar-nav .dropdown-menu {
    position: relative;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 1320px;
    top: 0px;
    left: 00%;
    transform: translateX(-0%);border: 0;
}
.dropdown-item{text-wrap: unset;}
.dropdown-menu.show {
    display: block;margin-bottom:20px;padding-top:10px;
}
.dropdown-menu li{width:100%;}
.dropdown-menu li a{font-size:20px;color: #fff;background-color: transparent;}
.dropdown-menu li a .lh-base{display:none;}
.dropdown-menu li p{font-size:14px;color: var(--bs-dropdown-link-color);padding-top: 5px;}
.dropdown-item.active, .dropdown-item:active {
    color: var(--bs-primary);
    text-decoration: none;
    background-color: transparent;
}

.custom-dropdown.open > .dropdown-menu {
        display:block;
    }

.title_box{font-size: 30px;}
.subtitle_box{font-size:24px;}
.text_box{font-size:20px;}
.btn, .btn-primary{font-size:20px;}

.bg_orange{
    background: url(../images/bg_arancio.jpg) center center no-repeat;
    background-size: cover;
    min-height: 250px;
}

.bg_blu {width: 100%;}

/*  .navbar-nav{display:none;}
    .nav-link{padding:0 2.5rem;}
.navbar-toggler-icon{filter: invert(1);}
     .navbar-collapse {
        position: absolute;
        display: block !important;
        top: 17px;
        right: 15px;
    }
    .navbar-collapse .btn{margin-left:2.5rem} 

    .open.navbar-collapse {
        left: 0;
        opacity: 1;
    }

    .dropdown-menu {
        padding: 0 1.5rem;
        border: 0;
        margin: 0;
        padding-bottom: 20px;
    }
    .dropdown-item{font-size:14px;}
    .menu_offcanva .items a{font-size:24px;}
    .menu_offcanva .items .submenu a{font-size:18px;} */

  .ws_testoElenco .title_box{
      text-align:left;
      padding-bottom:0px;
      width:100%;
  }
  
  .ws_testoElenco p{
  font-size:16px !important;
    font-weight: 400 !important;
  }

  #ws_risorse .itemRisorse{display:block;}
  #ws_risorse .itemRisorse img{width:100%;}
  #ws_risorse .itemRisorse .txt{width:100%;padding:20px 0}
    
    
  .ws_text_paraghraph .occhiello{
    font-family: "Open Sans", sans-serif;
    font-size:30px;
    font-weight:bold;
    margin-bottom:15px;
  }

   .ws_VisualTop{margin-bottom:20px ;}
   
  .ws_VisualTop .banner .img{    position: absolute;
    height: 100%;}

  .ws_VisualTop .text .title_box{
    font-family: "Open Sans", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 40px !important;
    line-height:40px;
  }

  .ws_VisualTop .text{
    width: 100% !important;position:relative;top:0;left:0;transform: translate(0,0);padding:6vw;background-color:var(--bs-base2);
  }
    
.ws_2img_txt .txt .sottotitolo li{text-align: left;font-size: 20px!important;}

  /* widget 4 */
  .ws_BannerFullScreen{}
  .ws_BannerFullScreen .banner{}
  .ws_BannerFullScreen .text{width: 100%;padding:0 5%;}
  .ws_BannerFullScreen .text .btn{margin-top:20px}
  .ws_BannerFullScreen .title_box{font-size: 24px;}
  /* widget 4 */
  .sectionSlideshow{position: relative;width: 100%;height: 100vw;margin-bottom:20px;margin-top:0px;}
  .sectionSlideshow .titolo{max-width: 90vw;}
  #swiperTop .swiper-img{height:100%;background-image: url(../../../images/bg_testata2.jpg)!important;background-size: cover;}
    .prev5, .next5{display:none!important;}

  .ws_paragrafi_colonna .item{padding-bottom:20px;}
  .ws_paragrafi_colonna .item i{font-size:25px;;}
  .ws_paragrafi_colonna .item p{font-size: 20px;}
  .ws_paragrafi_colonna .text_box{padding-bottom:10px;}

  .ws_2img_txt .txt .titolo h3{font-size: 26px;line-height:1.4}
  .ws_2img_txt .txt .sottotitolo{font-size: 20px;text-align:left;}
  .ws_2img_txt .txt {padding:20px 0%!important;}
  .ws_2img_txt .img .imgB{margin-top:0;}

  .ws_noteIcona .item .txt .sottotitolo, .ws_noteIcona .custom-list{font-size: 20px!important;text-align:left;}
  
.border_point {
    border-right: 0px solid #EBEBEB;border-bottom: 1px solid #EBEBEB;
}
 
    
  .ws_noteIcona{
        padding: 1rem 0px !important;
  }

  .menu_footer .nav{display:block;text-align:center;padding-bottom:10px;}
    .menu_footer .nav .nav-item{float:none;width:100%;}
  
  .ws_loghi .box{
        padding: 20px;padding-bottom:0;
  }
   /* widget 30 */
  .ws_text_paraghraph .abstract img{padding:20px 0;}
  /* widget 32 */
  .ws_bannerFlex .boxTesti{padding:0!important} 
  .ws_bannerFlex .fullW.boxBanner .testo {
    position: relative;
    width: 100%;
    right: auto;
    padding: 5%;
    margin-top: 10px;
  }
  /* widget 50 */
  .ws_list_cat .item .img{width:100%;}
  /* widget 66 */
  .ws_cta_banner{width:100vw;}
  .ws_cta_banner .cta_box .titolo{font-size:24px;line-height: 1.4; }
  .ws_cta_banner .cta_box .sottotitolo {font-size:20px;}
  .boxCta66 .row.d-flex.align-items-center{
  padding: 3% !important;}

  .ws_cta_banner .cta_box {
        background-position:right center;
        background-repeat:no-repeat;
        background-size: cover;
        min-height: auto;
        width: 98vw;
        padding: 40px 4% 0;
    }
  .frase_absolute {
  left: 10px;
  }
  .ws_cta_banner .cta_box .btn{margin-top:40px;}
  /* widget 77 */
  .ws_map .boxMap{margin-bottom:50px;}
/* widget 80 */
    .box_up{
        margin-top: 50px;
    }
  .sectionSlideshow .titolo {
    top: 50%;
  }
  
  .sectionSlideshow .titolo h1 {
  	width: 100%;
    line-height: 1.3em;
  }

    #ws_footerend li{float:none;width:100%;}
  
  .ws_item_box h2, .ws_item_box p {
  text-align: left!important;
  }
} 

@media (min-width: 940px) and (max-width: 1440px) {
  .sectionSlideshow .titolo {
  	padding: 50px;
    top: 45%;
  }
  .sectionSlideshow .titolo h1 {
  font-size: 50px;
  }
}        