/* ==========================================================================
   Property detail — MOBILE design (reference match)
   Loaded AFTER inside.css via styles_after so these rules win.
   Desktop (≥992px): no-op (all rules gated).
   ========================================================================== */

@media (max-width: 991.98px) {
    /* Immersive: hide site chrome; hero provides back/share */
    body.inside-page.page-property .site-header--inside,
    body.inside-page.page-property .site-header {
        display: none !important;
    }
    body.inside-page.page-property .footer,
    body.inside-page.page-property .site-footer {
        margin-top: 24px;
    }

    body.inside-page.page-property {
        background: #041109;
    }
    body.inside-page.page-property main#main {
        padding: 0;
        margin: 0;
    }
    body.inside-page.page-property .ds-section.pdetail {
        padding: 0 0 40px !important;
        margin: 0 !important;
        background: #041109;
    }
    body.inside-page.page-property .ds-container {
        width: 100% !important;
        max-width: 100% !important;
        padding-inline: 0 !important;
        margin: 0 !important;
    }
    body.inside-page.page-property .pdetail__breadcrumb {
        display: none !important;
    }

    /* ---- Hero ---- */
    body.inside-page.page-property .pgallery {
        margin: 0 0 16px !important;
        padding: 0 !important;
    }
    body.inside-page.page-property .pgallery__stage {
        position: relative;
        margin: 0;
    }
    body.inside-page.page-property .pgallery__chrome {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        position: absolute;
        z-index: 5;
        top: 14px;
        border: 0;
        color: #fff;
        background: rgba(4, 14, 10, .7);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        cursor: pointer;
    }
    body.inside-page.page-property .pgallery__chrome--back {
        left: 14px;
        width: 44px;
        height: 44px;
        border-radius: 999px;
        font-size: 1.55rem;
        line-height: 1;
    }
    body.inside-page.page-property .pgallery__chrome--share {
        right: 14px;
        height: 44px;
        padding: 0 14px;
        gap: 7px;
        border-radius: 999px;
        font-size: .88rem;
        font-weight: 700;
    }
    body.inside-page.page-property .pgallery__main {
        display: block;
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0 !important;
        border-radius: 0 0 18px 18px !important;
        overflow: hidden;
        aspect-ratio: 5 / 4 !important;
        height: auto !important;
        background: #06140e;
        box-shadow: none !important;
        cursor: zoom-in;
        position: relative;
    }
    body.inside-page.page-property .pgallery__main::after {
        content: "";
        position: absolute;
        inset: auto 0 0 0;
        height: 72px;
        background: linear-gradient(to top, #041109, transparent);
        pointer-events: none;
    }
    body.inside-page.page-property .pgallery__main img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }
    body.inside-page.page-property .pgallery__thumbs {
        display: none !important;
    }
    body.inside-page.page-property .pgallery__count {
        position: absolute !important;
        right: 14px !important;
        bottom: 14px !important;
        left: auto !important;
        top: auto !important;
        z-index: 4;
        padding: 6px 11px !important;
        border-radius: 999px !important;
        border: 1px solid rgba(255, 255, 255, .16) !important;
        background: rgba(2, 10, 7, .78) !important;
        color: #fff !important;
        font-size: .78rem !important;
        font-weight: 700 !important;
    }
    body.inside-page.page-property .pgallery__dots {
        display: flex !important;
        position: absolute;
        left: 50%;
        bottom: 18px;
        transform: translateX(-50%);
        z-index: 4;
        gap: 6px;
    }
    body.inside-page.page-property .pgallery__dots i {
        width: 7px;
        height: 7px;
        border-radius: 999px;
        background: rgba(255, 255, 255, .4);
    }
    body.inside-page.page-property .pgallery__dots i.is-active {
        background: #75c149;
        width: 8px;
        height: 8px;
    }

    /* ---- Summary ---- */
    body.inside-page.page-property .pdetail__head {
        margin: 0 18px 14px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }
    body.inside-page.page-property .pdetail__title {
        margin: 0 0 10px !important;
        color: #fff !important;
        font-size: clamp(1.55rem, 6.5vw, 1.9rem) !important;
        font-weight: 800 !important;
        line-height: 1.18 !important;
        letter-spacing: -0.02em;
    }
    body.inside-page.page-property .pdetail__badges {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin: 0 0 10px !important;
    }
    body.inside-page.page-property .pdetail__badges .ds-badge {
        min-height: 28px;
        padding: 4px 11px;
        border-radius: 999px;
        font-size: .74rem;
        font-weight: 750;
    }
    body.inside-page.page-property .ds-badge--featured {
        background: rgba(84, 200, 104, .18);
        color: #7dff9a;
        border: 1px solid rgba(84, 200, 104, .45);
    }
    body.inside-page.page-property .ds-badge--avail {
        background: rgba(84, 200, 104, .18);
        color: #7dff9a;
        border: 1px solid rgba(84, 200, 104, .45);
    }
    body.inside-page.page-property .ds-badge--verified {
        background: rgba(255, 255, 255, .08);
        color: #d5e6da;
        border: 1px solid rgba(255, 255, 255, .12);
    }
    body.inside-page.page-property .pdetail__metarow {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px 0;
        margin: 0 !important;
        color: #b7c8bc !important;
        font-size: .86rem !important;
    }
    body.inside-page.page-property .pdetail__loc {
        color: #d7e4db;
    }
    body.inside-page.page-property .pdetail__code {
        color: #8fa397 !important;
        font-size: .8rem !important;
        font-weight: 650 !important;
        letter-spacing: .02em;
    }
    body.inside-page.page-property .pdetail__code::before {
        content: "";
        display: inline-block;
        width: 1px;
        height: 13px;
        margin: 0 12px 0 10px;
        background: rgba(255, 255, 255, .22);
        vertical-align: -2px;
    }
    body.inside-page.page-property .pdetail__rating {
        margin-top: 8px;
        color: #f0c14a !important;
        font-size: .92rem !important;
        font-weight: 750 !important;
    }
    body.inside-page.page-property .pdetail__rating span {
        color: #8fbf9c !important;
        font-weight: 600;
    }

    /* ---- Content stack ---- */
    body.inside-page.page-property .pdetail__layout {
        display: block !important;
        gap: 0 !important;
        padding: 0 16px !important;
        margin: 0 !important;
    }
    body.inside-page.page-property .pdetail__aside {
        display: none !important;
    }
    body.inside-page.page-property .pdetail__main {
        display: flex;
        flex-direction: column;
        gap: 12px;
        min-width: 0;
    }
    body.inside-page.page-property .pdetail__section {
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }
    body.inside-page.page-property .pdetail__section > h2,
    body.inside-page.page-property .pdetail__section .ds-h3 {
        margin: 0 0 10px !important;
        color: #fff !important;
        font-size: 1.08rem !important;
        font-weight: 800 !important;
    }

    /* Quick info */
    body.inside-page.page-property .pdetail__specs--quick {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 0 !important;
        border: 1px solid rgba(117, 193, 73, .22) !important;
        border-radius: 16px !important;
        overflow: hidden;
        background: rgba(7, 28, 18, .92) !important;
    }
    body.inside-page.page-property .pdetail__specs--quick .pspec {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center;
        gap: 3px !important;
        min-width: 0;
        margin: 0;
        padding: 12px 4px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        text-align: center;
        color: #fff !important;
    }
    body.inside-page.page-property .pdetail__specs--quick .pspec + .pspec {
        border-left: 1px solid rgba(117, 193, 73, .14) !important;
    }
    body.inside-page.page-property .pdetail__specs--quick .pspec__ic {
        color: #75c149 !important;
        font-size: 1.05rem !important;
        line-height: 1;
    }
    body.inside-page.page-property .pdetail__specs--quick .pspec strong {
        display: block;
        font-size: .95rem;
        color: #fff;
        line-height: 1.15;
    }
    body.inside-page.page-property .pdetail__specs--quick .pspec small {
        display: block;
        color: #8fa397 !important;
        font-size: .6rem !important;
        line-height: 1.2;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
    }

    /* Check-in / out */
    body.inside-page.page-property .pcio {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0 !important;
        border: 1px solid rgba(117, 193, 73, .22) !important;
        border-radius: 16px !important;
        overflow: hidden;
        background: rgba(7, 28, 18, .92) !important;
    }
    body.inside-page.page-property .pcio__col {
        display: grid;
        gap: 2px;
        justify-items: start;
        padding: 14px 14px 13px !important;
    }
    body.inside-page.page-property .pcio__col + .pcio__col {
        border-left: 1px solid rgba(117, 193, 73, .14) !important;
    }
    body.inside-page.page-property .pcio__label {
        font-size: .68rem;
        font-weight: 750;
        letter-spacing: .04em;
        text-transform: uppercase;
        color: #8fa397;
    }
    body.inside-page.page-property .pcio__ic {
        color: #75c149;
        font-size: .95rem;
        margin-top: 2px;
    }
    body.inside-page.page-property .pcio__time {
        color: #fff;
        font-size: 1.05rem;
        font-weight: 800;
        line-height: 1.2;
    }
    body.inside-page.page-property .pcio__date {
        color: #9bb5a4;
        font-size: .84rem;
    }

    /* About */
    body.inside-page.page-property .pdetail__desc {
        color: #c9d7cd !important;
        font-size: .92rem !important;
        line-height: 1.55 !important;
        white-space: pre-line;
    }
    body.inside-page.page-property .pdetail__desc[data-read-more]:not(.is-expanded) {
        display: -webkit-box !important;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        overflow: hidden;
        white-space: normal !important;
    }
    body.inside-page.page-property .pdetail__more {
        min-height: 40px;
        margin-top: 4px !important;
        padding: 0 !important;
        border: 0 !important;
        background: none !important;
        color: #75c149 !important;
        font-size: .9rem !important;
        font-weight: 750 !important;
        cursor: pointer;
    }

    /* Amenities */
    body.inside-page.page-property .pamenity-preview {
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 8px !important;
        margin: 0 0 8px !important;
    }
    body.inside-page.page-property .pamenity-chip {
        display: grid !important;
        gap: 6px;
        justify-items: center;
        min-width: 0;
        padding: 11px 4px 9px !important;
        border: 1px solid rgba(117, 193, 73, .2) !important;
        border-radius: 14px !important;
        background: rgba(7, 28, 18, .88) !important;
        text-align: center;
    }
    body.inside-page.page-property .pamenity-chip__ic {
        color: #75c149 !important;
        font-size: 1.1rem;
        line-height: 1;
    }
    body.inside-page.page-property .pamenity-chip__name {
        color: #d5e2d8 !important;
        font-size: .68rem !important;
        line-height: 1.2;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    body.inside-page.page-property [data-amenities-list]:not(.is-expanded) {
        display: none !important;
    }
    body.inside-page.page-property [data-amenities-list].is-expanded {
        display: block !important;
        margin-top: 10px;
    }
    body.inside-page.page-property [data-amenities-list].is-expanded .pamenity-group {
        display: block !important;
    }

    /* Enquiry card */
    body.inside-page.page-property .enq-card {
        margin: 2px 0 0 !important;
        padding: 16px 14px 14px !important;
        border: 1px solid rgba(117, 193, 73, .22) !important;
        border-radius: 18px !important;
        background: rgba(7, 28, 18, .95) !important;
        box-shadow: none !important;
        scroll-margin-top: 10px;
    }
    body.inside-page.page-property .enq-card__title {
        display: flex !important;
        align-items: center;
        gap: 8px;
        margin: 0 !important;
        color: #fff !important;
        font-size: 1.12rem !important;
        font-weight: 800 !important;
    }
    body.inside-page.page-property .enq-card__wa {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        border-radius: 999px;
        background: #25d366;
        color: #063a1c !important;
        flex: 0 0 auto;
    }
    body.inside-page.page-property .enq-card__wa svg {
        display: block;
    }
    body.inside-page.page-property .enq-card__lead {
        display: block !important;
        margin: 6px 0 0 !important;
        color: #9bb5a4 !important;
        font-size: .84rem !important;
        line-height: 1.4;
    }
    body.inside-page.page-property .enq-card__lead-desktop,
    body.inside-page.page-property .enq-progress,
    body.inside-page.page-property .enq-card__footnote {
        display: none !important;
    }
    body.inside-page.page-property .enq-form {
        margin-top: 14px !important;
    }
    body.inside-page.page-property .enq-form .ds-field {
        margin-bottom: 10px !important;
    }
    body.inside-page.page-property .enq-form .ds-label {
        display: none !important; /* placeholders carry the label on mobile */
    }
    body.inside-page.page-property .enq-form .ds-input,
    body.inside-page.page-property .enq-form .ds-select,
    body.inside-page.page-property .enq-form .ds-textarea {
        min-height: 48px;
        padding: 12px 12px 12px 42px !important;
        border: 1px solid rgba(117, 193, 73, .2) !important;
        border-radius: 12px !important;
        background: rgba(3, 16, 11, .9) !important;
        color: #fff !important;
        font-size: .92rem !important;
    }
    body.inside-page.page-property .enq-form .ds-textarea {
        min-height: 72px;
        padding-top: 14px !important;
    }
    body.inside-page.page-property .enq-field {
        position: relative;
    }
    body.inside-page.page-property .enq-field__ic {
        position: absolute;
        left: 13px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1;
        color: #75c149;
        font-size: .95rem;
        pointer-events: none;
        line-height: 1;
    }
    body.inside-page.page-property .enq-field--area .enq-field__ic {
        top: 16px;
        transform: none;
    }
    body.inside-page.page-property .enq-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
    }
    body.inside-page.page-property .enq-phone {
        display: flex !important;
        gap: 8px !important;
        position: relative;
    }
    body.inside-page.page-property .enq-phone > .enq-field__ic {
        left: 105px;
    }
    body.inside-page.page-property .enq-phone .enq-cc {
        flex: 0 0 92px !important;
        padding-left: 10px !important;
        padding-right: 22px !important;
        background-position: right 8px center;
    }
    body.inside-page.page-property .enq-phone .ds-input {
        flex: 1 1 auto;
        min-width: 0;
        padding-left: 42px !important;
    }
    body.inside-page.page-property .enq-consent {
        color: #b7c8bc !important;
        font-size: .8rem !important;
        margin: 4px 0 8px;
    }
    body.inside-page.page-property .enq-submit-inline {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 52px !important;
        margin-top: 4px;
        border: 0 !important;
        border-radius: 14px !important;
        background: #25d366 !important;
        color: #063a1c !important;
        font-size: 1rem !important;
        font-weight: 850 !important;
        box-shadow: none !important;
    }
    body.inside-page.page-property .enq-submit-inline .submit-label {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: #063a1c;
    }
    body.inside-page.page-property .enq-submit-ic {
        display: inline-flex;
        color: #063a1c;
        line-height: 0;
    }
    body.inside-page.page-property .enq-submit-ic svg {
        display: block;
    }

    /* Field icons: tame colorful emoji toward accent green */
    body.inside-page.page-property .enq-field__ic {
        filter: grayscale(1) sepia(1) saturate(4) hue-rotate(60deg) brightness(1.05);
        opacity: .95;
    }

    /* Secondary blocks after form */
    body.inside-page.page-property .pvideo {
        border-radius: 16px !important;
        overflow: hidden;
        border: 1px solid rgba(117, 193, 73, .18);
        background: rgba(7, 28, 18, .92);
        min-height: 180px;
    }
    body.inside-page.page-property .pdetail__related {
        display: grid !important;
        gap: 14px !important;
        padding: 0 !important;
        margin-top: 8px !important;
    }
    body.inside-page.page-property .u-mt-6 {
        margin-top: 18px !important;
    }
    body.inside-page.page-property .site-footer,
    body.inside-page.page-property .footer {
        background: #03100a;
    }
}

@media (max-width: 359.98px) {
    body.inside-page.page-property .pdetail__specs--quick {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    body.inside-page.page-property .pdetail__specs--quick .pspec:nth-child(3),
    body.inside-page.page-property .pdetail__specs--quick .pspec:nth-child(4) {
        border-top: 1px solid rgba(117, 193, 73, .14) !important;
    }
    body.inside-page.page-property .pdetail__specs--quick .pspec:nth-child(3) {
        border-left: 0 !important;
    }
    body.inside-page.page-property .pamenity-preview {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    body.inside-page.page-property .enq-row {
        grid-template-columns: 1fr !important;
    }
}

/* Desktop: never apply this file's immersive mobile chrome */
@media (min-width: 992px) {
    body.inside-page.page-property .pgallery__chrome,
    body.inside-page.page-property .pgallery__dots {
        display: none !important;
    }
    body.inside-page.page-property .pamenity-preview {
        display: none !important;
    }
}
