/*
Theme Name: RealEstate Prime
Theme URI: https://example.com/realestate-prime
Author: ChatGPT + Dorojan
Author URI: https://example.com
Description: Temă rapidă, SEO-first pentru anunțuri imobiliare. Integrare cu CPT 'property', hartă Leaflet pe arhivă și pagini single, carduri performante, schema.org JSON-LD, OpenGraph. Fără page builder.
Version: 0.1.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: realestate-prime
Tags: real-estate, two-column, grid-layout, blog, custom-menu, featured-images, translation-ready
*/
html{scroll-behavior:smooth}
:root{
  --rp-max:1200px;
  --rp-gap:16px;
  --rp-radius:18px;
  --rp-bg:#f7f7fb;
  --rp-card:#ffffff;
  --rp-text:#1f1f1f;
  --rp-sub:#616161;
  --rp-brand:#0a66ff;
  --rp-brand-2:#111827;
}
*{box-sizing:border-box}
body{margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu; color:var(--rp-text); background:var(--rp-bg)}
a{color:var(--rp-brand); text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:var(--rp-max);margin:0 auto;padding:0 16px}
.header{position:sticky;top:0;background:#fff;border-bottom:1px solid #eee;z-index:50}
.header .wrap{display:flex;align-items:center;justify-content:space-between;padding:12px 0;gap:12px}
.logo{font-weight:800;font-size:22px;letter-spacing:.2px;color:var(--rp-brand-2)}
.nav a{margin:0 10px;color:#222}
.hero{padding:28px 0 12px}
.hero h1{margin:0 0 6px 0;font-size:28px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:960px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.grid{grid-template-columns:1fr}}
.card{background:var(--rp-card);border:1px solid #eee;border-radius:var(--rp-radius);overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.05);display:flex;flex-direction:column}
.card .thumb{aspect-ratio:16/10;background:#ddd;display:block;overflow:hidden}
.card .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.badge{position:absolute;top:10px;left:10px;background:#111;color:#fff;padding:6px 10px;border-radius:999px;font-size:12px}
.badge.sold{background:#b00020}
.badge.rented{background:#0a8f66}
.card-body{padding:12px}
.card-title{margin:0 0 6px 0;font-size:18px;line-height:1.25}
.meta{display:flex;gap:10px;color:var(--rp-sub);font-size:14px}
.price{font-weight:800;font-size:18px;margin-top:8px}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 16px}
.filters input,.filters select{padding:10px;border:1px solid #ddd;border-radius:12px}
.filters button{padding:10px 14px;border:0;border-radius:12px;background:var(--rp-brand);color:#fff;cursor:pointer}
.map-wrap{border:1px solid #eee;border-radius:16px;overflow:hidden;height:420px;margin:16px 0;background:#eaeaea}
footer{margin-top:40px;background:#111;color:#ddd}
footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;padding:24px 0}
footer a{color:#fff}
.pagination{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.pagination a,.pagination span{padding:6px 10px;border:1px solid #ddd;border-radius:10px;background:#fff}
.single .gallery{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin:12px 0}
.single .gallery img{width:100%;border-radius:12px}
.single .facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}
.single .facts div{background:#fff;border:1px solid #eee;border-radius:12px;padding:12px;text-align:center}
.breadcrumbs{font-size:14px;color:#666;margin:8px 0}
