/* Lokaloh Detaildesign Pro — exclusively WP Rentals single property pages */
body.single-estate_property {
 --loh-accent:#f28a00;--loh-accent-dark:#c86c00;--loh-ink:#20252e;--loh-muted:#6f7784;
 --loh-line:#edf0f2;--loh-soft:#f7f8fa;--loh-radius:17px;
}
body.single-estate_property .listing_type_title_wrapper .entry-title.entry-prop {font-weight:800!important;letter-spacing:-.025em;line-height:1.18!important;color:var(--loh-ink)!important}
body.single-estate_property .listing_type_title_wrapper .listing_main_image_location {color:var(--loh-muted)!important}
body.single-estate_property .listing_type_title_wrapper .listing_main_image_location a {color:inherit!important;text-decoration:none!important}
body.single-estate_property .listing_type_title_wrapper .listing_main_image_location a:hover {color:var(--loh-accent)!important}
body.single-estate_property .lokaloh-single-rating-row .lokaloh-rating-top {border-radius:11px!important}
body.single-estate_property .lokaloh-single-rating-row .lokaloh-rating-description {line-height:1.5!important}
/* Only the known property detail panels, never general theme panels */
body.single-estate_property .listing_description_wrapper.panel-wrapper,
body.single-estate_property #listing_price.panel-wrapper,
body.single-estate_property .single-content .panel-wrapper,
body.single-estate_property .listing-content .panel-wrapper,
body.single-estate_property #features_wrapper.panel-wrapper,
body.single-estate_property .content-fixed-listing .panel-wrapper {
 background:#fff!important;border:1px solid var(--loh-line)!important;
 border-radius:var(--loh-radius)!important;box-shadow:0 5px 24px rgba(25,36,50,.045)!important;
 padding:20px!important;margin:0 0 16px!important;overflow:visible;
}
body.single-estate_property .panel-wrapper .panel-title,
body.single-estate_property .listing_description_wrapper .panel-title-description {
 display:flex!important;align-items:center;gap:10px;color:var(--loh-ink)!important;
 font-size:19px!important;font-weight:800!important;line-height:1.35!important;
 padding:0 0 14px!important;margin:0 0 15px!important;
 border-bottom:1px solid var(--loh-line)!important;text-decoration:none!important;
}
body.single-estate_property .panel-wrapper .panel-title:before,
body.single-estate_property .listing_description_wrapper .panel-title-description:before {
 content:'✦';display:inline-flex;align-items:center;justify-content:center;flex:none;
 width:34px;height:34px;border-radius:10px;background:#fff1e1;color:var(--loh-accent);font-size:17px;font-weight:800;
}
body.single-estate_property #listing_price > .panel-title:before {content:'€'}
body.single-estate_property .panel-wrapper:has(#collapseSleep) > .panel-title:before {content:'☾'}
body.single-estate_property .panel-wrapper:has(#collapseTwo) > .panel-title:before {content:'⌖'}
body.single-estate_property .panel-wrapper:has(#collapseTree) > .panel-title:before {content:'⌂'}
body.single-estate_property .panel-wrapper .panel-title .panel-title-arrow {margin-left:auto!important;order:2}
body.single-estate_property .panel-wrapper .panel-body.panel-body-border {border:0!important;padding:0!important;}
/* Description: retain WP Rentals original show-more behavior */
body.single-estate_property #listing_description_content {font-size:15px;line-height:1.8;color:#444b56}
body.single-estate_property #listing_description_content p {margin:0 0 12px!important}
body.single-estate_property #view_more_desc {display:inline-flex;align-items:center;gap:5px;color:var(--loh-accent-dark)!important;font-weight:750!important;border-radius:10px;background:#fff3e5;padding:9px 13px!important;cursor:pointer}
/* Pricing: use actual WP Rentals values; don't touch booking calculation */
body.single-estate_property #listing_price .panel-body.panel-body-border {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important}
body.single-estate_property #listing_price .listing_detail {float:none!important;width:auto!important;max-width:none!important;min-width:0;margin:0!important;padding:12px 13px!important;background:var(--loh-soft);border:1px solid var(--loh-line);border-radius:12px;line-height:1.5!important;color:var(--loh-ink)!important;font-size:14px!important;overflow-wrap:anywhere}
body.single-estate_property #listing_price .listing_detail .item_head {display:block!important;font-size:12px!important;color:var(--loh-muted)!important;font-weight:550!important;margin:0 0 4px!important}
body.single-estate_property #listing_price .list_detail_prop_price_per_night {grid-column:1/-1;background:linear-gradient(110deg,#fff0dd,#fff9f2)!important;border-color:#ffe0b6!important;font-size:24px!important;font-weight:800!important}
body.single-estate_property #listing_price .list_detail_prop_price_per_night .item_head {color:#a25a00!important;font-weight:750!important}
body.single-estate_property #listing_price .list_detail_prop_price_per_night_7d,
body.single-estate_property #listing_price .list_detail_prop_price_per_night_30d {background:#fff!important;border-color:#f0e4d4!important;font-size:18px!important;font-weight:750!important}
body.single-estate_property #listing_price .loh-saving {display:block;margin-top:5px;font-size:11px!important;line-height:1.4;color:#14814d;font-weight:750}
body.single-estate_property #listing_price .loh-saving:before {content:'✦ ';color:var(--loh-accent)}
/* Bedroom tiles */
body.single-estate_property #collapseSleep .wpestate_front_bedrooms_wrapper {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}
body.single-estate_property #collapseSleep .wpestate_front_bedrooms {float:none!important;width:auto!important;min-width:0;background:var(--loh-soft);border:1px solid var(--loh-line);border-radius:13px;padding:15px!important;margin:0!important;line-height:1.7}
body.single-estate_property #collapseSleep .wpestate_front_bedrooms strong {display:block;color:var(--loh-ink);font-size:15px;margin-bottom:8px}
body.single-estate_property #collapseSleep .wpestate_front_bedrooms strong:before {content:'☾';color:var(--loh-accent);margin-right:7px}
/* Location and details */
body.single-estate_property #collapseTwo .panel-body,
body.single-estate_property #collapseTree .panel-body {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important}
body.single-estate_property #collapseTwo .listing_detail,
body.single-estate_property #collapseTree .listing_detail {float:none!important;width:auto!important;max-width:none!important;min-width:0;margin:0!important;padding:13px!important;background:var(--loh-soft);border:1px solid var(--loh-line);border-radius:11px;color:var(--loh-ink);font-weight:700;overflow-wrap:anywhere}
body.single-estate_property #collapseTwo .item_head,
body.single-estate_property #collapseTree .item_head {display:block!important;font-size:11px!important;font-weight:550!important;color:var(--loh-muted)!important;margin-bottom:5px!important}
body.single-estate_property #collapseTwo .listing_detail a {color:var(--loh-ink)!important;text-decoration:none}
body.single-estate_property #collapseTwo .listing_detail a:hover {color:var(--loh-accent)!important}
/* Features: only present amenities in initial view; optional disclosure shows all */
body.single-estate_property #features_wrapper .feature_chapter_name {font-weight:800!important;color:var(--loh-accent-dark)!important;margin:10px 0!important;float:none!important;width:100%!important}
body.single-estate_property #features_wrapper .panel-body.panel-body-border {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body.single-estate_property #features_wrapper .panel-body > .listing_detail {float:none!important;width:auto!important;min-width:0;margin:0!important;padding:12px!important;border:1px solid var(--loh-line);border-radius:13px;background:#fff}
body.single-estate_property #features_wrapper .feature_chapter_name {padding:0!important}
body.single-estate_property #features_wrapper .feature_chapter_name + .listing_detail {margin-top:4px!important}
body.single-estate_property #features_wrapper .feature_chapter_name ~ .listing_detail {font-size:13px!important;line-height:1.5!important}
body.single-estate_property #features_wrapper .listing_detail .fa-check {color:#18945b!important}
body.single-estate_property #features_wrapper.loh-features-compact .listing_detail.not_present {display:none!important}
body.single-estate_property #features_wrapper .loh-features-toggle {border:1px solid #f4d7af;background:#fff3e6;color:#a75a00;border-radius:10px;padding:10px 14px;font-weight:750;cursor:pointer;margin-top:12px}
/* Gallery overview strip */
body.single-estate_property .category_wrapper {border-top:1px solid var(--loh-line);border-bottom:1px solid var(--loh-line);padding:14px 0!important;margin-bottom:18px!important}
body.single-estate_property .category_details_wrapper {display:flex!important;flex-wrap:wrap;gap:8px 12px;align-items:center}
body.single-estate_property .category_details_wrapper .no_link_details {display:inline-flex!important;align-items:center;gap:6px;background:var(--loh-soft);border:1px solid var(--loh-line);border-radius:10px;padding:8px 10px!important;margin:0!important;font-size:12px!important}
body.single-estate_property .category_details_wrapper .no_link_details svg {width:17px!important;height:17px!important;fill:var(--loh-accent)!important}
body.single-estate_property .category_details_wrapper .property_header_separator {display:none!important}
body.single-estate_property .category_wrapper .check_avalability {background:var(--loh-accent)!important;border-radius:11px!important;color:#fff!important;font-weight:750!important;padding:11px 16px!important;white-space:nowrap}
/* Booking/contact sidebar — preserve all original inputs, ids and event handlers */
body.single-estate_property #booking_form_request {background:#fff!important;border:1px solid var(--loh-line)!important;border-radius:18px!important;box-shadow:0 9px 32px rgba(25,36,50,.07)!important;padding:20px!important}
body.single-estate_property #booking_form_request #contact_for_reservation {color:var(--loh-ink)!important;font-weight:800!important;font-size:19px!important}
body.single-estate_property #booking_form_request .form-control {border:1px solid #e4e8ee!important;border-radius:11px!important;box-shadow:none!important;background:#fff!important}
body.single-estate_property #booking_form_request .form-control:focus {border-color:var(--loh-accent)!important;outline:2px solid #fff0dc!important}
body.single-estate_property #booking_form_request #booking_mes_mess {min-height:100px!important}
body.single-estate_property #booking_form_request #submit_mess_front {background:var(--loh-accent)!important;border:0!important;border-radius:11px!important;color:#fff!important;font-weight:800!important;min-height:45px}
body.single-estate_property #booking_form_request #add_favorites {border-radius:11px!important}
body.single-estate_property #mobile_booking_triger {background:var(--loh-accent)!important;color:#fff!important;border:0!important;border-radius:12px!important;font-weight:800!important;padding:12px 17px!important}
/* Accessibility */
body.single-estate_property #view_more_desc:focus-visible,
body.single-estate_property #features_wrapper .loh-features-toggle:focus-visible,
body.single-estate_property #mobile_booking_triger:focus-visible {outline:3px solid #b75e00;outline-offset:3px}
@media(max-width:767px) {
 body.single-estate_property .listing_description_wrapper.panel-wrapper,
 body.single-estate_property #listing_price.panel-wrapper,
 body.single-estate_property .single-content .panel-wrapper,
 body.single-estate_property .listing-content .panel-wrapper,
 body.single-estate_property #features_wrapper.panel-wrapper,
 body.single-estate_property .content-fixed-listing .panel-wrapper {padding:13px!important;margin-bottom:12px!important;border-radius:14px!important}
 body.single-estate_property .panel-wrapper .panel-title,
 body.single-estate_property .listing_description_wrapper .panel-title-description {font-size:16px!important;padding-bottom:10px!important;margin-bottom:11px!important}
 body.single-estate_property #listing_price .panel-body.panel-body-border {gap:7px!important}
 body.single-estate_property #listing_price .listing_detail {padding:10px!important;font-size:12px!important}
 body.single-estate_property #listing_price .listing_detail .item_head {font-size:10.5px!important}
 body.single-estate_property #listing_price .list_detail_prop_price_per_night {font-size:22px!important}
 body.single-estate_property #listing_price .list_detail_prop_price_per_night_7d,
 body.single-estate_property #listing_price .list_detail_prop_price_per_night_30d {font-size:16px!important}
 body.single-estate_property #listing_price .loh-saving {font-size:10px!important}
 body.single-estate_property #collapseSleep .wpestate_front_bedrooms_wrapper {gap:7px!important}
 body.single-estate_property #collapseSleep .wpestate_front_bedrooms {padding:11px!important;font-size:12px!important}
 body.single-estate_property #collapseTwo .panel-body,
 body.single-estate_property #collapseTree .panel-body {gap:7px!important}
 body.single-estate_property #collapseTwo .listing_detail,
 body.single-estate_property #collapseTree .listing_detail {padding:10px!important;font-size:12px!important}
 body.single-estate_property #features_wrapper .panel-body.panel-body-border {grid-template-columns:1fr;gap:9px}
 body.single-estate_property #features_wrapper .panel-body > .listing_detail {padding:10px!important}
 body.single-estate_property .category_wrapper {padding:11px 0!important}
 body.single-estate_property .category_details_wrapper {gap:6px!important}
 body.single-estate_property .category_details_wrapper .no_link_details {padding:7px 8px!important;font-size:11px!important}
 body.single-estate_property #booking_form_request {padding:15px!important}
}
@media(max-width:350px) {
 body.single-estate_property #collapseSleep .wpestate_front_bedrooms_wrapper {grid-template-columns:1fr}
}
