.hero-art {
  position: absolute;
  inset: 0;
  width: auto;
  height: auto;
  background: url('saudi-journey-v2.png') center / cover no-repeat;
  opacity: .92;
}
.hero::before {
  background: linear-gradient(90deg, rgba(4,60,49,.08), rgba(4,60,49,.68) 55%, #043c31 100%);
  z-index: 1;
}
.hero-copy, .scroll-cue { z-index: 2; }
.hero {
  align-items: flex-start;
  justify-content: center;
  padding-top: 112px;
}
.hero-stage {
  position: relative;
  z-index: 2;
  width: min(760px, 100%);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: center;
  text-align: center;
}
.hero-logo-wrap {
  position: relative;
  width: 148px;
  margin: 0;
  padding: 0;
  background: transparent;
  filter: drop-shadow(0 12px 20px rgba(0,23,18,.3));
}
.hero-logo-wrap::before {
  display: none;
}
.hero-logo {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0;
  filter: saturate(1.04) contrast(1.02);
}
.hero-copy {
  width: 100%;
  max-width: 620px;
  margin-inline: auto;
  text-align: center;
}
.hero-copy .hero-journey {
  margin: 12px auto 0;
  color: #f2dfb4;
  font-family: "Noto Kufi Arabic", sans-serif;
  max-width: 720px;
  font-size: clamp(.92rem, 1.35vw, 1.08rem);
  font-weight: 500;
  line-height: 2;
}
.hero h1 {
  margin: 0;
  font-size: clamp(2.15rem, 3.8vw, 3.75rem);
  line-height: 1.25;
}
.intro h2,
.section-head h2 {
  font-size: clamp(2rem, 3.2vw, 3.15rem);
  line-height: 1.22;
}
.region-card h3 {
  font-size: 1.42rem;
  line-height: 1.35;
}
.region-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 270px;
  padding: 38px 24px 32px;
  text-align: center;
}
.region-card .region-logo {
  display: grid;
  place-items: center;
  width: 92px;
  height: 92px;
  margin: 0 auto 12px;
  padding: 7px;
  overflow: hidden;
  border: 1px solid rgba(200,164,91,.26);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 10px 28px rgba(7,88,68,.10);
  transition: transform .25s ease, box-shadow .25s ease;
}
.region-card .region-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
}
.region-card h3 {
  width: 100%;
  margin: 0;
  text-align: center;
}
.region-card p {
  width: 100%;
  max-width: 220px;
  margin: 7px auto 0;
  text-align: center;
}
.region-card .num {
  position: absolute;
  top: 18px;
  right: 20px;
}
.region-card:hover .region-logo,
.region-card:focus-visible .region-logo {
  transform: scale(1.06);
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
}
.feature-card h3 {
  font-size: 1.78rem;
  line-height: 1.35;
}
.dialog-head h2 {
  font-size: 2.65rem;
  line-height: 1.2;
}
.dialog-body h3 {
  font-size: 1.42rem;
}
footer strong {
  font-size: 1.45rem;
}
.intro {
  display: block;
  padding-block: clamp(76px, 9vw, 125px);
  background:
    radial-gradient(circle at 10% 12%, rgba(200,164,91,.13), transparent 24%),
    var(--cream);
}
.kingdom-story {
  width: min(1180px, 100%);
  margin-inline: auto;
}
.story-head {
  text-align: center;
  margin-bottom: clamp(42px, 6vw, 72px);
}
.story-head h2 {
  margin: 10px 0 0;
  color: var(--green);
  font-size: clamp(2.4rem, 4.4vw, 4.4rem);
}
.story-columns {
  display: block;
}
.story-part {
  position: relative;
  column-count: 2;
  column-gap: clamp(34px, 5vw, 72px);
  column-rule: 1px solid rgba(200,164,91,.28);
}
.story-part + .story-part {
  padding-top: clamp(44px, 6vw, 76px);
  border-top: 1px solid rgba(200,164,91,.45);
}
.story-part p {
  margin: 0;
  color: #425b53;
  font-family: "Noto Naskh Arabic", serif;
  font-size: clamp(1.08rem, 1.35vw, 1.28rem);
  line-height: 1.82;
}
.story-part h3 {
  column-span: all;
  margin: 0 0 28px;
  color: var(--green);
  font-family: "Noto Naskh Arabic", serif;
  font-size: clamp(1.8rem, 2.5vw, 2.55rem);
  line-height: 1.35;
  text-align: center;
}
.story-part strong {
  color: var(--green);
}
.story-closing {
  color: var(--green) !important;
  font-weight: 700;
}
.place-photo-story {
  margin: clamp(48px, 7vw, 88px) 0;
  padding: 9px;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-auto-rows: 118px;
  grid-auto-flow: dense;
  gap: 9px;
  background: #fff;
  border: 1px solid rgba(7,88,68,.13);
  box-shadow: 0 24px 70px rgba(7,55,44,.13);
}
.photo-card {
  position: relative;
  margin: 0;
  overflow: hidden;
  background: #d9e2dd;
}
.photo-card::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to top,rgba(1,35,27,.52),transparent 54%);
  opacity: .42;
  transition: opacity .45s ease;
}
.photo-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .75s cubic-bezier(.2,.8,.2,1),filter .5s ease;
}
.photo-card:hover img { transform: scale(1.07); filter: saturate(1.1) brightness(1.04); }
.photo-card:hover::after { opacity: .18; }
.photo-card figcaption {
  position: absolute;
  z-index: 2;
  right: 16px;
  bottom: 13px;
  color: #fff;
  font-size: .78rem;
  font-weight: 700;
  text-shadow: 0 2px 10px rgba(0,0,0,.58);
}
.photo-hero { grid-column: span 2; grid-row: span 2; }
.photo-wide { grid-column: span 2; }
.photo-tall { grid-row: span 2; }
.place-manifesto {
  width: min(1180px, 100%);
  margin: 0 auto clamp(68px, 8vw, 105px);
  padding-bottom: clamp(58px, 7vw, 88px);
  border-bottom: 1px solid rgba(7,88,68,.14);
}
.place-manifesto > h2 {
  margin: 0 0 clamp(38px, 5vw, 62px);
  color: var(--green);
  text-align: center;
  font-family: "Noto Naskh Arabic", serif;
  font-size: clamp(2.35rem, 4vw, 4rem);
  line-height: 1.25;
}
.manifesto-columns {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: clamp(38px, 6vw, 84px);
  align-items: start;
}
.manifesto-columns > div + div {
  padding-right: clamp(30px, 4vw, 55px);
  border-right: 1px solid rgba(200,164,91,.48);
}
.manifesto-columns p {
  margin: 0;
  color: #425b53;
  font-family: "Noto Naskh Arabic", serif;
  font-size: clamp(1.05rem, 1.25vw, 1.22rem);
  line-height: 1.82;
}
.manifesto-columns h3 {
  margin: 0 0 26px;
  color: var(--green);
  font-family: "Noto Naskh Arabic", serif;
  font-size: clamp(1.85rem, 2.6vw, 2.65rem);
  text-align: center;
}
.manifesto-columns strong {
  color: var(--green);
}
.manifesto-closing {
  margin-top: 18px !important;
  color: var(--green) !important;
  font-weight: 700;
  font-size: clamp(1.35rem, 1.7vw, 1.65rem) !important;
}
.region-tools h2 {
  margin: 0;
  color: var(--green);
  font-family: "Noto Naskh Arabic", serif;
  font-size: clamp(2rem, 3vw, 3rem);
  text-align: center;
}
.region-tools { display: grid; grid-template-columns: 1fr; justify-items: center; }
.region-tools .search { justify-self: center; }
.region-card h3,.feature-card h3,.dialog-head h2,.dialog-body h3 { text-align: center; }
.brand .oasis-mark {
  width: 46px;
  height: 54px;
  padding: 3px;
  flex: 0 0 auto;
  overflow: hidden;
  transform: none;
  border: 1px solid rgba(222,190,116,.8);
  border-radius: 4px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 5px 16px rgba(0,24,18,.18);
}
.brand .oasis-mark img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.hero .primary {
  margin-top: 16px;
}
@media (max-width: 900px) {
  .hero-art { width: auto; opacity: .72; }
  .hero-stage { gap: 16px; }
  .story-part { column-count: 1; column-rule: 0; }
  .story-part + .story-part {
    padding: 42px 0 0;
    border-top: 1px solid rgba(200,164,91,.45);
  }
  .place-photo-story { grid-template-columns: repeat(4,minmax(0,1fr)); grid-auto-rows: 108px; }
  .manifesto-columns { grid-template-columns: 1fr; }
  .manifesto-columns > div + div {
    padding: 42px 0 0;
    border-right: 0;
    border-top: 1px solid rgba(200,164,91,.48);
  }
}
@media (max-width: 650px) {
  .hero-art { width: auto; height: auto; left: 0; }
  .hero { padding-top: 92px; }
  .hero-stage { gap: 14px; }
  .hero-logo-wrap { width: 108px; }
  .hero-copy { text-align: center; }
  .hero h1 { font-size: 2rem; }
  .intro h2, .section-head h2 { font-size: 2rem; }
  .region-card h3 { font-size: 1.34rem; }
  .feature-card h3 { font-size: 1.62rem; }
  .dialog-head h2 { font-size: 2.15rem; }
  .place-photo-story { grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: 102px; gap: 6px; padding: 6px; }
  .photo-hero { grid-column: span 2; }
  .photo-wide { grid-column: span 2; }
}

/* المرحلة الأولى: تفعيل بطاقات المحافظات */
.governorates { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.gov { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 16px; border: 1px solid var(--line); background: #fff; color: var(--ink); font: inherit; font-size: .84rem; cursor: pointer; text-align: right; transition: .2s; }
.gov b { color: var(--gold); font-size: 1rem; }
.gov:hover, .gov:focus-visible { border-color: var(--gold); color: #fff; background: var(--green); outline: none; transform: translateY(-2px); }
.governorate-head { background: linear-gradient(135deg, var(--green), #0a7157); }
.governorate-body { text-align: center; padding-block: 50px; }
.phase-label { display: inline-block; padding: 7px 13px; border: 1px solid rgba(200,164,91,.55); color: var(--green); font-size: .75rem; }
.governorate-body h3 { margin: 18px 0 10px; }
.governorate-body p { max-width: 570px; margin: 0 auto; color: #536760; line-height: 2; }
.back-to-region { margin-top: 28px; padding: 12px 20px; border: 0; background: var(--gold); color: #12352c; font: inherit; font-weight: 700; cursor: pointer; }
.back-to-region:hover, .back-to-region:focus-visible { background: var(--green); color: #fff; outline: none; }
@media (max-width: 650px) { .governorates { grid-template-columns: 1fr 1fr; } .gov { padding: 12px; } .governorate-body { padding-block: 38px; } }

/* صفحات محتوى المناطق */
.region-content-btn { width: 100%; margin: 0 0 30px; padding: 18px 22px; border: 0; background: var(--gold); color: #12352c; font: inherit; font-weight: 800; cursor: pointer; text-align: right; display: flex; justify-content: space-between; align-items: center; }
.region-content-btn[hidden] { display: none; }
.region-content-btn:hover, .region-content-btn:focus-visible { background: var(--green); color: #fff; outline: none; }
.region-content-dialog { width: min(1120px, calc(100% - 28px)); max-height: 92vh; overflow: auto; background: var(--cream); }
.region-content { font-family: "Noto Naskh Arabic", serif; font-size: .95rem; line-height: 1.48; }
.content-hero { min-height: 330px; padding: 72px clamp(28px, 7vw, 90px); display: flex; flex-direction: column; align-items: center; justify-content: end; color: #fff; text-align: center; background: radial-gradient(circle at 15% 20%, rgba(200,164,91,.42), transparent 30%), linear-gradient(135deg,#032c23,#08705a); }
.content-kicker { color: #efd9a5; font-family: "Noto Kufi Arabic", sans-serif; font-size: .8rem; }
.content-hero h1 { margin: 10px 0 0; font-size: clamp(2.8rem, 6vw, 5.8rem); line-height: 1; }
.content-hero h1 span { display: block; margin-top: 18px; color: #efd9a5; font-family: "Noto Kufi Arabic", sans-serif; font-size: .25em; }
.content-body { padding: clamp(34px, 6vw, 80px); }
.region-starter-hero { position: relative; overflow: hidden; }
.region-starter-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent,rgba(0,0,0,.18)); pointer-events: none; }
.region-starter-hero > * { position: relative; z-index: 1; }
.region-starter-logo { width: min(190px,42vw); max-height: 150px; object-fit: contain; margin-bottom: 18px; filter: drop-shadow(0 10px 28px rgba(0,0,0,.22)); }
.region-introduction-placeholder { max-width: 820px; margin: 0 auto; padding: clamp(30px,6vw,64px); border: 1px solid rgba(200,164,91,.45); background: #fff; box-shadow: 0 20px 55px rgba(7,55,44,.09); text-align: center; }
.region-introduction-placeholder .section-kicker { color: #9a761f; font-family: "Noto Kufi Arabic",sans-serif; font-weight: 800; }
.region-introduction-placeholder h2 { margin: 10px 0 18px; color: var(--green); }
.region-introduction-placeholder p { margin: 0; line-height: 2; color: #486058; }
.region-ready-badge { display: inline-block; margin-top: 24px; padding: 9px 18px; border-radius: 999px; background: #edf5f1; color: var(--green); font-size: .82rem; font-weight: 800; }
.region-starter-tagline { position: relative; z-index: 1; margin: 14px 0 0; color: rgba(255,255,255,.88); font-family: var(--heading-font); font-weight: 600; }
.region-starter-body { display: grid; gap: 30px; }
.region-open-sections { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.region-open-card { position: relative; min-height: 210px; padding: 30px; overflow: hidden; border: 1px solid rgba(200,164,91,.38); background: linear-gradient(145deg,#fff,#f7f4ec); box-shadow: 0 14px 38px rgba(7,55,44,.07); }
.region-open-card > span { position: absolute; inset: 12px auto auto 18px; color: rgba(9,72,56,.1); font: 800 3.8rem/1 var(--heading-font); }
.region-open-card h2 { position: relative; margin: 0 0 12px; color: var(--green); font-size: var(--subheading-size) !important; }
.region-open-card p { position: relative; margin: 0; color: #51655e; line-height: 1.9; }
.region-open-card small { position: relative; display: inline-block; margin-top: 18px; color: #98711a; font-weight: 800; }
.region-governorates-section,.region-gallery-placeholder { border: 1px solid rgba(200,164,91,.3); background: #fff; }
.region-content-governorates { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px; }
.region-content-governorates span { padding: 9px 14px; border-radius: 999px; background: #edf5f1; color: var(--green); font-family: var(--heading-font); font-size: .82rem; font-weight: 700; }
.region-image-slots { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 10px; margin: 20px 0; }
.region-image-slots span { display: grid; min-height: 190px; place-items: center; border: 1px dashed rgba(9,72,56,.38); background: linear-gradient(135deg,#edf5f1,#fbfaf6); color: #71837c; font-family: var(--heading-font); font-weight: 700; }
@media(max-width:720px){.region-open-sections{grid-template-columns:1fr}.region-image-slots{grid-template-columns:1fr}.region-image-slots span{min-height:150px}.region-open-card{min-height:auto}}
.content-section { max-width: 900px; margin: 0 auto 64px; }
.content-section h2 { margin: 0 0 24px; color: var(--green); font-size: clamp(2rem, 3.4vw, 3.3rem); line-height: 1.3; text-align: center; }
.content-section h3 { margin: 36px 0 14px; color: var(--green); font-size: 1.7rem; text-align: center; }
.content-section p { margin: 0; color: #354f47; }
.known-unknown-section p { line-height: 1.48; }
.makkah-image-story { max-width: 980px; margin: 0 auto 68px; padding: 9px; display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); grid-template-rows: 310px 220px; gap: 9px; background: #fff; border: 1px solid rgba(200,164,91,.42); box-shadow: 0 24px 70px rgba(7,55,44,.14); }
.makkah-photo { position: relative; margin: 0; overflow: hidden; background: #f7f2e7; }
.makkah-photo::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to top,rgba(1,26,20,.68),transparent 52%); }
.makkah-photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.8,.2,1),filter .5s; }
.makkah-photo:hover img { transform: scale(1.035); filter: saturate(1.08) brightness(1.03); }
.makkah-photo figcaption { position: absolute; z-index: 2; right: 20px; bottom: 16px; left: 20px; color: #fff; font-family: "Noto Kufi Arabic",sans-serif; font-size: .84rem; font-weight: 700; text-align: center; text-shadow: 0 2px 12px rgba(0,0,0,.62); }
.makkah-photo-main { grid-column: span 8; }
.makkah-photo-kaaba { grid-column: span 4; }
.makkah-photo-kaaba img { object-fit: contain; background: #fff; }
.makkah-photo-night { grid-column: 1 / -1; }
.dedication { padding: 38px; border-right: 4px solid var(--gold); background: #fff; box-shadow: 0 15px 45px rgba(7,88,68,.07); }
.dedication .closing { color: var(--green); font-size: 1.35rem; font-weight: 700; }
.quran { display: block; margin: 14px 0; padding: 20px 28px; border: 1px solid rgba(200,164,91,.55); color: var(--green); background: rgba(255,255,255,.65); font-size: 1.3rem; text-align: center; }
.topic-list { columns: 2; column-gap: 42px; margin: 18px 0 0; padding: 0; list-style: none; }
.topic-list li { break-inside: avoid; position: relative; margin: 0 0 5px; padding: 6px 28px 6px 10px; border-bottom: 1px solid rgba(7,88,68,.1); color: #405a52; line-height: 1.45; }
.topic-list li::before { content: "•"; position: absolute; right: 8px; color: var(--gold); }
.world-map-story { max-width: 900px; margin: 0 auto 12px; padding: 9px; position: relative; overflow: hidden; background: #fff; border: 1px solid rgba(200,164,91,.48); box-shadow: 0 24px 70px rgba(7,55,44,.14); }
.world-map-story img { display: block; width: 100%; height: auto; }
.world-map-story figcaption { padding: 16px 12px 8px; color: var(--green); font-family: "Noto Kufi Arabic",sans-serif; font-size: clamp(1rem,1.4vw,1.25rem); font-weight: 700; text-align: center; }
.makkah-chapter { padding-top: 58px; border-top: 1px solid rgba(200,164,91,.42); }
.makkah-chapter p { line-height: 1.55; }
.hadith { display: block; margin: 14px 0; padding: 20px 28px; border-right: 4px solid var(--gold); color: var(--green); background: #fff; font-size: 1.24rem; text-align: center; box-shadow: 0 12px 34px rgba(7,88,68,.06); }
.hadith small,.quran small { display: block; margin-top: 8px; color: #6a7e77; font-family: "Noto Kufi Arabic",sans-serif; font-size: .66em; }
.chapter-image { width: min(720px,100%); margin: 28px auto; padding: 7px; background: #fff; border: 1px solid rgba(200,164,91,.42); box-shadow: 0 18px 50px rgba(7,55,44,.12); }
.chapter-image img { display: block; width: auto; max-width: 100%; height: auto; max-height: 440px; margin: 0 auto; object-fit: contain; }
.chapter-image figcaption { padding: 13px 10px 6px; color: var(--green); font-family: "Noto Kufi Arabic",sans-serif; font-size: .82rem; font-weight: 700; text-align: center; }
.chapter-image-wide { width: min(900px,100%); }
.chapter-image-wide img { height: 360px; object-fit: cover; }
.chapter-image-geology { width: min(620px,100%); }
.mountains-section p { margin: 0; line-height: 1.42; }
.mountains-section h3 { margin: 14px 0 3px; line-height: 1.25; }
.mountains-section .quran { margin: 8px 0; }
.mountain-photo { width: min(600px,100%); margin: 10px auto 12px; padding: 6px; background: #fff; border: 1px solid rgba(200,164,91,.42); box-shadow: 0 16px 45px rgba(7,55,44,.11); }
.mountain-photo img { display: block; width: auto; max-width: 100%; height: auto; max-height: 440px; margin: 0 auto; object-fit: contain; }
.mountain-photo figcaption { padding: 9px 8px 3px; color: var(--green); font-family: "Noto Kufi Arabic",sans-serif; font-size: .8rem; font-weight: 700; text-align: center; }
.mountain-photo-wide { width: min(820px,100%); }
.valleys-section { max-width: 1040px; }
.valleys-section p { margin: 0; line-height: 1.42; }
.valleys-section h3 { margin: 14px 0 3px; line-height: 1.25; }
.valleys-section .quran { margin: 8px 0; }
.valley-photo { margin: 0; overflow: hidden; background: #fff; border: 1px solid rgba(200,164,91,.42); box-shadow: 0 16px 45px rgba(7,55,44,.11); }
.valley-photo img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.valley-photo figcaption { padding: 9px 8px 6px; color: var(--green); font-family: "Noto Kufi Arabic",sans-serif; font-size: .8rem; font-weight: 700; text-align: center; }
.valley-photo-wide { width: 100%; margin: 10px auto 12px; padding: 6px; }
.valley-gallery { margin: 10px auto 12px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.valley-gallery .valley-dam { grid-column: 1 / -1; }
.poetry { width: min(700px,100%); margin: 8px auto; padding: 14px 24px; border-right: 3px solid var(--gold); color: var(--green); background: rgba(255,255,255,.72); font-size: 1.18rem; line-height: 1.55; text-align: center; }
.poetry small { display: block; margin-top: 6px; color: #6a7e77; font-family: "Noto Kufi Arabic",sans-serif; font-size: .68em; }
.chapter-source { margin-top: 14px !important; padding-top: 10px; border-top: 1px solid rgba(200,164,91,.38); color: #60736d !important; font-size: .92em; text-align: center; }
.history-section p { margin: 0; line-height: 1.42; }
.history-section h3 { margin: 14px 0 3px; line-height: 1.25; }
.history-section .quran { margin: 8px 0; }
.history-illustrations { width: min(720px,100%); margin: 12px auto 14px; display: flex; align-items: center; justify-content: center; gap: 14px; }
.history-illustration { flex: 0 1 340px; margin: 0; padding: 7px; background: #fff; border: 1px solid rgba(200,164,91,.42); box-shadow: 0 15px 38px rgba(7,55,44,.1); }
.history-illustration img { display: block; width: 100%; height: 245px; object-fit: contain; background: #fff; }
.history-illustration figcaption { padding: 9px 8px 3px; color: var(--green); font-family: "Noto Kufi Arabic",sans-serif; font-size: .78rem; font-weight: 700; text-align: center; }
.history-closing { margin-top: 12px !important; padding: 20px 24px; border-right: 4px solid var(--gold); color: var(--green) !important; background: #fff; font-size: 1.15em; font-weight: 700; text-align: center; }
.mission-section p { margin: 0; line-height: 1.42; }
.mission-section h3 { margin: 14px 0 3px; line-height: 1.25; }
.mission-section .quran,.mission-section .hadith { margin: 8px 0; }
.conquest-section ol { margin: 5px 0 0; padding-right: 1.35rem; }
.conquest-section li { margin: 2px 0; line-height: 1.42; }
.pre-islam-section .content-divider { width: 74px; margin: 12px auto; border: 0; border-top: 2px solid rgba(177,139,58,.5); }
.region-content .content-body p,.region-content .content-body li,.region-content .content-body .closing,.region-content .content-body .history-closing,.region-content .content-body .poetry { font-size: .95rem; font-weight: 400; }
.region-content .content-body h2,.region-content .content-body h3 { text-align: center; }
.region-content .quran,.region-content .hadith { font-size: .95rem; font-weight: 800; }
.region-content .content-body strong { font-weight: 800; }
.companions-section h3 { margin-top: 16px; }
.historic-makkah-gallery { display: grid; gap: 9px; margin: 12px 0 16px; }
.historic-makkah-opening { grid-template-columns: 1.35fr 1fr; grid-template-rows: 220px 220px; }
.historic-makkah-opening .historic-photo-main { grid-row: 1 / 3; }
.historic-makkah-pair { grid-template-columns: repeat(2,minmax(0,1fr)); }
.historic-photo { position: relative; margin: 0; overflow: hidden; border: 1px solid rgba(200,164,91,.45); background: #e8e1d4; }
.historic-photo img { width: 100%; height: 100%; min-height: 240px; display: block; object-fit: cover; filter: sepia(.08) contrast(1.03); }
.historic-makkah-opening .historic-photo img { min-height: 0; }
.historic-photo-wide { height: 360px; margin: 14px 0 16px; }
.historic-photo figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: 24px 12px 9px; color: #fff; background: linear-gradient(transparent,rgba(0,0,0,.78)); font-family: "Noto Kufi Arabic",sans-serif; font-size: .72rem; font-weight: 700; text-align: center; }
.routes-section p { margin: 0; line-height: 1.42; }
.routes-section h3 { margin: 18px 0 5px; line-height: 1.3; }
.before-saudi-section p { margin: 0; line-height: 1.42; }
.before-saudi-poetry { display: grid; gap: 7px; }
.before-saudi-poetry strong { display: block; font-weight: 800; white-space: pre-line; }
.source-note { display: block; margin-top: 3px; color: #667970; font-family: "Noto Kufi Arabic",sans-serif; font-size: .78em; text-align: center; }
.unification-section p { margin: 0; line-height: 1.42; }
.unification-opening-gallery,.royal-makkah-gallery,.royal-hajj-gallery { margin-block: 12px 16px; }
.saudi-hajj-section p { margin: 0; line-height: 1.42; }
.saudi-hajj-gallery { margin-block: 12px 16px; }
.urban-development-section p { margin: 0; line-height: 1.42; }
.urban-development-section h3 { margin-top: 16px; }
.landmarks-section p { margin: 0; line-height: 1.42; }
.landmarks-section h3 { margin-top: 16px; text-align: center; }
.landmark-photo { width: min(760px, 100%); margin: 12px auto; text-align: center; }
.landmark-photo img { display: block; width: auto; max-width: 100%; height: auto; max-height: 440px; margin: 0 auto; object-fit: contain; border-radius: 16px; }
.landmark-photo figcaption, .landmark-gallery figcaption { margin-top: 6px; color: #8a691b; font-size: .78rem; font-weight: 700; }
.landmark-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 12px 0; }
.landmark-gallery figure { margin: 0; text-align: center; }
.landmark-gallery img { width: 100%; height: 220px; object-fit: cover; border-radius: 14px; }
@media (max-width: 720px) { .landmark-gallery { grid-template-columns: 1fr; } .landmark-gallery img { height: auto; } }
.historic-mosques-section p { margin: 0; line-height: 1.42; }
.historic-mosques-section h3 { margin-top: 16px; text-align: center; }
.mosque-gallery-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 720px) { .mosque-gallery-two { grid-template-columns: 1fr; } }
.neighborhoods-section p { margin: 0; line-height: 1.42; }
.neighborhoods-section h3 { margin-top: 16px; text-align: center; }
.neighborhood-hero, .neighborhood-photo, .neighborhood-panorama { margin: 16px auto; text-align: center; }
.neighborhood-hero { width: min(740px, 100%); }
.neighborhood-photo { width: min(620px, 100%); }
.neighborhood-panorama { width: min(880px, 100%); }
.neighborhood-hero img, .neighborhood-photo img, .neighborhood-panorama img { display: block; width: auto; max-width: 100%; height: auto; max-height: 430px; margin: 0 auto; object-fit: contain; border-radius: 15px; box-shadow: 0 8px 24px rgba(63,47,20,.1); }
.neighborhood-hero img, .neighborhood-panorama img { max-height: 480px; }
.neighborhood-panorama img { background: #fff; }
.neighborhood-hero figcaption, .neighborhood-photo figcaption, .neighborhood-panorama figcaption, .neighborhood-gallery figcaption { margin-top: 6px; color: #8a691b; font-size: .78rem; font-weight: 700; }
.neighborhood-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; width: min(820px, 100%); margin: 16px auto; }
.neighborhood-gallery figure { margin: 0; text-align: center; }
.neighborhood-gallery img { display: block; width: 100%; height: 250px; object-fit: cover; border-radius: 14px; box-shadow: 0 7px 20px rgba(63,47,20,.09); }
.media-document-gallery img { object-fit: contain; background: #f7f1e3; }
@media (max-width: 720px) { .neighborhood-hero,.neighborhood-photo,.neighborhood-panorama { width: min(100%, 560px); } .neighborhood-hero img,.neighborhood-photo img,.neighborhood-panorama img { max-height: 360px; } .neighborhood-gallery { grid-template-columns: 1fr; width: min(100%, 520px); } .neighborhood-gallery img { width: auto; max-width: 100%; height: auto; max-height: 300px; margin: 0 auto; object-fit: contain; } }

.makkah-city-art-section { overflow: hidden; }
.city-art-intro, .city-art-closing { width: min(780px, 100%); margin-inline: auto; text-align: center; }
.city-art-intro { font-size: 1.08rem; color: #4e442d; }
.city-art-closing { margin-top: 24px; color: #80621c; font-weight: 800; }
.city-art-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 145px; gap: 10px; width: min(980px, 100%); margin: 24px auto 0; direction: rtl; }
.city-art-item { position: relative; overflow: hidden; min-width: 0; margin: 0; border-radius: 16px; background: #17221d; box-shadow: 0 10px 26px rgba(35, 28, 13, .14); }
.city-art-item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .65s ease, filter .65s ease; }
.city-art-item::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(to top, rgba(7, 12, 10, .78), transparent); pointer-events: none; }
.city-art-item figcaption { position: absolute; z-index: 1; right: 12px; bottom: 10px; left: 12px; margin: 0; color: #fff; font-size: .78rem; font-weight: 800; text-shadow: 0 2px 8px rgba(0,0,0,.55); }
.city-art-item:hover img { transform: scale(1.035); filter: saturate(1.08); }
.city-art-wide { grid-column: span 2; }
.city-art-tall { grid-row: span 2; }
.city-art-large { grid-column: span 2; grid-row: span 2; }
.city-art-hero { grid-column: span 3; grid-row: span 2; }
@media (max-width: 820px) { .city-art-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 150px; } .city-art-hero { grid-column: span 2; } }
@media (max-width: 520px) { .city-art-grid { display: grid; grid-template-columns: 1fr; grid-auto-rows: 220px; gap: 12px; width: min(100%, 430px); } .city-art-item, .city-art-wide, .city-art-tall, .city-art-large, .city-art-hero { grid-column: auto; grid-row: auto; } .city-art-item figcaption { font-size: .84rem; } }

.makkah-governors-section { counter-reset: saudi-governor; }
.governors-note { width: min(840px, 100%); margin: 14px auto; padding: 12px 16px; border-right: 4px solid #bf9225; border-radius: 10px; background: rgba(191,146,37,.08); color: #6d5721; font-size: .9rem; }
.governor-era { width: min(900px, 100%); margin: 16px auto; padding: 18px 20px; border: 1px solid rgba(154,119,32,.2); border-radius: 16px; background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(250,247,237,.92)); box-shadow: 0 7px 22px rgba(50,39,16,.06); }
.governor-era h3 { display: flex; align-items: center; gap: 10px; margin-top: 0; }
.governor-era h3 span { flex: 0 0 auto; padding: 4px 10px; border-radius: 999px; background: #173f31; color: #fff; font-size: .78rem; }
.name-roll { color: #473f2f; line-height: 2; }
.saudi-governors-timeline { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; width: min(900px, 100%); margin: 18px auto; padding: 0; list-style: none; }
.saudi-governors-timeline li { position: relative; display: flex; flex-direction: column; gap: 5px; min-height: 82px; padding: 14px 58px 14px 16px; border-radius: 14px; background: #173f31; color: #fff; counter-increment: saudi-governor; }
.saudi-governors-timeline li::before { content: counter(saudi-governor); position: absolute; right: 16px; top: 16px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #c59a2b; color: #132f26; font-weight: 900; }
.saudi-governors-timeline span { color: #f3d889; font-size: .82rem; font-weight: 800; }
.saudi-governors-timeline strong { font-size: .96rem; line-height: 1.6; }
.chapter-sources { width: min(900px, 100%); margin: 22px auto 0; padding-top: 16px; border-top: 1px solid rgba(154,119,32,.25); }
.chapter-sources h3 { margin-bottom: 6px; }
.chapter-sources p { margin: 4px 0; font-size: .88rem; color: #6d6250; }
@media (max-width: 680px) { .saudi-governors-timeline { grid-template-columns: 1fr; } .governor-era { padding: 15px; } .governor-era h3 { align-items: flex-start; flex-direction: column; } }
.makkah-sacred-divider { position: relative; isolation: isolate; overflow: hidden; width: min(900px, 100%); margin: 38px auto 8px; padding: 28px 24px 30px; border: 1px solid rgba(238,202,112,.55); border-radius: 22px; background: linear-gradient(135deg, #631f3c 0%, #43162d 52%, #2b1326 100%); box-shadow: 0 18px 45px rgba(67,22,45,.22); text-align: center; }
.makkah-sacred-divider::before, .makkah-sacred-divider::after { content: ""; position: absolute; z-index: -1; width: 190px; height: 190px; border: 1px solid rgba(242,210,127,.12); border-radius: 50%; }
.makkah-sacred-divider::before { top: -125px; right: -45px; box-shadow: 0 0 0 22px rgba(242,210,127,.035), 0 0 0 44px rgba(242,210,127,.025); }
.makkah-sacred-divider::after { bottom: -140px; left: -55px; box-shadow: 0 0 0 22px rgba(242,210,127,.035), 0 0 0 44px rgba(242,210,127,.025); }
.makkah-sacred-divider-kicker { display: block; color: #f7e7b5; font-size: .78rem; font-weight: 800; letter-spacing: .04em; }
.makkah-sacred-divider-ornament { display: flex; align-items: center; justify-content: center; gap: 12px; width: min(330px, 78%); margin: 10px auto 5px; color: #e8bd59; }
.makkah-sacred-divider-ornament span { height: 1px; flex: 1; background: linear-gradient(to left, transparent, #d7a83e); }
.makkah-sacred-divider-ornament span:last-child { background: linear-gradient(to right, transparent, #d7a83e); }
.makkah-sacred-divider-ornament b { font-size: .72rem; }
.makkah-sacred-divider h2 { margin: 2px 0 8px; color: #f2d27f; font-family: "Noto Kufi Arabic", sans-serif; font-size: clamp(1.55rem, 4vw, 2.25rem); line-height: 1.45; text-shadow: 0 2px 12px rgba(0,0,0,.25); }
.makkah-sacred-divider-verse { width: min(760px, 100%); margin: 12px auto 15px; padding: 15px 20px; border: 1px solid rgba(142,202,255,.28); border-radius: 14px; background: rgba(255,255,255,.07); color: #9dd5ff; font-family: "Noto Naskh Arabic", serif; font-size: clamp(1.05rem, 2.35vw, 1.28rem); font-weight: 700; line-height: 2; text-align: center; }
.makkah-sacred-divider-verse span { display: block; margin-bottom: 1px; color: #c5e6ff; font-family: "Noto Kufi Arabic", sans-serif; font-size: .76rem; font-weight: 700; }
.makkah-sacred-divider-verse cite { display: block; margin-top: 4px; color: #79bff0; font-family: "Noto Kufi Arabic", sans-serif; font-size: .72rem; font-style: normal; font-weight: 800; }
.makkah-sacred-divider p { margin: 0; color: rgba(255,255,255,.82); font-size: .92rem; }
@media (max-width: 520px) { .makkah-sacred-divider { margin-top: 28px; padding: 24px 14px 26px; border-radius: 17px; } .makkah-sacred-divider-verse { padding: 12px 10px; font-size: 1rem; line-height: 1.9; } .makkah-sacred-divider p { font-size: .82rem; } }
.kaaba-history-content > h2 { margin-bottom: 20px; }
.kaaba-history-gallery { display: grid; grid-template-columns: 1.35fr 1fr 1fr; grid-auto-rows: 195px; gap: 10px; width: min(940px, 100%); margin: 0 auto 25px; }
.kaaba-history-photo { position: relative; overflow: hidden; margin: 0; border: 1px solid rgba(177,139,46,.28); border-radius: 15px; background: #201b17; box-shadow: 0 9px 24px rgba(42,31,16,.12); }
.kaaba-history-photo-main { grid-row: span 2; }
.kaaba-history-photo:last-child { grid-column: span 2; }
.kaaba-history-photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: sepia(.13) contrast(1.04); }
.kaaba-history-photo::after { content: ""; position: absolute; inset: 52% 0 0; background: linear-gradient(to top, rgba(12,9,7,.82), transparent); pointer-events: none; }
.kaaba-history-photo figcaption { position: absolute; z-index: 1; right: 12px; bottom: 9px; left: 12px; color: #fff; font-size: .76rem; font-weight: 800; text-align: center; text-shadow: 0 2px 7px #000; }
.kaaba-history-content > p { line-height: 1.8; }
.kaaba-history-content > p > strong:first-child { color: #7d5c12; }
.kaaba-parts-title { width: min(940px, 100%); margin: 30px auto 15px; padding: 11px 18px; border-right: 5px solid #c49a35; border-radius: 10px; background: linear-gradient(to left, rgba(196,154,53,.13), transparent); color: #173f31; text-align: right; }
.kaaba-parts-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 210px; gap: 10px; width: min(940px, 100%); margin: 0 auto 22px; }
.kaaba-part-card { position: relative; overflow: hidden; margin: 0; border-radius: 14px; background: #17130f; box-shadow: 0 8px 22px rgba(37,28,15,.14); }
.kaaba-part-card img { display: block; width: 100%; height: 100%; object-fit: cover; }
.kaaba-part-card::after { content: ""; position: absolute; inset: 50% 0 0; background: linear-gradient(to top, rgba(5,5,5,.82), transparent); }
.kaaba-part-card figcaption { position: absolute; z-index: 1; right: 8px; bottom: 9px; left: 8px; color: #fff; font-size: .78rem; font-weight: 800; text-align: center; text-shadow: 0 2px 7px #000; }
@media (max-width: 760px) { .kaaba-parts-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 220px; } }
@media (max-width: 440px) { .kaaba-parts-gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: 180px; gap: 8px; } .kaaba-part-card figcaption { font-size: .7rem; } }
@media (max-width: 720px) { .kaaba-history-gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: 185px; } .kaaba-history-photo-main { grid-column: span 2; grid-row: auto; } .kaaba-history-photo:last-child { grid-column: span 2; } }
@media (max-width: 480px) { .kaaba-history-gallery { grid-template-columns: 1fr; grid-auto-rows: 220px; } .kaaba-history-photo-main, .kaaba-history-photo:last-child { grid-column: auto; } }
.kaaba-restoration-hero { float: left; width: min(310px, 42%); margin: 0 22px 18px 0; padding: 7px; border: 1px solid rgba(190,148,43,.35); border-radius: 16px; background: #fff; box-shadow: 0 10px 28px rgba(39,30,17,.12); }
.kaaba-restoration-hero img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center top; border-radius: 10px; filter: sepia(.16) contrast(1.04); }
.kaaba-restoration-hero figcaption { padding: 8px 5px 2px; color: #765a19; font-size: .74rem; font-weight: 800; line-height: 1.7; text-align: center; }
.kaaba-restoration-content > p { line-height: 1.8; }
.kaaba-door-title { clear: both; margin-top: 32px; color: #173f31; text-align: center; }
.kaaba-door-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; width: min(760px, 100%); margin: 15px auto 23px; }
.kaaba-door-gallery figure { position: relative; overflow: hidden; height: 390px; margin: 0; border-radius: 16px; background: #16110b; box-shadow: 0 10px 26px rgba(36,27,13,.14); }
.kaaba-door-gallery img { display: block; width: 100%; height: 100%; object-fit: cover; }
.kaaba-door-gallery figure::after { content: ""; position: absolute; inset: 58% 0 0; background: linear-gradient(to top, rgba(0,0,0,.82), transparent); }
.kaaba-door-gallery figcaption { position: absolute; z-index: 1; right: 12px; bottom: 11px; left: 12px; color: #fff; font-size: .8rem; font-weight: 800; text-align: center; text-shadow: 0 2px 7px #000; }
.kaaba-door-closing { margin-top: 20px; padding: 14px 17px; border-radius: 12px; background: rgba(196,154,53,.1); color: #654f1b; font-weight: 700; text-align: center; }
@media (max-width: 650px) { .kaaba-restoration-hero { float: none; width: min(330px, 100%); margin: 0 auto 20px; } .kaaba-door-gallery figure { height: 300px; } }
@media (max-width: 430px) { .kaaba-door-gallery { grid-template-columns: 1fr; } .kaaba-door-gallery figure { height: 340px; } }
.kaaba-key-gallery { display: grid; grid-template-columns: 1.2fr 1fr; grid-auto-rows: 215px; gap: 10px; width: min(900px, 100%); margin: 0 auto 25px; }
.kaaba-key-photo { position: relative; overflow: hidden; margin: 0; border-radius: 15px; background: #21170e; box-shadow: 0 9px 25px rgba(39,27,14,.14); }
.kaaba-key-photo-main { grid-row: span 2; }
.kaaba-key-photo-wide { grid-column: 2; }
.kaaba-key-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.kaaba-key-photo::after { content: ""; position: absolute; inset: 52% 0 0; background: linear-gradient(to top, rgba(4,4,4,.82), transparent); }
.kaaba-key-photo figcaption { position: absolute; z-index: 1; right: 11px; bottom: 10px; left: 11px; color: #fff; font-size: .76rem; font-weight: 800; text-align: center; text-shadow: 0 2px 7px #000; }
.kaaba-key-content > p { line-height: 1.8; }
.kaaba-key-poetry { width: min(620px, 100%); margin: 17px auto; padding: 14px 20px; border-right: 4px solid #bd9230; border-radius: 11px; background: rgba(189,146,48,.09); color: #6e5316; font-weight: 800; line-height: 2; text-align: center; }
.kaaba-key-content > h3 { margin-top: 28px; color: #173f31; }
.kaaba-key-eras { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; width: min(900px, 100%); margin: 20px auto; }
.kaaba-key-eras article { padding: 16px; border: 1px solid rgba(184,142,39,.22); border-radius: 14px; background: linear-gradient(145deg, #fff, #faf6eb); }
.kaaba-key-eras span { display: inline-block; padding: 4px 11px; border-radius: 999px; background: #173f31; color: #f1d479; font-size: .78rem; font-weight: 900; }
.kaaba-key-eras p { margin: 9px 0 0; color: #514836; font-size: .9rem; line-height: 1.75; }
.kaaba-key-inscriptions { width: min(820px, 100%); margin: 15px auto; padding: 16px 36px 16px 18px; border-radius: 14px; background: rgba(23,63,49,.06); color: #3f493f; line-height: 1.9; }
.kaaba-key-sources { clear: both; }
@media (max-width: 650px) { .kaaba-key-gallery { grid-template-columns: 1fr; grid-auto-rows: 230px; } .kaaba-key-photo-main { grid-row: auto; } .kaaba-key-photo-wide { grid-column: auto; } .kaaba-key-eras { grid-template-columns: 1fr; } }
.kaaba-custodians-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 205px; gap: 10px; width: min(920px, 100%); margin: 0 auto 25px; }
.custodian-photo { position: relative; overflow: hidden; margin: 0; border-radius: 15px; background: #18251f; box-shadow: 0 9px 24px rgba(25,35,30,.14); }
.custodian-photo-wide { grid-column: span 2; }
.custodian-photo-tall { grid-row: span 2; }
.custodian-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.custodian-photo::after { content: ""; position: absolute; inset: 50% 0 0; background: linear-gradient(to top, rgba(4,8,6,.84), transparent); }
.custodian-photo figcaption { position: absolute; z-index: 1; right: 11px; bottom: 10px; left: 11px; color: #fff; font-size: .76rem; font-weight: 800; text-align: center; text-shadow: 0 2px 7px #000; }
.kaaba-custodians-content > p { line-height: 1.8; }
.kaaba-custodians-content > h3 { margin-top: 28px; color: #173f31; }
.custodian-quran { width: min(820px, 100%); margin: 16px auto; padding: 15px 20px; border: 1px solid rgba(37,105,82,.18); border-radius: 13px; background: rgba(23,63,49,.06); color: #174f3b; font-family: "Noto Naskh Arabic", serif; font-size: 1.08rem; font-weight: 700; line-height: 2; text-align: center; }
.custodian-quran cite { display: block; margin-top: 4px; color: #98731d; font-family: "Noto Kufi Arabic", sans-serif; font-size: .72rem; font-style: normal; }
@media (max-width: 680px) { .kaaba-custodians-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 200px; } .custodian-photo-wide { grid-column: span 2; } .custodian-photo-tall { grid-row: auto; } }
@media (max-width: 430px) { .kaaba-custodians-gallery { grid-template-columns: 1fr; grid-auto-rows: 220px; } .custodian-photo-wide { grid-column: auto; } }
.kaaba-kiswa-hero { position: relative; overflow: hidden; width: min(900px, 100%); margin: 0 auto 25px; border: 1px solid rgba(188,145,40,.32); border-radius: 18px; background: #10271f; box-shadow: 0 12px 32px rgba(33,28,15,.16); }
.kaaba-kiswa-hero img { display: block; width: 100%; height: auto; max-height: 520px; object-fit: cover; }
.kaaba-kiswa-hero::after { content: ""; position: absolute; inset: 58% 0 0; background: linear-gradient(to top, rgba(8,18,14,.88), transparent); pointer-events: none; }
.kaaba-kiswa-hero figcaption { position: absolute; z-index: 1; right: 16px; bottom: 14px; left: 16px; color: #f5d77d; font-size: .9rem; font-weight: 900; text-align: center; text-shadow: 0 2px 8px #000; }
.kaaba-kiswa-content > p { line-height: 1.8; }
.kaaba-kiswa-content > h3 { margin-top: 30px; color: #173f31; }
.kaaba-kiswa-poetry { width: min(700px, 100%); margin: 18px auto; padding: 16px 20px; border: 1px solid rgba(193,149,43,.24); border-radius: 13px; background: linear-gradient(135deg, rgba(23,63,49,.06), rgba(196,154,53,.09)); color: #6d5318; font-family: "Noto Naskh Arabic", serif; font-size: 1.08rem; font-weight: 800; line-height: 2.2; text-align: center; }
.kaaba-kiswa-eras { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; width: min(900px, 100%); margin: 20px auto; }
.kaaba-kiswa-eras article { padding: 17px; border: 1px solid rgba(176,137,42,.22); border-radius: 15px; background: linear-gradient(145deg, #fff, #faf7ef); box-shadow: 0 6px 18px rgba(42,35,20,.05); }
.kaaba-kiswa-eras span { display: inline-block; padding: 4px 12px; border-radius: 999px; background: #173f31; color: #f2d57d; font-size: .8rem; font-weight: 900; }
.kaaba-kiswa-eras p { margin: 10px 0 0; color: #514836; font-size: .91rem; line-height: 1.8; }
.kaaba-kiswa-milestone { display: flex; align-items: center; gap: 18px; width: min(840px, 100%); margin: 20px auto; padding: 18px 22px; border-right: 6px solid #c49a35; border-radius: 14px; background: #173f31; color: #fff; }
.kaaba-kiswa-milestone strong { flex: 0 0 auto; color: #f0d178; font-size: 1.5rem; }
.kaaba-kiswa-milestone span { line-height: 1.8; }
@media (max-width: 650px) { .kaaba-kiswa-eras { grid-template-columns: 1fr; } .kaaba-kiswa-milestone { align-items: flex-start; flex-direction: column; gap: 7px; padding: 17px; } .kaaba-kiswa-hero figcaption { font-size: .78rem; } }
.kaaba-factory-content > p { line-height: 1.8; }
.kaaba-factory-content > h3 { margin-top: 30px; color: #173f31; }
.kaaba-factory-hero { position: relative; overflow: hidden; width: min(920px,100%); margin: 0 auto 24px; border-radius: 18px; box-shadow: 0 12px 30px rgba(29,36,23,.15); }
.kaaba-factory-hero img { display: block; width: 100%; max-height: 520px; object-fit: cover; }
.kaaba-factory-hero::after { content:""; position:absolute; inset:58% 0 0; background:linear-gradient(to top,rgba(4,14,10,.84),transparent); }
.kaaba-factory-hero figcaption { position:absolute; z-index:1; right:15px; bottom:13px; left:15px; color:#f4d77d; font-weight:900; text-align:center; text-shadow:0 2px 8px #000; }
.kaaba-factory-process-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:205px; gap:10px; width:min(930px,100%); margin:22px auto; }
.kaaba-factory-process-gallery figure,.kaaba-season-gallery figure,.kaaba-new-kiswa-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(32,27,16,.14); }
.kaaba-factory-process-gallery .factory-photo-wide { grid-column:span 2; }
.kaaba-factory-process-gallery img,.kaaba-season-gallery img,.kaaba-new-kiswa-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.kaaba-factory-process-gallery figure::after,.kaaba-season-gallery figure::after,.kaaba-new-kiswa-gallery figure::after { content:""; position:absolute; inset:52% 0 0; background:linear-gradient(to top,rgba(4,5,4,.84),transparent); }
.kaaba-factory-process-gallery figcaption,.kaaba-season-gallery figcaption,.kaaba-new-kiswa-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.76rem; font-weight:800; text-align:center; text-shadow:0 2px 7px #000; }
.kaaba-factory-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(900px,100%); margin:20px auto; }
.kaaba-factory-facts article { padding:16px 13px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.kaaba-factory-facts strong,.kaaba-factory-facts span { display:block; }
.kaaba-factory-facts strong { color:#f0d279; font-size:1rem; }
.kaaba-factory-facts span { margin-top:7px; font-size:.82rem; line-height:1.7; }
.kaaba-factory-products { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 14px; width:min(900px,100%); margin:17px auto; padding:0; list-style:none; counter-reset:factory-product; }
.kaaba-factory-products li { position:relative; min-height:58px; padding:12px 50px 12px 14px; border:1px solid rgba(185,143,38,.2); border-radius:12px; background:#fbf8ef; counter-increment:factory-product; }
.kaaba-factory-products li::before { content:counter(factory-product); position:absolute; top:12px; right:13px; display:grid; place-items:center; width:27px; height:27px; border-radius:50%; background:#bd922e; color:#fff; font-weight:900; }
.kaaba-season-gallery { display:grid; grid-template-columns:1.35fr 1fr; grid-auto-rows:330px; gap:11px; width:min(900px,100%); margin:17px auto 22px; }
.kaaba-new-kiswa-gallery { display:grid; grid-template-columns:1.35fr 1fr; grid-auto-rows:210px; gap:10px; width:min(920px,100%); margin:17px auto 22px; }
.kaaba-new-kiswa-gallery .new-kiswa-main { grid-row:span 2; }
@media (max-width:720px) { .kaaba-factory-process-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); } .kaaba-factory-process-gallery .factory-photo-wide { grid-column:span 2; } .kaaba-factory-facts { grid-template-columns:repeat(2,minmax(0,1fr)); } .kaaba-factory-products { grid-template-columns:1fr; } .kaaba-season-gallery { grid-template-columns:1fr; grid-auto-rows:260px; } }
@media (max-width:480px) { .kaaba-factory-process-gallery { grid-template-columns:1fr; grid-auto-rows:230px; } .kaaba-factory-process-gallery .factory-photo-wide { grid-column:auto; } .kaaba-factory-facts { grid-template-columns:1fr 1fr; } .kaaba-new-kiswa-gallery { grid-template-columns:1fr; grid-auto-rows:240px; } .kaaba-new-kiswa-gallery .new-kiswa-main { grid-row:auto; } }
.kaaba-curtains-page { min-height: min(900px, 100vh); display: flex; flex-direction: column; justify-content: center; break-before: page; }
.kaaba-curtains-page > h2 { margin-bottom: 22px; }
.kaaba-curtains-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 9px; width: min(1080px, 100%); margin: 0 auto; }
.kaaba-curtains-grid figure { overflow: hidden; margin: 0; aspect-ratio: 0.57 / 1; border: 1px solid rgba(201,159,52,.38); border-radius: 12px; background: #16110d; box-shadow: 0 9px 23px rgba(38,27,14,.16); }
.kaaba-curtains-grid img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform .55s ease; }
.kaaba-curtains-grid figure:hover img { transform: scale(1.025); }
.kaaba-full-page { position: relative; overflow: hidden; width: calc(100% + clamp(44px, 8vw, 104px)); min-height: min(960px, 100vh); margin: 0 calc(clamp(22px, 4vw, 52px) * -1); break-before: page; background: #080b09; }
.kaaba-full-page img { display: block; width: 100%; height: min(960px, 100vh); min-height: 620px; object-fit: cover; object-position: center; }
.kaaba-full-page::after { content: ""; position: absolute; inset: 50% 0 0; background: linear-gradient(to top, rgba(3,8,6,.78), transparent); pointer-events: none; }
.kaaba-full-page-caption { position: absolute; z-index: 1; right: 8%; bottom: 7%; color: #fff; text-shadow: 0 3px 14px rgba(0,0,0,.75); }
.kaaba-full-page-caption span, .kaaba-full-page-caption strong { display: block; }
.kaaba-full-page-caption span { color: #f1d47e; font-size: .9rem; font-weight: 800; }
.kaaba-full-page-caption strong { margin-top: 4px; font-family: "Noto Kufi Arabic", sans-serif; font-size: clamp(1.7rem, 4vw, 3.2rem); }
@media (max-width: 900px) { .kaaba-curtains-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); width: min(690px, 100%); } .kaaba-curtains-grid figure { aspect-ratio: .62 / 1; } }
@media (max-width: 520px) { .kaaba-curtains-page { min-height: auto; } .kaaba-curtains-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .kaaba-full-page { min-height: 78vh; } .kaaba-full-page img { height: 78vh; min-height: 520px; } }
@media print { .kaaba-curtains-page, .kaaba-full-page { break-before: page; break-after: page; } .kaaba-full-page { height: 100vh; } }
.haram-expansion-content > p { line-height:1.8; }
.haram-expansion-content > h3 { margin-top:30px; color:#173f31; }
.haram-quran-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:min(920px,100%); margin:20px auto; }
.haram-quran-pair blockquote { margin:0; padding:17px; border:1px solid rgba(31,105,79,.18); border-radius:14px; background:rgba(23,63,49,.06); color:#174f3b; font-family:"Noto Naskh Arabic",serif; font-size:1.03rem; font-weight:700; line-height:2; text-align:center; }
.haram-quran-pair cite { display:block; margin-top:5px; color:#98731d; font-family:"Noto Kufi Arabic",sans-serif; font-size:.72rem; font-style:normal; }
.haram-four-stages { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(920px,100%); margin:18px auto; }
.haram-four-stages article { position:relative; min-height:125px; padding:17px 13px; border-radius:14px; background:linear-gradient(145deg,#173f31,#0e2f25); color:#fff; text-align:center; }
.haram-four-stages span { display:grid; place-items:center; width:30px; height:30px; margin:0 auto 9px; border-radius:50%; background:#c49a35; color:#173f31; font-weight:900; }
.haram-four-stages strong,.haram-four-stages small { display:block; }
.haram-four-stages strong { color:#f2d57e; }
.haram-four-stages small { margin-top:6px; color:rgba(255,255,255,.82); line-height:1.6; }
.haram-expansion-timeline { position:relative; width:min(920px,100%); margin:20px auto; }
.haram-expansion-timeline::before { content:""; position:absolute; top:0; right:52px; bottom:0; width:2px; background:linear-gradient(#c79b33,#173f31); }
.haram-expansion-timeline article { position:relative; display:grid; grid-template-columns:105px 1fr; gap:17px; margin-bottom:12px; padding:15px 16px 15px 12px; border:1px solid rgba(178,137,37,.18); border-radius:14px; background:#fcfaf4; }
.haram-expansion-timeline time { position:relative; z-index:1; align-self:start; padding:7px 9px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.78rem; font-weight:900; text-align:center; }
.haram-expansion-timeline h4 { margin:0 0 5px; color:#705414; font-size:1rem; }
.haram-expansion-timeline p { margin:0; color:#514b3d; font-size:.91rem; line-height:1.75; }
.haram-historic-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:230px; gap:10px; width:min(960px,100%); margin:18px auto 0; }
.haram-historic-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:14px; background:#191713; box-shadow:0 8px 22px rgba(29,25,17,.15); }
.haram-historic-gallery .haram-photo-main { grid-row:span 2; }
.haram-historic-gallery .haram-photo-wide { grid-column:span 2; }
.haram-historic-gallery img { display:block; width:100%; height:100%; object-fit:cover; filter:sepia(.14) contrast(1.03); }
.haram-historic-gallery figure::after { content:""; position:absolute; inset:55% 0 0; background:linear-gradient(to top,rgba(4,4,4,.83),transparent); }
.haram-historic-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.76rem; font-weight:800; text-align:center; text-shadow:0 2px 7px #000; }
.saudi-expansion-divider { width:min(920px,100%); margin:40px auto 24px; padding:24px 20px; border-radius:18px; background:linear-gradient(135deg,#173f31,#0d2b22); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(15,48,37,.18); }
.saudi-expansion-divider span { color:#f2d57e; font-size:.85rem; font-weight:800; }
.saudi-expansion-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.35rem,3vw,1.85rem); }
.saudi-expansion-callout { display:flex; align-items:center; gap:18px; width:min(850px,100%); margin:20px auto; padding:17px 20px; border-right:6px solid #c49a35; border-radius:13px; background:#f7f1df; color:#4d432d; }
.saudi-expansion-callout strong { flex:0 0 auto; color:#173f31; font-size:1.35rem; }
.saudi-expansion-callout span { line-height:1.8; }
.saudi-first-gallery { display:grid; grid-template-columns:1.25fr 1fr 1fr; grid-auto-rows:205px; gap:10px; width:min(960px,100%); margin:18px auto 23px; }
.saudi-first-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:14px; background:#171614; box-shadow:0 8px 23px rgba(30,26,18,.15); }
.saudi-first-gallery .saudi-first-main { grid-row:span 2; }
.saudi-first-gallery .saudi-first-wide { grid-column:span 2; }
.saudi-first-gallery img { display:block; width:100%; height:100%; object-fit:cover; filter:sepia(.08) contrast(1.03); }
.saudi-first-gallery figure::after { content:""; position:absolute; inset:53% 0 0; background:linear-gradient(to top,rgba(4,4,4,.84),transparent); }
.saudi-first-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.76rem; font-weight:800; text-align:center; text-shadow:0 2px 7px #000; }
.saudi-kings-continuation { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; width:min(920px,100%); margin:22px auto; }
.saudi-kings-continuation article { padding:18px; border:1px solid rgba(183,141,37,.22); border-radius:15px; background:linear-gradient(145deg,#fff,#faf7ef); }
.saudi-kings-continuation h3 { margin:0 0 8px; color:#173f31; font-size:1.05rem; }
.saudi-kings-continuation p { margin:0; color:#514b3d; font-size:.92rem; line-height:1.8; }
.fahd-expansion-divider { width:min(920px,100%); margin:38px auto 22px; padding:25px 22px; border-radius:18px; background:linear-gradient(135deg,#0d3025,#1f5a45); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(15,48,37,.2); }
.fahd-expansion-divider span { color:#f2d57e; font-size:.84rem; font-weight:900; }
.fahd-expansion-divider h3 { margin:5px 0 10px; color:#fff; font-size:clamp(1.25rem,3vw,1.8rem); }
.fahd-expansion-divider p { width:min(760px,100%); margin:0 auto; color:rgba(255,255,255,.88); line-height:1.8; }
.fahd-expansion-gallery { display:grid; grid-template-columns:1.25fr 1fr 1fr; grid-auto-rows:215px; gap:10px; width:min(960px,100%); margin:18px auto 24px; }
.fahd-expansion-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:14px; background:#13251e; box-shadow:0 8px 23px rgba(21,35,28,.16); }
.fahd-expansion-gallery .fahd-photo-main { grid-row:span 2; }
.fahd-expansion-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.fahd-expansion-gallery figure::after { content:""; position:absolute; inset:52% 0 0; background:linear-gradient(to top,rgba(2,8,6,.86),transparent); }
.fahd-expansion-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.76rem; font-weight:800; text-align:center; text-shadow:0 2px 7px #000; }
.fahd-expansion-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(920px,100%); margin:20px auto 26px; }
.fahd-expansion-facts article { padding:17px 12px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.fahd-expansion-facts strong,.fahd-expansion-facts span { display:block; }
.fahd-expansion-facts strong { color:#f2d57e; font-size:1.15rem; }
.fahd-expansion-facts span { margin-top:7px; font-size:.8rem; line-height:1.65; }
.fahd-expansion-milestones { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:min(920px,100%); margin:18px auto 30px; }
.fahd-expansion-milestones article { padding:15px; border:1px solid rgba(183,141,37,.22); border-radius:13px; background:#fcfaf4; }
.fahd-expansion-milestones time { display:inline-block; margin-bottom:7px; padding:4px 10px; border-radius:999px; background:#c49a35; color:#173f31; font-size:.78rem; font-weight:900; }
.fahd-expansion-milestones p { margin:0; color:#514b3d; font-size:.88rem; line-height:1.75; }
.abdullah-expansion-divider,.salman-expansion-divider { width:min(920px,100%); margin:40px auto 22px; padding:25px 22px; border-radius:18px; background:linear-gradient(135deg,#173f31,#0b2b21); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(15,48,37,.2); }
.abdullah-expansion-divider span,.salman-expansion-divider span { color:#f2d57e; font-size:.84rem; font-weight:900; }
.abdullah-expansion-divider h3,.salman-expansion-divider h3 { margin:5px 0 8px; color:#fff; font-size:clamp(1.25rem,3vw,1.8rem); }
.abdullah-expansion-divider p { width:min(770px,100%); margin:0 auto; color:rgba(255,255,255,.88); line-height:1.8; }
.abdullah-expansion-gallery { display:grid; grid-template-columns:1.25fr 1fr 1fr; grid-auto-rows:215px; gap:10px; width:min(960px,100%); margin:18px auto 24px; }
.abdullah-expansion-gallery figure,.salman-expansion-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:14px; background:#13251e; box-shadow:0 8px 23px rgba(21,35,28,.16); }
.abdullah-expansion-gallery .abdullah-photo-main { grid-row:span 2; }
.abdullah-expansion-gallery img,.salman-expansion-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.abdullah-expansion-gallery figure::after,.salman-expansion-gallery figure::after { content:""; position:absolute; inset:52% 0 0; background:linear-gradient(to top,rgba(2,8,6,.86),transparent); }
.abdullah-expansion-gallery figcaption,.salman-expansion-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.76rem; font-weight:800; text-align:center; text-shadow:0 2px 7px #000; }
.abdullah-expansion-pillars { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; width:min(920px,100%); margin:20px auto 25px; }
.abdullah-expansion-pillars article { padding:18px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; text-align:center; }
.abdullah-expansion-pillars span { display:grid; place-items:center; width:30px; height:30px; margin:0 auto 8px; border-radius:50%; background:#173f31; color:#f2d57e; font-weight:900; }
.abdullah-expansion-pillars h4 { margin:0 0 7px; color:#705414; }
.abdullah-expansion-pillars p { margin:0; color:#514b3d; font-size:.86rem; line-height:1.7; }
.salman-expansion-gallery { display:grid; grid-template-columns:1.4fr 1fr; grid-auto-rows:230px; gap:10px; width:min(940px,100%); margin:18px auto 24px; }
.salman-expansion-gallery .salman-photo-main { grid-row:span 2; }
.salman-projects { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; width:min(960px,100%); margin:20px auto 28px; }
.salman-projects article { padding:15px 10px; border-radius:13px; background:#173f31; color:#fff; text-align:center; }
.salman-projects strong,.salman-projects span { display:block; }
.salman-projects strong { color:#f2d57e; font-size:.9rem; }
.salman-projects span { margin-top:6px; font-size:.75rem; line-height:1.6; }
.haram-care-divider { width:min(920px,100%); margin:42px auto 22px; padding:24px 20px; border-radius:18px; background:linear-gradient(135deg,#8b6a1b,#c39a36); color:#fff; text-align:center; box-shadow:0 13px 30px rgba(92,66,12,.18); }
.haram-care-divider span { color:#fff8dc; font-size:.84rem; font-weight:900; }
.haram-care-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.3rem,3vw,1.85rem); }
.haram-care-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:245px; gap:10px; width:min(980px,100%); margin:20px auto 8px; }
.haram-care-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#16140f; box-shadow:0 8px 23px rgba(32,27,16,.16); }
.haram-care-gallery .haram-care-tall { grid-row:span 2; }
.haram-care-gallery .haram-care-wide { grid-column:span 2; }
.haram-care-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.haram-care-gallery figure::after { content:""; position:absolute; inset:52% 0 0; background:linear-gradient(to top,rgba(4,5,4,.86),transparent); }
.haram-care-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.76rem; font-weight:800; text-align:center; text-shadow:0 2px 7px #000; }
.mataf-history-divider { width:min(930px,100%); margin:44px auto 22px; padding:25px 20px; border-radius:18px; background:linear-gradient(135deg,#122f25,#225c47); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(15,48,37,.2); }
.mataf-history-divider span { color:#f2d57e; font-size:.84rem; font-weight:900; }
.mataf-history-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.4rem,3vw,2rem); }
.mataf-history-gallery { display:grid; grid-template-columns:1.3fr 1fr 1fr; grid-auto-rows:220px; gap:10px; width:min(970px,100%); margin:20px auto 26px; }
.mataf-history-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#181713; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.mataf-history-gallery .mataf-photo-main { grid-row:span 2; }
.mataf-history-gallery .mataf-photo-wide { grid-column:span 2; }
.mataf-history-gallery .mataf-photo-tall { grid-row:span 2; }
.mataf-history-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.mataf-history-gallery figure::after { content:""; position:absolute; inset:53% 0 0; background:linear-gradient(to top,rgba(3,5,4,.86),transparent); }
.mataf-history-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.76rem; font-weight:800; text-align:center; text-shadow:0 2px 7px #000; }
.mataf-history-timeline { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:min(930px,100%); margin:20px auto 26px; }
.mataf-history-timeline article { display:grid; grid-template-columns:92px 1fr; gap:13px; padding:15px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; }
.mataf-history-timeline time { align-self:start; padding:6px 8px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.76rem; font-weight:900; text-align:center; }
.mataf-history-timeline h4 { margin:0 0 5px; color:#705414; }
.mataf-history-timeline p { margin:0; color:#514b3d; font-size:.86rem; line-height:1.72; }
.mataf-modern-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(930px,100%); margin:20px auto 28px; }
.mataf-modern-facts article { padding:16px 12px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.mataf-modern-facts strong,.mataf-modern-facts span { display:block; }
.mataf-modern-facts strong { color:#f2d57e; font-size:1.05rem; }
.mataf-modern-facts span { margin-top:7px; font-size:.78rem; line-height:1.65; }
.mataf-modern-callout { display:flex; align-items:center; gap:16px; width:min(850px,100%); margin:20px auto 5px; padding:18px 20px; border-right:6px solid #c49a35; border-radius:14px; background:#f7f1df; color:#4d432d; }
.mataf-modern-callout strong { flex:0 0 auto; color:#173f31; }
.mataf-modern-callout span { line-height:1.8; }
.masaa-history-divider { width:min(930px,100%); margin:44px auto 22px; padding:25px 20px; border-radius:18px; background:linear-gradient(135deg,#745515,#bc9130); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(91,67,16,.18); }
.masaa-history-divider span { color:#fff7d6; font-size:.84rem; font-weight:900; }
.masaa-history-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.4rem,3vw,2rem); }
.masaa-history-gallery { display:grid; grid-template-columns:1.25fr 1fr 1fr; grid-auto-rows:215px; gap:10px; width:min(970px,100%); margin:20px auto 26px; }
.masaa-history-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.masaa-history-gallery .masaa-photo-main { grid-row:span 2; }
.masaa-history-gallery .masaa-photo-wide { grid-column:span 2; }
.masaa-history-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.masaa-history-gallery figure::after { content:""; position:absolute; inset:53% 0 0; background:linear-gradient(to top,rgba(3,5,4,.86),transparent); }
.masaa-history-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.76rem; font-weight:800; text-align:center; text-shadow:0 2px 7px #000; }
.masaa-history-timeline { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:min(930px,100%); margin:20px auto 26px; }
.masaa-history-timeline article { display:grid; grid-template-columns:110px 1fr; gap:13px; padding:15px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; }
.masaa-history-timeline time { align-self:start; padding:6px 8px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.75rem; font-weight:900; text-align:center; }
.masaa-history-timeline h4 { margin:0 0 5px; color:#705414; }
.masaa-history-timeline p { margin:0; color:#514b3d; font-size:.86rem; line-height:1.72; }
.masaa-modern-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(930px,100%); margin:20px auto 26px; }
.masaa-modern-facts article { padding:17px 12px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.masaa-modern-facts strong,.masaa-modern-facts span { display:block; }
.masaa-modern-facts strong { color:#f2d57e; font-size:1.05rem; }
.masaa-modern-facts span { margin-top:7px; font-size:.78rem; line-height:1.65; }
.haram-gates-divider { width:min(930px,100%); margin:44px auto 22px; padding:25px 20px; border-radius:18px; background:linear-gradient(135deg,#15392c,#87661a); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(35,45,29,.2); }
.haram-gates-divider span { color:#f6dc88; font-size:.84rem; font-weight:900; }
.haram-gates-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.35rem,3vw,1.95rem); }
.haram-gates-gallery { display:grid; grid-template-columns:1.15fr 1fr 1fr; grid-auto-rows:235px; gap:10px; width:min(970px,100%); margin:20px auto 27px; }
.haram-gates-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.haram-gates-gallery .gate-photo-main { grid-row:span 2; }
.haram-gates-gallery .gate-photo-wide { grid-column:span 2; }
.haram-gates-gallery .gate-photo-tall { grid-row:span 2; }
.haram-gates-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.haram-gates-gallery figure::after { content:""; position:absolute; inset:52% 0 0; background:linear-gradient(to top,rgba(3,5,4,.86),transparent); }
.haram-gates-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.78rem; font-weight:900; text-align:center; text-shadow:0 2px 7px #000; }
.historic-gates-directions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:min(930px,100%); margin:19px auto 27px; }
.historic-gates-directions article { padding:17px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; }
.historic-gates-directions span { display:inline-block; padding:5px 11px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.79rem; font-weight:900; }
.historic-gates-directions p { margin:9px 0 0; color:#514b3d; font-size:.88rem; line-height:1.75; }
.modern-gates-features { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(940px,100%); margin:20px auto 27px; }
.modern-gates-features article { padding:17px 12px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.modern-gates-features strong,.modern-gates-features span { display:block; }
.modern-gates-features strong { color:#f2d57e; font-size:.95rem; }
.modern-gates-features span { margin-top:7px; font-size:.78rem; line-height:1.65; }
.haram-services-divider { width:min(930px,100%); margin:44px auto 22px; padding:25px 20px; border-radius:18px; background:linear-gradient(135deg,#0f3528,#236249); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(15,48,37,.2); }
.haram-services-divider span { color:#f2d57e; font-size:.84rem; font-weight:900; }
.haram-services-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.35rem,3vw,1.95rem); }
.haram-services-gallery { display:grid; grid-template-columns:1.2fr 1fr 1fr; grid-auto-rows:230px; gap:10px; width:min(970px,100%); margin:20px auto 27px; }
.haram-services-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.haram-services-gallery .service-photo-main { grid-row:span 2; }
.haram-services-gallery .service-photo-wide { grid-column:span 2; }
.haram-services-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.haram-services-gallery figure::after { content:""; position:absolute; inset:52% 0 0; background:linear-gradient(to top,rgba(3,5,4,.86),transparent); }
.haram-services-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.78rem; font-weight:900; text-align:center; text-shadow:0 2px 7px #000; }
.haram-services-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; width:min(950px,100%); margin:20px auto 26px; }
.haram-services-grid article { padding:17px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; }
.haram-services-grid span { display:inline-block; padding:4px 11px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.77rem; font-weight:900; }
.haram-services-grid h4 { margin:9px 0 5px; color:#705414; }
.haram-services-grid p { margin:0; color:#514b3d; font-size:.85rem; line-height:1.72; }
.haram-services-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(930px,100%); margin:20px auto 28px; }
.haram-services-facts article { padding:17px 12px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.haram-services-facts strong,.haram-services-facts span { display:block; }
.haram-services-facts strong { color:#f2d57e; font-size:1.08rem; }
.haram-services-facts span { margin-top:7px; font-size:.79rem; line-height:1.65; }
.holy-sites-divider,.mina-divider,.jamarat-divider,.mina-infrastructure-divider { width:min(930px,100%); margin:46px auto 22px; padding:26px 20px; border-radius:18px; color:#fff; text-align:center; box-shadow:0 13px 32px rgba(20,42,31,.2); }
.holy-sites-divider { background:linear-gradient(135deg,#173f31,#9a761e); }
.mina-divider { background:linear-gradient(135deg,#5c4618,#a47b22); }
.jamarat-divider { background:linear-gradient(135deg,#213e37,#397562); }
.mina-infrastructure-divider { background:linear-gradient(135deg,#243d50,#1d6658); }
.holy-sites-divider span,.mina-divider span,.jamarat-divider span,.mina-infrastructure-divider span { color:#f5dc8d; font-size:.84rem; font-weight:900; }
.holy-sites-divider h3,.mina-divider h3,.jamarat-divider h3,.mina-infrastructure-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.4rem,3vw,2rem); }
.holy-sites-overview,.mina-safety-grid,.mina-infrastructure-grid { display:grid; gap:10px; width:min(950px,100%); margin:20px auto 28px; }
.holy-sites-overview { grid-template-columns:repeat(4,minmax(0,1fr)); }
.holy-sites-overview article { padding:17px 13px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.holy-sites-overview strong,.holy-sites-overview span { display:block; }
.holy-sites-overview strong { color:#f2d57e; }
.holy-sites-overview span { margin-top:7px; font-size:.79rem; line-height:1.65; }
.mina-gallery,.jamarat-gallery { display:grid; grid-template-columns:1.2fr 1fr 1fr; grid-auto-rows:225px; gap:10px; width:min(970px,100%); margin:20px auto 28px; }
.mina-gallery figure,.jamarat-gallery figure,.mina-landmarks-gallery figure,.mina-infrastructure-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.mina-gallery .mina-photo-main,.jamarat-gallery .jamarat-photo-main { grid-row:span 2; }
.mina-gallery img,.jamarat-gallery img,.mina-landmarks-gallery img,.mina-infrastructure-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.mina-gallery figure::after,.jamarat-gallery figure::after,.mina-landmarks-gallery figure::after,.mina-infrastructure-gallery figure::after { content:""; position:absolute; inset:53% 0 0; background:linear-gradient(to top,rgba(3,5,4,.86),transparent); }
.mina-gallery figcaption,.jamarat-gallery figcaption,.mina-landmarks-gallery figcaption,.mina-infrastructure-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.78rem; font-weight:900; text-align:center; text-shadow:0 2px 7px #000; }
.mina-landmarks-gallery,.mina-infrastructure-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; width:min(950px,100%); margin:18px auto 28px; }
.mina-landmarks-gallery figure,.mina-infrastructure-gallery figure { height:245px; }
.mina-infrastructure-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mina-safety-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.mina-safety-grid article,.mina-infrastructure-grid article { padding:17px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; }
.mina-safety-grid span { display:inline-block; padding:4px 11px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.77rem; font-weight:900; }
.mina-safety-grid h4,.mina-infrastructure-grid h4 { margin:9px 0 5px; color:#705414; }
.mina-safety-grid p,.mina-infrastructure-grid p { margin:0; color:#514b3d; font-size:.85rem; line-height:1.72; }
.jamarat-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(930px,100%); margin:20px auto 28px; }
.jamarat-facts article { padding:17px 12px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.jamarat-facts strong,.jamarat-facts span { display:block; }
.jamarat-facts strong { color:#f2d57e; font-size:1.05rem; }
.jamarat-facts span { margin-top:7px; font-size:.78rem; line-height:1.65; }
.mina-infrastructure-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.muzdalifah-divider,.muzdalifah-mobility-divider { width:min(930px,100%); margin:46px auto 22px; padding:26px 20px; border-radius:18px; color:#fff; text-align:center; box-shadow:0 13px 32px rgba(20,42,31,.2); }
.muzdalifah-divider { background:linear-gradient(135deg,#2f4560,#8c6b22); }
.muzdalifah-mobility-divider { background:linear-gradient(135deg,#233f50,#23705c); }
.muzdalifah-divider span,.muzdalifah-mobility-divider span { color:#f4da87; font-size:.84rem; font-weight:900; }
.muzdalifah-divider h3,.muzdalifah-mobility-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.4rem,3vw,2rem); }
.muzdalifah-gallery { display:grid; grid-template-columns:1.2fr 1fr 1fr; grid-auto-rows:225px; gap:10px; width:min(970px,100%); margin:20px auto 28px; }
.muzdalifah-gallery figure,.muzdalifah-roads-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.muzdalifah-gallery .muzdalifah-photo-main { grid-row:span 2; }
.muzdalifah-gallery .muzdalifah-photo-wide { grid-column:span 2; }
.muzdalifah-gallery img,.muzdalifah-roads-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.muzdalifah-gallery figure::after,.muzdalifah-roads-gallery figure::after { content:""; position:absolute; inset:53% 0 0; background:linear-gradient(to top,rgba(3,5,4,.87),transparent); }
.muzdalifah-gallery figcaption,.muzdalifah-roads-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.78rem; font-weight:900; text-align:center; text-shadow:0 2px 7px #000; }
.muzdalifah-boundaries { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(950px,100%); margin:20px auto; }
.muzdalifah-boundaries article { padding:16px 13px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; text-align:center; }
.muzdalifah-boundaries span { display:inline-block; padding:4px 10px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.76rem; font-weight:900; }
.muzdalifah-boundaries strong { display:block; margin:9px 0 5px; color:#705414; }
.muzdalifah-boundaries p { margin:0; color:#514b3d; font-size:.82rem; line-height:1.68; }
.muzdalifah-history-note { display:flex; align-items:center; gap:16px; width:min(880px,100%); margin:18px auto 30px; padding:18px 20px; border-right:6px solid #b78a29; border-radius:14px; background:#f7f1df; color:#4d432d; }
.muzdalifah-history-note strong { flex:0 0 auto; color:#173f31; }
.muzdalifah-history-note span { line-height:1.8; }
.muzdalifah-roads-gallery { display:grid; grid-template-columns:1.2fr 1fr; grid-auto-rows:230px; gap:10px; width:min(950px,100%); margin:20px auto 28px; }
.muzdalifah-roads-gallery .muzdalifah-road-main { grid-row:span 2; }
.muzdalifah-services-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:min(950px,100%); margin:20px auto 28px; }
.muzdalifah-services-grid article { padding:17px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; }
.muzdalifah-services-grid span { display:inline-block; padding:4px 11px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.77rem; font-weight:900; }
.muzdalifah-services-grid h4 { margin:9px 0 5px; color:#705414; }
.muzdalifah-services-grid p { margin:0; color:#514b3d; font-size:.85rem; line-height:1.72; }
.arafat-divider,.namirah-divider,.arafat-services-divider { width:min(930px,100%); margin:46px auto 22px; padding:26px 20px; border-radius:18px; color:#fff; text-align:center; box-shadow:0 13px 32px rgba(20,42,31,.2); }
.arafat-divider { background:linear-gradient(135deg,#173f31,#9b781f); }
.namirah-divider { background:linear-gradient(135deg,#31495a,#6e7650); }
.arafat-services-divider { background:linear-gradient(135deg,#1f5d45,#7f6a22); }
.arafat-divider span,.namirah-divider span,.arafat-services-divider span { color:#f5dc8d; font-size:.84rem; font-weight:900; }
.arafat-divider h3,.namirah-divider h3,.arafat-services-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.4rem,3vw,2rem); }
.arafat-gallery { display:grid; grid-template-columns:1.2fr 1fr 1fr; grid-auto-rows:225px; gap:10px; width:min(970px,100%); margin:20px auto 28px; }
.arafat-gallery figure,.arafat-water-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.arafat-gallery .arafat-photo-main { grid-row:span 2; }
.arafat-gallery img,.arafat-water-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.arafat-gallery figure::after,.arafat-water-gallery figure::after { content:""; position:absolute; inset:53% 0 0; background:linear-gradient(to top,rgba(3,5,4,.87),transparent); }
.arafat-gallery figcaption,.arafat-water-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.78rem; font-weight:900; text-align:center; text-shadow:0 2px 7px #000; }
.arafat-boundary-note { display:flex; align-items:center; gap:16px; width:min(870px,100%); margin:20px auto 30px; padding:18px 20px; border-right:6px solid #b78a29; border-radius:14px; background:#f7f1df; color:#4d432d; }
.arafat-boundary-note strong { flex:0 0 auto; color:#173f31; }
.arafat-boundary-note span { line-height:1.8; }
.namirah-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(930px,100%); margin:20px auto 28px; }
.namirah-facts article { padding:17px 12px; border-radius:14px; background:#173f31; color:#fff; text-align:center; }
.namirah-facts strong,.namirah-facts span { display:block; }
.namirah-facts strong { color:#f2d57e; font-size:1.05rem; }
.namirah-facts span { margin-top:7px; font-size:.78rem; line-height:1.65; }
.arafat-services-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:min(950px,100%); margin:20px auto 28px; }
.arafat-services-grid article { padding:17px; border:1px solid rgba(184,142,39,.22); border-radius:14px; background:#fbf8ef; }
.arafat-services-grid span { display:inline-block; padding:4px 11px; border-radius:999px; background:#173f31; color:#f2d57e; font-size:.77rem; font-weight:900; }
.arafat-services-grid h4 { margin:9px 0 5px; color:#705414; }
.arafat-services-grid p { margin:0; color:#514b3d; font-size:.85rem; line-height:1.72; }
.arafat-water-gallery { display:grid; grid-template-columns:1.2fr 1fr 1fr; grid-auto-rows:215px; gap:10px; width:min(970px,100%); margin:20px auto 28px; }
.arafat-water-gallery .arafat-water-main { grid-row:span 2; }
.hajj-health-divider,.hajj-prevention-divider { width:min(930px,100%); margin:46px auto 22px; padding:26px 20px; border-radius:18px; color:#fff; text-align:center; box-shadow:0 13px 32px rgba(20,42,31,.2); }
.hajj-health-divider { background:linear-gradient(135deg,#17485a,#1e765c); }
.hajj-prevention-divider { background:linear-gradient(135deg,#1f6048,#8a7228); }
.hajj-health-divider span,.hajj-prevention-divider span { color:#dff6e7; font-size:.84rem; font-weight:900; }
.hajj-health-divider h3,.hajj-prevention-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.4rem,3vw,2rem); }
.hajj-health-history-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; width:min(940px,100%); margin:20px auto 28px; }
.hajj-health-history-facts article { padding:17px 12px; border-radius:14px; background:#164f47; color:#fff; text-align:center; }
.hajj-health-history-facts strong,.hajj-health-history-facts span { display:block; }
.hajj-health-history-facts strong { color:#f2d57e; font-size:1.08rem; }
.hajj-health-history-facts span { margin-top:7px; font-size:.78rem; line-height:1.65; }
.hajj-health-gallery,.hajj-prevention-gallery { display:grid; grid-template-columns:1.2fr 1fr 1fr; grid-auto-rows:215px; gap:10px; width:min(970px,100%); margin:20px auto 28px; }
.hajj-health-gallery figure,.hajj-prevention-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.hajj-health-gallery .health-photo-main,.hajj-prevention-gallery .prevention-photo-main { grid-row:span 2; }
.hajj-health-gallery img,.hajj-prevention-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.hajj-health-gallery figure::after,.hajj-prevention-gallery figure::after { content:""; position:absolute; inset:53% 0 0; background:linear-gradient(to top,rgba(3,5,4,.87),transparent); }
.hajj-health-gallery figcaption,.hajj-prevention-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.78rem; font-weight:900; text-align:center; text-shadow:0 2px 7px #000; }
.hajj-health-pillars { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; width:min(960px,100%); margin:20px auto 28px; }
.hajj-health-pillars article { padding:17px; border:1px solid rgba(36,111,88,.22); border-radius:14px; background:#f3faf7; }
.hajj-health-pillars span { display:inline-block; padding:4px 11px; border-radius:999px; background:#164f47; color:#e4f6eb; font-size:.77rem; font-weight:900; }
.hajj-health-pillars h4 { margin:9px 0 5px; color:#145646; }
.hajj-health-pillars p { margin:0; color:#42544f; font-size:.84rem; line-height:1.7; }
.crowd-management-divider { width:min(930px,100%); margin:46px auto 22px; padding:26px 20px; border-radius:18px; background:linear-gradient(135deg,#253f58,#176451); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(20,42,31,.2); }
.crowd-management-divider span { color:#dceee8; font-size:.84rem; font-weight:900; }
.crowd-management-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.4rem,3vw,2rem); }
.crowd-management-gallery { display:grid; grid-template-columns:1.2fr 1fr 1fr; grid-auto-rows:225px; gap:10px; width:min(970px,100%); margin:20px auto 28px; }
.crowd-management-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.crowd-management-gallery .crowd-photo-main { grid-row:span 2; }
.crowd-management-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.crowd-management-gallery figure::after { content:""; position:absolute; inset:53% 0 0; background:linear-gradient(to top,rgba(3,5,4,.87),transparent); }
.crowd-management-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.78rem; font-weight:900; text-align:center; text-shadow:0 2px 7px #000; }
.crowd-management-stages { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; width:min(960px,100%); margin:20px auto 28px; }
.crowd-management-stages article { position:relative; padding:18px 16px; border:1px solid rgba(36,86,107,.2); border-radius:14px; background:#f4f8fa; }
.crowd-management-stages span { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:#1b5f51; color:#fff; font-weight:900; }
.crowd-management-stages h4 { margin:10px 0 5px; color:#214d5c; }
.crowd-management-stages p { margin:0; color:#46545a; font-size:.84rem; line-height:1.7; }
.crowd-management-callout { display:flex; align-items:center; gap:16px; width:min(870px,100%); margin:20px auto 28px; padding:18px 20px; border-right:6px solid #1b6b59; border-radius:14px; background:#edf7f3; color:#40534d; }
.crowd-management-callout strong { flex:0 0 auto; color:#174d42; }
.crowd-management-callout span { line-height:1.8; }
.humanity-divider { width:min(930px,100%); margin:46px auto 22px; padding:26px 20px; border-radius:18px; background:linear-gradient(135deg,#6d4b20,#b0822f); color:#fff; text-align:center; box-shadow:0 13px 32px rgba(76,52,20,.2); }
.humanity-divider span { color:#fff2c4; font-size:.84rem; font-weight:900; }
.humanity-divider h3 { margin:5px 0 0; color:#fff; font-size:clamp(1.4rem,3vw,2rem); }
.humanity-gallery { display:grid; grid-template-columns:1.15fr 1fr 1fr; grid-auto-rows:225px; gap:10px; width:min(970px,100%); margin:20px auto 28px; }
.humanity-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:15px; background:#17140f; box-shadow:0 8px 23px rgba(30,26,18,.16); }
.humanity-gallery .humanity-photo-main,.humanity-gallery .humanity-photo-tall { grid-row:span 2; }
.humanity-gallery .humanity-photo-wide { grid-column:span 2; }
.humanity-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.humanity-gallery figure::after { content:""; position:absolute; inset:52% 0 0; background:linear-gradient(to top,rgba(3,5,4,.88),transparent); }
.humanity-gallery figcaption { position:absolute; z-index:1; right:10px; bottom:9px; left:10px; color:#fff; font-size:.78rem; font-weight:900; text-align:center; text-shadow:0 2px 7px #000; }
.humanity-quote { width:min(820px,100%); margin:22px auto 8px; padding:22px 26px; border:0; border-right:6px solid #b1842c; border-radius:14px; background:#f8f1df; color:#634b1f; font-size:1.06rem; font-weight:800; line-height:1.9; text-align:center; }
@media(max-width:720px){.haram-quran-pair{grid-template-columns:1fr}.haram-four-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.haram-expansion-timeline::before{right:38px}.haram-expansion-timeline article{grid-template-columns:78px 1fr;gap:12px}.haram-historic-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:210px}.haram-historic-gallery .haram-photo-main{grid-column:span 2;grid-row:auto}.haram-historic-gallery .haram-photo-wide{grid-column:span 2}}
@media(max-width:720px){.saudi-first-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.saudi-first-gallery .saudi-first-main{grid-column:span 2;grid-row:auto}.saudi-first-gallery .saudi-first-wide{grid-column:span 2}.saudi-kings-continuation{grid-template-columns:1fr}}
@media(max-width:720px){.fahd-expansion-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.fahd-expansion-gallery .fahd-photo-main{grid-column:span 2;grid-row:auto}.fahd-expansion-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.abdullah-expansion-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.abdullah-expansion-gallery .abdullah-photo-main{grid-column:span 2;grid-row:auto}.abdullah-expansion-pillars{grid-template-columns:1fr}.salman-projects{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.haram-care-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:230px}.haram-care-gallery .haram-care-tall{grid-row:auto}.haram-care-gallery .haram-care-wide{grid-column:span 2}}
@media(max-width:720px){.mataf-history-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.mataf-history-gallery .mataf-photo-main{grid-column:span 2;grid-row:auto}.mataf-history-gallery .mataf-photo-tall{grid-row:auto}.mataf-history-timeline{grid-template-columns:1fr}.mataf-modern-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.masaa-history-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.masaa-history-gallery .masaa-photo-main{grid-column:span 2;grid-row:auto}.masaa-history-gallery .masaa-photo-wide{grid-column:span 2}.masaa-history-timeline{grid-template-columns:1fr}.masaa-modern-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.haram-gates-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:235px}.haram-gates-gallery .gate-photo-main{grid-column:span 2;grid-row:auto}.haram-gates-gallery .gate-photo-tall{grid-row:auto}.historic-gates-directions{grid-template-columns:1fr}.modern-gates-features{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.haram-services-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:225px}.haram-services-gallery .service-photo-main{grid-column:span 2;grid-row:auto}.haram-services-gallery .service-photo-wide{grid-column:span 2}.haram-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.haram-services-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.holy-sites-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.mina-gallery,.jamarat-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.mina-gallery .mina-photo-main,.jamarat-gallery .jamarat-photo-main{grid-column:span 2;grid-row:auto}.mina-landmarks-gallery{grid-template-columns:1fr 1fr}.mina-safety-grid{grid-template-columns:1fr}.jamarat-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.muzdalifah-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.muzdalifah-gallery .muzdalifah-photo-main{grid-column:span 2;grid-row:auto}.muzdalifah-gallery .muzdalifah-photo-wide{grid-column:span 2}.muzdalifah-boundaries{grid-template-columns:repeat(2,minmax(0,1fr))}.muzdalifah-roads-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.muzdalifah-roads-gallery .muzdalifah-road-main{grid-column:span 2;grid-row:auto}}
@media(max-width:720px){.arafat-gallery,.arafat-water-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.arafat-gallery .arafat-photo-main,.arafat-water-gallery .arafat-water-main{grid-column:span 2;grid-row:auto}.namirah-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.hajj-health-history-facts,.hajj-health-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}.hajj-health-gallery,.hajj-prevention-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.hajj-health-gallery .health-photo-main,.hajj-prevention-gallery .prevention-photo-main{grid-column:span 2;grid-row:auto}}

/* Unified editorial image system — keeps article galleries compact and harmonious. */
.region-content {
  --editorial-gallery-width: 880px;
  --editorial-image-height: 188px;
  --editorial-image-gap: 10px;
}

.region-content :is(
  .historic-makkah-gallery,
  .landmark-gallery,
  .neighborhood-gallery,
  .city-art-grid,
  .kaaba-history-gallery,
  .kaaba-parts-gallery,
  .kaaba-door-gallery,
  .kaaba-key-gallery,
  .kaaba-custodians-gallery,
  .kaaba-factory-process-gallery,
  .kaaba-season-gallery,
  .kaaba-new-kiswa-gallery,
  .haram-historic-gallery,
  .saudi-first-gallery,
  .fahd-expansion-gallery,
  .abdullah-expansion-gallery,
  .salman-expansion-gallery,
  .haram-care-gallery,
  .mataf-history-gallery,
  .masaa-history-gallery,
  .haram-gates-gallery,
  .haram-services-gallery,
  .mina-gallery,
  .jamarat-gallery,
  .mina-landmarks-gallery,
  .mina-infrastructure-gallery,
  .muzdalifah-gallery,
  .muzdalifah-roads-gallery,
  .arafat-gallery,
  .arafat-water-gallery,
  .hajj-health-gallery,
  .hajj-prevention-gallery,
  .crowd-management-gallery,
  .humanity-gallery
) {
  width: min(var(--editorial-gallery-width), 100%);
  margin: 20px auto 28px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: var(--editorial-image-height);
  gap: var(--editorial-image-gap);
}

.region-content :is(
  .historic-makkah-gallery,
  .landmark-gallery,
  .neighborhood-gallery,
  .city-art-grid,
  .kaaba-history-gallery,
  .kaaba-parts-gallery,
  .kaaba-door-gallery,
  .kaaba-key-gallery,
  .kaaba-custodians-gallery,
  .kaaba-factory-process-gallery,
  .kaaba-season-gallery,
  .kaaba-new-kiswa-gallery,
  .haram-historic-gallery,
  .saudi-first-gallery,
  .fahd-expansion-gallery,
  .abdullah-expansion-gallery,
  .salman-expansion-gallery,
  .haram-care-gallery,
  .mataf-history-gallery,
  .masaa-history-gallery,
  .haram-gates-gallery,
  .haram-services-gallery,
  .mina-gallery,
  .jamarat-gallery,
  .mina-landmarks-gallery,
  .mina-infrastructure-gallery,
  .muzdalifah-gallery,
  .muzdalifah-roads-gallery,
  .arafat-gallery,
  .arafat-water-gallery,
  .hajj-health-gallery,
  .hajj-prevention-gallery,
  .crowd-management-gallery,
  .humanity-gallery
) > figure {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 100%;
  height: var(--editorial-image-height) !important;
  min-height: 0;
  margin: 0;
}

.region-content :is(
  .historic-makkah-gallery,
  .landmark-gallery,
  .neighborhood-gallery,
  .city-art-grid,
  .kaaba-history-gallery,
  .kaaba-parts-gallery,
  .kaaba-door-gallery,
  .kaaba-key-gallery,
  .kaaba-custodians-gallery,
  .kaaba-factory-process-gallery,
  .kaaba-season-gallery,
  .kaaba-new-kiswa-gallery,
  .haram-historic-gallery,
  .saudi-first-gallery,
  .fahd-expansion-gallery,
  .abdullah-expansion-gallery,
  .salman-expansion-gallery,
  .haram-care-gallery,
  .mataf-history-gallery,
  .masaa-history-gallery,
  .haram-gates-gallery,
  .haram-services-gallery,
  .mina-gallery,
  .jamarat-gallery,
  .mina-landmarks-gallery,
  .mina-infrastructure-gallery,
  .muzdalifah-gallery,
  .muzdalifah-roads-gallery,
  .arafat-gallery,
  .arafat-water-gallery,
  .hajj-health-gallery,
  .hajj-prevention-gallery,
  .crowd-management-gallery,
  .humanity-gallery
) img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  object-fit: cover;
}

.region-content :is(
  .chapter-image,
  .mountain-photo,
  .landmark-photo,
  .neighborhood-hero,
  .neighborhood-photo,
  .neighborhood-panorama,
  .kaaba-restoration-hero,
  .kaaba-kiswa-hero,
  .kaaba-factory-hero
) {
  width: min(700px, 100%);
  margin: 22px auto;
}

.region-content :is(
  .chapter-image,
  .mountain-photo,
  .landmark-photo,
  .neighborhood-hero,
  .neighborhood-photo,
  .neighborhood-panorama,
  .kaaba-restoration-hero,
  .kaaba-kiswa-hero,
  .kaaba-factory-hero
) img {
  width: 100%;
  height: clamp(230px, 34vw, 360px);
  max-height: 360px;
  object-fit: cover;
}

@media (max-width: 760px) {
  .region-content {
    --editorial-image-height: 210px;
  }

  .region-content :is(
    .historic-makkah-gallery,
    .landmark-gallery,
    .neighborhood-gallery,
    .city-art-grid,
    .kaaba-history-gallery,
    .kaaba-parts-gallery,
    .kaaba-door-gallery,
    .kaaba-key-gallery,
    .kaaba-custodians-gallery,
    .kaaba-factory-process-gallery,
    .kaaba-season-gallery,
    .kaaba-new-kiswa-gallery,
    .haram-historic-gallery,
    .saudi-first-gallery,
    .fahd-expansion-gallery,
    .abdullah-expansion-gallery,
    .salman-expansion-gallery,
    .haram-care-gallery,
    .mataf-history-gallery,
    .masaa-history-gallery,
    .haram-gates-gallery,
    .haram-services-gallery,
    .mina-gallery,
    .jamarat-gallery,
    .mina-landmarks-gallery,
    .mina-infrastructure-gallery,
    .muzdalifah-gallery,
    .muzdalifah-roads-gallery,
    .arafat-gallery,
    .arafat-water-gallery,
    .hajj-health-gallery,
    .hajj-prevention-gallery,
    .crowd-management-gallery,
    .humanity-gallery
  ) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .region-content {
    --editorial-image-height: 220px;
  }

  .region-content :is(
    .historic-makkah-gallery,
    .landmark-gallery,
    .neighborhood-gallery,
    .city-art-grid,
    .kaaba-history-gallery,
    .kaaba-parts-gallery,
    .kaaba-door-gallery,
    .kaaba-key-gallery,
    .kaaba-custodians-gallery,
    .kaaba-factory-process-gallery,
    .kaaba-season-gallery,
    .kaaba-new-kiswa-gallery,
    .haram-historic-gallery,
    .saudi-first-gallery,
    .fahd-expansion-gallery,
    .abdullah-expansion-gallery,
    .salman-expansion-gallery,
    .haram-care-gallery,
    .mataf-history-gallery,
    .masaa-history-gallery,
    .haram-gates-gallery,
    .haram-services-gallery,
    .mina-gallery,
    .jamarat-gallery,
    .mina-landmarks-gallery,
    .mina-infrastructure-gallery,
    .muzdalifah-gallery,
    .muzdalifah-roads-gallery,
    .arafat-gallery,
    .arafat-water-gallery,
    .hajj-health-gallery,
    .hajj-prevention-gallery,
    .crowd-management-gallery,
    .humanity-gallery
  ) {
    grid-template-columns: 1fr;
    width: min(100%, 430px);
  }
}
@media(max-width:720px){.crowd-management-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.crowd-management-gallery .crowd-photo-main{grid-column:span 2;grid-row:auto}.crowd-management-stages{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.humanity-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:225px}.humanity-gallery .humanity-photo-main{grid-column:span 2;grid-row:auto}.humanity-gallery .humanity-photo-tall{grid-row:auto}.humanity-gallery .humanity-photo-wide{grid-column:span 2}}
@media(max-width:460px){.haram-four-stages{grid-template-columns:1fr 1fr}.haram-expansion-timeline::before{display:none}.haram-expansion-timeline article{grid-template-columns:1fr}.haram-expansion-timeline time{justify-self:start}.haram-historic-gallery{grid-template-columns:1fr;grid-auto-rows:230px}.haram-historic-gallery .haram-photo-main,.haram-historic-gallery .haram-photo-wide{grid-column:auto}}
@media(max-width:460px){.saudi-expansion-callout{align-items:flex-start;flex-direction:column;gap:6px}.saudi-first-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.saudi-first-gallery .saudi-first-main,.saudi-first-gallery .saudi-first-wide{grid-column:auto}}
@media(max-width:460px){.fahd-expansion-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.fahd-expansion-gallery .fahd-photo-main{grid-column:auto}.fahd-expansion-facts,.fahd-expansion-milestones{grid-template-columns:1fr}}
@media(max-width:460px){.abdullah-expansion-gallery,.salman-expansion-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.abdullah-expansion-gallery .abdullah-photo-main,.salman-expansion-gallery .salman-photo-main{grid-column:auto;grid-row:auto}.salman-projects{grid-template-columns:1fr}}
@media(max-width:460px){.haram-care-gallery{grid-template-columns:1fr;grid-auto-rows:250px}.haram-care-gallery .haram-care-wide{grid-column:auto}}
@media(max-width:460px){.mataf-history-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.mataf-history-gallery .mataf-photo-main,.mataf-history-gallery .mataf-photo-wide{grid-column:auto}.mataf-modern-facts{grid-template-columns:1fr 1fr}.mataf-modern-callout{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:460px){.masaa-history-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.masaa-history-gallery .masaa-photo-main,.masaa-history-gallery .masaa-photo-wide{grid-column:auto}.masaa-history-timeline article{grid-template-columns:1fr}.masaa-history-timeline time{justify-self:start}.masaa-modern-facts{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.haram-gates-gallery{grid-template-columns:1fr;grid-auto-rows:250px}.haram-gates-gallery .gate-photo-main,.haram-gates-gallery .gate-photo-wide{grid-column:auto}.modern-gates-features{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.haram-services-gallery{grid-template-columns:1fr;grid-auto-rows:245px}.haram-services-gallery .service-photo-main,.haram-services-gallery .service-photo-wide{grid-column:auto}.haram-services-grid{grid-template-columns:1fr}.haram-services-facts{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.holy-sites-overview{grid-template-columns:1fr 1fr}.mina-gallery,.jamarat-gallery,.mina-landmarks-gallery,.mina-infrastructure-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.mina-gallery .mina-photo-main,.jamarat-gallery .jamarat-photo-main{grid-column:auto}.mina-landmarks-gallery figure,.mina-infrastructure-gallery figure{height:235px}.jamarat-facts{grid-template-columns:1fr 1fr}.mina-infrastructure-grid{grid-template-columns:1fr}}
@media(max-width:460px){.muzdalifah-gallery,.muzdalifah-roads-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.muzdalifah-gallery .muzdalifah-photo-main,.muzdalifah-gallery .muzdalifah-photo-wide,.muzdalifah-roads-gallery .muzdalifah-road-main{grid-column:auto;grid-row:auto}.muzdalifah-boundaries,.muzdalifah-services-grid{grid-template-columns:1fr}.muzdalifah-history-note{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:460px){.arafat-gallery,.arafat-water-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.arafat-gallery .arafat-photo-main,.arafat-water-gallery .arafat-water-main{grid-column:auto}.arafat-boundary-note{align-items:flex-start;flex-direction:column;gap:6px}.namirah-facts{grid-template-columns:1fr 1fr}.arafat-services-grid{grid-template-columns:1fr}}
@media(max-width:460px){.hajj-health-history-facts{grid-template-columns:1fr 1fr}.hajj-health-pillars{grid-template-columns:1fr}.hajj-health-gallery,.hajj-prevention-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.hajj-health-gallery .health-photo-main,.hajj-prevention-gallery .prevention-photo-main{grid-column:auto}}
@media(max-width:460px){.crowd-management-gallery{grid-template-columns:1fr;grid-auto-rows:235px}.crowd-management-gallery .crowd-photo-main{grid-column:auto}.crowd-management-stages{grid-template-columns:1fr}.crowd-management-callout{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:460px){.humanity-gallery{grid-template-columns:1fr;grid-auto-rows:245px}.humanity-gallery .humanity-photo-main,.humanity-gallery .humanity-photo-wide{grid-column:auto}.humanity-quote{padding:18px;font-size:.96rem}}
.old-neighborhoods-closing-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 14px 0 0; align-items: start; }
.old-neighborhoods-closing-gallery figure { margin: 0; text-align: center; }
.old-neighborhoods-closing-gallery img { width: 100%; height: 230px; object-fit: cover; border-radius: 14px; }
.old-neighborhoods-closing-gallery figcaption { margin-top: 6px; color: #8a691b; font-size: .78rem; font-weight: 700; }
@media (max-width: 720px) { .old-neighborhoods-closing-gallery { grid-template-columns: 1fr; } .old-neighborhoods-closing-gallery img { height: auto; } }
.misfalah-section p { margin: 0; line-height: 1.42; }
.misfalah-section h3 { margin-top: 16px; text-align: center; }
.misfalah-section dl, .misfalah-section dt, .misfalah-section dd { margin: 0; }
.qashashiyah-section p { margin: 0; line-height: 1.42; }
.qashashiyah-section h3 { margin-top: 16px; text-align: center; }
.jarwal-section p { margin: 0; line-height: 1.42; }
.jarwal-section h3 { margin-top: 16px; text-align: center; }
.maabdah-section p { margin: 0; line-height: 1.42; }
.maabdah-section h3 { margin-top: 16px; text-align: center; }
.small-market-section p { margin: 0; line-height: 1.42; }
.small-market-section h3 { margin-top: 16px; text-align: center; }
.night-market-section p { margin: 0; line-height: 1.42; }
.night-market-section h3 { margin-top: 16px; text-align: center; }
.ajyad-section p { margin: 0; line-height: 1.42; }
.ajyad-section h3 { margin-top: 16px; text-align: center; }
.shubaykah-section p { margin: 0; line-height: 1.42; }
.shubaykah-section h3 { margin-top: 16px; text-align: center; }
.gate-quarter-section p { margin: 0; line-height: 1.42; }
.gate-quarter-section h3 { margin-top: 16px; text-align: center; }
.raqubah-section p, .tanbadawi-section p { margin: 0; line-height: 1.42; }
.raqubah-section h3, .tanbadawi-section h3 { margin-top: 16px; text-align: center; }
.hajun-section p { margin: 0; line-height: 1.42; }
.hajun-section h3 { margin-top: 16px; text-align: center; }
.hajun-section .history-poetry { margin: 10px auto; text-align: center; line-height: 1.9; }
.pilgrimage-map { height: 460px; margin: 12px 0 10px; }
.pilgrimage-map img { object-fit: contain; background: #fff; }
.pilgrimage-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; margin: 10px 0 16px; }
.pilgrimage-gallery .historic-photo { min-height: 230px; }
.pilgrimage-gallery .historic-photo-wide { grid-column: span 2; height: auto; }
.pilgrimage-gallery .historic-photo-tall { grid-row: span 2; }
.pilgrimage-gallery .historic-photo-tall img { min-height: 469px; }
.pilgrimage-closing-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); }
.pilgrimage-closing-gallery .historic-photo:first-child { grid-column: 1 / -1; height: 360px; }
@media (max-width: 650px) { .historic-makkah-opening,.historic-makkah-pair { grid-template-columns: 1fr; grid-template-rows: none; } .historic-makkah-opening .historic-photo-main { grid-row: auto; } .historic-makkah-opening .historic-photo,.historic-photo-wide { height: 230px; } }
@media (max-width: 650px) { .pilgrimage-gallery,.pilgrimage-closing-gallery { grid-template-columns: 1fr; } .pilgrimage-gallery .historic-photo,.pilgrimage-gallery .historic-photo-wide,.pilgrimage-gallery .historic-photo-tall,.pilgrimage-closing-gallery .historic-photo:first-child { grid-column: auto; grid-row: auto; height: 230px; min-height: 230px; } .pilgrimage-gallery .historic-photo-tall img { min-height: 230px; } .pilgrimage-map { height: auto; } }
.mission-photo { width: min(860px,100%); margin: 10px auto 12px; padding: 7px; background: #fff; border: 1px solid rgba(200,164,91,.42); box-shadow: 0 17px 48px rgba(7,55,44,.11); }
.mission-photo img { display: block; width: 100%; height: auto; object-fit: contain; }
.mission-photo figcaption { padding: 10px 8px 4px; color: var(--green); font-family: "Noto Kufi Arabic",sans-serif; font-size: .8rem; font-weight: 700; text-align: center; }
.mission-photo-banner img { aspect-ratio: 5 / 2; object-fit: cover; }
.mission-photo-map img { max-height: 590px; }
.mission-photo-portrait { width: min(590px,100%); }
.content-governorates { margin: 0 clamp(34px, 6vw, 80px) 70px; padding: 34px; background: #fff; }
@media (max-width: 650px) { .region-content { font-size: 1.02rem; } .content-hero { min-height: 270px; padding-top: 70px; } .content-body { padding: 30px 22px; } .dedication { padding: 26px 20px; } .makkah-image-story { grid-template-columns: 1fr; grid-template-rows: 230px 240px 180px; padding: 6px; gap: 6px; } .makkah-photo-main,.makkah-photo-kaaba,.makkah-photo-night { grid-column: 1; } .topic-list { columns: 1; } .valley-gallery { grid-template-columns: 1fr; } .valley-gallery .valley-dam { grid-column: 1; } .history-illustrations { flex-direction: column; } .history-illustration { width: min(340px,100%); flex-basis: auto; } .history-illustration img { height: auto; max-height: 245px; } .mission-photo-map img { max-height: none; } .content-governorates { margin: 0 22px 40px; padding: 24px 18px; } }

/* Final cascade guard: every article gallery follows the same compact card rhythm. */
.region-content figure { max-width: 700px; margin-inline: auto; }
.region-content figure img { max-height: 420px; }
.region-content [class*="gallery"]:has(> figure) {
  width: min(880px, 100%) !important;
  margin: 20px auto 28px !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: 188px !important;
  gap: 10px !important;
  align-items: stretch !important;
}
.region-content [class*="gallery"]:has(> figure) > figure {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 100% !important;
  height: 188px !important;
  min-height: 0 !important;
  margin: 0 !important;
}
.region-content [class*="gallery"]:has(> figure) > figure img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  object-fit: cover !important;
}
@media (max-width: 760px) {
  .region-content [class*="gallery"]:has(> figure) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: 205px !important;
  }
  .region-content [class*="gallery"]:has(> figure) > figure { height: 205px !important; }
}
@media (max-width: 520px) {
  .region-content [class*="gallery"]:has(> figure) {
    width: min(100%, 430px) !important;
    grid-template-columns: 1fr !important;
    grid-auto-rows: 220px !important;
  }
  .region-content [class*="gallery"]:has(> figure) > figure { height: 220px !important; }
}

/* Unified heading typography across the platform and all article pages. */
:root {
  --heading-font: "Noto Kufi Arabic", sans-serif;
  --page-heading-size: clamp(2.6rem, 5vw, 4rem);
  --section-heading-size: clamp(1.8rem, 3vw, 2.3rem);
  --subheading-size: clamp(1.28rem, 2vw, 1.5rem);
}

.hero h1,
.story-head h2,
.place-manifesto > h2,
.region-tools h2,
.content-hero h1,
.content-section h2,
.makkah-sacred-divider h2,
.region-content [class*="divider"] h3 {
  font-family: var(--heading-font) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.content-hero h1 {
  font-size: var(--page-heading-size) !important;
  line-height: 1.35 !important;
}

.content-section h2,
.makkah-sacred-divider h2,
.region-content [class*="divider"] h3 {
  font-size: var(--section-heading-size) !important;
  line-height: 1.55 !important;
}

.content-section h3:not([class*="divider"] h3),
.dialog-body h3,
.governorate-body h3 {
  font-family: var(--heading-font) !important;
  font-size: var(--subheading-size) !important;
  line-height: 1.65 !important;
  font-weight: 700 !important;
}

@media (max-width: 520px) {
  :root {
    --page-heading-size: 2.25rem;
    --section-heading-size: 1.55rem;
    --subheading-size: 1.22rem;
  }
}

/* Asir opening page: dedication, foreword, and the approved 44-image sequence. */
.asir-content-body { max-width: 1080px; }
.asir-dedication,.asir-foreword,.jeddah-dedication,.jeddah-foreword { max-width: 900px; margin-inline: auto; }
.asir-dedication p,.asir-foreword p,.jeddah-dedication p,.jeddah-foreword p { text-align: justify; }
.asir-signature { margin-top: 34px !important; text-align: left !important; color: var(--green); font-family: var(--heading-font); font-weight: 700; }
.asir-opening-gallery { max-width: none; }
.asir-gallery-grid { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; grid-auto-rows: 220px !important; gap: 14px !important; margin-top: 28px !important; }
.asir-gallery-grid .asir-photo-card { width: 100% !important; height: 220px !important; margin: 0 !important; overflow: hidden; background: #e8e2d5; box-shadow: 0 10px 24px rgba(18,53,44,.12); }
.asir-gallery-grid .asir-photo-card img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; transition: transform .35s ease; }
.asir-gallery-grid .asir-photo-card:hover img { transform: scale(1.025); }
@media (max-width: 760px) { .asir-gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; } }
.jeddah-opening-gallery { max-width: none; }
.jeddah-gallery-grid { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; grid-auto-rows: 220px !important; gap: 14px !important; margin-top: 28px !important; }
.jeddah-gallery-grid .jeddah-photo-card { width: 100% !important; height: 220px !important; margin: 0 !important; overflow: hidden; background: #e8e2d5; box-shadow: 0 10px 24px rgba(18,53,44,.12); }
.jeddah-gallery-grid .jeddah-photo-card img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; transition: transform .35s ease; }
.jeddah-gallery-grid .jeddah-photo-card:hover img { transform: scale(1.025); }
@media (max-width: 760px) { .jeddah-gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; } }
@media (max-width: 520px) { .asir-gallery-grid,.jeddah-gallery-grid { grid-template-columns: 1fr !important; } .asir-dedication p,.asir-foreword p,.jeddah-dedication p,.jeddah-foreword p { text-align: right; } }

.madinah-content-body .content-section { max-width: 980px; }
.madinah-foreword p { max-width: 900px; margin-inline: auto; text-align: justify; }
.madinah-foreword h3 { max-width: 900px; margin: 28px auto 12px; color: #175c48; font-size: clamp(1.15rem,2vw,1.45rem); }
.madinah-landmarks { max-width: 820px; margin: 18px auto 26px; padding: 22px 48px 22px 28px; background: rgba(23,92,72,.07); border-right: 4px solid #b8954b; line-height: 2; font-weight: 700; }
.madinah-verse { max-width: 820px; margin: 28px auto; padding: 30px; text-align: center; color: #175c48; background: linear-gradient(135deg,rgba(184,149,75,.12),rgba(23,92,72,.06)); border: 1px solid rgba(184,149,75,.4); font-size: clamp(1.15rem,2.2vw,1.55rem); line-height: 2; }
.madinah-verse cite { display: block; margin-top: 10px; color: #765f2f; font-size: .85rem; font-style: normal; }
@media (max-width: 520px) { .madinah-foreword p { text-align: right; } .madinah-landmarks { padding-inline: 34px 20px; } }
.madinah-gallery-grid { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; grid-auto-rows: 230px !important; gap: 14px !important; margin-top: 28px !important; }
.madinah-gallery-grid .madinah-photo-card { width: 100% !important; height: 230px !important; margin: 0 !important; overflow: hidden; background: #e8e2d5; box-shadow: 0 10px 24px rgba(18,53,44,.12); }
.madinah-gallery-grid .madinah-photo-card img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; transition: transform .35s ease; }
.madinah-gallery-grid .madinah-photo-card:hover img { transform: scale(1.025); }
@media (max-width: 760px) { .madinah-gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; } }
@media (max-width: 520px) { .madinah-gallery-grid { grid-template-columns: 1fr !important; } }


/* ===== POST-v137 REGION CONTENT: Riyadh, Eastern, Qassim, Jazan, Tabuk, Northern Borders ===== */
.riyadh-hero { min-height: 470px; position: relative; overflow: hidden; background: linear-gradient(90deg,rgba(3,27,23,.96) 0%,rgba(3,44,35,.78) 55%,rgba(3,44,35,.22) 100%), url("riyadh/skyline.webp") center/cover; }
.riyadh-hero::after { content:""; position:absolute; inset:auto 0 0; height:5px; background:linear-gradient(90deg,transparent,var(--gold),transparent); }
.riyadh-hero > * { position:relative; z-index:1; }
.riyadh-hero .content-lead { max-width:650px; margin:24px 0 0; color:#e6eee9; font-family:"Noto Kufi Arabic",sans-serif; font-size:1rem; line-height:2; }
.riyadh-intro { padding-top:12px; }
.riyadh-wide-image,.riyadh-pair,.riyadh-gallery { max-width:980px; margin:0 auto 64px; }
.riyadh-wide-image,.riyadh-pair figure,.riyadh-gallery figure { position:relative; overflow:hidden; margin-top:0; background:#0b3c31; }
.riyadh-wide-image img { width:100%; height:480px; display:block; object-fit:cover; }
.riyadh-pair { display:grid; grid-template-columns:1.08fr .92fr; gap:18px; }
.riyadh-pair img { width:100%; height:360px; display:block; object-fit:cover; }
.riyadh-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.riyadh-gallery img { width:100%; height:290px; display:block; object-fit:cover; }
.riyadh-wide-image figcaption,.riyadh-pair figcaption,.riyadh-gallery figcaption { position:absolute; right:0; bottom:0; left:0; padding:34px 20px 16px; color:#fff; font-family:"Noto Kufi Arabic",sans-serif; font-size:.84rem; background:linear-gradient(transparent,rgba(2,31,24,.92)); }
.heritage-gallery figure:nth-child(2) img { object-position:center 30%; }
.riyadh-closing { padding:40px; border:1px solid rgba(200,164,91,.42); background:#f6efdf; }
@media (max-width:760px){.riyadh-hero{min-height:410px}.riyadh-wide-image img{height:300px}.riyadh-pair,.riyadh-gallery{grid-template-columns:1fr}.riyadh-pair img,.riyadh-gallery img{height:280px}.riyadh-closing{padding:25px 20px}}

.eastern-hero { min-height:500px; position:relative; overflow:hidden; background:linear-gradient(90deg,rgba(2,31,39,.97) 0%,rgba(3,55,63,.78) 53%,rgba(3,55,63,.18) 100%),url("eastern/coast.webp") center/cover; }
.eastern-hero::before { content:""; position:absolute; right:-8%; bottom:-130px; width:66%; height:280px; border:2px solid rgba(255,255,255,.18); border-radius:50%; box-shadow:0 -34px 0 rgba(255,255,255,.05),0 -68px 0 rgba(255,255,255,.035); transform:rotate(-7deg); }
.eastern-hero > * { position:relative; z-index:1; }
.eastern-hero .content-lead { max-width:700px; margin:24px 0 0; color:#dceff0; font-family:"Noto Kufi Arabic",sans-serif; font-size:1rem; line-height:2; }
.eastern-intro { padding-top:12px; }
.eastern-themes { max-width:980px; margin:0 auto 70px; display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(5,84,91,.16); border:1px solid rgba(5,84,91,.16); }
.eastern-themes article { padding:32px 28px; background:#f9f6ee; }
.eastern-themes span,.eastern-number { color:#bb9852; font-family:"Noto Kufi Arabic",sans-serif; font-size:.78rem; }
.eastern-themes h3 { margin:12px 0 8px; color:#07545b; font-size:2rem; }
.eastern-themes p { margin:0; color:#4b625e; font-size:1rem; line-height:1.85; }
.eastern-section { position:relative; padding-right:78px; }
.eastern-number { position:absolute; right:0; top:10px; width:50px; height:50px; display:grid; place-items:center; border:1px solid rgba(187,152,82,.55); border-radius:50%; }
.eastern-cities { padding:42px; background:#073f43; color:#fff; }
.eastern-cities h2 { color:#e8cf96; }
.eastern-cities p { color:#d5e5e2; }
.city-chips { display:flex; flex-wrap:wrap; gap:9px; margin:0 0 26px; }
.city-chips span { padding:8px 14px; border:1px solid rgba(255,255,255,.25); color:#fff; font-family:"Noto Kufi Arabic",sans-serif; font-size:.8rem; }
.eastern-closing { padding:44px; border:1px solid rgba(187,152,82,.45); background:linear-gradient(135deg,#f7f0df,#eef4ef); }
.eastern-wide-image,.eastern-pair,.eastern-gallery { max-width:980px; margin:0 auto 68px; }
.eastern-wide-image,.eastern-pair figure,.eastern-gallery figure { position:relative; overflow:hidden; margin-top:0; background:#063f46; }
.eastern-wide-image img { width:100%; height:470px; display:block; object-fit:cover; }
.eastern-pair { display:grid; grid-template-columns:1.12fr .88fr; gap:16px; }
.eastern-pair img { width:100%; height:350px; display:block; object-fit:cover; }
.eastern-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.eastern-gallery img { width:100%; height:290px; display:block; object-fit:cover; }
.eastern-wide-image figcaption,.eastern-pair figcaption,.eastern-gallery figcaption { position:absolute; right:0; bottom:0; left:0; padding:38px 20px 16px; color:#fff; font-family:"Noto Kufi Arabic",sans-serif; font-size:.84rem; background:linear-gradient(transparent,rgba(2,38,43,.94)); }
.oasis-gallery figure:nth-child(2) img { object-position:center 35%; }
.heritage-wide img { object-position:center 58%; }
@media(max-width:760px){.eastern-hero{min-height:420px}.eastern-themes,.eastern-pair,.eastern-gallery{grid-template-columns:1fr}.eastern-section{padding-right:0;padding-top:62px}.eastern-number{right:0;top:0}.eastern-cities,.eastern-closing{padding:27px 20px}.eastern-wide-image img{height:300px}.eastern-pair img,.eastern-gallery img{height:280px}}

.qassim-hero { min-height:500px; position:relative; overflow:hidden; background:linear-gradient(90deg,rgba(42,29,11,.96) 0%,rgba(76,52,15,.76) 54%,rgba(58,39,10,.16) 100%),url("qassim/dates.webp") center/cover; }
.qassim-hero::after { content:""; position:absolute; inset:auto 0 0; height:5px; background:linear-gradient(90deg,transparent,#d7aa46,transparent); }
.qassim-hero > * { position:relative; z-index:1; }
.qassim-hero .content-lead { max-width:680px; margin:24px 0 0; color:#f3e7ca; font-family:"Noto Kufi Arabic",sans-serif; font-size:1rem; line-height:2; }
.qassim-intro { padding-top:12px; }
.qassim-themes { max-width:980px; margin:0 auto 70px; display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(118,84,28,.18); border:1px solid rgba(118,84,28,.18); }
.qassim-themes article { padding:32px 28px; background:#fbf6e9; }
.qassim-themes span,.qassim-number { color:#b3842f; font-family:"Noto Kufi Arabic",sans-serif; font-size:.78rem; }
.qassim-themes h3 { margin:12px 0 8px; color:#6d4c17; font-size:2rem; }
.qassim-themes p { margin:0; color:#5d5a4e; font-size:1rem; line-height:1.85; }
.qassim-section { position:relative; padding-right:78px; }
.qassim-number { position:absolute; right:0; top:10px; width:50px; height:50px; display:grid; place-items:center; border:1px solid rgba(179,132,47,.58); border-radius:50%; }
.qassim-wide-image,.qassim-pair,.qassim-gallery { max-width:980px; margin:0 auto 68px; }
.qassim-wide-image,.qassim-pair figure,.qassim-gallery figure { position:relative; overflow:hidden; margin-top:0; background:#4a3516; }
.qassim-wide-image img { width:100%; height:470px; display:block; object-fit:cover; }
.qassim-pair { display:grid; grid-template-columns:1.08fr .92fr; gap:16px; }
.qassim-pair img { width:100%; height:350px; display:block; object-fit:cover; }
.qassim-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.qassim-gallery img { width:100%; height:290px; display:block; object-fit:cover; }
.qassim-wide-image figcaption,.qassim-pair figcaption,.qassim-gallery figcaption { position:absolute; right:0; bottom:0; left:0; padding:38px 20px 16px; color:#fff; font-family:"Noto Kufi Arabic",sans-serif; font-size:.84rem; background:linear-gradient(transparent,rgba(53,35,7,.94)); }
.agriculture-gallery figure:nth-child(2) img { object-position:center 62%; }
.qassim-cities { padding:42px; background:#5c4217; color:#fff; }
.qassim-cities h2 { color:#f0d38e; }
.qassim-closing { padding:44px; border:1px solid rgba(179,132,47,.48); background:linear-gradient(135deg,#fbf1d8,#f2eee1); }
@media(max-width:760px){.qassim-hero{min-height:420px}.qassim-themes,.qassim-pair,.qassim-gallery{grid-template-columns:1fr}.qassim-section{padding-right:0;padding-top:62px}.qassim-number{right:0;top:0}.qassim-cities,.qassim-closing{padding:27px 20px}.qassim-wide-image img{height:300px}.qassim-pair img,.qassim-gallery img{height:280px}}

.jazan-hero{min-height:510px;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(15,45,29,.97) 0%,rgba(28,78,48,.76) 54%,rgba(17,63,38,.14) 100%),url("jazan/mountains.webp") center/cover}
.jazan-hero::after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,transparent,#d9b452,transparent)}
.jazan-hero>*{position:relative;z-index:1}.jazan-hero .content-lead{max-width:720px;margin:24px 0 0;color:#edf4e9;font-family:"Noto Kufi Arabic",sans-serif;font-size:1rem;line-height:2}
.jazan-intro{padding-top:12px}.jazan-themes{max-width:980px;margin:0 auto 70px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(31,105,62,.18);border:1px solid rgba(31,105,62,.18)}
.jazan-themes article{padding:32px 28px;background:#f7f6e9}.jazan-themes span,.jazan-number{color:#b58b2c;font-family:"Noto Kufi Arabic",sans-serif;font-size:.78rem}.jazan-themes h3{margin:12px 0 8px;color:#1f683f;font-size:2rem}.jazan-themes p{margin:0;color:#506052;font-size:1rem;line-height:1.85}
.jazan-section{position:relative;padding-right:78px}.jazan-number{position:absolute;right:0;top:10px;width:50px;height:50px;display:grid;place-items:center;border:1px solid rgba(181,139,44,.58);border-radius:50%}
.jazan-wide-image,.jazan-pair,.jazan-gallery{max-width:980px;margin:0 auto 68px}.jazan-wide-image,.jazan-pair figure,.jazan-gallery figure{position:relative;overflow:hidden;margin-top:0;background:#184c31}.jazan-wide-image img{width:100%;height:470px;display:block;object-fit:cover}.jazan-pair{display:grid;grid-template-columns:1.08fr .92fr;gap:16px}.jazan-pair img{width:100%;height:350px;display:block;object-fit:cover}.jazan-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.jazan-gallery img{width:100%;height:290px;display:block;object-fit:cover}.jazan-wide-image figcaption,.jazan-pair figcaption,.jazan-gallery figcaption{position:absolute;right:0;bottom:0;left:0;padding:38px 20px 16px;color:#fff;font-family:"Noto Kufi Arabic",sans-serif;font-size:.84rem;background:linear-gradient(transparent,rgba(9,49,29,.94))}
.jazan-poetry{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:980px}.jazan-poetry h2{grid-column:1/-1}.jazan-poetry blockquote{margin:0;padding:30px;border-top:3px solid var(--gold);background:#fff;box-shadow:0 14px 40px rgba(17,76,44,.08)}.jazan-poetry blockquote p{color:#284e39;font-size:1.2rem;line-height:2}.jazan-poetry cite{display:block;margin-top:14px;color:#a77d26;font-style:normal;font-family:"Noto Kufi Arabic",sans-serif;font-size:.8rem}
.jazan-cities{padding:42px;background:#195637;color:#fff}.jazan-cities h2{color:#f0d58e}.jazan-closing{padding:44px;border:1px solid rgba(181,139,44,.48);background:linear-gradient(135deg,#f8efd8,#e9f3e9)}.crop-pair figure:first-child img{object-position:center 35%}
@media(max-width:760px){.jazan-hero{min-height:420px}.jazan-themes,.jazan-pair,.jazan-gallery,.jazan-poetry{grid-template-columns:1fr}.jazan-poetry h2{grid-column:auto}.jazan-section{padding-right:0;padding-top:62px}.jazan-number{right:0;top:0}.jazan-cities,.jazan-closing{padding:27px 20px}.jazan-wide-image img{height:300px}.jazan-pair img,.jazan-gallery img{height:280px}}


/* ===== TABUK REGION CONTENT ===== */
.tabuk-hero{min-height:520px;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(30,42,49,.96) 0%,rgba(78,56,35,.72) 55%,rgba(43,35,28,.13) 100%),url("tabuk/wadi.webp") center/cover}
.tabuk-hero::after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,transparent,#c99746,transparent)}
.tabuk-hero>*{position:relative;z-index:1}.tabuk-hero .content-lead{max-width:760px;margin:24px 0 0;color:#f3efe7;font-family:"Noto Kufi Arabic",sans-serif;font-size:1rem;line-height:2}
.tabuk-intro{padding-top:12px}.tabuk-themes{max-width:980px;margin:0 auto 70px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(82,94,96,.18);border:1px solid rgba(82,94,96,.18)}
.tabuk-themes article{padding:32px 28px;background:#f8f4ec}.tabuk-themes span,.tabuk-number{color:#b27c32;font-family:"Noto Kufi Arabic",sans-serif;font-size:.78rem}.tabuk-themes h3{margin:12px 0 8px;color:#384f50;font-size:2rem}.tabuk-themes p{margin:0;color:#566261;font-size:1rem;line-height:1.85}
.tabuk-section{position:relative;padding-right:78px}.tabuk-number{position:absolute;right:0;top:10px;width:50px;height:50px;display:grid;place-items:center;border:1px solid rgba(178,124,50,.58);border-radius:50%}
.tabuk-section p+p{margin-top:18px}.tabuk-wide-image,.tabuk-pair,.tabuk-gallery{max-width:980px;margin:0 auto 68px}.tabuk-wide-image,.tabuk-pair figure,.tabuk-gallery figure{position:relative;margin-top:0;overflow:hidden;background:#e9e3d8;box-shadow:0 16px 40px rgba(44,50,46,.12)}
.tabuk-wide-image img{display:block;width:100%;height:520px;object-fit:cover}.tabuk-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.tabuk-pair img{display:block;width:100%;height:360px;object-fit:cover}.tabuk-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tabuk-gallery img{display:block;width:100%;height:285px;object-fit:cover}
.tabuk-wide-image figcaption,.tabuk-pair figcaption,.tabuk-gallery figcaption{padding:13px 16px 14px;color:#4b5554;background:#fff;font-family:"Noto Kufi Arabic",sans-serif;font-size:.74rem;line-height:1.65}
.tabuk-cities,.tabuk-closing,.tabuk-archive-title{padding:34px;border:1px solid rgba(178,124,50,.22);background:#fff;box-shadow:0 18px 50px rgba(55,47,38,.07)}.tabuk-closing{border-right:4px solid #b27c32;background:linear-gradient(135deg,#fff,#f6efe4)}
.tabuk-archive-title{margin-bottom:24px}.tabuk-archive{margin-top:0}
@media(max-width:760px){.tabuk-themes{grid-template-columns:1fr}.tabuk-section{padding-right:0;padding-top:62px}.tabuk-number{right:0;top:0}.tabuk-pair,.tabuk-gallery{grid-template-columns:1fr}.tabuk-wide-image img,.tabuk-pair img,.tabuk-gallery img{height:300px}.tabuk-cities,.tabuk-closing,.tabuk-archive-title{padding:27px 20px}}

/* Northern Borders region */
.northern-hero{min-height:520px;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(30,31,27,.96) 0%,rgba(89,65,39,.76) 56%,rgba(55,38,22,.22) 100%),url("northern-borders/heritage-minaret.webp") center/cover}
.northern-hero::after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,transparent,#c99746,transparent)}
.northern-hero>*{position:relative;z-index:1}.northern-hero .content-lead{max-width:790px;margin:24px 0 0;color:#f3efe7;font-family:"Noto Kufi Arabic",sans-serif;font-size:1rem;line-height:2}
.northern-intro p+p{margin-top:18px}.northern-body .tabuk-section p+p{margin-top:18px}


/* Hail region */
.hail-hero{min-height:540px;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(29,31,28,.90) 0%,rgba(80,58,38,.60) 55%,rgba(48,33,24,.18) 100%),url("hail/656764558952.webp") center 55%/cover}
.hail-hero::after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,transparent,#c99746,transparent)}
.hail-hero>*{position:relative;z-index:1}.hail-hero .content-lead{max-width:820px;margin:24px 0 0;color:#f3efe7;font-family:"Noto Kufi Arabic",sans-serif;font-size:1rem;line-height:2}
.hail-intro p+p{margin-top:18px}.hail-body .tabuk-section h3{margin:4px 0 18px;color:#9c6b2b;font-family:"Noto Kufi Arabic",sans-serif;font-size:1rem;font-weight:600}.hail-archive-title{max-width:980px;margin:0 auto 34px;text-align:center}.hail-archive-title h2{margin:10px 0 12px}.hail-gallery{margin-bottom:52px}

/* Al-Baha region — v145 */
.baha-hero{background:radial-gradient(circle at 14% 18%,rgba(215,181,103,.30),transparent 28%),linear-gradient(135deg,rgba(8,54,42,.96),rgba(31,92,64,.90)),url("baha/highland-valley.webp") center/cover no-repeat;background-blend-mode:screen,multiply,normal}
.baha-intro p+p{margin-top:18px}.baha-body .tabuk-section p+p{margin-top:18px}.baha-gallery{grid-template-columns:repeat(2,1fr)}.baha-gallery img{height:360px}
@media(max-width:760px){.baha-gallery{grid-template-columns:1fr}.baha-gallery img{height:300px}}
