/* Medium devices (tablets, 768px and up) */
@media (max-width: 768px) {
    /*header */
    .header-elements-button-1 {
        width: 2.75rem;
        height: 2.75rem;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 1.5rem !important;
    }

    .header-elements-button-1.btn-icon-align-left i {
        margin: 0;
        font-size: 1.375rem
    }

    .header-elements-button-1 span {
        display: none;
    }

    /* default */
    .full_width_mobile img {
        max-width: calc(100vw + 30px);
        width: calc(100vw + 30px);
        margin-left: -15px;
    }

    .box-full-width-mobile {
        max-width: calc(100% + 30px);
        width: calc(100% + 30px);
        margin-left: -15px;
    }

    .reverse-row-mobile {
        flex-direction: column-reverse;
    }

    .reverse-row-mobile img {
        max-height: 215px;
        object-fit: cover;
    }

    .vc_section.bloc_flottant_desktop {
        background-size: auto 375px !important;
        background-position: left 10% top !important;
    }

    .box-full-width-mobile .ult-content-box {
        padding: 30px 1.25rem !important;
    }

    .box_banner_st1.ult-banner-block {
        max-height: 332px;
    }

    .box_banner_st1.ult-banner-block .mask {
        transform: translate(0);
        opacity: 1;
        background: transparent !important;
    }

    .box_banner_st1.ult-banner-block .mask .bb-description {
        background: white;
        font: 400 1rem/1.3 var(--font-secondary) !important;
        color: var(--color-primary-dark) !important;
    }


}

@media (min-width: 768px) {
    .box_banner_st2.ult-banner-block .bb-top-title {
        margin: 0 auto 40px;
    }

    /* FOOTER */
    footer .wp-block-image img {
        margin: -5px 0 0;
    }

    .socials {
        margin-top: 0rem;
    }

    .links_button span {
        display: inline-block;
    }

    .links_button a {
        padding: .625rem 1.875rem;
        width: auto;
        height: auto
    }

    .links_button i {
        font-size: 1.25rem;
    }

    #bottom-bar strong {
        width: auto;
        text-align: left;
    }

    #bottom-bar {
        font-size: 0.875rem;
    }

    #presscore-custom-menu-one-2 {
        border-top: 0.0625rem solid var(--beige);
        padding-top: 1.25rem;
        padding-bottom: 1.25rem
    }

    #presscore-custom-menu-one-2 .custom-menu {
        display: block;
        column-count: 4;
        font-size: .94rem;
    }

    #presscore-custom-menu-one-2 .widget-title {
        background: transparent;
        padding: 0;
        font: 500 1.5rem/1.5 'Playfair Display';
    }

    /* slider */
    .blog-shortcode .post,
    .owl-carousel .post {
        align-items: flex-start;
        margin-bottom: 40px;
    }



    /* REALISATION */
    .single-realisation .header-page > div > i {
        display: block;
    }

    .single-realisation .header-page {
        flex-direction: row;
        text-align: center;
        min-height: 36.25rem;
        align-items: flex-end;
    }

    .single-realisation .header-page .title {
        font-size: 2.5rem;
    }

    .single-realisation .header-page > div {
        width: 33%;
        text-align: center;
    }

    .single-realisation .header-page > div > span:not(.title) {
        width: 17.4375rem;
        display: block;
        margin: 0 auto 5.625rem;
        font-size: 1.25rem;
    }

    .single-realisation .infos {
        justify-content: center;
        margin-bottom: 2rem;
        font-weight: 600;
    }

    .single-realisation .infos i {
        font-size: 2rem;
    }

    .single-realisation .infos > div {
        flex-direction: column;
        font-size: 1.125rem;
    }

    .single-realisation .header-page img {
        width: calc(67% + ((100vw - 100%) / 2));
        margin-left: 0;
        min-height: 100%;
        position: absolute;
        left: 33%;
        top: 0;
        bottom: 0;
        height: 100%;
    }

    .single-realisation h1 {
        font-size: 2.5rem;
    }

    .single-realisation .pagination-projets {
        padding: .75rem 0;
        font-size: 1.125rem;
        margin-bottom: 4.3125rem;
    }

    .single-realisation .sous-title {
        font-size: 1.5rem;
    }

    .owl-media-reals {
        width: 100%;
        margin-left: 0;
    }

    .owl-media-reals img {
        aspect-ratio: 4/3;
    }

    .single-realisation .custom-text {
        padding: 0 3.625rem;
        max-width: 45rem;
        margin: 0 auto 3.56rem;
    }

    .single-realisation section.row {
        flex-direction: row-reverse;
    }

    .single-realisation .img-portrait {
        margin-bottom: 3rem;
    }

    .single-realisation section.row > * {
        padding: 0 .625rem;
        box-sizing: border-box;
    }

    .cta-container .title {
        font-size: 2.5rem;
        max-width: 100%;
    }

    .cta-buttons .btn {
        font-size: .94rem;
    }

    .h2 {
        font-size: 2.5rem;
    }
    #reals_agence .owl-carousel{
        width:100%;
        margin-left: 0;
        max-width: 100%;
    }
    #avis-agence {
        padding-bottom: 1rem;
    }

    #reals_agence .h2{
        text-align: left;
    }

    .text-md-left *, .text-md-left {
        text-align: left !important;
    }
    /* FLUENT FORM */
    .fluentform .ff_upload_btn.ff-btn:hover, .fluentform .ff_upload_btn.ff-btn{
        width: 12.5rem
    }
    .fluentform form .ff-btn-submit:not(.ff_btn_no_style) {
        font-size: 1rem;
        width: auto;
    }
    .fluentform .ff-step-titles li > span {
        font: 600 1.125rem/1.5 var(--font-secondary);

    }
    .truncate{
        overflow:visible;
    }
    .expand_text .truncate{
        overflow:hidden;
    }
    .expand_text  span.plus{
        font-size:1rem;
    }
}


/* Mobile : activer le carrousel */
@media (max-width: 767px) {
    .w-100-mobile .ult-content-box{
        border-radius: 0 !important;
        padding: 20px 15px 30px 15px !important;
    }

    .w-100-mobile{
        width: calc(100% + 30px) !important;
        max-width: calc(100% + 30px);
        margin-left: -15px;
        border-radius: 0 !important;
    }

    .card-recap{
        padding: 20px 15px;
    }

    .tabs_with_btn .ult_tabmenu.style1 span.ult-span-text {
        margin: 0;
    }

    .header-elements-button-1 {
        padding: 0 !important;
        text-align: center !important;
    }

    .header-elements-button-1 i {
        margin: 0 !important;
    }

    .agency-card-container > div:last-of-type{
        box-sizing:border-box;
        padding-left:.5rem;
    }

    .tabs_with_btn .ult_tabmenu.style1 {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none; /* Firefox */
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        width: calc(100% + 15px);
        padding-right: 15px;
    }

    .tabs_with_btn .ult_tabcontent {
        width: calc(100% + 30px);
        margin-left: -15px;
    }

    .tabs_with_btn .ult_tabmenu.style1::-webkit-scrollbar {
        display: none; /* Chrome/Safari */
    }

    .tabs_with_btn .ult_tabmenu.style1 .ult_tab_li {
        flex: 0 0 auto; /* Chaque tab garde sa taille */
        scroll-snap-align: start;
    }

}