.elementor-527 .elementor-element.elementor-element-b910834{--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;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:010px;--padding-bottom:0px;--padding-left:50px;--padding-right:0px;}.elementor-527 .elementor-element.elementor-element-9a59dd9{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 0px;--row-gap:10px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-527 .elementor-element.elementor-element-82c2ec6{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:start;font-family:"Quicksand", Sans-serif;font-size:4.3rem;font-weight:400;line-height:3.8rem;color:var( --e-global-color-primary );}.elementor-527 .elementor-element.elementor-element-82c2ec6 > .elementor-widget-container{margin:5px 0px 10px 0px;padding:0px 0px 0px 0px;}.elementor-527 .elementor-element.elementor-element-1c600e0{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:start;font-family:"Quicksand", Sans-serif;font-size:1.9rem;font-weight:400;line-height:2.3rem;}.elementor-527 .elementor-element.elementor-element-1c600e0 > .elementor-widget-container{margin:5px 0px 10px 0px;padding:0px 0px 0px 0px;}.elementor-527 .elementor-element.elementor-element-cdba598{--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;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-527 .elementor-element.elementor-element-106f3fd{--grid-columns:4;--grid-row-gap:0px;width:100%;max-width:100%;--grid-column-gap:5px;}.elementor-527 .elementor-element.elementor-element-106f3fd > .elementor-widget-container{padding:0px 50px 0px 50px;}.elementor-527 .elementor-element.elementor-element-0005ea9{--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;--align-items:center;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-527 .elementor-element.elementor-element-0005ea9:not(.elementor-motion-effects-element-type-background), .elementor-527 .elementor-element.elementor-element-0005ea9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-527 .elementor-element.elementor-element-53b012e{--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;}.elementor-527 .elementor-element.elementor-element-e0fd3de{text-align:end;}.elementor-527 .elementor-element.elementor-element-e0fd3de .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:3rem;font-weight:300;}.elementor-527 .elementor-element.elementor-element-17e693f > .elementor-widget-container{--e-transform-rotateZ:18deg;}.elementor-527 .elementor-element.elementor-element-17e693f{text-align:center;}.elementor-527 .elementor-element.elementor-element-17e693f .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:7.1rem;font-weight:700;}.elementor-527 .elementor-element.elementor-element-32bf86a{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-527 .elementor-element.elementor-element-23ae649 .elementor-button{font-size:1.7rem;text-transform:uppercase;}@media(max-width:1024px){.elementor-527 .elementor-element.elementor-element-106f3fd{--grid-columns:2;}}@media(max-width:767px){.elementor-527 .elementor-element.elementor-element-b910834{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-527 .elementor-element.elementor-element-9a59dd9{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:00px;--padding-bottom:00px;--padding-left:00px;--padding-right:00px;}.elementor-527 .elementor-element.elementor-element-82c2ec6 > .elementor-widget-container{margin:00px 00px 00px 00px;padding:00px 00px 00px 00px;}.elementor-527 .elementor-element.elementor-element-82c2ec6.elementor-element{--align-self:flex-start;}.elementor-527 .elementor-element.elementor-element-82c2ec6{font-size:2.1rem;line-height:2.3rem;}.elementor-527 .elementor-element.elementor-element-1c600e0.elementor-element{--align-self:flex-start;}.elementor-527 .elementor-element.elementor-element-1c600e0{font-size:1.6rem;line-height:1.7rem;}.elementor-527 .elementor-element.elementor-element-cdba598{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-527 .elementor-element.elementor-element-106f3fd{--grid-columns:2;--grid-column-gap:10px;}.elementor-527 .elementor-element.elementor-element-106f3fd > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 8px 0px 8px;}}/* Start custom CSS for text-editor, class: .elementor-element-82c2ec6 *//* Reset più aggressivo */
.elementor-527 .elementor-element.elementor-element-82c2ec6 {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 0 !important;
}

.elementor-527 .elementor-element.elementor-element-82c2ec6 *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
        margin-bottom: 0 !important;

}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1c600e0 *//* Reset più aggressivo */
.elementor-527 .elementor-element.elementor-element-1c600e0 {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 0 !important;
}

.elementor-527 .elementor-element.elementor-element-1c600e0 *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
        margin-bottom: 0 !important;

}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-106f3fd *//* Stile per il wrapper del singolo portfolio item */
.portfolio-item {
    position: relative;
    display: inline-block;
    margin: 5px;
    overflow: hidden; /* Per nascondere l'overflow dell'overlay durante il normale stato */
}

/* Stile per l'immagine */
.portfolio-item img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

/* Stile per l'overlay durante il normale stato */
.portfolio-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    opacity: 0; /* Inizialmente nascosto */
    transition: opacity 0.3s, z-index 0.3s; /* Transizioni per opacità e z-index */
    z-index: 1; /* Z-index inferiore rispetto a titolo e icona */
}

/* Stile per l'overlay durante l'hover */
.portfolio-item:hover .portfolio-overlay {
    opacity: 1; /* Mostra l'overlay */
    z-index: 2; /* Z-index superiore durante l'hover */
}

/* Stile per l'effetto di sfondo durante l'hover */
.portfolio-overlay::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(34, 119, 182, 0); /* Trasparenza iniziale */
    transition: background-color 0.3s; /* Transizione per il colore di sfondo */
    opacity: 0;
}

/* Stile per l'effetto di sfondo durante l'hover */
.portfolio-item:hover .portfolio-overlay::before {
    background-color: rgba(34, 119, 182, 0.5); /* Colore di sfondo con trasparenza */
    opacity: 1; /* Mostra l'overlay */
}

/* Stile per il titolo all'interno dell'overlay */
.portfolio-overlay h2 {
    margin: 0;
    padding: 0;
    color: #fff; /* Colore del testo */
    font-size: 20px;
    transition: opacity 0.3s; /* Transizione per l'opacità */
    opacity: 0; /* Inizialmente nascosto */
    position: relative; /* Assicura che il titolo rimanga sopra */
    z-index: 3; /* Z-index superiore a quello dell'overlay */
}

/* Stile per il titolo durante l'hover */
.portfolio-item:hover .portfolio-overlay h2 {
    opacity: 1; /* Mostra il titolo */
}

/* Stile per l'icona all'interno dell'overlay */
.portfolio-overlay i {
    color: #fff; /* Colore dell'icona */
    font-size: 3rem!important; /* Dimensione dell'icona triplicata con !important */
    transition: opacity 0.3s; /* Transizione per l'opacità */
    opacity: 0; /* Inizialmente nascosta */
    position: relative; /* Assicura che l'icona rimanga sopra */
    z-index: 3; /* Z-index superiore a quello dell'overlay */
}

/* Stile per l'icona durante l'hover */
.portfolio-item:hover .portfolio-overlay i {
    opacity: 1; /* Mostra l'icona */
}/* End custom CSS */