@-webkit-keyframes scrollArrow {
    0% {
        transform: translate3d(0,-20px,0);
        opacity: 0
    }

    50% {
        transform: translate3d(0,-10px,0)
    }

    100% {
        transform: translate3d(0,0,0);
        opacity: 1
    }
}

@keyframes scrollArrow {
    0% {
        transform: translate3d(0,-20px,0);
        opacity: 0
    }

    50% {
        transform: translate3d(0,-10px,0)
    }

    100% {
        transform: translate3d(0,0,0);
        opacity: 1
    }
}

@media only screen and (max-width: 767px) {

    .b_c,
    .incipit {
/*        background: #efefef;
*/        /*color: #333;
        min-height: calc(100vh - 300px);
        display: flex;
        flex-direction: column;
        justify-content: center;*/
        overflow: hidden !important;
    }

        .b_c .c_title,
        .incipit .c_title,
        .c_strategy .c_title {
            font-weight: 600;
            font-size: 27px;
            color: #000;
            text-align: center;
        }

        .b_c .c_title {
            text-align: center;
        }

        .b_c .c_service {
            text-align: center;
        }

            .b_c .c_service a {
                font-weight: 600;
                font-size: 20px;
                display: inline-block;
                padding: 15px;
                /* border: 1px solid rgba(0, 0, 0, 0.6);*/
                border: 1px solid #007FFF;
                color: #007FFF;
                border-radius: 3px;
                position: relative;
            }

                .b_c .c_service a:before {
                    content: '';
                    position: absolute;
                    width: 0%;
                    height: 100%;
                    top: 0px;
                    z-index: -1;
                    left: 0px;
                    background: #007FFF;
                    opacity: 0;
                    visibility: hidden;
                }

                .b_c .c_service a:hover:before {
                    width: 100%;
                    opacity: 1;
                    visibility: visible;
                }

                .b_c .c_service a:hover {
                    /*                background: #007FFF;
*/ color: #fff;
                    text-decoration: none;
                }

        .b_c .c_piece {
            text-align: center;
        }

            .b_c .c_piece img {
                width: 30%;
                /* max-width: 40%;
                max-height: 150px;*/
                /*                max-width: 180px;
*/ /*width: 180px;*/
            }

        .b_c .w_1_,
        .c_strategy .w_1_ {
            margin: 20% auto 0 auto !important;
            width: 96%;
        }

        .b_c .w_2_,
        .c_strategy .w_2_ {
            vertical-align: top;
            display: flex;
            flex-direction: column;
            justify-content: center;
            /*            min-height: 40vh;
*/ width: 90% !important;
            margin: 0 auto !important;
        }

        .b_c .c_desc,
        .c_service .c_desc {
            display: block;
            margin-top: 40px;
            margin-bottom: 40px;
            font-weight: 400;
            font-size: 16px;
            line-height: 20px;
        }

    .a_c .w_2_ {
        min-height: unset !important;
        display: block !important;
    }

    .a_c .w_1_ {
        border-bottom: none !important;
    }


    .bc_bb {
        background: #000 !important;
    }

        .bc_bb .c_title,
        .bc_bb .c_desc {
            color: #fff !important;
        }

    .c_enf {
        margin-top: 25%;
        text-align: center;
        padding: 15% 5%;
        background: rgba(255, 255, 255, 0.2);
        border-radius: 5px;
        font-size: 23px;
    }

        .c_enf .cc {
            font-weight: 600;
            padding: 5%;
            min-width: 200px;
            display: block;
            text-align: center;
            cursor: pointer;
            border-radius: 4px;
            margin: 0 auto 8% auto;
            font-size: 6vw;
        }

    .c_strategy .w_2_ .c_enf .c_white {
        background: #fff;
        color: #000 !important;
    }

    .c_strategy .w_2_ .c_enf .c_black {
        background: #000;
        color: #fff !important;
        margin-top: 10% !important;
    }

    .c_enf .cc:hover {
        text-decoration: underline;
        box-shadow: 0px 0px 15px #fff;
    }


    .c_enf .c_black:hover {
        text-decoration: underline;
        box-shadow: 0px 0px 15px #000;
    }

    /*#region --- INCIPIT --- */

    .incipit_1:before {
        content: '';
        width: 100%;
        display: block;
        position: absolute;
        top: 0px;
        left: 0px;
        height: 100%;
        background: rgba(0, 0, 0, 0.4);
        z-index: 1;
    }

    .incipit_1 .w_1_ {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 550px !important;
    }

    .incipit_1 .w_2_:nth-child(1) * {
        z-index: 2;
    }

    .incipit_1 .tilde {
        font-size: 0px;
        margin: 0 auto;
        padding: 20px 0;
        font-weight: 200;
        font-style: italic;
    }

    .incipit_1 h2 {
        font-size: 20px;
        font-weight: 400;
        margin: 0 auto;
        letter-spacing: 1px;
    }

    /*    .incipit_1 span {
        font-style: italic;
        font-size: 35px;
        letter-spacing: 1px;
    }*/

    .incipit_1 * {
        color: #fff !important;
    }

    .video-container {
        position: absolute;
        z-index: 0;
        width: 100%;
        height: 100%;
        top: 0px;
        left: 0px;
        text-align: center;
    }

        .video-container video {
            min-width: 100%;
            min-height: 100%;
            object-fit: cover;
            width: 100%;
            height: 650px;
            object-position: center;
        }

    .c_strategy,
    .incipit_1 {
        width: 100%;
        position: relative;
        padding: 0px !important;
    }

        .c_strategy .w_1_,
        .incipit_1 .w_1_ {
            width: 100% !important;
            max-width: none !important;
            /*            min-height: 300px;
*/ overflow: hidden;
        }

        .c_strategy .w_2_,
        .incipit_1 .w_2_:nth-child(1) {
            width: 90% !important;
            max-width: 1200px !important;
            margin: 0 auto !important;
            display: block !important;
        }

            .c_strategy .w_2_ * {
                position: relative;
                z-index: 1;
                color: #fff !important;
            }

            .incipit_1 .w_2_:nth-child(1) * {
                position: relative;
                z-index: 1;
            }

    .incipit h1 {
        font-size: 40px;
        font-weight: 800;
        letter-spacing: 0px;
        border-left: 7px solid #fff;
        padding-left: 20px;
        margin-left: 20px;
    }

    .incipit .h1-2,
    .incipit h2 {
        font-size: 35px;
        font-weight: 800;
        letter-spacing: 0px;
    }
    /*
    .incipit_1 span {
        font-size: 25px;
        font-weight: 300;
        letter-spacing: 0.5px;
    }*/


    /*#endregion */


    .text_2 .w_1_ {
        padding: 15% 5%;
        display: block;
        font-size: 15px;
        color: #000;
        text-align: justify;
        letter-spacing: 0px;
    }

    .incipit .w_2_ {
        margin: 0 auto;
        width: 90% !important;
    }

        .incipit .w_2_ p {
            margin-bottom: 0px;
        }

    ._rv {
        /*width: 31.33%;
        display: inline-block;
        float: left;*/
        vertical-align: top;
        margin: 0 1%;
    }

    .b_rvw {
        padding: 7% 0;
        margin: 0 auto;
        display: block;
        max-width: 1600px;
        width: 100%;
    }

    .rv_carousel .owl-nav button {
        position: absolute;
        top: 0px;
        top: calc(50% - 100px);
        width: 20px;
    }

    .rv_carousel .owl-nav .owl-next {
        right: 10px;
    }

    .rv_carousel .owl-nav .owl-prev {
        left: 10px;
    }

    .rv_carousel .owl-nav button svg {
    }

    .b_rvw .c_title {
        text-align: center;
        font-size: 30px;
        margin-bottom: 0px;
    }

    .b_rvw .c_subtitle {
        margin-top: 10px;
        font-style: italic;
        text-align: center;
        font-size: 16px;
        margin-bottom: 5%;
    }

        .b_rvw .c_subtitle a {
            text-decoration: underline;
        }

    .rv_carousel {
        margin: 0 auto;
        display: block;
    }

        .rv_carousel ._rv {
            max-width: 900px;
            width: 80%;
            text-align: center;
            margin: 0 auto;
        }

    ._rv_name {
        font-size: 19px;
        font-weight: 500;
        text-align: center;
        margin-bottom: 20px;
        font-style: italic;
        float: right;
    }

    ._rv_title {
        font-size: 21px;
        min-height: 60px;
        font-weight: 600;
        text-align: center;
        background: #e3e3e3;
        padding: 15px;
    }

    ._rv_text {
        padding: 5%;
        font-size: 15px;
        font-weight: 500;
        text-align: justify;
        letter-spacing: 0px;
    }

    .rv_carousel {
        position: relative;
    }

        /*.rv_carousel .owl-nav button {
        position: absolute;
    }

    .rv_carousel .owl-nav svg{
        width: 25px;
    }

        .rv_carousel .owl-prev {
            left: 10px;
            top: calc(50% - 25px);
        }

    .rv_carousel .owl-next {
        right: 10px;
        top: calc(50% - 25px);
    }*/

        .rv_carousel .disabled {
            background: none !important;
        }

    .b_2col .w_2_ {
        width: 90% !important;
        padding: 5% !important;
    }

    .b_2col {
    }

        .b_2col .w_1_ {
            overflow: hidden !important;
        }

        .b_2col .w_2_ {
            display: block;
            vertical-align: top;
            background-size: cover;
        }

            .b_2col .w_2_:nth-child(1):before {
                content: '';
                display: none;
                background: linear-gradient(180deg, #007FFF 0%, rgb(26, 23, 27) 100%);
                left: 0px;
                width: 100%;
                top: 0px;
                height: 100%;
                z-index: 2;
                position: absolute;
            }

            .b_2col .w_2_:nth-child(2) {
                padding: 0 5%;
            }

        .b_2col .w_2_ {
            color: #fff;
            position: relative;
        }

            .b_2col .w_2_ ul {
                list-style: none;
                padding: 17px 0px;
                margin: 0px 30px;
                font-size: 15px;
                line-height: 22px;
                font-weight: 300;
            }

        .b_2col .c3 {
            float: right;
        }

        .b_2col .w_2_ ul div {
            display: inline-block;
        }

        .b_2col .w_2_:nth-child(1) {
            min-height: 240px;
        }

            .b_2col .w_2_:nth-child(1) .price_list {
                opacity: 0 !important;
                visibility: hidden !important;
                display: none !important;
            }

        .b_2fr .w_2_:nth-child(2),
        .b_2col .w_2_:nth-child(2) {
            top: -1px;
        }

        .b_2col .price_list {
            padding: 5% 0;
        }

        .b_2col .ul_header {
        }

            .b_2col .ul_header .c1,
            .b_2col .ul_header .c3 {
                font-size: 15px;
                font-weight: 600;
                letter-spacing: 0px;
            }

    .text_h {
        padding: 13% 0;
    }

        .text_h p {
            font-size: 40px;
            font-weight: 600;
        }

        .text_h ul {
            padding: 0px;
            margin: 0px auto;
            list-style: none;
            overflow: hidden;
            text-align: center;
        }

            .text_h ul li:first-child {
                text-decoration: line-through;
                display: none;
            }

            .text_h ul li:last-child {
                text-decoration: line-through;
                display: none;
            }

        .text_h li {
            font-size: 21px;
            display: inline-block;
            text-align: center;
            vertical-align: top;
            letter-spacing: 0.5px;
            width: 90%;
            margin: 0 auto 20px auto;
        }

        .text_h .wd {
            display: block;
            font-weight: 600;
            margin-bottom: 10px;
        }


    .b_cta {
    }

        .b_cta .w_1_ {
            width: 90%;
            padding: 6% 0;
            margin: 0 auto;
        }

        .b_cta .w_2_ {
            display: block;
            width: 100% !important;
        }

            .b_cta .w_2_:first-child p {
                border-bottom: 1px dashed #000;
                padding: 0px 0px 30px 0px;
            }

            .b_cta .w_2_ p {
                text-align: center;
            }

        .b_cta .w_2_ {
            display: inline-block;
            font-size: 25px;
            font-weight: 500;
            vertical-align: top;
        }

        .b_cta a {
            font-weight: 800;
            font-family: Zen Maru Gothic;
            letter-spacing: 5px;
            margin-top: 50px;
            font-size: 25px;
        }

    .b_ghd {
        color: #fff;
        padding: 30% 0;
        background-color: #000;
        background-position: left center;
        background-repeat: no-repeat;
    }

        .b_ghd .w_1_ {
            margin: 0 auto;
        }

        .b_ghd .w_2_ {
            width: 90% !important;
            margin: 0 auto;
            font-size: 25px;
            display: block;
        }

        .b_ghd a {
            color: #fff;
            text-decoration: underline;
        }

    .w_ {
        vertical-align: top;
        display: block;
        overflow: hidden !important;
        margin-top: -1px;
        background-attachment: scroll;
        background-size: cover;
        background-position: center center;
    }

    .step-1 {
        background: #48d5f5;
        background: #007FFF;
        background: linear-gradient(45deg, #007FFF, #48d5f5, #007FFF, #48d5f5);
        background-size: 250% 250%;
    }

    .step-2 {
        background: #48d5f5;
        background: #007FFF;
        background: linear-gradient(-135deg, #007FFF, #48d5f5, #007FFF, #48d5f5);
        background-size: 250% 250%;
    }

    .step-1,
    .step-2 {
        display: block;
        padding: 30px;
        /*width: 600px;*/
        /*background: #48d5f5;*/
        color: #fff;
        font-weight: 800;
        margin: 40px auto;
        font-size: 22px;
        text-align: center;
    }

    .eco_win {
        padding: 10% 0;
        overflow: hidden;
        /*background: linear-gradient(45deg, #8ffbce, #48d5f5, #8ffbce, #48d5f5);
        background-size: 350% 350%;
        animation: gradient 5s ease infinite;*/
    }

        .eco_win .w_1_ {
            max-width: 1400px;
            width: 90%;
            margin: 0 auto;
            overflow: hidden;
        }

        .eco_win .w_2_ {
            margin: 50px auto;
            display: block;
            max-width: 850px;
            /*overflow: hidden;*/
        }

    h3 {
        color: var(--bg-color-2);
        font-family: Cormorant Garamond;
        font-size: 30px;
        font-weight: 900;
        text-align: left;
    }

    .incipit_1:before {
        content: '';
        width: 100%;
        display: block;
        position: absolute;
        top: 0px;
        left: 0px;
        height: 100%;
        /*        background: linear-gradient(180deg, #007FFF, rgba(72, 213, 245, 0.19));*/
        background: linear-gradient(180deg, var(--bg-color-3), rgba(255, 255, 255, 0.19));
        /*background: linear-gradient(180deg, rgba(9, 5, 40, 0.8), rgba(39, 145, 185, 0.30));*/
        /*background: rgba(26, 255, 206, 0.5);*/
        /*background: rgba(26, 164, 255, 0.3);*/
        /*background: linear-gradient(rgba(26, 164, 255, 0.3);*/
        z-index: 1;
    }

    .h_cta {
        color: #fff;
        background: rgb(2, 213, 124);
        display: inline-block;
        padding: 15px 0px;
        text-align: center;
        letter-spacing: 1px;
        border-radius: 3px;
        font-size: 25px;
        font-weight: 900;
        width: 90%;
        margin: 20px auto;
        display: block;
    }

    .h_cta,
    .req_wrap_ #req_submit {
        margin-top: 25px;
        color: var(--bg-color-2);
        background: #fff;
        display: inline-block;
        padding: 15px 30px;
        width: auto;
        min-width: 130px;
        max-width: 250px;
        text-align: center;
        letter-spacing: 1px;
        border-radius: 6px;
        font-size: 20px;
        font-weight: 600;
        border: 3px solid var(--bg-color-2);
        cursor: pointer;
        margin: 50px auto 0 auto;
        display: block;
    }

        .h_cta:hover,
        .req_wrap_ #req_submit:hover {
            background: var(--bg-color-2);
            color: #fff;
            text-decoration: none;
        }

    .h_cta_reverse {
        background: #fff;
        color: rgb(2, 213, 124);
    }

/*    .req_wrap_ #req_submit {
        text-align: center;
        margin: 0 auto;
        border: 0px;
        letter-spacing: 1px;
        text-align: center;
        margin: 0 auto 10% auto;
        padding: 20px 50px;
        font-size: 33px;
        font-weight: 600 !important;
        background-image: none;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        cursor: pointer;
        border-radius: 2px;
        font-family: inherit;
        color: #007FFF;
        background: #fff;
        border: 1px solid #007FFF;
        -webkit-appearance: none;
        -moz-appearance: none;
        -apple-webkit-appearance: none;
       }*/

    .req_wrap_ #req_submit{
        margin-top: 10px;
        width: 100%;
    }

    .req_wrap_ {
        margin: 0 auto 6% auto;
        padding: 0px 0 0px 0;
        overflow: hidden;
        font-size: 20px;
        font-weight: 300;
        width: 90% !important;
        color: #10132e;
    }

        .req_wrap_ ul {
            list-style: none;
            padding: 0px;
            margin: 0px;
        }

            .req_wrap_ ul li {
                margin-bottom: 15px;
                overflow: hidden !important;
            }

    .req_msg_ {
        font-size: 25px;
        font-weight: 900;
        margin: 12% 0 8% 0;
        display: none;
    }

        .req_msg_ p {
            margin: 10px 0;
        }

        .req_msg_ strong {
            padding: 5px 8px !important;
            display: inline-block;
            background: #007FFF !important;
            color: #fff !important;
        }

    .req_wrap_data_ {
        width: 90%;
        margin: 0 auto !important;
    }

        .req_wrap_data_ * {
            overflow: hidden !important;
        }

    .req_wrap_ input.text,
    .req_wrap_ textarea,
    .req_wrap_ select {
        font-size: 16px;
        color: inherit;
        width: 100% !important;
        font-weight: 400;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        font-style: normal !important;
        font-family: inherit;
        border: 1px solid rgba(0, 0, 0, 0.4);
        box-sizing: border-box;
        border-radius: 2px;
    }

        .req_wrap_ input.text:focus,
        .req_wrap_ textarea:focus,
        .req_wrap_ select:focus {
            outline: 0px;
            border: 1px solid #007FFF !important;
            box-shadow: 0px 0px 1px rgba(128, 0, 246, 0.9);
        }

    .req_wrap_ input[type="checkbox"] {
        width: 25px;
        height: 25px;
        cursor: pointer;
    }

    .req_wrap_ label a {
        /*margin-top: 10px;
        display: block;
        font-style: italic;*/
    }

    #msg_submit_succ {
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        display: block;
    }

    .msg_show_ {
        opacity: 1;
        visibility: visible;
        height: auto;
        padding: 15px 0px;
        color: #01a93d;
        margin: 30px 0;
        font-weight: 600;
        transform: translateY(0px);
        font-size: 24px;
    }

    .msg_hide_ {
        opacity: 0;
        visibility: hidden;
        height: 0px;
        transform: translateY(100px);
    }


    .req_wrap_ label {
        display: inline-flex;
        flex-direction: column;
        justify-content: center;
        float: none;
        font-size: 10px;
        font-weight: 500;
        vertical-align: top;
        padding-left: 8px;
        cursor: pointer;
        color: #000;
        width: calc(100% - 40px);
    }

    /*   .req_wrap_ label a {
            text-decoration: underline;
        }

        .req_wrap_ label p {
            margin: 0px !important;
            display: inline-block;
        }*/

    .req_wrap_ select,
    .req_wrap_ li input,
    .req_wrap_ li textarea {
        padding: 4%;
        width: 100%;
        font-style: normal;
        font-size: 16px;
        font-family: inherit;
    }

    .req_wrap_ textarea {
        /*min-height: 25vh;*/
        min-height: 200px;
    }

    .wvision {
        background: var(--bg-color-3);
    }

        .wvision h3{
            color: #fff !important;
        }

        .wvision p,
        .wvision ul {
            color: #fff !important;
        }

        .wvision .w_1_,
        .wprev .w_1_ {
            padding: 15% 5%;
            display: block;
            font-size: 15px;
            color: #000;
            letter-spacing: 0px;
        }

            .wprev .w_1_{
                padding-bottom: 20px;
            }

            .wvision ul {
                padding: 0px;
                list-style: none;
            }

    .incipit .w_2_ p:nth-child(2),
    .wvision .vision-text {
        font-size: 15px;
        text-align: justify;
        padding-left: 15px;
        padding-top: 15px;
        padding-bottom: 30px;
        margin-left: 15px;
        border-left: 3px solid var(--bg-color-2);
    }

        .wvision .vision-text{
            border-left: 3px solid #fff;
            margin-top: 15px;
        }

        .wvision .vision-text p{
            margin-top: 0px;
        }

    .wdiritti {
        background: var(--bg-color-3);
        color: #fff;
        padding: 80px 0;
    }

        .wdiritti h3{
            text-align: center;
        }

        .wdiritti h3 {
            color: #fff;
        }

        .wdiritti .d_list {
            list-style: none;
            padding: 50px 0 0 0;
        }

        .wdiritti .d-desc {
            font-size: 16px;
            text-align: center;
        }

        .wdiritti .d_item {
            display: block;
            margin: 10px 10px 50px 10px;
            padding-bottom: 50px;
            padding: 0 20px 50px 20px;
            border-bottom: 1px solid #fff;
            overflow: hidden;
        }

            .wdiritti .d_item:last-child {
                border-bottom: 0px solid !important;
            }

        .wdiritti .d-title {
            color: #fff;
            display: block;
            /*padding: 30px 10px;
            border: 5px solid #fff;
            width: 240px;*/
            text-align: center;
            font-weight: 900;
            border-radius: 3px;
            font-size: 21px;
            vertical-align: top;
            padding-top: 20px;
            vertical-align: top;
        }

        .wdiritti p {
            margin: 0px;
        }

        .wdiritti .vision-text p {
            margin-top: 15px;
            padding: 0px !important;
            vertical-align: top;
            display: block; /*
            width: calc(100% - 400px);
            max-width: 420px;*/
            font-size: 18px !important;
            border: 0px solid !important;
            text-align: center !important;
            letter-spacing: 0.3px;
        }

    .d_img {
        width: 100%;
        overflow: hidden;
        /*display: flex;
        flex-direction: column;
        justify-content: center;*/
        padding: 0px;
        margin: 0 auto 10px auto;
        text-align: center;
        border-radius: 100%;/*
        border: 1px solid #fff;
        height: 70px;
        width: 70px;
        padding: 10px;*/
    }

        .d_img img {
            width: auto;
            height: 70px;
            opacity: 1;
            -webkit-filter: invert(1);
        }

        .d_img:hover {
            /*            transform: rotateY(360deg);
*/ /*            transform: scale(1.1);
*/
        }

    .wdiritti .h_cta {
        margin-top: 0px;
        border: 3px solid #fff;
        margin: 0 auto !important;
        display: block !important;
    }

    .wprev{
        padding: 10px 0;
    }

        .wprev .h_cta {
            margin-left: 0px;
            background: var(--bg-color-2);
            color: #fff;
        }

            .wprev .h_cta:hover {
                background: var(--bg-color-4);
            }

    .req_desc {
        padding-left: 0px;
        padding-top: 40px;
    }

    .req_desc_footer {
        padding-top: 30px;
    }

    .img_notaio_detail,
    .img_studio_detail {
        margin: 50px auto 0 auto;
        overflow: hidden;
        text-align: center;
    }

    .img_studio_detail {
    }

        .img_notaio_detail img,
        .img_studio_detail img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            transform: scale(1.7);
            height: 300px;
        }

    .text_4 .img_notaio_detail img {
        transform: none;
        height: auto;
        width: 90% !important;
        margin: 0 auto;
        object-fit: cover;
        max-height: 400px;
        object-position: center;
    }

}
