body {
    .elementor-widget-wtb-classic-hero {
        overflow: hidden;
        margin-top: -15px;

        .hero-sub-title {
            background-color: var(--wb-color-blue-dark);
            color: #fff !important;
            display: inline-block;
            position: relative;
            z-index: 1;
            padding: 0.5rem 1rem;
            border-radius: 0.25rem;
        }
    }
    .classic-hero-header-content {
        display: flex;
        flex-direction: column;

        .hero-sub-title {
            width: fit-content;
        }
    }
    .classic-hero {

        &:not(.style-full) {
            /*padding: 20px 20px;*/
            border-radius: 15px;
        }

        ul {

            li {
                line-height: 1.4;
                padding-left: 0.250rem;

                &::marker {
                    font-family: "Font Awesome 5 Pro" !important;
                    content: "\f00c";
                }
        
                +li {
                    margin-top: 1rem;
                }
        
            }
        }

        &.style-full {
            background-color: var(--wb-color-blue-light);

            .wtb-heading, .classic-hero-header-desc, .classic-hero-buttons {
                text-align: center;
            }
            .hero-sub-title {
                margin: 0 auto;
            }
            
            .container {
                background: radial-gradient(50% 38% at 50% 38%, rgb(255, 255, 255) 40%, rgba(255, 255, 255, 0) 95%);
                background-position: center;
                background-repeat: no-repeat;
            }

            .about-style-three-infos {
                max-width: 1000px;
                margin: 0 auto;
            }

            .home-hero-brand-item {
                max-height: 40px;
            }

            .classic-hero-header-desc {
                max-width: 80%;
                margin: 0 auto;
            }

            .breadcrumbs {
                margin: 0 auto;
            }

        }

    }
    .classic-hero-primary {
        .classic-hero-header-desc {
            p {
                margin-bottom: 0;
            }
            font-size: 1.250rem;
            * {
                font-size: 1.250rem;
                font-weight: 400;
            }
        }
        .classic-hero-thumb-wrapper{
            display: flex;
            justify-content: center;
            align-content: center;

            &:after {
                content: "";
                width: 100%;
                height: 100%;
                position: absolute;
                background-position: center;
                background-repeat: no-repeat;
                background-size: contain;
                left: 0;
                top: -33%;
                z-index: -1;
                opacity: .3;
            }
        }
        .about-style-three-infos {
            .wtb-heading {
                font-size: 3.5rem !important;
            }
        }

    }
    .classic-hero-primary-thumb {
        height: 500px;
        object-fit: cover;
        object-position: center left;
        max-width: 100%;
        border-radius: 10px;
    }

}

@media screen and (max-width: 1023px) {
    body {
        .classic-hero-primary {
            &.default-margin {
                margin-block: 20px !important;
            }
        }
        .classic-hero.style-full {
            &.default-padding {
                /*padding-top: 40px;*/
                padding-bottom: 40px;
            }
            &.default-margin {
                margin-top: 0px !important;
            }
            .classic-hero-header-desc {
                max-width: 100%;
            }
            .wtb-heading {
                font-size: 3rem !important;
            }
            .brand-swiper-style-2 {
                margin-top: 20px !important;
            }
        }
    }
}

@media screen and (max-width: 768px) {
    body {
        .classic-hero {
            &.style-full {
                .brand-swiper-style-2 {
                    margin-top: 40px;
                }
                .wtb-heading {
                    font-size: 2rem !important;
                }
                .classic-hero-header-desc > * {
                    line-height: 1.5;
                }
            }
            &.default-padding {
                padding-top: 120px;
            }
            &.classic-hero-primary {
                .wtb-heading {
                    font-size: 2rem !important;
                }
                .classic-hero-header-desc > * {
                    line-height: 1.5;
                }
                .about-style-three-infos:after {
                    content: "";
                    width: 100%;
                    height: 100%;
                    position: absolute;
                    background-position: center;
                    background-repeat: no-repeat;
                    background-size: contain;
                    left: 25%;
                    top: -25%;
                    z-index: -1;
                    opacity: .3;
                }
            }
        }
    }
}

@media screen and (max-width: 575px) {
    body {
        .classic-hero {
            &.style-full {
                .mt-80 {
                    margin-top: 30px;
                }
            }
        }
    }
}


/* Partie matrice */
body .classic-hero {

    .matrix-scene{
        position:absolute;
        width:100vw;
        height:100vh;
        perspective: 900px;
        overflow:hidden;
        /*top: 0px;*/
        /*background: radial-gradient(ellipse at center top, rgba(0,24,38,0.06) 0%, rgba(0,0,0,0.0) 30%);*/

        + .container {
            background: none !important;
        }
    }

    .matrix-grid {
        position: absolute;
        width: 100%;
        height: 100vh;
        transform-origin: center;
        transform: rotateX(75deg);
        mix-blend-mode: screen;
        pointer-events: none;

        &::after {
            content:"";
            position:absolute;
            inset:0;
            background: linear-gradient(to bottom, rgba(0,0,0,0) 60%, #e5f4ff 100%), linear-gradient(to top, rgba(0,0,0,0) 60%, #e5f4ff 100%), linear-gradient(to right, rgba(0,0,0,0) 60%, #e5f4ff 100%), linear-gradient(to left, rgba(0,0,0,0) 60%, #e5f4ff 100%);
            pointer-events:none;
        }
    }

    .matrix-grid.near {
        background-image:
                repeating-linear-gradient(to bottom, rgba(113, 197, 220, 0.38) 0 4px, transparent 2px 4vh),
                repeating-linear-gradient(to right, rgba(113, 197, 220, 0.38) 0 4px, transparent 2px 4vw);
        /*filter: drop-shadow(0 0 10px rgba(0,200,255,0.9));*/
        animation: moveNear 5s linear infinite;
    }

    /* small blurred bloom using the near layer's background */
    .matrix-grid.near::before{
        content:"";
        position:absolute;
        inset:0;
        background-image: inherit;
        filter: blur(14px) saturate(1.2);
        opacity:0.5;
        z-index:-1;
    }
}

@keyframes moveNear {
    from { background-position: 0 0, 0 0; }
    to   { background-position: 0 -150px, 0 -150px; }
}

/* small-screen tweaks */
@media (max-width: 900px){
    .matrix-grid{ width:1600px; height:1200px; transform: translateX(-50%) rotateX(72deg); }
    .horizon{ bottom:50%; height:10%;}
}

@media screen and (max-width: 768px) {
    body .classic-hero {
        .matrix-grid.near {
            background-image:
                    repeating-linear-gradient(to bottom, rgba(113, 197, 220, 0.38) 0 4px, transparent 2px 8vh),
                    repeating-linear-gradient(to right, rgba(113, 197, 220, 0.38) 0 4px, transparent 2px 8vw);
        }
    }
}