/* تعريف الخطوط */
@font-face {
  font-family: 'AlJazeera';
  src: url('../fonts/ArbFONTS-Al-Jazeera-Arabic-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'AlJazeera';
  src: url('../fonts/ArbFONTS-Al-Jazeera-Arabic-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'AlJazeera';
  src: url('../fonts/ArbFONTS-Al-Jazeera-Arabic-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
}


/* أساسيات */
*, *::before, *::after { box-sizing: border-box; }
html, body { height: 100%; margin: 0; font-family: 'AlJazeera', sans-serif; text-align: justify;}
:root{ --navH: 64px; }

/* Navbar */
.navbar{
  /* backdrop-filter: saturate(140%) blur(6px); */
  /* background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,0)) !important; */
  padding-block: .5rem;
  /* transition: background-color .25s ease, padding-block .25s ease, box-shadow .25s ease; */
}
.navbar.navbar-solid{
  background-color:#202F4B !important;
  padding-block: 1rem;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
}
.nav-link{ font-weight:500; }
.nav-link:hover, .nav-link.active{ text-decoration:underline; text-underline-offset:6px; }

/* Hero */
.hero{
  position:relative;
  min-height:100vh;
  width:100%;
  overflow:hidden;
}
.hero-video{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
}
.hero-overlay{
  position:absolute; inset:0;
  background:rgba(32,47,75,.6); /* #202F4B مع شفافية */
}
.hero-content{
  position:relative; z-index:2;
  min-height:calc(100vh - var(--navH));
  display:grid; place-items:center;
  color:#fff;
}
.hero-stack{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:.25rem;
}

/* العنوان باللون المطلوب + وزن جيد */
.hero-title{
  color:#f08f33;
  text-shadow:0 2px 10px rgba(0,0,0,.35);
}

/* السطر التمهيدي */
.hero-subtitle{
  color:#eef3ff;
  text-shadow:0 1px 6px rgba(0,0,0,.3);
  animation: fadeInUp .8s ease .2s both;
}

/* أنيميشن خفيف للنص */
@keyframes fadeInUp{
  from{ opacity:0; transform: translateY(8px); }
  to  { opacity:1; transform: translateY(0);   }
}

/* iOS تحسين */
@supports (-webkit-touch-callout: none){
  .hero-video{ transform: translateZ(0); }
}

/* --- About Section --- */
.about-section{
  position: relative;
  background: linear-gradient(180deg, rgba(32,47,75,.03), rgba(32,47,75,.06));
}

/* شارة عنوان صغيرة */
.eyebrow .bar{ width:12px; height:18px; background:#f08f33; border-radius:3px; }
.eyebrow .text{ color:#f08f33; font-weight:700; letter-spacing:.3px; }

/* عنوان وفقرات */
.section-title{ color:#fff; text-shadow:0 1px 8px rgba(0,0,0,.25); }
.about-text{ color:#eef3ff; text-shadow:0 1px 6px rgba(0,0,0,.2); line-height:1.9; }

/* وسام أعلى الصورة */
.about-media .badge-top{
  position:absolute; top:14px; right:14px; display:flex; gap:8px; align-items:center;
  background: rgba(240,143,51,.12); color:#fff; padding:8px 12px; border-radius:12px;
  border:1px solid rgba(240,143,51,.35); backdrop-filter: blur(2px);
}

/* بطاقات مصغرة */
.mini-card{
  display:flex; gap:10px; align-items:flex-start;
  padding:12px 14px; border-radius:14px;
  background: rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.mini-card:hover{ transform: translateY(-3px); box-shadow: 0 8px 22px rgba(0,0,0,.22); border-color: rgba(240,143,51,.35); }
.mini-card img{ flex:0 0 auto; }
.mini-title{ color:#fff; font-weight:700; }
.mini-text{ color:#cfd6ff; margin:0; font-size:.95rem; }

/* قائمة الخدمات */
.sv-title{ color:#f08f33; font-weight:800; margin-bottom:.25rem; }
.sv-list{ list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.sv-list li{ display:flex; gap:8px; align-items:center; color:#eef3ff; }
.sv-list img{ filter: drop-shadow(0 1px 2px rgba(0,0,0,.25)); }

/* المنهجية كخطوات */
.method .steps{ display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.method .step{
  display:flex; gap:8px; align-items:center; padding:8px 12px; border-radius:12px;
  background: rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08);
  color:#fff;
}
.method .chev{ color:#f08f33; font-weight:900; font-size:1.25rem; }

/* مسارات المجالات كبطاقات */
.tracks .track{
  display:flex; flex-direction:column; align-items:center; gap:8px;
  padding:14px 10px; border-radius:16px; background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08); height:100%;
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.tracks .track img{ width:40px; height:40px; }
.tracks .track span{ color:#fff; font-weight:600; }
.tracks .track:hover{ transform: translateY(-4px); border-color: rgba(240,143,51,.35); box-shadow: 0 10px 24px rgba(0,0,0,.22); }


.section-title{
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 1rem;
  text-align: right;
  color: #f08f33;
}

.accordion-item{
  /* background-color: #f08f33; */
  /* color: #fff; */
  cursor: pointer;
  padding: 1.5rem;
  border: none;
  text-align: right;
  outline: none;
  font-size: 1rem;
  transition: background-color 0.3s ease;
  padding: 0;
}
.accordion-header{
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0;
}

.accordion-button:not(.collapsed){
  background-color: #202F4B;
  color: #f08f33;
  font-weight: bold;
}

.card-title{
  color: #f08f33;
  font-weight: bold;
}
.card-text{
  color: #484849;
  line-height: 1.6;
}

/* زر رئيسي بلون الهوية */
.btn-brand{
  background-color:#202F4B;
  border:0;
  color:#fff;
}
.btn-brand:hover{ filter: brightness(1.05); }

/* تحسين بطاقة البرنامج */
.program-card .card-img-top{ object-fit:cover; height:210px; }
.program-card .badge{ font-weight:600; }

/* كروت الأسعار داخل المودال */
.price-card{
  background:#202F4B0d;
  border:1px solid rgba(32,47,75,.25);
  border-radius:14px;
  padding:14px;
}
.price-row{
  display:flex; justify-content:space-between; align-items:center;
  padding:8px 0; border-bottom:1px dashed rgba(0,0,0,.08);
  font-weight:600;
}
.price-row:last-child{ border-bottom:0; }
.price-old{ text-decoration: line-through; opacity:.65; }
.price-new{ color:#f08f33; font-size:1.25rem; }
.mini-heading{ color:#f08f33; font-weight:800; margin-bottom:.35rem; }

/* بطاقة البرنامج */
.program-card{
  border: 0;
  border-radius: 14px;
  overflow: hidden;
  transition: transform .28s ease, box-shadow .28s ease;
  background: #fff;
}
.program-card:hover{
  transform: translateY(-6px);
  box-shadow:
    0 16px 40px rgba(0,0,0,.12),
    0 12px 28px rgba(240,143,51,.18); /* ظل بلمسة برتقالية */
}

/* منطقة الصورة + التوهّج البرتقالي */
.program-card .card-media{
  position: relative;
  overflow: hidden;
  border-radius: 14px 14px 0 0;
}
.program-card .card-media img{
  display: block;
  width: 100%;
  height: 210px;
  object-fit: cover;
  transform: scale(1);
  transition: transform .55s ease, filter .35s ease;
}
/* طبقة توهج برتقالي خفيف فوق الصورة */
.program-card .card-media::after{
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg,
              rgba(240,143,51,.18) 0%,
              rgba(240,143,51,.06) 40%,
              rgba(240,143,51,0) 100%);
  mix-blend-mode: multiply;
  pointer-events: none;
  transition: opacity .4s ease;
  opacity: .85;
}
/* أنيميشن عند الهوفر */
.program-card:hover .card-media img{
  transform: scale(1.06);
}
.program-card:hover .card-media::after{
  opacity: 1;
}

/* شارات حضوري/أونلاين فوق الصورة (زاوية أعلى يمين – RTL) */
.media-badges{
  position: absolute;
  top: 12px; right: 12px; /* غيّرها إلى left لو تبيها يسار */
  display: flex; gap: 6px; flex-wrap: wrap;
  z-index: 2;
}
.badge-chip{
  font-weight: 700;
  border: 1px solid rgba(255,255,255,.6);
  color: #fff;
  backdrop-filter: blur(3px);
  box-shadow: 0 2px 8px rgba(0,0,0,.18);
}
/* ألوان الشارات */
.badge-inseat{ background: rgba(46, 174, 63, .85); }  /* حضوري */
.badge-online{ background: rgba(33, 114, 229, .85); } /* أونلاين */

/* تلطيف العناوين داخل الكارت */
.program-card .card-title{
  color: #f08f33;
  font-weight: 800;
  margin-bottom: .25rem;
}

/* احترام تفضيل تقليل الحركة */
@media (prefers-reduced-motion: reduce){
  .program-card,
  .program-card .card-media img{
    transition: none !important;
  }
}
/* تأثير عام قابل لإعادة الاستخدام لأي صورة (Glow + Hover Zoom) */
.media-glow{
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  transition: transform .28s ease, box-shadow .28s ease;
}
.media-glow > img{
  display: block;
  width: 100%;
  height: auto;            /* يحافظ على أبعاد الصورة */
  object-fit: cover;       /* لو كانت الصورة كبيرة سيقصّ الزائد بأناقة */
  transform: scale(1);
  transition: transform .55s ease, filter .35s ease;
}
/* طبقة توهّج برتقالي خفيف (نفس إحساس بطاقات البرامج) */
.media-glow::after{
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg,
              rgba(240,143,51,.18) 0%,
              rgba(240,143,51,.06) 40%,
              rgba(240,143,51,0) 100%);
  mix-blend-mode: multiply;
  pointer-events: none;
  transition: opacity .4s ease;
  opacity: .85;
}
/* أنيميشن عند الهوفر */
.media-glow:hover{
  transform: translateY(-4px);
  box-shadow:
    0 16px 40px rgba(0,0,0,.12),
    0 12px 28px rgba(240,143,51,.18);
}
.media-glow:hover > img{ transform: scale(1.06); }
.media-glow:hover::after{ opacity: 1; }

/* إن أردت نسبة أبعاد ثابتة للصورة (اختياري) */
/* .about-media{ aspect-ratio: 4 / 5; } */

/* احترام تفضيل تقليل الحركة */
@media (prefers-reduced-motion: reduce){
  .media-glow, .media-glow > img{ transition: none !important; }
}
/* قسم البرامج التدريبية */
.programs-section{ background: #fff; } /* غيّرها لو بغيت خلفية أخرى */

.section-head .section-title{
  text-align: center;      /* يغلب قاعدة section-title القديمة التي كانت يمين */
  color: #f08f33;
}

.section-subtitle{ color:#6c757d; }

/* زر تحت البطاقات */
.courses-cta{
  min-width: 260px;
  border-radius: 10px;
}

/* اجعل زر "استكشف برامجنا التدريبية" برتقالي فقط */
.btn-brand.courses-cta{
  background-color: #f08f33 !important;
  color: #fff !important;
  border: 0;
}
.btn-brand.courses-cta:hover{
  filter: brightness(1.05);
}
/* منهجيتنا التدريبية (Timeline RTL) */
.methodology-section{ background:#f8f9fa; }

.timeline{
  position: relative;
  padding-right: 2.25rem; /* مساحة للشريط والعُقد */
}
.timeline::before{
  content:"";
  position: absolute;
  top: 0; bottom: 0; right: 14px;
  width: 3px;
  background: linear-gradient(180deg,#f08f33 0%, #202F4B 100%);
  border-radius: 3px;
  opacity:.9;
}

.timeline-item{
  position: relative;
  display: flex;
  gap: 14px;
  margin-bottom: 22px;
}
.timeline-item:last-child{ margin-bottom: 0; }

/* عقدة الرقم */
.timeline-node{
  position: absolute;
  right: 0;
  width: 28px; height: 28px;
  display: grid; place-items:center;
  background:#f08f33;
  color:#fff; font-weight:800; font-size:.95rem;
  border: 3px solid #fff;
  border-radius: 50%;
  box-shadow: 0 4px 12px rgba(240,143,51,.35);
  transform: translateX(0) translateY(6px);
}

/* كارت كل خطوة */
.timeline-card.card{
  width: 100%;
  border: 1px solid rgba(32,47,75,.12);
  border-radius: 14px;
  padding: 16px 16px;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.timeline-card h5{ color:#202F4B; font-weight:800; }
.timeline-card p { color:#484849; line-height:1.8; }
.timeline-item:hover .timeline-card{
  transform: translateY(-3px);
  border-color: rgba(240,143,51,.35);
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
}

/* استجابة للمحمول: تباعد أكبر وتكبير الرقم */
@media (max-width: 991.98px){
  .timeline{ padding-right: 2.5rem; }
  .timeline-node{ width: 30px; height: 30px; font-size:1rem; }
}
/* شركاؤنا – صف واحد متحرك */
.partners-section{ background: #fff; }

.partners-marquee.one-row{
  --tile-size: 140px;        /* حجم المربعات */
  --gap: 16px;               /* المسافة بين الشعارات */
  --speed: 34s;              /* سرعة الحركة (كلما زادت كان أبطأ) */
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to left, transparent, #000 8%, #000 92%, transparent);
          mask-image: linear-gradient(to left, transparent, #000 8%, #000 92%, transparent);
}

.partners-marquee.one-row .track{
  display: flex;
  gap: var(--gap);
  align-items: center;
  width: max-content;                /* يسمح بالتمرير */
  animation: marquee var(--speed) linear infinite;
  padding-block: 6px;
}

/* البلاطة المربعة للشعار */
.partner-tile{
  width: var(--tile-size);
  aspect-ratio: 1 / 1;
  display: grid; place-items: center;
  background: #fff;
  border: 1px solid rgba(32,47,75,.12);
  border-radius: 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,.05);
  padding: 10px;
}
.partner-tile img{
  max-width: 80%;
  max-height: 80%;
  filter: grayscale(100%) contrast(1.05);
  opacity: .9;
  transition: transform .25s ease, filter .25s ease, opacity .25s ease;
}
.partner-tile:hover img{
  filter: grayscale(0%);
  opacity: 1;
  transform: scale(1.05);
}

/* الحركة المستمرة (بسبب تكرار المحتوى ستسحب 50% بالضبط) */
@keyframes marquee{
  from{ transform: translateX(0); }
  to  { transform: translateX(-50%); }
}

/* إيقاف الحركة عند الوقوف فوق السكشن + مراعاة تفضيل تقليل الحركة */
.partners-section:hover .track{ animation-play-state: paused; }
@media (prefers-reduced-motion: reduce){
  .partners-marquee.one-row .track{ animation: none !important; }
}

/* أحجام أصغر على الجوال */
@media (max-width: 575.98px){
  .partners-marquee.one-row{ --tile-size: 110px; --gap: 12px; --speed: 28s; }
}
/* صف واحد متحرك */
.partners-marquee.one-row{
  --tile-size: 140px;
  --gap: 16px;
  /* سيتم تعيين --duration من الجافاسكربت حسب العرض */
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to left, transparent, #000 8%, #000 92%, transparent);
          mask-image: linear-gradient(to left, transparent, #000 8%, #000 92%, transparent);
}

.partners-marquee.one-row .track{
  display: inline-flex;            /* inline-flex + width:max-content يمنحنا عرضًا حقيقيًا للمحتوى */
  gap: var(--gap);
  align-items: center;
  width: max-content;
  will-change: transform;
  animation: marquee var(--duration, 34s) linear infinite;
  padding-block: 6px;
}

/* البلاطات كما هي لديك */
.partner-tile{
  width: var(--tile-size);
  aspect-ratio: 1 / 1;
  display: grid; place-items: center;
  background: #fff;
  border: 1px solid rgba(32,47,75,.12);
  border-radius: 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,.05);
  padding: 10px;
}
.partner-tile img{
  max-width: 80%;
  max-height: 80%;
  filter: grayscale(100%) contrast(1.05);
  opacity: .9;
  transition: transform .25s ease, filter .25s ease, opacity .25s ease;
}
.partner-tile:hover img{
  filter: grayscale(0%);
  opacity: 1;
  transform: scale(1.05);
}

/* حركة من 0% إلى -50% (نصف العرض = نسخة واحدة) */
@keyframes marquee{
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* إيقاف الحركة عند الوقوف + احترام تقليل الحركة */
.partners-section:hover .track{ animation-play-state: paused; }
@media (prefers-reduced-motion: reduce){
  .partners-marquee.one-row .track{ animation: none !important; }
}
/* سكشن الشركاء – سلايدر متصل بلا فجوات */
.logos-marquee{
  overflow: hidden;
  /* قصّ الحواف بشكل ناعم */
  -webkit-mask-image: linear-gradient(to left, transparent, #000 6%, #000 94%, transparent);
          mask-image: linear-gradient(to left, transparent, #000 6%, #000 94%, transparent);
}

.logos-track{
  display: flex;            /* يحوي تسلسلين متجاورين */
  width: max-content;       /* عرض على قد المحتوى */
  will-change: transform;
  animation: logos-scroll 28s linear infinite;
}

.logos-seq{
  display: flex;
  flex-wrap: nowrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* مربع الشعار */
.logo{
  flex: 0 0 auto;
  width: 140px; height: 140px;         /* مربّع */
  margin-left: 16px;                   /* المسافة بين المربعات */
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(32,47,75,.12);
  box-shadow: 0 6px 18px rgba(0,0,0,.05);
  display: grid; place-items: center;
  padding: 10px;
}
.logo img{
  display: block;
  max-width: 80%;
  max-height: 80%;
  object-fit: contain;
  filter: grayscale(100%) contrast(1.05);
  opacity: .9;
  transition: transform .25s ease, filter .25s ease, opacity .25s ease;
}
.logo:hover img{
  filter: grayscale(0%);
  opacity: 1;
  transform: scale(1.05);
}

/* الحركة السلسة: من بداية التتابع الأول إلى نهايته تمامًا */
@keyframes logos-scroll{
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(-50%,0,0); } /* نصف العرض = تتابع واحد */
}

/* إيقاف الحركة عند المرور + مراعاة تقليل الحركة */
.partners-section:hover .logos-track{ animation-play-state: paused; }
@media (prefers-reduced-motion: reduce){
  .logos-track{ animation: none !important; }
}

/* أحجام أصغر على الجوال */
@media (max-width: 575.98px){
  .logo{ width: 110px; height: 110px; margin-left: 12px; }
}
/* ===== Footer ===== */
.site-footer{
  background: #202F4B;
  color: #eef3ff;
}
.site-footer .footer-title{
  color: #f08f33;
  font-weight: 800;
  margin-bottom: .75rem;
}
.site-footer .footer-text{
  color: #cfd6ff;
  line-height: 1.9;
  margin: 0;
}

/* روابط */
.footer-links a{
  color: #eef3ff;
  text-decoration: none;
  display: inline-block;
  padding: .25rem 0;
  opacity: .9;
  transition: color .2s ease, opacity .2s ease, transform .15s ease;
}
.footer-links a:hover{
  color: #fff;
  opacity: 1;
  transform: translateY(-1px);
}

/* تواصل */
.footer-contact li{
  padding: .25rem 0;
  color: #e8ecff;
  opacity: .95;
}
.footer-contact i{
  color: #f08f33;
  margin-left: .5rem;
}

/* سوشال */
.footer-social .btn-icon{
  width: 40px; height: 40px;
  border-radius: 50%;
  display: grid; place-items: center;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.14);
  color: #fff;
  transition: transform .15s ease, background-color .2s ease, border-color .2s ease;
}
.footer-social .btn-icon:hover{
  transform: translateY(-2px);
  background: rgba(240,143,51,.15);
  border-color: rgba(240,143,51,.45);
}

/* النشرة */
.footer-newsletter .form-control{
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  color: #fff;
}
.footer-newsletter .form-control::placeholder{ color: #cfd6ff; }
.footer-newsletter .form-control:focus{
  box-shadow: 0 0 0 .25rem rgba(240,143,51,.2);
  border-color: rgba(240,143,51,.65);
}
.footer-sep{
  border-color: rgba(255,255,255,.12);
}
/* شريط التواصل السريع */
.contact-cta{
  background: linear-gradient(90deg, #202F4B 0%, #273b5d 60%, #f08f33 160%);
  color: #fff;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.contact-cta .cta-title{
  color: #fff; font-weight: 800; letter-spacing:.2px;
}
.contact-cta .btn{ font-weight:700; }
.contact-cta .btn-outline-light:hover{
  background: rgba(255,255,255,.15);
}

/* سكشن التواصل */
.contact-section .text-brand{ color:#f08f33; }
.contact-list li{
  padding: .35rem 0;
  color:#484849;
}
.contact-list i{
  color:#f08f33; margin-left:.5rem;
}

/* موحَّد مع مدخلات النشرة في الفوتر */
.contact-section .form-control, .contact-section .form-select{
  background: #fff;
  border: 1px solid rgba(32,47,75,.25);
}
.contact-section .form-control:focus, .contact-section .form-select:focus{
  border-color: rgba(240,143,51,.65);
  box-shadow: 0 0 0 .25rem rgba(240,143,51,.18);
}
/* روابط الهيدر برتقالية + حالة Active/Hover موحّدة */
.navbar .nav-link,
.offcanvas .nav-link{
  color: #f08f33 !important;
}
.navbar .nav-link.active,
.offcanvas .nav-link.active{
  color: #f08f33 !important;
  text-decoration: underline;
  text-underline-offset: 6px;
}
.navbar .nav-link:hover,
.offcanvas .nav-link:hover{
  color: #f08f33 !important;
}
html{ scroll-behavior: smooth; }
section[id]{ scroll-margin-top: calc(var(--navH) + 16px); }
/* خدماتنا التدريبية */
.services-section{ background:#fff; }
.services-section .section-title{ text-align:center; color:#f08f33; }

.service-card{
  border: 1px solid rgba(32,47,75,.12);
  border-radius: 14px;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.service-card .sv-icon{
  width:56px; height:56px; border-radius:14px;
  display:grid; place-items:center;
  background: rgba(240,143,51,.12);
  color:#f08f33; font-size:1.4rem;
}
.service-card .card-title{
  color:#202F4B; font-weight:800; margin-bottom:.25rem;
}
.service-card .card-text{ color:#484849; }
.service-card:hover{
  transform: translateY(-4px);
  border-color: rgba(240,143,51,.35);
  box-shadow: 0 12px 28px rgba(240,143,51,.18), 0 10px 24px rgba(0,0,0,.08);
}
/* ===== Programs page ===== */

/* هيرو داخلي */
.page-hero{
  padding-top: calc(var(--navH) + 64px);
  padding-bottom: 48px;
  background:
    linear-gradient(180deg, rgba(32,47,75,.75), rgba(32,47,75,.55)),
    url('../images/bg-pattern.png'); /* اختياري: نمط خفيف */
  background-size: cover;
  color: #fff;
  text-align: center;
}
.page-hero .hero-title{ color:#f08f33; } /* نفس الهوية */

/* شريط فلاتر */
.programs-filters .filter-bar .card-body{ padding: 16px; }
.filter-chip, .mode-chip{
  border:1px solid rgba(32,47,75,.2);
  background:#fff;
  color:#202F4B;
  border-radius: 999px;
  padding:.4rem .8rem;
  font-weight:700;
  cursor:pointer;
  transition: background .2s ease, color .2s ease, border-color .2s ease, transform .15s ease;
}
.filter-chip.active,
.mode-chip.active{
  background:#f08f33;
  color:#fff;
  border-color: rgba(240,143,51,.8);
  box-shadow: 0 8px 18px rgba(240,143,51,.18);
  transform: translateY(-1px);
}

/* عدّاد النتائج */
#resultsCount b{ color:#f08f33; }

/* هيرو داخلي موحّد */
.page-hero{
  padding-top: calc(var(--navH) + 64px);
  padding-bottom: 48px;
  background: linear-gradient(180deg, rgba(32,47,75,.75), rgba(32,47,75,.55));
  color: #fff;
  text-align: center;
}
.page-hero .hero-title{ color:#f08f33; }

/* نمط بسيط للفقرات داخل صفحات التفاصيل */
.mini-heading{ color:#f08f33; font-weight:800; margin-bottom:.5rem; }

/* === Legal pages (Privacy & Terms) === */
.legal-card{
  border-radius: 16px;
  background: #fff;
}
.legal-heading{
  color:#202F4B;
  font-weight:800;
  margin-top:1.25rem;
  margin-bottom:.5rem;
}
.legal-card p,
.legal-card li{
  color:#484849;
  line-height:1.9;
}
.legal-card ul{
  padding-inline-start: 1.25rem;
  margin-bottom: 1rem;
}
.bi::before{
  vertical-align: middle;}

/* صور بديلة للبرامج */
.placeholder-image {
  border-radius: 14px;
  transition: transform .25s ease, box-shadow .25s ease;
}

.placeholder-image:hover {
  transform: scale(1.02);
  box-shadow: 0 8px 25px rgba(240,143,51,.3);
}

/* بطاقات الشركاء */
.partner-card {
  border: 1px solid rgba(32,47,75,.12);
  border-radius: 14px;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  background: #fff;
}

.partner-card:hover {
  transform: translateY(-4px);
  border-color: rgba(240,143,51,.35);
  box-shadow: 0 12px 28px rgba(240,143,51,.18), 0 10px 24px rgba(0,0,0,.08);
}

.partner-name {
  color: #202F4B;
  font-weight: 800;
  margin-bottom: .5rem;
}

/* تحسينات إضافية للصفحات القانونية */
.legal-card {
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 20px rgba(0,0,0,.08);
}

.legal-heading {
  color: #202F4B;
  font-weight: 800;
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #f08f33;
  position: relative;
}

.legal-heading:first-child {
  margin-top: 0;
}

.legal-card p,
.legal-card li {
  color: #484849;
  line-height: 1.8;
  margin-bottom: 1rem;
}

.legal-card ul {
  padding-inline-start: 1.5rem;
  margin-bottom: 1.5rem;
}

.legal-card li {
  margin-bottom: 0.5rem;
  position: relative;
}

.legal-card li::marker {
  color: #f08f33;
  font-weight: bold;
}

/* شعارات الشركاء البديلة */
.placeholder-logo {
  width: 120px;
  height: 80px;
  background: #f8f9fa;
  border: 2px dashed #dee2e6;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.placeholder-logo:hover {
  background: #e9ecef;
  border-color: #adb5bd;
}

/* تحسين شعارات الشركاء */
.logos-marquee .logo img {
  max-width: 120px;
  max-height: 80px;
  object-fit: contain;
  transition: transform 0.3s ease;
}

.logos-marquee .logo img:hover {
  transform: scale(1.05);
}

/* تحسينات للعناوين الفرعية */
.legal-card h3 {
  color: #202F4B;
  font-weight: 700;
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
}

/* تحسينات للروابط */
.legal-card a {
  color: #f08f33;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}

.legal-card a:hover {
  color: #202F4B;
  text-decoration: underline;
}