/* =============================================
   ÉLISE DAUNAY — responsive.css
   Designed & coded by josephpasqualini.com
   ============================================= */

@media only screen and (min-width: 1281px) {

    .logo-container {
        pointer-events: auto;
    }

    .logo {
        cursor: pointer;
    }

}

@media only screen and (min-width: 1281px) and (max-width: 1380px) {
    .selected-clients-bar {
        max-width: 32vw !important;
    }

    .email-corner {
        flex-direction: column !important;
        align-items: flex-end !important;
        gap: 0 !important;
        top: 0 !important;
    }
}

@media only screen and (max-width: 1280px) {

    html,
    body {
        overflow-x: hidden !important;
        overflow-y: auto !important;
        background: var(--color-bg);
        position: relative;
        width: 100%;
        height: auto;
        min-height: 100%;
    }

    #loader span {
        font-size: 28px;
        line-height: var(--line-height-base);
    }

    .image-carousel {
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        z-index: 1;
    }

    .carousel-item {
        position: absolute;
        width: 100%;
        height: 51vh;
        max-height: none;
        left: 50%;
        top: 0;
        transform: translateX(-50%);
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 20px;
        opacity: 0;
        transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        pointer-events: none;
        cursor: pointer;
        -webkit-user-select: none;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
    }

    .carousel-item.active.is-visible {
        opacity: 1;
        pointer-events: auto;
    }

    .carousel-image {
        width: auto;
        max-width: 85%;
        height: auto;
        max-height: 46vh;
        object-fit: contain;
    }

    .carousel-item .carousel-image:nth-child(n+2) {
        display: none;
    }

    .mobile-footer-wrapper {
        position: relative;
        top: auto;
        margin-top: calc(51vh + var(--mobile-padding));
        left: 0px;
        right: 0px;
        bottom: auto;
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        gap: var(--mobile-padding);
        align-items: flex-start;
        z-index: 50;
        pointer-events: none;
        transform: none !important;
        overflow: visible;
        padding-left: 0;
        padding-right: 0;
        padding-top: var(--mobile-padding);
        padding-bottom: 40px;
    }

    .logo-container,
    .services-block,
    .email-corner {
        position: static !important;
        width: 100% !important;
        max-width: none !important;
        text-align: left !important;
        pointer-events: auto;
        flex: 0 0 auto !important;
        margin: 0 !important;
        padding: 0 !important;
        left: 0 !important;
    }

    .logo-container {
        display: block;
        line-height: var(--line-height-base);
        padding-left: var(--mobile-padding) !important;
        padding-right: var(--mobile-padding) !important;
    }

    .mobile-break {
        display: none;
    }

    .logo {
        display: inline;
        font-size: var(--font-size-base);
        line-height: var(--line-height-base);
        color: var(--color-primary);
        cursor: pointer;
        pointer-events: auto;
        -webkit-tap-highlight-color: transparent;
        user-select: none;
    }

    .logo::after {
        content: " +";
        font-size: 24px;
        color: var(--color-primary);
    }

    .logo-container.logo-open .logo::after {
        content: " −";
    }

    .bio-text {
        display: none !important;
        position: static !important;
        font-size: var(--font-size-base);
        line-height: var(--line-height-base);
        color: var(--color-primary);
        width: auto !important;
        max-width: 100%;
        text-align: left;
        margin-top: 4px;
        margin-left: 0;
        padding-left: 0;
        padding-right: 0;
        overflow: hidden;
        transition: max-height 0.3s ease-out;
    }

    .bio-text[style*="display: inline"],
    .bio-text[style*="display: block"] {
        display: block !important;
    }

    .bio-text a,
    .bio-text a:link,
    .bio-text a:visited {
        color: inherit;
        text-decoration: none;
    }

    .bio-text a:hover {
        color: var(--color-white);
    }

    .services-layout {
        display: block;
        position: relative;
    }

    .services-layout .services-column {
        margin-bottom: var(--mobile-padding);
    }

    .services-layout .services-column:last-child {
        margin-bottom: 0;
    }

    .services-block p,
    .services-layout .services-column p {
        font-size: var(--font-size-base);
        line-height: var(--line-height-base);
        color: var(--color-primary);
        margin: 0;
        padding-left: var(--mobile-padding);
        padding-right: var(--mobile-padding);
    }

    .services-title {
        font-size: var(--font-size-base) !important;
        line-height: var(--line-height-base);
        color: var(--color-primary);
        display: inline;
        cursor: pointer;
        padding-left: var(--mobile-padding);
        padding-right: var(--mobile-padding);
        -webkit-tap-highlight-color: transparent;
        user-select: none;
    }

    .services-title::after {
        content: " +";
        font-size: 24px;
        color: var(--color-primary);
    }

    .logo-container.services-open~.services-block .services-title::after {
        content: " −";
    }

    .services-text {
        display: none;
        position: static !important;
        font-size: var(--font-size-base);
        line-height: var(--line-height-base);
        color: var(--color-primary);
        margin-top: 4px;
        width: auto !important;
        padding-left: 0px;
        padding-right: 0px;
        overflow: hidden;
        transition: max-height 0.3s ease-out;
    }

    .services-text p {
        display: block !important;
        margin: 0 0 4px 0;
        font-size: var(--font-size-base);
        line-height: var(--line-height-base);
        color: var(--color-primary);
    }

    .services-text p:last-child {
        margin-bottom: 0;
    }

    .selected-clients-bar {
        display: block !important;
        flex: 0 0 auto !important;
        margin-left: 0;
        padding-left: var(--mobile-padding);
        padding-right: var(--mobile-padding);
        width: 100% !important;
        max-width: none !important;
        cursor: pointer;
        pointer-events: auto;
        -webkit-tap-highlight-color: transparent;
        user-select: none;
    }

    .selected-clients-bar .selected-clients-title {
        font-size: var(--font-size-base) !important;
        line-height: var(--line-height-base);
        color: var(--color-primary);
        display: inline;
        white-space: nowrap;
        -webkit-tap-highlight-color: transparent;
        user-select: none;
    }

    .selected-clients-bar .image-caption {
        display: block !important;
        position: static !important;
        font-size: var(--font-size-base);
        line-height: var(--line-height-base);
        color: var(--color-primary);
        opacity: 1 !important;
        margin-left: 0 !important;
        margin-top: 4px;
        text-align: left;
        padding-left: 0 !important;
        padding-right: 0 !important;
        white-space: normal;
        overflow: visible;
        width: 100% !important;
        max-width: none;
    }

    .email-corner {
        padding-left: var(--mobile-padding) !important;
        padding-right: var(--mobile-padding) !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: var(--mobile-padding);
        justify-content: flex-start !important;
        margin-left: 0 !important;
    }

    .email-corner a:nth-child(3) {
        flex-basis: auto;
    }

    .email-corner br {
        display: none;
    }

    .email-corner a,
    .email-corner a:link,
    .email-corner a:visited {
        font-size: var(--font-size-base) !important;
        line-height: var(--line-height-base);
        color: var(--color-primary);
        display: inline !important;
        text-decoration: none;
        background: none !important;
        -webkit-text-fill-color: var(--color-primary) !important;
    }

    .email-corner a:hover,
    .email-corner a:active {
        color: var(--color-white) !important;
        -webkit-text-fill-color: var(--color-white) !important;
    }

    @media only screen and (max-height: 700px) {
        .carousel-image {
            max-height: 43vh;
        }
    }

    @media only screen and (min-width: 601px) {
        .carousel-item {
            height: 61vh;
        }

        .carousel-image {
            max-width: 80%;
            max-height: 60vh;
        }

        .mobile-footer-wrapper {
            margin-top: calc(61vh + var(--mobile-padding));
        }
    }
}

/* ── Mobile-break visible à partir de 601px (était nested, maintenant à plat) ─ */
@media only screen and (min-width: 601px) and (max-width: 1280px) {
    .mobile-break {
        display: block;
    }
}
