/* =====================================================================
   ABOUT PAGE (معلومات عنا): masthead, leadership quote, council brief,
   goals, competencies, decree call-to-action.
   Page-specific layout. Loaded only on pages/about-us.html.
   Built entirely on the shared tokens + motifs (dome frame, gold rule,
   lattice watermark, kicker/h-sec). No new hues, no raw values.
   ===================================================================== */

/* ---------- 1. MASTHEAD ----------
   The page masthead is now the shared `.page-hero` component (assets/css/
   base.css), reused across every inner page. No page-specific rules here. */

/* ---------- 2. LEADERSHIP QUOTE (cream-warm light band) ----------
   The emotional centre: an oversized gold quote glyph, His Highness in a
   dome-circle portrait with the shared gold echo ring. */
.abt-quote { background: linear-gradient(180deg, var(--aegold-50), var(--bg-surface) 72%); }
.abt-quote .wrap { display: grid; grid-template-columns: 1.55fr 1fr; gap: clamp(40px, 6vw, 96px); align-items: center; }
.abt-quote-body { position: relative; }
/* big decorative opening quotation mark, gold, sitting above the eyebrow */
.abt-quote-body::before { content: "\201C"; position: absolute; inset-block-start: -.46em; inset-inline-start: -.04em;
  font-family: var(--font-heading-en); font-weight: 800; font-size: clamp(96px, 12vw, 168px);
  line-height: 1; color: var(--aegold-300); opacity: .5; z-index: 0; pointer-events: none; }
.abt-quote-body > * { position: relative; z-index: 1; }
.abt-quote blockquote { margin: 0; font-family: var(--font-heading-ar); font-weight: 500;
  font-size: clamp(22px, 2.5vw, 34px); line-height: var(--leading-loose); letter-spacing: 0; color: var(--ink); }
.abt-quote figcaption { margin-block-start: var(--space-14); padding-inline-start: var(--space-10);
  border-inline-start: 3px solid var(--aegold-500); }
.abt-quote-name { display: block; font-family: var(--font-heading-ar); font-weight: 700;
  font-size: clamp(18px, 1.6vw, 22px); color: var(--aegold-800); }
.abt-quote-role { display: block; margin-block-start: var(--space-4); font-size: 15.5px;
  line-height: 1.6; color: var(--aeblack-600); max-width: 46ch; }
.abt-quote-portrait { justify-self: center; width: 100%; max-width: 380px; }
.abt-quote-portrait .framed { display: block; width: 100%; }
.abt-quote-portrait .shot { aspect-ratio: 1 / 1; }
.abt-quote-portrait .shot img { object-position: center top; }

/* ---------- 3. COUNCIL BRIEF (ink band, copy + dome image) ----------
   Mirrors the home Mandate split but on the dark surface, so the original
   page's dark "about" block survives as bronze-ink instead of teal. */
.abt-about { overflow: hidden; }
.abt-about::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: var(--pattern-lattice) center / 220px; opacity: .05; }
.abt-about .wrap { position: relative; z-index: 1; display: grid;
  grid-template-columns: 1.1fr .9fr; gap: clamp(40px, 5vw, 80px); align-items: center; }
.abt-about-copy .h-sec { margin-block-end: var(--space-12); }
.abt-about-copy p { font-size: 16.5px; line-height: 1.95; color: #D8D2C3; margin: 0 0 var(--space-11); }
.abt-about-copy p:last-child { margin-block-end: 0; }
.abt-about-media { justify-self: center; width: 100%; position: relative; }
.abt-about-media .framed { display: block; width: 100%; }
.abt-about-media .shot { aspect-ratio: 4 / 3; }
/* on ink the offset gold echo reads cleanly, keep it */

/* ---------- 4. GOALS (light canvas, asymmetric bento) ----------
   Five goals in a bento: one feature tile, a wide tile, two compact tiles,
   and a full-width closing strip. Tile sizes suit the differing content
   lengths. Icon + title + body only, start-aligned heading, no numerals. */
.abt-goals .sec-head { margin-bottom: var(--space-16); }
.abt-goals-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(16px, 1.5vw, 24px);
  grid-template-areas:
    "g1 g1 g2 g2"
    "g1 g1 g3 g4"
    "g5 g5 g5 g5"; }
.abt-goal:nth-child(1) { grid-area: g1; }
.abt-goal:nth-child(2) { grid-area: g2; }
.abt-goal:nth-child(3) { grid-area: g3; }
.abt-goal:nth-child(4) { grid-area: g4; }
.abt-goal:nth-child(5) { grid-area: g5; }
.abt-goal { display: flex; flex-direction: column; gap: var(--space-9);
  padding: clamp(22px, 2.1vw, 32px); background: var(--bg-surface);
  border: 1px solid var(--border-subtle); border-radius: var(--radius-xl);
  transition: border-color var(--duration-base) var(--ease-standard),
              background var(--duration-base) var(--ease-standard); }
.abt-goal:hover { border-color: var(--aegold-300); background: var(--aegold-50); }
.abt-goal-ic { width: 56px; height: 56px; flex-shrink: 0; border-radius: var(--radius-lg);
  background: var(--aegold-50); border: 1px solid var(--aegold-200); color: var(--aegold-700);
  display: inline-flex; align-items: center; justify-content: center;
  transition: background var(--duration-base) var(--ease-standard), color var(--duration-base) var(--ease-standard); }
.abt-goal:hover .abt-goal-ic { background: var(--grad-gold); border-color: transparent; color: var(--fg-on-gold); }
.abt-goal-body { display: flex; flex-direction: column; gap: var(--space-6); }
.abt-goal h3 { font-family: var(--font-heading-ar); font-weight: 700; font-size: clamp(20px, 1.7vw, 23px);
  color: var(--ink); margin: 0; }
.abt-goal p { font-size: 15.5px; line-height: 1.75; color: var(--aeblack-600); margin: 0; }
/* feature tile: the anchor goal reads larger on a gold-tinted ground */
.abt-goal:nth-child(1) { justify-content: space-between; gap: var(--space-14);
  background: linear-gradient(165deg, var(--aegold-50), var(--bg-surface) 72%); border-color: var(--aegold-200); }
.abt-goal:nth-child(1) .abt-goal-ic { width: 68px; height: 68px; }
.abt-goal:nth-child(1) h3 { font-size: clamp(24px, 2.3vw, 32px); }
.abt-goal:nth-child(1) p { font-size: 16.5px; line-height: 1.85; }
/* closing strip: lay the tile out horizontally to use the full width */
.abt-goal:nth-child(5) { flex-direction: row; align-items: center; gap: var(--space-12); }
.abt-goal:nth-child(5) .abt-goal-body { gap: var(--space-4); }

/* ---------- 5. COMPETENCIES (light, ordinal accordion) ----------
   The three grouped lists become an accordion (inspired by the reference
   "strategic goals" pattern): each ordinal row expands to reveal its bullets.
   Native <details>/<summary>, no JS, keyboard accessible by default. */
.abt-comp-band { background: linear-gradient(180deg, var(--bg-surface), var(--aegold-50)); }
.abt-acc { display: flex; flex-direction: column; border-block: 1px solid var(--border-subtle); }
.abt-acc-item { border-block-start: 1px solid var(--border-subtle); }
.abt-acc-item:first-child { border-block-start: 0; }
.abt-acc-head { list-style: none; cursor: pointer; display: flex; align-items: center; gap: var(--space-10);
  padding-block: clamp(20px, 2vw, 30px); }
.abt-acc-head::-webkit-details-marker { display: none; }
.abt-acc-head:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 4px; border-radius: var(--radius-xs); }
.abt-acc-ord { flex-shrink: 0; font-family: var(--font-heading-ar); font-weight: 700; font-size: 14px;
  color: var(--aegold-700); padding: 6px 14px; background: var(--aegold-50);
  border: 1px solid var(--aegold-200); border-radius: var(--radius-full); letter-spacing: .02em;
  transition: background var(--duration-base) var(--ease-standard), color var(--duration-base) var(--ease-standard); }
.abt-acc-item[open] .abt-acc-ord { background: var(--grad-gold); border-color: transparent; color: var(--fg-on-gold); }
.abt-acc-title { flex: 1; font-family: var(--font-heading-ar); font-weight: 700;
  font-size: clamp(19px, 2vw, 27px); line-height: 1.3; color: var(--ink);
  transition: color var(--duration-base) var(--ease-standard); }
.abt-acc-item[open] .abt-acc-title { color: var(--aegold-800); }
/* expand / collapse affordance: a gold chip holding a chevron caret that flips
   open and fills with gold. Centered with flex (no inset-vs-transform conflict),
   so the glyph renders crisply in both RTL and LTR. */
.abt-acc-sign { flex-shrink: 0; width: 40px; height: 40px; border-radius: var(--radius-full);
  background: var(--aegold-50); border: 1px solid var(--aegold-200); color: var(--aegold-700);
  display: inline-flex; align-items: center; justify-content: center;
  transition: background var(--duration-base) var(--ease-standard),
              border-color var(--duration-base) var(--ease-standard),
              color var(--duration-base) var(--ease-standard); }
.abt-acc-sign::before { content: ""; width: 10px; height: 10px;
  border-right: 2.5px solid currentColor; border-bottom: 2.5px solid currentColor;
  border-bottom-right-radius: 2px; transform: translateY(-2px) rotate(45deg);
  transition: transform var(--duration-base) var(--ease-emphasis); }
.abt-acc-head:hover .abt-acc-sign { border-color: var(--aegold-300); }
.abt-acc-item[open] .abt-acc-sign { background: var(--grad-gold); border-color: transparent; color: var(--fg-on-gold); }
.abt-acc-item[open] .abt-acc-sign::before { transform: translateY(2px) rotate(-135deg); }
.abt-acc-body { padding-block: 0 clamp(22px, 2.4vw, 34px); padding-inline-start: calc(var(--space-12) + 14px); }
/* Smooth open / close: animate the UA ::details-content box so the panel eases
   instead of snapping. interpolate-size (inherited from the band) lets height
   animate to/from auto; allow-discrete keeps the content painted through the
   close. Chrome 129+ animates this natively; elsewhere it degrades to the
   instant native toggle (content stays fully accessible either way). */
.abt-comp-band { interpolate-size: allow-keywords; }
.abt-acc-item::details-content { height: 0; overflow: clip;
  transition: height var(--duration-slow) var(--ease-emphasis),
              content-visibility var(--duration-slow) allow-discrete; }
.abt-acc-item[open]::details-content { height: auto; }
.abt-comp-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-10) clamp(28px, 3vw, 56px); }
.abt-comp-list li { position: relative; padding-inline-start: var(--space-12);
  font-size: 15.5px; line-height: 1.7; color: var(--aeblack-700); }
/* gold dome-dot bullet marker (logical inset, flips with direction) */
.abt-comp-list li::before { content: ""; position: absolute; inset-inline-start: 0; inset-block-start: .5em;
  width: 11px; height: 11px; border-radius: 49% 49% 3px 3px / 30% 30% 3px 3px;
  background: var(--grad-gold); }
@media (prefers-reduced-motion: reduce) { .abt-acc-item::details-content { transition: none; } }

/* ---------- 6. DECREE CALL-TO-ACTION (contained ink panel) ----------
   A framed bronze-ink panel (not a full band) so the page closes on a
   monumental note without reading as a second heavy dark section. */
.abt-decree { background: var(--bg-page); }
.abt-decree-panel { position: relative; overflow: hidden; border-radius: var(--radius-2xl);
  background: var(--ink); border: 1px solid var(--aegold-900);
  padding: clamp(40px, 5vw, 72px) clamp(28px, 4vw, 64px); text-align: center;
  display: flex; flex-direction: column; align-items: center; gap: var(--space-14); }
.abt-decree-panel::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: var(--pattern-lattice) center / 200px; opacity: .07; }
.abt-decree-panel > * { position: relative; z-index: 1; }
.abt-decree-ic { width: 64px; height: 64px; border-radius: var(--radius-full);
  background: rgba(182,138,53,.14); border: 1px solid var(--aegold-700); color: var(--aegold-300);
  display: inline-flex; align-items: center; justify-content: center; }
.abt-decree-text { font-family: var(--font-heading-ar); font-weight: 600;
  font-size: clamp(19px, 2vw, 27px); line-height: 1.5; color: #fff; margin: 0; max-width: 30ch; }

/* =====================================================================
   RESPONSIVE: about sections
   ===================================================================== */
@media (max-width: 1080px) {
  .abt-quote .wrap { grid-template-columns: 1fr; gap: 48px; }
  .abt-quote-portrait { order: -1; max-width: 300px; }
  .abt-about .wrap { grid-template-columns: 1fr; gap: 44px; }
  .abt-about-media { max-width: 520px; order: -1; }
  /* bento folds to two columns: feature stays wide, the rest pair up */
  .abt-goals-grid { grid-template-columns: repeat(2, 1fr);
    grid-template-areas: "g1 g1" "g2 g3" "g4 g5"; }
  .abt-goal:nth-child(5) { flex-direction: column; align-items: stretch; }
  .abt-comp-list { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .abt-goals-grid { grid-template-columns: 1fr; max-width: 460px; margin-inline: auto;
    grid-template-areas: "g1" "g2" "g3" "g4" "g5"; }
  .abt-comp-list { grid-template-columns: 1fr; }
  .abt-acc-body { padding-inline-start: 0; }
  .abt-quote figcaption { padding-inline-start: var(--space-8); }
}
