/* ISAAD V9.4 premium enhancement layer.
   This file intentionally leaves the stable V9.3 site.css untouched. */
:root {
  --page-max: 1220px;
  --header-height: 82px;
  --color-ink: #10283e;
  --color-ink-soft: #405267;
  --color-brand: #087f79;
  --color-brand-dark: #075f5b;
  --color-brand-pale: #e9f6f4;
  --color-gold: #c99a26;
  --color-gold-pale: #fbf5e3;
  --color-mist: #f6f8f7;
  --color-line: #d8e1e3;
  --shadow-soft: 0 24px 58px rgba(16,40,62,.12);
  --shadow-card: 0 6px 18px rgba(16,40,62,.045);
}

html { scroll-padding-top: calc(var(--header-height) + 1.25rem); }
body {
  color: var(--color-ink);
  background: #fff;
  line-height: 1.68;
}

h1,h2,h3,h4,
.display-title,.page-title,.section-title,.feature-title,.card-title,.cta-title {
  font-family: Georgia, Cambria, "Times New Roman", serif;
  font-weight: 700;
  letter-spacing: -.025em;
}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] h4,
[dir="rtl"] .display-title,[dir="rtl"] .page-title,[dir="rtl"] .section-title,
[dir="rtl"] .feature-title,[dir="rtl"] .card-title,[dir="rtl"] .cta-title {
  font-family: Tahoma, Arial, sans-serif;
  letter-spacing: 0;
  font-weight: 800;
}

.site-shell { width: min(calc(100% - 3rem), var(--page-max)); }
.section-space { padding-block: clamp(4.5rem, 7vw, 7rem); }
.section-space-sm { padding-block: clamp(3.75rem, 5.5vw, 5.75rem); }

header.fixed {
  background: rgba(255,255,255,.97);
  border-color: rgba(216,225,227,.92);
  box-shadow: 0 1px 0 rgba(16,40,62,.04), 0 10px 32px rgba(16,40,62,.035);
}
header .site-shell { min-height: var(--header-height); }
header nav a {
  border-radius: .5rem !important;
  padding-inline: .8rem !important;
  letter-spacing: -.01em;
}
header nav a[aria-current="page"] {
  box-shadow: inset 0 0 0 1px rgba(8,127,121,.12);
}
header img[src*="isaad_logo"] { border-radius: .55rem !important; }

.eyebrow {
  color: var(--color-brand-dark);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .145em;
}
.eyebrow::before {
  width: 1.8rem;
  height: 1px;
  background: var(--color-gold);
}
[dir="rtl"] .eyebrow { font-size: .79rem; }

.display-title {
  max-width: 15ch;
  font-size: clamp(3rem, 5.35vw, 5rem);
  line-height: 1.02;
}
.page-title {
  max-width: 20ch;
  font-size: clamp(2.5rem, 4.3vw, 4rem);
  line-height: 1.06;
}
.section-title {
  max-width: 23ch;
  font-size: clamp(2rem, 3.2vw, 2.9rem);
  line-height: 1.12;
}
.lead {
  color: var(--color-ink-soft);
  font-size: clamp(1.03rem, 1.45vw, 1.18rem);
  line-height: 1.78;
}

.hero-grid {
  background: #fff;
  border-bottom: 1px solid rgba(216,225,227,.85);
}
.hero-grid::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: min(46vw, 42rem);
  background: linear-gradient(135deg, rgba(233,246,244,.74), rgba(255,255,255,0) 74%);
  content: "";
}
[dir="rtl"] .hero-grid::before { inset: 0 0 0 auto; }
.hero-grid::after {
  width: 28rem;
  height: 28rem;
  background: rgba(201,154,38,.055);
}
.hero-grid > .site-shell { min-height: min(720px, calc(100vh - var(--header-height))); }

.hero-photo-frame {
  min-height: 470px;
  border: 1px solid rgba(16,40,62,.12);
  border-radius: .9rem;
  box-shadow: 0 28px 72px rgba(16,40,62,.16);
}
.hero-photo-frame::after {
  background: linear-gradient(to top, rgba(16,40,62,.30), transparent 42%);
}
.hero-photo-label {
  inset-inline: 1rem;
  bottom: 1rem;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: .55rem;
  padding: .9rem 1rem;
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 28px rgba(16,40,62,.12);
}
.hero-photo-label strong { font-family: var(--font-sans); font-size: .96rem; }

.button-primary,.button-secondary,.button-quiet {
  border-radius: .55rem;
  font-weight: 800;
}
.button-primary {
  box-shadow: 0 9px 20px rgba(8,127,121,.17);
}
.button-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(8,127,121,.23);
}
.button-secondary:hover { transform: translateY(-1px); }

.metric {
  border-inline-start-width: 1px;
  border-color: var(--color-gold);
  padding-inline-start: 1.25rem;
}
.metric-value {
  font-family: Georgia, Cambria, "Times New Roman", serif;
  font-weight: 700;
  letter-spacing: -.035em;
}
[dir="rtl"] .metric-value { font-family: Tahoma, Arial, sans-serif; font-weight: 800; }
.metric-label { max-width: 19rem; color: #536477; }

.compact-card {
  border: 0;
  border-top: 1px solid var(--color-line);
  border-radius: 0;
  padding: 1.5rem .1rem 1.4rem;
  box-shadow: none;
}
.compact-card svg {
  box-sizing: content-box;
  width: 1.2rem;
  height: 1.2rem;
  padding: .65rem;
  border-radius: .55rem;
  background: var(--color-brand-pale);
}

.surface-muted { background: var(--color-mist); }
.feature-panel,.news-card,.partner-card,.resource-card,.gallery-group,.partnership-contact,.card {
  border-radius: .8rem;
  box-shadow: none;
}
.feature-panel {
  border-color: rgba(16,40,62,.12);
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
.feature-panel:hover {
  transform: translateY(-3px);
  border-color: rgba(8,127,121,.30);
  box-shadow: 0 14px 34px rgba(16,40,62,.08);
}
.feature-photo { aspect-ratio: 4 / 3; }
.feature-copy { padding: 1.5rem 1.55rem 1.65rem; }
.feature-copy .eyebrow { font-size: .66rem; }

.photo-stage,.portrait-stage {
  border: 1px solid rgba(16,40,62,.10);
  border-radius: .8rem;
  box-shadow: 0 22px 54px rgba(16,40,62,.11);
}
.photo-stage-contain { box-shadow: none; }

.resource-card,.partner-card {
  border-color: rgba(16,40,62,.11);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.resource-card:hover,.partner-card:hover {
  transform: translateY(-2px);
  border-color: rgba(8,127,121,.28);
  box-shadow: 0 12px 28px rgba(16,40,62,.065);
}
.resource-label { border-radius: .4rem; letter-spacing: .06em; }

.timeline-line::before { background: rgba(8,127,121,.20); }
.timeline-dot { box-shadow: 0 0 0 5px var(--color-mist); }

.cta-band {
  position: relative;
  overflow: hidden;
  background: #123a45;
  padding-block: 4.25rem;
}
.cta-band::after {
  position: absolute;
  inset: auto -6rem -10rem auto;
  width: 22rem;
  height: 22rem;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 50%;
  content: "";
}
[dir="rtl"] .cta-band::after { inset: auto auto -10rem -6rem; }
.cta-band .site-shell { position: relative; z-index: 1; }
.cta-band .button-secondary { border-color: rgba(255,255,255,.32); background: transparent; color: #fff; }
.cta-band .button-secondary:hover { border-color: rgba(255,255,255,.7); background: rgba(255,255,255,.08); }

footer.bg-ink { background: #0d2537; }
footer a { text-underline-offset: .22em; }

.prose-readable { max-width: 76ch; }
.prose-readable h2 { margin-top: 2.1rem; }
.form-control { border-radius: .55rem; }

.mobile-nav-static {
  background: rgba(255,255,255,.99);
  border-top-color: var(--color-line);
}
.mobile-nav-static a { border-radius: .55rem; }

@media (max-width: 1023px) {
  :root { --header-height: 74px; }
  .hero-grid > .site-shell { min-height: auto; }
  .hero-photo-frame { min-height: 380px; }
  .site-shell { width: min(calc(100% - 2.25rem), var(--page-max)); }
}

@media (max-width: 639px) {
  .site-shell { width: min(calc(100% - 1.4rem), var(--page-max)); }
  .section-space { padding-block: 3.75rem; }
  .section-space-sm { padding-block: 3.2rem; }
  .display-title { font-size: clamp(2.45rem, 12vw, 3.35rem); line-height: 1.04; }
  .page-title { font-size: clamp(2.2rem, 10vw, 3rem); }
  .section-title { font-size: clamp(1.8rem, 8vw, 2.35rem); }
  .hero-photo-frame { min-height: 290px; border-radius: .65rem; }
  .hero-photo-label { inset-inline: .7rem; bottom: .7rem; padding: .72rem .8rem; }
  .button-primary,.button-secondary { width: 100%; }
  .metric { padding-inline-start: .9rem; }
  .feature-panel,.news-card,.partner-card,.resource-card,.gallery-group,.partnership-contact,.card,
  .photo-stage,.portrait-stage { border-radius: .65rem; }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
