
/* TPH60A_SEARCH_CARD_VISUAL_REFINE
   Search results only:
   - prices stronger on every card/view
   - regular-card descriptions use a compact ~3-line rhythm
   - location is a small bottom-left photo overlay
*/
.tph-search-page .tph-search-photo{
    position:relative!important;
    overflow:hidden!important;
}

.tph-search-page .tph-search-location{
    position:absolute!important;
    left:8px!important;
    bottom:8px!important;
    z-index:3!important;
    display:inline-flex!important;
    align-items:center!important;
    width:auto!important;
    max-width:calc(100% - 16px)!important;
    margin:0!important;
    padding:3px 7px!important;
    border-radius:999px!important;
    background:rgba(4,43,35,.78)!important;
    color:#fff!important;
    font-size:9px!important;
    line-height:1.2!important;
    font-weight:700!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    box-shadow:none!important;
}

.tph-search-page .tph-search-card-bottom > span{
    color:#07815f!important;
    font-size:12.5px!important;
    line-height:1.35!important;
    font-weight:900!important;
    letter-spacing:0!important;
}

.tph-search-page .tph-search-card.is-featured .tph-search-card-bottom > span{
    font-size:14px!important;
}

.tph-search-page .tph-search-card:not(.is-featured) .tph-search-desc{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:3!important;
    overflow:hidden!important;
    min-height:4.35em!important;
    max-height:4.35em!important;
    margin:4px 0 8px!important;
    color:#6b7a78!important;
    font-size:10.5px!important;
    line-height:1.45!important;
    font-weight:400!important;
}

@media (max-width:767px){
    .tph-search-page .tph-search-location{
        left:6px!important;
        bottom:6px!important;
        max-width:calc(100% - 12px)!important;
        padding:2px 5px!important;
        font-size:8px!important;
    }

    .tph-search-page .tph-search-card-bottom > span{
        font-size:11px!important;
        line-height:1.3!important;
        font-weight:900!important;
    }

    .tph-search-page .tph-search-card.is-featured .tph-search-card-bottom > span{
        font-size:12.5px!important;
    }

    .tph-search-page .tph-search-card:not(.is-featured) .tph-search-desc{
        min-height:4.2em!important;
        max-height:4.2em!important;
        margin:3px 0 7px!important;
        font-size:9.5px!important;
        line-height:1.4!important;
    }
}

/* TPH60B_SEARCH_LOCATION_BADGE_FONT_REDUCE
   User-requested visual refinement only:
   keep the location badge at the same bottom-left position,
   but reduce its text size another step.
*/
.tph-search-page .tph-search-location{
    font-size:8px!important;
}

@media (max-width:767px){
    .tph-search-page .tph-search-location{
        font-size:7px!important;
    }
}

/* TPH60C2_SEARCH_REGULAR_NAME_LOCATION_FONT_REFINE
   Regular cards ("รีสอร์ตอื่น ๆ") only.
   Make property names slightly smaller and location badges much smaller.
   Featured cards remain unchanged.
*/
.tph-search-page .tph-search-card:not(.is-featured) .tph-search-location{
    font-size:6px!important;
    line-height:1.05!important;
    padding:1px 4px!important;
    left:6px!important;
    bottom:6px!important;
    max-width:calc(100% - 12px)!important;
}

.tph-search-page .tph-search-card:not(.is-featured) .tph-search-card-body h3,
.tph-search-page .tph-search-card:not(.is-featured) .tph-search-card-body h3 a{
    font-size:14px!important;
    line-height:1.28!important;
    font-weight:800!important;
}

@media (max-width:767px){
    .tph-search-page .tph-search-card:not(.is-featured) .tph-search-location{
        font-size:5.5px!important;
        line-height:1.05!important;
        padding:1px 3px!important;
        left:5px!important;
        bottom:5px!important;
        max-width:calc(100% - 10px)!important;
    }

    .tph-search-page .tph-search-card:not(.is-featured) .tph-search-card-body h3,
    .tph-search-page .tph-search-card:not(.is-featured) .tph-search-card-body h3 a{
        font-size:11.5px!important;
        line-height:1.25!important;
    }
}

/* TPH60E_SEARCH_FONT_CASCADE_CACHE_FIX
   Root-cause fix after runtime diagnostic:
   - tph-global-font.css loads later and used !important on generic search typography.
   - STEP60 stylesheet URL stayed at ?v=1, allowing an older cached copy.
   This block uses intentionally stronger selectors for regular cards only.
*/

/* Desktop / tablet — regular cards only. */
.tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-photo .tph-search-location{
    font-size:6px!important;
    line-height:1.05!important;
    font-weight:700!important;
    padding:1px 4px!important;
    left:6px!important;
    bottom:6px!important;
}

.tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-card-body > h3,
.tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-card-body > h3 > a{
    font-size:14px!important;
    line-height:1.28!important;
    font-weight:800!important;
}

/* Mobile — regular cards only. */
@media (max-width:767px){
    .tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-photo .tph-search-location{
        font-size:5.5px!important;
        line-height:1!important;
        padding:1px 3px!important;
        left:5px!important;
        bottom:5px!important;
    }

    .tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-card-body > h3,
    .tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-card-body > h3 > a{
        font-size:11.5px!important;
        line-height:1.25!important;
    }
}

/* TPH60F_SEARCH_REGULAR_LOCATION_BADGE_BALANCE
   Final visual balance for regular-card location badges.
   STEP60E fixed the cascade; this step only increases readability.
*/
.tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-photo .tph-search-location{
    font-size:8px!important;
    line-height:1.1!important;
    padding:2px 5px!important;
    left:6px!important;
    bottom:6px!important;
}

@media (max-width:767px){
    .tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-photo .tph-search-location{
        font-size:7.5px!important;
        line-height:1.1!important;
        padding:2px 4px!important;
        left:5px!important;
        bottom:5px!important;
    }
}

/* TPH60G_SEARCH_REGULAR_LOCATION_BADGE_FONT_UP
   Slight readability increase only.
   Keep position, padding, colors, names, prices and all other card styling unchanged.
*/
.tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-photo .tph-search-location{
    font-size:9px!important;
}

@media (max-width:767px){
    .tph-search-page .tph-search-regular-grid .tph-search-card:not(.is-featured) .tph-search-photo .tph-search-location{
        font-size:8.5px!important;
    }
}
