/* Typography */
html, body {
  font-family: "Tajawal", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.fw-extrabold { font-weight: 800; }

/* Utilities */
.object-fit-cover { object-fit: cover; }

/* Hero */
.hero-section {
  background: linear-gradient(180deg, #f8fff8 0%, #ffffff 100%);
}

.hero-jar {
  height: 320px;
  border-radius: 24px;
  background:
    radial-gradient(120px 160px at 60% 40%, rgba(25,135,84,.12), transparent 60%),
    radial-gradient(140px 180px at 40% 60%, rgba(25,135,84,.08), transparent 60%),
    linear-gradient(135deg, #e9f7ef 0%, #ffffff 60%);
  border: 1px solid rgba(25,135,84,.15);
}

/* Feature card */
.feature-card:hover {
  box-shadow: 0 0.5rem 1.25rem rgba(25,135,84,.08);
  transition: box-shadow .2s ease, transform .2s ease;
  transform: translateY(-2px);
}

/* Footer */
.footer a:hover { color: #fff !important; }

/* Buttons */
.btn-success { box-shadow: 0 0.25rem 0.75rem rgba(25,135,84,.25); }
.btn-outline-success:hover { box-shadow: 0 0.25rem 0.75rem rgba(25,135,84,.15); }

/* Reveal on scroll */
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.reveal.show { opacity: 1; transform: none; }

/* Floating buttons */
.floating-actions {
  position: fixed;
  inset-inline-start: 16px;
  bottom: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 1040;
}
.floating-actions .btn-circle {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0.25rem 0.75rem rgba(0,0,0,.2);
}
.btn-whatsapp { background-color: #25D366; color: #fff; }
.btn-to-top { background-color: #198754; color: #fff; display: none; }
.btn-to-top.show { display: inline-flex; }


/* ================================= 
   أنماط الأقسام الجديدة المضافة
==================================== */

/* قسم معرض الصور */
.gallery-item {
  overflow: hidden; /* لإخفاء أي جزء من الصورة يتجاوز الإطار عند التكبير */
  border-radius: 0.75rem; /* لجعل الحواف دائرية */
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); /* ظل خفيف */
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* لتنعيم حركة الظل والتكبير */
}

.gallery-item:hover {
  transform: translateY(-5px); /* رفع العنصر للأعلى قليلاً عند المرور عليه */
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); /* زيادة الظل لإعطاء عمق */
}

.gallery-item img {
  transition: transform 0.4s ease; /* تنعيم حركة تكبير الصورة */
}

.gallery-item:hover img {
  transform: scale(1.05); /* تكبير الصورة قليلاً عند المرور فوق الإطار */
}


/* قسم فريق العمل */
.team-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* تنعيم الحركة والظل */
  border: none; /* إزالة الحدود الافتراضية للبطاقة */
}

.team-card:hover {
  transform: translateY(-8px); /* رفع البطاقة للأعلى بشكل ملحوظ */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12); /* إضافة ظل بارز */
}

.team-card .card-title {
  color: #198754; /* لون اسم العضو ليتناسب مع هوية الموقع */
}

/* Timeline */
.timeline {
  position: relative;
  display: grid;
  gap: 1.5rem;
  margin-inline: auto;
  max-width: 780px;
}

.timeline::before {
  content: '';
  position: absolute;
  inset-inline-start: 50%;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(180deg, rgba(25,135,84,0.15), rgba(25,135,84,0.6));
  transform: translateX(-50%);
}

.timeline-item {
  position: relative;
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}

.timeline-item:nth-child(even) {
  flex-direction: row-reverse;
  text-align: end;
}

.timeline-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #198754;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  z-index: 1;
}

.timeline-content {
  background: #fff;
  border: 1px solid rgba(25,135,84,.08);
  border-radius: 16px;
  padding: 1rem 1.25rem;
  box-shadow: 0 10px 30px rgba(25,135,84,.06);
  flex: 1;
}

@media (max-width: 767px) {
  .timeline::before { inset-inline-start: 24px; transform: none; }
  .timeline-item,
  .timeline-item:nth-child(even) {
    flex-direction: row;
    text-align: inherit;
  }
  .timeline-icon { margin-inline-start: -4px; }
}

/* Certificates */
.certificate-card {
  transition: transform .2s ease, box-shadow .2s ease;
}

.certificate-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(25,135,84,.12);
}

.certificate-icon {
  display: inline-flex;
  width: 64px;
  height: 64px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(25,135,84,.12);
}

/* Video frame */
.video-frame video {
  object-fit: cover;
}

/* Timeline compact adjustments */
.timeline-compact::before {
  inset-inline-start: 24px;
  transform: none;
}

.timeline-compact .timeline-item,
.timeline-compact .timeline-item:nth-child(even) {
  flex-direction: row;
  text-align: inherit;
}

.timeline-compact .timeline-content {
  padding: 1rem 1.5rem;
}

.timeline-compact .timeline-icon {
  margin-inline-end: 12px;
}

