/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
* {
    font-family: 'Poppins', sans-serif;
}

.elementor-widget-shortcode {
    width: 100%;
}

.property-slider-wrap .gallery-top .swiper-slide {
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-color: transparent !important;
}

.property-slider-wrap .gallery-thumbs .swiper-slide {
    background-size: cover !important;
    aspect-ratio: 1 / 1 !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-color: transparent !important;
}

.property-slider-wrap {
    width: 100%;
    height: var(--property-slider-height, 600px);
    margin-left: auto;
    margin-right: auto;
    --property-slider-watermark-image: url('/wp-content/uploads/2026/02/Logo-Paris-demeures.png');
}

.property-slider-wrap .gallery-top {
    width: 100%;
    height: 80%;
}

.property-slider-wrap .gallery-top .swiper-slide {
    width: 100%;
    height: 100%;
    position: relative;
    cursor: var(--property-slider-cursor, default);
}

.property-slider-wrap .gallery-top .swiper-slide::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: var(--property-slider-watermark-image);
    background-repeat: no-repeat;
    background-position: center;
    background-size: clamp(140px, 28%, 320px);
    opacity: 0.7;
    pointer-events: none;
    z-index: 2;
}

.property-slider-wrap .property-slider-lightbox-link {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.glightbox-container.property-slider-glightbox .gslide-image {
    position: relative;
}

.glightbox-container.property-slider-glightbox .gslide-image::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url('/wp-content/uploads/2026/02/Logo-Paris-demeures.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: clamp(160px, 30%, 360px);
    opacity: 0.35;
    pointer-events: none;
    z-index: 3;
}

.property-slider-wrap .swiper-button-prev,
.property-slider-wrap .swiper-button-next {
    color: #fff;
}

.property-slider-wrap .gallery-thumbs {
    height: 20%;
    box-sizing: border-box;
    padding-top: var(--property-slider-space-between, 10px);
}

.property-slider-wrap .gallery-thumbs .swiper-slide {
    width: 25%;
    height: 100%;
    opacity: 0.4;
    cursor: pointer;
    border-radius: 4px;
    transition: opacity 0.3s ease;
}

.property-slider-wrap .gallery-thumbs .swiper-slide-thumb-active {
    opacity: 1;
}

.property-print-button-wrap {
    display: inline-flex;
}

.property-print-link {
    display: inline-flex;
    line-height: 0;
}

.property-print-icon {
    width: 40px;
    height: 40px;
    display: block;
}

@media print {
    @page {
        size: A4 portrait;
        margin: 12mm 14mm;
    }

    html,
    body {
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
        color: #202020 !important;
        font-size: 10pt !important;
        line-height: 1.45 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    html body .elementor-location-header,
    html body .elementor-location-footer,
    html body > header,
    html body > footer,
    #wpadminbar,
    .smooth-back-to-top-button,
    #vue-app,
    .elementor-element-a52cc2e,
    .elementor-element-46937ec,
    .elementor-element-a91cafd,
    .elementor-element-dfb068e,
    .elementor-element-1f85ee5,
    .elementor-element-054d797,
    .property-print-button-wrap,
    .property-slider-wrap .gallery-thumbs,
    .property-slider-wrap .swiper-button-prev,
    .property-slider-wrap .swiper-button-next,
    .property-slider-wrap .swiper-pagination,
    .glightbox-container,
    #tidio-chat,
    .cky-consent-container {
        display: none !important;
    }

    a[href]::after,
    a[href]::before {
        content: none !important;
        display: none !important;
    }

    main,
    #content,
    .site-main,
    .elementor,
    .elementor-element-9a73cf0,
    .elementor-element-341df8f,
    .elementor-element-341df8f > .e-con-inner,
    .elementor-element-da2fcc0,
    .elementor-element-bcf3266,
    .elementor-element-ac655a7,
    .elementor-element-c12aa30 {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .elementor-element-e9f5767 {
        margin: 0 0 3mm !important;
        padding: 0 0 2mm !important;
        border-bottom: 2px solid #1d1d1b !important;
    }

    .elementor-element-e9f5767 .elementor-heading-title {
        margin: 0 !important;
        color: #1d1d1b !important;
        font-size: 20pt !important;
        line-height: 1.15 !important;
        font-weight: 600 !important;
    }

    .property-slider-wrap {
        width: 100% !important;
        height: 58mm !important;
        margin: 0 0 3mm !important;
        overflow: hidden !important;
        break-inside: avoid;
    }

    .property-slider-wrap .gallery-top,
    .property-slider-wrap .swiper-wrapper,
    .property-slider-wrap .gallery-top .swiper-slide {
        width: 100% !important;
        height: 58mm !important;
        margin: 0 !important;
        transform: none !important;
    }

    .property-slider-wrap .gallery-top .swiper-slide {
        display: none !important;
    }

    .property-slider-wrap .gallery-top .swiper-slide-active,
    .property-slider-wrap .gallery-top .swiper-slide:has(.property-print-image) {
        display: block !important;
        position: relative !important;
    }

    .property-slider-wrap .gallery-top .swiper-slide::after,
    .property-slider-wrap .property-slider-lightbox-link {
        display: none !important;
    }

    .property-print-image {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        object-position: center !important;
    }

    .elementor-element-111e799 {
        margin: 0 0 3mm !important;
        font-size: 8.5pt !important;
        line-height: 1.35 !important;
    }

    .elementor-element-111e799 p {
        margin: 0 0 1.2mm !important;
        orphans: 3;
        widows: 3;
    }

    .elementor-element-0b8334f,
    .elementor-element-8008b02,
    .elementor-element-6169f31 {
        margin: 0 0 2mm !important;
        break-inside: avoid;
    }

    .elementor-element-d9298c5 {
        display: grid !important;
        grid-template-columns: minmax(0, 2fr) minmax(42mm, 1fr) !important;
        column-gap: 5mm !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        align-items: start !important;
    }

    .elementor-element-d9298c5 > .elementor-element-8008b02 {
        grid-column: 1 / -1 !important;
    }

    .elementor-element-0b8334f table {
        width: 100% !important;
        border-collapse: collapse !important;
        font-size: 8.5pt !important;
    }

    .elementor-element-0b8334f td {
        padding: 1.2mm 2mm !important;
        border: 1px solid #d8d8d8 !important;
        color: #202020 !important;
    }

    .elementor-element-0b8334f tr:nth-child(odd) td {
        background: #f4f1ec !important;
    }

    .elementor-element-0b8334f td:first-child {
        width: 42% !important;
        font-weight: 600 !important;
    }

    .elementor-element-8008b02 .e-n-accordion-item-title {
        padding: 1.5mm 0 !important;
        border-bottom: 1px solid #b8b8b8 !important;
        font-size: 10pt !important;
        font-weight: 600 !important;
    }

    .elementor-element-8008b02 .e-n-accordion-item-title-icon {
        display: none !important;
    }

    .elementor-element-8008b02 .e-con,
    .elementor-element-8008b02 [role="region"] {
        display: block !important;
        padding: 1mm 0 !important;
    }

    .elementor-element-6169f31 {
        display: block !important;
        grid-column: 2 !important;
        grid-row: 2 / span 2 !important;
        width: 100% !important;
        padding-top: 2mm !important;
        border-top: 1px solid #b8b8b8 !important;
        text-align: center !important;
    }

    .elementor-element-6169f31 .elementor-heading-title {
        margin: 0 0 1mm !important;
        font-size: 11pt !important;
        text-align: left !important;
    }

    .elementor-element-6169f31 .property-dpe-forward-svg {
        width: 40mm !important;
        max-width: 40mm !important;
        max-height: 43mm !important;
        height: auto !important;
        margin: 0 auto !important;
    }

    .elementor-element-4d1feaf,
    .elementor-element-20842bb {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        break-inside: avoid;
    }

    .elementor-element-4d1feaf {
        grid-column: 1 !important;
        grid-row: 2 !important;
    }

    .elementor-element-20842bb {
        grid-column: 1 !important;
        grid-row: 3 !important;
    }

    .elementor-element-4d1feaf .elementor-heading-title {
        margin: 0 0 1mm !important;
        padding-top: 2mm !important;
        border-top: 1px solid #b8b8b8 !important;
        color: #202020 !important;
        font-size: 11pt !important;
        font-weight: 600 !important;
    }

    .elementor-element-20842bb iframe {
        display: block !important;
        width: 100% !important;
        height: 43mm !important;
        min-height: 0 !important;
        border: 0 !important;
    }

    a,
    a:visited {
        color: #202020 !important;
        text-decoration: none !important;
    }
}

.property-print-button-wrap[data-align="left"] {
    justify-content: flex-start;
}

.property-print-button-wrap[data-align="center"] {
    justify-content: center;
}

.property-print-button-wrap[data-align="right"] {
    justify-content: flex-end;
}

.property-print-button-wrap[data-width="full"] {
    display: flex;
    width: 100%;
}

@media (min-width: 768px) {
    .property-grid__image {
        height: 100% !important;
    }
}
