.elementor-kit-6{--e-global-color-primary:#FFFFFF;--e-global-color-secondary:#BBBBBB;--e-global-color-text:#333333;--e-global-color-accent:#E30613;--e-global-color-bb0cc38:#EEEEEE;--e-global-color-91ef915:#222222;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-text );font-family:"Manrope", Sans-serif;font-size:1.3rem;line-height:1.6em;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 p{margin-block-end:0.8rem;}.elementor-kit-6 a{color:var( --e-global-color-accent );}.elementor-kit-6 h1{color:var( --e-global-color-primary );font-family:"Manrope", Sans-serif;font-size:3.34rem;font-weight:500;line-height:1.3em;}.elementor-kit-6 h2{color:var( --e-global-color-primary );font-size:3rem;font-weight:400;line-height:1.3em;}.elementor-kit-6 h3{color:var( --e-global-color-text );font-size:2rem;font-weight:500;line-height:1.11em;}.elementor-kit-6 h4{font-size:1.4rem;font-weight:700;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1728px;}.e-con{--container-max-width:1728px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{--lightbox-header-icons-size:2.2rem;--lightbox-navigation-icons-size:2.5rem;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6 h1{font-size:2.8rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{font-size:1.6rem;}.elementor-kit-6 h1{font-size:2.4rem;}.elementor-kit-6 h2{font-size:2.8rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */html{
    font-size: 1vw;
}

.logo img{
    transition: all 0.5s;
}
.mobile-br{
    display: none;
}
.desktop-br{
    display: inline;
}
.header-galerie h2{
    font-size: 2.3rem;
}
.opacity-hover a{
    transition: all 0.5s;
}
.opacity-hover a:hover{
    opacity: 0.7;
}
/* Carousel Equal Height Images*/
.elementor-image-carousel img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
/*.elementor-widget-text-editor  ul li{
    margin-bottom: 1rem !important;
}*/
.button-dot::after, .form-button button::after{
    content: "";
    height: 1.1rem;
    width: 1.1rem;
    background-image: url('https://usimm.dreamhosters.com/wp-content/uploads/2026/07/dot.svg');
    position: absolute;
    top: calc(50% - 0.5rem);
    right: 2rem;
    transition: all 0.5s;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.button-dot:hover::after, .form-button-white button::after{
    transform: scale(1.3);
}
.red-dot .elementor-widget-heading .elementor-heading-title{
    transition: all 0.5s;
}
.red-dot:hover .elementor-widget-heading .elementor-heading-title{
    color: #ffffff !important;
}
.red-dot::after{
    background-image: url('https://usimm.dreamhosters.com/wp-content/uploads/2026/07/red-dot.svg');
}
.red-dot:hover::after{
    background-image: url('https://usimm.dreamhosters.com/wp-content/uploads/2026/07/dot.svg');
}
.button-dot-before::after{
    content: "";
    height: 1.1rem;
    width: 1.1rem;
    background-image: url('https://usimm.dreamhosters.com/wp-content/uploads/2026/07/dot.svg');
    position: absolute;
    top: calc(50% - 0.5rem);
    left: 3.5rem;
    transition: all 0.5s;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.button-dot-before:hover::after, .form-button button:hover::after{
    transform: scale(1.3);
}
.bracket-box {
    --size: 4.28rem;
    --thickness: 2px;
    --color: #fff;

    background:
        /* Top left horizontal */
        linear-gradient(var(--color), var(--color))
            top left / var(--size) var(--thickness) no-repeat,

        /* Top left vertical */
        linear-gradient(var(--color), var(--color))
            top left / var(--thickness) var(--size) no-repeat,

        /* Bottom right horizontal */
        linear-gradient(var(--color), var(--color))
            bottom right / var(--size) var(--thickness) no-repeat,

        /* Bottom right vertical */
        linear-gradient(var(--color), var(--color))
            bottom right / var(--thickness) var(--size) no-repeat;
}
.red-brackets{
    --size: 4.28rem;
    --thickness: 2px;
    --color: #E30613;

    background:
        /* Top left horizontal */
        linear-gradient(var(--color), var(--color))
            top left / var(--size) var(--thickness) no-repeat,

        /* Top left vertical */
        linear-gradient(var(--color), var(--color))
            top left / var(--thickness) var(--size) no-repeat,

        /* Bottom right horizontal */
        linear-gradient(var(--color), var(--color))
            bottom right / var(--size) var(--thickness) no-repeat,

        /* Bottom right vertical */
        linear-gradient(var(--color), var(--color))
            bottom right / var(--thickness) var(--size) no-repeat;
}
.gallery-image::after{
    content: "";
    position: absolute;
    background-image: url('https://usimm.dreamhosters.com/wp-content/uploads/2026/07/gallery-icon.svg');
    background-size: contain;
    height: 4.22rem;
    width: 4.22rem;
    bottom: 1rem;
    right: 1rem;
}
/* Menu  */
.menu-item-l1{
    transition: all 0.5s;
}
.menu-item-l1:hover{
    color: rgba(255, 255, 255, 0.7);
}
.menu-item-l1:before{
    content: "";
    height: 1.04rem;
    width: 1.04rem;
    background-image: url('https://usimm.dreamhosters.com/wp-content/uploads/2026/07/dot.svg');
    position: absolute;
    background-size: contain;
    top: calc(50% - 0.5rem);
    left: -4rem;
    transition: all 0.5s;
}
.menu-item-l1:hover::before{
    transform: scale(1.3);
}
.submenu-l1{
    position: absolute;
    right: -2rem;
    top: 0.8rem;
}
.submenu-l2{
    position: absolute;
    right: -2rem;
    top: 0rem;
}

.menu-l2-container{
    transition: all 0.5s;
    position: absolute;
    top: 0rem;
    left: 0rem;
    opacity: 0;
}
.menu-l2-container:before{
    content: "";
    background-color: white;
    width: 2px;
    height: 24.53rem;
    top: 1rem;
    left: -3rem;
}
.menu-l2-container .elementor-heading-title{
    text-decoration-thickness: 0.1px !important;
    text-underline-offset: 2px;
}

.menu-l3-container{
    transition: all 0.5s;
    position: absolute;
    top: 0rem;
    left: 38rem;
    opacity: 0;
}
.menu-l3-container:before{
    content: "";
    background-color: white;
    width: 2px;
    height: 24.53rem;
    top: 1rem;
    left: -3rem;
}
.menu-l3-container .elementor-heading-title{
    text-decoration-thickness: 0.1px !important;
    text-underline-offset: 2px;
}
.open-sub{
    left: 38rem;
    opacity: 1;
}
.open-sub-2{
    left: 65rem;
    opacity: 1;
}
/* Gallery */
.carousel-realisations .swiper-slide {
    position: relative;
    overflow: hidden;
    cursor: pointer;
}
.carousel-realisations .swiper-slide img {
    display: block;
    width: 100%;
}

/* Dark overlay — hidden by default */
.carousel-realisations .swiper-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: opacity 0.25s ease;
    z-index: 1;
    pointer-events: none;
    border-radius: 20px;
}

/* Caption — hidden by default */
.carousel-realisations .elementor-image-carousel-caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    margin: 0;
    padding: 10px;
    box-sizing: border-box;
    text-align: center;
    color: #fff;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.8);
    opacity: 0;
    transition: opacity 0.25s ease;
    z-index: 2;
    pointer-events: none;
    width: 80%;
}

/* Show both on hover */
.carousel-realisations .swiper-slide:hover::after,
.carousel-realisations .swiper-slide:hover .elementor-image-carousel-caption {
    opacity: 1;
}

.carousel-realisations .elementor-swiper-button {
    width: 2.5rem;
    height: 2.5rem;
    background: #e30613;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* Swiper button size */
.elementor-swiper-button svg{
    height: 2.5rem !important;
    width: 2.5rem !important;
}

@media only screen and (min-width:1025px) {
    /* Shrunk state */
    .elementor-location-header{
        height: 11.34rem;
    }
.shrink-header {
    height: 11.34rem;
    min-height: 11.34rem;
    transition: all 0.5s;
}
 .shrink-header.is-shrunk {
    height: 7rem;
    min-height: 7rem;
}
.shrink-header.is-shrunk .logo img{
    width: 6em !important;
}
.shrink-header.is-shrunk .hamburger .elementor-icon{
    font-size: 4rem !important;
}
}
@media only screen and (min-width:1728px) {
    html{
        font-size: 17.28px;
    }
}

@media only screen and (max-width:1024px) {
    html{
        font-size: 1.5vw !important;
    }
}
@media only screen and (max-width:600px) {
    html{
        font-size: 2.5vw !important;
    }
    .mobile-br{
        display: inline;
    }
    .hide-mobile{
        display: none;
    }
    .desktop-br{
        display: none;
    }
    /* .element-catalogue:after{
        content: "";
        background-image: url('https://mandatmarketing.com/wp-content/uploads/2026/02/cercle-saumon.svg');
        background-size: 0.5rem 0.5rem;
        background-repeat: no-repeat;
        height: 0.5rem;
        width: 0.5rem;
        position: absolute;
        bottom: -1.2rem;
    } */
}/* End custom CSS */