/**
 * Lumera PM — Frontend v1.7.2
 * Fixed: mobile layout · full page width · solid brand icons
 */

/* ── TOKENS ─────────────────────────────────────────────────────────── */
:root {
  /* ── DARK MODE (default) ────────────────────────── */
  --lp-ink:       #0a0c10;
  --lp-ink2:      #10141a;
  --lp-ink3:      #181d28;
  --lp-ink4:      #1f2535;
  --lp-gold:      var(--lp,  #ba7e5a);
  --lp-gold-lt:   var(--ls,  #f9c59c);
  --lp-grad:      var(--lpm-gold-grad, linear-gradient(135deg,#ba7e5a,#f9c59c));
  --lp-cream:     #ede5d8;
  --lp-text:      #c8bfb4;
  --lp-muted:     #6b6259;
  --lp-border:    rgba(255,255,255,.07);
  --lp-border-g:  rgba(186,126,90,.28);
  --lp-glass:     rgba(16,20,26,.78);
  --lp-blur:      saturate(180%) blur(22px);
  --lp-shadow:    0 8px 32px rgba(0,0,0,.5), 0 1px 0 rgba(255,255,255,.055) inset;
  --lp-display:   'Cormorant Garamond','Didot','Palatino Linotype',serif;
  --lp-sans:      'Century Gothic','Futura','Trebuchet MS',sans-serif;
  --lp-dur:       .26s;
  --lp-ease:      cubic-bezier(.4,0,.2,1);
}

/* ── BASE ────────────────────────────────────────────────────────────── */
.lp-wrap {
  font-family: var(--lp-sans);
  color: var(--lp-text);
  background: var(--lp-ink);
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  line-height: 1.65;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
  overflow-x: hidden;
  /* Light mode: white base */
  --lp-page-bg: #ffffff;
}
.lp-wrap *, .lp-wrap *::before, .lp-wrap *::after { box-sizing: border-box; }
.lp-wrap img  { display: block; max-width: 100%; }
.lp-wrap a    { text-decoration: none; }

/* ── GLASS SURFACE ───────────────────────────────────────────────────── */
.lp-glass-card {
  background: var(--lp-glass);
  backdrop-filter: var(--lp-blur);
  -webkit-backdrop-filter: var(--lp-blur);
  border: 1px solid var(--lp-border);
  border-radius: 16px;
  box-shadow: var(--lp-shadow);
}

/* ── STANDALONE NAV ──────────────────────────────────────────────────── */
.lp-nav {
  position: sticky; top: 0; z-index: 900;
  width: 100%;
  background: rgba(10,12,16,.95);
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--lp-border);
  padding: 14px 0;
}
.lp-nav__inner {
  max-width: 1400px; margin: 0 auto;
  padding: 0 clamp(16px,4vw,64px);
  display: flex; align-items: center;
}
.lp-nav__logo { color: var(--lp-cream); font-family: var(--lp-display); font-size: 1.1rem; }
.lp-nav__logo img { height: 40px; width: auto; }
.lp-nav__back {
  margin-left: auto; display: inline-flex; align-items: center; gap: 6px;
  font-size: .66rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  color: var(--lp-muted); border: 1px solid var(--lp-border);
  padding: 7px 16px; border-radius: 100px; transition: all var(--lp-dur) var(--lp-ease);
}
.lp-nav__back:hover { color: var(--lp-gold-lt); border-color: var(--lp-border-g); }

/* ═══════════════════════════════════════════════════════════════════════
   HERO — fixed height, no overflow bleed
   ═══════════════════════════════════════════════════════════════════════ */
.lp-hero {
  position: relative;
  width: 100%;
  height: clamp(380px, 62vh, 820px);
  overflow: hidden;
  background: #06080c;
}

/* Slides */
.lp-slide { position: absolute; inset: 0; opacity: 0; transition: opacity .85s var(--lp-ease); pointer-events: none; z-index: 1; }
.lp-slide--active { opacity: 1; pointer-events: auto; z-index: 2; }
.lp-slide--leaving { opacity: 0; z-index: 1; }
.lp-slide__img { width: 100%; height: 100%; object-fit: cover; display: block; transform: scale(1.04); transition: transform 10s ease-out; }
.lp-slide--active .lp-slide__img { transform: scale(1); }
/* Vignette — bottom heavy so glass info is readable */
.lp-slide__vignette {
  position: absolute; inset: 0; z-index: 3; pointer-events: none;
  background:
    linear-gradient(to top, rgba(6,8,12,.96) 0%, rgba(6,8,12,.62) 32%, rgba(6,8,12,.0) 60%),
    linear-gradient(to right, rgba(6,8,12,.45) 0%, transparent 55%);
}

/* Prev/Next arrows */
.lp-hero__controls { position: absolute; inset: 0; z-index: 10; pointer-events: none; }
.lp-hero__arrow {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 44px; height: 44px;
  background: rgba(10,12,16,.6); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.12); border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; pointer-events: auto; padding: 0; color: #fff;
  transition: all var(--lp-dur) var(--lp-ease);
}
.lp-hero__arrow:hover { background: rgba(186,126,90,.22); border-color: rgba(186,126,90,.5); }
.lp-hero__arrow--prev { left: 14px; }
.lp-hero__arrow--next { right: 14px; }

/* Thumbnail strip */
.lp-hero__thumbs {
  position: absolute; bottom: 0; left: 0; right: 0; z-index: 12;
  display: flex; gap: 5px; padding: 10px clamp(16px,4vw,64px);
  overflow-x: auto; scrollbar-width: none;
  background: linear-gradient(to top, rgba(6,8,12,.88), transparent);
}
.lp-hero__thumbs::-webkit-scrollbar { display: none; }
.lp-hero__thumb {
  flex: 0 0 64px; height: 44px;
  border: 2px solid transparent; border-radius: 4px; overflow: hidden;
  cursor: pointer; opacity: .4; transition: all .3s; padding: 0; background: none;
}
.lp-hero__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; }
.lp-hero__thumb--active, .lp-hero__thumb:hover { opacity: 1; border-color: rgba(186,126,90,.65); }

/* Glass info overlay — fixed to bottom of hero, never overflows */
.lp-hero__glass {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  z-index: 11;
  /* On mobile thumbnails are hidden so we push the glass up less */
  padding-bottom: 60px; /* space for thumb strip */
}
.lp-hero__glass-inner {
  max-width: 1400px; margin: 0 auto;
  padding: 0 clamp(16px,4vw,64px);
  display: flex; align-items: flex-end; justify-content: space-between; gap: 16px;
}
.lp-hero__glass-left { flex: 1; min-width: 0; padding-bottom: 8px; }
.lp-badges { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.lp-hero__title {
  font-family: var(--lp-display);
  font-size: clamp(1.5rem, 4.5vw, 3.4rem);
  font-weight: 300; font-style: italic; color: #fff;
  margin: 0 0 6px; line-height: 1.1;
  text-shadow: 0 2px 24px rgba(0,0,0,.6);
}
.lp-hero__loc {
  display: flex; align-items: center; gap: 5px;
  font-size: .68rem; color: rgba(255,255,255,.5);
  text-transform: uppercase; letter-spacing: .1em;
}
/* Price panel — right side of glass overlay */
.lp-hero__glass-right {
  flex-shrink: 0; max-width: 260px; min-width: 180px;
  background: rgba(10,12,16,.68);
  backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
  border: 1px solid rgba(186,126,90,.18); border-radius: 10px;
  padding: 16px 18px; text-align: right; margin-bottom: 8px;
}
.lp-hero__price { margin-bottom: 8px; }
.lp-hero__price strong {
  font-family: var(--lp-display);
  font-size: clamp(1.1rem, 2.5vw, 1.9rem);
  font-weight: 300; font-style: italic; display: block;
  background: var(--lp-grad);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.lp-hero__price-note { font-size: .6rem; color: rgba(255,255,255,.38); text-transform: uppercase; letter-spacing: .1em; }
.lp-hero__specs { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.lp-spec {
  display: flex; align-items: center; gap: 4px;
  font-size: .66rem; color: rgba(255,255,255,.65); text-transform: uppercase; letter-spacing: .08em;
}
.lp-spec svg { opacity: .7; color: var(--lp-gold-lt); }
.lp-spec span { font-weight: 700; color: rgba(255,255,255,.9); font-size: .78rem; }
.lp-spec em { font-style: normal; opacity: .55; }

/* Counter badge */
.lp-hero__counter {
  position: absolute; top: 14px; right: 14px; z-index: 12;
  font-family: var(--lp-display); font-size: .82rem; font-style: italic;
  color: rgba(255,255,255,.5);
  background: rgba(10,12,16,.55); backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.1); border-radius: 100px; padding: 3px 12px;
}
#lp-curr { color: var(--lp-gold-lt); font-weight: 500; }

/* ── CTA ROW ─────────────────────────────────────────────────────────── */
.lp-cta-row { width: 100%; border-bottom: 1px solid var(--lp-border); }
.lp-cta-row__inner {
  max-width: 1400px; margin: 0 auto;
  padding: 12px clamp(16px,4vw,64px);
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 10px;
}
.lp-breadcrumb {
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
  font-size: .62rem; color: var(--lp-muted); text-transform: uppercase; letter-spacing: .1em;
}
.lp-breadcrumb a { color: var(--lp-muted); transition: color var(--lp-dur); }
.lp-breadcrumb a:hover { color: var(--lp-gold-lt); }
.lp-breadcrumb svg { opacity: .3; }
.lp-cta-row__btns { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }

/* ── MAIN GRID ───────────────────────────────────────────────────────── */
.lp-grid {
  max-width: 1400px; margin: 0 auto;
  padding: clamp(24px,4vw,52px) clamp(16px,4vw,64px) clamp(48px,7vw,100px);
  display: grid; grid-template-columns: 1fr 340px;
  gap: clamp(24px,3.5vw,52px); align-items: start;
  background: var(--lp-ink2);
}
.lp-main { display: flex; flex-direction: column; gap: 36px; min-width: 0; }

/* ── SECTION HEADINGS ────────────────────────────────────────────────── */
.lp-section__h {
  display: flex; align-items: center; gap: 14px;
  font-family: var(--lp-display);
  font-size: clamp(1.2rem, 2vw, 1.7rem);
  font-weight: 300; font-style: italic; color: var(--lp-cream);
  margin: 0 0 18px; letter-spacing: .01em;
}
.lp-section__line { display: block; width: 26px; height: 1px; background: var(--lp-grad); flex-shrink: 0; opacity: .6; }
.lp-section__body { color: rgba(200,191,180,.68); line-height: 1.85; font-size: .88rem; }
.lp-section__body p { margin-bottom: 1em; }

/* ── SPECS GLASS CARD ────────────────────────────────────────────────── */
.lp-specs-card {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  padding: 0; overflow: hidden;
}
.lp-spec-item {
  display: flex; align-items: center; gap: 10px; padding: 18px 14px;
  position: relative; transition: background var(--lp-dur);
}
.lp-spec-item::after { content: ''; position: absolute; right: 0; top: 20%; height: 60%; width: 1px; background: rgba(255,255,255,.05); }
.lp-spec-item:last-child::after { display: none; }
.lp-spec-item:hover { background: rgba(186,126,90,.04); }
.lp-spec-item__icon {
  width: 30px; height: 30px; flex-shrink: 0;
  background: rgba(186,126,90,.1); border-radius: 7px;
  display: flex; align-items: center; justify-content: center;
}
.lp-spec-item__icon svg { width: 15px; height: 15px; color: var(--lp-gold); }
.lp-spec-item__body { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.lp-spec-item__val { font-size: .88rem; font-weight: 700; color: var(--lp-cream); white-space: nowrap; }
.lp-spec-item__lbl { font-size: .6rem; color: var(--lp-muted); text-transform: uppercase; letter-spacing: .1em; }

/* ── DESCRIPTION / READ MORE ─────────────────────────────────────────── */
.lp-desc-card { padding: 24px 28px; }
.lp-desc-body { color: rgba(200,191,180,.7); line-height: 1.9; font-size: .88rem; transition: max-height .4s var(--lp-ease); }
.lp-desc-body p { margin-bottom: 1em; }
.lp-desc-body ul, .lp-desc-body ol { margin: 0 0 1em 1.2em; }
.lp-desc-body li { margin-bottom: .35em; }
.lp-desc-body h2,.lp-desc-body h3 { font-family: var(--lp-display); font-weight: 400; font-style: italic; color: var(--lp-cream); margin: 1.3em 0 .5em; }
.lp-desc-fade { height: 64px; background: linear-gradient(to bottom, transparent, var(--lp-glass)); pointer-events: none; display: none; margin: -64px 0 0; position: relative; z-index: 1; border-radius: 0 0 16px 16px; }
.lp-read-more {
  display: none; align-items: center; gap: 7px; margin-top: 10px;
  background: none; border: 1px solid var(--lp-border-g); color: var(--lp-muted);
  font-size: .64rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  padding: 8px 18px; border-radius: 100px; cursor: pointer; font-family: var(--lp-sans);
  transition: all var(--lp-dur) var(--lp-ease);
}
.lp-read-more:hover { color: var(--lp-gold-lt); border-color: rgba(186,126,90,.5); background: rgba(186,126,90,.05); }
.lp-read-more[aria-expanded="true"] svg { transform: rotate(180deg); }
.lp-read-more svg { transition: transform var(--lp-dur); }

/* Highlights */
.lp-highlights { display: flex; flex-wrap: wrap; gap: 1px; background: rgba(255,255,255,.04); border-radius: 10px; overflow: hidden; margin-top: 18px; }
.lp-hl { background: var(--lp-ink3); padding: 14px 18px; flex: 1; min-width: 110px; display: flex; flex-direction: column; gap: 3px; transition: background var(--lp-dur); }
.lp-hl:hover { background: var(--lp-ink4); }
.lp-hl span { font-size: .58rem; color: var(--lp-muted); text-transform: uppercase; letter-spacing: .1em; }
.lp-hl strong { font-size: .88rem; font-weight: 700; color: var(--lp-cream); }
.lp-hl--gold strong { background: var(--lp-grad); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

/* ── AMENITIES ───────────────────────────────────────────────────────── */
.lp-amenities { display: flex; flex-wrap: wrap; gap: 6px; }
.lp-amenity {
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(16,20,26,.82); backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.07); border-radius: 100px;
  padding: 7px 14px; font-size: .66rem; font-weight: 600;
  color: var(--lp-text); text-transform: uppercase; letter-spacing: .07em;
  transition: all var(--lp-dur) var(--lp-ease);
}
.lp-amenity:hover { border-color: var(--lp-border-g); color: var(--lp-gold-lt); background: rgba(186,126,90,.06); }
.lp-amenity svg { flex-shrink: 0; color: var(--lp-gold); width: 10px; height: 10px; }

/* ── PAYMENT TRACK ───────────────────────────────────────────────────── */
.lp-pay-track { display: flex; align-items: center; overflow-x: auto; padding: 24px 20px; margin-bottom: 14px; }
.lp-pay-step { display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 72px; flex: 1; text-align: center; }
.lp-pay-step__node { width: 34px; height: 34px; background: var(--lp-grad); border-radius: 50%; box-shadow: 0 0 0 5px rgba(186,126,90,.1), 0 0 16px rgba(186,126,90,.22); transition: transform var(--lp-dur); }
.lp-pay-step:hover .lp-pay-step__node { transform: scale(1.1); }
.lp-pay-step__pct { font-family: var(--lp-display); font-size: 1.2rem; font-style: italic; font-weight: 300; background: var(--lp-grad); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.lp-pay-step__lbl { font-size: .58rem; color: var(--lp-muted); text-transform: uppercase; letter-spacing: .08em; }
.lp-pay-track__line { height: 1px; flex: 1; min-width: 14px; background: linear-gradient(to right, rgba(186,126,90,.3), rgba(249,197,156,.1)); position: relative; top: -9px; }
.lp-pay-text { padding: 18px 22px; }

/* ── DOCS ────────────────────────────────────────────────────────────── */
.lp-docs { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; }
.lp-doc-card { padding: 20px; }
.lp-doc-card__lbl { font-size: .62rem; font-weight: 700; color: var(--lp-gold); text-transform: uppercase; letter-spacing: .12em; margin: 0 0 12px; display: flex; align-items: center; gap: 6px; }
.lp-doc-card__lbl svg { color: var(--lp-gold); flex-shrink: 0; }
.lp-doc-card__qr { max-width: 150px; margin: 0 auto; image-rendering: pixelated; border-radius: 3px; }

/* ── AGENT BLOCK (main col, mobile only) ─────────────────────────────── */
.lp-agent-block { display: flex; gap: 18px; align-items: center; padding: 20px; }
.lp-agent-block__photo { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; flex-shrink: 0; border: 1px solid rgba(186,126,90,.25); }
.lp-agent-block__photo--init { width: 72px; height: 72px; border-radius: 50%; background: var(--lp-grad); flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.lp-agent-block__photo--init svg { color: #0a0c10; }
.lp-agent-block__name { font-family: var(--lp-display); font-size: 1rem; font-style: italic; font-weight: 300; color: var(--lp-cream); margin: 0 0 3px; }
.lp-agent-block__role { font-size: .6rem; color: var(--lp-gold); text-transform: uppercase; letter-spacing: .12em; margin: 0 0 10px; }
.lp-agent-block__btns { display: flex; flex-wrap: wrap; gap: 7px; }
@media (min-width: 1001px) { .lp-agent-main-section { display: none; } }

/* ── MAP / VIDEO / FLOOR PLANS ───────────────────────────────────────── */
.lp-map-wrap { border-radius: 12px; overflow: hidden; border: 1px solid var(--lp-border); }
.lp-map-wrap iframe { display: block; }
.lp-fp-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
.lp-fp-item { display: block; border-radius: 8px; overflow: hidden; border: 1px solid var(--lp-border); transition: all var(--lp-dur); }
.lp-fp-item:hover { border-color: var(--lp-border-g); transform: translateY(-2px); box-shadow: 0 10px 28px rgba(0,0,0,.4); }
.lp-fp-item img { width: 100%; height: auto; display: block; }
.lp-video-wrap { position: relative; padding-bottom: 56.25%; height: 0; border-radius: 12px; overflow: hidden; border: 1px solid var(--lp-border); }
.lp-video-wrap iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* ── FORM GLASS CARD ─────────────────────────────────────────────────── */
.lp-form-wrap { padding: 28px 32px; }
.lp-form-wrap h2, .lp-form-wrap h3 {
  font-family: var(--lp-display) !important; font-size: 1.3rem !important;
  font-weight: 300 !important; font-style: italic !important;
  color: var(--lp-cream) !important; -webkit-text-fill-color: var(--lp-cream) !important;
  margin: 0 0 20px !important; background: none !important;
}
.lp-form-wrap .lpm-fallback-form, .lp-form-wrap form { display: flex !important; flex-direction: column !important; gap: 16px !important; }
.lp-form-wrap .lpm-form-row { display: grid !important; gap: 14px !important; }
.lp-form-wrap .lpm-form-row--half { grid-template-columns: 1fr 1fr !important; }
.lp-form-wrap .lpm-form-group { display: flex !important; flex-direction: column !important; gap: 7px !important; }
/* Labels */
.lp-form-wrap label, .lp-form-wrap .lpm-form-group label {
  font-size: .6rem !important; font-weight: 700 !important; color: var(--lp-muted) !important;
  -webkit-text-fill-color: var(--lp-muted) !important; text-transform: uppercase !important;
  letter-spacing: .13em !important; font-family: var(--lp-sans) !important; background: none !important;
}
/* Inputs */
.lp-wrap input[type="text"], .lp-wrap input[type="email"], .lp-wrap input[type="tel"],
.lp-wrap input[type="number"], .lp-wrap textarea,
.lp-form-wrap input[type="text"], .lp-form-wrap input[type="email"],
.lp-form-wrap input[type="tel"], .lp-form-wrap textarea {
  background: rgba(255,255,255,.038) !important; border: 1px solid rgba(255,255,255,.09) !important;
  border-radius: 9px !important; color: var(--lp-cream) !important;
  -webkit-text-fill-color: var(--lp-cream) !important; padding: 13px 15px !important;
  font-size: .86rem !important; font-family: var(--lp-sans) !important; outline: none !important;
  width: 100% !important; transition: border-color var(--lp-dur), box-shadow var(--lp-dur) !important;
  -webkit-appearance: none; appearance: none;
}
.lp-wrap input::placeholder, .lp-wrap textarea::placeholder,
.lp-form-wrap input::placeholder, .lp-form-wrap textarea::placeholder {
  color: rgba(107,98,89,.5) !important; -webkit-text-fill-color: rgba(107,98,89,.5) !important;
}
.lp-wrap input:focus, .lp-wrap textarea:focus, .lp-form-wrap input:focus, .lp-form-wrap textarea:focus {
  border-color: rgba(186,126,90,.48) !important; box-shadow: 0 0 0 3px rgba(186,126,90,.09) !important;
  background: rgba(255,255,255,.058) !important;
}
.lp-wrap textarea, .lp-form-wrap textarea { resize: vertical; min-height: 110px !important; }
/* Submit button — gold gradient, always */
.lp-wrap button[type="submit"], .lp-wrap input[type="submit"],
.lp-form-wrap button[type="submit"], .lp-form-wrap input[type="submit"],
.lp-wrap .lpm-fallback-form button, .lp-wrap .wpcf7-submit {
  background: linear-gradient(135deg, #ba7e5a, #f9c59c) !important;
  color: #0a0c10 !important; -webkit-text-fill-color: #0a0c10 !important;
  border: none !important; border-radius: 9px !important; padding: 15px 28px !important;
  font-size: .66rem !important; font-weight: 700 !important; letter-spacing: .18em !important;
  text-transform: uppercase !important; width: 100% !important; cursor: pointer !important;
  font-family: var(--lp-sans) !important;
  box-shadow: 0 4px 18px rgba(186,126,90,.26) !important;
  transition: opacity .22s, transform .22s !important; display: block !important;
}
.lp-wrap button[type="submit"]:hover, .lp-wrap input[type="submit"]:hover,
.lp-form-wrap button[type="submit"]:hover, .lp-wrap .wpcf7-submit:hover {
  opacity: .86 !important; transform: translateY(-1px) !important;
}

/* ── BADGES ──────────────────────────────────────────────────────────── */
.lp-badge {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 11px; background: rgba(16,20,26,.78); backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.09); border-radius: 100px;
  font-size: .58rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.8); white-space: nowrap;
}
.lp-badge--prem { background: rgba(186,126,90,.2); border-color: rgba(186,126,90,.38); color: var(--lp-gold-lt); }
.lp-badge--hot  { background: rgba(200,60,40,.2);  border-color: rgba(200,60,40,.38);  color: #ff9a8a; }
.lp-badge--excl { background: rgba(120,60,200,.2); border-color: rgba(120,60,200,.38); color: #c4a0f5; }
.lp-badge--status { border-color: rgba(255,255,255,.05); }

/* ── BUTTONS ─────────────────────────────────────────────────────────── */
.lp-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  padding: 11px 20px; font-family: var(--lp-sans);
  font-size: .64rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  text-decoration: none; border: none; border-radius: 7px; cursor: pointer;
  transition: all var(--lp-dur) var(--lp-ease); white-space: nowrap; line-height: 1;
}
.lp-btn--primary { background: var(--lp-grad); color: #0a0c10; box-shadow: 0 4px 16px rgba(186,126,90,.22); }
.lp-btn--primary:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(186,126,90,.38); color: #0a0c10; }
.lp-btn--wa { background: #25d366; color: #fff; }
.lp-btn--wa:hover { background: #1db954; transform: translateY(-2px); color: #fff; }
.lp-btn--ghost {
  background: rgba(255,255,255,.05); color: var(--lp-muted);
  border: 1px solid var(--lp-border);
}
.lp-btn--ghost:hover { border-color: var(--lp-border-g); color: var(--lp-gold-lt); background: rgba(186,126,90,.05); }
.lp-btn--full { width: 100%; }
.lp-btn--sm   { padding: 7px 14px; font-size: .6rem; }

/* ── SIDEBAR ─────────────────────────────────────────────────────────── */
.lp-sidebar__sticky { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 10px; }
/* Price card */
.lp-sb-price-card { padding: 22px; display: flex; flex-direction: column; gap: 10px; }
.lp-sb-price {
  font-family: var(--lp-display); font-size: clamp(1.4rem, 2vw, 1.9rem);
  font-weight: 300; font-style: italic; line-height: 1.1;
  background: linear-gradient(90deg,#ba7e5a 0%,#f9c59c 40%,#fff8ee 50%,#f9c59c 60%,#ba7e5a 100%);
  background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  animation: lpShimmer 4s linear infinite;
}
.lp-sb-price small { display:block; font-size:.6rem; -webkit-text-fill-color:var(--lp-muted); background:none; font-style:normal; letter-spacing:.1em; text-transform:uppercase; margin-bottom:3px; }
.lp-sb-ref { font-size:.62rem; color:var(--lp-muted); margin:0; text-transform:uppercase; letter-spacing:.1em; }
@keyframes lpShimmer { 0%{background-position:0% center} 100%{background-position:200% center} }
/* Agent mini */
.lp-sb-agent-card { padding: 14px; }
.lp-sb-agent { display:flex; align-items:center; gap:12px; margin-bottom:8px; }
.lp-sb-agent__photo { width:48px; height:48px; border-radius:50%; object-fit:cover; flex-shrink:0; border:1px solid rgba(186,126,90,.22); }
.lp-sb-agent__photo--init { width:48px; height:48px; border-radius:50%; flex-shrink:0; background:var(--lp-grad); display:flex; align-items:center; justify-content:center; }
.lp-sb-agent__info strong { display:block; font-family:var(--lp-display); font-size:.9rem; font-style:italic; font-weight:300; color:var(--lp-cream); }
.lp-sb-agent__info span   { display:block; font-size:.58rem; color:var(--lp-gold); text-transform:uppercase; letter-spacing:.1em; font-weight:700; margin-top:1px; }
.lp-sb-agent__email { font-size:.7rem; color:var(--lp-muted); transition:color var(--lp-dur); word-break:break-all; }
.lp-sb-agent__email:hover { color:var(--lp-gold-lt); }
/* Facts */
.lp-sb-facts { padding:18px; }
.lp-sb-facts__title { font-size:.58rem; text-transform:uppercase; letter-spacing:.13em; color:var(--lp-muted); font-weight:700; margin:0 0 12px; }
.lp-sb-fact { display:flex; align-items:center; justify-content:space-between; padding:8px 0; border-bottom:1px solid rgba(255,255,255,.035); gap:8px; }
.lp-sb-fact:last-child { border-bottom:none; }
.lp-sb-fact span  { font-size:.66rem; color:var(--lp-muted); text-transform:uppercase; letter-spacing:.07em; }
.lp-sb-fact strong{ font-size:.76rem; font-weight:600; color:var(--lp-cream); }
/* Actions */
.lp-sb-actions { padding:14px; display:flex; flex-direction:column; gap:7px; }
/* Share */
.lp-sb-share { display:flex; gap:6px; padding-top:3px; }
.lp-sb-share__btn {
  width:34px; height:34px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.04); border:1px solid var(--lp-border);
  color:var(--lp-muted); text-decoration:none; cursor:pointer;
  transition:all var(--lp-dur) var(--lp-ease);
}
.lp-sb-share__btn:hover { border-color:var(--lp-border-g); color:var(--lp-gold-lt); transform:translateY(-2px); }

/* ── CAMPAIGN BANNER ─────────────────────────────────────────────────── */
.lp-sb-banner { border-radius: 12px; overflow: hidden; }
.lp-sb-banner__link { display:block; border-radius:12px; border:1px solid var(--lp-border); overflow:hidden; transition:border-color var(--lp-dur); }
.lp-sb-banner__link:hover { border-color:var(--lp-border-g); }
.lp-sb-banner__img { width:100%; height:auto; display:block; border-radius:11px; transition:transform .4s var(--lp-ease); }
.lp-sb-banner__link:hover .lp-sb-banner__img { transform:scale(1.03); }

/* ── MOBILE STICKY CTA ───────────────────────────────────────────────── */
.lp-mcta {
  display: none;
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 990;
  background: rgba(10,12,16,.97); backdrop-filter: blur(20px);
  border-top: 1px solid var(--lp-border); padding: 10px 0; width: 100%;
}
.lp-mcta__inner {
  max-width: 1400px; margin: 0 auto;
  padding: 0 clamp(14px,4vw,36px);
  display: flex; align-items: center; gap: 8px; justify-content: space-between;
}
.lp-mcta__price {
  font-family: var(--lp-display); font-size: .95rem; font-style: italic; font-weight: 300;
  background: var(--lp-grad); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  flex-shrink: 0; white-space: nowrap;
}
.lp-mcta__btns { display: flex; gap: 7px; flex-wrap: nowrap; }
.lp-mcta-btn {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 10px 14px; font-size: .62rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase;
  border: none; border-radius: 6px; cursor: pointer; font-family: var(--lp-sans);
  text-decoration: none; white-space: nowrap; transition: all var(--lp-dur);
}
.lp-mcta-btn--call { background: rgba(255,255,255,.08); color: var(--lp-text); border: 1px solid var(--lp-border); }
.lp-mcta-btn--wa   { background: #25d366; color: #fff; }
.lp-mcta-btn--enq  { background: var(--lp-grad); color: #0a0c10; }

/* ── FLOATING WA ─────────────────────────────────────────────────────── */
.lp-float-wa {
  position: fixed; bottom: 84px; right: 20px; z-index: 980;
  width: 54px; height: 54px; background: #25d366; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 20px rgba(37,211,102,.36); transition: all var(--lp-dur) var(--lp-ease);
  border: none; cursor: pointer;
}
.lp-float-wa:hover { transform: scale(1.1) translateY(-4px); }
.lp-float-wa::before { content:''; position:absolute; inset:0; border-radius:50%; background:#25d366; animation:lpWaRipple 2.8s 2s infinite; }
@keyframes lpWaRipple { 70%{transform:scale(1.6);opacity:0} 100%{opacity:0} }

/* ── WA MODAL ────────────────────────────────────────────────────────── */
.lp-wa-modal { position:fixed; inset:0; z-index:99990; display:flex; align-items:center; justify-content:center; padding:16px; }
.lp-wa-modal[hidden] { display:none; }
.lp-wa-modal__backdrop { position:absolute; inset:0; background:rgba(4,5,8,.9); backdrop-filter:blur(12px); }
.lp-wa-modal__panel { position:relative; z-index:1; padding:28px; width:100%; max-width:400px; border-radius:18px !important; }
.lp-wa-modal__close { position:absolute; top:12px; right:12px; width:30px; height:30px; background:rgba(255,255,255,.06); border:1px solid var(--lp-border); border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all var(--lp-dur); color:var(--lp-muted); }
.lp-wa-modal__close:hover { transform:rotate(90deg); color:var(--lp-cream); }
.lp-wa-modal__header { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.lp-wa-modal__icon { width:44px; height:44px; background:rgba(37,211,102,.1); border-radius:10px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.lp-wa-modal__header h3 { font-family:var(--lp-display); font-size:1rem; font-style:italic; font-weight:300; color:var(--lp-cream); margin:0 0 2px; }
.lp-wa-modal__header p { font-size:.64rem; color:var(--lp-muted); margin:0; text-transform:uppercase; letter-spacing:.09em; }
.lp-wa-modal__fields { display:flex; flex-direction:column; gap:12px; margin-bottom:16px; }
.lp-field { display:flex; flex-direction:column; gap:5px; }
.lp-field label { font-size:.58rem; font-weight:700; color:var(--lp-muted); text-transform:uppercase; letter-spacing:.12em; }
.lp-field input,.lp-field textarea {
  background:rgba(255,255,255,.04) !important; border:1px solid rgba(255,255,255,.09) !important;
  border-radius:8px !important; color:var(--lp-cream) !important; -webkit-text-fill-color:var(--lp-cream) !important;
  padding:10px 13px !important; font-size:.86rem !important; outline:none !important;
  width:100% !important; resize:none !important; font-family:var(--lp-sans) !important;
}
.lp-field input:focus,.lp-field textarea:focus { border-color:rgba(37,211,102,.42) !important; }
.lp-field textarea { min-height:78px !important; }
body.lp-modal-open { overflow:hidden; }

/* ── LIGHTBOX ────────────────────────────────────────────────────────── */
.lp-lb { position:fixed; inset:0; z-index:999999; background:rgba(0,0,0,.97); display:flex; align-items:center; justify-content:center; }
.lp-lb[hidden] { display:none; }
.lp-lb__bd { position:absolute; inset:0; }
.lp-lb__img { max-width:92vw; max-height:90vh; object-fit:contain; border-radius:3px; z-index:1; position:relative; }
.lp-lb__close,.lp-lb__prev,.lp-lb__next { position:absolute; z-index:2; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all var(--lp-dur); }
.lp-lb__close { top:18px; right:18px; width:42px; height:42px; }
.lp-lb__close:hover { background:rgba(255,255,255,.14); transform:rotate(90deg); }
.lp-lb__prev,.lp-lb__next { top:50%; transform:translateY(-50%); width:50px; height:50px; }
.lp-lb__prev { left:14px; } .lp-lb__next { right:14px; }
.lp-lb__prev:hover,.lp-lb__next:hover { background:rgba(255,255,255,.14); }

/* ── LANG TOGGLE ─────────────────────────────────────────────────────── */
.lpm-lang-toggle { display:inline-flex; border:1px solid var(--lp-border); border-radius:100px; overflow:hidden; }
.lpm-lang-btn { padding:5px 14px; font-size:.62rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; background:transparent; color:var(--lp-muted); border:none; cursor:pointer; transition:all var(--lp-dur); font-family:var(--lp-sans); }
.lpm-lang-btn.active,.lpm-lang-btn:hover { background:var(--lp-grad); color:#0a0c10; }

/* ════════════════════════════════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════════════════════════════════ */

/* Tablet */
@media (max-width:1100px) {
  .lp-grid { grid-template-columns:1fr; }
  .lp-sidebar { order:-1; }
  .lp-sidebar__sticky { position:static; display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .lp-sb-price-card { grid-column:1/-1; }
  .lp-specs-card { grid-template-columns:repeat(3,1fr); }
  .lp-agent-main-section { display:block !important; }
  .lp-mcta { display:block; }
  .lp-float-wa { bottom:74px; }
}

/* Mobile landscape */
@media (max-width:760px) {
  /* Hero: reduce height, hide thumb strip, stack glass overlay */
  .lp-hero { height: clamp(300px, 55vw, 460px); }
  .lp-hero__thumbs { display: none; }
  .lp-hero__glass { padding-bottom: 10px; }
  .lp-hero__glass-inner { flex-direction: column; gap: 8px; align-items: flex-start; }
  .lp-hero__glass-right {
    align-self: stretch; text-align: left; max-width: none; min-width: auto;
    margin-bottom: 0;
  }
  .lp-hero__specs { justify-content: flex-start; }
  /* Sidebar stack */
  .lp-sidebar__sticky { grid-template-columns: 1fr; }
  /* Grid */
  .lp-specs-card { grid-template-columns: repeat(2,1fr); }
  .lp-cta-row__inner { flex-direction: column; align-items: flex-start; }
  .lp-form-wrap .lpm-form-row--half { grid-template-columns: 1fr !important; }
  .lp-form-wrap { padding: 20px 18px; }
  .lp-grid { padding: 20px 16px 60px; }
}

/* Mobile portrait */
@media (max-width:480px) {
  .lp-hero { height: clamp(280px, 58vw, 380px); }
  .lp-hero__title { font-size: 1.55rem; }
  .lp-hero__glass-right { padding: 12px 14px; }
  .lp-hero__price strong { font-size: 1.15rem; }
  .lp-specs-card { grid-template-columns: repeat(2,1fr); }
  .lp-grid { padding: 16px 14px 70px; gap: 16px; }
  .lp-mcta__price { display: none; }
}

/* ── ICON COLOR OVERRIDES (currentColor inheritance) ────────────────── */
/* Hero location & spec icons — light/muted on dark bg */
.lp-hero__loc  { color: rgba(255,255,255,.5); }
.lp-hero__loc svg { color: var(--lp-gold-lt); opacity: .75; }

/* Lightbox controls — white on near-black */
.lp-lb__close, .lp-lb__prev, .lp-lb__next { color: rgba(255,255,255,.85); }

/* Hero arrows */
.lp-hero__arrow { color: rgba(255,255,255,.88); }
.lp-hero__arrow:hover { color: #fff; }

/* Breadcrumb separator */
.lp-breadcrumb svg { color: var(--lp-muted); }

/* CTA row buttons inherit their button color properly */
.lp-btn--primary svg { color: #0a0c10; }
.lp-btn--wa      svg { color: #fff; }
.lp-btn--ghost   svg { color: var(--lp-gold); }

/* WA modal close/header icons */
.lp-wa-modal__close svg { color: var(--lp-muted); }
.lp-wa-modal__header svg { /* WA green icon — kept as-is via fill=#25d366 attribute */ }
.lp-wa-modal__fields svg { color: var(--lp-gold); }

/* Agent block */
.lp-agent-block__photo--init svg { color: #0a0c10; }
.lp-sb-agent__photo--init    svg { color: #0a0c10; }

/* Floating WA button */
.lp-float-wa { color: #fff; }

/* Mobile CTA buttons */
.lp-mcta-btn--call svg { color: var(--lp-gold-lt); }
.lp-mcta-btn--wa   svg { color: #fff; }
.lp-mcta-btn--enq  svg { color: #0a0c10; }

/* ══════════════════════════════════════════════════════════════════════
   PROPERTY CARD — used in shortcodes & archive
   ══════════════════════════════════════════════════════════════════════ */

/* Grid wrapper produced by shortcode */
.lpm-properties-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 24px;
}
.lpm-properties-grid.columns-1 { grid-template-columns: 1fr; }
.lpm-properties-grid.columns-2 { grid-template-columns: repeat(2,1fr); }
.lpm-properties-grid.columns-3 { grid-template-columns: repeat(3,1fr); }
.lpm-properties-grid.columns-4 { grid-template-columns: repeat(4,1fr); }

/* Base card */
.lpm-property-card {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,.08);
  transition: transform .28s ease, box-shadow .28s ease;
  display: flex;
  flex-direction: column;
  font-family: 'Century Gothic','Futura','Trebuchet MS',sans-serif;
  position: relative;
}
.lpm-property-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 36px rgba(0,0,0,.14);
}
/* Featured card accent */
.lpm-property-card--featured {
  border: 2px solid #ba7e5a;
}

/* Image */
.lpm-property-card__img-wrap { display:block; position:relative; overflow:hidden; height:220px; background:#1e2229; }
.lpm-property-card__img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .45s ease; }
.lpm-property-card:hover .lpm-property-card__img { transform:scale(1.05); }

/* Badges overlay */
.lpm-property-card__badges {
  position: absolute; top:12px; left:12px;
  display:flex; flex-wrap:wrap; gap:5px; z-index:2;
}
.lpm-property-card__badges .lpm-badge,
.lpm-badge {
  display: inline-flex; align-items: center;
  padding: 4px 11px;
  font-size: .65rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  border-radius: 100px; white-space: nowrap;
}
.lpm-badge--featured { background:linear-gradient(135deg,#ba7e5a,#f9c59c); color:#1a1d21; }
.lpm-badge--hot      { background:linear-gradient(135deg,#e84040,#ff7043); color:#fff; }
.lpm-badge--exclusive{ background:linear-gradient(135deg,#6d28d9,#a78bfa); color:#fff; }
.lpm-badge--new      { background:linear-gradient(135deg,#0369a1,#38bdf8); color:#fff; }

/* Status badge — bottom right of image */
.lpm-property-card__status-badge {
  position: absolute; bottom:10px; right:10px; z-index:2;
  background: rgba(10,12,16,.75); backdrop-filter:blur(6px);
  color: #f9c59c;
  font-size: .62rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  padding: 4px 11px; border-radius: 100px;
  border: 1px solid rgba(249,197,156,.25);
}

/* Hover overlay */
.lpm-property-card__overlay {
  position: absolute; inset:0; z-index:1;
  background: rgba(10,12,16,.45);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; transition: opacity .28s ease;
}
.lpm-property-card:hover .lpm-property-card__overlay { opacity:1; }
.lpm-property-card__overlay-cta {
  background: linear-gradient(135deg,#ba7e5a,#f9c59c);
  color: #1a1d21; font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  padding: 10px 22px; border-radius: 6px;
  transform: translateY(6px); transition: transform .28s ease;
}
.lpm-property-card:hover .lpm-property-card__overlay-cta { transform: translateY(0); }

/* Card body */
.lpm-property-card__body {
  padding: 18px 18px 16px;
  display: flex; flex-direction: column; gap: 8px; flex:1;
}
.lpm-property-card__meta-top {
  display: flex; align-items: center; justify-content: space-between;
  gap: 6px; flex-wrap: wrap;
}
.lpm-property-card__type {
  font-size: .64rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em;
  color: #ba7e5a; background: rgba(186,126,90,.09);
  padding: 3px 9px; border-radius: 100px;
}
.lpm-property-card__community {
  font-size: .68rem; color: #6b7280;
}
.lpm-property-card__title {
  font-size: .95rem; font-weight: 700; color: #1d2327;
  margin: 0; line-height: 1.35;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.lpm-property-card__title a { color: inherit; text-decoration: none; transition: color .18s; }
.lpm-property-card__title a:hover { color: #ba7e5a; }
.lpm-property-card__address {
  font-size: .72rem; color: #6b7280; margin: 0;
  display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;
}
.lpm-property-card__excerpt {
  font-size: .78rem; color: #6b7280; margin: 0; line-height: 1.55;
}

/* Stats row */
.lpm-property-card__stats {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
  padding: 10px 0; border-top: 1px solid #f3f4f6; border-bottom: 1px solid #f3f4f6;
  margin-top: 4px;
}
.lpm-property-card__stat {
  display: flex; align-items: center; gap: 5px;
  font-size: .75rem; color: #374151; font-weight: 600;
}
.lpm-stat-icon { font-size: .85rem; }

/* Footer */
.lpm-property-card__footer {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; margin-top: auto; padding-top: 10px;
}
.lpm-property-card__price { display:flex; flex-direction:column; gap:1px; }
.lpm-property-card__price-prefix { font-size:.62rem; color:#9ca3af; text-transform:uppercase; letter-spacing:.06em; }
.lpm-property-card__price-amount {
  font-size: 1rem; font-weight: 800; color: #1d2327;
  background: linear-gradient(135deg,#ba7e5a,#f9c59c);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.lpm-property-card__price-on-request { font-size:.78rem; color:#9ca3af; font-style:italic; }

/* CTA button on card — lpm-btn--gold lpm-btn--sm */
.lpm-btn--gold {
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg,#ba7e5a,#f9c59c);
  color: #1a1d21; border:none; border-radius:6px; cursor:pointer;
  font-family:'Century Gothic','Futura',sans-serif; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase; text-decoration:none;
  transition: opacity .2s, transform .2s;
}
.lpm-btn--gold:hover { opacity:.88; transform:translateY(-1px); color:#1a1d21; }
.lpm-btn--sm { padding:8px 16px; font-size:.66rem; }

/* Shortcode container */
.lpm-shortcode-wrap { width:100%; }
.lpm-shortcode-wrap .lpm-no-results {
  padding: 40px 20px; text-align:center; color:#6b7280; font-size:.9rem;
  background: #f9fafb; border-radius:8px; border:1px dashed #e2e4e6;
}

/* Load More button */
.lpm-load-more-wrap { text-align:center; margin-top:28px; }
.lpm-load-more {
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; color: #ba7e5a;
  border: 2px solid #ba7e5a; border-radius: 6px;
  padding: 11px 28px; font-size:.78rem; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase; cursor:pointer;
  transition: background .2s, color .2s;
}
.lpm-load-more:hover { background:#ba7e5a; color:#fff; }

/* Archive hero / filter bar basics */
.lpm-archive-hero {
  background: linear-gradient(135deg,#1a1d21 0%,#252a32 100%);
  padding: clamp(40px,6vw,80px) clamp(20px,5vw,60px);
  text-align: center;
}
.lpm-archive-hero__title {
  font-family:'Cormorant Garamond','Palatino Linotype',serif;
  font-size: clamp(1.8rem,4vw,3rem); font-weight:300; font-style:italic; color:#fff;
  margin: 0 0 10px;
}
.lpm-archive-hero__sub { font-size:.85rem; color:rgba(255,255,255,.5); }

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width:900px) {
  .lpm-properties-grid.columns-3,
  .lpm-properties-grid.columns-4 { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:600px) {
  .lpm-properties-grid,
  .lpm-properties-grid.columns-2,
  .lpm-properties-grid.columns-3,
  .lpm-properties-grid.columns-4 { grid-template-columns:1fr; }
  .lpm-property-card__img-wrap { height:190px; }
}

/* ── CATEGORY & SUB-CATEGORY BADGES ─────────────────────────────────── */
.lp-badge--cat {
  background: rgba(10,12,16,.75);
  border: 1px solid rgba(186,126,90,.4);
  color: #f9c59c;
  font-weight: 700;
}
.lp-badge--subcat {
  background: rgba(186,126,90,.18);
  border: 1px solid rgba(186,126,90,.35);
  color: var(--lp-cream,#ede5d8);
  font-weight: 600;
}

/* Sub-category heading in shortcode output */
.lpm-subcat-heading {
  font-family: 'Cormorant Garamond','Palatino Linotype',serif;
  font-size: 1.4rem; font-weight: 300; font-style: italic;
  color: #1d2327; margin: 0 0 16px;
}

/* ══════════════════════════════════════════════════════════════════════
   ARCHIVE & SHORTCODE LAYOUT — container, grid, toolbar, pagination
   ══════════════════════════════════════════════════════════════════════ */

/* Container */
.lpm-container {
  max-width: 1380px;
  margin: 0 auto;
  padding: 0 clamp(16px, 4vw, 60px);
  width: 100%;
}

/* Archive wrapper */
.lpm-archive-wrap {
  background: #f8f9fa;
  min-height: 60vh;
}

/* Archive Hero */
.lpm-archive-hero {
  background: linear-gradient(135deg, #1a1d21 0%, #252a32 100%);
  padding: clamp(32px, 5vw, 72px) 0;
}
.lpm-archive-hero .lpm-container {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}
.lpm-archive-hero__title {
  font-family: 'Cormorant Garamond', 'Palatino Linotype', serif;
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 300;
  font-style: italic;
  color: #fff;
  margin: 0 0 8px;
  line-height: 1.15;
}
.lpm-archive-hero__sub {
  font-size: .82rem;
  color: rgba(255,255,255,.5);
  letter-spacing: .06em;
}
.lpm-archive-hero__desc {
  font-size: .85rem;
  color: rgba(255,255,255,.45);
  margin-top: 8px;
  max-width: 560px;
  line-height: 1.65;
}
.lpm-archive-hero__breadcrumb {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: .68rem;
  color: rgba(255,255,255,.4);
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-bottom: 10px;
}
.lpm-archive-hero__breadcrumb a {
  color: rgba(255,255,255,.4);
  text-decoration: none;
  transition: color .18s;
}
.lpm-archive-hero__breadcrumb a:hover { color: #f9c59c; }

/* Archive toolbar */
.lpm-archive-body { padding: clamp(20px, 3vw, 48px) 0; }
.lpm-archive-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e2e4e6;
}
.lpm-archive-toolbar__count {
  font-size: .82rem;
  color: #6b7280;
  font-weight: 600;
}
.lpm-archive-toolbar__right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

/* Layout switcher */
.lpm-layout-switcher {
  display: flex;
  gap: 4px;
}
.lpm-layout-btn {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid #e2e4e6;
  border-radius: 6px;
  cursor: pointer;
  font-size: 1rem;
  color: #6b7280;
  transition: all .15s;
  padding: 0;
}
.lpm-layout-btn:hover,
.lpm-layout-btn.active {
  background: #ba7e5a;
  border-color: #ba7e5a;
  color: #fff;
}

/* Sort select */
.lpm-sort-select {
  padding: 7px 32px 7px 12px;
  border: 1px solid #e2e4e6;
  border-radius: 6px;
  font-size: .82rem;
  color: #374151;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236b7280'/%3E%3C/svg%3E") no-repeat right 10px center;
  appearance: none;
  cursor: pointer;
  transition: border-color .15s;
}
.lpm-sort-select:focus { border-color: #ba7e5a; outline: none; }

/* ── PROPERTY GRID ────────────────────────────────────────────────────── */
.lpm-grid {
  display: grid;
  gap: 22px;
}
.lpm-grid--cols-1 { grid-template-columns: 1fr; }
.lpm-grid--cols-2 { grid-template-columns: repeat(2, 1fr); }
.lpm-grid--cols-3 { grid-template-columns: repeat(3, 1fr); }
.lpm-grid--cols-4 { grid-template-columns: repeat(4, 1fr); }
/* Default auto-fill for unspecified columns */
.lpm-grid:not([class*="--cols-"]) { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }

/* List layout */
.lpm-grid--list .lpm-property-card {
  flex-direction: row;
}
.lpm-grid--list .lpm-property-card__img-wrap {
  width: 280px;
  flex-shrink: 0;
  height: 100%;
  min-height: 200px;
}
.lpm-grid--list .lpm-property-card__body {
  flex: 1;
}

/* No results */
.lpm-no-results {
  grid-column: 1 / -1;
  padding: 52px 20px;
  text-align: center;
  color: #6b7280;
  font-size: .9rem;
  background: #fff;
  border-radius: 10px;
  border: 1px dashed #e2e4e6;
}
.lpm-no-results a { color: #ba7e5a; text-decoration: none; font-weight: 600; }
.lpm-no-results a:hover { text-decoration: underline; }

/* ── PAGINATION ───────────────────────────────────────────────────────── */
.lpm-pagination {
  margin-top: 36px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
}
.lpm-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #e2e4e6;
  border-radius: 8px;
  text-decoration: none;
  font-size: .82rem;
  font-weight: 600;
  color: #374151;
  background: #fff;
  transition: all .18s;
}
.lpm-pagination .page-numbers:hover { border-color: #ba7e5a; color: #ba7e5a; }
.lpm-pagination .page-numbers.current { background: #ba7e5a; border-color: #ba7e5a; color: #fff; }
.lpm-pagination .page-numbers.dots { border: none; background: none; }

/* ── FILTER BAR ───────────────────────────────────────────────────────── */
.lpm-filter-bar {
  background: #fff;
  border: 1px solid #e2e4e6;
  border-radius: 10px;
  margin-bottom: 22px;
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
  overflow: hidden;
}
.lpm-filter-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: .82rem;
  font-weight: 700;
  color: #374151;
  text-align: left;
  transition: background .15s;
}
.lpm-filter-toggle:hover { background: #f8f9fa; }
.lpm-filter-toggle__icon { font-size: 1rem; }
.lpm-filter-active-dot {
  width: 8px;
  height: 8px;
  background: #ba7e5a;
  border-radius: 50%;
  display: inline-block;
  margin-left: 2px;
}
.lpm-filter-fields {
  display: none;
  border-top: 1px solid #f0f1f3;
}
.lpm-filter-fields.open { display: block; }
.lpm-filter-fields__inner {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 16px 18px;
  align-items: flex-end;
}
.lpm-filter-field {
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1;
  min-width: 150px;
}
.lpm-filter-field__input-wrap {
  position: relative;
}
.lpm-filter-field__icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: .85rem;
  pointer-events: none;
}
.lpm-filter-input,
.lpm-filter-select {
  width: 100%;
  padding: 9px 12px;
  border: 1px solid #e2e4e6;
  border-radius: 7px;
  font-size: .82rem;
  color: #374151;
  background: #fff;
  transition: border-color .15s, box-shadow .15s;
  -webkit-appearance: none;
  appearance: none;
}
.lpm-filter-input { padding-left: 32px; }
.lpm-filter-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236b7280'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  padding-right: 28px;
  cursor: pointer;
}
.lpm-filter-input:focus,
.lpm-filter-select:focus {
  border-color: #ba7e5a;
  box-shadow: 0 0 0 3px rgba(186,126,90,.1);
  outline: none;
}
.lpm-filter-btn,
.lpm-filter-reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 9px 20px;
  border-radius: 7px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  cursor: pointer;
  transition: all .18s;
  white-space: nowrap;
}
.lpm-filter-btn {
  background: linear-gradient(135deg, #ba7e5a, #f9c59c);
  color: #1a1d21;
  border: none;
}
.lpm-filter-btn:hover { opacity: .88; transform: translateY(-1px); }
.lpm-filter-reset {
  background: #fff;
  color: #6b7280;
  border: 1px solid #e2e4e6;
}
.lpm-filter-reset:hover { border-color: #ba7e5a; color: #ba7e5a; }

/* sr-only (accessibility) */
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* ── RESPONSIVE ───────────────────────────────────────────────────────── */
@media (max-width: 1000px) {
  .lpm-grid--cols-4 { grid-template-columns: repeat(2, 1fr); }
  .lpm-grid--cols-3 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .lpm-grid--cols-2,
  .lpm-grid--cols-3,
  .lpm-grid--cols-4 { grid-template-columns: 1fr; }
  .lpm-grid--list .lpm-property-card { flex-direction: column; }
  .lpm-grid--list .lpm-property-card__img-wrap { width: 100%; height: 200px; }
  .lpm-archive-toolbar { flex-direction: column; align-items: flex-start; }
  .lpm-filter-fields__inner { flex-direction: column; }
  .lpm-filter-field { min-width: 100%; }
}

/* ══════════════════════════════════════════════════════════════════════
   THEME MODES — Light (default) / Dark toggle (v2.0.2)
   ══════════════════════════════════════════════════════════════════════ */
.lp-wrap {
  transition: background-color .28s ease, color .28s ease;
}

/* ── LIGHT MODE — applied when .lpm-light is on .lp-wrap ── */
.lp-wrap.lpm-light {
  --lp-ink:      #0a0c10;
  --lp-ink2:     #10141a;
  --lp-ink3:     #181d28;
  --lp-ink4:     #1f2535;
  --lp-gold-lt:  #f9c59c;
  --lp-grad:     var(--lpm-gold-grad, linear-gradient(135deg,#ba7e5a,#f9c59c));
  --lp-cream:    #ede5d8;
  --lp-text:     #c8bfb4;
  --lp-muted:    #6b6259;
  --lp-border:   rgba(255,255,255,.07);
  --lp-border-g: rgba(186,126,90,.28);
  --lp-glass:    rgba(16,20,26,.78);
  --lp-shadow:   0 8px 32px rgba(0,0,0,.5), 0 1px 0 rgba(255,255,255,.055) inset;
  background: #0a0c10;
  color: #c8bfb4;
}

/* Dark mode (default) specific overrides */
.lp-wrap:not(.lpm-light) .lp-hero { background: #06080c; }
.lp-wrap:not(.lpm-light) .lp-glass-card {
  background: rgba(16,20,26,.78);
  border-color: rgba(255,255,255,.07);
}
.lp-wrap:not(.lpm-light) .lp-spec-item__icon { background: rgba(186,126,90,.1); }
.lp-wrap:not(.lpm-light) .lp-hl { background: #181d28; }
.lp-wrap:not(.lpm-light) .lp-hl:hover { background: #1f2535; }
.lp-wrap:not(.lpm-light) .lp-amenity { background: rgba(16,20,26,.82); border-color: rgba(255,255,255,.07); }
.lp-wrap:not(.lpm-light) .lp-sb-facts { background: rgba(16,20,26,.78); }
.lp-wrap:not(.lpm-light) .lp-sb-price-card { background: rgba(16,20,26,.78); }
.lp-wrap:not(.lpm-light) .lp-sb-agent-card { background: rgba(16,20,26,.78); }
.lp-wrap:not(.lpm-light) .lp-sb-actions { background: rgba(16,20,16,.78); }
.lp-wrap:not(.lpm-light) .lp-sb-box { background: rgba(16,20,26,.78); border-color: rgba(255,255,255,.07); }
.lp-wrap:not(.lpm-light) .lp-section__body { color: rgba(200,191,180,.68); }
.lp-wrap:not(.lpm-light) .lp-desc-body { color: rgba(200,191,180,.7); }
.lp-wrap:not(.lpm-light) .lp-mcta { background: rgba(10,12,16,.97); border-top-color: rgba(255,255,255,.07); }
.lp-wrap:not(.lpm-light) .lp-nav { background: rgba(10,12,16,.95); }
.lp-wrap:not(.lpm-light) .lp-cta-row { border-bottom-color: rgba(255,255,255,.07); }
.lp-wrap:not(.lpm-light) .lp-section__h { color: #ede5d8; }
.lp-wrap:not(.lpm-light) .lp-hero__title { color: #fff; }

/* ── LIGHT MODE surfaces — only when .lpm-light class present ── */
.lp-wrap.lpm-light .lp-glass-card {
  background: #ffffff;
  border: 1px solid #e5e7ea;
  box-shadow: 0 2px 16px rgba(0,0,0,.07);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.lp-wrap.lpm-light .lp-spec-item::after { background: rgba(0,0,0,.06); }
.lp-wrap.lpm-light .lp-spec-item__icon { background: #fff5ef; }
.lp-wrap.lpm-light .lp-spec-item__val { color: #1d2327; }
.lp-wrap.lpm-light .lp-spec-item__lbl { color: #6b7280; }
.lp-wrap.lpm-light .lp-hl { background: #f8f9fa; }
.lp-wrap.lpm-light .lp-hl:hover { background: #f0f1f3; }
.lp-wrap.lpm-light .lp-hl strong { color: #1d2327; }
.lp-wrap.lpm-light .lp-hl span { color: #6b7280; }
.lp-wrap.lpm-light .lp-amenity { background: #f8f9fa; border-color: #e5e7ea; color: #374151; }
.lp-wrap.lpm-light .lp-amenity:hover { background: #fff5ef; border-color: rgba(186,126,90,.4); }
.lp-wrap.lpm-light .lp-section__h { color: #1d2327; }
.lp-wrap.lpm-light .lp-section__body { color: #4b5563; }
.lp-wrap.lpm-light .lp-desc-body { color: #374151; }
.lp-wrap.lpm-light .lp-desc-body h2,
.lp-wrap.lpm-light .lp-desc-body h3 { color: #1d2327; }
.lp-wrap.lpm-light .lp-desc-body { color: #374151; }
.lp-wrap.lpm-light .lp-desc-fade { background: linear-gradient(to bottom, transparent, #ffffff); }
.lp-wrap.lpm-light .lp-breadcrumb { color: #6b7280; }
.lp-wrap.lpm-light .lp-breadcrumb a { color: #6b7280; }
.lp-wrap.lpm-light .lp-pay-text { color: #374151; }
.lp-wrap.lpm-light .lp-pay-step__lbl { color: #6b7280; }
.lp-wrap.lpm-light .lp-sb-fact span { color: #6b7280; }
.lp-wrap.lpm-light .lp-sb-fact strong { color: #1d2327; }
.lp-wrap.lpm-light .lp-sb-facts__title { color: #9ca3af; }
.lp-wrap.lpm-light .lp-sb-agent__info strong { color: #1d2327; }
.lp-wrap.lpm-light .lp-sb-agent__email { color: #6b7280; }
.lp-wrap.lpm-light .lp-sb-ref { color: #6b7280; }
.lp-wrap.lpm-light .lp-btn--ghost { background: #f8f9fa; color: #374151; border-color: #e2e4e6; }
.lp-wrap.lpm-light .lp-btn--ghost:hover { background: #fff5ef; border-color: rgba(186,126,90,.4); color: #ba7e5a; }
.lp-wrap.lpm-light .lp-cta-row { background: #fff; border-bottom: 1px solid #e5e7ea; }
.lp-wrap.lpm-light .lp-nav { background: rgba(255,255,255,.96); border-bottom: 1px solid #e5e7ea; }
.lp-wrap.lpm-light .lp-mcta { background: rgba(255,255,255,.97); border-top: 1px solid #e5e7ea; }
.lp-wrap.lpm-light .lp-mcta__price { -webkit-text-fill-color: transparent; }
.lp-wrap.lpm-light .lp-nav__back { color: #6b7280; border-color: #e2e4e6; }
.lp-wrap.lpm-light .lp-grid { background: #f8f9fa; }
.lp-wrap.lpm-light .lp-read-more { color: #6b7280; }

/* Light mode: inquiry form */
.lp-wrap.lpm-light .lp-form-wrap h2,
.lp-wrap.lpm-light .lp-form-wrap h3 {
  color: #1d2327 !important;
  -webkit-text-fill-color: #1d2327 !important;
}
.lp-wrap.lpm-light .lp-form-wrap label {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
}
.lp-wrap.lpm-light .lp-form-wrap input,
.lp-wrap.lpm-light .lp-form-wrap textarea {
  background: #f8f9fa !important;
  border-color: #e2e4e6 !important;
  color: #1d2327 !important;
  -webkit-text-fill-color: #1d2327 !important;
}

/* Theme toggle button */
.lp-theme-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: .64rem;
  padding: 7px 14px;
}
.lp-theme-toggle svg { flex-shrink: 0; }

/* ══════════════════════════════════════════════════════════════════════
   PHONE REVEAL BUTTON
   ══════════════════════════════════════════════════════════════════════ */
.lp-phone-reveal {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.lp-phone-reveal__label {
  font-size: .72rem;
  letter-spacing: .06em;
  font-weight: 600;
}
.lp-phone-reveal[data-revealed="1"] .lp-phone-reveal__label {
  color: var(--lp-gold-lt, #f9c59c);
  font-family: monospace;
  letter-spacing: .08em;
}

/* ══════════════════════════════════════════════════════════════════════
   PRICE COMPARISON BLOCK (v2.0.4 — bedroom + type matched)
   ══════════════════════════════════════════════════════════════════════ */
.lp-price-compare {
  padding: 20px 22px;
}
.lp-price-compare__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 16px;
}
.lp-price-compare__title {
  display: flex;
  align-items: center;
  gap: 7px;
  font-family: var(--lp-display, 'Cormorant Garamond', serif);
  font-size: 1rem;
  font-weight: 300;
  font-style: italic;
  color: var(--lp-cream, #ede5d8);
  margin: 0;
}
.lp-price-compare__unit {
  font-size: .6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--lp-gold-lt, #f9c59c);
  background: rgba(186,126,90,.15);
  padding: 3px 9px;
  border-radius: 100px;
  border: 1px solid rgba(186,126,90,.3);
  font-style: normal;
  font-family: var(--lp-sans);
}
.lp-price-compare__grid {
  display: grid;
  grid-template-columns: 1fr 48px 1fr;
  gap: 10px;
  align-items: center;
  margin-bottom: 14px;
}
.lp-price-compare__area {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 12px;
  background: rgba(255,255,255,.04);
  border-radius: 8px;
  border: 1px solid var(--lp-border, rgba(255,255,255,.07));
}
.lp-price-compare__area--current {
  border-color: rgba(186,126,90,.3);
  background: rgba(186,126,90,.06);
}
.lp-price-compare__area-label {
  font-size: .56rem;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--lp-muted, #6b6259);
  font-weight: 700;
}
.lp-price-compare__area-name {
  font-size: .82rem;
  font-weight: 700;
  color: var(--lp-cream, #ede5d8);
  line-height: 1.25;
}
.lp-price-compare__price {
  font-family: var(--lp-display, serif);
  font-size: .95rem;
  font-weight: 300;
  font-style: italic;
  background: linear-gradient(135deg, #ba7e5a, #f9c59c);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.lp-price-compare__ppsf {
  font-size: .6rem;
  color: var(--lp-muted, #6b6259);
  letter-spacing: .04em;
}
.lp-price-compare__vs {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}
.lp-price-compare__arrow {
  display: block;
}
.lp-price-compare__arrow--up   { color: #1a9e3f; }
.lp-price-compare__arrow--down { color: #d63638; }
.lp-price-compare__pct {
  font-size: .72rem;
  font-weight: 800;
  line-height: 1;
}
.lp-price-compare__pct.lp-price-compare__arrow--up   { color: #1a9e3f; }
.lp-price-compare__pct.lp-price-compare__arrow--down { color: #d63638; }
.lp-price-compare__dir {
  font-size: .56rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--lp-muted, #6b6259);
}
/* Bar rows */
.lp-price-compare__bar-wrap { display:flex; flex-direction:column; gap:7px; margin-bottom:12px; }
.lp-price-compare__bar-row { display:grid; grid-template-columns:68px 1fr; align-items:center; gap:8px; }
.lp-price-compare__bar-lbl { font-size:.58rem; color:var(--lp-muted,#6b6259); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.lp-price-compare__bar { height:6px; background:rgba(255,255,255,.07); border-radius:100px; overflow:hidden; }
.lp-price-compare__bar-fill { height:100%; border-radius:100px; transition:width .65s ease; }
.lp-price-compare__bar-fill--a { background:linear-gradient(135deg,#ba7e5a,#f9c59c); }
.lp-price-compare__bar-fill--b { background:rgba(255,255,255,.18); }
.lp-price-compare__note { font-size:.62rem; color:var(--lp-muted,#6b6259); margin:0; font-style:italic; }

/* ══════════════════════════════════════════════════════════════════════
   PRINT STYLES — Clean A4 layout, removes UI chrome
   ══════════════════════════════════════════════════════════════════════ */
@media print {
  /* ── Reset to clean white paper ── */
  * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }

  /* Hide WP admin bar and theme navigation */
  #wpadminbar,
  .site-header, header.site-header, .main-navigation,
  .elementor-location-header,
  body > *:not(.lp-wrap):not(#page):not(#content):not(.site):not(main) { display: none !important; }

  /* Force white background everywhere */
  html, body { background: #fff !important; margin: 0 !important; padding: 0 !important; }

  .lp-wrap {
    display: block !important;
    background: #fff !important;
    color: #1a1d21 !important;
    --lp-ink:    #ffffff;
    --lp-ink2:   #f8f9fa;
    --lp-ink3:   #f0f1f3;
    --lp-cream:  #1d2327;
    --lp-text:   #374151;
    --lp-muted:  #6b7280;
    --lp-border: rgba(0,0,0,.1);
    --lp-glass:  #ffffff;
  }

  /* Hide all UI chrome */
  .lp-mcta,
  .lp-float-wa,
  .lp-wa-modal,
  .lp-lb,
  .lp-hero__arrow,
  .lp-hero__thumbs,
  .lp-hero__counter,
  .lp-cta-row__btns,
  .lp-sb-actions,
  .lp-sb-share,
  .lp-theme-toggle,
  .lp-print-btn,
  .lp-read-more,
  .lp-inquiry-section,
  #lp-inquiry,
  .lp-filter-bar { display: none !important; }

  /* Show full description */
  .lp-desc-body { max-height: none !important; overflow: visible !important; }
  .lp-desc-fade { display: none !important; }

  /* Hero — compact */
  .lp-hero { height: 260px !important; page-break-after: avoid; break-after: avoid; }
  .lp-hero__glass { position: relative !important; padding-bottom: 10px !important; }
  .lp-hero__title { color: #fff !important; font-size: 1.5rem !important; text-shadow: 0 1px 6px rgba(0,0,0,.8) !important; }

  /* Layout — single column, no sidebar */
  .lp-grid {
    display: block !important;
    background: #fff !important;
    padding: 16px 0 !important;
  }
  .lp-sidebar { display: none !important; }
  .lp-main { width: 100% !important; }

  /* Cards — flat, white */
  .lp-glass-card {
    background: #fff !important;
    border: 1px solid #ddd !important;
    box-shadow: none !important;
    border-radius: 6px !important;
    backdrop-filter: none !important;
  }

  /* Specs */
  .lp-specs-card { grid-template-columns: repeat(4, 1fr) !important; }
  .lp-spec-item__icon { background: #fff5ef !important; }
  .lp-spec-item__val { color: #1d2327 !important; }
  .lp-spec-item__lbl { color: #6b7280 !important; }

  /* Section headings */
  .lp-section__h { color: #1d2327 !important; }
  .lp-section__body { color: #374151 !important; }
  .lp-desc-body { color: #374151 !important; }

  /* Amenities */
  .lp-amenity {
    background: #f3f4f6 !important;
    border-color: #d1d5db !important;
    color: #374151 !important;
  }

  /* Price compare */
  .lp-price-compare {
    background: #f8f9fa !important;
    border: 1px solid #e2e4e6 !important;
  }
  .lp-price-compare__area { background: #f3f4f6 !important; border-color: #ddd !important; }
  .lp-price-compare__area--current { background: #fff5ef !important; border-color: rgba(186,126,90,.3) !important; }
  .lp-price-compare__area-name { color: #1d2327 !important; }
  .lp-price-compare__area-label { color: #6b7280 !important; }

  /* Page setup */
  @page {
    size: A4 portrait;
    margin: 15mm 18mm;
  }

  /* Page breaks */
  .lp-section { page-break-inside: avoid; break-inside: avoid; }
  .lp-specs-card { page-break-inside: avoid; break-inside: avoid; }
}
