/* Added interactivity styles: lead-capture modal + gallery lightbox.
   Base rules for these components were stripped from the saved source
   (SingleFile only keeps CSS for elements that exist in the DOM at save
   time, and these were closed/hidden when the pages were captured). */

/* ---------- Lead form modal (.lf-*) ---------- */
.lf-overlay{display:none}
.lf-overlay.is-open{display:flex}
.lf-overlay.is-open{animation:lf-fade .25s ease}
.lf-overlay.is-closing{animation:lf-fade-out .2s ease forwards}

.lf-modal{position:relative;width:100%;max-width:460px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:22px;padding:34px 28px 28px;box-shadow:0 30px 70px rgba(12,14,34,.35);animation:lf-pop .32s cubic-bezier(.22,.61,.36,1)}
.lf-overlay.is-closing .lf-modal{animation:lf-pop-out .2s ease forwards}
@media (max-width:480px){
  .lf-modal{max-width:100%;border-radius:20px 20px 0 0;max-height:92vh;max-height:92svh;animation:lf-sheet-up .32s cubic-bezier(.22,.61,.36,1)}
  .lf-overlay.is-closing .lf-modal{animation:lf-sheet-down .22s ease forwards}
}

.lf-close{position:absolute;top:16px;left:16px;width:36px;height:36px;border-radius:50%;border:none;background:#f2f3f8;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}
.lf-badge{display:block;width:max-content;margin:0 auto 14px;background:rgba(229,75,65,.1);color:var(--coral);font-weight:700;font-size:13px;padding:6px 16px;border-radius:999px}
.lf-title{margin:0 0 8px;text-align:center;font-size:22px;font-weight:800;color:var(--navy);line-height:1.35}
.lf-sub{margin:0 0 22px;text-align:center;font-size:14px;color:var(--muted);line-height:1.7}
.lf-context{display:none;width:max-content;max-width:100%;margin:0 auto 10px;padding:6px 14px;border-radius:999px;background:#f4f5f9;border:1px solid var(--line);color:var(--navy);font-size:13.5px;font-weight:700}
.lf-compact .lf-context{display:block}
.lf-compact .lf-field-project,.lf-compact .lf-optional-tag,.lf-compact .lf-row{display:none}
.lf-compact .lf-sub{margin-bottom:18px}

.lf-form{display:flex;flex-direction:column;gap:16px}
.lf-field{display:flex;flex-direction:column;gap:7px}
.lf-label{font-size:13.5px;font-weight:700;color:var(--ink)}
.lf-req{color:var(--err)}
.lf-input{width:100%;box-sizing:border-box;font-family:inherit;font-size:14.5px;color:var(--ink);background:#fbfbfd;border:1.5px solid var(--line);border-radius:12px;padding:13px 14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
select.lf-input{appearance:none;-webkit-appearance:none;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="%235f647c" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg>');background-repeat:no-repeat;background-position:left 14px center;padding-left:34px}
select.lf-input:invalid{color:#aab0c4}
.lf-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lf-input-group{position:relative;display:flex;align-items:center}
.lf-input-group .lf-input{padding-left:44px}
.lf-unit{position:absolute;left:14px;font-size:13px;color:var(--muted);font-weight:600;pointer-events:none}

.lf-optional-tag{position:relative;text-align:center;font-size:12.5px;color:var(--muted);margin:2px 0}

.lf-submit{width:100%;border:none;border-radius:14px;background:var(--coral);color:#fff;font-family:inherit;font-weight:700;font-size:16px;padding:15px;cursor:pointer;transition:background .2s ease,transform .12s ease,box-shadow .25s ease}
.lf-privacy{margin:14px 0 0;text-align:center;font-size:12px;line-height:1.8;color:var(--muted)}
.lf-privacy a{color:var(--coral);font-weight:700;text-decoration:none}

/* ---------- Gallery lightbox (.mkzg-lb-*) ---------- */
.mkzg-lb{display:none}
.mkzg-lb.is-open{display:flex}
.mkzg-lb.is-open{animation:lf-fade .25s ease}
.mkzg-lb.is-closing{animation:lf-fade-out .2s ease forwards}

.mkzg-lb-stage{position:relative;display:flex;align-items:center;justify-content:center;max-width:92vw;max-height:90vh}
.mkzg-lb-img{max-width:92vw;max-height:82vh;border-radius:14px;object-fit:contain;display:block;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.mkzg-lb-close{position:absolute;top:-52px;left:0;width:42px;height:42px;border-radius:50%;border:none;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}
.mkzg-lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:none;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;z-index:2}
.mkzg-lb-prev{right:-16px}
.mkzg-lb-next{left:-16px}
.mkzg-lb-counter{position:absolute;bottom:-38px;left:0;right:0;text-align:center;color:#fff;font-size:13.5px;font-weight:600;opacity:.85}
@media (max-width:640px){
  .mkzg-lb-prev{right:6px}
  .mkzg-lb-next{left:6px}
  .mkzg-lb-nav{width:40px;height:40px}
  .mkzg-lb-close{top:auto;bottom:-52px;left:50%;transform:translateX(-50%)}
}

/* Digits + "/" have no strong bidi direction, so under dir=rtl they render
   mirrored ("13 / 1" instead of "1 / 13") unless forced ltr. */
.mkzg-counter,.mkzg-lb-counter{direction:ltr;unicode-bidi:isolate}

/* ---------- Project card offer badges (.mkz-offer-*) ---------- */
.mkz-offer-badge{position:absolute;top:14px;right:14px;z-index:4;background:var(--coral);color:#fff;font-size:11.5px;font-weight:800;padding:6px 12px;border-radius:999px;box-shadow:0 6px 16px rgba(229,75,65,.4);white-space:nowrap}
.mkz-offer{margin:14px 16px 0;background:rgba(229,75,65,.08);border:1px solid rgba(229,75,65,.22);border-radius:12px;padding:10px 14px;display:flex;flex-direction:column;gap:2px}
.mkz-offer-tag{font-size:11px;font-weight:800;color:var(--coral)}
.mkz-offer-text{margin:0;font-size:13px;color:var(--navy);font-weight:600;line-height:1.55}
.mkz-stat-was{display:block;font-size:11px;font-weight:600;color:#9aa0b4;text-decoration:line-through;margin-top:2px}

/* ---------- Scroll-triggered quick-capture popup (.qp-*) ----------
   A centered, backdrop-blocking popup (same treatment on mobile and
   desktop) so it's attention-grabbing enough to move the needle on
   sign-ups. It can still reappear a few times per visit (with a cooldown)
   if dismissed. */
.qp-overlay{--navy:#21275b;--coral:#E54B41;display:none;position:fixed;inset:0;z-index:9997;align-items:center;justify-content:center;background:rgba(12,14,34,.72);backdrop-filter:blur(6px);padding:20px;box-sizing:border-box}
.qp-overlay.is-visible{display:flex;animation:lf-fade .25s ease}
.qp-overlay.is-hiding{animation:lf-fade-out .2s ease forwards}
.qp-popup{position:relative;width:100%;max-width:360px;background:#fff;border-radius:18px;box-shadow:0 30px 70px rgba(12,14,34,.35);padding:22px 20px 18px;box-sizing:border-box;direction:rtl;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;animation:lf-pop .32s cubic-bezier(.22,.61,.36,1)}
.qp-overlay.is-hiding .qp-popup{animation:lf-pop-out .2s ease forwards}
.qp-close{position:absolute;top:12px;left:12px;width:30px;height:30px;border-radius:50%;border:none;background:#f2f3f8;color:#2a2e45;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}
.qp-close:hover{background:#e3e6ef}
.qp-title{margin:4px 30px 0 0;font-size:16.5px;font-weight:800;color:var(--navy);line-height:1.55;text-align:center}
.qp-sub{margin:4px 0 0;font-size:13px;color:var(--muted,#6b7085);line-height:1.6;text-align:center}
.qp-offer{display:block;width:fit-content;margin:2px auto 10px;background:rgba(229,75,65,.1);color:var(--coral);font-weight:700;font-size:12.5px;padding:6px 14px;border-radius:999px;text-align:center}
.qp-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.qp-input{width:100%;box-sizing:border-box;font-family:inherit;font-size:14px;border:1.5px solid #e3e6ef;border-radius:10px;padding:12px 12px;color:#2a2e45;background:#fbfbfd}
.qp-input:focus{outline:none;border-color:var(--coral);background:#fff;box-shadow:0 0 0 3px rgba(229,75,65,.12)}
.qp-submit{margin-top:12px;width:100%;border:none;border-radius:10px;background:var(--coral);color:#fff;font-family:inherit;font-weight:700;font-size:15px;padding:13px;cursor:pointer;transition:background .2s ease}
.qp-submit:hover{background:#c93a31}
.qp-note{margin:11px 0 0;font-size:11px;color:#5f647c;line-height:1.6;text-align:center}
.qp-note a{color:var(--coral);font-weight:700;text-decoration:none}

/* ---------- Touch-friendly carousels ---------- */
.mkz-slides,.mkzg-stage{touch-action:pan-y}

/* ---------- Cookie / privacy notice (.ck-*) ---------- */
.ck-banner{--navy:#21275b;--coral:#E54B41;--coral-dk:#c93a31;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;direction:rtl;position:fixed;bottom:16px;right:16px;left:auto;z-index:9998;align-items:center;gap:12px;max-width:440px;width:calc(100% - 32px);background:#21275b;color:#fff;padding:12px 14px;border-radius:14px;box-shadow:0 12px 34px rgba(10,13,40,.4);border:1px solid rgba(255,255,255,.10);box-sizing:border-box}
.ck-link:hover{text-decoration:underline}
.ck-accept:hover{background:var(--coral-dk)}
.ck-accept:active{transform:scale(.96)}
.ck-close:hover{background:rgba(255,255,255,.22)}
@keyframes ck-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes ck-out{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(16px)}}
@media (max-width:520px){.ck-banner{right:12px;left:12px;width:auto;max-width:none;bottom:12px;gap:10px;padding:11px 12px}}
.ck-banner{display:none}
.ck-banner.is-visible{display:flex;animation:ck-in .35s cubic-bezier(.22,.61,.36,1)}
.ck-banner.is-hiding{animation:ck-out .25s ease forwards}
.ck-icon{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;font-size:17px}
.ck-text{flex:1 1 auto;margin:0;font-size:12.5px;line-height:1.7;color:rgba(255,255,255,.92)}
.ck-link{color:var(--coral);font-weight:700;text-decoration:none}
.ck-accept{flex:0 0 auto;border:none;border-radius:999px;background:var(--coral);color:#fff;font-family:inherit;font-weight:700;font-size:13px;padding:9px 18px;cursor:pointer;white-space:nowrap;transition:background .2s ease,transform .12s ease}
.ck-close{flex:0 0 auto;width:28px;height:28px;border-radius:50%;border:none;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}

.mkz-details-link{pointer-events:auto;display:inline-flex;align-items:center;gap:4px;margin-top:8px;width:fit-content;font-size:12.5px;font-weight:600;color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.55)}
.mkz-details-link:hover{color:var(--coral);text-decoration-color:var(--coral)}

/* ---------- Location & master plan (.mkzl-*) ---------- */
.mkzl-section{--navy:#21275b;--coral:#E54B41;--ink:#2a2e45;--muted:#6b7085;--line:#eceef4;--card:#fff;--bg:#f4f5f9;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;direction:rtl;text-align:right;max-width:1100px;margin:0 auto;padding:10px 4px 40px;box-sizing:border-box}
.mkzl-section *{box-sizing:border-box}
.mkzl-head{text-align:center;margin-bottom:26px}
.mkzl-eyebrow{display:inline-block;color:var(--coral);font-weight:700;font-size:14px;letter-spacing:.5px;background:rgba(229,75,65,.09);padding:6px 16px;border-radius:999px;margin-bottom:14px}
.mkzl-title{color:var(--navy);font-size:clamp(24px,3.6vw,34px);font-weight:800;margin:0 0 8px;line-height:1.2}
.mkzl-sub{color:var(--muted);font-size:clamp(14px,2vw,16px);margin:0}
.mkzl-body{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:0 4px 18px rgba(33,39,91,.06)}
@media (max-width:760px){.mkzl-body{grid-template-columns:1fr}}
.mkzl-map{border-radius:16px;overflow:hidden;line-height:0;background:var(--bg)}
.mkzl-map img{width:100%;height:auto;display:block}
.mkzl-desc{margin:0 0 18px;color:var(--ink);font-size:14.5px;line-height:1.8}
.mkzl-chips-lbl{display:block;font-size:13px;font-weight:700;color:var(--muted);margin-bottom:10px;letter-spacing:.3px}
.mkzl-chips{display:flex;flex-wrap:wrap;gap:9px}
.mkzl-chip{font-size:13px;font-weight:600;color:var(--navy);background:var(--bg);border:1.5px solid var(--line);padding:8px 15px;border-radius:999px;transition:all .2s ease}
.mkzl-chip:hover{border-color:var(--coral);color:var(--coral)}

/* ---------- Other projects teaser (.mkzo-*) ---------- */
.mkzo-section{--navy:#21275b;--coral:#E54B41;--muted:#6b7085;--line:#eceef4;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;direction:rtl;text-align:right;max-width:1100px;margin:0 auto;padding:10px 4px 46px;box-sizing:border-box}
.mkzo-section *{box-sizing:border-box}
.mkzo-head{text-align:center;margin-bottom:24px}
.mkzo-eyebrow{display:inline-block;color:var(--coral);font-weight:700;font-size:14px;letter-spacing:.5px;background:rgba(229,75,65,.09);padding:6px 16px;border-radius:999px;margin-bottom:14px}
.mkzo-title{color:var(--navy);font-size:clamp(22px,3.2vw,30px);font-weight:800;margin:0;line-height:1.2}
.mkzo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
@media (max-width:640px){
.mkzo-grid{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding:4px 4px 14px;margin:0 -4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.mkzo-grid::-webkit-scrollbar{display:none}
.mkzo-card{flex:0 0 82%;scroll-snap-align:center}
}
.mkzo-card{position:relative;display:block;border-radius:20px;overflow:hidden;height:240px;text-decoration:none;box-shadow:0 4px 18px rgba(33,39,91,.08);transition:transform .25s ease}
.mkzo-card:hover{transform:translateY(-4px)}
.mkzo-card img{width:100%;height:100%;object-fit:cover;display:block}
.mkzo-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;background:linear-gradient(to top,rgba(33,39,91,.88) 0%,rgba(33,39,91,.35) 55%,rgba(33,39,91,0) 100%)}
.mkzo-loc{display:inline-block;width:fit-content;font-size:12px;font-weight:600;color:#fff;background:rgba(255,255,255,.16);padding:4px 12px;border-radius:999px;margin-bottom:8px}
.mkzo-name{margin:0 0 6px;font-size:22px;font-weight:800;color:#fff}
.mkzo-price{font-size:12.5px;font-weight:600;color:rgba(255,255,255,.85);margin:0 0 8px}
.mkzo-price strong{color:#fff;font-weight:800;font-size:14px}
.mkzo-cta{font-size:13px;font-weight:700;color:#fff;display:inline-flex;align-items:center;gap:4px;transition:color .2s ease}
.mkzo-card:hover .mkzo-cta{color:var(--coral)}

/* ---------- Pricing / product table (.mkzt-*) ---------- */
.mkzt-section{--navy:#21275b;--coral:#E54B41;--ink:#2a2e45;--muted:#6b7085;--line:#eceef4;--card:#fff;--bg:#f4f5f9;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;direction:rtl;text-align:right;max-width:1100px;margin:0 auto;padding:10px 4px 40px;box-sizing:border-box}
.mkzt-section *{box-sizing:border-box}
.mkzt-head{text-align:center;margin-bottom:22px}
.mkzt-eyebrow{display:inline-block;color:var(--coral);font-weight:700;font-size:14px;letter-spacing:.5px;background:rgba(229,75,65,.09);padding:6px 16px;border-radius:999px;margin-bottom:14px}
.mkzt-title{color:var(--navy);font-size:clamp(22px,3.4vw,32px);font-weight:800;margin:0 0 8px;line-height:1.25}
.mkzt-sub{color:var(--muted);font-size:clamp(13.5px,2vw,15.5px);margin:0}
.mkzu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.mkzu-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-align:right;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.mkzu-card:hover{border-color:var(--coral);transform:translateY(-3px);box-shadow:0 10px 24px rgba(33,39,91,.08)}
.mkzu-card{position:relative}
.mkzu-tag{position:absolute;top:-12px;right:18px;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:#fff;background:#1f9d6b;padding:4px 12px;border-radius:999px;box-shadow:0 4px 12px rgba(31,157,107,.3);white-space:nowrap}
.mkzu-name{font-weight:800;color:var(--navy);font-size:19px}
.mkzu-desc{margin:0;font-size:13px;color:var(--muted);line-height:1.7}
.mkzu-price-lbl{font-size:11.5px;color:var(--muted);font-weight:600}
.mkzu-price-num{display:block;font-size:19px;font-weight:800;color:var(--coral);margin-top:2px}
.mkzu-specs{list-style:none;margin:2px 0 0;padding:10px 0 0;border-top:1px dashed var(--line);width:100%;display:flex;flex-direction:column;gap:6px}
.mkzu-specs li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:13px}
.mkzu-specs span{color:var(--muted);font-weight:600}
.mkzu-specs strong{color:var(--navy);font-weight:700}
.mkzu-cta{margin-top:4px;border:1.5px solid var(--coral);background:transparent;color:var(--coral);font-family:inherit;font-weight:700;font-size:13px;padding:9px 18px;border-radius:999px;cursor:pointer;transition:all .2s ease}
.mkzu-cta:hover{background:var(--coral);color:#fff}
.mkzt-note{margin-top:22px;font-size:12.5px;color:var(--muted);text-align:center}
.mkzt-terms{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:26px}
.mkzt-term-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
.mkzt-term-tag{display:inline-block;font-size:12px;font-weight:700;color:var(--coral);background:rgba(229,75,65,.09);padding:4px 12px;border-radius:999px;margin-bottom:10px}
.mkzt-term-text{margin:0;font-size:13.5px;color:var(--ink);line-height:1.8}
.mkzt-term-num{font-weight:800;color:var(--navy)}

/* ---------- Floating WhatsApp / call buttons (.fc-*) ---------- */
.fc-wrap{position:fixed;left:18px;bottom:18px;z-index:9990;display:flex;flex-direction:column;gap:10px;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .25s ease,transform .25s ease,bottom .25s ease}
.fc-wrap.is-visible{opacity:1;transform:none;pointer-events:auto}
.fc-btn{width:52px;height:52px;border-radius:50%;border:2px solid #fff;box-sizing:border-box;display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;box-shadow:0 8px 22px rgba(12,14,34,.25);transition:transform .15s ease}
.fc-btn:hover{transform:scale(1.07)}
.fc-btn:focus-visible{outline:3px solid #21275b;outline-offset:3px}
.fc-wa{background:#25d366}
.fc-call{background:#21275b;width:46px;height:46px;align-self:center}
@media (min-width:769px){.fc-call{display:none}}
@media (max-width:520px){.fc-wrap{left:14px;bottom:14px}body:has(.ck-banner.is-visible) .fc-wrap{bottom:96px}}
@media (prefers-reduced-motion:reduce){.fc-wrap,.fc-btn{transition:none}}

/* ---------- ORA hub page: call-first hero, project cards (.oc-*), inline lead form (.of-*) ---------- */
.oc-hero-wa{text-decoration:none;display:flex;width:fit-content;margin-left:auto;margin-right:auto}
@media (max-width:560px){.oc-hero-wa{width:100%;justify-content:center}}
.oc-hero-wa i{font-size:22px;line-height:1}
.oc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;max-width:860px;margin:0 auto}
.oc-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 6px 22px rgba(33,39,91,.07)}
.oc-media{position:relative;height:210px;background:#21275b}
.oc-media img{width:100%;height:100%;object-fit:cover;display:block}
.oc-media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(33,39,91,.85) 0%,rgba(33,39,91,0) 60%)}
.oc-media--placeholder{background:linear-gradient(135deg,#2c3474 0%,#21275b 55%,#E54B41 160%)}
.oc-loc{position:absolute;top:14px;right:14px;z-index:1;display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:#fff;background:rgba(33,39,91,.6);backdrop-filter:blur(4px);padding:5px 12px;border-radius:999px}
.oc-name{position:absolute;bottom:14px;right:18px;z-index:1;margin:0;font-family:"Poppins","Cairo",sans-serif;font-size:24px;font-weight:800;color:#fff}
.oc-body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:14px;flex:1}
.oc-chips{display:flex;flex-wrap:wrap;gap:7px}
.oc-chips span{font-size:12.5px;font-weight:700;color:var(--navy);background:var(--bg);border:1px solid var(--line);padding:5px 12px;border-radius:999px}
.oc-desc{margin:0;font-size:13.5px;line-height:1.85;color:var(--muted)}
.oc-price{background:var(--bg);border-radius:14px;padding:12px;text-align:center}
.oc-price-lbl{display:block;font-size:12px;font-weight:600;color:var(--muted)}
.oc-price-num{display:block;font-size:24px;font-weight:800;color:var(--coral)}
.oc-price-num small{font-size:14px}
.oc-price-note{display:block;margin-top:2px;font-size:12px;font-weight:700;color:var(--navy)}
.oc-desc strong{color:var(--navy)}
.oc-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:var(--bg);border-radius:14px;padding:12px 8px;text-align:center}
.oc-facts strong{display:block;font-size:15px;font-weight:800;color:var(--navy)}
.oc-facts span{font-size:11.5px;color:var(--muted);font-weight:600}
.oc-actions{display:flex;gap:10px;margin-top:auto}
.oc-wa{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--coral);box-shadow:0 8px 20px rgba(229,75,65,.3);color:#fff;text-decoration:none;font-weight:800;font-size:15px;padding:13px 14px;border-radius:14px;transition:background .2s ease}
.oc-wa:hover{background:#c93a31}
.oc-wa i{font-size:19px;line-height:1}
.oc-call{flex:0 0 52px;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--navy);color:var(--navy);border-radius:14px;text-decoration:none;transition:background .2s ease,color .2s ease}
.oc-call:hover{background:var(--navy);color:#fff}
.oc-wa:focus-visible,.oc-call:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
.price-note{max-width:860px;margin:16px auto 0;text-align:center;font-size:12.5px;line-height:1.7;color:var(--muted)}

.of-section{--navy:#21275b;--coral:#E54B41;--coral-dk:#c93a31;--muted:#6b7085;--line:#e3e6ef;--bg:#f4f5f9;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;direction:rtl;padding:30px 16px 50px;box-sizing:border-box}
.of-section *{box-sizing:border-box}
.of-card{max-width:620px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 24px;box-shadow:0 14px 40px rgba(33,39,91,.08);text-align:center}
.of-eyebrow{display:inline-block;color:var(--coral);font-weight:700;font-size:13.5px;background:rgba(229,75,65,.09);padding:6px 16px;border-radius:999px;margin-bottom:12px}
.of-title{margin:0 0 8px;color:var(--navy);font-size:clamp(21px,3.2vw,27px);font-weight:800}
.of-sub{margin:0 0 20px;color:var(--muted);font-size:14px;line-height:1.8}
.of-form{display:flex;flex-direction:column;gap:12px;text-align:right}
.of-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.of-field{display:flex;flex-direction:column;gap:6px}
.of-label{font-size:13px;font-weight:700;color:var(--navy)}
.of-label em{color:var(--coral);font-style:normal}
.of-input{width:100%;font-family:inherit;font-size:15px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--bg);color:#2a2e45;outline:none;transition:border-color .2s ease,box-shadow .2s ease}
.of-input:focus{border-color:var(--coral);background:#fff;box-shadow:0 0 0 4px rgba(229,75,65,.12)}
.of-group{position:relative;display:block}
.of-group i{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-style:normal;font-size:12.5px;font-weight:700;color:var(--muted)}
.of-group .of-input{padding-left:44px}
.of-submit{margin-top:4px;border:none;border-radius:14px;background:var(--coral);color:#fff;font-family:inherit;font-weight:800;font-size:16px;padding:15px;cursor:pointer;transition:background .2s ease}
.of-submit:hover{background:var(--coral-dk)}
.of-submit:disabled{opacity:.7;cursor:default}
.of-privacy{margin:0;text-align:center;font-size:12px;color:var(--muted)}
.of-privacy a{color:var(--coral);font-weight:700}
@media (max-width:520px){.of-row{grid-template-columns:1fr}.oc-name{font-size:21px}.oc-facts strong{font-size:13px;white-space:nowrap}}

/* ---------- Payment-plan teaser (.pc-*) ---------- */
.pc-section{--navy:#21275b;--coral:#E54B41;--coral-dk:#c93a31;--muted:#6b7085;--line:#eceef4;--bg:#f4f5f9;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;direction:rtl;padding:6px 16px 44px;box-sizing:border-box}
.pc-section *{box-sizing:border-box}
.pc-card{max-width:560px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px 22px 20px;box-shadow:0 14px 40px rgba(33,39,91,.08);text-align:center}
.pc-eyebrow{display:inline-block;color:var(--coral);font-weight:700;font-size:13.5px;background:rgba(229,75,65,.09);padding:6px 16px;border-radius:999px;margin-bottom:10px}
.pc-title{margin:0 0 6px;color:var(--navy);font-size:clamp(21px,3.2vw,27px);font-weight:800}
.pc-sub{margin:0 0 18px;color:var(--muted);font-size:14px}
.pc-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px}
.pc-tab{font-family:inherit;font-size:13.5px;font-weight:700;color:var(--navy);background:var(--bg);border:1.5px solid var(--line);padding:8px 16px;border-radius:999px;cursor:pointer;transition:all .2s ease}
.pc-tab.is-active{background:var(--navy);border-color:var(--navy);color:#fff}
.pc-tab:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.pc-rows{background:var(--bg);border-radius:16px;padding:6px 16px 12px;text-align:right}
.pc-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line);font-size:14px;color:var(--muted);font-weight:600}
.pc-row strong{color:var(--navy);font-size:16px;font-weight:800;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.pc-row--hi strong{color:var(--coral);font-size:20px}
.pc-row--locked{border-bottom:none}
.pc-row--locked strong{color:var(--muted)}
.pc-blur{font-style:normal;filter:blur(6px);user-select:none;color:var(--navy)}
.pc-note{margin:0;font-size:12px;color:var(--muted);text-align:center}
.pc-cta{width:100%;margin-top:16px;border:none;border-radius:14px;background:var(--coral);color:#fff;font-family:inherit;font-weight:800;font-size:16px;padding:15px;cursor:pointer;box-shadow:0 10px 26px rgba(229,75,65,.35);transition:background .2s ease,transform .12s ease}
.pc-cta:hover{background:var(--coral-dk)}
.pc-cta:active{transform:scale(.985)}
.pc-cta:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
.pc-foot{margin:10px 0 0;font-size:11.5px;color:var(--muted)}
.mkzu-tags{position:absolute;top:-12px;right:18px;display:flex;flex-wrap:wrap;gap:6px}
.mkzu-tags .mkzu-tag{position:static}
.mkzu-tag--hot{background:var(--coral);box-shadow:0 4px 12px rgba(229,75,65,.3)}

/* Payment-plan switch inside the teaser */
.pc-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.pc-plan{font-family:inherit;text-align:center;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:10px 8px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:2px}
.pc-plan b{font-size:14.5px;color:var(--navy)}
.pc-plan span{font-size:12px;color:var(--muted);font-weight:600}
.pc-plan.is-active{border-color:var(--navy);background:var(--navy)}
.pc-plan.is-active b,.pc-plan.is-active span{color:#fff}
.pc-plan--hot{border-color:rgba(229,75,65,.45)}
.pc-plan--hot b::before{content:"🔑 "}
.pc-plan--hot.is-active{border-color:var(--coral);background:var(--coral)}
.pc-plan:focus-visible{outline:3px solid var(--coral);outline-offset:2px}

/* ---------- Submit "sending" state (all lead forms) ---------- */
button.is-sending{cursor:wait!important;opacity:.85;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.send-spinner{width:16px;height:16px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;display:inline-block;animation:send-spin .7s linear infinite;flex-shrink:0}
@keyframes send-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.send-spinner{animation-duration:1.6s}}
/* ---------- FAQ section (.faq-section) ---------- */
.faq-section{--navy:#21275b;--coral:#E54B41;--muted:#6b7085;--line:#eceef4;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;direction:rtl;text-align:right;max-width:860px;margin:0 auto;padding:26px 16px 36px;box-sizing:border-box}
.faq-head{text-align:center;margin-bottom:22px}
.faq-eyebrow{display:inline-block;color:var(--coral);font-weight:700;font-size:14px;letter-spacing:.5px;background:rgba(229,75,65,.09);padding:6px 16px;border-radius:999px;margin-bottom:14px}
.faq-title{color:var(--navy);font-size:clamp(24px,3.6vw,36px);font-weight:800;margin:0;line-height:1.25}
.faq-list{display:grid;gap:10px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.faq-item[open]{border-color:rgba(229,75,65,.35)}
.faq-q{list-style:none;cursor:pointer;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.faq-q::-webkit-details-marker{display:none}
.faq-q::after{content:"+";color:var(--coral);font-size:22px;font-weight:700;line-height:1;flex-shrink:0}
.faq-item[open] .faq-q::after{content:"−"}
.faq-q:focus-visible{outline:3px solid var(--coral);outline-offset:-3px}
.faq-q-text{margin:0;font-family:inherit;font-size:clamp(15px,2.2vw,17px);font-weight:700;color:var(--navy);line-height:1.5}
.faq-a{margin:0;padding:0 18px 16px;color:var(--muted);font-size:clamp(14px,2vw,16px);line-height:1.8}
/* ---------- Footer project links (.ft-projects) ---------- */
.ft-projects{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:22px}
.ft-projects-lbl{font-size:13px;font-weight:800;color:#fff}
.faq-a a{color:var(--coral);font-weight:700;text-decoration:underline}

/* ---------- Language switch (.lang-switch) ---------- */
.lang-switch{position:absolute;top:14px;inset-inline-end:16px;z-index:3;font-family:"Cairo",Tahoma,"Segoe UI",sans-serif;font-size:13px;font-weight:700;line-height:1;color:#fff;text-decoration:none;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.45);background:rgba(15,18,45,.35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s ease,border-color .2s ease}
.lang-switch:hover,.lang-switch:focus-visible{background:rgba(15,18,45,.6);border-color:#fff}
.lang-switch--light{position:static;display:block;width:-moz-max-content;width:max-content;margin:0 auto 14px;color:#21275b;border-color:rgba(33,39,91,.28);background:#fff}
.lang-switch--light:hover,.lang-switch--light:focus-visible{background:#f2f3f8;border-color:#21275b}

/* WhatsApp CTAs on Marakez project pages (hero, unit cards, detail + budget sections) */
.wa-ico{font-size:22px;line-height:1;flex-shrink:0}
.hr-ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.hr-cta-wa{background:#1FAF54;box-shadow:0 12px 30px rgba(31,175,84,.42);text-decoration:none}
.hr-cta-wa:hover{background:#178f44;box-shadow:0 16px 38px rgba(31,175,84,.5)}
.hr-cta-ghost{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);color:#fff;border:1.5px solid rgba(255,255,255,.7);cursor:pointer;font-family:inherit;font-weight:700;font-size:clamp(15px,2vw,16.5px);padding:15px 26px;border-radius:14px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s ease}
.hr-cta-ghost:hover{background:rgba(255,255,255,.18)}
.hr-cta-ghost:focus-visible{outline:3px solid #fff;outline-offset:3px}
.mkzu-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:4px}
.mkzu-actions .mkzu-cta{margin-top:0}
.mkzu-wa{display:inline-flex;align-items:center;gap:6px;background:#1FAF54;color:#fff;text-decoration:none;font-weight:700;font-size:13px;padding:9px 16px;border-radius:999px;border:1.5px solid #1FAF54;transition:background .2s ease}
.mkzu-wa:hover{background:#178f44;border-color:#178f44}
.mkzu-wa .wa-ico{font-size:16px}
.cta-pair{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.cta-wa{display:inline-flex;align-items:center;gap:9px;background:#1FAF54;color:#fff;text-decoration:none;font-weight:700;font-size:15.5px;padding:14px 24px;border-radius:14px;box-shadow:0 8px 22px rgba(31,175,84,.34);transition:background .2s ease}
.cta-wa:hover{background:#178f44}
.mkzu-wa:focus-visible,.cta-wa:focus-visible,.hr-cta-wa:focus-visible{outline:3px solid #21275b;outline-offset:2px}
@media (max-width:700px){.hr-ctas,.cta-pair{flex-direction:column;align-items:stretch}.hr-cta-wa,.hr-cta-ghost,.cta-wa{width:100%;justify-content:center;box-sizing:border-box}.cta-pair .mkzd-cta,.cta-pair .pb-cta{width:100%;justify-content:center}}
