/* ======================================================
   الاتحاد العربي للمعارض والمؤتمرات الدولية
   مفهوم "مجلة فاخرة" Editorial Luxury — خطوط النسخ
   حبر دافئ + ذهبي + ورق  ·  ثابت بالكامل، بدون باك-إند
====================================================== */

:root{
  /* نمط ألوان "الأخضر المؤسسي" (ثيم 02) — نفس التصميم، ألوان جديدة فقط */
  --ink:      #0A3A26;   /* أخضر زمردي عميق (كان حبراً شبه أسود) */
  --ink-2:    #0B5D3B;   /* زمردي */
  --ink-3:    #0F6E48;
  --gold:     #C9A227;   /* نحاسي (كان ذهبياً) */
  --gold-2:   #DDBB4A;
  --gold-3:   #EBD79B;
  --paper:    #F4F1E9;   /* عاجي (كان ورقاً دافئاً) */
  --paper-2:  #ECE7D9;
  --paper-3:  #E1DAC8;
  --muted:    #4C6157;   /* مريمي داكن */
  --muted-2:  #7BA98F;   /* مريمي */
  --line:     rgba(10,58,38,.14);
  --line-l:   rgba(244,241,233,.18);

  --shadow:   0 30px 70px rgba(7,40,26,.28);
  --shadow-s: 0 14px 34px rgba(7,40,26,.14);

  --wrap: 1240px;
  --t: .5s cubic-bezier(.2,.7,.2,1);

  --naskh:  "IBM Plex Sans Arabic", "Tajawal", system-ui, sans-serif;  /* عناوين */
  --body:   "Tajawal", "IBM Plex Sans Arabic", system-ui, sans-serif;  /* نصوص */
}

*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; overflow-x:hidden; }
body{
  font-family:var(--body); color:var(--ink); background:var(--paper);
  line-height:2; font-size:18px; overflow-x:hidden;
  /* حُبيبات ورقية خفيفة للإحساس الطباعي */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.025'/%3E%3C/svg%3E");
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul,ol{ list-style:none; }
button{ font-family:inherit; cursor:pointer; border:none; background:none; }

.wrap{ width:min(var(--wrap),92%); margin-inline:auto; }

/* ===== Typography ===== */
.display{ font-family:var(--naskh); font-weight:700; line-height:1.32; color:var(--ink);
  font-size:clamp(1.9rem,4.4vw,3.6rem); letter-spacing:0; }
.light{ color:var(--paper); }
.u-gold{ color:var(--gold); }
em{ font-style:normal; color:var(--gold); }

.kicker{ display:block; font-family:var(--body); font-weight:700; font-size:.78rem;
  letter-spacing:.34em; color:var(--gold); margin-bottom:14px; }
.kicker--light{ color:var(--gold-2); }
.kicker--gold{ color:var(--gold-2); }

/* رقم القسم الضخم الزخرفي */
.sec-no{ font-family:var(--naskh); font-size:clamp(2.6rem,6vw,4.6rem); font-weight:700;
  line-height:1; color:transparent; -webkit-text-stroke:1.4px var(--gold);
  opacity:.55; display:block; margin-bottom:6px; }
.sec-no.light{ -webkit-text-stroke-color:var(--gold-2); opacity:.6; }

/* ===== Buttons ===== */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:var(--body); font-weight:700; font-size:1rem; padding:15px 34px;
  border:1.5px solid transparent; transition:var(--t); position:relative; }
.btn--gold{ background:var(--gold); color:var(--ink); }
.btn--gold:hover{ background:var(--gold-2); transform:translateY(-3px); box-shadow:0 16px 30px rgba(201,162,39,.35); }
.btn--line{ border-color:rgba(244,241,233,.5); color:var(--paper); }
.btn--line:hover{ background:var(--paper); color:var(--ink); transform:translateY(-3px); }
.btn--block{ width:100%; }

/* ===== Header ===== */
.hdr{ position:fixed; inset:0 0 auto 0; z-index:100; transition:var(--t); }
.hdr__inner{ width:min(var(--wrap),92%); margin-inline:auto; display:flex; align-items:center;
  justify-content:space-between; min-height:84px; }
.logo{ display:inline-flex; align-items:center; transition:var(--t);
  background:#fff; padding:8px 16px; border-radius:12px; box-shadow:0 6px 18px -6px rgba(0,0,0,.4); }
.logo:hover{ box-shadow:0 8px 22px -6px rgba(0,0,0,.5); }
.logo img{ height:46px; width:auto; transition:var(--t); }
.hdr.solid .logo img{ height:40px; }
.hdr.solid .logo{ padding:7px 14px; }
.hdr.solid{ background:rgba(10,58,38,.92); backdrop-filter:blur(10px); box-shadow:0 1px 0 var(--line-l); }
.hdr.solid .hdr__inner{ min-height:70px; }

.nav{ display:flex; align-items:center; gap:4px; }
.nav a{ color:var(--paper); font-weight:500; font-size:1rem; padding:8px 14px; position:relative; transition:var(--t); }
.nav a:not(.nav__cta)::after{ content:""; position:absolute; right:14px; left:14px; bottom:2px; height:1.5px;
  background:var(--gold-2); transform:scaleX(0); transform-origin:right; transition:var(--t); }
.nav a:not(.nav__cta):hover::after,
.nav a:not(.nav__cta).active::after{ transform:scaleX(1); }
.nav a.active{ color:var(--gold-2); }
.nav__cta{ border:1.5px solid var(--gold-2); color:var(--gold-2) !important; padding:9px 22px; margin-inline-start:8px; }
.nav__cta:hover{ background:var(--gold-2); color:var(--ink) !important; }

.langtog{ margin-inline-start:14px; border:1px solid var(--gold-2); color:var(--gold-2); padding:7px 15px;
  border-radius:40px; font-weight:700; font-size:.82rem; letter-spacing:.04em; transition:var(--t); white-space:nowrap; }
.langtog:hover{ background:var(--gold-2); color:var(--ink); }

.burger{ display:none; flex-direction:column; gap:5px; padding:8px; }
.burger span{ width:26px; height:2px; background:var(--paper); transition:var(--t); }
.burger.x span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.burger.x span:nth-child(2){ opacity:0; }
.burger.x span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* ===== Hero ===== */
/* z-index:0 (على عنصر positioned) ينشئ سياق تكديس يحتوي طبقات الهيرو دون كسر التركيب.
   ملاحظة: isolation:isolate هنا كان يكسر رسم الصورة/الحجاب (شاشة كريمية فارغة) على Chrome وSafari — لا تُعده. */
.hero{ position:relative; z-index:0; min-height:100vh; min-height:100svh; display:flex; flex-direction:column; justify-content:center;
  color:var(--paper); overflow:hidden; padding:120px 0 40px; }
/* الخلفية والحجاب بسياق تكديس الهيرو نفسه (z موجب) — يضمن ظهورهما على كل الأجهزة */
.hero__media{ position:absolute; inset:0; z-index:0; }
.hero__media img{ width:100%; height:100%; object-fit:cover; filter:grayscale(.25) contrast(1.05); }
.hero__veil{ position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(180deg, rgba(13,11,17,.52), rgba(11,9,15,.30) 32%, rgba(7,6,11,.94)),
    radial-gradient(80% 60% at 85% 15%, rgba(201,162,39,.26), transparent 60%); }
.hero__side{ position:absolute; top:50%; inset-inline-start:30px; transform:translateY(-50%) rotate(180deg);
  writing-mode:vertical-rl; font-family:var(--body); letter-spacing:.4em; font-size:.78rem;
  color:var(--gold-2); opacity:.75; }
/* محتوى الهيرو فوق الحجاب */
.hero__inner,.hero__stats,.hero__side,.hero__scroll{ position:relative; z-index:2; }
.hero__inner{ width:min(var(--wrap),92%); margin-inline:auto; max-width:920px; }
.hero__eyebrow{ display:inline-block; border:1px solid var(--line-l); background:rgba(0,0,0,.2);
  padding:8px 18px; font-size:.82rem; color:var(--gold-3); letter-spacing:.04em; margin-bottom:26px; }
.hero__title{ font-family:var(--naskh); font-weight:700; line-height:1.18;
  font-size:clamp(2.6rem,8vw,6rem); letter-spacing:-.005em; }
.hero__title .line{ display:block; }
.hero__title .ln-3{ color:var(--gold-2); }
.hero__lead{ font-size:clamp(1.05rem,2vw,1.4rem); color:#e8ddc8; max-width:640px; margin:26px 0 36px; line-height:1.9; }
.hero__cta{ display:flex; gap:16px; flex-wrap:wrap; }

.hero__stats{ width:min(var(--wrap),92%); margin:60px auto 0; display:flex; gap:clamp(20px,6vw,90px);
  border-top:1px solid var(--line-l); padding-top:28px; }
.hs b{ font-family:var(--naskh); font-size:clamp(2.4rem,5vw,3.6rem); font-weight:700; color:var(--gold-2); display:block; line-height:1; }
.hs span{ font-size:.92rem; color:#cdbfa6; }
.hero__scroll{ position:absolute; bottom:26px; left:50%; transform:translateX(-50%); width:26px; height:42px;
  border:1.5px solid var(--gold-2); border-radius:14px; display:grid; place-items:start center; padding-top:7px; }
.hero__scroll span{ width:4px; height:8px; background:var(--gold-2); border-radius:2px; animation:scrolldot 1.6s infinite; }
@keyframes scrolldot{ 0%{opacity:0;transform:translateY(-3px)} 40%{opacity:1} 100%{opacity:0;transform:translateY(10px)} }

/* ===== Marquee ===== */
.marquee{ position:relative; background:var(--ink); color:var(--paper); padding:20px 0; overflow:hidden;
  white-space:nowrap; border-block:1px solid var(--ink-3); width:100%; max-width:100vw; }
.marquee__track{ display:inline-flex; align-items:center; gap:26px; width:max-content; will-change:transform;
  animation:marq 38s linear infinite; }
.marquee span{ font-family:var(--naskh); font-size:1.5rem; font-weight:700; opacity:.9; }
.marquee i{ color:var(--gold); font-style:normal; font-size:.9rem; }
@keyframes marq{ from{transform:translateX(0)} to{transform:translateX(50%)} }

/* ===== About ===== */
.about{ padding:clamp(70px,10vw,130px) 0; }
.about__grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(34px,5vw,70px); align-items:start; }
.about__head{ grid-column:1 / -1; max-width:760px; }
.about__lead p{ color:var(--muted); margin-bottom:18px; font-size:1.08rem; }
.about__mission{ font-family:var(--naskh); font-size:clamp(1.2rem,2.4vw,1.7rem); color:var(--ink) !important;
  line-height:1.7; border-inline-start:3px solid var(--gold); padding-inline-start:22px; }
.about__fig{ position:relative; }
.about__fig img{ width:100%; height:100%; min-height:280px; object-fit:cover; filter:grayscale(.15); }
.about__fig figcaption{ position:absolute; bottom:0; inset-inline:0; background:linear-gradient(transparent,rgba(10,58,38,.85));
  color:var(--paper); font-size:.85rem; padding:30px 20px 14px; }

.goals{ grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:30px;
  border-top:1px solid var(--line); }
.goals li{ padding:34px 26px 30px; border-inline-start:1px solid var(--line); position:relative; }
.goals li:first-child{ border-inline-start:none; }
.goals__no{ font-family:var(--naskh); font-size:1.4rem; color:var(--gold); font-weight:700; }
.goals h3{ font-family:var(--naskh); font-size:1.45rem; font-weight:700; margin:10px 0 8px; }
.goals p{ color:var(--muted); font-size:1rem; }

/* ===== Secretary General ===== */
.sg{ background:var(--ink); color:var(--paper); padding:clamp(70px,9vw,120px) 0; position:relative; overflow:hidden; }
.sg::before{ content:""; position:absolute; inset:0; opacity:.5;
  background:radial-gradient(60% 80% at 100% 0,rgba(201,162,39,.22),transparent 60%); }
.sg__grid{ display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(30px,5vw,70px); align-items:center; position:relative; }
.sg__photo{ position:relative; }
.sg__photo img{ width:100%; object-fit:cover; border:1px solid var(--line-l); filter:grayscale(.2) contrast(1.02); }
.sg__badge{ position:absolute; bottom:-14px; inset-inline-end:-6px; background:var(--gold); color:var(--ink);
  font-weight:700; padding:8px 20px; font-size:.9rem; }
.sg__quote{ font-family:var(--naskh); font-size:clamp(1.4rem,3vw,2.3rem); line-height:1.7; color:var(--paper);
  position:relative; padding-top:18px; }
.sg__quote::before{ content:"”"; font-family:var(--naskh); font-size:4rem; color:var(--gold); line-height:0;
  display:block; height:30px; }
.sg__sign{ margin-top:28px; padding-top:20px; border-top:1px solid var(--line-l); }
.sg__sign strong{ font-family:var(--naskh); font-size:1.35rem; color:var(--gold-2); display:block; }
.sg__sign span{ color:#cdbfa6; font-size:.95rem; }

/* ===== Board of Directors ===== */
.board{ padding:clamp(70px,10vw,130px) 0; }
.board__head{ max-width:760px; margin-bottom:46px; }
.board__sub{ color:var(--muted); margin-top:12px; font-size:1.05rem; }
.board__lead{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; max-width:720px; margin:0 auto 24px; }
.board__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.bm{ position:relative; background:#fff; border:1px solid var(--line); padding:30px 18px 24px; text-align:center;
  overflow:hidden; transition:var(--t); }
.bm::before{ content:""; position:absolute; top:0; right:0; left:0; height:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold-2)); transform:scaleX(0); transform-origin:right; transition:var(--t); }
.bm:hover{ transform:translateY(-6px); box-shadow:var(--shadow-s); }
.bm:hover::before{ transform:scaleX(1); }
.bm__photo{ display:block; position:relative; width:92px; height:92px; margin:0 auto 16px; border-radius:50%;
  overflow:hidden; border:2px solid var(--gold); background:linear-gradient(150deg,var(--ink),var(--ink-3)); }
.bm__photo img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  object-position: var(--pos, 50% 28%); } /* بؤرة افتراضية تميل للوجه؛ تُضبط ديناميكياً من الأدمن عبر --pos */
.bm__fb{ position:absolute; inset:0; display:grid; place-items:center; font-family:var(--naskh); font-weight:700;
  font-size:2rem; color:var(--gold); }
.bm__name{ font-family:var(--naskh); font-size:1.15rem; font-weight:700; margin-bottom:4px; }
.bm__role{ color:var(--muted); font-size:.9rem; display:block; }
.bm__country{ display:block; margin-top:6px; font-size:.82rem; color:var(--gold); font-weight:500; }
.bm--lead{ background:linear-gradient(155deg,var(--ink),var(--ink-2)); border-color:transparent; padding:40px 24px; }
.bm--lead::before{ height:4px; }
.bm--lead .bm__photo{ width:122px; height:122px; border-color:var(--gold-2); margin-bottom:20px; }
.bm--lead .bm__name{ color:#fff; font-size:1.5rem; }
.bm--lead .bm__role{ color:var(--gold-2); font-weight:700; }
.bm--lead .bm__country{ color:var(--gold-2); }

/* ===== Board tiers: الرئيس / النواب / الأعضاء ===== */
.board__tier{ font-family:var(--naskh); font-weight:700; font-size:1rem; letter-spacing:.02em;
  color:var(--gold-deep,#8f6a22); text-align:center; margin:38px 0 20px; }
.board__tier::before,.board__tier::after{ content:""; display:inline-block; width:38px; height:1px;
  background:var(--line); vertical-align:middle; margin:0 14px; }
.board__tier--pres{ margin-top:4px; }
.board__president{ display:flex; justify-content:center; }
.board__president .bm{ width:100%; max-width:360px; }
.board__deputies{ display:grid; grid-template-columns:repeat(2,minmax(0,250px)); gap:24px; justify-content:center; margin-top:4px; }
.bm--president,.bm--deputy{ background:linear-gradient(155deg,var(--ink),var(--ink-2)); border-color:transparent; padding:40px 24px; }
.bm--president::before,.bm--deputy::before{ height:4px; }
.bm--president .bm__photo,.bm--deputy .bm__photo{ width:122px; height:122px; border-color:var(--gold-2); margin-bottom:20px; }
.bm--president .bm__name,.bm--deputy .bm__name{ color:#fff; }
.bm--president .bm__role,.bm--deputy .bm__role{ color:var(--gold-2); font-weight:700; }
.bm--president .bm__country,.bm--deputy .bm__country{ color:var(--gold-2); }
.bm--deputy .bm__name{ font-size:1.35rem; }
.bm--president{ padding:48px 30px; }
.bm--president .bm__photo{ width:148px; height:148px; }
.bm--president .bm__name{ font-size:1.7rem; }
@media (max-width:560px){ .board__deputies{ grid-template-columns:1fr; max-width:300px; margin-inline:auto; } }

/* ===== Committees ===== */
.committees{ background:var(--paper-2); padding:clamp(70px,10vw,130px) 0; }
.committees__head{ max-width:760px; margin-bottom:46px; }
.committees__sub{ color:var(--muted); margin-top:12px; font-size:1.05rem; }
.committees__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.cmt{ position:relative; background:#fff; border:1px solid var(--line); padding:32px 26px; transition:var(--t); overflow:hidden; }
.cmt::before{ content:""; position:absolute; top:0; right:0; left:0; height:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold-2)); transform:scaleX(0); transform-origin:right; transition:var(--t); }
.cmt:hover{ transform:translateY(-6px); box-shadow:var(--shadow-s); }
.cmt:hover::before{ transform:scaleX(1); }
.cmt__no{ font-family:var(--naskh); font-weight:700; font-size:1.7rem; color:transparent;
  -webkit-text-stroke:1.4px var(--gold); opacity:.7; }
.cmt h3{ font-family:var(--naskh); font-size:1.35rem; font-weight:700; margin:10px 0 16px; }
.cmt__head{ border-top:1px solid var(--line); padding-top:14px; }
.cmt__head strong{ display:block; color:var(--ink); font-size:1.02rem; margin-bottom:2px; }
.cmt__head span{ color:var(--muted); font-size:.88rem; }

/* ===== Agenda ===== */
.agenda{ padding:clamp(70px,10vw,130px) 0; }
.agenda__head{ display:flex; justify-content:space-between; align-items:flex-end; gap:30px;
  border-bottom:2px solid var(--ink); padding-bottom:24px; flex-wrap:wrap; }
.agenda__intro{ color:var(--muted); max-width:340px; }
.agenda__list{ margin-top:6px; }
.ag{ display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:30px;
  padding:30px 6px; border-bottom:1px solid var(--line); transition:var(--t); position:relative; }
.ag::before{ content:""; position:absolute; inset:0; background:var(--ink); transform:scaleX(0); transform-origin:right;
  transition:var(--t); z-index:-1; }
.ag:hover{ padding-inline:26px; color:var(--paper); }
.ag:hover::before{ transform:scaleX(1); }
.ag__date{ text-align:center; min-width:64px; }
.ag__date b{ font-family:var(--naskh); font-size:2.4rem; font-weight:700; color:var(--gold); display:block; line-height:1; }
.ag__date span{ font-size:.85rem; color:var(--muted); }
.ag:hover .ag__date span{ color:var(--gold-3); }
.ag__tag{ display:inline-block; font-size:.74rem; font-weight:700; letter-spacing:.1em; color:var(--gold);
  border:1px solid var(--gold); padding:3px 12px; margin-bottom:8px; }
.ag__tag--c{ color:var(--muted); border-color:var(--muted); }
.ag:hover .ag__tag--c{ color:var(--gold-3); border-color:var(--gold-3); }
.ag__main h3{ font-family:var(--naskh); font-size:clamp(1.2rem,2.2vw,1.7rem); font-weight:700; }
.ag__loc{ color:var(--muted); font-size:.95rem; white-space:nowrap; }
.ag:hover .ag__loc{ color:#cdbfa6; }
.ag__go{ font-size:1.6rem; color:var(--gold); transition:var(--t); }
.ag:hover .ag__go{ transform:translateX(-8px); color:var(--gold-2); }

/* ===== Members ===== */
.members{ background:var(--ink-2); color:var(--paper); padding:clamp(70px,9vw,120px) 0; }
.members__head{ max-width:760px; margin-bottom:46px; }
.members__grid{ display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; background:var(--line-l);
  border:1px solid var(--line-l); max-width:100%; }
.mlogo{ background:#fff; aspect-ratio:1.7/1; display:grid; place-items:center; padding:24px; min-width:0;
  overflow:hidden; transition:var(--t); }
.mlogo:hover{ background:#fff; }
.mlogo img{ max-height:84px; max-width:100%; width:auto; object-fit:contain;
  opacity:1; transition:var(--t); }
.mlogo:hover img{ transform:scale(1.06); }
.mlogo--join{ background:var(--gold); }
.mlogo--join:hover{ background:var(--gold-2); }
.mlogo--join span{ font-family:var(--naskh); font-weight:700; font-size:1.15rem; color:var(--ink);
  text-align:center; line-height:1.5; }

.countries{ position:relative; margin-top:56px; text-align:center; border-top:1px solid var(--line-l); padding-top:54px; }
.countries__big{ position:absolute; top:-26px; left:50%; transform:translateX(-50%); z-index:0;
  font-family:var(--naskh); font-weight:700; font-size:clamp(9rem,26vw,20rem); line-height:.8;
  color:transparent; -webkit-text-stroke:2px var(--gold); opacity:.07; pointer-events:none; user-select:none; }
.countries__head{ position:relative; z-index:1; margin-bottom:40px; }
.countries__label{ font-family:var(--naskh); font-size:clamp(1.5rem,3vw,2.2rem); color:var(--paper); display:block; }
.countries__sub{ color:var(--gold-2); font-size:1rem; margin-top:8px; }

.flags{ position:relative; z-index:1; display:flex; flex-wrap:wrap; justify-content:center;
  gap:30px 26px; max-width:1080px; margin-inline:auto; }
.flag{ width:104px; text-align:center; opacity:0; transform:translateY(26px) scale(.8);
  transition:opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1); transition-delay:calc(var(--i,0) * 45ms); }
.countries.in .flag{ opacity:1; transform:none; }
.flag__img{ display:grid; place-items:center; width:96px; height:64px; margin-inline:auto; border-radius:8px;
  overflow:hidden; background:#fff; border:1px solid var(--line-l); box-shadow:0 8px 20px rgba(0,0,0,.35);
  transition:var(--t); position:relative; }
.flag__img::after{ content:""; position:absolute; inset:0; border-radius:8px;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.08); }
.flag__img img{ width:100%; height:100%; object-fit:cover; transition:var(--t); }
.flag:hover .flag__img{ transform:translateY(-8px) scale(1.06); border-color:var(--gold);
  box-shadow:0 18px 34px rgba(0,0,0,.5), 0 0 0 4px rgba(201,162,39,.25); }
.flag:hover .flag__img img{ transform:scale(1.12); }
.flag__name{ display:block; margin-top:12px; font-size:.92rem; color:#cdbfa6; transition:var(--t); }
.flag:hover .flag__name{ color:var(--gold-2); }

/* ===== Press ===== */
.press{ padding:clamp(70px,10vw,130px) 0; }
.press__head{ max-width:760px; margin-bottom:46px; }
.press__grid{ display:grid; grid-template-columns:1.5fr 1fr; gap:34px; align-items:stretch; }
.feat{ grid-row:span 2; display:flex; flex-direction:column; border:1px solid var(--line); background:var(--paper-2);
  transition:var(--t); cursor:pointer; }
.feat:focus-visible,.mini:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; }
.feat:hover{ transform:translateY(-6px); box-shadow:var(--shadow-s); }
.feat__media{ overflow:hidden; aspect-ratio:16/10; }
.feat__media img{ width:100%; height:100%; object-fit:cover; transition:var(--t); }
.feat:hover .feat__media img{ transform:scale(1.05); }
.feat__body{ padding:30px 30px 34px; }
.feat__body h3{ font-family:var(--naskh); font-size:clamp(1.4rem,2.6vw,2rem); font-weight:700; line-height:1.45; margin:12px 0 14px; }
.feat__body p{ color:var(--muted); margin-bottom:16px; }

.mini{ display:grid; grid-template-columns:.8fr 1.2fr; border:1px solid var(--line); background:var(--paper-2);
  transition:var(--t); overflow:hidden; cursor:pointer; }
.mini:hover{ transform:translateY(-6px); box-shadow:var(--shadow-s); }
.mini__media{ overflow:hidden; }
.mini__media img{ width:100%; height:100%; object-fit:cover; min-height:150px; transition:var(--t); }
.mini:hover .mini__media img{ transform:scale(1.06); }
.mini__body{ padding:22px 24px; align-self:center; }
.mini__body h3{ font-family:var(--naskh); font-size:1.25rem; font-weight:700; line-height:1.5; margin-top:8px; }

.tagline{ font-size:.74rem; font-weight:700; letter-spacing:.18em; color:var(--gold); }
.readmore{ font-weight:700; color:var(--gold); transition:var(--t); }
.readmore:hover{ color:var(--ink); }
.feat h3 a:hover,.mini h3 a:hover{ color:var(--gold); }

/* ===== Magazine ===== */
.magazine{ background:var(--paper-2); padding:clamp(70px,10vw,130px) 0; }
.mag__head{ max-width:760px; margin-bottom:46px; }
.mag__sub{ color:var(--muted); margin-top:12px; font-size:1.05rem; }
.mag__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; max-width:900px; margin-inline:auto; }
.mag{ background:#fff; border:1px solid var(--line); transition:var(--t); overflow:hidden; }
.mag:hover{ transform:translateY(-8px); box-shadow:var(--shadow); }
.mag__cover{ position:relative; display:block; aspect-ratio:700/990; overflow:hidden; background:var(--ink); }
.mag__cover img{ width:100%; height:100%; object-fit:cover; transition:transform .5s cubic-bezier(.2,.8,.2,1); }
.mag:hover .mag__cover img{ transform:scale(1.05); }
.mag__view{ position:absolute; inset:0; display:grid; place-items:center; background:rgba(10,58,38,.55);
  color:var(--paper); font-family:var(--naskh); font-size:1.3rem; opacity:0; transition:var(--t); }
.mag__view::before{ content:"⤢"; margin-inline-end:8px; color:var(--gold-2); }
.mag:hover .mag__view{ opacity:1; }
.mag__body{ padding:24px; text-align:center; }
.mag__body h3{ font-family:var(--naskh); font-size:1.4rem; margin-bottom:16px; }

/* ===== Sponsor CTA ===== */
.sponsor{ position:relative; color:var(--paper); padding:clamp(80px,11vw,150px) 0; overflow:hidden; }
.sponsor__media{ position:absolute; inset:0; z-index:-2; }
.sponsor__media img{ width:100%; height:100%; object-fit:cover; filter:grayscale(.4); }
.sponsor__veil{ position:absolute; inset:0; z-index:-1;
  background:linear-gradient(120deg,rgba(10,58,38,.95) 35%,rgba(10,58,38,.65)); }
.sponsor__inner{ max-width:760px; }
.sponsor__inner p{ font-size:1.15rem; color:#e8ddc8; margin:8px 0 30px; }
.tiers{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:34px; }
.tier{ border:1px solid var(--line-l); padding:22px 20px; transition:var(--t); }
.tier:hover{ background:rgba(244,241,233,.05); transform:translateY(-5px); }
.tier span{ font-family:var(--naskh); font-size:1.4rem; font-weight:700; color:var(--paper); display:block; margin-bottom:6px; }
.tier small{ color:#cdbfa6; font-size:.9rem; line-height:1.6; display:block; }
.tier--g{ border-color:var(--gold); background:rgba(201,162,39,.14); }
.tier--g span{ color:var(--gold-2); }

/* ===== Contact ===== */
.contact{ padding:clamp(70px,10vw,130px) 0; }
.contact__grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(34px,6vw,80px); align-items:start; }
.contact__info p{ color:var(--muted); margin:8px 0 26px; }
.cinfo{ display:grid; gap:18px; margin-bottom:28px; }
.cinfo li{ border-inline-start:2px solid var(--gold); padding-inline-start:18px; }
.cinfo span:first-child{ display:block; font-size:.76rem; font-weight:700; letter-spacing:.16em; color:var(--gold); }
.cinfo a:hover{ color:var(--gold); }
.social{ display:flex; flex-wrap:wrap; gap:10px; }
.social a{ border:1px solid var(--line); padding:9px 18px; font-size:.86rem; font-weight:500; transition:var(--t); }
.social a:hover{ background:var(--ink); color:var(--paper); border-color:var(--ink); }

.cform{ background:var(--ink); padding:clamp(28px,4vw,44px); }
.fld{ margin-bottom:14px; }
.fld input,.fld textarea{ width:100%; padding:15px 18px; background:#F4F1E9; border:1px solid rgba(10,58,38,.18);
  color:var(--ink); font-family:inherit; font-size:1rem; transition:var(--t); resize:vertical; }
.fld input::placeholder,.fld textarea::placeholder{ color:rgba(10,58,38,.5); }
.fld input:focus,.fld textarea:focus{ outline:none; border-color:var(--gold); background:#fff; box-shadow:0 0 0 3px rgba(201,162,39,.16); }
.cform__note{ display:block; text-align:center; color:#7ba98f; font-size:.82rem; margin-top:12px; }

/* ===== Footer ===== */
.ftr{ background:var(--ink); color:#cdbfa6; padding-top:clamp(54px,7vw,86px); }
.ftr__top{ display:grid; grid-template-columns:1.7fr 1fr 1fr 1.4fr; gap:36px; padding-bottom:46px; }
.ftr__brand img{ height:56px; width:auto; margin-bottom:18px; }
.ftr__brand p{ font-size:.96rem; line-height:1.9; max-width:320px; }
.ftr__col h4,.ftr__news h4{ font-family:var(--naskh); color:var(--paper); font-size:1.2rem; margin-bottom:16px; }
.ftr__col a{ display:block; padding:5px 0; transition:var(--t); font-size:.96rem; }
.ftr__col a:hover{ color:var(--gold-2); padding-inline-start:6px; }
.ftr__news p{ font-size:.96rem; margin-bottom:14px; }
.ftr__form{ display:flex; border:1px solid var(--line-l); }
.ftr__form input{ flex:1; background:#F4F1E9; border:none; padding:12px 16px; color:var(--ink); font-family:inherit; outline:none; }
.ftr__form input::placeholder{ color:rgba(10,58,38,.5); }
.ftr__form button{ background:var(--gold); color:var(--ink); padding:0 22px; font-weight:700; transition:var(--t); }
.ftr__form button:hover{ background:var(--gold-2); }
.ftr__bottom{ border-top:1px solid var(--line-l); padding:22px 0; display:flex; justify-content:space-between;
  align-items:center; flex-wrap:wrap; gap:10px; font-size:.86rem; }
.ftr__concept{ color:var(--gold-2); }
.ftr__concept a{ color:var(--gold-2); font-weight:700; border-bottom:1px solid transparent; transition:var(--t); }
.ftr__concept a:hover{ border-bottom-color:var(--gold-2); }

/* ===== Reveal ===== */
.reveal{ opacity:0; transform:translateY(30px); transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1); }
.reveal.in{ opacity:1; transform:none; }

/* ===== Loading Overlay ===== */
.loader{ position:fixed; inset:0; z-index:9999; background:var(--ink); display:grid; place-items:center;
  transition:opacity .7s ease, visibility .7s; }
.loader::before{ content:""; position:absolute; inset:0; opacity:.6;
  background:radial-gradient(60% 60% at 50% 40%, rgba(201,162,39,.18), transparent 70%); }
.loader.done{ opacity:0; visibility:hidden; }
.loader__inner{ position:relative; text-align:center; }
.loader__logo{ display:inline-flex; animation:loaderPop .8s cubic-bezier(.2,.8,.2,1) both; }
.loader__logo img{ height:74px; width:auto; filter:drop-shadow(0 4px 14px rgba(0,0,0,.4)); }
@keyframes loaderPop{ 0%{ opacity:0; transform:translateY(14px) scale(.9); } 100%{ opacity:1; transform:none; } }
.loader__bar{ width:220px; height:3px; margin:30px auto 0; background:rgba(244,241,233,.14);
  border-radius:3px; overflow:hidden; position:relative; }
.loader__bar::after{ content:""; position:absolute; inset:0; width:42%; background:linear-gradient(90deg,transparent,var(--gold),var(--gold-2),transparent);
  border-radius:3px; animation:loaderBar 1.15s ease-in-out infinite; }
@keyframes loaderBar{ 0%{ transform:translateX(-120%); } 100%{ transform:translateX(360%); } }
.loader__text{ display:block; margin-top:22px; color:var(--gold-2); font-family:var(--naskh); font-size:1.05rem;
  letter-spacing:.02em; opacity:0; animation:loaderFade .8s ease .25s both; }
@keyframes loaderFade{ to{ opacity:1; } }
body.loading{ overflow:hidden; }

/* ===== News Modal ===== */
.modal{ position:fixed; inset:0; z-index:200; display:flex; align-items:center; justify-content:center;
  padding:24px; visibility:hidden; opacity:0; transition:opacity .4s ease, visibility .4s; }
.modal.open{ visibility:visible; opacity:1; }
.modal__overlay{ position:absolute; inset:0; background:rgba(10,8,4,.72); backdrop-filter:blur(6px); cursor:pointer; }
.modal__dialog{ position:relative; z-index:1; width:min(820px,100%); max-height:90vh; overflow:auto;
  background:var(--paper); box-shadow:0 50px 120px rgba(0,0,0,.6); transform:translateY(40px) scale(.96);
  opacity:0; transition:transform .5s cubic-bezier(.2,.8,.2,1), opacity .5s; border-top:4px solid var(--gold); }
.modal.open .modal__dialog{ transform:none; opacity:1; }
.modal__dialog::-webkit-scrollbar{ width:8px; }
.modal__dialog::-webkit-scrollbar-thumb{ background:var(--gold); border-radius:4px; }
.modal__close{ position:absolute; top:14px; inset-inline-start:14px; z-index:3; width:44px; height:44px;
  border-radius:50%; background:rgba(10,8,4,.55); color:#fff; font-size:1.8rem; line-height:1; display:grid;
  place-items:center; transition:var(--t); backdrop-filter:blur(4px); }
.modal__close:hover{ background:var(--gold); color:var(--ink); transform:rotate(90deg); }
.modal__media{ position:relative; height:clamp(220px,38vh,360px); overflow:hidden; }
.modal__media img{ width:100%; height:100%; object-fit:cover; }
.modal__media::after{ content:""; position:absolute; inset:0;
  background:linear-gradient(to top, rgba(10,58,38,.85), transparent 55%); }
.modal__cat{ position:absolute; bottom:18px; inset-inline-end:28px; z-index:2; background:var(--gold);
  color:var(--ink); font-weight:700; font-size:.82rem; padding:6px 16px; letter-spacing:.08em; }
.modal__content{ padding:clamp(24px,4vw,46px); }
.modal__date{ display:block; color:var(--gold); font-weight:700; font-size:.85rem; letter-spacing:.1em; margin-bottom:10px; }
.modal__title{ font-family:var(--naskh); font-size:clamp(1.5rem,3.4vw,2.3rem); line-height:1.4; margin-bottom:20px; }
.modal__text p{ color:var(--muted); margin-bottom:16px; font-size:1.05rem; line-height:1.95; }
.modal__text p:first-child::first-letter{ font-family:var(--naskh); font-size:2.4em; font-weight:700;
  color:var(--gold); float:inline-start; line-height:.9; margin-inline-end:8px; margin-top:4px; }
.modal__foot{ display:flex; align-items:center; gap:16px; margin-top:28px; padding-top:22px;
  border-top:1px solid var(--line); }
.modal__foot > span{ font-weight:700; color:var(--ink); }
.modal__share{ display:flex; gap:10px; }
.modal__share a{ width:40px; height:40px; border:1px solid var(--line); border-radius:50%; display:grid;
  place-items:center; font-weight:700; transition:var(--t); }
.modal__share a:hover{ background:var(--ink); color:var(--paper); border-color:var(--ink); transform:translateY(-3px); }
body.modal-open{ overflow:hidden; }

/* ===== Responsive ===== */
@media (max-width:980px){
  /* مهم: backdrop-filter على الهيدر يُنشئ containing block يحصر القائمة الثابتة — نُلغيه على الموبايل */
  .hdr.solid{ -webkit-backdrop-filter:none; backdrop-filter:none; background:rgba(10,58,38,.97); }
  .nav{ position:fixed; inset:0 0 0 auto; width:min(330px,86%); height:100vh; background:var(--ink);
    flex-direction:column; align-items:stretch; justify-content:center; gap:6px; padding:90px 26px 40px;
    overflow-y:auto; transform:translateX(100%); transition:transform var(--t); box-shadow:var(--shadow); z-index:99; }
  .nav.open{ transform:translateX(0); }
  .nav a{ font-family:var(--naskh); font-size:1.3rem; padding:10px 6px; }
  .nav__cta{ text-align:center; margin-top:10px; }
  .burger{ display:flex; z-index:101; }
  .langtog{ margin-inline-start:auto; margin-inline-end:10px; padding:6px 13px; font-size:.78rem; }
  .about__grid{ grid-template-columns:1fr; }
  .goals{ grid-template-columns:1fr; }
  .goals li{ border-inline-start:none; border-top:1px solid var(--line); }
  .goals li:first-child{ border-top:none; }
  .sg__grid{ grid-template-columns:1fr; }
  .sg__photo{ max-width:420px; }
  .members__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .board__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .committees__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .flags{ grid-template-columns:repeat(6,1fr); }
  .press__grid{ grid-template-columns:1fr; }
  .feat{ grid-row:auto; }
  .contact__grid{ grid-template-columns:1fr; }
  .tiers{ grid-template-columns:1fr; }
  .ftr__top{ grid-template-columns:1fr 1fr; }
  /* توسيط رؤوس الأقسام لإزالة الفراغ الجانبي غير المتوازن على الشاشات الصغيرة */
  .about__head, .board__head, .committees__head, .members__head, .press__head, .mag__head,
  .sponsor__inner, .sg__body{ text-align:center; }
  .agenda__head{ flex-direction:column; align-items:center; text-align:center; gap:14px; }
  .agenda__intro{ max-width:none; }
}
@media (max-width:600px){
  body{ font-size:17px; }
  .hero__side{ display:none; }
  .hero__stats{ flex-wrap:wrap; gap:24px; }
  .ag{ grid-template-columns:auto 1fr; gap:16px; }
  .ag__loc,.ag__go{ display:none; }
  .members__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .board__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .board__lead{ grid-template-columns:1fr; }
  .committees__grid{ grid-template-columns:1fr; }
  .flags{ grid-template-columns:repeat(4,1fr); }
  .mag__grid{ grid-template-columns:1fr; max-width:340px; }
  .mini{ grid-template-columns:1fr; }
  .ftr__top{ grid-template-columns:1fr; }
  .ftr__bottom{ justify-content:center; text-align:center; }
}
@media (prefers-reduced-motion:reduce){
  .marquee__track{ animation:none; }
  .reveal{ transition:none; opacity:1; transform:none; }
  .hero__scroll span{ animation:none; }
}

/* ============================================================
   باقات العضوية + دليل الأعضاء + نموذج الانضمام
   (أضيفت مع لوحة التحكم — الأقسام مولّدة من قاعدة البيانات)
   ============================================================ */
.pkgs{padding:clamp(64px,9vw,120px) 0;background:var(--paper)}
.pkgs__head{max-width:720px;margin-bottom:44px}
.pkgs__sub{color:rgba(10,58,38,.62);margin-top:12px;line-height:1.9}
/* flex بدل grid: يضمن تساوي أطوال البطاقات داخل كل صف (stretch افتراضي)
   ويوسّط الصف الأخير الناقص — الباقات ٥ فتصير ٣+٢ متوسّطة بدل ٤+١ يتيمة. */
.pkgs__grid{display:flex;flex-wrap:wrap;justify-content:center;gap:18px}
.pkg{flex:0 1 calc(33.333% - 12px);min-width:258px;max-width:400px;
  position:relative;background:#fff;border:1px solid rgba(10,58,38,.12);border-radius:14px;
  padding:26px 22px;display:flex;flex-direction:column;transition:.25s}
@media(max-width:900px){.pkg{flex:0 1 calc(50% - 9px)}}
@media(max-width:620px){.pkg{flex:1 1 100%;max-width:none}}
.pkg:hover{transform:translateY(-4px);box-shadow:0 24px 50px -18px rgba(10,58,38,.28);border-color:var(--gold)}
.pkg--pop{border-color:var(--gold);box-shadow:0 20px 44px -20px rgba(201,162,39,.5)}
.pkg__badge{position:absolute;top:-11px;inset-inline-start:22px;background:var(--gold);color:#fff;
  font-family:'IBM Plex Sans Arabic';font-size:11px;font-weight:700;border-radius:20px;padding:4px 13px;letter-spacing:.04em}
.pkg__n{font-family:'IBM Plex Sans Arabic';font-size:17px;font-weight:700;color:var(--ink);margin-bottom:12px;line-height:1.45}
.pkg__p{display:flex;align-items:baseline;gap:7px;padding-bottom:16px;margin-bottom:16px;
  border-bottom:1px solid rgba(10,58,38,.1);flex-wrap:wrap}
.pkg__p b{font-family:'IBM Plex Sans Arabic';font-size:34px;font-weight:700;color:var(--gold-deep,#8f6a22);
  line-height:1;white-space:nowrap}
/* الأسعار المجالية (٢٬٥٠٠ – ٥٬٠٠٠) أطول — نصغّرها حتى لا تنكسر سطرين */
.pkg__p--range b{font-size:25px}
.pkg__p span{font-size:12px;color:rgba(10,58,38,.55)}
.pkg__t{font-size:12.5px;line-height:1.85;color:rgba(10,58,38,.6);margin-bottom:16px}
.pkg__f{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-direction:column;gap:9px}
/* الزر يُثبَّت أسفل البطاقة فتتحاذى كل الأزرار على خط واحد */
.pkg .btn{margin-top:auto}
.pkg__f li{position:relative;padding-inline-start:22px;font-size:13px;line-height:1.7;color:rgba(10,58,38,.82)}
.pkg__f li::before{content:"✓";position:absolute;inset-inline-start:0;color:var(--gold);font-weight:700}

.dir{padding:clamp(64px,9vw,120px) 0;background:#fff}
.dir__head{max-width:720px;margin-bottom:28px}
.dir__sub{color:rgba(10,58,38,.62);margin-top:12px;line-height:1.9}
.dir__ctrl{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}
.dir__q{flex:1;min-width:220px}
.dir__q,.dir__s{padding:11px 14px;border:1px solid rgba(10,58,38,.16);border-radius:9px;background:var(--paper);
  font-family:inherit;font-size:13.5px;color:var(--ink)}
.dir__q:focus,.dir__s:focus{outline:2px solid var(--gold);border-color:transparent}
.dir__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:14px}
.dcard{background:var(--paper);border:1px solid rgba(10,58,38,.1);border-radius:12px;padding:20px 18px;
  display:flex;flex-direction:column;align-items:center;text-align:center;transition:.2s}
.dcard:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 18px 38px -18px rgba(10,58,38,.26)}
.dcard__logo{height:62px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.dcard__logo img{max-height:62px;max-width:130px;object-fit:contain;filter:grayscale(1);opacity:.82;transition:.2s}
.dcard:hover .dcard__logo img{filter:none;opacity:1}
.dcard__n{font-family:'IBM Plex Sans Arabic';font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.55;margin-bottom:6px}
.dcard__m{font-size:11.5px;color:rgba(10,58,38,.55);margin-bottom:9px}
.dcard__b{font-size:10.5px;font-weight:700;border-radius:20px;padding:3px 11px;
  background:rgba(10,58,38,.07);color:rgba(10,58,38,.62);font-family:'IBM Plex Sans Arabic'}
.dcard__b--strategic{background:rgba(201,162,39,.18);color:#8f6a22}
.dcard__b--professional{background:rgba(60,90,160,.13);color:#3a5aa0}
.dcard__b--government{background:rgba(47,107,69,.13);color:#2f6b45}
.dcard__w{margin-top:11px;font-size:11.5px;color:var(--gold);text-decoration:none;font-weight:700}
.dcard__w:hover{text-decoration:underline}
.dcard[hidden]{display:none}
.dir__empty{text-align:center;padding:44px;color:rgba(10,58,38,.5)}

.modal__dialog--form{max-width:520px}
.jform{padding:34px 30px}
.jform h2{font-family:'IBM Plex Sans Arabic';font-size:24px;margin:6px 0 6px;color:var(--ink)}
.jform__p{font-size:13px;color:rgba(10,58,38,.6);margin-bottom:20px;line-height:1.8}
.jform .fld{margin-bottom:11px}
.jform input[type=text],.jform input[type=email],.jform textarea{width:100%;padding:11px 14px;
  border:1px solid rgba(10,58,38,.16);border-radius:9px;background:var(--paper);font-family:inherit;font-size:13.5px;color:var(--ink)}
.jform input:focus,.jform textarea:focus{outline:2px solid var(--gold);border-color:transparent}
.jform textarea{resize:vertical;line-height:1.7}
.jpick{background:rgba(201,162,39,.12);border-inline-start:3px solid var(--gold);border-radius:0 8px 8px 0;
  padding:9px 13px;margin-bottom:14px;font-size:12.5px}
.jpick b{font-family:'IBM Plex Sans Arabic';color:#8f6a22;margin-inline-start:5px}
.jform__msg{display:block;margin-top:11px;font-size:12.5px;text-align:center;min-height:18px}
.jform__msg.ok{color:#2f6b45}
.jform__msg.bad{color:#a3382f}
/* مصيدة البوتات — مخفية عن البشر فقط.
   ملاحظة: كان left:-9999px يمدّ عرض المستند 9999px (تجاوز أفقي) فيوسّع تخطيط الموبايل
   وينزاح محتوى RTL خارج الشاشة (صفحة فارغة على الجوال). نستعمل تقنية clip بلا إزاحة. */
.hp{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;
  overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;
  border:0!important;opacity:0!important;pointer-events:none!important}

/* رسائل حالة النماذج (تواصل + نشرة) */
.cform__note.ok{color:#2f6b45}
.cform__note.bad{color:#a3382f}
.ftr__msg{display:block;margin-top:8px;font-size:12px;min-height:16px}
.ftr__msg.ok{color:#8fd3a8}
.ftr__msg.bad{color:#e39b93}

/* فاصل قسم رئاسة اللجان القطاعية */
.pkgs__divider{margin:52px 0 26px;padding-top:34px;border-top:1px solid rgba(10,58,38,.12);text-align:center}
.pkgs__divider h3{font-family:var(--naskh);font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:700;color:var(--ink);margin-bottom:8px}
.pkgs__divider p{font-size:.92rem;color:var(--muted);max-width:620px;margin-inline:auto;line-height:1.85}
.pkgs__grid--cmt .pkg{border-style:dashed}
.pkgs__grid--cmt .pkg:hover{border-style:solid}

/* زر مسح الفلاتر + عدّاد النتائج */
.dir__clear{padding:11px 18px;border:1px solid rgba(10,58,38,.16);border-radius:9px;background:transparent;
  font-family:inherit;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer;transition:var(--t)}
.dir__clear:hover{border-color:var(--gold);color:var(--gold)}
.dir__count{display:block;font-size:.8rem;color:var(--muted-2);margin-bottom:14px;letter-spacing:.02em}

/* ============================================================
   مودال طلب الانضمام — خفيف الريندر + منتقي دولة/هاتف + فاليديشن
   ============================================================ */
/* الأوفرلاي: بدون blur (كان يثقّل الريندر) */
.jmodal .modal__overlay{ background:rgba(14,11,6,.66); backdrop-filter:none; }
.jm{ position:relative; z-index:1; width:min(560px,100%); max-height:92vh; overflow-y:auto;
  background:var(--paper); border-radius:16px; border-top:4px solid var(--gold);
  box-shadow:0 30px 80px -24px rgba(0,0,0,.55);
  transform:translateY(14px); opacity:0; transition:transform .22s ease, opacity .22s ease; }
.jmodal.open .jm{ transform:none; opacity:1; }
.jm::-webkit-scrollbar{ width:8px; }
.jm::-webkit-scrollbar-thumb{ background:var(--gold); border-radius:4px; }

/* زر الإغلاق — الزاوية اليسرى العليا في RTL (الفراغ المقابل للعنوان)، فوق المحتوى */
.jm__x{ position:absolute; top:14px; inset-inline-end:14px; z-index:5;
  width:36px; height:36px; border-radius:50%; display:grid; place-items:center;
  background:rgba(10,58,38,.06); color:var(--ink); border:1px solid var(--line);
  transition:.18s; cursor:pointer; }
.jm__x:hover{ background:var(--ink); color:var(--paper); border-color:var(--ink); transform:rotate(90deg); }

/* padding-top يكفي ليجلس العنوان أسفل زر الإغلاق دون أي تداخل،
   و padding البداية يبعد النص عن الزر حتى لو طال */
.jm__head{ padding:58px 30px 6px; }
.jm__kick{ display:block; font-weight:700; font-size:.72rem; letter-spacing:.28em; color:var(--gold); margin-bottom:10px; }
.jm__head h2{ font-family:var(--naskh); font-size:1.7rem; color:var(--ink); margin-bottom:8px; }
.jm__head p{ font-size:.86rem; color:var(--muted); line-height:1.8; }

.jm__form{ padding:16px 30px 30px; display:flex; flex-direction:column; gap:13px; }
.jf{ display:flex; flex-direction:column; gap:6px; }
.jf--2{ flex-direction:row; gap:12px; }
.jf--2 > .jf{ flex:1; min-width:0; }
.jf > label{ font-size:.8rem; font-weight:700; color:var(--ink); }
.jf > label i{ color:#c0392b; font-style:normal; }
.jf .opt{ color:var(--muted-2); font-weight:400; font-size:.76rem; }
.jf__in{ width:100%; padding:11px 13px; border:1.5px solid var(--line); border-radius:10px;
  background:#fff; font-family:var(--body); font-size:.92rem; color:var(--ink); transition:border-color .15s, box-shadow .15s; }
.jf__in::placeholder{ color:#b3a894; }
.jf__in:focus{ outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,162,39,.16); }
textarea.jf__in{ resize:vertical; min-height:52px; line-height:1.7; }
.jf__sel{ cursor:pointer; appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23a07d1f' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:left 14px center; padding-inline-start:34px; }
/* حالة الخطأ */
.jf.has-err .jf__in,.jf.has-err .csel__btn{ border-color:#c0392b; box-shadow:0 0 0 3px rgba(192,57,43,.12); }
.jf__err{ font-size:.74rem; color:#c0392b; min-height:0; line-height:1.4; }
.jf.has-err .jf__err{ min-height:16px; }

/* أقسام النموذج الرسمي (استمارة العضوية) */
/* سمة hidden لازم تتغلّب على display:flex الخاص بـ.jf (وإلا يظهر حقل "شكل آخر" دائماً) */
#joinForm [hidden]{ display:none !important; }
.jm__sec{ display:flex; flex-direction:column; gap:12px; padding:16px 0 4px;
  border-top:1px solid var(--line); margin-top:3px; }
.jm__sec-h{ display:flex; align-items:center; gap:9px; flex-wrap:wrap;
  font-family:var(--naskh); font-weight:700; font-size:1.02rem; color:var(--ink); }
.jm__sec-h em{ font-style:normal; font-weight:600; font-size:.72rem; color:var(--muted-2);
  letter-spacing:.02em; }
.jm__sec-n{ display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px;
  flex-shrink:0; border-radius:7px; background:var(--gold); color:var(--ink);
  font-family:var(--body); font-weight:700; font-size:.82rem; }
.jm__sec-hint{ font-size:.78rem; color:var(--muted-2); line-height:1.7; margin:-4px 0 2px; }
.jm__sec.has-err .jf__err{ min-height:16px; }

/* الشكل القانوني — مجموعة اختيار */
.jf-legal{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.jf-radio{ display:flex; align-items:center; gap:8px; padding:10px 12px; cursor:pointer;
  border:1.5px solid var(--line); border-radius:10px; background:#fff;
  font-size:.85rem; color:var(--ink); transition:border-color .15s, background .15s; }
.jf-radio:hover{ border-color:var(--gold-2); }
.jf-radio input{ accent-color:var(--gold); width:16px; height:16px; flex-shrink:0; margin:0; }
.jf-radio span{ line-height:1.3; }
.jf-radio:has(input:checked){ border-color:var(--gold); background:rgba(201,162,39,.09); font-weight:700; }
.jm__sec.has-err .jf-legal .jf-radio{ border-color:#c0392b; }

/* خانات الأربعة (عضويات/أنشطة) */
.jf-grid4{ display:grid; grid-template-columns:1fr 1fr; gap:9px; }
/* الاسم الكامل: ثلاث خانات */
.jf-name3{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:9px; }
/* منتقي البلد بعرض كامل مثل الحقول */
.csel--country{ width:100%; }

/* منطقة رفع الوثائق */
.upl{ display:flex; flex-direction:column; gap:10px; }
.upl__drop{ display:flex; flex-direction:column; align-items:center; gap:6px; width:100%;
  padding:22px 18px; cursor:pointer; text-align:center;
  border:1.6px dashed var(--gold-2); border-radius:12px; background:rgba(201,162,39,.05);
  color:var(--ink); font-family:var(--body); transition:border-color .15s, background .15s; }
.upl__drop:hover{ border-color:var(--gold); background:rgba(201,162,39,.1); }
.upl__drop svg{ color:var(--gold); }
.upl__drop:disabled{ opacity:.5; cursor:not-allowed; }
.upl.is-drag .upl__drop{ border-color:var(--gold); background:rgba(201,162,39,.16); }
.upl.is-full .upl__drop{ display:none; }
.upl__lead{ font-family:var(--naskh); font-weight:700; font-size:.95rem; }
.upl__sub{ font-size:.74rem; color:var(--muted-2); }
.upl__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.upl__item{ display:flex; align-items:center; gap:11px; padding:10px 12px;
  border:1px solid var(--line); border-radius:10px; background:#fff; }
.upl__item.is-done{ border-color:rgba(47,107,69,.4); background:rgba(47,107,69,.05); }
.upl__item.is-err{ border-color:rgba(192,57,43,.45); background:rgba(192,57,43,.05); }
.upl__badge{ flex-shrink:0; width:40px; height:40px; display:flex; align-items:center; justify-content:center;
  border-radius:8px; background:var(--gold); color:#fff; font-family:var(--body); font-weight:700; font-size:.66rem; letter-spacing:.02em; }
.upl__item.is-err .upl__badge{ background:#c0392b; }
.upl__meta{ flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.upl__name{ font-size:.85rem; color:var(--ink); font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.upl__size{ font-size:.74rem; color:var(--muted-2); }
.upl__item.is-err .upl__size{ color:#c0392b; }
.upl__bar{ height:5px; border-radius:3px; background:rgba(10,58,38,.1); overflow:hidden; margin-top:3px; }
.upl__bar i{ display:block; height:100%; background:var(--gold); border-radius:3px; transition:width .18s; }
.upl__rm{ flex-shrink:0; width:26px; height:26px; border:none; border-radius:50%; cursor:pointer;
  background:rgba(10,58,38,.08); color:var(--ink); font-size:1.1rem; line-height:1;
  display:flex; align-items:center; justify-content:center; transition:background .15s; }
.upl__rm:hover{ background:#c0392b; color:#fff; }

/* الهاتف: مفتاح + رقم */
.phone{ display:flex; gap:8px; }
.phone .csel{ flex:0 0 118px; }
.phone__num{ flex:1; min-width:0; letter-spacing:.04em; }

/* المنتقي المخصّص (دولة/مفتاح) */
.csel{ position:relative; }
.csel__btn{ width:100%; display:flex; align-items:center; gap:9px; padding:10px 12px;
  border:1.5px solid var(--line); border-radius:10px; background:#fff; cursor:pointer;
  font-family:var(--body); font-size:.92rem; color:var(--ink); transition:border-color .15s, box-shadow .15s; text-align:start; }
.csel__btn:hover{ border-color:var(--gold-2); }
.csel.open .csel__btn{ border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,162,39,.16); }
.csel__btn img{ width:22px; height:15px; object-fit:cover; border-radius:2px; flex-shrink:0; box-shadow:0 0 0 1px rgba(0,0,0,.08); }
.csel__btn > span{ flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.csel__ph{ color:#b3a894; }
.csel__car{ width:9px; height:9px; border-inline-end:1.6px solid var(--muted); border-bottom:1.6px solid var(--muted);
  transform:rotate(45deg); flex-shrink:0; margin-top:-3px; transition:.2s; }
.csel.open .csel__car{ transform:rotate(-135deg); margin-top:3px; }

.csel__panel{ position:absolute; z-index:20; top:calc(100% + 6px); inset-inline-start:0; width:min(300px,86vw);
  background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 24px 50px -16px rgba(10,58,38,.4);
  padding:8px; display:none; }
.csel.open .csel__panel{ display:block; }
.csel--dial .csel__panel{ width:min(280px,80vw); }
/* منتقي البلد: القائمة بعرض الحقل نفسه ولا تتجاوزه */
.csel--country .csel__panel{ width:100%; max-width:100%; }
/* قلب القائمة للأعلى عند ضيق المساحة (تمنع خروجها عن حدود المودال) */
.csel--up .csel__panel{ top:auto; bottom:calc(100% + 6px); }
.csel__search{ width:100%; padding:9px 12px; border:1px solid var(--line); border-radius:8px;
  font-family:var(--body); font-size:.86rem; margin-bottom:6px; background:var(--paper); }
.csel__search:focus{ outline:none; border-color:var(--gold); }
.csel__list{ max-height:230px; overflow-y:auto; display:flex; flex-direction:column; gap:1px; }
.csel__list::-webkit-scrollbar{ width:7px; }
.csel__list::-webkit-scrollbar-thumb{ background:var(--gold-2); border-radius:4px; }
.csel__opt{ display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:8px; cursor:pointer;
  background:none; text-align:start; font-family:var(--body); font-size:.88rem; color:var(--ink); width:100%; transition:background .12s; }
.csel__opt:hover,.csel__opt.act{ background:rgba(201,162,39,.12); }
.csel__opt img{ width:24px; height:16px; object-fit:cover; border-radius:2px; box-shadow:0 0 0 1px rgba(0,0,0,.08); flex-shrink:0; }
.csel__opt > span{ flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.csel__opt b{ color:var(--muted); font-weight:700; font-size:.82rem; }
.csel__no{ padding:16px; text-align:center; color:var(--muted-2); font-size:.85rem; }

/* زر الإرسال */
.jm__submit{ margin-top:4px; width:100%; padding:14px; border:none; border-radius:11px; cursor:pointer;
  background:var(--gold); color:var(--ink); font-family:var(--naskh); font-weight:700; font-size:1rem;
  transition:background .18s, transform .18s; position:relative; }
.jm__submit:hover{ background:var(--gold-2); }
.jm__submit:disabled{ opacity:.7; cursor:default; }
.jm__submit.loading span{ visibility:hidden; }
.jm__submit.loading::after{ content:""; position:absolute; top:50%; inset-inline-start:50%; width:18px; height:18px;
  margin:-9px 0 0 -9px; border:2.5px solid rgba(10,58,38,.3); border-top-color:var(--ink); border-radius:50%;
  animation:jspin .7s linear infinite; }
@keyframes jspin{ to{ transform:rotate(360deg); } }
.jm__msg{ text-align:center; font-size:.86rem; min-height:18px; font-weight:700; }
.jm__msg.ok{ color:#2f6b45; }
.jm__msg.bad{ color:#c0392b; }

@media(max-width:520px){
  .jf--2{ flex-direction:column; gap:13px; }
  .jm__head,.jm__form{ padding-inline:20px; }
  .jf-legal{ grid-template-columns:1fr 1fr; }
  .jf-grid4{ grid-template-columns:1fr; }
  .jf-name3{ grid-template-columns:1fr; }
}

/* ============================================================
   مودال تفاصيل المعرض/المؤتمر
   ============================================================ */
.ag{cursor:pointer}
.em{max-width:720px}
.em__media{position:relative;height:clamp(180px,32vh,300px);overflow:hidden;background:var(--ink)}
.em__media img{width:100%;height:100%;object-fit:cover}
.em__type{position:absolute;bottom:16px;inset-inline-end:24px;background:var(--gold);color:#fff;
  font-family:var(--naskh);font-weight:700;font-size:.8rem;border-radius:20px;padding:5px 16px}
.em__body{padding:clamp(22px,4vw,40px)}
.em__date{display:block;color:var(--gold);font-weight:700;font-size:.9rem;letter-spacing:.06em;margin-bottom:8px}
.em__title{font-family:var(--naskh);font-size:clamp(1.4rem,3vw,2rem);line-height:1.4;color:var(--ink);margin-bottom:20px}
.em__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 24px;
  padding:18px 20px;background:var(--paper);border-radius:12px;margin-bottom:20px}
.em__fact{display:flex;flex-direction:column;gap:2px}
.em__fl{font-size:.72rem;color:var(--muted-2);font-weight:700;letter-spacing:.04em}
.em__fact b{font-family:var(--naskh);font-size:.95rem;color:var(--ink);font-weight:600;line-height:1.5}
.em__desc{margin-bottom:20px}
.em__desc p{color:var(--muted);font-size:1rem;line-height:1.95;margin-bottom:12px}
.em__map{margin-bottom:22px}
.em__maph{font-family:var(--naskh);font-weight:700;font-size:.95rem;color:var(--ink);margin-bottom:10px}
.em__map iframe{width:100%;height:280px;border:1px solid var(--line);border-radius:12px;display:block}
.em__mapbtn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;background:var(--paper-2);
  border:1px dashed var(--line);border-radius:12px;padding:22px;font-family:var(--naskh);font-weight:600;
  font-size:.98rem;color:var(--ink);cursor:pointer;transition:var(--t)}
.em__mapbtn:hover{background:#fff;border-color:var(--gold)}
.em__mappin{font-size:1.1rem;line-height:1}
.em__mapwrap{position:relative}
.em__maploading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--muted);
  font-size:.9rem;background:var(--paper-2);border-radius:12px;pointer-events:none}
.em__cta{display:flex;gap:12px;flex-wrap:wrap}
.btn--ghost{border:1.5px solid var(--gold);color:var(--gold-deep,#8f6a22)}
.btn--ghost:hover{background:var(--gold);color:#fff;transform:translateY(-3px)}

/* ===== حقل هاتف بنمط intl-tel: العلم + المفتاح على اليسار ثم الرقم (LTR) ===== */
.itel{ display:flex; align-items:stretch; direction:ltr; border:1.5px solid var(--line); border-radius:10px; background:#fff; overflow:visible; transition:border-color .15s, box-shadow .15s; position:relative; }
.itel:focus-within{ border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,162,39,.16); }
/* منتقي الدولة المدمج (يستخدم بنية .csel لكن بلا حدود) */
.csel--itel{ flex:0 0 auto; }
.csel--itel .csel__btn{ border:none; border-radius:0; background:transparent; padding:10px 12px;
  border-inline-end:1.5px solid var(--line); height:100%; gap:7px; }
.csel--itel .csel__btn:hover{ background:rgba(201,162,39,.06); }
.csel.open.csel--itel .csel__btn{ box-shadow:none; }
.csel--itel .csel__btn > span{ font-weight:700; color:var(--gold-deep,#8f6a22); direction:ltr; }
/* القائمة: تُثبَّت فيزيائياً (left) لأن حقل الهاتف LTR — وإلا انزاحت بسبب direction:rtl للأسماء */
.csel--itel .csel__panel{ direction:rtl; left:0; right:auto; inset-inline-start:auto; inset-inline-end:auto;
  top:calc(100% + 8px); width:min(290px,80vw); }
.csel--itel .csel__btn > span{ direction:ltr; }
.itel__num{ flex:1; min-width:0; border:none!important; background:transparent!important; padding:10px 13px!important;
  box-shadow:none!important; letter-spacing:.05em; }
.itel__num:focus{ outline:none; box-shadow:none!important; }
.rg-event{ font-weight:700; color:var(--gold-deep,#8f6a22)!important; font-size:.95rem!important; margin-top:4px; }

/* وصف الباقة أسفل الدروب داون في نموذج الانضمام */
.jf__pkg{ margin-top:10px; background:linear-gradient(135deg,rgba(201,162,39,.1),rgba(217,180,92,.05));
  border:1px solid rgba(201,162,39,.25); border-inline-start:3px solid var(--gold); border-radius:0 10px 10px 0;
  padding:11px 14px; opacity:0; transform:translateY(-4px); }
.jf__pkg.in{ animation:pkgIn .28s ease forwards; }
@keyframes pkgIn{ to{ opacity:1; transform:translateY(0); } }
.jf__pkg-price{ display:inline-block; font-family:var(--naskh); font-weight:700; font-size:.95rem;
  color:var(--gold-deep,#8f6a22); margin-bottom:5px; }
.jf__pkg-desc{ font-size:.8rem; color:var(--muted); line-height:1.7; margin:0; }

/* ===== الهيئات ومراكز المعارض الشريكة — بطاقات قابلة للنقر ===== */
.bodies-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:18px; }
.body-card{ display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center;
  background:var(--paper); border:1px solid var(--line); border-radius:16px; padding:26px 20px 20px;
  cursor:pointer; font-family:inherit; color:var(--ink); transition:transform .26s ease, box-shadow .26s ease, border-color .26s ease;
  box-shadow:0 2px 10px rgba(10,58,38,.06); }
.body-card:hover, .body-card:focus-visible{ transform:translateY(-6px); border-color:var(--gold);
  box-shadow:0 24px 44px -22px rgba(10,58,38,.4), 0 0 0 1px rgba(201,162,39,.25) inset; outline:none; }
.body-card__logo{ display:flex; align-items:center; justify-content:center; width:100%; height:96px; }
.body-card__logo img{ max-width:82%; max-height:96px; object-fit:contain;
  transition:transform .26s ease; }
.body-card:hover .body-card__logo img{ transform:scale(1.05); }
.body-card__meta{ display:flex; flex-direction:column; gap:3px; }
.body-card__name{ font-family:var(--naskh); font-weight:700; font-size:.98rem; line-height:1.4; color:var(--ink); }
.body-card__country{ font-size:.8rem; color:var(--muted); }
.body-card::after{ content:"↗"; position:absolute; opacity:0; }

/* مودال الهيئة: منطقة الشعار بدل صورة المعرض */
.bmodal .modal__dialog.em{ max-width:560px; }
.bm-dlg__logo{ display:flex; align-items:center; justify-content:center; background:var(--paper-2);
  border-bottom:1px solid var(--line); padding:38px 30px; min-height:170px; }
.bm-dlg__logo img{ max-width:74%; max-height:130px; object-fit:contain; }
.bmodal .em__body{ padding:26px 30px 30px; }
.bmodal .em__cta{ margin-top:22px; }

/* زر «اضغط للإظهار» لحماية الهاتف/البريد */
.creveal{ display:inline-flex; align-items:center; gap:8px; font-family:inherit; font-size:inherit;
  color:var(--gold-2,#ddbb4a); background:rgba(201,162,39,.12); border:1px dashed rgba(201,162,39,.5);
  border-radius:30px; padding:3px 14px; cursor:pointer; transition:background .2s ease, color .2s ease, border-color .2s ease; }
.creveal:hover{ background:rgba(201,162,39,.2); border-color:var(--gold); }
.creveal__dot{ width:6px; height:6px; border-radius:50%; background:currentColor; opacity:.8; }
.cinfo__val{ color:inherit; }

/* ===== تأثير بصري ذهبي عند مرور الماوس على العنوان الفرعي في الهيرو ===== */
.hero__lead{ transition:text-shadow .4s ease; }
.hero__lead:hover{
  background:linear-gradient(90deg,rgba(244,241,233,.92) 0%,#DDBB4A 44%,#F0E2AE 50%,#DDBB4A 56%,rgba(244,241,233,.92) 100%);
  background-size:220% auto;
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:transparent;
  animation:leadShimmer 1.8s linear infinite;
  text-shadow:0 0 22px rgba(201,162,39,.25);
}
@keyframes leadShimmer{ from{ background-position:200% center; } to{ background-position:0% center; } }
@media (prefers-reduced-motion: reduce){ .hero__lead:hover{ animation:none; } }

/* ===== أهداف الاتحاد (قسم مستقل — class مميّز لتفادي تعارض .goals في قسم عن الاتحاد) ===== */
.aims{ padding:clamp(70px,10vw,130px) 0; }
.aims__head{ max-width:760px; margin-bottom:46px; }
.aims__sub{ color:var(--muted); margin-top:12px; font-size:1.05rem; }
.aims__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.aim{ position:relative; background:#fff; border:1px solid var(--line); border-radius:14px; padding:32px 26px 28px; transition:var(--t); overflow:hidden; }
.aim::before{ content:""; position:absolute; inset-block:0; inset-inline-start:0; width:4px;
  background:linear-gradient(180deg,var(--gold),var(--gold-2)); transform:scaleY(0); transform-origin:top; transition:var(--t); }
.aim:hover{ transform:translateY(-6px); box-shadow:var(--shadow-s); border-color:transparent; }
.aim:hover::before{ transform:scaleY(1); }
/* direction:ltr يلزم لضمان ترتيب الخانات، لكنه على صندوق block يجعل بدايته
   اليسار فينزاح الرقم لليسار في الصفحة العربية. width:fit-content يُقلّص
   الصندوق فيلتصق ببداية السطر (اليمين في RTL) مع بقاء الخانات LTR داخله. */
.aim__no{ font-family:var(--naskh); font-weight:700; font-size:2rem; color:var(--gold-2); display:block; width:fit-content; margin-bottom:10px; line-height:1; direction:ltr; }
.aim__title{ font-family:var(--naskh); font-weight:700; font-size:1.2rem; color:var(--ink); margin-bottom:10px; line-height:1.45; }
.aim__desc{ color:var(--muted); font-size:.95rem; line-height:1.8; margin:0; }
@media (max-width:900px){ .aims__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px){ .aims__grid{ grid-template-columns:1fr; } }

/* ===== صورة رئيس اللجنة ===== */
.cmt--photo .cmt__head{ display:flex; align-items:center; gap:13px; }
.cmt__photo{ flex-shrink:0; width:54px; height:54px; border-radius:50%; overflow:hidden;
  border:2px solid var(--gold-2); background:var(--paper-2); box-shadow:0 4px 12px rgba(10,58,38,.15); }
/* object-position أعلى من المنتصف: الإطار دائري وصور الأشخاص الطولية
   يقصّها cover من الأعلى والأسفل بالتساوي فيُقطع أعلى الرأس. الرفع إلى 22%
   يُبقي الرأس كاملاً. بلا أثر على الصور المربّعة (لا قصّ فيها أصلاً). */
.cmt__photo img{ width:100%; height:100%; object-fit:cover; object-position:center 22%; display:block; }
.cmt__hinfo{ display:flex; flex-direction:column; min-width:0; }
.cmt__desc{ color:var(--muted); font-size:.92rem; line-height:1.75; margin-top:12px; }
.cmt--sub .cmt__head{ margin-top:14px; padding-top:12px; border-top:1px solid var(--line); }
.subcmt__grid{ margin-top:6px; }

/* ===== اللجان المتاحة (رقائق قابلة للتحرير) ===== */
.subcmt{ margin-top:36px; padding-top:30px; border-top:1px solid var(--line); }
.subcmt__title{ font-family:var(--naskh); font-weight:700; font-size:1.08rem; color:var(--ink); margin-bottom:18px; }
.subcmt__list{ display:flex; flex-wrap:wrap; gap:12px; }
.subcmt__chip{ display:inline-flex; align-items:center; gap:9px; background:#fff; border:1px solid var(--line);
  border-radius:30px; padding:10px 20px; font-family:var(--naskh); font-weight:600; font-size:.95rem; color:var(--ink); transition:var(--t); }
.subcmt__chip:hover{ border-color:var(--gold); box-shadow:0 8px 18px -9px rgba(10,58,38,.32); transform:translateY(-2px); }
.subcmt__dot{ width:8px; height:8px; border-radius:50%; background:linear-gradient(135deg,var(--gold),var(--gold-2)); flex-shrink:0; }

/* ===== فواصل بين الأقسام المتجاورة بنفس الخلفية (منع الاندماج) ===== */
.aims, .agenda, .pkgs{ border-top:1px solid var(--line); }

/* ===== نافيجيشن بقوائم منسدلة مجمّعة (بدل ١٣ رابطاً مضغوطاً) ===== */
.nav__item{ position:relative; }
.nav__top{ color:var(--paper); font-weight:500; font-size:1rem; padding:8px 14px; position:relative;
  transition:var(--t); background:none; border:none; font-family:inherit; cursor:pointer;
  display:inline-flex; align-items:center; gap:7px; white-space:nowrap; }
.nav__caret{ width:6px; height:6px; border-right:1.6px solid currentColor; border-bottom:1.6px solid currentColor;
  transform:rotate(45deg) translateY(-1px); opacity:.6; transition:transform .25s ease; }
.nav__item:hover .nav__caret, .nav__item:focus-within .nav__caret{ transform:rotate(-135deg) translateY(-1px); opacity:.9; }
.nav__top:not(.nav__cta)::after{ content:""; position:absolute; right:14px; left:14px; bottom:2px; height:1.5px;
  background:var(--gold-2); transform:scaleX(0); transition:var(--t); }
.nav__top:not(.nav__cta):hover::after{ transform:scaleX(1); }
.nav__item:has(a.active) > .nav__top, a.nav__top.active{ color:var(--gold-2); }
a.nav__top.active::after{ transform:scaleX(1); }
.nav__menu{ position:absolute; top:100%; right:0; left:auto; margin-top:7px; min-width:212px;
  background:rgba(8,45,30,.98); border:1px solid rgba(201,162,39,.28); border-radius:12px; padding:8px;
  display:flex; flex-direction:column; gap:2px; opacity:0; visibility:hidden; transform:translateY(8px);
  transition:opacity .22s ease, transform .22s ease, visibility 0s linear .22s;
  box-shadow:0 24px 52px -18px rgba(0,0,0,.6); z-index:120; text-align:right; }
[dir="ltr"] .nav__menu{ right:auto; left:0; text-align:left; }
.nav__item:hover .nav__menu, .nav__item:focus-within .nav__menu{ opacity:1; visibility:visible; transform:translateY(0);
  transition:opacity .22s ease, transform .22s ease; }
.nav__menu a{ color:rgba(244,241,233,.86); font-size:.95rem; padding:9px 14px; border-radius:8px;
  white-space:nowrap; transition:var(--t); }
.nav__menu a::after{ display:none !important; }
.nav__menu a:hover{ background:rgba(244,241,233,.08); color:var(--gold-2); }
.nav__menu a.active{ color:var(--gold-2); background:rgba(201,162,39,.12); }
/* ===== تضييق تدريجي للنافيجيشن في المدى المتوسط =====
   صار فيه ٨ عناصر عليا بعد إخراج «الأمين العام» من القائمة المنسدلة.
   نقطة تحوّل الموبايل عند 980px، فالشريط الأفقي لازم يتّسع من 981px وفوق؛
   بلا تضييق كان يزاحم الشعار ويدفع زر اللغة خارج الشاشة تحت 1150px. */
@media (min-width:981px) and (max-width:1400px){
  .nav{ gap:0; }
  .nav a, .nav__top{ padding-inline:9px; font-size:.94rem; }
  .langtog{ margin-inline-start:8px; padding:6px 12px; }
  .nav a:not(.nav__cta)::after{ right:9px; left:9px; }
}
@media (min-width:981px) and (max-width:1180px){
  .nav a, .nav__top{ padding-inline:6px; font-size:.87rem; }
  .nav__top{ gap:5px; }
  .nav__caret{ width:5px; height:5px; }
  .nav a:not(.nav__cta)::after{ right:6px; left:6px; }
  .langtog{ margin-inline-start:5px; padding:5px 10px; font-size:.76rem; }
}

@media (max-width:980px){
  .nav__item{ width:100%; }
  .nav__top{ width:100%; font-family:var(--naskh); font-size:1.2rem; padding:10px 6px; justify-content:space-between; }
  .nav__caret{ display:none; }
  .nav__top:not(.nav__cta)::after{ display:none; }
  .nav__menu{ position:static; opacity:1; visibility:visible; transform:none; background:none; border:none;
    box-shadow:none; padding:2px 18px 10px; margin:0; min-width:0; gap:0; }
  .nav__menu a{ font-size:1.02rem; padding:8px 6px; color:rgba(244,241,233,.72); white-space:normal; }
}

/* ===== توقيع المطوّر — iReels (فخم، ليس راعياً) ===== */
.ftr__dev{ display:inline-flex; align-items:center; gap:11px; text-decoration:none; transition:var(--t); }
.ftr__dev-by{ font-size:.72rem; letter-spacing:.05em; color:var(--muted-2,#9a8b73); font-weight:500; white-space:nowrap; }
.ftr__dev-brand{ position:relative; font-family:var(--naskh); font-weight:700; font-size:1.12rem; letter-spacing:.01em;
  background:linear-gradient(120deg,var(--gold-3,#EBD79B),var(--gold-2,#DDBB4A) 45%,var(--gold,#C9A227));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.ftr__dev-dot{ -webkit-text-fill-color:var(--gold-2); }
.ftr__dev-brand::after{ content:""; position:absolute; inset-inline:0; bottom:-3px; height:1.5px;
  background:linear-gradient(90deg,transparent,var(--gold-2),transparent); transform:scaleX(.25); opacity:.5; transition:var(--t); }
.ftr__dev:hover .ftr__dev-brand::after{ transform:scaleX(1); opacity:1; }
.ftr__dev:hover .ftr__dev-brand{ filter:brightness(1.12); }

/* ===== كلمة رئيس الاتحاد — خلفية فاتحة (تمييز عن الأمانة الداكنة) + صورة مضبوطة ===== */
.sg--pres{ background:var(--paper-2); color:var(--ink); }
.sg--pres .sg__grid{ grid-template-columns:1.2fr .8fr; }
.sg--pres .sg__photo{ max-width:300px; margin-inline:auto; }
.sg--pres .sg__photo img{ filter:none; border:1px solid var(--line); aspect-ratio:4/5; object-fit:cover; }
.sg--pres .sg__quote{ color:var(--ink); }
.sg--pres .sg__quote::before{ color:var(--gold); }
.sg--pres .sg__sign{ border-top-color:var(--line); }
.sg--pres .sg__sign strong{ color:var(--gold-deep,#8f6a22); }
.sg--pres .sg__sign span{ color:var(--muted); }
.sg--pres .sg__badge{ inset-inline-start:-6px; inset-inline-end:auto; }
@media (max-width:820px){ .sg--pres .sg__photo{ max-width:240px; } }

/* ===== المدير التنفيذي (نبذة + شعار احتياطي) ===== */
.sg__bio{ margin-top:14px; line-height:1.9; color:var(--muted); }
.sg__photo .mono{ display:flex; align-items:center; justify-content:center;
  width:100%; aspect-ratio:4/5; background:var(--paper-2); color:var(--gold);
  font-family:var(--serif,inherit); font-size:56px; font-weight:700; border:1px solid var(--line); }

/* الصورة المرفوعة تأتي بأي نسبة، فنثبّتها حتى لا يتمدّد القسم بلا داعٍ */
.sg--exec .sg__photo{ max-width:340px; margin-inline:auto; }
.sg--exec .sg__photo img{ aspect-ratio:4/5; object-fit:cover; object-position:center 22%; }

/* ===== نسخة مُدمَجة: تُستعمل حين لا توجد كلمة ولا نبذة =====
   التخطيط العريض مُصمَّم لكلمة الأمين العام الطويلة؛ مع سطرين فقط كان
   يترك أكثر من نصف العرض فراغاً وارتفاعاً يقارب ٩٠٠ بكسل. */
.sg--lean{ padding:clamp(52px,6vw,80px) 0; }
.sg--lean .sg__grid{ grid-template-columns:auto minmax(0,auto); justify-content:center;
  gap:clamp(26px,3vw,44px); max-width:760px; margin-inline:auto; }
.sg--lean .sg__photo{ width:clamp(180px,22vw,230px); max-width:none; margin-inline:0; }
.sg--lean .kicker{ display:block; margin-bottom:10px; }
.sg--lean .sg__sign{ margin-top:0; padding-top:0; border-top:none; }
.sg--lean .sg__sign strong{ font-size:clamp(1.55rem,3.2vw,2.3rem); line-height:1.35; }
.sg--lean .sg__sign strong::after{ content:""; display:block; width:66px; height:2px;
  background:var(--gold); margin-top:16px; }
.sg--lean .sg__sign span{ display:block; margin-top:14px; font-size:1.02rem; }
@media (max-width:760px){
  .sg--lean .sg__grid{ grid-template-columns:1fr; justify-items:center; text-align:center; }
  .sg--lean .sg__photo{ width:min(230px,70vw); }
  .sg--lean .sg__sign strong::after{ margin-inline:auto; }
}

/* ===== المكاتب الإقليمية ===== */
.offices{ padding:96px 0; }
.offices__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:22px; margin-top:36px; }
.office{ background:var(--paper-2); border:1px solid var(--line); border-radius:16px; padding:26px 24px;
  transition:transform .25s ease, box-shadow .25s ease; }
.office:hover{ transform:translateY(-4px); box-shadow:0 18px 40px rgba(0,0,0,.08); }
.office__name{ font-size:19px; font-weight:700; color:var(--ink); margin:0 0 6px; }
.office__loc{ display:inline-block; font-size:13px; color:var(--gold-deep,#8f6a22); font-weight:600; margin-bottom:12px; }
.office__addr{ font-size:14px; line-height:1.8; color:var(--muted); margin:0 0 14px; }
.office__meta{ display:flex; flex-direction:column; gap:6px; padding-top:14px; border-top:1px solid var(--line-l,var(--line)); }
.office__link{ font-size:14px; color:var(--ink); text-decoration:none; direction:ltr; unicode-bidi:plaintext; }
.office__link:hover{ color:var(--gold); }
