﻿/*#region global*/
/*============================================================================================
    GLOBAL
============================================================================================*/
body {
    overflow-x: hidden;
}

.pb-25 {
    padding-bottom: 25px;
}

.pb-100 {
    padding-bottom: 100px;
}

pr-100 {
    padding-right: 100px;
}

pl-100 {
    padding-left: 100px;
}

.pl-250 {
    padding-left: clamp(20px, 15vw, 240px) !important;
}

.pt-10 {
    padding-top: 10px;
}

.pt-50 {
    padding-top: 50px;
}

.pt-100 {
    padding-top: 100px;
}

.pt-150 {
    padding-top: 150px;
}

.txt-center {
    text-align: center;
}

.txt-justify {
    text-align: justify;
}

.txt-white {
    color: white;
}

.fs-15 {
    font-size: 15px !important;
}

.fs-80 {
    font-size: 80px !important;
}

.text-justify {
    text-align: justify;
}

#form1 {
    margin: 0;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
}

ul, ol {
    list-style: none;
    padding: 0;
    margin: 0;
}

.min-vh-40 {
    min-height: 40vh;
}


.no-bold {
    font-weight: normal;
}

.bg-immagine {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.bg-immagine-b {
    background-position: center bottom;
}

.bg-immagine-t {
    background-position: center top;
}

.testata-half {
    min-height: 50vh;
}

@media(max-width:767px) {
    .testata-half {
        min-height: 30vh;
    }
}

@media(max-width:576px) {
    .testata-half {
        min-height: 30vh;
    }
}

.immagine-crop {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
}

.sezione {
    padding: 120px 0;
}

.sezione-1 {
    padding: 90px 0;
}

.sezione-2 {
    padding: 60px 0;
}

@media(max-width:991px) {
    .sezione {
        padding: 100px 0;
    }

    .sezione-1 {
        padding: 70px 0;
    }

    .sezione-2 {
        padding: 50px 0;
    }
}

.container-80 {
    max-width: 80%;
    margin: 0 auto;
}

.container-85 {
    max-width: 85%;
    margin: 0 auto;
}

.container-90 {
    max-width: 90%;
    margin: 0 auto;
}

@media(max-width:767px) {
    .container-80, .container-85, .container-90 {
        max-width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }
}

.text-nero {
    color: #000;
}

.img-crop {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
}

.bottone {
    padding: 10px 40px;
    font-size: 20px;
    text-align: center;
    -moz-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

@media(max-width:767px) {
    .bottone {
        padding: 5px 20px;
        font-size: 16px;
    }
}

.bottone-round {
    -moz-border-radius: 1.75rem;
    -webkit-border-radius: 1.75rem;
    border-radius: 1.75rem;
}

.btn-verde-nero {
    color: #fff;
    border: 1px solid #94c974;
    background: #94c974;
}

    .btn-verde-nero:hover, .btn-verde-nero:focus {
        color: #fff;
        border: 1px solid #94c974;
        background: #000;
    }

.nice-select.open .list {
    max-height: 20vh;
    overflow-y: auto;
    z-index: 9999;
}

#whatsapp {
    position: fixed;
    bottom: 20px;
    left: 20px;
    width: 50px;
    z-index: 100;
}

@media(max-width: 767px) {
    #whatsapp {
        bottom: 10px;
        left: 10px;
        width: 40px;
    }
}
/*#endregion*/

/*#region loader*/
/*============================================================================================
    LOADER
============================================================================================*/
#loading-center-absolute {
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    margin: 0 !important;
}

.loading-logo {
    max-width: 80%;
    width: 300px;
    -moz-animation: caricamento 2s ease;
    -o-animation: caricamento 2s ease;
    -webkit-animation: caricamento 2s ease;
    animation: caricamento 2s ease;
    -moz-animation-iteration-count: infinite;
    -o-animation-iteration-count: infinite;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

@keyframes caricamento {
    0% {
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        -webkit-transform: scale();
        transform: scale(1);
    }

    50% {
        -moz-transform: scale(1.2);
        -ms-transform: scale(1.2);
        -o-transform: scale(1.2);
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    100% {
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-moz-keyframes caricamento {
    0% {
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        -webkit-transform: scale();
        transform: scale(1);
    }

    50% {
        -moz-transform: scale(1.2);
        -ms-transform: scale(1.2);
        -o-transform: scale(1.2);
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    100% {
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-webkit-keyframes caricamento {
    0% {
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        -webkit-transform: scale();
        transform: scale(1);
    }

    50% {
        -moz-transform: scale(1.2);
        -ms-transform: scale(1.2);
        -o-transform: scale(1.2);
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    100% {
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
/*#endregion*/

/*#region header*/
/*============================================================================================
    HEADER
============================================================================================*/
.tp-header-area .tp-header-menu {
    padding-left: 0px;
    margin: auto;
}


.tp-header-logo img {
    max-height: 100px;
}

.tp-header-menu > nav > ul {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    justify-content: center;
    padding: 0;
    margin: 0 auto;
}

.tp-header-2-menu {
    padding-left: 0 !important;
}



    .tp-header-2-menu > nav > ul > li {
        display: inline-block;
        margin: 0 10px;
        position: relative;
    }

    .tp-header-2-menu > nav > ul {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        margin: 0 auto;
        padding: 0;

    }




        .tp-header-2-menu > nav > ul > li > a {
            padding: 0 4px;
            white-space: nowrap;
        }


.tp-header-menu > nav > ul > li:last-child {
    margin-right: 0;
}


.tp-header-menu > nav > ul > li > a {
    font-size: 24px;
    padding: 0 5px;
}

@media(max-width:1600px) {
    .tp-header-menu > nav > ul > li > a {
        font-size: 15px;
        padding: 0 4px;
    }

    .tp-header-2-menu > nav > ul > li > a {
        font-size: 15px;
        padding: 0 3px;
    }
}


@media(max-width:1200px) {
    .tp-header-menu > nav > ul > li > a {
        font-size: 15px;
        padding: 0 4px;
    }

    .tp-header-2-menu > nav > ul > li > a {
        font-size: 13px;
        padding: 0 2px;
    }
}

@media(max-width:991px) {
    .tp-header-menu > nav > ul > li > a {
        font-size: 13px;
        padding: 0 3px;
    }

    .tp-header-2-menu > nav > ul > li > a {
        font-size: 10px;
        padding: 0 2px;
    }
}

@media(max-width:767px) {
    .tp-header-menu > nav > ul > li > a {
        font-size: 15px;
        padding: 0 2px;
    }

    .tp-header-2-menu > nav > ul > li > a {
        font-size: 10px;
        
        padding: 0 1px;
    }
}

@media(max-width:576px) {
    .tp-header-menu > nav > ul > li > a {
        font-size: 15px;
        padding: 0 2px;
    }

    .tp-header-2-menu > nav > ul > li > a {
        font-size: 10px;
        padding: 0 1px;
    }
}



.tp-header-tranparent {
    background: rgba(0,0,0,0.3);
}

.tp-main-menu-mobile ul li > a {
    font-size: 15px;
}

.header-hamburger {
    justify-content: center;
}

@media(max-width:1200px) {
    .header-hamburger {
        justify-content: flex-end;
    }
}

.header-space {
    height: 90px;
}

.dropdown_header_width {
    width: 600px !important;
}

.dropdown_header_margin {
    margin: auto !important;
}

.dropdown_header_fs {
    font-size: 22px !important;
}


/*#endregion*/

/*#region footer*/
/*============================================================================================
    FOOTER
============================================================================================*/
@media(max-width:767px) {
    .tp-footer-widget {
        display: flex;
        -ms-flex-direction: column;
        -webkit-flex-direction: column;
        flex-direction: column;
    }

    .tp-footer-logo {
        margin-left: auto;
        margin-right: auto;
    }

    .tp-footer-text {
        text-align: center;
    }
}

.footer-claim {
    font-size: 30px;
}

@media(max-width:767px) {
    .footer-claim {
        font-size: 25px;
    }
}

@media(max-width:576px) {
    .footer-claim {
        font-size: 22px;
    }
}
/*#endregion*/

/*#region home*/
/*============================================================================================
    HOME
============================================================================================*/

/*------- CHI SIAMO -------*/
.slider-chi-siamo-container {
    margin: 20px 20px 0 0;
    position: relative;
}

    .slider-chi-siamo-container::before {
        content: '';
        position: absolute;
        z-index: 1;
        top: -20px;
        right: -20px;
        width: 100%;
        height: 100%;
        background: transparent;
        border: 1px solid #000;
    }

.slider-chi-siamo {
    z-index: 5;
}

@media(max-width:991px) {
    .tp-about-2-thumb {
        padding: 15px;
        min-height: 50vh;
    }
}


/*#endregion*/

/*#region chi-siamo*/
/*============================================================================================
    CHI SIAMO
============================================================================================*/
.riga-lato {
    padding-left: 50px;
    position: relative;
}

    .riga-lato::before {
        content: '';
        position: absolute;
        top: 0;
        left: 20px;
        width: 10px;
        height: 100%;
        background: #94c974 /*#b88d3c*/;
    }

@media(max-width:767px) {
    .riga-lato {
        padding-left: 30px;
    }

        .riga-lato::before {
            left: 11px;
            width: 8px;
        }
}

@media(max-width:576px) {
    .riga-lato {
        padding-left: 20px;
    }

        .riga-lato::before {
            left: 8px;
            width: 4px;
        }
}

.logo-chi-siamo {
    max-width: 400px;
    max-height: 150px;
    margin: auto;
}

    .logo-chi-siamo:first-child {
        margin-right: 20px;
    }

    .logo-chi-siamo:last-child {
        margin-left: 20px;
    }

@media(max-width:767px) {
    .logo-chi-siamo {
        margin: 30px auto !important;
        max-width: 100%;
        height: auto;
    }
}

/*#endregion*/

/*#region servizi*/
/*============================================================================================
    SERVIZI
============================================================================================*/
.service {
    margin-top: 30px;
    padding: 30px;
    padding-bottom: 0;
    -webkit-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
}

.service-icon {
    display: inline-block;
    vertical-align: middle;
    height: 64px;
    width: 64px;
    position: relative;
    overflow: hidden;
}

    .service-icon span {
        position: absolute;
        height: 100%;
        width: 100%;
        left: 50%;
        font-size: 48px;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        -webkit-transition: all 0.3s ease-in-out 0s;
        transition: all 0.3s ease-in-out 0s;
        display: inline-block;
        vertical-align: middle;
        display: -webkit-box;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -moz-justify-content: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -moz-align-items: center;
        align-items: center;
        color: #47BB8F;
    }

        .service-icon span i {
            color: #47BB8F;
        }

        .service-icon span img {
            max-height: 100%;
            max-width: 100%;
        }

        .service-icon span:first-child {
            top: 50%;
        }

        .service-icon span:last-child {
            top: 150%;
        }

.service-content {
    padding-top: 20px;
}

    .service-content h2, .service-content h3, .service-content h4, .service-content h5, .service-content h6 {
        font-weight: 700;
        color: #333333;
        font-family: "Roboto", sans-serif;
    }

        .service-content h2 a, .service-content h3 a, .service-content h4 a, .service-content h5 a, .service-content h6 a {
            color: #333333;
        }

            .service-content h2 a:hover, .service-content h3 a:hover, .service-content h4 a:hover, .service-content h5 a:hover, .service-content h6 a:hover {
                color: #47BB8F;
            }

    .service-content p {
        margin-bottom: 0;
    }

    .service-content a.cr-readmore:hover,
    .service-content a.cr-readmore2:hover {
        color: #47BB8F;
    }

.service-image {
    overflow: hidden;
}

    .service-image img {
        width: 100%;
        -webkit-transform: scale(1.001);
        transform: scale(1.001);
        -webkit-transition: all 0.4s ease-in-out 0s;
        transition: all 0.4s ease-in-out 0s;
    }

.service:hover .service-icon span:first-child {
    top: -50%;
}

.service:hover .service-icon span:last-child {
    top: 50%;
}

.service:hover .service-image img {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .service {
        padding: 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .service {
        padding: 0;
        padding-top: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .service {
        padding: 0;
        padding-top: 15px;
    }
}

.service-style-4 {
    padding: 0;
    -webkit-box-shadow: 0 1px 3px rgba(85, 85, 85, 0.25);
    -ms-box-shadow: 0 1px 3px rgba(85, 85, 85, 0.25);
    -o-box-shadow: 0 1px 3px rgba(85, 85, 85, 0.25);
    box-shadow: 0 1px 3px rgba(85, 85, 85, 0.25);
    background: #fff;
}

    .service-style-4 .service-content {
        padding: 35px 30px;
    }

    .service-style-4:hover {
        -webkit-box-shadow: 0 15px 20px rgba(85, 85, 85, 0.2);
        -ms-box-shadow: 0 15px 20px rgba(85, 85, 85, 0.2);
        -o-box-shadow: 0 15px 20px rgba(85, 85, 85, 0.2);
        box-shadow: 0 15px 20px rgba(85, 85, 85, 0.2);
    }

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .service-style-4 .service-content {
        padding: 30px 20px;
    }
}
/*#endregion*/

/*#region gallery*/
/*============================================================================================
    GALLERY
============================================================================================*/
.portfolio-wrap {
    overflow: hidden;
}

.portfolio-filters {
    text-align: center;
    margin-bottom: 40px;
}

    .portfolio-filters button {
        display: inline-block;
        background: transparent;
        border: none;
        outline: none;
        padding: 5px 18px;
        color: #555;
        font-size: 14px;
        line-height: 26px;
        font-family: "Roboto", sans-serif;
        font-weight: 400;
    }

        .portfolio-filters button:first-child {
            padding-left: 0;
        }

        .portfolio-filters button:last-child {
            padding-right: 0;
        }

        .portfolio-filters button.is-checked, .portfolio-filters button:hover {
            color: #47BB8F;
        }

    .portfolio-filters.portfolio-filters-minimal button {
        padding: 5px 30px;
    }

        .portfolio-filters.portfolio-filters-minimal button:first-child {
            padding-left: 0;
        }

        .portfolio-filters.portfolio-filters-minimal button:last-child {
            padding-right: 0;
        }

.portfolio {
    position: relative;
    margin-left: 15px;
    margin-bottom: 15px;
}

.portfoilo-thumb {
    overflow: hidden;
    height: 100%;
}

    .portfoilo-thumb img {
        width: 100%;
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transition: all 0.3s ease-in-out 0s;
        transition: all 0.3s ease-in-out 0s;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center center;
        object-position: center center;
    }

.portfolio-content {
    position: absolute;
    height: calc(100% - 30px);
    width: calc(100% - 30px);
    left: 15px;
    top: 15px;
    background: rgba(71, 187, 143, 0);
    color: #fff;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -moz-align-items: center;
    align-items: center;
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
    -webkit-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
}

    .portfolio-content > * {
        color: #fff;
        visibility: hidden;
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        -webkit-transition: all 0.6s cubic-bezier(0, 0, 0.2, 1) 0s;
        transition: all 0.6s cubic-bezier(0, 0, 0.2, 1) 0s;
    }

    .portfolio-content h6 {
        font-size: 16px;
        font-weight: 700;
        visibility: hidden;
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        -webkit-transition: all 0.6s cubic-bezier(0, 0, 0.2, 1) 0s;
        transition: all 0.6s cubic-bezier(0, 0, 0.2, 1) 0s;
        text-transform: uppercase;
    }

    .portfolio-content h3 {
        color: #fff;
        margin-bottom: 0;
        visibility: hidden;
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        -webkit-transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.05s;
        transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.05s;
    }

    .portfolio-content a {
        color: #fff;
    }

        .portfolio-content a:hover {
            color: #f1f1f1;
        }

        .portfolio-content a.portfolio-zoom-trigger {
            color: #ffffff;
            display: inline-block;
            text-align: center;
            font-size: 26px;
            margin-bottom: 10px;
            padding: 8px 0;
            -webkit-transform: translateY(50px);
            transform: translateY(50px);
            -webkit-transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0s;
            transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0s;
            visibility: hidden;
            opacity: 0;
        }

            .portfolio-content a.portfolio-zoom-trigger:hover {
                opacity: #f1f1f1;
            }

.portfolio-content-inner {
    width: 100%;
    padding: 20px;
    -webkit-transform: translateY(0) translateZ(0);
    transform: translateY(0) translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.portfolio:hover .portfoilo-thumb img {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
}

.portfolio:hover .portfolio-content {
    background: rgba(71, 187, 143, 0.9);
    -webkit-transform: scale(1);
    transform: scale(1);
}

    .portfolio:hover .portfolio-content > * {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        visibility: visible;
        opacity: 1;
    }

    .portfolio:hover .portfolio-content h6 {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        visibility: visible;
        opacity: 1;
    }

    .portfolio:hover .portfolio-content h3 {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        visibility: visible;
        opacity: 1;
    }

    .portfolio:hover .portfolio-content a.portfolio-zoom-trigger {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        visibility: visible;
        opacity: 1;
    }

.portfolio:hover .portfolio-content-inner {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
}

.portfolio-load-more-button .load-more-toggle {
    margin-top: 50px;
}

.portfolios-style-1 {
    margin-left: -15px;
}

/* Portfolio Style 2 */
.portfolios-style-2 {
    margin-left: -15px;
}

    .portfolios-style-2 .portfolio {
        margin-left: 10px;
        margin-bottom: 10px;
        width: 100%;
        height: 100%;
    }

    .portfolios-style-2 .portfolio-content {
        height: 100%;
        width: 100%;
        left: 0;
        top: 0;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

@media only screen and (min-width: 1920px) {
    .cr-col-2 {
        -webkit-box-flex: 0;
        -moz-flex: 0 0 20%;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

@media only screen and (min-width: 1600px) and (max-width: 1919px) {
    .cr-col-2 {
        -webkit-box-flex: 0;
        -moz-flex: 0 0 20%;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}
/* Portfolio Style 3 */
.portfolios-style-3 {
    margin-left: 0;
}

    .portfolios-style-3 .portfolio {
        margin-left: 0;
        margin-bottom: 0;
    }

    .portfolios-style-3 .portfolio-content {
        height: 100%;
        width: 100%;
        left: 0;
        top: 0;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

/* Portfolio Style 4 */
.portfolios-style-4 {
    margin-left: -15px;
}

    .portfolios-style-4 .portfolio-content {
        height: 100%;
        width: 100%;
        left: 0;
        top: 0;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .portfolios .portfolio-content h3 {
        font-size: 26px;
    }
}
/* Portfolio Style 5 */
.portfolios-slider-active.cr-slider-navigation-2 .cr-slider-nav {
    margin-top: -40px;
}

.portfolios-slider-active .portfolio-single {
    padding-left: 0;
    padding-right: 0;
}

    .portfolios-slider-active .portfolio-single:active, .portfolios-slider-active .portfolio-single:focus {
        outline: none;
    }

.portfolios-slider-active .slick-list {
    padding: 0 !important;
    margin-left: -15px;
}

/* Portfolio Minimal */
.portfolio-filters-minimal {
    margin-top: 80px;
    text-align: left;
}

    .portfolio-filters-minimal button {
        font-family: "Roboto Condensed", sans-serif;
        font-weight: 700;
        color: #777777;
        text-transform: capitalize;
        font-weight: 0.5px;
        font-size: 18px;
        line-height: 30px;
    }

        .portfolio-filters-minimal button.is-checked, .portfolio-filters-minimal button:hover {
            color: #333333;
        }

.portfolios-minimal .portfolio {
    margin: 0;
    position: relative;
}

    .portfolios-minimal .portfolio::before {
        content: "";
        left: 0;
        top: 0;
        height: 100%;
        width: 100%;
        z-index: 1;
        background: rgba(0, 0, 0, 0.5);
        position: absolute;
        visibility: hidden;
        opacity: 0;
        -webkit-transition: all 0.4s ease-in-out 0s;
        transition: all 0.4s ease-in-out 0s;
    }

    .portfolios-minimal .portfolio > * {
        z-index: 2;
    }

    .portfolios-minimal .portfolio:hover::before {
        visibility: visible;
        opacity: 1;
    }

/* Portfolio Minimal 2 */
.portfolios-minimal-2 .portfolio {
    margin: 0;
    margin-bottom: 30px;
}

.portfolios-minimal-2 .portfoilo-thumb {
    position: relative;
}

    .portfolios-minimal-2 .portfoilo-thumb::before {
        content: "";
        left: 0;
        top: 0;
        height: 100%;
        width: 100%;
        position: absolute;
        background: rgba(0, 0, 0, 0.5);
        z-index: 1;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all 0.3s ease-in-out 0s;
        transition: all 0.3s ease-in-out 0s;
    }

.portfolios-minimal-2 .portfolio-content {
    position: relative;
    background: white;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    -webkit-transform: scale(1);
    transform: scale(1);
    border: 1px solid #e7e7e7;
    border-top: none;
}

    .portfolios-minimal-2 .portfolio-content > * {
        visibility: visible;
        opacity: 1;
    }

    .portfolios-minimal-2 .portfolio-content .portfolio-content-inner {
        background: white;
        -webkit-transform: translateY(0) translateZ(0);
        transform: translateY(0) translateZ(0);
        padding: 25px 20px;
    }

        .portfolios-minimal-2 .portfolio-content .portfolio-content-inner h5 {
            font-family: "Roboto", sans-serif;
            font-weight: 700;
            color: #333333;
            margin-bottom: 10px;
        }

            .portfolios-minimal-2 .portfolio-content .portfolio-content-inner h5 a {
                color: #333333;
            }

                .portfolios-minimal-2 .portfolio-content .portfolio-content-inner h5 a:hover {
                    color: #555555;
                }

        .portfolios-minimal-2 .portfolio-content .portfolio-content-inner h6 {
            color: #555555;
            font-size: 14px;
            -webkit-transform: translateY(0);
            transform: translateY(0);
            visibility: visible;
            opacity: 1;
            margin-bottom: 0;
        }

.portfolios-minimal-2 .portfolio:hover .portfolio-content-inner {
    background: white;
    -webkit-transform: translateY(0) translateZ(0);
    transform: translateY(0) translateZ(0);
}

.portfolios-minimal-2 .portfolio:hover .portfoilo-thumb::before {
    opacity: 1;
    visibility: visible;
}

.portfolio-area-headings {
    padding: 50px 0;
}

    .portfolio-area-headings h1 {
        font-size: 48px;
        color: #333333;
        font-weight: 400;
    }

    .portfolio-area-headings p {
        font-size: 18px;
        font-weight: 400;
        color: #555555;
    }

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .portfolio-area-headings h1 {
        font-size: 38px;
    }

    .portfolio-area-headings p {
        font-size: 16px;
    }
}

@media only screen and (max-width: 767px) {
    .portfolio-area-headings h1 {
        font-size: 36px;
    }

    .portfolio-area-headings p {
        font-size: 16px;
    }
}

.portfolios-minimal-3 .portfolio {
    margin-bottom: 30px;
}

.portfolios-minimal-3 .portfolio-content {
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0);
    -webkit-transform: scale(1);
    transform: scale(1);
}

.portfolios-minimal-3 .portfolio:hover .portfolio-content {
    background: rgba(0, 0, 0, 0.5);
}

.portfolios-minimal-4 {
    margin-top: -30px;
}

    .portfolios-minimal-4 .portfolio {
        margin: 0;
        margin-top: 30px;
    }

/*#endregion*/

/*----------------------------------------------------------------------------------------------------------------------------------------------
AREA LOGIN
----------------------------------------------------------------------------------------------------------------------------------------------*/

/*#region login*/
/*============================================================================================
    LOGIN
============================================================================================*/
.login-container {
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.login-col {
    width: 50%;
    height: 100%;
}

.login-data-col {
    background: #fff;
    display: flex;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    padding: 2rem 7rem;
    min-height: 100vh;
}

.login-logo {
    max-height: 150px;
    max-width: 80%;
    width: auto !important;
    margin-bottom: 20px;
}

.login-title {
    font-size: 42px;
    color: #000;
    font-weight: bold;
    margin-bottom: 20px;
}

.login-subtitle {
    font-size: 32px;
    color: #000;
    font-weight: 400;
    margin-bottom: 50px;
}

.login-label {
    font-size: 22px;
    color: #000;
}

.login-control-custom {
    display: block;
    width: 100%;
    height: calc(2.5em + 1.25rem + 2px);
    padding: .625rem 1.25rem;
    font-size: 1.5rem;
    font-weight: 400;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: none;
    border-bottom: 1px solid #ced4da;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out, font-size 0.15s ease;
}

    .login-control-custom::placeholder {
        font-size: 1.5rem;
    }

    .login-control-custom:focus, .login-control-custom:focus-visible, .login-control-custom:active {
        border: none;
        border-bottom: 1px solid #ced4da;
        outline: none;
        font-size: 1.6rem;
    }

.btn-login {
    margin: auto auto auto 0;
    font-size: 24px;
}

@media(max-width:1199px) {
    .login-title {
        font-size: 36px;
        margin-bottom: 20px;
    }

    .login-subtitle {
        font-size: 28px;
        margin-bottom: 50px;
    }

    .login-label {
        font-size: 22px;
    }

    .login-control-custom {
        height: calc(2em + 1rem + 2px);
        padding: .5rem 1rem;
        font-size: 1.25rem;
    }

        .login-control-custom::placeholder {
            font-size: 1.25rem;
        }

        .login-control-custom:focus, .login-control-custom:focus-visible, .login-control-custom:active {
            font-size: 1.35rem;
        }

    .btn-login {
        font-size: 22px;
    }
}

@media(max-width:991px) {
    .login-col {
        width: 100%;
    }

    .login-data-col {
        padding: 90px 15px;
    }

    .login-img-col {
    }

    .login-title {
        font-size: 32px;
        margin-bottom: 20px;
    }

    .login-subtitle {
        font-size: 24px;
        margin-bottom: 50px;
    }

    .login-label {
        font-size: 20px;
    }

    .login-control-custom {
        height: calc(2em + 1rem + 2px);
        padding: .5rem 1rem;
        font-size: 1.25rem;
    }

        .login-control-custom::placeholder {
            font-size: 1.25rem;
        }

        .login-control-custom:focus, .login-control-custom:focus-visible, .login-control-custom:active {
            font-size: 1.35rem;
        }

    .btn-login {
        font-size: 22px;
    }
}

@media(max-width:767px) {
    .login-title {
        font-size: 28px;
        margin-bottom: 20px;
    }

    .login-subtitle {
        font-size: 22px;
        margin-bottom: 50px;
    }

    .login-label {
        font-size: 18px;
    }

    .login-control-custom {
        height: calc(1.5em + 0.75rem + 2px);
        padding: .25rem .5rem;
        font-size: .75rem;
    }

        .login-control-custom::placeholder {
            font-size: .75rem;
        }

        .login-control-custom:focus, .login-control-custom:focus-visible, .login-control-custom:active {
            font-size: .85rem;
        }

    .btn-login {
        font-size: 18px;
    }
}

@media(max-width:576px) {
}

/*#endregion*/

/*#region argomenti*/
/*============================================================================================
    ARGOMENTI
============================================================================================*/
.testimonial-wrap.testimonial-slider-active, .testimonial-wrap.sidemenu-wrapper-testimonial-slider-active {
    margin-left: -15px;
    margin-right: -15px;
}

    .testimonial-wrap.testimonial-slider-active .slick-list, .testimonial-wrap.sidemenu-wrapper-testimonial-slider-active .slick-list {
        padding: 0 !important;
    }

    .testimonial-wrap.testimonial-slider-active .testimonial, .testimonial-wrap.sidemenu-wrapper-testimonial-slider-active .testimonial {
        margin-top: 30px;
        margin-bottom: 50px;
    }

.testimonial-wrap .testimonial.slick-center {
    -webkit-box-shadow: 0 15px 20px rgba(85, 85, 85, 0.2);
    -ms-box-shadow: 0 15px 20px rgba(85, 85, 85, 0.2);
    -o-box-shadow: 0 15px 20px rgba(85, 85, 85, 0.2);
    box-shadow: 0 15px 20px rgba(85, 85, 85, 0.2);
}

.testimonial {
    background: #fff;
    border-radius: 10px;
    display: block;
    padding: 70px 25px;
    margin: 0 15px;
    -webkit-box-shadow: 0 1px 3px rgba(85, 85, 85, 0.2);
    -ms-box-shadow: 0 1px 3px rgba(85, 85, 85, 0.2);
    -o-box-shadow: 0 1px 3px rgba(85, 85, 85, 0.2);
    box-shadow: 0 1px 3px rgba(85, 85, 85, 0.2);
    cursor: ew-resize;
    -webkit-transition: all 0.5s ease-in-out 0s;
    transition: all 0.5s ease-in-out 0s;
}

    .testimonial:focus, .testimonial:active {
        outline: none;
    }

.testimonial-thumb {
    height: 85px;
    width: 85px;
    display: inline-block;
    border-radius: 100%;
    overflow: hidden;
    margin-bottom: 20px;
    border: 1px solid #000;
    background: #fff;
}

    .testimonial-thumb img {
        width: 100%;
    }

.testimonial-content {
    line-height: 26px;
    font-size: 14px;
    color: #777777;
}

    .testimonial-content p {
        margin-bottom: 0;
    }

.testimonial-author {
    margin-top: 24px;
}

    .testimonial-author h6 {
        font-size: 16px;
        line-height: 26px;
        font-weight: 600;
        color: #555555;
        font-family: "Roboto", sans-serif;
        margin-bottom: 0;
    }

    .testimonial-author p {
        margin-bottom: 0;
        font-size: 13px;
        line-height: 26px;
        color: #777777;
        font-weight: 400;
    }

.testimonial-wrap.slick-slider.slick-dotted {
    margin-bottom: 20px;
}

/* Testimonial Style 3 */
.testimonial-wrap.testimonial-style-3 .testimonial {
    background: transparent;
    border-radius: 0;
    -webkit-box-shadow: 0 3px 10px rgba(119, 119, 119, 0.25);
    -ms-box-shadow: 0 3px 10px rgba(119, 119, 119, 0.25);
    -o-box-shadow: 0 3px 10px rgba(119, 119, 119, 0.25);
    box-shadow: 0 3px 10px rgba(119, 119, 119, 0.25);
    position: relative;
    margin-top: 75px;
    padding-bottom: 50px;
    padding-left: 60px;
    padding-right: 60px;
    background: #ffffff;
}

    .testimonial-wrap.testimonial-style-3 .testimonial.slick-center {
        -webkit-box-shadow: 0 3px 10px rgba(119, 119, 119, 0.25);
        -ms-box-shadow: 0 3px 10px rgba(119, 119, 119, 0.25);
        -o-box-shadow: 0 3px 10px rgba(119, 119, 119, 0.25);
        box-shadow: 0 3px 10px rgba(119, 119, 119, 0.25);
    }

.testimonial-wrap.testimonial-style-3 .testimonial-content {
    font-size: 16px;
    line-height: 26px;
    color: #555555;
}

.testimonial-wrap.testimonial-style-3 .testimonial-thumb {
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.testimonial-wrap.testimonial-style-3 .testimonial-author h6 {
    font-size: 16px;
    color: #555555;
}

.testimonial-wrap.testimonial-style-3 .testimonial-author p {
    font-size: 14px;
    line-height: 26px;
    color: #777777;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .testimonial-wrap.testimonial-style-3 .testimonial {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .testimonial-wrap.testimonial-style-3 .testimonial {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media only screen and (max-width: 575px) {
    .testimonial-wrap.testimonial-style-3 .testimonial {
        padding-left: 25px;
        padding-right: 25px;
    }
}


/*#endregion*/

/*#region documenti*/
/*============================================================================================
    DOCUMENTI
============================================================================================*/
.callto-action {
    padding: 50px 0;
    overflow: hidden;
}

.callto-action-inner {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -moz-justify-content: space-between;
    justify-content: space-between;
    color: #fff;
    margin-top: -30px;
}

    .callto-action-inner h1,
    .callto-action-inner h2,
    .callto-action-inner h3,
    .callto-action-inner h4,
    .callto-action-inner h5,
    .callto-action-inner h6,
    .callto-action-inner p {
        margin-top: 30px;
        margin-bottom: 0;
        padding-right: 50px;
    }

@media only screen and (max-width: 767px) {
    .callto-action-inner {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

        .callto-action-inner h1,
        .callto-action-inner h2,
        .callto-action-inner h3,
        .callto-action-inner h4,
        .callto-action-inner h5,
        .callto-action-inner h6 {
            padding-right: 20px;
        }
}

.bg-grey .callto-action-inner h1,
.bg-grey .callto-action-inner h2,
.bg-grey .callto-action-inner h3,
.bg-grey .callto-action-inner h4,
.bg-grey .callto-action-inner h5,
.bg-grey .callto-action-inner h6,
.bg-grey .callto-action-inner p {
    color: #555555;
}
/*#endregion*/

/*#region media-query*/
/*============================================================================================
    MEDIA QUERY
============================================================================================*/
@media (max-width:1299px) {
}

@media (max-width:991px) {
}

@media (max-width:767px) {
}

@media (max-width:575px) {
}

@media (max-width:480px) {
}

/*-----Media min-----*/
@media (min-width:480px) {
}

@media (min-width:575px) {
}

@media (min-width:767px) {
    .row_reverse > div:first-child {
        order: 2;
    }
}

@media (min-width:991px) {
}

@media (min-width:1299px) {
}
/*#endregion*/

/*#region bootstrap addons*/
/*============================================================================================
    BOOTSTRAP ADDONS
============================================================================================*/

.font-weight-400 {
    font-weight: 400;
}

.font-weight-500 {
    font-weight: 500;
}

.font-weight-600 {
    font-weight: normal;
}

.font-weight-700 {
    font-weight: 700;
}

.font-weight-800 {
    font-weight: 800;
}

.font-weight-900 {
    font-weight: 900;
}

.w-25 {
    width: 25% !important
}

.w-50 {
    width: 50% !important
}

.w-75 {
    width: 75% !important
}

.w-100 {
    width: 100% !important
}

.w-auto {
    width: auto !important
}

.h-25 {
    height: 25% !important
}

.h-50 {
    height: 50% !important
}

.h-75 {
    height: 75% !important
}

.h-100 {
    height: 100% !important
}

.h-auto {
    height: auto !important
}

.mw-100 {
    max-width: 100% !important
}

.mh-100 {
    max-height: 100% !important
}

.min-vw-100 {
    min-width: 100vw !important
}

.min-vh-100 {
    min-height: 100vh !important
}

.vw-100 {
    width: 100vw !important
}

.vh-100 {
    height: 100vh !important
}

.m-0 {
    margin: 0 !important
}

.mt-0, .my-0 {
    margin-top: 0 !important
}

.mr-0, .mx-0 {
    margin-right: 0 !important
}

.mb-0, .my-0 {
    margin-bottom: 0 !important
}

.ml-0, .mx-0 {
    margin-left: 0 !important
}

.m-1 {
    margin: .25rem !important
}

.mt-1, .my-1 {
    margin-top: .25rem !important
}

.mr-1, .mx-1 {
    margin-right: .25rem !important
}

.mb-1, .my-1 {
    margin-bottom: .25rem !important
}

.ml-1, .mx-1 {
    margin-left: .25rem !important
}

.m-2 {
    margin: .5rem !important
}

.mt-2, .my-2 {
    margin-top: .5rem !important
}

.mr-2, .mx-2 {
    margin-right: .5rem !important
}

.mb-2, .my-2 {
    margin-bottom: .5rem !important
}

.ml-2, .mx-2 {
    margin-left: .5rem !important
}

.m-3 {
    margin: 1rem !important
}

.mt-3, .my-3 {
    margin-top: 1rem !important
}

.mr-3, .mx-3 {
    margin-right: 1rem !important
}

.mb-3, .my-3 {
    margin-bottom: 1rem !important
}

.ml-3, .mx-3 {
    margin-left: 1rem !important
}

.m-4 {
    margin: 1.5rem !important
}

.mt-4, .my-4 {
    margin-top: 1.5rem !important
}

.mr-4, .mx-4 {
    margin-right: 1.5rem !important
}

.mb-4, .my-4 {
    margin-bottom: 1.5rem !important
}

.ml-4, .mx-4 {
    margin-left: 1.5rem !important
}

.m-5 {
    margin: 3rem !important
}

.mt-5, .my-5 {
    margin-top: 3rem !important
}

.mr-5, .mx-5 {
    margin-right: 3rem !important
}

.mb-5, .my-5 {
    margin-bottom: 3rem !important
}

.ml-5, .mx-5 {
    margin-left: 3rem !important
}

.p-0 {
    padding: 0 !important
}

.pt-0, .py-0 {
    padding-top: 0 !important
}

.pr-0, .px-0 {
    padding-right: 0 !important
}

.pb-0, .py-0 {
    padding-bottom: 0 !important
}

.pl-0, .px-0 {
    padding-left: 0 !important
}

.p-1 {
    padding: .25rem !important
}

.pt-1, .py-1 {
    padding-top: .25rem !important
}

.pr-1, .px-1 {
    padding-right: .25rem !important
}

.pb-1, .py-1 {
    padding-bottom: .25rem !important
}

.pl-1, .px-1 {
    padding-left: .25rem !important
}

.p-2 {
    padding: .5rem !important
}

.pt-2, .py-2 {
    padding-top: .5rem !important
}

.pr-2, .px-2 {
    padding-right: .5rem !important
}

.pb-2, .py-2 {
    padding-bottom: .5rem !important
}

.pl-2, .px-2 {
    padding-left: .5rem !important
}

.p-3 {
    padding: 1rem !important
}

.pt-3, .py-3 {
    padding-top: 1rem !important
}

.pr-3, .px-3 {
    padding-right: 1rem !important
}

.pb-3, .py-3 {
    padding-bottom: 1rem !important
}

.pl-3, .px-3 {
    padding-left: 1rem !important
}

.p-4 {
    padding: 1.5rem !important
}

.pt-4, .py-4 {
    padding-top: 1.5rem !important
}

.pr-4, .px-4 {
    padding-right: 1.5rem !important
}

.pb-4, .py-4 {
    padding-bottom: 1.5rem !important
}

.pl-4, .px-4 {
    padding-left: 1.5rem !important
}

.p-5 {
    padding: 3rem !important
}

.pt-5, .py-5 {
    padding-top: 3rem !important
}

.pr-5, .px-5 {
    padding-right: 3rem !important
}

.pb-5, .py-5 {
    padding-bottom: 3rem !important
}

.pl-5, .px-5 {
    padding-left: 3rem !important
}

.m-n1 {
    margin: -.25rem !important
}

.mt-n1, .my-n1 {
    margin-top: -.25rem !important
}

.mr-n1, .mx-n1 {
    margin-right: -.25rem !important
}

.mb-n1, .my-n1 {
    margin-bottom: -.25rem !important
}

.ml-n1, .mx-n1 {
    margin-left: -.25rem !important
}

.m-n2 {
    margin: -.5rem !important
}

.mt-n2, .my-n2 {
    margin-top: -.5rem !important
}

.mr-n2, .mx-n2 {
    margin-right: -.5rem !important
}

.mb-n2, .my-n2 {
    margin-bottom: -.5rem !important
}

.ml-n2, .mx-n2 {
    margin-left: -.5rem !important
}

.m-n3 {
    margin: -1rem !important
}

.mt-n3, .my-n3 {
    margin-top: -1rem !important
}

.mr-n3, .mx-n3 {
    margin-right: -1rem !important
}

.mb-n3, .my-n3 {
    margin-bottom: -1rem !important
}

.ml-n3, .mx-n3 {
    margin-left: -1rem !important
}

.m-n4 {
    margin: -1.5rem !important
}

.mt-n4, .my-n4 {
    margin-top: -1.5rem !important
}

.mr-n4, .mx-n4 {
    margin-right: -1.5rem !important
}

.mb-n4, .my-n4 {
    margin-bottom: -1.5rem !important
}

.ml-n4, .mx-n4 {
    margin-left: -1.5rem !important
}

.m-n5 {
    margin: -3rem !important
}

.mt-n5, .my-n5 {
    margin-top: -3rem !important
}

.mr-n5, .mx-n5 {
    margin-right: -3rem !important
}

.mb-n5, .my-n5 {
    margin-bottom: -3rem !important
}

.ml-n5, .mx-n5 {
    margin-left: -3rem !important
}

.m-auto {
    margin: auto !important
}

.mt-auto, .my-auto {
    margin-top: auto !important
}

.mr-auto, .mx-auto {
    margin-right: auto !important
}

.mb-auto, .my-auto {
    margin-bottom: auto !important
}

.ml-auto, .mx-auto {
    margin-left: auto !important
}

@media (min-width:576px) {
    .m-sm-0 {
        margin: 0 !important
    }

    .mt-sm-0, .my-sm-0 {
        margin-top: 0 !important
    }

    .mr-sm-0, .mx-sm-0 {
        margin-right: 0 !important
    }

    .mb-sm-0, .my-sm-0 {
        margin-bottom: 0 !important
    }

    .ml-sm-0, .mx-sm-0 {
        margin-left: 0 !important
    }

    .m-sm-1 {
        margin: .25rem !important
    }

    .mt-sm-1, .my-sm-1 {
        margin-top: .25rem !important
    }

    .mr-sm-1, .mx-sm-1 {
        margin-right: .25rem !important
    }

    .mb-sm-1, .my-sm-1 {
        margin-bottom: .25rem !important
    }

    .ml-sm-1, .mx-sm-1 {
        margin-left: .25rem !important
    }

    .m-sm-2 {
        margin: .5rem !important
    }

    .mt-sm-2, .my-sm-2 {
        margin-top: .5rem !important
    }

    .mr-sm-2, .mx-sm-2 {
        margin-right: .5rem !important
    }

    .mb-sm-2, .my-sm-2 {
        margin-bottom: .5rem !important
    }

    .ml-sm-2, .mx-sm-2 {
        margin-left: .5rem !important
    }

    .m-sm-3 {
        margin: 1rem !important
    }

    .mt-sm-3, .my-sm-3 {
        margin-top: 1rem !important
    }

    .mr-sm-3, .mx-sm-3 {
        margin-right: 1rem !important
    }

    .mb-sm-3, .my-sm-3 {
        margin-bottom: 1rem !important
    }

    .ml-sm-3, .mx-sm-3 {
        margin-left: 1rem !important
    }

    .m-sm-4 {
        margin: 1.5rem !important
    }

    .mt-sm-4, .my-sm-4 {
        margin-top: 1.5rem !important
    }

    .mr-sm-4, .mx-sm-4 {
        margin-right: 1.5rem !important
    }

    .mb-sm-4, .my-sm-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-sm-4, .mx-sm-4 {
        margin-left: 1.5rem !important
    }

    .m-sm-5 {
        margin: 3rem !important
    }

    .mt-sm-5, .my-sm-5 {
        margin-top: 3rem !important
    }

    .mr-sm-5, .mx-sm-5 {
        margin-right: 3rem !important
    }

    .mb-sm-5, .my-sm-5 {
        margin-bottom: 3rem !important
    }

    .ml-sm-5, .mx-sm-5 {
        margin-left: 3rem !important
    }

    .p-sm-0 {
        padding: 0 !important
    }

    .pt-sm-0, .py-sm-0 {
        padding-top: 0 !important
    }

    .pr-sm-0, .px-sm-0 {
        padding-right: 0 !important
    }

    .pb-sm-0, .py-sm-0 {
        padding-bottom: 0 !important
    }

    .pl-sm-0, .px-sm-0 {
        padding-left: 0 !important
    }

    .p-sm-1 {
        padding: .25rem !important
    }

    .pt-sm-1, .py-sm-1 {
        padding-top: .25rem !important
    }

    .pr-sm-1, .px-sm-1 {
        padding-right: .25rem !important
    }

    .pb-sm-1, .py-sm-1 {
        padding-bottom: .25rem !important
    }

    .pl-sm-1, .px-sm-1 {
        padding-left: .25rem !important
    }

    .p-sm-2 {
        padding: .5rem !important
    }

    .pt-sm-2, .py-sm-2 {
        padding-top: .5rem !important
    }

    .pr-sm-2, .px-sm-2 {
        padding-right: .5rem !important
    }

    .pb-sm-2, .py-sm-2 {
        padding-bottom: .5rem !important
    }

    .pl-sm-2, .px-sm-2 {
        padding-left: .5rem !important
    }

    .p-sm-3 {
        padding: 1rem !important
    }

    .pt-sm-3, .py-sm-3 {
        padding-top: 1rem !important
    }

    .pr-sm-3, .px-sm-3 {
        padding-right: 1rem !important
    }

    .pb-sm-3, .py-sm-3 {
        padding-bottom: 1rem !important
    }

    .pl-sm-3, .px-sm-3 {
        padding-left: 1rem !important
    }

    .p-sm-4 {
        padding: 1.5rem !important
    }

    .pt-sm-4, .py-sm-4 {
        padding-top: 1.5rem !important
    }

    .pr-sm-4, .px-sm-4 {
        padding-right: 1.5rem !important
    }

    .pb-sm-4, .py-sm-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-sm-4, .px-sm-4 {
        padding-left: 1.5rem !important
    }

    .p-sm-5 {
        padding: 3rem !important
    }

    .pt-sm-5, .py-sm-5 {
        padding-top: 3rem !important
    }

    .pr-sm-5, .px-sm-5 {
        padding-right: 3rem !important
    }

    .pb-sm-5, .py-sm-5 {
        padding-bottom: 3rem !important
    }

    .pl-sm-5, .px-sm-5 {
        padding-left: 3rem !important
    }

    .m-sm-n1 {
        margin: -.25rem !important
    }

    .mt-sm-n1, .my-sm-n1 {
        margin-top: -.25rem !important
    }

    .mr-sm-n1, .mx-sm-n1 {
        margin-right: -.25rem !important
    }

    .mb-sm-n1, .my-sm-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-sm-n1, .mx-sm-n1 {
        margin-left: -.25rem !important
    }

    .m-sm-n2 {
        margin: -.5rem !important
    }

    .mt-sm-n2, .my-sm-n2 {
        margin-top: -.5rem !important
    }

    .mr-sm-n2, .mx-sm-n2 {
        margin-right: -.5rem !important
    }

    .mb-sm-n2, .my-sm-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-sm-n2, .mx-sm-n2 {
        margin-left: -.5rem !important
    }

    .m-sm-n3 {
        margin: -1rem !important
    }

    .mt-sm-n3, .my-sm-n3 {
        margin-top: -1rem !important
    }

    .mr-sm-n3, .mx-sm-n3 {
        margin-right: -1rem !important
    }

    .mb-sm-n3, .my-sm-n3 {
        margin-bottom: -1rem !important
    }

    .ml-sm-n3, .mx-sm-n3 {
        margin-left: -1rem !important
    }

    .m-sm-n4 {
        margin: -1.5rem !important
    }

    .mt-sm-n4, .my-sm-n4 {
        margin-top: -1.5rem !important
    }

    .mr-sm-n4, .mx-sm-n4 {
        margin-right: -1.5rem !important
    }

    .mb-sm-n4, .my-sm-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-sm-n4, .mx-sm-n4 {
        margin-left: -1.5rem !important
    }

    .m-sm-n5 {
        margin: -3rem !important
    }

    .mt-sm-n5, .my-sm-n5 {
        margin-top: -3rem !important
    }

    .mr-sm-n5, .mx-sm-n5 {
        margin-right: -3rem !important
    }

    .mb-sm-n5, .my-sm-n5 {
        margin-bottom: -3rem !important
    }

    .ml-sm-n5, .mx-sm-n5 {
        margin-left: -3rem !important
    }

    .m-sm-auto {
        margin: auto !important
    }

    .mt-sm-auto, .my-sm-auto {
        margin-top: auto !important
    }

    .mr-sm-auto, .mx-sm-auto {
        margin-right: auto !important
    }

    .mb-sm-auto, .my-sm-auto {
        margin-bottom: auto !important
    }

    .ml-sm-auto, .mx-sm-auto {
        margin-left: auto !important
    }
}

@media (min-width:768px) {
    .m-md-0 {
        margin: 0 !important
    }

    .mt-md-0, .my-md-0 {
        margin-top: 0 !important
    }

    .mr-md-0, .mx-md-0 {
        margin-right: 0 !important
    }

    .mb-md-0, .my-md-0 {
        margin-bottom: 0 !important
    }

    .ml-md-0, .mx-md-0 {
        margin-left: 0 !important
    }

    .m-md-1 {
        margin: .25rem !important
    }

    .mt-md-1, .my-md-1 {
        margin-top: .25rem !important
    }

    .mr-md-1, .mx-md-1 {
        margin-right: .25rem !important
    }

    .mb-md-1, .my-md-1 {
        margin-bottom: .25rem !important
    }

    .ml-md-1, .mx-md-1 {
        margin-left: .25rem !important
    }

    .m-md-2 {
        margin: .5rem !important
    }

    .mt-md-2, .my-md-2 {
        margin-top: .5rem !important
    }

    .mr-md-2, .mx-md-2 {
        margin-right: .5rem !important
    }

    .mb-md-2, .my-md-2 {
        margin-bottom: .5rem !important
    }

    .ml-md-2, .mx-md-2 {
        margin-left: .5rem !important
    }

    .m-md-3 {
        margin: 1rem !important
    }

    .mt-md-3, .my-md-3 {
        margin-top: 1rem !important
    }

    .mr-md-3, .mx-md-3 {
        margin-right: 1rem !important
    }

    .mb-md-3, .my-md-3 {
        margin-bottom: 1rem !important
    }

    .ml-md-3, .mx-md-3 {
        margin-left: 1rem !important
    }

    .m-md-4 {
        margin: 1.5rem !important
    }

    .mt-md-4, .my-md-4 {
        margin-top: 1.5rem !important
    }

    .mr-md-4, .mx-md-4 {
        margin-right: 1.5rem !important
    }

    .mb-md-4, .my-md-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-md-4, .mx-md-4 {
        margin-left: 1.5rem !important
    }

    .m-md-5 {
        margin: 3rem !important
    }

    .mt-md-5, .my-md-5 {
        margin-top: 3rem !important
    }

    .mr-md-5, .mx-md-5 {
        margin-right: 3rem !important
    }

    .mb-md-5, .my-md-5 {
        margin-bottom: 3rem !important
    }

    .ml-md-5, .mx-md-5 {
        margin-left: 3rem !important
    }

    .p-md-0 {
        padding: 0 !important
    }

    .pt-md-0, .py-md-0 {
        padding-top: 0 !important
    }

    .pr-md-0, .px-md-0 {
        padding-right: 0 !important
    }

    .pb-md-0, .py-md-0 {
        padding-bottom: 0 !important
    }

    .pl-md-0, .px-md-0 {
        padding-left: 0 !important
    }

    .p-md-1 {
        padding: .25rem !important
    }

    .pt-md-1, .py-md-1 {
        padding-top: .25rem !important
    }

    .pr-md-1, .px-md-1 {
        padding-right: .25rem !important
    }

    .pb-md-1, .py-md-1 {
        padding-bottom: .25rem !important
    }

    .pl-md-1, .px-md-1 {
        padding-left: .25rem !important
    }

    .p-md-2 {
        padding: .5rem !important
    }

    .pt-md-2, .py-md-2 {
        padding-top: .5rem !important
    }

    .pr-md-2, .px-md-2 {
        padding-right: .5rem !important
    }

    .pb-md-2, .py-md-2 {
        padding-bottom: .5rem !important
    }

    .pl-md-2, .px-md-2 {
        padding-left: .5rem !important
    }

    .p-md-3 {
        padding: 1rem !important
    }

    .pt-md-3, .py-md-3 {
        padding-top: 1rem !important
    }

    .pr-md-3, .px-md-3 {
        padding-right: 1rem !important
    }

    .pb-md-3, .py-md-3 {
        padding-bottom: 1rem !important
    }

    .pl-md-3, .px-md-3 {
        padding-left: 1rem !important
    }

    .p-md-4 {
        padding: 1.5rem !important
    }

    .pt-md-4, .py-md-4 {
        padding-top: 1.5rem !important
    }

    .pr-md-4, .px-md-4 {
        padding-right: 1.5rem !important
    }

    .pb-md-4, .py-md-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-md-4, .px-md-4 {
        padding-left: 1.5rem !important
    }

    .p-md-5 {
        padding: 3rem !important
    }

    .pt-md-5, .py-md-5 {
        padding-top: 3rem !important
    }

    .pr-md-5, .px-md-5 {
        padding-right: 3rem !important
    }

    .pb-md-5, .py-md-5 {
        padding-bottom: 3rem !important
    }

    .pl-md-5, .px-md-5 {
        padding-left: 3rem !important
    }

    .m-md-n1 {
        margin: -.25rem !important
    }

    .mt-md-n1, .my-md-n1 {
        margin-top: -.25rem !important
    }

    .mr-md-n1, .mx-md-n1 {
        margin-right: -.25rem !important
    }

    .mb-md-n1, .my-md-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-md-n1, .mx-md-n1 {
        margin-left: -.25rem !important
    }

    .m-md-n2 {
        margin: -.5rem !important
    }

    .mt-md-n2, .my-md-n2 {
        margin-top: -.5rem !important
    }

    .mr-md-n2, .mx-md-n2 {
        margin-right: -.5rem !important
    }

    .mb-md-n2, .my-md-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-md-n2, .mx-md-n2 {
        margin-left: -.5rem !important
    }

    .m-md-n3 {
        margin: -1rem !important
    }

    .mt-md-n3, .my-md-n3 {
        margin-top: -1rem !important
    }

    .mr-md-n3, .mx-md-n3 {
        margin-right: -1rem !important
    }

    .mb-md-n3, .my-md-n3 {
        margin-bottom: -1rem !important
    }

    .ml-md-n3, .mx-md-n3 {
        margin-left: -1rem !important
    }

    .m-md-n4 {
        margin: -1.5rem !important
    }

    .mt-md-n4, .my-md-n4 {
        margin-top: -1.5rem !important
    }

    .mr-md-n4, .mx-md-n4 {
        margin-right: -1.5rem !important
    }

    .mb-md-n4, .my-md-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-md-n4, .mx-md-n4 {
        margin-left: -1.5rem !important
    }

    .m-md-n5 {
        margin: -3rem !important
    }

    .mt-md-n5, .my-md-n5 {
        margin-top: -3rem !important
    }

    .mr-md-n5, .mx-md-n5 {
        margin-right: -3rem !important
    }

    .mb-md-n5, .my-md-n5 {
        margin-bottom: -3rem !important
    }

    .ml-md-n5, .mx-md-n5 {
        margin-left: -3rem !important
    }

    .m-md-auto {
        margin: auto !important
    }

    .mt-md-auto, .my-md-auto {
        margin-top: auto !important
    }

    .mr-md-auto, .mx-md-auto {
        margin-right: auto !important
    }

    .mb-md-auto, .my-md-auto {
        margin-bottom: auto !important
    }

    .ml-md-auto, .mx-md-auto {
        margin-left: auto !important
    }
}

@media (min-width:992px) {
    .m-lg-0 {
        margin: 0 !important
    }

    .mt-lg-0, .my-lg-0 {
        margin-top: 0 !important
    }

    .mr-lg-0, .mx-lg-0 {
        margin-right: 0 !important
    }

    .mb-lg-0, .my-lg-0 {
        margin-bottom: 0 !important
    }

    .ml-lg-0, .mx-lg-0 {
        margin-left: 0 !important
    }

    .m-lg-1 {
        margin: .25rem !important
    }

    .mt-lg-1, .my-lg-1 {
        margin-top: .25rem !important
    }

    .mr-lg-1, .mx-lg-1 {
        margin-right: .25rem !important
    }

    .mb-lg-1, .my-lg-1 {
        margin-bottom: .25rem !important
    }

    .ml-lg-1, .mx-lg-1 {
        margin-left: .25rem !important
    }

    .m-lg-2 {
        margin: .5rem !important
    }

    .mt-lg-2, .my-lg-2 {
        margin-top: .5rem !important
    }

    .mr-lg-2, .mx-lg-2 {
        margin-right: .5rem !important
    }

    .mb-lg-2, .my-lg-2 {
        margin-bottom: .5rem !important
    }

    .ml-lg-2, .mx-lg-2 {
        margin-left: .5rem !important
    }

    .m-lg-3 {
        margin: 1rem !important
    }

    .mt-lg-3, .my-lg-3 {
        margin-top: 1rem !important
    }

    .mr-lg-3, .mx-lg-3 {
        margin-right: 1rem !important
    }

    .mb-lg-3, .my-lg-3 {
        margin-bottom: 1rem !important
    }

    .ml-lg-3, .mx-lg-3 {
        margin-left: 1rem !important
    }

    .m-lg-4 {
        margin: 1.5rem !important
    }

    .mt-lg-4, .my-lg-4 {
        margin-top: 1.5rem !important
    }

    .mr-lg-4, .mx-lg-4 {
        margin-right: 1.5rem !important
    }

    .mb-lg-4, .my-lg-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-lg-4, .mx-lg-4 {
        margin-left: 1.5rem !important
    }

    .m-lg-5 {
        margin: 3rem !important
    }

    .mt-lg-5, .my-lg-5 {
        margin-top: 3rem !important
    }

    .mr-lg-5, .mx-lg-5 {
        margin-right: 3rem !important
    }

    .mb-lg-5, .my-lg-5 {
        margin-bottom: 3rem !important
    }

    .ml-lg-5, .mx-lg-5 {
        margin-left: 3rem !important
    }

    .p-lg-0 {
        padding: 0 !important
    }

    .pt-lg-0, .py-lg-0 {
        padding-top: 0 !important
    }

    .pr-lg-0, .px-lg-0 {
        padding-right: 0 !important
    }

    .pb-lg-0, .py-lg-0 {
        padding-bottom: 0 !important
    }

    .pl-lg-0, .px-lg-0 {
        padding-left: 0 !important
    }

    .p-lg-1 {
        padding: .25rem !important
    }

    .pt-lg-1, .py-lg-1 {
        padding-top: .25rem !important
    }

    .pr-lg-1, .px-lg-1 {
        padding-right: .25rem !important
    }

    .pb-lg-1, .py-lg-1 {
        padding-bottom: .25rem !important
    }

    .pl-lg-1, .px-lg-1 {
        padding-left: .25rem !important
    }

    .p-lg-2 {
        padding: .5rem !important
    }

    .pt-lg-2, .py-lg-2 {
        padding-top: .5rem !important
    }

    .pr-lg-2, .px-lg-2 {
        padding-right: .5rem !important
    }

    .pb-lg-2, .py-lg-2 {
        padding-bottom: .5rem !important
    }

    .pl-lg-2, .px-lg-2 {
        padding-left: .5rem !important
    }

    .p-lg-3 {
        padding: 1rem !important
    }

    .pt-lg-3, .py-lg-3 {
        padding-top: 1rem !important
    }

    .pr-lg-3, .px-lg-3 {
        padding-right: 1rem !important
    }

    .pb-lg-3, .py-lg-3 {
        padding-bottom: 1rem !important
    }

    .pl-lg-3, .px-lg-3 {
        padding-left: 1rem !important
    }

    .p-lg-4 {
        padding: 1.5rem !important
    }

    .pt-lg-4, .py-lg-4 {
        padding-top: 1.5rem !important
    }

    .pr-lg-4, .px-lg-4 {
        padding-right: 1.5rem !important
    }

    .pb-lg-4, .py-lg-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-lg-4, .px-lg-4 {
        padding-left: 1.5rem !important
    }

    .p-lg-5 {
        padding: 3rem !important
    }

    .pt-lg-5, .py-lg-5 {
        padding-top: 3rem !important
    }

    .pr-lg-5, .px-lg-5 {
        padding-right: 3rem !important
    }

    .pb-lg-5, .py-lg-5 {
        padding-bottom: 3rem !important
    }

    .pl-lg-5, .px-lg-5 {
        padding-left: 3rem !important
    }

    .m-lg-n1 {
        margin: -.25rem !important
    }

    .mt-lg-n1, .my-lg-n1 {
        margin-top: -.25rem !important
    }

    .mr-lg-n1, .mx-lg-n1 {
        margin-right: -.25rem !important
    }

    .mb-lg-n1, .my-lg-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-lg-n1, .mx-lg-n1 {
        margin-left: -.25rem !important
    }

    .m-lg-n2 {
        margin: -.5rem !important
    }

    .mt-lg-n2, .my-lg-n2 {
        margin-top: -.5rem !important
    }

    .mr-lg-n2, .mx-lg-n2 {
        margin-right: -.5rem !important
    }

    .mb-lg-n2, .my-lg-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-lg-n2, .mx-lg-n2 {
        margin-left: -.5rem !important
    }

    .m-lg-n3 {
        margin: -1rem !important
    }

    .mt-lg-n3, .my-lg-n3 {
        margin-top: -1rem !important
    }

    .mr-lg-n3, .mx-lg-n3 {
        margin-right: -1rem !important
    }

    .mb-lg-n3, .my-lg-n3 {
        margin-bottom: -1rem !important
    }

    .ml-lg-n3, .mx-lg-n3 {
        margin-left: -1rem !important
    }

    .m-lg-n4 {
        margin: -1.5rem !important
    }

    .mt-lg-n4, .my-lg-n4 {
        margin-top: -1.5rem !important
    }

    .mr-lg-n4, .mx-lg-n4 {
        margin-right: -1.5rem !important
    }

    .mb-lg-n4, .my-lg-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-lg-n4, .mx-lg-n4 {
        margin-left: -1.5rem !important
    }

    .m-lg-n5 {
        margin: -3rem !important
    }

    .mt-lg-n5, .my-lg-n5 {
        margin-top: -3rem !important
    }

    .mr-lg-n5, .mx-lg-n5 {
        margin-right: -3rem !important
    }

    .mb-lg-n5, .my-lg-n5 {
        margin-bottom: -3rem !important
    }

    .ml-lg-n5, .mx-lg-n5 {
        margin-left: -3rem !important
    }

    .m-lg-auto {
        margin: auto !important
    }

    .mt-lg-auto, .my-lg-auto {
        margin-top: auto !important
    }

    .mr-lg-auto, .mx-lg-auto {
        margin-right: auto !important
    }

    .mb-lg-auto, .my-lg-auto {
        margin-bottom: auto !important
    }

    .ml-lg-auto, .mx-lg-auto {
        margin-left: auto !important
    }
}

@media (min-width:1200px) {
    .m-xl-0 {
        margin: 0 !important
    }

    .mt-xl-0, .my-xl-0 {
        margin-top: 0 !important
    }

    .mr-xl-0, .mx-xl-0 {
        margin-right: 0 !important
    }

    .mb-xl-0, .my-xl-0 {
        margin-bottom: 0 !important
    }

    .ml-xl-0, .mx-xl-0 {
        margin-left: 0 !important
    }

    .m-xl-1 {
        margin: .25rem !important
    }

    .mt-xl-1, .my-xl-1 {
        margin-top: .25rem !important
    }

    .mr-xl-1, .mx-xl-1 {
        margin-right: .25rem !important
    }

    .mb-xl-1, .my-xl-1 {
        margin-bottom: .25rem !important
    }

    .ml-xl-1, .mx-xl-1 {
        margin-left: .25rem !important
    }

    .m-xl-2 {
        margin: .5rem !important
    }

    .mt-xl-2, .my-xl-2 {
        margin-top: .5rem !important
    }

    .mr-xl-2, .mx-xl-2 {
        margin-right: .5rem !important
    }

    .mb-xl-2, .my-xl-2 {
        margin-bottom: .5rem !important
    }

    .ml-xl-2, .mx-xl-2 {
        margin-left: .5rem !important
    }

    .m-xl-3 {
        margin: 1rem !important
    }

    .mt-xl-3, .my-xl-3 {
        margin-top: 1rem !important
    }

    .mr-xl-3, .mx-xl-3 {
        margin-right: 1rem !important
    }

    .mb-xl-3, .my-xl-3 {
        margin-bottom: 1rem !important
    }

    .ml-xl-3, .mx-xl-3 {
        margin-left: 1rem !important
    }

    .m-xl-4 {
        margin: 1.5rem !important
    }

    .mt-xl-4, .my-xl-4 {
        margin-top: 1.5rem !important
    }

    .mr-xl-4, .mx-xl-4 {
        margin-right: 1.5rem !important
    }

    .mb-xl-4, .my-xl-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-xl-4, .mx-xl-4 {
        margin-left: 1.5rem !important
    }

    .m-xl-5 {
        margin: 3rem !important
    }

    .mt-xl-5, .my-xl-5 {
        margin-top: 3rem !important
    }

    .mr-xl-5, .mx-xl-5 {
        margin-right: 3rem !important
    }

    .mb-xl-5, .my-xl-5 {
        margin-bottom: 3rem !important
    }

    .ml-xl-5, .mx-xl-5 {
        margin-left: 3rem !important
    }

    .p-xl-0 {
        padding: 0 !important
    }

    .pt-xl-0, .py-xl-0 {
        padding-top: 0 !important
    }

    .pr-xl-0, .px-xl-0 {
        padding-right: 0 !important
    }

    .pb-xl-0, .py-xl-0 {
        padding-bottom: 0 !important
    }

    .pl-xl-0, .px-xl-0 {
        padding-left: 0 !important
    }

    .p-xl-1 {
        padding: .25rem !important
    }

    .pt-xl-1, .py-xl-1 {
        padding-top: .25rem !important
    }

    .pr-xl-1, .px-xl-1 {
        padding-right: .25rem !important
    }

    .pb-xl-1, .py-xl-1 {
        padding-bottom: .25rem !important
    }

    .pl-xl-1, .px-xl-1 {
        padding-left: .25rem !important
    }

    .p-xl-2 {
        padding: .5rem !important
    }

    .pt-xl-2, .py-xl-2 {
        padding-top: .5rem !important
    }

    .pr-xl-2, .px-xl-2 {
        padding-right: .5rem !important
    }

    .pb-xl-2, .py-xl-2 {
        padding-bottom: .5rem !important
    }

    .pl-xl-2, .px-xl-2 {
        padding-left: .5rem !important
    }

    .p-xl-3 {
        padding: 1rem !important
    }

    .pt-xl-3, .py-xl-3 {
        padding-top: 1rem !important
    }

    .pr-xl-3, .px-xl-3 {
        padding-right: 1rem !important
    }

    .pb-xl-3, .py-xl-3 {
        padding-bottom: 1rem !important
    }

    .pl-xl-3, .px-xl-3 {
        padding-left: 1rem !important
    }

    .p-xl-4 {
        padding: 1.5rem !important
    }

    .pt-xl-4, .py-xl-4 {
        padding-top: 1.5rem !important
    }

    .pr-xl-4, .px-xl-4 {
        padding-right: 1.5rem !important
    }

    .pb-xl-4, .py-xl-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-xl-4, .px-xl-4 {
        padding-left: 1.5rem !important
    }

    .p-xl-5 {
        padding: 3rem !important
    }

    .pt-xl-5, .py-xl-5 {
        padding-top: 3rem !important
    }

    .pr-xl-5, .px-xl-5 {
        padding-right: 3rem !important
    }

    .pb-xl-5, .py-xl-5 {
        padding-bottom: 3rem !important
    }

    .pl-xl-5, .px-xl-5 {
        padding-left: 3rem !important
    }

    .m-xl-n1 {
        margin: -.25rem !important
    }

    .mt-xl-n1, .my-xl-n1 {
        margin-top: -.25rem !important
    }

    .mr-xl-n1, .mx-xl-n1 {
        margin-right: -.25rem !important
    }

    .mb-xl-n1, .my-xl-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-xl-n1, .mx-xl-n1 {
        margin-left: -.25rem !important
    }

    .m-xl-n2 {
        margin: -.5rem !important
    }

    .mt-xl-n2, .my-xl-n2 {
        margin-top: -.5rem !important
    }

    .mr-xl-n2, .mx-xl-n2 {
        margin-right: -.5rem !important
    }

    .mb-xl-n2, .my-xl-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-xl-n2, .mx-xl-n2 {
        margin-left: -.5rem !important
    }

    .m-xl-n3 {
        margin: -1rem !important
    }

    .mt-xl-n3, .my-xl-n3 {
        margin-top: -1rem !important
    }

    .mr-xl-n3, .mx-xl-n3 {
        margin-right: -1rem !important
    }

    .mb-xl-n3, .my-xl-n3 {
        margin-bottom: -1rem !important
    }

    .ml-xl-n3, .mx-xl-n3 {
        margin-left: -1rem !important
    }

    .m-xl-n4 {
        margin: -1.5rem !important
    }

    .mt-xl-n4, .my-xl-n4 {
        margin-top: -1.5rem !important
    }

    .mr-xl-n4, .mx-xl-n4 {
        margin-right: -1.5rem !important
    }

    .mb-xl-n4, .my-xl-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-xl-n4, .mx-xl-n4 {
        margin-left: -1.5rem !important
    }

    .m-xl-n5 {
        margin: -3rem !important
    }

    .mt-xl-n5, .my-xl-n5 {
        margin-top: -3rem !important
    }

    .mr-xl-n5, .mx-xl-n5 {
        margin-right: -3rem !important
    }

    .mb-xl-n5, .my-xl-n5 {
        margin-bottom: -3rem !important
    }

    .ml-xl-n5, .mx-xl-n5 {
        margin-left: -3rem !important
    }

    .m-xl-auto {
        margin: auto !important
    }

    .mt-xl-auto, .my-xl-auto {
        margin-top: auto !important
    }

    .mr-xl-auto, .mx-xl-auto {
        margin-right: auto !important
    }

    .mb-xl-auto, .my-xl-auto {
        margin-bottom: auto !important
    }

    .ml-xl-auto, .mx-xl-auto {
        margin-left: auto !important
    }
}

.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

/*Per hidden col*/

@media (max-width: 575px) {
    .hidden-xs-down, .hidden-sm-down, .hidden-md-down, .hidden-lg-down, .hidden-xl-down,
    .hidden-xs-up,
    .hidden-unless-sm, .hidden-unless-md, .hidden-unless-lg, .hidden-unless-xl {
        display: none !important;
    }
}
/* Breakpoint SM */
@media (min-width: 576px) and (max-width: 767px) {
    .hidden-sm-down, .hidden-md-down, .hidden-lg-down, .hidden-xl-down,
    .hidden-xs-up, .hidden-sm-up,
    .hidden-unless-xs, .hidden-unless-md, .hidden-unless-lg, .hidden-unless-xl {
        display: none !important;
    }
}
/* Breakpoint MD */
@media (min-width: 768px) and (max-width: 991px) {
    .hidden-md-down, .hidden-lg-down, .hidden-xl-down,
    .hidden-xs-up, .hidden-sm-up, .hidden-md-up,
    .hidden-unless-xs, .hidden-unless-sm, .hidden-unless-lg, .hidden-unless-xl {
        display: none !important;
    }
}
/* Breakpoint LG */
@media (min-width: 992px) and (max-width: 1199px) {
    .hidden-lg-down, .hidden-xl-down,
    .hidden-xs-up, .hidden-sm-up, .hidden-md-up, .hidden-lg-up,
    .hidden-unless-xs, .hidden-unless-sm, .hidden-unless-md, .hidden-unless-xl {
        display: none !important;
    }
}
/* Breakpoint XL */
@media (min-width: 1200px) {
    .hidden-xl-down,
    .hidden-xs-up, .hidden-sm-up, .hidden-md-up, .hidden-lg-up, .hidden-xl-up,
    .hidden-unless-xs, .hidden-unless-sm, .hidden-unless-md, .hidden-unless-lg {
        display: none !important;
    }
}
/*#endregion*/

/*#region fancybox*/
/*============================================================================================
    FANCYBOX
============================================================================================*/

.fancybox-container {
    z-index: 999999;
}
/*#region contatti*/
/*============================================================================================
    CONTATTI
============================================================================================*/

@media (max-width: 576px) {
    .tp-contact-item {
        align-items: flex-start !important;
    }

    .tp-contact-content {
        min-width: 0;
        flex: 1;
    }

        .tp-contact-content a {
            overflow-wrap: anywhere;
            word-break: break-word;
        }
}

@media(max-width:767px) {
    .idPaddingContattiMobile {
        margin-bottom: 50px !important;
    }
}

.tp-contact-icon-contatti-persona {
    height: 50px;
    width: 50px;
    border-radius: 50%;
    line-height: 50px;
    text-align: center;
    background-color: #F8F8F8;
    display: inline-block;
    margin-right: 28px;
    color: black;
    margin-bottom: 20px;
}
/*#endregion*/

/*#region Locazioni*/
/*============================================================================================
    Locazioni
============================================================================================*/

.immobili-info > span {
    max-width: 33%;
    margin: auto;
    font-size: 25px;
    color: #666;
}

.slider .slick-track, .slider-nav .slick-track {
    display: flex;
}

.slider .slick-slide, .slider-nav .slick-slide {
    margin: auto;
}

.slider .dettaglio-imm-slider-img-container {
    display: flex;
    height: 100%;
}

slider .dettaglio-imm-slider-img {
    max-width: 100%;
    width: auto;
    margin: auto;
}

.dettaglio-imm-info-item {
    font-size: 20px;
    color: #000;
    position: relative;
}

    .dettaglio-imm-info-item:before {
        content: '';
        position: absolute;
        width: 96%;
        height: 1px;
        left: 2%;
        bottom: -7px;
        background: #e2bf77;
    }

.dettaglio-imm-descrizione {
    text-align: center;
    color: #000;
    font-size: 18px;
}

.dettaglio-imm-sottotitolo {
    color: #000;
    font-weight: normal;
    text-align: center;
    font-size: 28px;
}
/*#endregion*/

/*#region News*/
/*============================================================================================
    News
============================================================================================*/

.page-title {
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 120px 0 0;
    min-height: 450px;
    height: 65vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 1000px) {
    .page-title {
        min-height: 200px;
        background-position: top center;
    }
}

.page-title:before {
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.page-title .title {
    font-size: 64px;
    color: #ffffff;
    margin-bottom: 17px;
}

@media only screen and (max-width: 768px) {
    .page-title .title {
        font-size: 34px;
    }
}

.page-title .text {
    position: relative;
    color: #ffffff;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.05em;
    max-width: 520px;
}

.auto-container {
    position: static;
    max-width: 1200px;
    padding: 0px 15px;
    margin: 0 auto;
    width: 100%;
}

.content-box-border {
    border: 1px solid #8080803d;
    width: 98%;
    height: 100%;
    position: relative;
    left: 7px;
    box-sizing: border-box;
    padding: 10px;
    max-height: 1000px;
}

.scritta-center {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 400px;
    flex-direction: column;
}

.news-center-container {
    text-align: center;
}

.news-image-box {
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 20px auto;
}

    .news-image-box img {
        max-width: 100%;
        height: auto;
        display: block;
    }

.news-text-block {
    max-width: 850px;
    margin: 0 auto;
    text-align: justify;
}

.news-list {
    list-style: none;
    margin: 80px 120px 50px 0;
    padding-left: 0;
}

    .news-list li {
        padding: 12px 0; 
        border-bottom: 1px solid #e0e0e0; 
        transition: transform 0.15s ease; 
        display: flex;
        align-items: center;
    }

        .news-list li:hover {
            transform: translateX(5px); 
        }

    .news-list a {
        text-decoration: none;
        font-size: 1rem;
        color: #444444;
        font-weight: 500;
        display: block;
        transition: color 0.2s, font-weight 0.2s, font-size 0.2s;
    }

        .news-list a:hover {
            color: #000000;
            font-weight: 600;
            font-size: 1.1rem;
        }

    .news-list li::before {
        content: "➤";
        color: #333;
        margin-right: 10px;
    }


/*#endregion*/
