/* =========================================================
   Al Jamia Alumni — Color Palette
   NOTE: I could not read exact hex codes off the live
   aljamia.net stylesheet from here, so this palette is a close
   match based on their visual branding (deep Islamic green +
   gold accent, used by the parent institution). Open your
   browser's DevTools on aljamia.net and pick the exact hex
   values, then just edit the variables below — every color
   on this slider/news section pulls from these variables.
   ========================================================= */
:root{
  --aaf-primary:      #822439;   /* exact wine/maroon sampled from aljamia.net - headings, buttons, badges */
  --aaf-primary-dark: #5B1927;   /* darker maroon - overlays, hover */
  --aaf-accent:       #D4A94A;   /* warm gold - buttons, active dots, borders */
  --aaf-accent-soft:  #FADDA0;   /* exact soft cream-gold sampled from aljamia.net - stat numbers */
  --aaf-bg-light:     #FBF9F6;   /* warm off-white background */
  --aaf-text-dark:    #241016;
  --aaf-text-light:   #ffffff;
}

/* ---------- Slider ---------- */
.aaf-slider{
  position:relative;
  width:100%;
  height:min(60vh, 520px);
  min-height:320px;
  overflow:hidden;
  background:var(--aaf-primary-dark);
}
.aaf-slider-track{ position:relative; width:100%; height:100%; }
.aaf-slide{
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  opacity:0; transition:opacity .8s ease-in-out;
  z-index:1;
}
.aaf-slide.active{ opacity:1; z-index:2; }
.aaf-slide-overlay{
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(7,61,39,.85) 0%, rgba(7,61,39,.35) 55%, rgba(7,61,39,.1) 100%);
  display:flex; align-items:center;
}
.aaf-slide-content{
  color:var(--aaf-text-light);
  max-width:640px;
  padding:0 6vw;
}
.aaf-slide-content h2{
  font-size:clamp(24px, 4vw, 44px);
  margin:0 0 12px;
  color:var(--aaf-text-light);
  line-height:1.15;
}
.aaf-slide-content p{
  font-size:clamp(14px, 1.6vw, 18px);
  margin:0 0 20px;
  opacity:.95;
}
.aaf-slide-btn{
  display:inline-block;
  background:var(--aaf-accent);
  color:var(--aaf-text-dark);
  font-weight:600;
  padding:10px 24px;
  border-radius:4px;
  text-decoration:none;
  transition:background .2s;
}
.aaf-slide-btn:hover{ background:#dfb247; color:var(--aaf-text-dark); }

.aaf-arrow{
  position:absolute; top:50%; transform:translateY(-50%);
  z-index:5; background:rgba(0,0,0,.35); color:#fff; border:none;
  width:42px; height:42px; border-radius:50%; cursor:pointer; font-size:16px;
}
.aaf-arrow:hover{ background:var(--aaf-accent); color:var(--aaf-text-dark); }
.aaf-prev{ left:16px; } .aaf-next{ right:16px; }

.aaf-dots{
  position:absolute; bottom:16px; left:0; right:0;
  display:flex; justify-content:center; gap:8px; z-index:5;
}
.aaf-dot{
  width:10px; height:10px; border-radius:50%;
  background:rgba(255,255,255,.5); cursor:pointer; transition:background .2s;
}
.aaf-dot.active{ background:var(--aaf-accent); }

/* ---------- Stats strip ---------- */
.aaf-stats{
  display:flex; flex-wrap:wrap; justify-content:center; gap:32px;
  background:var(--aaf-primary); padding:32px 16px; text-align:center;
}
.aaf-stat{ color:var(--aaf-text-light); min-width:110px; }
.aaf-stat-num{ display:block; font-size:clamp(22px,3vw,34px); font-weight:700; color:var(--aaf-accent-soft); }
.aaf-stat-label{ display:block; font-size:13px; opacity:.9; margin-top:4px; }

/* ---------- News & Events grid ---------- */
.aaf-news-grid{
  display:grid; gap:28px;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  padding:24px 0;
}
.aaf-news-card{
  display:block; text-decoration:none; color:inherit;
  background:#fff; border:none; border-radius:18px; overflow:hidden;
  box-shadow:0 8px 24px rgba(58,16,25,.07);
  transition:box-shadow .25s ease, transform .25s ease;
}
.aaf-news-card:hover{ box-shadow:0 18px 40px rgba(58,16,25,.14); transform:translateY(-4px); }
.aaf-news-thumb{
  height:170px; background-size:cover; background-position:center;
  background-color:var(--aaf-bg-light);
}
.aaf-news-body{ padding:24px; }
.aaf-badge{
  display:inline-block; font-size:11px; font-weight:700; letter-spacing:.03em;
  text-transform:uppercase; padding:5px 15px; border-radius:999px; margin-bottom:14px;
  background:var(--aaf-bg-light); color:var(--aaf-primary);
}
.aaf-badge-event{ background:var(--aaf-accent); color:var(--aaf-text-dark); }
.aaf-badge-news{ background:var(--aaf-primary); color:#fff; }
.aaf-news-body h3{ margin:0 0 8px; font-size:18px; color:var(--aaf-text-dark); line-height:1.3; }
.aaf-news-meta{ font-size:13px; color:var(--aaf-primary); margin:0 0 8px; }
.aaf-news-excerpt{ font-size:14px; color:#555; margin:0; line-height:1.5; }

@media (max-width:600px){
  .aaf-arrow{ width:34px; height:34px; }
}
