/* ==========================================================
   ZEED — page system add-on (nav dropdowns + media pages)
   Additive only. Loads AFTER zeed.css. RTL-safe (logical props).
   ========================================================== */

/* ---------- header: dropdown / mega menu ---------- */
.nav-links{position:relative}
.zmenu{position:relative}
.zmenu>button{
  background:none;border:0;cursor:pointer;font:inherit;color:var(--muted);
  font-weight:600;font-size:15.5px;display:inline-flex;align-items:center;gap:6px;padding:6px 0;
}
.zmenu>button:hover,.zmenu.open>button{color:var(--navy)}
.zmenu>button svg{width:10px;height:10px;transition:transform .18s ease;opacity:.7}
.zmenu.open>button svg{transform:rotate(180deg)}
.zmega{
  position:absolute;inset-inline-start:0;top:calc(100% + 14px);z-index:60;
  background:var(--paper);border:1px solid var(--border);border-radius:var(--r-lg);
  box-shadow:var(--shadow-lg);padding:16px;min-width:330px;
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s ease,transform .16s ease,visibility .16s;
}
.zmenu.open .zmega{opacity:1;visibility:visible;transform:translateY(0)}
.zmega.wide{min-width:640px}
.zmega-grid{display:grid;grid-template-columns:1fr;gap:4px}
.zmega.wide .zmega-grid{grid-template-columns:1fr 1fr;gap:4px 18px}
.zmega-item{display:block;padding:10px 12px;border-radius:var(--r-sm);text-decoration:none}
.zmega-item:hover{background:var(--steel-50)}
.zmega-item .t{display:block;font-weight:700;color:var(--navy);font-size:15px}
.zmega-item .d{display:block;color:var(--faint);font-size:12.5px;margin-top:2px;line-height:1.45}
.zmega-foot{margin-top:10px;padding-top:12px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px}
.zmega-foot a{font-weight:700;color:var(--gold-700);font-size:13.5px;text-decoration:none}
.zmega-foot span{color:var(--faint);font-size:12.5px}

@media(max-width:980px){
  .zmenu{width:100%}
  .zmenu>button{width:100%;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border)}
  .zmega{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;
    padding:2px 0 10px;min-width:0;display:none;background:transparent}
  .zmenu.open .zmega{display:block}
  .zmega.wide .zmega-grid{grid-template-columns:1fr}
  .zmega-item{padding:9px 10px}
  .zmega-item .d{display:none}
}

/* ---------- hero with media ---------- */
.zhero{padding:64px 0 36px;position:relative;overflow:hidden;
  background:radial-gradient(900px 420px at 88% -12%,var(--gold-50),transparent 62%),
             radial-gradient(760px 420px at 0% 0%,var(--steel-50),transparent 58%)}
.zhero-grid{display:grid;grid-template-columns:1.02fr 0.98fr;gap:52px;align-items:center}
@media(max-width:980px){.zhero-grid{grid-template-columns:1fr;gap:32px}.zhero{padding:44px 0 28px}}
.zhero .display{margin-top:16px}
.zhero .lead{margin-top:18px;max-width:620px}
.zhero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

/* ---------- media frame (image now, video later) ---------- */
.zmedia{position:relative;margin:0;border-radius:var(--r-lg);overflow:hidden;
  border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow-lg)}
.zmedia img,.zmedia video{display:block;width:100%;height:100%;object-fit:cover}
.zmedia.r-16x9{aspect-ratio:16/9}
.zmedia.r-4x3{aspect-ratio:4/3}
.zmedia.r-1x1{aspect-ratio:1/1}
.zmedia figcaption{position:absolute;inset-inline:0;bottom:0;padding:10px 14px;font-size:12.5px;
  color:#fff;background:linear-gradient(to top,rgba(12,26,51,.78),transparent)}
.zmedia .zplay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(12,26,51,.22);border:0;cursor:pointer}
.zmedia .zplay i{width:62px;height:62px;border-radius:999px;background:var(--gold);
  display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg)}
.zmedia .zplay i:after{content:"";border-style:solid;border-width:11px 0 11px 18px;
  border-color:transparent transparent transparent var(--navy);margin-inline-start:4px}
.zmedia-stack{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.zmedia-stack .zmedia:first-child{grid-column:1/-1}

/* ---------- alternating feature rows ---------- */
.zrow{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-top:38px}
.zrow:first-of-type{margin-top:26px}
.zrow.rev .zrow-media{order:-1}
@media(max-width:900px){.zrow{grid-template-columns:1fr;gap:26px}.zrow.rev .zrow-media{order:0}}
.zrow h3{font-family:var(--f-display);font-weight:800;font-size:clamp(21px,2.1vw,27px);
  letter-spacing:-.02em;color:var(--navy);margin:10px 0 0}
html[lang="ar"] .zrow h3{font-family:var(--f-ar);letter-spacing:0}
.zrow p{color:var(--muted);margin-top:12px;font-size:16.5px}
.znum{width:34px;height:34px;border-radius:10px;background:var(--gold-100);color:var(--gold-700);
  font-family:var(--f-mono);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center}

/* ---------- stat band ---------- */
.zstats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:820px){.zstats{grid-template-columns:1fr}}
.zstat{background:rgba(235,239,246,.06);border:1px solid var(--on-navy-line);border-radius:var(--r-lg);padding:22px 24px}
.zstat .n{font-family:var(--f-display);font-weight:800;font-size:clamp(30px,3.4vw,42px);
  color:var(--gold);letter-spacing:-.02em;line-height:1.1}
html[lang="ar"] .zstat .n{font-family:var(--f-ar);letter-spacing:0}
.zstat .l{color:var(--on-navy-muted);font-size:14.5px;margin-top:8px;line-height:1.5}

/* ---------- logo strip ---------- */
.zlogos{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center}
.zlogos img{height:44px;width:auto;opacity:.62;filter:grayscale(1);transition:opacity .2s,filter .2s}
.zlogos img:hover{opacity:1;filter:none}
.zlogos-cap{text-align:center;color:var(--faint);font-size:12.5px;
  letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px;font-family:var(--f-mono)}
html[lang="ar"] .zlogos-cap{letter-spacing:0;font-family:var(--f-ar)}

/* ---------- gallery ---------- */
.zgal{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:820px){.zgal{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.zgal{grid-template-columns:1fr}}

/* ---------- breadcrumb ---------- */
.zcrumb{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--faint);flex-wrap:wrap}
.zcrumb a{color:var(--faint);text-decoration:none}
.zcrumb a:hover{color:var(--navy)}
.zcrumb .sep{opacity:.5}

/* ---------- FAQ polish ---------- */
.acc-q{cursor:pointer}

/* expanded feature copy */
.zrow .zlist{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:9px}
.zrow .zlist li{position:relative;padding-inline-start:24px;color:var(--muted);font-size:15.5px;line-height:1.55}
.zrow .zlist li:before{content:"";position:absolute;inset-inline-start:0;top:8px;width:9px;height:9px;
  border-radius:3px;background:var(--gold);opacity:.85}
.zrow p+p{margin-top:12px}

/* quick answer block (built to be quoted by AI engines) */
.zanswer{background:var(--paper);border:1px solid var(--border);border-inline-start:4px solid var(--gold);
  border-radius:var(--r-lg);padding:22px 26px;box-shadow:var(--shadow-sm);max-width:900px}
.zanswer-l{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-700)}
html[lang="ar"] .zanswer-l{font-family:var(--f-ar);letter-spacing:0}
.zanswer p{margin:10px 0 0;font-size:17.5px;line-height:1.65;color:var(--ink)}
.zasks{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-width:900px}
.zasks li{background:var(--paper);border:1px solid var(--border);border-radius:var(--r);padding:14px 18px;
  color:var(--navy);font-weight:600;font-size:16px}
.zasks li:before{content:"\201C";color:var(--gold);font-weight:800;margin-inline-end:4px}
.zasks li:after{content:"\201D";color:var(--gold);font-weight:800;margin-inline-start:4px}
.zchips{display:flex;flex-wrap:wrap;gap:9px}
.zchips span{background:var(--steel-50);border:1px solid var(--border);border-radius:var(--r-pill);
  padding:7px 14px;font-size:14px;color:var(--muted)}
