/**
 * ===========================================================================
 * RESPONSIVE DESIGN SYSTEM (GOLDEN RULE — WITH SCALING INTENT)
 * ===========================================================================
 *
 * WHY (Intent)
 * - Desktop (1440px) is the primary design reference
 * - Figma designs may exist ONLY for desktop initially
 * - UI must remain readable and balanced on all devices
 * - Responsive behavior must be predictable, not improvised
 *
 * Responsive design exists to PRESERVE INTENT, not exact sizes.
 *
 *
 * HOW (Strategy & Governance)
 *
 * 1. PRIMARY DESIGN REFERENCE (LOCKED)
 *    - 1440px is the ONLY authoritative design reference
 *    - All sizes (font, spacing, layout) are evaluated here first
 *
 *    Example:
 *    - Desktop heading = 74px
 *    - Desktop spacing = 6rem
 *
 *
 * 2. RESPONSIVE SCALING PHILOSOPHY
 *    - Desktop values define INTENT
 *    - Other devices receive DERIVED values
 *
 *    Derived values must:
 *    - preserve hierarchy
 *    - preserve readability
 *    - avoid visual dominance or crowding
 *
 *    Pixel-perfect matching on non-desktop devices is NOT required.
 *
 *
 * 3. AUTO-SCALING PERMISSION (IMPORTANT)
 *    When Figma designs for tablet/mobile are NOT available:
 *
 *    - Developer/Agent MAY derive responsive values using media queries
 *    - BUT ONLY for:
 *      • font-size
 *      • vertical spacing
 *
 *    - Structural changes are NOT allowed
 *
 *
 * 4. SCALING RULE OF THUMB (INDUSTRY PRACTICE)
 *    - Tablet (≤768px):
 *      • Reduce large text by ~25–30%
 *      • Reduce section spacing by ~30–40%
 *
 *    - Mobile (<576px):
 *      • Reduce large text by ~40–50%
 *      • Reduce section spacing by ~50%
 *
 *    These are GUIDELINES, not strict math.
 *
 *
 * 5. CONFIRMATION RULE (SAFETY VALVE)
 *    - If a responsive adjustment affects:
 *      • visual hierarchy
 *      • brand prominence
 *      • key headings (hero / page title)
 *
 *    → Developer MUST confirm before implementation.
 *
 *
 * WHAT (Implementation Rules)
 *
 * - Desktop values live in style.css
 * - Responsive reductions live ONLY in media.css
 *
 * - media.css MAY:
 *   • reduce font-size
 *   • reduce padding / margin
 *   • hide non-critical elements
 *
 * - media.css MUST NOT:
 *   • increase sizes beyond desktop
 *   • redefine layout structure
 *   • change grid logic
 *
 * - Units:
 *   • rem preferred (allows natural scaling)
 *   • px allowed ONLY when matching Figma exactly on desktop
 *
 *
 * DESIGN REVIEW REFERENCES
 * - Desktop review at 1440px
 * - Tablet sanity check at 768px
 * - Mobile sanity check at 402px
 *
 *
 * GOLDEN RULE (DO NOT BREAK)
 * - Desktop defines intent.
 * - Other devices adapt the intent.
 * - media.css refines, never re-designs.
 * - When in doubt, ASK before scaling.
 * ===========================================================================
 */

@media (max-width: 1200px) {
    ._section_horizontal_padding {
        padding-left: 120px;
        padding-right: 120px;
    }
}

@media (max-width: 992px) {
    ._section_horizontal_padding {
        padding-left: 100px;
        padding-right: 100px;
    }

    ._header_nav_desktop {
        display: none;
    }

    ._header_nav_mobile {
        display: block;
    }

    ._mobile_show {
        display: block;
    }

    ._mobile_hide {
        display: none;
    }

    ._area_guides_wrap {
        padding: 0px 0px;
    }

    ._area_guides_image_wrap {
        max-height: 271px;
    }

    ._area_guides_section_wrap ._section_vertical_padding {
        padding-top: 0px;
    }


    /* Menu overlay */
    ._menu_overlay {
        padding: 0px;
        border: none;
    }

    ._menu_modal {
        padding: 24px 16px;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }

    ._menu_modal_title_wrap .overlay_brand_logo_img,
    .footer_brand_logo_img {
        max-height: 24px;
        max-width: 139px;
    }

    ._menu_modal_close_wrap .overlay_close_button_img {
        width: 13px;
        height: 13px;
    }

    ._menu_modal_header {
        padding-top: 2px;
        margin-bottom: 40px;
        padding-bottom: 24px;
        justify-content: space-between;
    }

    ._menu_modal_close_wrap {
        position: relative;
        top: 0%;
        height: 24px;
        width: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
        transform: translateY(0%);
    }

    ._menu_modal_header ._call_icon_img {
        filter: brightness(0) invert(1);
    }

    ._menu_modal_content {
        padding: 0px;
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    ._menu_modal_columns {
        display: flex;
        flex-direction: column;
        gap: 2rem;
        margin-bottom: 0px;
    }

    ._menu_column {
        max-width: 100%;
        gap: 6px;
        border-bottom: 1px solid var(--ink_white);
    }

    ._menu_column ._menu_list {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.25s ease;
    }

    ._menu_column._menu_column_open ._menu_list {
        max-height: 400px;
    }

    ._menu_column_title {
        font-weight: var(--text_font_weight_normal);
        font-size: 22px;
        line-height: 37px;
        letter-spacing: 0.02em;
        border-bottom: none;
        position: relative;
        padding-right: 28px;
        cursor: pointer;
    }

    ._menu_column_title::after {
        content: '';
        position: absolute;
        right: 0;
        top: 35%;
        transform: translateY(-50%) rotate(180deg);
        width: 18px;
        height: 18px;
        background-color: var(--ink_white);
        -webkit-mask: url(../images/arrow_down.svg) center/contain no-repeat;
        mask: url(../images/arrow_down.svg) center/contain no-repeat;
        transition: transform 0.25s ease;
    }

    ._menu_column._menu_column_open ._menu_column_title::after {
        transform: translateY(-50%) rotate(0deg);
    }

    ._menu_link {
        display: block;
        font-weight: var(--text_font_weight_normal);
        font-size: 20px;
        line-height: 20px;
        letter-spacing: 0.02em;
    }

    ._menu_list li {
        margin-bottom: 14px;
    }

    ._menu_social_title {
        font-size: var(--text_font_size_base);
        line-height: 29px;
    }

    ._menu_social_icons {
        gap: 24px;
    }

    /* Footer Media Queries */
    ._footer_menu_wrap ._footer_menu_title {
        margin-bottom: 16px;
    }

    ._footer_menu_wrap {
        gap: 24px;
        flex-direction: column !important;
    }

    ._footer_brand_wrap {
        display: grid;
        grid-template-columns: 1fr 1fr;
        row-gap: 32px;
        justify-items: center;
    }

    ._footer_brand_item ._footer_brand_image {
        height: auto;
        max-width: 100%;
    }

    ._footer_copyright_wrap {
        flex-direction: column;
        align-items: flex-start;
        gap: 33px;
    }

    ._footer_site_by_wrap {
        height: 69px;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    ._footer_site_by_image {
        max-height: 40px;
    }
}

@media (max-width: 768px) {
    ._section_horizontal_padding {
        padding-left: 70px;
        padding-right: 70px;
    }

    ._guide_content_banner_image_wrap {
        width: 100%;
    }

    ._contact_modal {
        max-width: 100%;
        width: 100%;
    }

    ._contact_modal_inner {
        gap: 120px;
        padding: 40px var(--theme_horizontal_padding) 20px;
    }

    ._contact_modal_brand_logo_img {
        max-width: 140px;
    }
}

@media (max-width: 576px) {
    p {
        line-height: var(--text_line_height_fixed_xs_special);
        margin-bottom: 0px;
        font-size: var(--text_font_size_xs_special);
        font-weight: var(--text_font_weight_normal);
    }

    ._section_horizontal_padding {
        padding-left: 16px;
        padding-right: 16px;
    }

    ._section_vertical_padding {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    ._section_vertical_bottom_only_padding {
        padding-bottom: 40px;
    }

    ._section_global_wide_padding_horizontal {
        padding-left: 16px;
        padding-right: 16px;
    }

    ._section_title {
        font-size: 36px;
        line-height: 39px;
    }

    ._mobile_show {
        display: block;
    }

    ._mobile_hide {
        display: none;
    }

    ._btn_primary {
        width: 100%;
        text-align: center;
    }

    ._contact_modal_inner {
        gap: 40px;
        padding: 32px var(--theme_horizontal_padding) 18px;
    }

    ._contact_modal_brand_logo_img {
        max-width: 140px;
    }

    ._header {
        padding: 24px 16px;
    }

    ._header_nav_desktop {
        display: none;
    }

    ._header_nav_mobile {
        display: block;
    }

    ._call_icon_link {
        height: 24px;
        width: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    ._call_icon_img {
        width: 16px;
        height: 16px;
    }

    .brand_logo_img {
        /* max-width: 138.87px; */
        height: 24px;
    }

    ._header_menu_toggle .hamburger_menu_toggle_img {
        display: block;
        width: 12.88px;
        height: 18px;
    }

    ._hero_banner_content {
        padding: 0 50px;
    }

    /* Hero banner: mobile par poora view (header ke baaki) – 88vh */
    ._hero_banner_section ._hero_banner_wrap {
        min-height: 88vh;
    }

    ._hero_banner_section ._hero_banner_image {
        height: 88vh;
    }

    ._hero_down_arrow_wrap {
        padding: 18px 0px;
    }

    ._property_cards_wrap {
        grid-template-columns: repeat(1, 1fr);
    }

    ._property_cards_wrap ._property_card ._property_card_image {
        width: 100%;
        max-width: 100%;
    }

    ._team_members_wrap {
        flex-direction: column;
        justify-content: flex-start;
    }

    ._inspiration_gallery_wrap {
        flex-direction: column;
        align-items: stretch;
        gap: 2rem;
    }

    ._inspiration_gallery_label {
        writing-mode: horizontal-tb;
        transform: none;
        letter-spacing: 0.15em;
    }

    ._review_post_stars {
        justify-content: space-between;
    }

    ._review_post_image_wrap {
        justify-content: center;
        margin-top: 24px;
    }

    ._home_about_wrap ._home_about_content_wrap {
        gap: 24px;
    }

    ._home_about_wrap ._section_content {
        gap: 16px;
    }

    ._home_page_main_wrap ._theme_divider_wrap {
        display: none;
    }

    ._home_about_wrap ._section_inner {
        padding-bottom: 32px;
    }

    ._full_page_mid_banner_wrap {
        max-height: 402px;
    }

    ._full_page_mid_banner_wrap ._full_page_mid_banner_image {
        max-height: 402px;
    }

    ._full_page_mid_banner_wrap ._full_page_mid_banner_button_wrap {
        flex-direction: column;
        gap: 1rem;
    }

    ._full_page_mid_banner_button_wrap_item {
        width: 100%;
        padding: 0px 16px;
    }

    ._property_cards_wrap {
        gap: 2rem;
    }

    ._home_featured_sales_wrap ._section_title {
        margin-bottom: 32px;
    }

    ._property_cards_wrap ._property_card ._property_card_image_wrap {
        height: 270px;
    }

    ._property_card ._property_card_title {
        margin-top: 7.24px;
    }

    ._home_featured_rentals_wrap ._section_title {
        margin-bottom: 32px;
    }

    ._home_featured_rentals_wrap ._section_content {
        padding-bottom: 0px;
    }

    ._home_sourcebook_wrap ._section_title {
        margin-bottom: 32px;
    }

    ._home_sourcebook_content_text {
        padding: 0px 16px;
        font-size: 18px;
        line-height: 30px;
        font-weight: var(--text_font_weight_medium);
    }

    ._home_sourcebook_wrap ._source_book_image_wrap {
        padding-bottom: 16px;
    }

    ._design_conscious_marketing_wrap ._design_conscious_marketing_left_arrow_wrap,
    ._design_conscious_marketing_wrap ._design_conscious_marketing_right_arrow_wrap {
        display: none !important;
    }

    ._dcm_wrap {
        padding: 0px 0px;
    }

    ._full_page_heading {
        font-size: 24px;
        line-height: 40px;
    }

    ._design_conscious_marketing_wrap ._full_page_heading {
        font-weight: var(--text_font_weight_normal);
        text-align: left;
    }

    ._design_conscious_marketing_wrap ._design_conscious_marketing_heading_wrap {
        padding-bottom: 24px;
    }

    ._design_conscious_marketing_wrap ._section_vertical_padding {
        padding-top: 0px;
    }

    ._dcm_content_wrap ._gap_48 {
        gap: 32px;
    }

    ._dcm_section_separator {
        margin: 32px 0px;
    }

    ._dcm_image_wrap::after {
        border-left: 24px solid transparent;
        border-right: 24px solid transparent;
        border-bottom: 24px solid var(--theme_bg_primary);
    }

    ._area_guides_wrap {
        padding: 0px 0px;
    }

    ._area_guides_content_card_wrap {
        flex-direction: column !important;
    }

    ._area_guides_image_wrap {
        max-height: 271px;
    }

    ._area_guides_section_wrap ._section_vertical_padding {
        padding-top: 0px;
    }

    ._half_page_image {
        max-height: 306px;
    }

    ._tenant_info_section_wrap ._section_vertical_padding {
        padding-top: 0px;
    }

    ._tenant_info_section_wrap ._section_content {
        gap: 32px;
    }

    ._tenant_info_content_wrap ._download_btn {
        max-width: 100%;
        padding: 20px 6rem;
    }

    ._review_post_star {
        width: 66px;
    }

    ._sourcebook_category_form_wrap {
        display: block !important;
        width: 100%;
    }

    ._sourcebook_card_content_sub_wrap {
        max-width: 100%;
    }

    ._sourcebook_card_more_section_wrap {
        background-color: var(--theme_bg_primary);
        padding: 16px;
    }

    ._sourcebook_card_more_section_wrap ._section_inner {
        background-color: var(--ink_white);
    }

    ._sourcebook_card_more_text {
        font-size: 32px;
        line-height: 53px;
    }

    #sourcebook_card_more ._section_inner::after {
        bottom: -28px;
        border-left: 30px solid transparent;
        border-right: 30px solid transparent;
        border-top: 30px solid var(--ink_white);
    }

    #sourcebook_card_more_button ._section_inner {
        padding-top: 60px;
    }

    ._sourcebook_banner_section_wrap ._sourcebook_image_sub_wrap {
        display: none;
    }

    ._sourcebook_banner_section_wrap ._sourcebook_content_wrap {
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    ._sourcebook_banner_section_wrap ._sourcebook_content_text_wrap {
        gap: 16px;
        max-width: 100%;
    }

    ._full_page_heading_xl {
        font-size: 24px;
        line-height: 40px;
    }

    ._full_page_sub_heading {
        font-size: var(--text_font_size_base);
        line-height: var(--text_line_height_fixed_base);
    }

    ._sourcebook_banner_section_wrap ._section_vertical_bottom_only_padding {
        padding-bottom: 16px;
    }

    ._list_filter_toggle {
        display: inline-block;
    }

    ._list_filter_row_wrap {
        flex-direction: column !important;
        gap: 16px;
    }

    ._list_filter_row_wrap ._filter_section_content_wrap {
        width: 100%;
    }

    ._list_filter_section_pagination_wrap {
        margin-left: 0% !important;
        width: 100%;
    }

    ._list_pagination {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    ._list_filter_section_pagination_wrap ._list_pagination_prev,
    ._list_filter_section_pagination_wrap ._list_pagination_next {
        flex: 0 0 auto;
    }

    ._list_filter_section_pagination_wrap ._list_pagination_pages {
        flex: 1 1 auto;
        justify-content: center;
    }

    ._list_pagination_arrow {
        width: 32px;
        height: 32px;
    }

    ._list_pagination_arrow_icon {
        width: 32px;
        height: 32px;
        background-size: 32px 32px;
        top: 0;
    }

    ._search_and_filter_wrap {
        gap: 16px;
    }

    ._list_filter_icon_wrap {
        height: 38px;
        width: 38px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Menu overlay */
    ._menu_overlay {
        padding: 0px;
        border: none;
    }

    ._menu_modal {
        padding: 24px 16px;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }

    ._menu_modal_title_wrap .overlay_brand_logo_img,
    .footer_brand_logo_img {
        max-height: 24px;
        max-width: 139px;
    }

    ._menu_modal_close_wrap .overlay_close_button_img {
        width: 13px;
        height: 13px;
    }

    ._menu_modal_header {
        padding-top: 2px;
        margin-bottom: 40px;
        padding-bottom: 24px;
        justify-content: space-between;
    }

    ._menu_modal_close_wrap {
        position: relative;
        top: 0%;
        height: 24px;
        width: 24px;
        display: flex;
        align-items: center;
        justify-content: end;
        transform: translateY(0%);
    }

    ._menu_modal_header ._call_icon_img {
        filter: brightness(0) invert(1);
    }

    ._menu_modal_content {
        padding: 0px;
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    ._menu_modal_columns {
        display: flex;
        flex-direction: column;
        gap: 2rem;
        margin-bottom: 0px;
    }

    ._menu_column {
        max-width: 100%;
        gap: 6px;
        border-bottom: 1px solid var(--ink_white);
    }

    ._menu_column ._menu_list {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.25s ease;
    }

    ._menu_column._menu_column_open ._menu_list {
        max-height: 400px;
    }

    ._menu_column_title {
        font-weight: var(--text_font_weight_normal);
        font-size: 22px;
        line-height: 37px;
        letter-spacing: 0.02em;
        border-bottom: none;
        position: relative;
        padding-right: 28px;
        cursor: pointer;
    }

    ._menu_column_title::after {
        content: '';
        position: absolute;
        right: 0;
        top: 35%;
        transform: translateY(-50%) rotate(180deg);
        width: 18px;
        height: 18px;
        background-color: var(--ink_white);
        -webkit-mask: url(../images/arrow_down.svg) center/contain no-repeat;
        mask: url(../images/arrow_down.svg) center/contain no-repeat;
        transition: transform 0.25s ease;
    }

    ._menu_column._menu_column_open ._menu_column_title::after {
        transform: translateY(-50%) rotate(0deg);
    }

    ._menu_link {
        display: block;
        font-weight: var(--text_font_weight_normal);
        font-size: 20px;
        line-height: 20px;
        letter-spacing: 0.02em;
    }

    ._menu_list li {
        margin-bottom: 14px;
    }

    ._menu_social_title {
        font-size: var(--text_font_size_base);
        line-height: 29px;
    }

    ._menu_social_icons {
        gap: 24px;
    }

    /* Filter modal – mobile only: panel from right, logo, FILTER label, dropdown style */
    ._list_filter_modal_inner {
        max-width: 100%;
    }

    ._list_filter_modal_header {
        position: relative;
        justify-content: center;
        text-align: center;
    }

    ._list_filter_modal_brand._desktop_hide {
        display: flex;
    }

    ._list_filter_modal_brand {
        align-items: center;
        justify-content: center;
    }

    ._list_filter_modal_filter_label._desktop_hide {
        display: block;
    }

    ._list_filter_modal_brand .overlay_brand_logo_img {
        max-height: 24px;
        width: auto;
    }

    ._list_filter_close {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
    }

    ._list_filter_modal_filter_label {
        margin-bottom: 21px;
        font-family: var(--font_secondary);
        font-size: var(--text_font_size_sm);
        text-transform: uppercase;
        letter-spacing: 0.1em;
        line-height: 25px;
        color: #F5EFEE;
    }

    ._list_filter_modal_inner .select2-container--default .select2-selection--single {
        background-color: var(--theme_color_primary);
        border: 1px solid #F8F3F3;
        padding: 14px 8px;
    }

    ._list_filter_modal_inner .select2-container--default .select2-selection--single .select2-selection__rendered {
        color: var(--ink_white);
    }

    ._list_filter_modal_inner .select2-container--default .select2-selection--single .select2-selection__placeholder {
        color: #F8F3F3;
    }

    ._list_filter_modal_inner .select2-container--default .select2-selection--single .select2-selection__arrow {
        background-color: var(--ink_white);
    }

    /* Footer Media Queries */
    ._footer_menu_wrap ._footer_menu_title {
        margin-bottom: 16px;
    }

    ._footer_menu_list_wrap {
        margin-top: 32px;
        flex-direction: column;
        align-items: flex-start;
    }

    ._footer_menu_wrap {
        gap: 24px;
    }

    ._footer_brand_wrap {
        display: grid;
        grid-template-columns: 1fr 1fr;
        row-gap: 32px;
        justify-items: center;
    }

    ._footer_brand_item ._footer_brand_image {
        height: auto;
        max-height: 38px;
        max-width: 100%;
    }

    ._footer_copyright_wrap {
        flex-direction: column;
        align-items: flex-start;
        gap: 33px;
    }

    ._footer_site_by_wrap {
        height: 69px;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    ._footer_site_by_image {
        max-height: 40px;
    }

    /* Property Detail Section Media Queries */
    ._property_detail_section ._property_detail_search_wrap {
        flex-direction: column !important;
        gap: 16px;
    }

    ._property_detail_section ._property_detail_search_wrap>div {
        width: 100%;
    }

    ._property_detail_section ._property_detail_search_wrap ._form_field {
        width: 100%;
    }

    ._property_detail_section ._property_detail_search_wrap ._search_field_wrap {
        width: 100%;
    }

    ._property_detail_section ._property_detail_search_wrap ._search_field_wrap ._search_input {
        width: 100%;
        min-width: 0;
        max-width: none;
    }

    ._property_detail_section ._property_detail_search_wrap ._btn {
        width: 100%;
        display: block;
        text-align: center;
    }

    /* Property detail slider (mobile): image max 196px, nav below, [prev] [dots] [next] one row */
    ._property_detail_wrap {
        height: auto;
        overflow: visible;
    }

    ._property_detail_carousel {
        display: grid;
        grid-template-rows: auto 56px;
        grid-template-columns: auto 1fr auto;
        align-items: center;
        overflow: visible;
    }

    ._property_detail_carousel::after {
        display: none;
    }

    ._property_detail_carousel .owl-stage-outer {
        grid-row: 1;
        grid-column: 1 / -1;
        align-self: stretch;
        height: 196px;
        max-height: 196px;
        min-height: 0;
        overflow: hidden;
    }

    ._property_detail_carousel .owl-stage,
    ._property_detail_carousel .owl-item,
    ._property_detail_carousel .owl-item>div {
        height: 100%;
        max-height: 196px;
    }

    ._property_detail_section ._property_detail_slide {
        max-height: 196px;
    }

    ._property_detail_section ._property_detail_slide img {
        max-width: 100%;
        max-height: 100%;
        min-height: 0;
        width: 100%;
        height: auto;
        object-fit: cover;
    }

    ._property_detail_section ._property_detail_slide img._is_portrait {
        object-fit: contain;
        width: auto;
    }

    ._property_detail_carousel .owl-nav {
        position: relative;
        display: flex;
        padding: 0px;
        height: auto;
    }

    ._property_detail_carousel .owl-nav button.owl-prev,
    ._property_detail_carousel .owl-nav button.owl-next {
        grid-row: 2;
        align-self: center;
        margin: 0;
        padding: 0 16px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
        background-color: var(--theme_color_secondary) !important;
        background-image: none !important;
        -webkit-mask: url(../images/arrow_horizontal.svg) center/contain no-repeat;
        mask: url(../images/arrow_horizontal.svg) center/contain no-repeat;
        -webkit-mask-size: 14px 25px;
        mask-size: 14px 25px;
    }

    ._property_detail_carousel .owl-nav button.owl-prev {
        grid-column: 1;
        justify-self: start;
        transform: scaleX(-1);
    }

    ._property_detail_carousel .owl-nav button.owl-next {
        grid-column: 3;
        justify-self: end;
    }

    ._property_detail_carousel .owl-dots {
        grid-row: 2;
        grid-column: 2;
        align-self: center;
        height: auto;
        margin: 0;
        padding: 0 16px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        margin-top: -18px;
    }

    ._property_detail_carousel .owl-dots button.owl-dot {
        width: 8px;
        height: 8px;
        padding: 0 !important;
        border: none;
        border-radius: 50%;
        margin: 0 5px;
        background: var(--theme_color_primary) !important;
    }

    ._property_detail_carousel .owl-dots button.owl-dot span {
        display: none;
    }

    ._property_detail_carousel .owl-dots button.owl-dot.active {
        background: var(--theme_color_secondary) !important;
    }

    ._property_detail_carousel .owl-dots {
        left: 0;
        transform: translateX(0%);
    }

    ._property_detail_carousel .owl-nav,
    ._property_detail_carousel .owl-dots {
        position: relative;
        left: 0 !important;
        right: 0 !important;
    }

    ._property_detail_quote {
        padding: 0px;
        font-weight: var(--text_font_weight_normal);
        font-size: 24px;
        line-height: 40px;
        letter-spacing: 2%;
        border-left: none;
    }

    ._property_detail_images_row {
        flex-direction: column;
        gap: 16px;
    }

    ._property_detail_local_btn {
        top: auto;
        bottom: 0px;
        left: 50%;
        transform: translateX(-50%);
    }

    ._area_guides_image_text {
        font-size: 24px;
        font-weight: var(--text_font_weight_medium);
        line-height: 34px;
    }

    ._guide_menu_links_wrap_inner {
        display: none;
    }

    ._guide_content_wrap {
        padding: 24px 16px;
    }

    ._guide_main_section_wrap ._section_inner {
        padding: 0px;
    }

    ._guide_content_banner_image_wrap {
        width: 100%;
        max-height: 370px;
        padding: 0px 16px;
        background-color: var(--theme_bg_primary);
    }

    ._guide_content_banner_content_wrap {
        padding: 16px 16px 53px 16px;
        gap: 24px;
    }

    ._guide_content_title {
        position: relative;
        padding-right: 28px;
        cursor: pointer;
    }

    ._guide_content_title::after {
        content: '';
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%) rotate(180deg);
        width: 18px;
        height: 18px;
        background-color: var(--theme_color_secondary);
        -webkit-mask: url(../images/arrow_down.svg) center/contain no-repeat;
        mask: url(../images/arrow_down.svg) center/contain no-repeat;
        transition: transform 0.25s ease;
    }

    ._guide_content_sub_wrap._guide_section_open ._guide_content_title::after {
        transform: translateY(-50%) rotate(0deg);
    }

    ._guide_content_sub_wrap ._guide_content_title~* {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.25s ease;
    }

    ._guide_content_sub_wrap._guide_section_open ._guide_content_title~* {
        max-height: 3000px;
    }

    ._guide_content_sub_wrap {
        border-bottom: 1px solid #CFCDCD;
        padding-bottom: 16px;
    }

    /* Features section – mobile accordion, independent classes */
    ._features_accordion_title {
        position: relative;
        padding-right: 28px;
        cursor: pointer;
        margin-bottom: 0px !important;
    }

    ._features_accordion_title::after {
        content: '';
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%) rotate(180deg);
        width: 18px;
        height: 18px;
        background-color: var(--theme_color_secondary);
        -webkit-mask: url(../images/arrow_down.svg) center/contain no-repeat;
        mask: url(../images/arrow_down.svg) center/contain no-repeat;
        transition: transform 0.25s ease;
    }

    ._features_accordion_item._features_accordion_open ._features_accordion_title::after {
        transform: translateY(-50%) rotate(0deg);
    }

    ._features_accordion_item ._features_accordion_title~* {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.25s ease;
    }

    ._features_accordion_item._features_accordion_open ._features_accordion_title~* {
        max-height: 3000px;
    }

    ._features_accordion_item {
        border-bottom: 1px solid #CFCDCD;
        padding-bottom: 16px;
    }

    ._about_content_cols {
        gap: 16px;
    }

    ._guide_content_details_wrap {
        gap: 16px;
    }

    ._area_guide_detail_banner_image_wrap {
        width: 100%;
        height: 210px;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    ._area_guide_detail_banner_image {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    ._area_guide_detail_title_wrap {
        padding: 0px;
    }

    ._area_guide_detail_section_wrap ._section_vertical_padding {
        padding-top: 0px;
    }

    ._area_guide_detail_title {
        font-size: 32px;
        line-height: 54px;
    }

    ._area_guide_detail_content_paragraph_wrap_inner {
        flex-direction: column !important;
        margin-top: 16px;
        gap: 16px;
    }

    ._area_guide_detail_quote_wrap {
        padding: 64px 0px;
    }

    ._area_guide_detail_images_wrap {
        grid-template-columns: repeat(1, 1fr);
    }

    ._area_guide_detail_image_wrap {
        text-align: center;
    }

    ._area_guide_detail_image_wrap ._area_guide_detail_image {
        width: 100%;
        height: 100%;
        max-height: 349px;
        object-fit: cover;
        object-position: center;
    }

    ._area_guide_detail_banner_row {
        flex-wrap: wrap;
        align-items: center;
        gap: 16px;
    }

    ._area_guide_detail_banner_image_wrap {
        order: 1;
        width: 100%;
    }

    ._area_guide_detail_nav {
        position: static;
        width: auto;
        height: auto;
        flex-direction: row;
        justify-content: center;
        padding: 4px 0px;
        writing-mode: horizontal-tb;
        text-orientation: mixed;
        border-radius: 0;
        border-width: 1px 0 0 0;
    }

    ._area_guide_detail_nav_prev,
    ._area_guide_detail_nav_next {
        transform: none;
        order: 2;
    }

    ._area_guide_detail_nav_prev {
        margin-right: auto;
    }

    ._area_guide_detail_nav_next {
        margin-left: auto;
    }

    ._area_guide_detail_nav_text {
        transform: none;
        font-size: var(--text_font_size_xs);
        line-height: 16px;
    }

    ._area_guide_detail_nav_arrow {
        height: 24px;
        width: 24px;
    }

    ._about_detail_image {
        max-width: 100%;
    }

    ._features_mobile_banner_image_wrap {
        width: 100%;
        margin-bottom: 16px;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    ._features_mobile_banner_image {
        width: 100%;
        height: 100%;
        max-height: 349px;
        object-fit: cover;
        object-position: center;
    }

    ._gallery_wrap {
        padding: 0px 16px;
    }

    ._inspiration_gallery_wrap {
        gap: 24px;
    }

    ._inspiration_gallery_sidebar {
        text-align: center;
    }

    ._inspiration_gallery_label {
        font-weight: var(--text_font_weight_medium);
        font-size: var(--text_font_size_lg);
        line-height: 40px;
        letter-spacing: 2%;
        color: var(--theme_color_secondary);
        transform: rotate(0deg);
    }

    ._inspiration_gallery_counter_wrap {
        display: none;
    }

    ._inspiration_gallery_text {
        font-size: var(--text_font_size_md);
        line-height: var(--text_line_height_fixed_base);
        text-align: center;
    }

    ._inspiration_gallery_footer {
        margin-top: 4rem;
    }

    ._inspiration_gallery_carousel .owl-nav button.owl-prev {
        left: 0;
        transform: translateY(150%) rotate(-90deg);
    }

    ._inspiration_gallery_carousel .owl-nav button.owl-next {
        right: 0;
        transform: translateY(150%) rotate(90deg);
    }

    ._half_page_image_contact ._half_page_image {
        min-height: 300px;
    }

    ._footer_list_wrap_has_right_border {
        border: none;
        min-width: 50%;
        border-bottom: 1px solid var(--ink_white);
        margin-right: 0px;
        padding-right: 0px;
        margin-bottom: 32px;
        padding-bottom: 32px;
    }

    ._review_content_banner_image_wrap {
        width: 100%;
    }

    ._review_content_banner_image {
        max-height: 370px;
    }

    ._review_content_banner_content_wrap {
        padding: 0px;
        width: 100%;
        max-width: 100%;
    }

    ._review_content_banner_carousel {
        width: 100%;
        max-width: 100%;
    }

    ._review_content_banner_text_wrap {
        width: 100%;
        max-width: 100%;
    }

    ._review_content_banner_content_wrap .owl-nav {
        top: 110%;
        transform: none;
    }

    ._review_content_banner_content_wrap .owl-nav button.owl-prev,
    ._review_content_banner_content_wrap .owl-nav button.owl-next {
        width: 18px;
        height: 18px;
        -webkit-mask-size: 18px 18px;
        mask-size: 18px 18px;
    }

    ._review_content_banner_content_wrap .owl-nav button.owl-prev {
        translate: 0;
    }

    ._review_content_banner_content_wrap .owl-nav button.owl-next {
        translate: 0;
    }

    ._review_content_banner_content_wrap .owl-dots {
        position: absolute;
        left: 0;
        right: 0;
        top: 110%;
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 1;
    }

    ._review_content_banner_content_wrap .owl-dots button.owl-dot {
        background: var(--theme_color_primary);
        width: 8px;
        height: 8px;
        border-radius: 50%;
        margin: 0 4px;
        transition: opacity 0.2s;
    }
    ._contact_modal_inner {
        min-height: 100vh;
        padding: 24px 16px;
    }
    ._contact_modal_text
    {
        max-width: 320px;
        margin: 0 auto;
    }
    ._contact_submit_btn
    {
        width: 100%;
    }
}

@media (max-width: 402px) {
    ._property_cards_wrap {
        grid-template-columns: 1fr;
    }
}