/* ============================================================================
   شمس — كتل الصفحات
   ========================================================================= */

/* ── البانر الرئيسي ─────────────────────────────────────────────────────
   تحريري منقسم على العاجي: العنوان في جهة، والصور داخل نافذة قوسية في الجهة
   الأخرى — القوس نصف قرص الشمس، ويجلس على خطّ أفق ذهبي. */

.hero {
  position: relative;
  min-block-size: 100svh;
  display: grid;
  grid-template-rows: 1fr auto;
  gap: clamp(2rem, 4vw, 3rem);
  padding-block: calc(var(--header-h) + clamp(1.5rem, 4vw, 3rem)) clamp(1.5rem, 3vw, 2.5rem);
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(60% 50% at 18% 30%, rgb(226 191 126 / .22), transparent 70%),
    var(--ivory);
  color: var(--ink);
}

.hero__grid {
  display: grid;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}
@media (min-width: 62rem) {
  .hero__grid { grid-template-columns: 1.12fr .88fr; }
}

.hero__content {
  display: grid;
  gap: clamp(1.1rem, 2.2vw, 1.75rem);
  align-content: center;
  max-inline-size: 44rem;
}
.hero h1 {
  font-size: clamp(2.4rem, 5.6vw, 5rem);
  line-height: 1.32;
}
.hero h1 .line { display: block; }
.hero__lead {
  font-size: var(--fs-lead);
  color: var(--ink-soft);
  font-weight: 300;
  max-inline-size: 40rem;
  line-height: 1.85;
}
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-block-start: var(--s-2); }

/* النافذة القوسية */
.hero__visual {
  --arch-w: min(100%, 30rem);
  position: relative;
  display: grid;
  justify-items: center;
  gap: var(--s-5);
  padding-block-start: clamp(1rem, 3vw, 2.5rem);
}
.hero__arch {
  position: relative;
  z-index: 1;
  inline-size: var(--arch-w);
  aspect-ratio: 4 / 5;
  max-block-size: 70svh;
  border-radius: 50% 50% var(--r-2) var(--r-2) / 40% 40% var(--r-2) var(--r-2);
  overflow: hidden;
  isolation: isolate;
  background: var(--dune);
  box-shadow: 0 2.5rem 5rem -2.5rem rgb(92 66 30 / .45);
}
.hero__visual::before {                       /* حلقة القوس — خطّ دائرة الشعار */
  content: "";
  position: absolute;
  z-index: 0;
  inset-block-start: calc(clamp(1rem, 3vw, 2.5rem) - .9rem);
  inline-size: calc(var(--arch-w) + 1.8rem);
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid rgb(184 135 58 / .45);
  clip-path: inset(0 0 50% 0);
  pointer-events: none;
}
.hero__visual::after {                        /* خطّ الأفق */
  content: "";
  position: absolute;
  inset-inline: -12%;
  inset-block-end: calc(var(--s-5) + 3px);    /* قاعدة القوس: فوق النقاط مباشرةً */
  block-size: 1px;
  background: linear-gradient(90deg, transparent, rgb(184 135 58 / .55) 20%, rgb(184 135 58 / .55) 80%, transparent);
  z-index: 0;
}

.hero__stage { position: absolute; inset: -2%; z-index: 0; }
.hero__layer {
  position: absolute;
  inset: -6%;
  transform-origin: 50% 40%;
}
.hero__slide { position: absolute; inset: 0; }
.hero__slide img { inline-size: 100%; block-size: 100%; object-fit: cover; }

/* قرص الشمس خلف القوس — ضوء لا شكل مصمت */
.hero__sun {
  position: absolute;
  z-index: 0;
  inset-block-start: -6%;
  left: 50%;                        /* فيزيائي عمدًا: translate لا يتبع الاتجاه */
  translate: -50% 0;
  inline-size: calc(var(--arch-w) * 1.35);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle closest-side,
    rgb(233 201 139 / .7) 0 30%,
    rgb(226 191 126 / .32) 55%,
    rgb(226 191 126 / .1) 78%,
    transparent 98%);
  pointer-events: none;
}

/* شارة «منذ 1991» أعلى العنوان */
.hero__badge {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  padding: .45rem 1.1rem .45rem .5rem;
  border: 1px solid var(--rule-strong);
  border-radius: var(--r-pill);
  background: var(--ivory-raised);
  font-size: var(--fs-micro);
  color: var(--ink-soft);
  inline-size: fit-content;
}
.hero__badge b {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .2rem .7rem;
  border-radius: var(--r-pill);
  background: var(--ink);
  color: var(--ivory);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: .95rem;
}
.hero__badge b::before {                      /* نقطة الشمس بليموني الشعار */
  content: "";
  inline-size: .45rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--lime);
}

.hero__foot { display: grid; gap: var(--s-4); }
.hero__foot-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--s-5);
}

/* أزرار شرائح البانر */
.hero__dots { position: relative; z-index: 1; display: flex; gap: .5rem; }
.hero__dot {
  inline-size: 1.75rem;
  block-size: 3px;
  border-radius: var(--r-pill);
  background: rgb(47 48 100 / .2);
  transition: background-color var(--dur-2), inline-size var(--dur-2) var(--ease-out);
}
.hero__dot[aria-selected="true"] { background: var(--gold); inline-size: 3rem; }

@media (max-width: 61.99rem) {
  .hero { min-block-size: auto; }
  .hero__visual { order: -1; --arch-w: min(100%, 21rem); padding-block-start: .5rem; }
  .hero__arch { aspect-ratio: 5 / 5.6; border-radius: 50% 50% var(--r-2) var(--r-2) / 44.6% 44.6% var(--r-2) var(--r-2); }
  .hero__visual::before { inset-block-start: calc(.5rem - .9rem); }
}

/* ── جملة كبرى (Statement) ─────────────────────────────────────────────── */

.statement {
  font-family: var(--font-display);
  font-size: clamp(1.85rem, 4.4vw, 4rem);
  line-height: 1.28;
  letter-spacing: 0;
  max-inline-size: 22ch;
  text-wrap: balance;
}
.statement .dim { color: var(--accent); }

/* ── الركائز الأربع (تمرير أفقي مثبَّت) ───────────────────────────────── */

.pillar {
  position: relative;
  display: grid;
  align-content: space-between;
  gap: var(--s-8);
  min-block-size: clamp(20rem, 46vh, 26rem);
  padding: clamp(1.75rem, 3vw, 2.5rem);
  border: 1px solid var(--rule);
  border-radius: 50% 50% var(--r-3) var(--r-3) / 9rem 9rem var(--r-3) var(--r-3);
  background: var(--bg-raised);
  overflow: hidden;
  text-align: center;
  justify-items: center;
}
.pillar__n {
  font-family: var(--font-display);
  font-size: clamp(3rem, 6vw, 4.5rem);
  line-height: 1.1;
  color: var(--accent);
  padding-block-start: var(--s-6);
}
.pillar h3 { font-size: clamp(1.35rem, 2.2vw, 1.9rem); }
.pillar p { font-size: var(--fs-small); color: var(--fg-dim); }
.pillar::after {                              /* شمس تغرب في قاع البطاقة */
  content: "";
  position: absolute;
  z-index: -1;
  inset-block-end: -42%;
  left: 50%;                        /* فيزيائي عمدًا: translate لا يتبع الاتجاه */
  translate: -50% 0;
  inline-size: 78%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle closest-side, rgb(226 191 126 / .45), transparent 66%);
}
.pillar { isolation: isolate; }

/* عدّاد الشرائح الأفقية */
.hpin__meta {
  display: flex;
  align-items: center;
  gap: var(--s-4);
  padding-inline: var(--gutter);
  margin-block-end: var(--s-6);
  font-size: var(--fs-micro);
  color: var(--fg-mute);
}
.hpin__bar { flex: 1; max-inline-size: 14rem; block-size: 2px; background: var(--rule); overflow: hidden; }
.hpin__bar i { display: block; block-size: 100%; inline-size: var(--hp, 12%); background: var(--accent-deco); transition: inline-size .2s linear; }

/* ── القيم (بطاقات متراكمة) ────────────────────────────────────────────── */

.value__head { display: flex; align-items: baseline; gap: var(--s-4); }
.value__n {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: .02em;
  color: var(--accent);
}
.value h3 { font-size: clamp(1.5rem, 2.8vw, 2.25rem); }
.value p { color: var(--fg-dim); max-inline-size: 52ch; }

/* ── عرض المشروع ───────────────────────────────────────────────────────── */

.showcase {
  position: relative;
  display: grid;
  align-content: end;
  gap: var(--s-5);
  min-block-size: clamp(30rem, 72vh, 44rem);
  padding: clamp(2rem, 4vw, 3.5rem);
  border-radius: var(--r-4);
  overflow: hidden;
  isolation: isolate;
  color: var(--ivory);
}
.showcase__media { position: absolute; inset: 0; z-index: -2; }
.showcase__media img { inline-size: 100%; block-size: 100%; object-fit: cover; }
.showcase::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(to left, rgb(31 32 64 / .78), rgb(31 32 64 / .35) 45%, transparent 75%),
    linear-gradient(to top, rgb(31 32 64 / .85), rgb(31 32 64 / .2) 55%, transparent),
    radial-gradient(90% 60% at 15% 100%, rgb(184 135 58 / .3), transparent 60%);
}
.showcase__body { display: grid; gap: var(--s-4); max-inline-size: 44rem; }
.showcase h3 { font-size: var(--fs-h2); }
.showcase p { color: rgb(251 248 241 / .86); max-inline-size: 52ch; }
.showcase .tag { color: rgb(251 248 241 / .88); border-color: rgb(251 248 241 / .34); }
.showcase .tag::before { background: var(--gold-glow); }
.showcase__place {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  font-size: var(--fs-micro);
  letter-spacing: .02em;
  color: var(--gold-glow);
}
.showcase__place::before {
  content: "";
  inline-size: .4rem; block-size: .4rem;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 4px rgb(226 191 126 / .22);
}

/* ── «لماذا شمس؟» — أكورديون مع صورة متبدّلة ──────────────────────────── */

.why { display: grid; gap: clamp(2rem, 4vw, 4rem); align-items: start; }
@media (min-width: 62rem) { .why { grid-template-columns: 1fr 1fr; } }
.why__visual {
  position: relative;
  border-radius: 50% 50% var(--r-3) var(--r-3) / 40% 40% var(--r-3) var(--r-3);
  overflow: hidden;
  aspect-ratio: 4 / 5;
  position: sticky;
  inset-block-start: calc(var(--header-h) + 2rem);
}
.why__img {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: scale(1.06);
  transition: opacity 1s var(--ease-soft), transform 1.6s var(--ease-soft);
}
.why__img.is-active { opacity: 1; transform: none; }
.why__img img { inline-size: 100%; block-size: 100%; object-fit: cover; }
@media (max-width: 61.99rem) { .why__visual { aspect-ratio: 16/10; position: relative; inset-block-start: auto; border-radius: 50% 50% var(--r-3) var(--r-3) / 60% 60% var(--r-3) var(--r-3); } }

/* ── نداء الختام ───────────────────────────────────────────────────────── */

.cta {
  position: relative;
  overflow: hidden;
  text-align: center;
}
.cta::before {                                /* شمس ذهبية تغرب خلف الأفق */
  content: "";
  position: absolute;
  inset-block-end: calc(min(90vw, 46rem) / -2);
  left: 50%;                        /* فيزيائي عمدًا: translate لا يتبع الاتجاه */
  translate: -50% 0;
  inline-size: min(90vw, 46rem);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle closest-side, rgb(226 191 126 / .42), rgb(226 191 126 / .1) 52%, transparent 68%);
  pointer-events: none;
}
.cta__inner { display: grid; gap: var(--s-5); justify-items: center; position: relative; }
.cta h2 { font-size: var(--fs-display); max-inline-size: 18ch; }
.cta .lead { text-align: center; }
.cta__actions { display: flex; flex-wrap: wrap; gap: var(--s-3); justify-content: center; }

/* ── معرض صور ──────────────────────────────────────────────────────────── */

.gallery { display: grid; gap: clamp(.75rem, 1.4vw, 1.25rem); grid-template-columns: repeat(6, 1fr); }
.gallery .media { grid-column: span 6; aspect-ratio: 16/10; border-radius: var(--r-2); }
@media (min-width: 48rem) {
  .gallery .media { grid-column: span 2; }
  .gallery .media--w3 { grid-column: span 3; }
  .gallery .media--w4 { grid-column: span 4; }
  .gallery .media--tall { aspect-ratio: 3/4; }
  .gallery .media--w6 { grid-column: span 6; aspect-ratio: 21/8; }
}

/* ── بطاقة تواصل ───────────────────────────────────────────────────────── */

.contact-card {
  display: grid;
  gap: var(--s-5);
  padding: clamp(1.75rem, 3vw, 2.5rem);
  border: 1px solid var(--rule);
  border-radius: var(--r-3);
  background: var(--bg-raised);
}
.contact-row { display: flex; gap: var(--s-4); align-items: start; }
.contact-row h3 { font-size: var(--fs-micro); letter-spacing: .02em; color: var(--accent); font-family: var(--font-body); font-weight: 500; }
.contact-row p, .contact-row a { font-size: var(--fs-small); color: var(--fg-dim); text-decoration: none; }
.contact-row a:hover { color: var(--accent); }

/* الخريطة: أبعاد ثابتة لا تتبع محتوى العمود المجاور، وبلا transform على
   أسلافها — الخريطة المضمّنة تحسب مساحتها عند التهيئة، وأي تغيّر لاحق في
   الأبعاد كان يُظهر نصف الإطار فارغًا. التحميل نفسه يديره initMaps في main.js. */
.map-block { display: grid; gap: var(--s-3); min-inline-size: 0; }
.map {
  position: relative;
  inline-size: 100%;
  block-size: clamp(20rem, 62vw, 28rem);
  border: 1px solid var(--rule);
  border-radius: var(--r-3);
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 45%, rgb(from var(--accent) r g b / .14), transparent 40%),
    var(--bg-raised);
  contain: strict;
}
.map iframe { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; border: 0; filter: grayscale(.35) contrast(1.05); }
.map iframe:not([src]) { visibility: hidden; }
.map-block__link { justify-self: start; }
.split > * { min-inline-size: 0; }

/* ── صفحة الخطأ ────────────────────────────────────────────────────────── */

.error-page {
  min-block-size: 100svh;
  display: grid;
  place-items: center;
  text-align: center;
  padding-block: calc(var(--header-h) + var(--s-9)) var(--s-9);
  position: relative;
  overflow: hidden;
}
.error-page::before {                         /* شمس تغرب خلف الأفق */
  content: "";
  position: absolute;
  z-index: -1;
  inset-block-end: calc(min(80vw, 40rem) / -2 + 18vh);
  left: 50%;                        /* فيزيائي عمدًا: translate لا يتبع الاتجاه */
  translate: -50% 0;
  inline-size: min(80vw, 40rem);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle closest-side, rgb(226 191 126 / .5), rgb(226 191 126 / .12) 55%, transparent 70%);
}
.error-page::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset-inline: 0;
  inset-block-end: 18vh;
  block-size: 1px;
  background: linear-gradient(90deg, transparent, rgb(184 135 58 / .5), transparent);
}
.error-page { isolation: isolate; }
.error-page__code {
  font-family: var(--font-display);
  font-size: clamp(6rem, 24vw, 16rem);
  line-height: 1;
  color: var(--dune-deep);
}

/* ── محتوى قانوني ──────────────────────────────────────────────────────── */

.prose { max-inline-size: 70ch; display: grid; gap: var(--s-5); }
.prose h2 { font-size: var(--fs-h3); margin-block-start: var(--s-5); }
.prose h3 { font-size: var(--fs-h4); }
.prose p, .prose li { font-size: var(--fs-small); color: var(--fg-dim); line-height: 1.95; }
.prose ul { display: grid; gap: .65rem; padding-inline-start: 1.25rem; }
.prose li { list-style: disc; }
.prose li::marker { color: var(--accent-deco); }

.toc {
  position: sticky;
  inset-block-start: calc(var(--header-h) + 1.5rem);
  display: grid;
  gap: .55rem;
  padding: var(--s-5);
  border: 1px solid var(--rule);
  border-radius: var(--r-2);
  align-self: start;
  font-size: var(--fs-micro);
}
.toc a { text-decoration: none; color: var(--fg-dim); }
.toc a:hover { color: var(--accent); }
@media (max-width: 61.99rem) { .toc { position: static; } }

.legal-layout { display: grid; gap: clamp(2rem, 4vw, 3.5rem); }
@media (min-width: 62rem) { .legal-layout { grid-template-columns: 16rem 1fr; } }

/* ============================================================================
   إضافات التحديث الأول: من نحن، المشاريع، المستندات، إعلانات تداول
   ========================================================================= */

/* ── من نحن: أرقام القصة + الرؤية والرسالة ─────────────────────────────── */

.story-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 9.5rem), 1fr));
  gap: var(--s-5);
  margin-block-start: 2.5rem;
  padding-block-start: var(--s-6);
  border-block-start: 1px solid var(--rule);
}
.story-stats .stat__value { font-size: clamp(1.9rem, 3.4vw, 2.9rem); }

.purpose {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
  gap: 1px;
  margin-block-start: clamp(3rem, 6vw, 5.5rem);
  background: var(--rule);
  border: 1px solid var(--rule);
  border-radius: var(--r-3);
  overflow: hidden;
}
.purpose__item {
  display: grid;
  gap: var(--s-4);
  align-content: start;
  padding: clamp(1.75rem, 3.4vw, 3rem);
  background: linear-gradient(160deg, var(--bg-raised), var(--bg));
}
.purpose__text {
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2.4vw, 2rem);
  line-height: 1.45;
  max-inline-size: 26ch;
  text-wrap: balance;
}

/* ── محطّات: خطّ أفقي على الشاشات الواسعة، رأسي على الجوال ─────────────── */

.milestones {
  --dot: .8rem;
  position: relative;
  display: grid;
  gap: 0;
  padding-inline-start: clamp(1.5rem, 4vw, 2.25rem);
}
.milestones::before {                       /* السكّة */
  content: "";
  position: absolute;
  inset-block: .4rem 0;
  inset-inline-start: calc(var(--dot) / 2 - .5px);
  inline-size: 1px;
  background: linear-gradient(to bottom, var(--accent-deco), var(--rule-strong) 70%, transparent);
}
.milestone { position: relative; display: grid; gap: .5rem; padding-block: 0 clamp(1.75rem, 3vw, 2.5rem); }
.milestone__dot {
  position: absolute;
  inset-block-start: .35rem;
  inset-inline-start: calc(clamp(1.5rem, 4vw, 2.25rem) * -1);
  inline-size: var(--dot);
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--accent-deco);
  box-shadow: 0 0 0 .4rem rgb(from var(--accent-deco) r g b / .2), 0 0 0 .65rem var(--bg);
}
.milestone--next .milestone__dot { background: var(--bg); border: 1.5px solid var(--accent-deco); }
.milestone__when { font-family: var(--font-display); font-size: var(--fs-h3); line-height: 1; color: var(--accent); }
.milestone h3 { font-size: var(--fs-h4); }
.milestone p:last-child { font-size: var(--fs-small); color: var(--fg-dim); max-inline-size: 34ch; }

@media (min-width: 62rem) {
  .milestones { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: clamp(1.5rem, 3vw, 3rem); padding-inline-start: 0; padding-block-start: 2.75rem; }
  .milestones::before {
    inset-block: .4rem auto;
    inset-inline: 0;
    inline-size: auto;
    block-size: 1px;
    background: linear-gradient(to left, var(--accent-deco), var(--rule-strong) 75%, transparent);
  }
  .milestone { padding: 0; }
  .milestone__dot { inset-block-start: calc(-2.75rem + .4rem - var(--dot) / 2 + .5px); inset-inline-start: 0; }
}

/* ── قيم شمس: خمس بطاقات متساوية ───────────────────────────────────────── */

.values {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: clamp(1rem, 1.6vw, 1.5rem);
}
@media (min-width: 75rem) { .values { grid-template-columns: repeat(5, 1fr); } }
.value-card {
  position: relative;
  display: grid;
  gap: var(--s-4);
  align-content: start;
  padding: clamp(1.5rem, 2.2vw, 2rem);
  border: 1px solid var(--rule);
  border-radius: var(--r-3);
  background: var(--bg-raised);
  overflow: hidden;
  isolation: isolate;
  transition: transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), border-color var(--dur-2);
}
.value-card::after {                          /* قوس شمسي خافت */
  content: "";
  position: absolute;
  z-index: -1;
  inset-block-end: -45%;
  inset-inline-end: -30%;
  inline-size: 75%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle closest-side, rgb(from var(--accent-deco) r g b / .22), transparent 66%);
  transition: transform var(--dur-3) var(--ease-out);
}
.value-card:hover { transform: translateY(-.35rem); box-shadow: var(--shadow); border-color: var(--rule-strong); }
.value-card:hover::after { transform: scale(1.15); }
.value-card__n {
  position: absolute;
  inset-block-start: clamp(1.5rem, 2.2vw, 2rem);
  inset-inline-end: clamp(1.5rem, 2.2vw, 2rem);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: .02em;
  color: var(--fg-mute);
}
.value-card h3 { font-size: var(--fs-h3); margin-block-start: var(--s-3); }
.value-card p { font-size: var(--fs-small); color: var(--fg-dim); line-height: 1.85; }

/* ── كيف نبني وجهة: مراحل متّصلة ──────────────────────────────────────── */

.process {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: clamp(1.25rem, 2.2vw, 2rem);
  counter-reset: step;
}
.process__step {
  position: relative;
  display: grid;
  gap: var(--s-3);
  align-content: start;
  padding-block-start: var(--s-5);
  border-block-start: 1px solid var(--rule-strong);
}
.process__step::before {                      /* مؤشّر المرحلة على الخط */
  content: "";
  position: absolute;
  inset-block-start: -1px;
  inset-inline-start: 0;
  inline-size: 3rem;
  block-size: 2px;
  background: var(--accent-deco);
  transition: inline-size var(--dur-3) var(--ease-out);
}
.process__step:hover::before { inline-size: 100%; }
.process__n {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 4.6vw, 3.75rem);
  line-height: 1.1;
  color: var(--accent);
}
.process__step h3 { font-size: var(--fs-h4); }
.process__step p { font-size: var(--fs-small); color: var(--fg-dim); max-inline-size: 34ch; }

/* ── مجلس الإدارة والإدارة التنفيذية ─────────────────────────────────── */

.people {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 15.5rem), 1fr));
  gap: clamp(1.25rem, 2.2vw, 2rem);
}
.person { display: grid; gap: var(--s-4); align-content: start; }
.person__photo {
  position: relative;
  aspect-ratio: 4 / 5;
  border-start-start-radius: 50vmin;          /* قوس الشمس — نفس قناع صور الموقع */
  border-start-end-radius: 50vmin;
  border-end-start-radius: var(--r-3);
  border-end-end-radius: var(--r-3);
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 38%, rgb(226 191 126 / .55), transparent 58%),
    linear-gradient(170deg, var(--sand), var(--dune));
  display: grid;
  place-items: center;
}
.person__photo img {
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  object-position: 50% 20%;
  transition: transform var(--dur-4) var(--ease-soft);
}
.person:hover .person__photo img { transform: scale(1.04); }
.person__initials {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 5vw, 3.5rem);
  color: var(--gold-ink);
}
.person__body { display: grid; gap: .3rem; }
.person__name { font-size: var(--fs-h4); }
.person__role { font-size: var(--fs-small); color: var(--accent); font-weight: 500; }
.person__initials { letter-spacing: .08em; }
.person__bio {
  font-size: var(--fs-small);
  color: var(--fg-dim);
  line-height: 1.7;
  margin-block-start: .35rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.person__actions { display: flex; flex-wrap: wrap; gap: .35rem 1.25rem; margin-block-start: .5rem; }
.person__more { justify-self: start; font-size: var(--fs-small); }

/* نافذة النبذة الكاملة */
.bio-dialog {
  inline-size: min(40rem, calc(100vw - 2rem));
  max-block-size: min(46rem, calc(100dvh - 2rem));
  padding: 0;
  border: 1px solid var(--rule);
  border-radius: var(--r-4);
  background: var(--ivory-raised);
  color: var(--ink);
  box-shadow: 0 2.5rem 6rem -2rem rgb(31 32 64 / .45);
  overflow: auto;
  overscroll-behavior: contain;
}
.bio-dialog::backdrop { background: rgb(31 32 64 / .55); backdrop-filter: blur(4px); }
.bio-dialog[open] { animation: bio-in var(--dur-2) var(--ease-out); }
@keyframes bio-in { from { opacity: 0; transform: translateY(1rem) scale(.98); } }
.bio-dialog__inner { position: relative; display: grid; gap: var(--s-5); padding: clamp(1.5rem, 4vw, 2.75rem); }
.bio-dialog__close {
  position: absolute;
  inset-block-start: 1rem;
  inset-inline-end: 1rem;
  display: grid;
  place-items: center;
  inline-size: 2.5rem;
  aspect-ratio: 1;
  border-radius: 50%;
  color: var(--ink-soft);
  transition: background var(--dur-1), color var(--dur-1);
}
.bio-dialog__close:hover { background: var(--sand); color: var(--ink); }
.bio-dialog__head {
  display: flex;
  align-items: center;
  gap: var(--s-4);
  padding-inline-end: 2.5rem;
  padding-block-end: var(--s-5);
  border-block-end: 1px solid var(--rule);
}
.bio-dialog__head h3 { font-size: var(--fs-h3); line-height: 1.35; }
.bio-dialog__head .person__role { margin-block-start: .35rem; color: var(--gold-ink); }
.bio-dialog__mark {
  flex: none;
  display: grid;
  place-items: center;
  inline-size: 4.5rem;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
  font-family: var(--font-display);
  font-size: 1.5rem;
  letter-spacing: .08em;
  color: var(--gold-ink);
  background:
    radial-gradient(circle at 50% 38%, rgb(226 191 126 / .55), transparent 62%),
    linear-gradient(170deg, var(--sand), var(--dune));
}
.bio-dialog__mark img { inline-size: 100%; block-size: 100%; object-fit: cover; }
.bio-dialog__body { display: grid; gap: 1em; color: var(--ink-soft); line-height: 1.95; }
.bio-dialog__body p + p { margin: 0; }

/* بطاقة مؤقّتة إلى حين وصول البيانات */
.person--placeholder .person__photo { background: rgb(from var(--fg) r g b / .07); }
.person__silhouette { inline-size: 42%; color: rgb(from var(--fg) r g b / .22); }
.person__silhouette svg { inline-size: 100%; block-size: auto; }
.person--placeholder .person__name,
.person--placeholder .person__role,
.person--placeholder .person__bio { color: var(--fg-mute); }
.people + .notice { margin-block-start: 2rem; }

/* ── أرقام المشروع (فندق الفيرمونت) ────────────────────────────────────── */

.facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: clamp(1.25rem, 2.2vw, 2rem);
  margin: 0;
}
.fact {
  position: relative;
  display: grid;
  gap: var(--s-3);
  align-content: space-between;
  min-block-size: 11rem;
  padding: clamp(1.5rem, 2.4vw, 2.25rem);
  border: 1px solid var(--rule);
  border-radius: var(--r-3);
  background: linear-gradient(160deg, var(--bg-raised), var(--bg));
  overflow: hidden;
}
.fact__label { font-size: var(--fs-small); color: var(--fg-dim); }
.fact__value {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 4.4vw, 3.6rem);
  line-height: 1.1;
  color: var(--fg);
}
.fact__value small { font-size: var(--fs-body); color: var(--accent); font-family: var(--font-body); font-weight: 500; }

/* ── المشاريع ─────────────────────────────────────────────────────────── */

.projects {
  display: grid;
  gap: clamp(1.25rem, 2.2vw, 2rem);
}
@media (min-width: 62rem) {
  .projects:has(> :nth-child(3)) { grid-template-columns: 1fr 1fr; }
  .projects:has(> :nth-child(3)) > :first-child { grid-column: 1 / -1; }
}
.showcase--soon .showcase__media img { filter: saturate(.55); }
.badge--soon {
  background: var(--gold-glow);
  color: var(--dusk);
  letter-spacing: 0;
  margin-inline-end: .35rem;
}
.btn.is-disabled { cursor: default; opacity: .72; }
.btn.is-disabled::before { display: none; }
.btn.is-disabled:hover { color: var(--btn-fg); box-shadow: none; }

/* ── جداول المستندات ──────────────────────────────────────────────────── */

table.data--docs td { vertical-align: middle; }
.doc-title { display: inline-flex; align-items: center; gap: .85rem; color: var(--fg); }
.doc-title .disc { inline-size: 2.2rem; block-size: 2.2rem; }
.doc-title .disc svg { inline-size: 1.05rem; block-size: 1.05rem; }
.doc-link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .5em 1em;
  border: 1px solid var(--rule-strong);
  border-radius: var(--r-pill);
  font-size: var(--fs-micro);
  color: var(--accent);
  text-decoration: none;
  white-space: nowrap;
  transition: background-color var(--dur-1), color var(--dur-1), border-color var(--dur-1);
}
.doc-link:hover { background: var(--accent); color: var(--accent-ink); border-color: transparent; }

/* ── الأخبار: تنقّل بين القسمين ──────────────────────────────────────── */

.subnav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
  gap: 1px;
  margin-block-end: clamp(3rem, 6vw, 5rem);
  background: var(--rule);
  border: 1px solid var(--rule);
  border-radius: var(--r-3);
  overflow: hidden;
}
.subnav__link {
  display: grid;
  gap: .35rem;
  padding: clamp(1.1rem, 2vw, 1.5rem) clamp(1.25rem, 2.4vw, 2rem);
  background: var(--bg);
  text-decoration: none;
  color: var(--fg);
  transition: background-color var(--dur-1);
}
.subnav__link:hover { background: var(--bg-raised); color: var(--fg); }
.subnav__link[aria-current="true"] { background: var(--bg-raised); box-shadow: inset 0 -2px 0 var(--accent); }
.subnav__k { font-size: var(--fs-micro); letter-spacing: .02em; color: var(--accent); }
.subnav__v { font-family: var(--font-display); font-size: var(--fs-h4); }

/* ── إعلانات تداول السعودية ───────────────────────────────────────────── */

.announce { border-block-start: 1px solid var(--rule-strong); }
.announce__item { border-block-end: 1px solid var(--rule); }
.announce__link {
  display: grid;
  gap: .5rem var(--s-6);
  align-items: center;
  padding: clamp(1.1rem, 2vw, 1.5rem) .25rem;
  text-decoration: none;
  color: var(--fg);
  transition: background-color var(--dur-1), padding var(--dur-2) var(--ease-out);
}
@media (min-width: 48rem) {
  .announce__link { grid-template-columns: 10rem 1fr auto; }
}
.announce__link:hover { background: rgb(from var(--fg) r g b / .04); padding-inline: 1rem; color: var(--fg); }
.announce__date { font-size: var(--fs-micro); color: var(--fg-mute); font-variant-numeric: tabular-nums; }
.announce__title { font-family: var(--font-display); font-size: var(--fs-h4); line-height: 1.5; }
.announce__go {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-size: var(--fs-micro);
  color: var(--accent);
  white-space: nowrap;
}
.announce__link:hover .announce__title { color: var(--accent); }
.announce__more { margin-block-start: 2rem; }
