/* Uplift Properties — front-end styles (brand: navy #333b60, teal #8dc6bf) */

.uplift-archive__head h1,
.uplift-single__head h1 { color:#333b60; }

.uplift-filters { display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; margin:0 0 1.25rem; padding:1rem 1.1rem; background:#f7f9fb; border:1px solid #e6e9f0; border-radius:14px; }
/* Desktop: bar + more flatten into the single flex row; toggle hidden. */
.uplift-filters__bar, .uplift-filters__more { display:contents; }
.uplift-filters__toggle { display:none; }
/* NOTE: !important is deliberate. GoDaddy Managed WordPress injects a site-wide
   "wp-site-designer-contrast-fallback" stylesheet that styles every
   body .wp-site-blocks input/select/textarea/submit at higher specificity than
   these component selectors, which strips the filter bar's look on that host.
   Marking our own controls !important keeps the bar correct on any host. */
.uplift-filters select,
.uplift-filters__search { padding:.6rem .8rem !important; border:1px solid #d4dae6 !important; border-radius:10px !important; font:inherit; background:#fff !important; color:#333b60 !important; }
.uplift-filters__search { flex:1 1 220px; min-width:180px; }
.uplift-filters select { cursor:pointer; }
.uplift-filters__btn { padding:.6rem 1.2rem !important; border:0 !important; border-radius:10px !important; background:#333b60 !important; color:#fff !important; font-weight:600 !important; cursor:pointer; transition:background .15s; }
.uplift-filters__btn:hover { background:#262d4d !important; }
.uplift-toggle { display:inline-flex; align-items:center; gap:.4rem; color:#5b6270; font-size:.95rem; margin-left:.25rem; }
.uplift-resultcount { color:#6b7280; font-size:.95rem; margin:0 0 1rem; }

/* Mobile filter layout: search full row, selects two-per-row, full-width button */
@media (max-width:600px){
	.uplift-filters { flex-direction:column; align-items:stretch; gap:.5rem; padding:.8rem; }
	.uplift-filters__bar { display:flex; gap:.5rem; align-items:center; }
	.uplift-filters__search { flex:1 1 auto; min-width:0; }
	.uplift-filters__toggle { display:inline-flex; align-items:center; gap:.3rem; padding:.6rem .95rem !important; border:1px solid #333b60 !important; background:#fff !important; color:#333b60 !important; border-radius:10px !important; font-weight:600 !important; cursor:pointer; white-space:nowrap; }
	.uplift-filters__more { display:none; flex-wrap:wrap; gap:.45rem; margin-top:.5rem; }
	.uplift-filters.is-open .uplift-filters__more { display:flex; }
	.uplift-filters__more select { flex:1 1 calc(50% - .25rem); min-width:0; }
	.uplift-filters__btn { flex:1 1 100%; }
	.uplift-toggle { flex:1 1 100%; margin-left:0; justify-content:center; }
}

.uplift-card:empty { display:none; }
.uplift-grid { display:grid; gap:1.25rem; align-items:start; }
.uplift-grid--3 { grid-template-columns:repeat(3,1fr); }
@media (max-width:900px){ .uplift-grid--3 { grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .uplift-grid--3 { grid-template-columns:1fr; } }

.uplift-card { display:flex; flex-direction:column; background:#fff; border:1px solid #ececec; border-radius:14px; overflow:hidden; text-decoration:none; color:inherit; transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.uplift-card:hover { transform:translateY(-4px); box-shadow:0 12px 30px rgba(51,59,96,.15); border-color:#dfe4ee; }
.uplift-card__media { position:relative; aspect-ratio:16/9; background:#f3f6f7; overflow:hidden; }
.uplift-card__media img { width:100%; height:100%; object-fit:cover; display:block; }
.uplift-card__noimg { display:block; width:100%; height:100%; background:#eef1f5 url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="%23b9c2d0" stroke-width="1.5"><path d="M3 9.5 12 3l9 6.5V21H3z"/><path d="M9 21v-6h6v6"/></svg>') center/48px no-repeat; }
.uplift-card.is-leased .uplift-card__media img { filter:grayscale(.4) brightness(.95); }
.uplift-card__body { padding:1rem 1.1rem 1.2rem; }
.uplift-card__title { font-size:1.05rem; line-height:1.25; margin:0 0 .25rem; color:#333b60; }
.uplift-card__city { color:#6b7280; font-size:.9rem; margin-bottom:.5rem; }
.uplift-card__meta { display:flex; flex-wrap:wrap; gap:.5rem 1rem; align-items:baseline; }
.uplift-card__rent { font-weight:700; color:#333b60; font-size:1.1rem; }
.uplift-card__specs { color:#5b6270; font-size:.9rem; }

.uplift-badge { display:inline-block; background:#333b60; color:#fff; font-size:.7rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; padding:.25rem .55rem; border-radius:6px; vertical-align:middle; }
.uplift-card__media .uplift-badge { position:absolute; top:.6rem; left:.6rem; }

.uplift-btn { display:inline-block; background:#333b60; color:#fff !important; text-decoration:none; padding:.8rem 1.4rem; border-radius:10px; font-weight:600; transition:background .15s ease, transform .15s ease; }
.uplift-btn:hover { background:#262d4d; transform:translateY(-2px); }

.uplift-single__h1 { color:#333b60; }

/* Tighten hero + single title so more lands above the fold */
.uplift-hero h1 { margin:0 0 .4rem; line-height:1.15; font-size:clamp(1.7rem, 4.5vw, 2.4rem); }
.uplift-hero p { margin:0; }
body.single-property .wp-block-post-title { font-size:clamp(1.5rem, 5vw, 2.1rem); line-height:1.2; margin-bottom:.75rem; }
@media (max-width:600px){
	.uplift-hero { padding-top:1.25rem !important; padding-bottom:1.25rem !important; }
	.uplift-filters { margin-bottom:.85rem; padding:.7rem; gap:.45rem; }
	.uplift-resultcount { margin:0 0 .6rem; }
	.uplift-gallery2 { margin-bottom:1rem; }
}
.uplift-facts { font-size:1.15rem; color:#333b60; }
.uplift-facts strong { font-weight:700; }
.uplift-addr { color:#6b7280; margin-top:-.25rem; }

.uplift-breadcrumb { margin-bottom:1rem; }
.uplift-breadcrumb a { color:#3f8a7e; text-decoration:none; }
.uplift-single__addr { color:#6b7280; margin:.25rem 0 .75rem; }
.uplift-single__meta { display:flex; gap:1.25rem; align-items:baseline; margin-bottom:1rem; }
.uplift-single__rent { font-size:1.6rem; font-weight:800; color:#333b60; }
.uplift-single__specs { color:#5b6270; }

.uplift-gallery { display:grid; grid-template-columns:repeat(2,1fr); gap:.6rem; margin:1.25rem 0; }
.uplift-gallery__img, .uplift-gallery img { width:100%; height:100%; object-fit:cover; border-radius:10px; }
.uplift-gallery :first-child { grid-column:1 / -1; }
@media (max-width:600px){ .uplift-gallery { grid-template-columns:1fr; } .uplift-gallery :first-child { grid-column:auto; } }

/* Single-page lead image + swipeable lightbox */
.uplift-gallery2 { margin:0 0 1.75rem; }
.uplift-gallery2__lead { display:block; width:100%; padding:0; border:0; background:none; position:relative; cursor:zoom-in; border-radius:14px; overflow:hidden; }
.uplift-gallery2__lead img { width:100%; max-height:540px; object-fit:cover; display:block; transition:transform .3s ease; }
.uplift-gallery2__lead:hover img { transform:scale(1.02); }
.uplift-gallery2__badge { position:absolute; bottom:14px; right:14px; display:inline-flex; align-items:center; gap:.4rem; background:rgba(38,45,77,.85); color:#fff; font-size:.85rem; font-weight:600; padding:.45rem .85rem; border-radius:999px; }
.uplift-gallery2__badge svg { display:block; }

.uplift-lb { position:fixed; inset:0; z-index:99999; background:rgba(17,20,34,.94); display:flex; align-items:center; justify-content:center; }
.uplift-lb__img { max-width:92vw; max-height:86vh; object-fit:contain; border-radius:6px; box-shadow:0 10px 40px rgba(0,0,0,.5); }
.uplift-lb__nav { position:absolute; top:50%; transform:translateY(-50%); background:rgba(255,255,255,.12); color:#fff; border:0; width:52px; height:52px; border-radius:50%; font-size:2rem; line-height:1; cursor:pointer; transition:background .15s; }
.uplift-lb__nav:hover { background:rgba(255,255,255,.28); }
.uplift-lb__prev { left:18px; } .uplift-lb__next { right:18px; }
.uplift-lb__close { position:absolute; top:14px; right:20px; background:none; border:0; color:#fff; font-size:2.6rem; line-height:1; cursor:pointer; }
.uplift-lb__count { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); color:#fff; font-size:.9rem; background:rgba(0,0,0,.45); padding:.3rem .85rem; border-radius:999px; }
@media (max-width:600px){ .uplift-lb__nav { width:42px; height:42px; font-size:1.6rem; } .uplift-lb__prev{left:8px;} .uplift-lb__next{right:8px;} }

.uplift-leased-notice { margin-top:2rem; padding:1.5rem; background:#f3f6f7; border-left:4px solid #8dc6bf; border-radius:10px; }
.uplift-leased-notice > p:first-child { margin-top:0; }

.uplift-pagination { margin:2rem 0; display:flex; gap:.4rem; flex-wrap:wrap; }
.uplift-pagination .page-numbers { padding:.5rem .8rem; border:1px solid #e6e9f0; border-radius:8px; text-decoration:none; color:#333b60; }
.uplift-pagination .current { background:#333b60; color:#fff; }
.uplift-empty { padding:2rem 0; color:#5b6270; }
