:root{--brand:#c1272d;--brand-d:#9e1d22;--ink:#2f4350;--soft:#f5f7f9}
body{font-family:'Cairo',system-ui,sans-serif;color:#2b2b2b}
.site-nav{background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.07)}
.site-nav .nav-link{font-weight:600;color:var(--ink)}
.site-nav .nav-link.active,.site-nav .nav-link:hover{color:var(--brand)}
.btn-brand{background:var(--brand);color:#fff;border:0}.btn-brand:hover{background:var(--brand-d);color:#fff}
.hero{padding:140px 0;background:linear-gradient(135deg,var(--ink),#1d2b35);background-size:cover;background-position:center}
.hero h1{font-weight:700;font-size:clamp(2rem,5vw,3.4rem)}
.page-head{background:linear-gradient(135deg,var(--ink),#1d2b35);color:#fff;padding:56px 0;text-align:center}
.page-head h1{margin:0;font-weight:700}
.sec-title{text-align:center;font-weight:700;color:var(--ink);margin-bottom:2rem;position:relative}
.sec-title:after{content:"";display:block;width:60px;height:4px;background:var(--brand);margin:10px auto 0;border-radius:2px}
.bg-soft{background:var(--soft)}
.unit-card{border:0;box-shadow:0 4px 18px rgba(0,0,0,.08);border-radius:14px;overflow:hidden;transition:.2s}
.unit-card:hover{transform:translateY(-4px)}
.unit-img{display:block;height:210px;background:#e9edf0}.unit-img img{width:100%;height:100%;object-fit:cover}
.ph{display:flex;align-items:center;justify-content:center;height:100%;min-height:220px;color:#9aa8b2;font-size:3.5rem;background:#e9edf0}
.unit-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--ink)}
.price{font-weight:700;color:var(--brand);font-size:1.2rem}.price small{font-size:.7rem;color:#777;font-weight:400}
.price.big{font-size:2rem}
.feature{background:#fff;border-radius:14px;padding:24px;box-shadow:0 4px 18px rgba(0,0,0,.06);height:100%}
.feature>i{font-size:2rem;color:var(--brand)}
.amen{background:var(--soft);border-radius:10px;padding:12px 14px;font-weight:600;color:var(--ink)}.amen i{color:var(--brand)}
.amen-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.amen-list i{color:var(--brand)}
.gallery{border-radius:14px;overflow:hidden}.gallery img{height:430px;object-fit:cover}
.thumb{width:84px;height:62px;object-fit:cover;border-radius:8px;cursor:pointer}
.map{width:100%;height:440px;border:0;border-radius:14px}
.price-table th{background:var(--ink);color:#fff}
.site-footer{background:var(--ink);color:#fff}.site-footer a{color:#dfe6ea;text-decoration:none}.site-footer a:hover{color:#fff}
.wa-float{position:fixed;bottom:20px;inset-inline-start:20px;width:54px;height:54px;border-radius:50%;background:#25d366;color:#fff;font-size:1.8rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.25);z-index:50;text-decoration:none}
/* admin */
.admin-side{background:var(--ink);min-height:100vh}.admin-side a{color:#dfe6ea;display:block;padding:10px 18px;text-decoration:none}
.admin-side a:hover{background:rgba(255,255,255,.1);color:#fff}

/* offers */
.unit-img{position:relative}
.price-old{text-decoration:line-through;color:#999;font-size:.8em;font-weight:400;margin-inline-end:6px}
.price-new{color:var(--brand)}
.badge-offer{background:var(--brand);color:#fff;font-size:.7rem;padding:2px 8px;border-radius:20px;margin-inline-start:6px;font-weight:700}
.ribbon{position:absolute;top:12px;inset-inline-start:12px;background:var(--brand);color:#fff;padding:4px 14px;border-radius:20px;font-weight:700;font-size:.85rem;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.offer-banner{background:#fff4f4;border:1px dashed var(--brand);color:var(--brand-d);border-radius:10px;padding:8px 12px;margin-bottom:14px;font-weight:600}
