.elementor-17 .elementor-element.elementor-element-825b151{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:20px;--padding-bottom:20px;--padding-left:100px;--padding-right:100px;--z-index:9;}.elementor-17 .elementor-element.elementor-element-825b151:not(.elementor-motion-effects-element-type-background), .elementor-17 .elementor-element.elementor-element-825b151 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF57;}.elementor-17 .elementor-element.elementor-element-6879964{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-17 .elementor-element.elementor-element-e5b37bb{text-align:left;}.elementor-17 .elementor-element.elementor-element-e5b37bb img{width:100%;}.elementor-17 .elementor-element.elementor-element-70dbff3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-17 .elementor-element.elementor-element-5e5a006 .elementor-icon-wrapper{text-align:center;}.elementor-17 .elementor-element.elementor-element-5e5a006.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-5e5a006.elementor-view-framed .elementor-icon, .elementor-17 .elementor-element.elementor-element-5e5a006.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-5e5a006.elementor-view-framed .elementor-icon, .elementor-17 .elementor-element.elementor-element-5e5a006.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-5e5a006 .elementor-icon{font-size:35px;}.elementor-17 .elementor-element.elementor-element-5e5a006 .elementor-icon svg{height:35px;}.elementor-17 .elementor-element.elementor-element-48c0f04 .elementor-icon-wrapper{text-align:center;}.elementor-17 .elementor-element.elementor-element-48c0f04.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-48c0f04.elementor-view-framed .elementor-icon, .elementor-17 .elementor-element.elementor-element-48c0f04.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-48c0f04.elementor-view-framed .elementor-icon, .elementor-17 .elementor-element.elementor-element-48c0f04.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-48c0f04 .elementor-icon{font-size:45px;}.elementor-17 .elementor-element.elementor-element-48c0f04 .elementor-icon svg{height:45px;}.elementor-widget-polylang-language-switcher .cpel-switcher__lang a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-text );}.elementor-widget-polylang-language-switcher .cpel-switcher__icon{color:var( --e-global-color-text );}.elementor-widget-polylang-language-switcher .cpel-switcher__lang a:hover, .elementor-widget-polylang-language-switcher .cpel-switcher__lang a:focus{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-accent );}.elementor-widget-polylang-language-switcher .cpel-switcher__lang.cpel-switcher__lang--active a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-17 .elementor-element.elementor-element-ce760e8 .cpel-switcher__lang a{font-family:"Montserrat", Sans-serif;font-size:23px;font-weight:600;color:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-ce760e8 .cpel-switcher__icon{color:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-ce760e8 .cpel-switcher__nav{--cpel-switcher-space:15px;}.elementor-17 .elementor-element.elementor-element-ce760e8 .cpel-switcher__code{padding-left:10px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-17 .elementor-element.elementor-element-6879964{--width:25%;}.elementor-17 .elementor-element.elementor-element-70dbff3{--width:75%;}}/* Start custom CSS for html, class: .elementor-element-8121018 */.menuTop{
    display:flex;
    align-items:center;
    cursor:pointer;
    padding:8px;
    position:relative;
    overflow:hidden;
    transition:padding 0.4s cubic-bezier(.4,0,.2,1);
}

.menuTop::before{
    content:'';
    position:absolute;
    left:50%; top:50%;
    width:0; height:0;
    border-radius:50%;
    transform:translate(-50%,-50%);
    opacity:.9;
    z-index:0;
    transition:
        width 0.45s cubic-bezier(.4,0,.2,1),
        height 0.45s cubic-bezier(.4,0,.2,1);
}

.menuTop:hover::before{
    width:260%;
    height:260%;
}

.menuTop svg,
.menuTop span{
    position:relative;
    z-index:1;
}

.menuTop svg{
    width:55px;
}

.sideMenu{
    position: fixed;
    bottom: 0;
    right: 0;
    height: 86vh;
    width: 100%;
    background-image: url(https://www2meccanicabaudanocom.inlavorazione.com/wp-content/uploads/2025/10/bgmenu.jpg);
    transform: translateX(100%);
    transition: transform .4s ease;
    z-index: 10001;
    display: flex;
    justify-content: flex-start;
    padding: 65px 100px;
    align-items: flex-start;
    overflow-y: auto;
}

.sideMenuOverlay{
    position:fixed;
    inset:0;
    background:transparent;
    opacity:0;
    visibility:hidden;
    transition:opacity .4s ease;
    z-index:10000;
}

.sideMenu.open{
    transform:translateX(0);
}
.sideMenuOverlay.show{
    opacity:1;
    visibility:visible;
}

.sideMenu__content{
    width: 100%;
    display: flex;
    flex-direction: row;
    height: 100%;
}
.sideMenu__content .column {
    width: 33.33%;
    padding: 0 30px;
    border-right: 2px solid #027C99;
    height: 100%;
}
.sideMenu__content .column:last-child {
    border-right: none;
}
.sideMenu__content .column h4 {
    font-size: 26px;
    font-weight: 400;
    margin-bottom: 40px;
}
.sideMenu__content .flex1 {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.sideMenu__content .flex2 {
    position: relative;
}
.sideMenu__content .flex3 {
    position: relative;
}
.sideMenu__content .linkMenu {
    list-style: none;
    padding-inline-start: 0;
    text-align: left;
}
.sideMenu__content .linkMenu li {
    margin-bottom: 23px;
}
.sideMenu__content .linkMenu li:last-child {
    margin-bottom: 0px;
}
.sideMenu__content .linkMenu li a {
    cursor: pointer;
    font-size: 45px;
    font-weight: 700;
    transition: color 0.3s;
    text-transform: uppercase;
    font-family: 'Montserrat';
    line-height: 53px;
    color: #333;
}
.sideMenu__content .linkMenu li a:hover {
    color: #235D98;
}
.sideMenu__content .divContactSocial {
    position: absolute;
    bottom: 0;
}
.sideMenu__content .btnContact {
    font-size: 25px;
    font-weight: 700;
    font-family: 'Montserrat';
    text-transform: uppercase;
    letter-spacing: 0.4px;
    background-color: #2c5081;
    border-radius: 50px 50px 50px 50px;
    padding: 18px 28px 18px 28px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.3s;
    color: #ffffff !important;
}
.sideMenu__content .btnContact:hover {
    background-color: #3c3c41;
}

.sideMenu__content .linkSocial {
    list-style: none;
    padding-inline-start: 0;
    text-align: left;
    display: flex;
    flex-direction: row;
    gap: 15px;
    align-items: center;
    margin-top: 40px;
}
.sideMenu__content .linkSocial .svgYoutube svg {
    width: 50px;
    fill: #ff0000;
}
.sideMenu__content .linkSocial .svgLinkedin svg {
    width: 33px;
    fill: #007ebb;
}

.imgGroup {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.imgGroup img {
    width: 257px;
}

.sideMenu__close{
    position:absolute;
    top:10px;
    right:25px;
    background:none;
    border:none;
    color:#2C5081;
    font-size:30px;
    cursor:pointer;
    font-weight: 600;
}

.imgGph {
    position: absolute;
    bottom: 0;
}

.elementor-17 .elementor-element.elementor-element-8121018 button:hover {
    background-color: #235D98;
}

.no-scroll {
  overflow: hidden;
  position: fixed;   /* blocca la posizione corrente */
  width: 100%;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 1000px) and (max-width: 1550px) {
    .sideMenu {
        width: 50vw;
        padding: 80px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 999px) {
    .sideMenu {
        width: 70vw;
        padding: 80px;
        height: 100%;
        overflow-y: scroll;
    }
}
@media only screen and (max-width: 767px) {
    .sideMenu {
        width: 100%;
        padding: 50px;
        height: 100%;
        overflow-y: scroll;
    }
    .listMenuLink li a {
        font-size: 40px;
    }
    .infoDiv {
        flex-direction: column;
        gap: 10px;
    }
}/* End custom CSS */
/* Start custom CSS for polylang-language-switcher, class: .elementor-element-ce760e8 */.elementor-17 .elementor-element.elementor-element-ce760e8 ul li a{
    width: 48px;
    height: 48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    overflow:hidden;
    position:relative;
    background:transparent;
}

.elementor-17 .elementor-element.elementor-element-ce760e8 ul li a::before{
    content:'';
    position:absolute;
    inset:0;                  
    border:2px solid #ffffff;
    border-radius:50%;
    pointer-events:none;
    z-index:2;
}

.elementor-17 .elementor-element.elementor-element-ce760e8 ul li a::after{
    content:'';
    position:absolute;
    left:50%; top:50%;
    width:0; height:0;        /* parte invisibile (nessun “pallino blu”) */
    background:#fff;
    border-radius:50%;
    transform:translate(-50%,-50%);
    pointer-events:none;
    z-index:1;
    transition:
        width 0.4s cubic-bezier(.4,0,.2,1),
        height 0.4s cubic-bezier(.4,0,.2,1);
}

.elementor-17 .elementor-element.elementor-element-ce760e8 ul li a:hover::after{
    width:120%;
    height:120%;
}

.elementor-17 .elementor-element.elementor-element-ce760e8 ul li a span{
    padding-left:0 !important;
    position:relative;
    z-index:3;
}

.elementor-17 .elementor-element.elementor-element-ce760e8 ul li a:hover {
    color: #2C5081 !important
}/* End custom CSS */