/**
 * Homepage above-the-fold layout locks (sync).
 * Matches post-theme layout so deferred akkus.min.css causes minimal shift.
 */
body.home {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: #333;
}

body.home .site-header {
    display: block;
    min-height: 130px;
}

body.home .middle-header {
    min-height: 61px;
}

body.home .main-menu-wrapper {
    min-height: 48px;
}

@media (min-width: 992px) {
    body.home header.site-header .main-menu-wrapper {
        margin-bottom: 15px !important;
    }

    body.home .site-showcase.desktop-hero-system {
        margin-top: 15px !important;
        display: block;
        width: 100%;
        position: relative;
        overflow: hidden;
        aspect-ratio: 1600 / 450;
        height: auto !important;
        min-height: 0 !important;
    }
}

body.home .main {
    position: relative;
    z-index: 1;
    margin-top: 10px;
    background: #fff;
}

@media (min-width: 992px) {
    body.home main.main {
        z-index: 1 !important;
        margin-top: 0;
        padding-top: 32px;
    }

    body.home section.page-section.desktop-hero-system {
        position: relative;
        z-index: 200 !important;
        margin-top: 0 !important;
        min-height: 0;
        pointer-events: none;
    }

    body.home section.page-section.desktop-hero-system .search-luxury-wrapper {
        pointer-events: auto;
        position: relative;
        z-index: 201 !important;
        margin-top: -105px !important;
    }

    body.home .featured-blocks.page-section,
    body.home .homepage-intro-container {
        position: relative;
        z-index: 1;
    }

    body.home .anavit .container,
    body.home .col-md-12.anavit .container {
        transform: none !important;
        padding-top: 73px !important;
    }

    body.home .homepage-intro-container {
        padding-top: 73px !important;
    }
}

body.home .homepage-intro-container {
    padding-top: 40px;
    padding-bottom: 60px;
}

body.home .homepage-h1 {
    font-size: 32px;
    font-weight: 800;
    line-height: 1.12;
    margin: 0 0 25px;
    color: #111827;
}

body.home .intro-trust {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.4;
    margin: 10px 0 20px;
}

body.home section#featured-properties.homepage-great-offers-section {
    overflow-x: clip;
}

body.home section#featured-properties.homepage-great-offers-section .great-offers-wrapper {
    min-height: 420px;
}

@media (max-width: 991px) {
    body.home .site-header {
        min-height: 100px;
    }

    body.home section#featured-properties.homepage-great-offers-section .great-offers-wrapper {
        min-height: 360px;
    }
}

@media (min-width: 992px) {
    body.home .page-section.desktop-hero-system .search-luxury-wrapper {
        min-height: 88px;
        position: relative;
        z-index: 201 !important;
        margin-top: -105px !important;
    }

    body.home .search-luxury-wrapper .site-search-module {
        min-height: 72px;
        z-index: 202 !important;
    }
}

/* Image slots before deferred akkus.css / owl-last.css (Nitro lazy placeholders) */
body.home .ep-image-wrapper {
    aspect-ratio: 4 / 3;
    width: 100%;
    min-height: 200px;
    overflow: hidden;
    position: relative;
    background: #eef0f3;
}

body.home .ep-image-wrapper .ep-image-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 4 / 3;
}

section#featured-properties.homepage-great-offers-section #homepage-great-offers-carousel .property-featured-image {
    aspect-ratio: 16 / 10;
    width: 100%;
    min-height: 180px;
    overflow: hidden;
    position: relative;
    background: #eef0f3;
}

section#featured-properties.homepage-great-offers-section #homepage-great-offers-carousel .property-featured-image .offers-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 16 / 10;
}

@media (min-width: 992px) {
    section#featured-properties.homepage-great-offers-section #homepage-great-offers-carousel .property-featured-image {
        min-height: 240px;
        height: auto;
    }
}

/* Contrast before deferred akkus.css (WCAG AA) — include Nitro lazy placeholders */
body.home .green-price-badge,
body.home .green-price-badge.nitro-lazy,
body.home #featured-properties .green-price-badge,
body.home #featured-properties .green-price-badge.nitro-lazy,
body.home .ep-card .green-price-badge,
body.home .editor-picks-card .green-price-badge {
    background: #157a3d !important;
    color: #ffffff !important;
    font-weight: 600;
}

body.home .green-price-badge .price-prefix,
body.home .green-price-badge .price-prefix.nitro-lazy,
body.home .green-price-badge .hero-value,
body.home .green-price-badge .hero-currency {
    color: #ffffff !important;
}

body.home .home-service-card__text {
    color: #515154 !important;
}

body.home .home-service-card__link,
body.home .home-service-card__link.nitro-lazy {
    color: #0b57d0 !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

body.home .read-more-toggle-seo,
body.home .read-more-toggle-seo-mobile {
    color: #0b57d0;
    text-decoration: underline;
    text-underline-offset: 2px;
}
