

.homeDueColFull{

    overflow: visible;

        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-column-gap: 2rem;

        @media only screen and (max-width: 1260px) {
            column-gap: 2rem;
        }

        @media only screen and (max-width: 850px) {
            grid-template-columns: 1fr;
        }

        &:before {
            content: "";
            position: absolute;
            overflow: clip;
            display: block;
            bottom: 0;
            left: 0;

            width: 100%;
            height: 2rem;
            background: var(--bianco);

            z-index: 0;

            @media only screen and (max-width: 850px) {
                display: none;
            }
        }

        .immagine {

			position: relative;
        	overflow: clip;
			display: block;
			width: 100%;
            min-height: 100%;
			margin: 0 auto;
            box-shadow: 0px 60px 32px -40px rgba(0, 0, 0, 0.25);

			&::before {
				content: '';
				display: block;
				padding-top: 56%;
			}

			picture,
			#picture {
				position: absolute;
        		overflow: clip;
				top: 0%;
				left: 0%;
				width: 100%;
				height: 100%;

				img {
					position: absolute;
					margin: auto auto;
					left: -10000%;
					right: -10000%;
					top: -10000%;
					bottom: -10000%;
					/*queste caratteristiche sotto x effetto COVER*/
                    max-width: 10000% !important;
                    min-width: 1000%;
                    min-height: 1000%;
                    -webkit-transform: scale(0.1);
                    transform: scale(0.1);
                    object-fit: cover;
					/*queste caratteristiche sotto x effetto CONTAIN
					object-fit: contain;
					max-width: 100%;
					max-height: 100%;
					-webkit-transform: scale(1);
					transform: scale(1);*/
				}
			}
		}


        .box-testo{

            padding: 6rem 0 0;
            padding-right: calc((100svw - var(--larghezza)) / 2);

            min-height: 100%;

            @media only screen and (max-width: 1600px) {
                padding-right: 5svw;
            }

            @media only screen and (max-width: 850px) {
                padding: 3rem 5svw 0;
                text-align: center;

                .txt-dx{
                    text-align: center;
                }
            }
            
        }

}

.homeCarosello{
    overflow: visible;

    @media only screen and (max-width: 850px) {
        order: 999;
    }

    .flickity-viewport{
        overflow: visible;
        overflow-x: clip !important;
    }
    
    .cella {

			position: relative;
        	overflow: visible;
			display: block;
			width: calc( 100% / 3 );
            min-width: 280px;
			margin: 0 16px;
            

			&::before {
				content: '';
				display: block;
				padding-top: 125%;
			}

			picture,
			#picture {
				position: absolute;
        		overflow: clip;
				top: 0%;
				left: 0%;
				width: 100%;
				height: 100%;

                border-radius: 8px;
            box-shadow: 0px 30px 32px -40px rgba(0, 0, 0, 0.25);

				img {
					position: absolute;
					margin: auto auto;
					left: -10000%;
					right: -10000%;
					top: -10000%;
					bottom: -10000%;
					/*queste caratteristiche sotto x effetto COVER*/
                    max-width: 10000% !important;
                    min-width: 1000%;
                    min-height: 1000%;
                    -webkit-transform: scale(0.1);
                    transform: scale(0.1);
                    object-fit: cover;
					/*queste caratteristiche sotto x effetto CONTAIN
					object-fit: contain;
					max-width: 100%;
					max-height: 100%;
					-webkit-transform: scale(1);
					transform: scale(1);*/
				}
			}
		}
}


.home_card-griglia{
    overflow: visible;
    padding: 0;

    article{
        padding: 0 !important;
        display: grid;
        grid-template-columns: minmax(280px, 1fr) minmax(280px, 1fr) minmax(280px, 1fr);
        grid-column-gap: 2rem;
        grid-row-gap: 2rem;
        z-index: 1;

        @media only screen and (max-width: 1260px) {
            grid-template-columns: minmax(280px, 1fr) minmax(280px, 1fr);
        }

        @media only screen and (max-width: 850px) {
            grid-template-columns: 1fr;
        }
    }


    &:before, &:after {
        content: "";
        position: absolute;
        overflow: clip;
        display: block;
        width: 100%;
        height: 2rem;
        background: var(--bianco);
        z-index: 0;
    
    }

    &::before {
        top: 0;
    }

    &::after {
        bottom: 0;
    }

}



.home-marchi{
    
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 2rem;
    align-items: center;

    @media only screen and (max-width: 850px) {
        grid-template-columns: 1fr;
    }   

    .box-testo{
        padding-left: calc((100svw - var(--larghezza)) / 2);

        @media only screen and (max-width: 1600px) {
            padding-left: 5svw;
        }

        @media only screen and (max-width: 850px) {
            padding: 0 5svw;
            text-align: center;
        }
    }

                .carosello{

                    overflow: hidden;

                    .cella{

                        position: relative;
                        overflow:visible;
                        display: block;
                        z-index: 1;
                        width: 240px;
                        height: 90px;
                        margin: 0 3rem;

                        &::before {
                            content: "";
                            display: block;
                            padding-top: 30%;
                        }

                        picture,
                        #picture {
                            position: absolute;
                            overflow: visible;
                            z-index: 1;
                            top: 2%;
                            left: 2%;
                            width: 96%;
                            height: 96%;

                            img {
                                position: absolute;
                                overflow: visible;
                                margin: auto auto;
                                left: -10000%;
                                right: -10000%;
                                top: -10000%;
                                bottom: -10000%;
                                /*queste caratteristiche sotto x effetto COVER*/
                                /*max-width: 10000% !important;
											min-width: 1000%;
											min-height: 1000%;
											-webkit-transform:scale(0.1);
											transform: scale(0.1);
											
											queste caratteristiche sotto x effetto CONTAIN*/
                                object-fit: contain;
                                max-width: 10%;
                                max-height: 10%;
                                -webkit-transform: scale(10);
                                transform: scale(10);
                            }
                        }
                    }
                }           
}


/* Marquee loghi: styling base per #Mslider e le inner clones */
#Mslider{
    position: relative;
    overflow: hidden;
    width: 100%;

    &::before {
            position: absolute;
            overflow: clip;
            content: "";
            display: block;
            width: 140px;
            height: 100%;
            top: 0;
            left: 0;
            background: linear-gradient(to right, #ffffff 20%, rgba(255, 255, 255, 0));
            pointer-events: none;

            z-index: 2;

            @media only screen and (max-width: 850px) {
                display: none;
            }
        } 
}

#Mslider > .Mslider__inner{
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    will-change: transform;
}






.home-soluzioni{

    article{
        padding: 0 !important;
        display: grid;
        grid-template-columns: 3fr 2fr;
        grid-column-gap: 4rem;
        grid-row-gap: 2rem;
        z-index: 1;

        @media only screen and (max-width: 850px) {
            grid-template-columns: 1fr;
        }

        .card-list{
            display: grid;
            grid-template-columns: 1fr;
            gap: 1rem;
        }

        .sticky-cont{
            >*{
                position: sticky;
                top: 152px;
            }

            @media only screen and (max-width: 850px) {

                order: -1;

                >*{
                    position: static;
                    top: auto;
                    text-align: center;
                    margin-bottom: 2rem;
                }
            }
        }
    }


    #parallax-sol-bg{
        position: absolute;
        overflow: clip;
        display: block;
        bottom: -164px;
        right: 3svw;
        width: 580px;
        height: 110svh;
        background: url('/css/images/bg02.png') no-repeat center center;
        background-size: contain;
        z-index: 0;
        opacity: 1;
    }   

}




.home-approfondimenti{
    #JS_approfondimenti{

        overflow : visible;

        .cella{
            width: calc( 100% / 3 - 2rem );
            min-width: 280px;
            max-width: 70svw;
            margin: 0 1rem;

            min-height: 100%;
        }
    }
}




/* FIXING MENU E LOGO IN PRESENZA DI HEADER */

#contenitore {
    padding-top: 0 !important;
}

#logo:not(.basso, .mostralo, .inmenu) {
    
    top: 45px;

    filter: brightness(1.2);

    @media only screen and (max-width: 850px){
        top: 16px;
    }

    @media only screen and (max-width: 480px){
        top: 22px;
    }
}

.menu:not(.basso, .mostralo, .inmenu){

        filter: brightness(1);

        background-color: transparent;
        box-shadow:0 0 20px 10px rgba(0, 0, 0, 0);
        height: 160px;

        a {
            color: var(--bianco);

            &:hover {
                color: var(--colore01chiaro);
            }
        }

        .sopra{


            .toplogo{
                img{
                    filter: invert(0);
                }
            }

            .social{
                .icona{
                    span{
                        
                    }
                }
            }
        }

        .sotto{

            /* border-top: var(--bordobase) solid var(--nero); */

            height: 116px;
            border-bottom: var(--bordobase) solid var(--nero);

            &:not(.basso){
                background: transparent;
                border-bottom: var(--bordobase) solid var(--bianco);
                
                backdrop-filter: blur(0) saturate(1);
                -webkit-backdrop-filter: blur(0) saturate(1);
            }

            @media only screen and (max-width: 850px) {
                border-color: transparent;
            }

            .mobnav {

                .hamburger {
                    &::before, &::after, .linea {
                        background: var(--bianco);
                    }
                }
            }

        }
}

.menu.inmenu{
    .mobnav{

                .hamburger {

                    &::before, &::after, .linea{
                        background: var(--nero) !important;
                    }
                }
            }
}






/* HEADER */

header {

    &.bigslide {
        position: relative;
        overflow: hidden;
        width: 100%;
        height: calc(90svh);
        margin: 0;
        z-index: 2;

        @media only screen and (max-width: 850px) {
            min-height: 100svh;
            height: min-content;
        }

        .cont-slide {
            position: relative;
            overflow: visible;
            display: block;
            width: 100%;
        }

        #slidepreview,
        #slidepreview1 {
            position: relative;
            overflow: visible;
            display: block;
            z-index: 1 !important;
            width: 100% !important;
            height: calc(90svh);
            margin: 0;
            padding: 0;
            transform: none !important;
            background-color: var(--grigio01);

            @media only screen and (max-width: 850px) {
                min-height: 100svh;
                height: min-content;
            }

            .flickity-slider {
                transform: none !important;
            }

            .flickity-page-dots {
                bottom: 3rem;
            }

            .cella {
                position: relative;
                overflow: visible;
                z-index: 1 !important;
                left: 0 !important;
                /*float:left;*/
                list-style: none;
                width: 100vw;
                height: calc(90svh);
                margin: 0;
                padding: 0;

                background-position: 50% 50%;
                background-repeat: no-repeat;
                background-size: cover;
                transition: all 1s ease-in-out;

                display: flex;
                align-items: flex-end;
                justify-content: flex-end;

                @media only screen and (max-width: 850px) {
                    min-height: 100svh;
                    height: min-content;
                }

                &::before {
                    content: '';
                    position: absolute;
                    overflow: clip;
                    display: block;
                    z-index: 2;
                    top: 0;
                    left: 0;
                    right: 0;
                    bottom: 0;
                    opacity: 1;

                    background: linear-gradient(0deg, rgba(0,0,0,0) -30%, rgba(0,0,0,.8) 110%), url(https://grainy-gradients.vercel.app/noise.svg);
                    background-repeat: repeat;
                    background-size: 280px;
                    pointer-events: none;

                    mix-blend-mode: multiply;
                    -webkit-mix-blend-mode: multiply;
                }


                &::after {
                    content: '';
                    position: absolute;
                    overflow: clip;
                    display: block;
                    z-index: 3;
                    top: -5svh;
                    right: -10svw;
                    pointer-events: none;
                    width: 100svw;
                    height: 60svh;

                    background: url('/css/images/bg01.png') no-repeat right center;
                    background-size: contain;

                    mix-blend-mode: color-dodge;
                    -webkit-mix-blend-mode: color-dodge;

                    opacity: .3;
                    filter: blur(2px);


                }

                /* 
                @media only screen and (max-width: 1440px) {
					width: 100vw;
					height: 100vh;
					height: calc(var(--vh, 1vh) * 100 - 96px);
				} */

                picture,
                #picture {
                    position: absolute;
                    overflow: clip;
                    display: block;
                    z-index: 1 !important;
                    width: 100%;
                    height: 100%;
                    top: 0;
                    left: 0;

                    img {
                        position: absolute;
                        margin: auto auto;
                        left: -10000%;
                        right: -10000%;
                        top: -10000%;
                        bottom: -10000%;
                        /*queste caratteristiche sotto x effetto COVER*/
                        max-width: 10000% !important;
                        min-width: 1000%;
                        min-height: 1000%;
                        -webkit-transform: scale(0.1);
                        transform: scale(0.1);
                        object-fit: cover;
                    }
                }

                video,
                #video {
                    position: absolute;
                    overflow: clip;
                    z-index: 1;
                    margin: auto auto;
                    left: -10000%;
                    right: -10000%;
                    top: -10000%;
                    bottom: -10000%;
                    /*queste caratteristiche sotto x effetto COVER*/
                    min-width: 1000%;
                    min-height: 1000%;
                    -webkit-transform: scale(0.1);
                    transform: scale(0.1);
                    object-fit: cover;
                }

                .intro {
                    
                    position: relative;
                    overflow: clip;
                    display: block;
                    z-index: 5;
                    margin: 0 auto;
                    padding: 5rem 0;
                    padding-right: 45%;
                    transition: all 0.56s cubic-bezier(0.52, 0.16, 0.24, 1);
                    
                    display: flex;
                    flex-direction: column;
                    justify-content: center;
                    align-items: flex-start;

                    text-align: left;

                    @media only screen and (max-width: 1440px) {
                        padding: 4rem 0;
                    }

                    @media only screen and (max-width: 850px) {
                        padding: 4rem 0;
                    }


                    .tit {
                        margin: 0;
                        font-size: 3rem;
                        font-weight: 200;
                        font-family: var(--carattere01);

                        b, strong {
                            font-weight: 800;
                        }

                        @media only screen and (max-width: 1440px) {
                            font-size: 2.5rem; 
                        }

                        @media only screen and (max-width: 850px) {
                            font-size: 2rem; 
                        }
                    }


                    .intro-txt{
                        font-size: 1.5rem;
                    }

                    .tit, .intro-txt, .quote{
                        text-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);

                    }


                    .head_ico {
                        position: relative;
                        overflow: clip;
                        display: block;
                        flex-shrink: 0;
                        width: auto;
                        height: 4.4rem;
                        margin: 0 1rem 0 0;
                        padding: 0;

                        @media only screen and (max-width: 1600px) {
                            margin: 0 0 2rem 0;
                            align-self: center;
                        }
                    }

                    .cont_btn {
                        display: flex;
                        justify-content: flex-end;
                        gap: 1rem;
                    }
                    
                }


                &.is-selected {
                    opacity: 1;

                    .intro {
                        opacity: 1;
                        transform: translateY(0px);
                    }
                }
            }
        }

    }

    /* //bigslide */

}

/* //header

------------------------------ */



