/* =========================
   Base / Variables / Resets
   ========================= */
   :root{
    --nuct-orange:#d36a2f;
    --nuct-teal:#0e6f73;
    --footer-bg:#1c1f21;
  }
  
  *,
  *::before,
  *::after{ box-sizing: border-box; }
  
  html, body{
    max-width:100%;
    overflow-x:hidden;         /* منع التمرير الأفقي */
  }
  
  body{
    background:#fff;
    color:#222;
    line-height:1.6;
  }
  
  img, video{
    display:block;
    max-width:100%;
    height:auto;
  }
  
  /* =================
     Topbar / Header
     ================= */
  .topbar{
    background:var(--nuct-orange);
    padding:.55rem 0;
    color:#fff;
  }
  .topbar .topbar-link{
    color:#fff;
    text-decoration:none;
  }
  .topbar .topbar-link:hover{ opacity:.9; }
  .topbar .sep{ opacity:.5; }
  
  .main-header .navbar .nav-link{ font-weight:600; }
  .main-header .nav-link .plus{
    font-weight:700;
    margin-inline-start:.25rem; /* يعمل كـ margin-left في LTR و margin-right في RTL */
  }
  
  /* Social squares in header */
  .social-square{
    width:38px; height:38px;
    display:grid; place-items:center;
    text-decoration:none; border-radius:.25rem;
    color:#fff;
  }
  .bg-nuct-orange{ background:var(--nuct-orange)!important; }
  .bg-nuct-teal{ background:var(--nuct-teal)!important; }
  
  /* Buttons */
  .btn-nuct-teal{
    background:var(--nuct-teal);
    border-color:var(--nuct-teal);
    color:#fff;
  }
  .btn-nuct-teal:hover{ filter:brightness(0.95); }
  
  /* Offcanvas width (mobile) */
  @media (max-width: 991.98px){
    .offcanvas{ width:85% !important; }
  }


  /* Fix logo size in navbar */
.navbar-brand img{
  height:56px;       /* اختاري المقاس المناسب لك (48/56/60) */
  width:auto;
  max-width:none;    /* يلغي max-width:100% العامة حتى ما يكبر بعرض الكونتينر */
}

@media (max-width: 575.98px){
  .navbar-brand img{ height:40px; }
}

  
  /* =========
     Footer
     ========= */
  .site-footer{
    background:var(--footer-bg);
    color:#fff;
  }
  .site-footer .footer-link{
    color:#cfd3d6;
    text-decoration:none;
    display:block;
    padding:.25rem 0;
  }
  .site-footer .footer-link:hover{ color:#fff; }
  
  .site-footer .social-circle{
    width:40px; height:40px; border-radius:999px;
    display:grid; place-items:center;
    background:#2a2e31; color:#fff; text-decoration:none;
  }
  .site-footer .social-circle:hover{ background:#353a3d; }
  
  /* =========================
     HERO (Full screen section)
     ========================= */
  .hero-video{
    position:relative;
    height:100vh;              /* يغطي ارتفاع الشاشة */
    width:100%;                /* بدون 100vw لتجنّب التمرير الأفقي */
    margin:0;
    overflow:hidden;
    color:#fff;
  }
  
  /* دعم عرض الشاشة الثابت على الجوالات الحديثة */
  @supports (height: 100svh){
    .hero-video{ height:100svh; }
  }
  
  .hero-media{ position:absolute; inset:0; }
  .hero-video-el{
    position:absolute; inset:0;
    width:100%; height:100%;
    object-fit:cover; object-position:center;
  }
  
  /* تغميق خفيف لزيادة التباين مع النص */
  .hero-overlay{
    position:absolute; inset:0; pointer-events:none;
    background:linear-gradient(
      to bottom,
      rgba(0,0,0,.30) 0%,
      rgba(0,0,0,.35) 40%,
      rgba(0,0,0,.55) 100%
    );
  }
  
  /* عنوان الهيرو */
  .hero-title{
    line-height:1.15;
    text-shadow:0 2px 18px rgba(0,0,0,.35);
    color:#fff;
  }
  
  /* روابط التخصصات (نص فقط + زر صغير) */
  .hero-links{
    display:flex;
    flex-direction:column;
    gap:1rem;
    margin:0; padding:0;
    list-style:none;
  }
  .hero-link{
    display:flex; align-items:center; justify-content:space-between;
    gap:1rem;
    text-decoration:none; color:#fff;
    padding:.75rem 0;
    border-bottom:1px solid rgba(255,255,255,.25);
    transition:border-color .2s, transform .2s;
    text-align:start;         /* يتبع RTL/LTR تلقائياً */
  }
  .hero-link-text{ font-weight:700; }
  .hero-link-cta{
    border:1.5px solid var(--nuct-orange);
    padding:.25rem .6rem; border-radius:.25rem;
    font-weight:600; font-size:.9rem;
    color:var(--nuct-orange); background:transparent;
    white-space:nowrap;
  }
  .hero-link:hover{ border-color:#fff; transform:translateY(-1px); }
  .hero-link:hover .hero-link-cta{ background:var(--nuct-orange); color:#fff; }
  
  /* ===========
     Responsive
     =========== */
  @media (max-width: 991.98px){
    .hero-title{
      font-size:clamp(1.8rem, 4.5vw, 2.5rem);
    }
  }
  @media (max-width: 575.98px){
    .hero-video{ height:88vh; }     /* مساحة أقل على الموبايل */
    .hero-link-text{ font-weight:600; }
  }
/* ===== About Section ===== */
.about-section .section-title{
  font-weight:800;
  color:#1f2d2e;
}

.about-text{
  font-size:1.05rem;
  line-height:1.9;
  color:#444;
}

/* صور متداخلة + بادج */
.about-photos{
  position:relative;
  width:min(560px, 100%);
  margin-inline-start:auto;          /* يدفع الكتلة نحو الطرف inline-end (يمين بالعربي/اليسار بالإنجليزي) */
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:clamp(12px, 2vw, 20px);
  align-items:end;
}

.about-photo{
  width:100%;
  aspect-ratio: 3/4;
  object-fit:cover;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
}

.about-photo-main{ grid-column: 1; }
.about-photo-side{
  grid-column: 2;
  transform:translateY(-10%);        /* تداخل خفيف للأعلى */
}

/* البادج الدائري */
.about-badge{
  position:absolute;
  inset-block-start:55%;
  inset-inline-start:50%;
  transform:translate(-50%, -50%);
  width:136px; height:136px;
  border-radius:50%;
  background:#fff;
  display:grid; place-items:center;
  box-shadow:0 8px 30px rgba(0,0,0,.18);
}

.about-badge-ring{
  position:absolute; inset:10px;
  border-radius:50%;
  border:2px dashed #bbb;
}

.about-badge-logo{
  position:relative;
  width:58%;
  height:auto;
  z-index:1;
}

/* Responsive tweaks */
@media (max-width: 991.98px){
  .about-photos{ margin-inline:auto; }   /* وسط على التابلت والموبايل */
  .about-photo-side{ transform:translateY(-6%); }
}
@media (max-width: 575.98px){
  .about-photos{ width:100%; }
  .about-badge{ width:110px; height:110px; }
}

/* ===== Majors cards (compact, square & soft) ===== */
.majors-row{
  --bs-gutter-x: 2rem;
  --bs-gutter-y: 2rem;
  justify-content: center;
}

.major-card{
  max-width: 360px;
  margin-inline: auto;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 0;                /* مربع ناعم */
  overflow: hidden;
  box-shadow: 0 .35rem 1.1rem rgba(0,0,0,.08);
  transition: box-shadow .25s ease, transform .2s ease;
}
.major-card:hover{ box-shadow: 0 .65rem 1.6rem rgba(0,0,0,.14); }

.major-card .ratio{ --bs-aspect-ratio: 100%; } /* مربع تام */

/* media + hover overlay */
.major-media{ position: relative; overflow: hidden; }
.major-media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}
.major-card:hover .major-media img{ transform: scale(1.045); }

.major-hover{
  position: absolute; inset: 0;
  display: flex; align-items: flex-end; justify-content: space-between;
  padding: 12px;
  background: linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0));
  opacity: 0; transition: opacity .35s ease;
}
.major-card:hover .major-hover{ opacity: 1; }

/* degree pill (optional badge) */
.degree-pill{
  position: absolute;
  inset-inline-start: .75rem; top: .75rem;
  padding: .35rem .6rem;
  background: rgba(255,255,255,.9);
  color: #111;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 999px;
  font-size: .82rem; font-weight: 600;
  backdrop-filter: blur(2px);
}

/* bottom bar + title */
.major-bar{
  min-height: 64px;
  display: flex; align-items: center; justify-content: space-between;
  padding: .9rem 1rem;
}
.major-title{
  font-size: clamp(1rem, .95rem + .25vw, 1.1rem);
  line-height: 1.4;
  font-weight: 600;
  letter-spacing: .1px;
}

/* arrow button */
.major-arrow{
  width: 40px; height: 40px;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff; color: #111;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 999px;
  transition: transform .35s ease, background-color .2s ease;
}
[dir="ltr"] .major-card:hover .major-arrow{ transform: translateX(6px); }
[dir="rtl"] .major-card:hover .major-arrow{ transform: translateX(-6px); }

/* brand colors */
.bg-nuct-teal{ background: #0c8a8a !important; }
.bg-nuct-orange{ background: #D96B2B !important; }

/* gradient overlay shows on hover */
.major-hover{
  position:absolute; inset:0;
  display:flex; align-items:flex-end; justify-content:space-between;
  background: linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0));
  padding:12px;
  opacity:0; transition: opacity .35s ease;
}
.major-card:hover .major-hover{ opacity:1; }


/* ===== Specialization-show pages ===== */


/* ===== Banner ===== */
.major-banner{
  position: relative;
  min-height: 320px;
  display: grid;
  align-items: center;           /* يوسّط المحتوى عمودياً */
  color: #fff;
}
.major-banner-img{
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}
.major-banner .container{
  position: relative; z-index: 2;
  display: flex; align-items: center; justify-content: center; /* وسط */
  min-height: 320px;
}

.major-banner-text{
  text-align: center;            /* الوسط أفقياً */
}
.degree-badge{
  display:inline-block; margin-bottom:.5rem;
  padding:.35rem .65rem; border-radius:999px;
  /* background:rgba(0,0,0,.35); border:1px solid rgba(255,255,255,.45); */
  font-weight:600; backdrop-filter:blur(2px);
  color: black
}
.major-title{ font-weight: 800; 
    color: black
}
.major-subtitle{ font-size: 1.05rem; 
    color: black
}

/* ===== Fix: keep image visible inside .major-card ===== */
.spec-card{ border-radius:.75rem; overflow:hidden; }
.spec-card .ratio{ --bs-aspect-ratio:56%; background:#f6f8fa; }
.spec-card .ratio > img{
  width:100%;
  height:100% !important;   /* يضمن ظهور الصورة */
  object-fit:cover;
  display:block;
  border-radius:0;
}

/* ===== Lists / typography (كما عندك) ===== */
.major-richtext p{ margin-bottom:.75rem; line-height:1.9; }
.section-h{ font-weight:800; font-size:1.25rem; }
.major-list{ list-style:none; padding:0; margin:0; }
.major-list li{ display:flex; gap:.6rem; align-items:flex-start; padding:.4rem 0; }
.major-list i{ opacity:.9; margin-top:.2rem; }

/* ===== Sidebar boxes ===== */
.degree-box{ border:1px solid #e5e7eb; border-radius:.5rem; overflow:hidden; background:#fff; box-shadow:0 .125rem .5rem rgba(0,0,0,.06); }
.degree-head{ padding:.8rem 1rem; font-weight:800; }
.degree-list{ list-style:none; margin:0; padding:0; }
.degree-list li + li{ border-top:1px solid #f0f0f0; }
.degree-item-link{ display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding:.9rem 1rem; color:#111827; text-decoration:none; transition:transform .15s, background .15s; }
.degree-item-link:hover{ background:#f9fafb; transform: translateY(-1px); }
.degree-item-link i{ opacity:.6; }

/* ===== Colored block instead of footer image ===== */
.side-placeholder{
  height: 220px;
  background: #0e6f73; /* المطلوب */
  box-shadow: 0 .125rem .5rem rgba(0,0,0,.06);
}

/* ===== Side contact card ===== */
.side-contact{
  background:#0e6f73; color:#fff;
  padding:1.5rem;
  border-radius:.75rem;
  box-shadow:0 .125rem .5rem rgba(0,0,0,.06);
}
.side-contact .sc-brand{
  font-weight:800; font-size:1.25rem;
}
.side-contact .sc-subbrand{
  font-weight:800; font-size:1.35rem;
  letter-spacing:.5px; margin-bottom:1.25rem;
}
.side-contact .sc-section{ margin-top:1rem; }
.side-contact .sc-title{
  font-weight:700; margin-bottom:.5rem;
}
.side-contact .sc-list{
  list-style:none; padding:0; margin:0;
}
.side-contact .sc-list li{
  display:flex; align-items:center; gap:.55rem;
  padding:.25rem 0;
}
[dir="rtl"] .side-contact .sc-list li{ justify-content:flex-end; }
.side-contact a{ color:#fff; text-decoration:none; }
.side-contact a:hover{ text-decoration:underline; }

.side-contact .sc-social{
  display:flex; gap:.5rem; margin-top:.35rem;
}
[dir="rtl"] .side-contact .sc-social{ justify-content:flex-end; }
.side-contact .sc-circle{
  width:40px; height:40px; border-radius:999px;
  display:grid; place-items:center;
  background:rgba(255,255,255,.10);
  color:#fff;
}
.side-contact .sc-circle:hover{
  background:rgba(255,255,255,.20);
  color:#fff;
}

/* Department show */
/* ===== Banner ===== */
.dep-banner{
  position: relative;
  min-height: 300px;
  color:#fff;
  overflow:hidden;             /* احتياط */
}

.dep-banner-img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  z-index:0;
  transition: transform .4s ease;
}

/* overlay يغطي 100% من الصورة */
.dep-banner-overlay{
  position:absolute; inset:0;
  width:100%; height:100%;
  background: linear-gradient(to bottom, rgba(0,0,0,.35), rgba(0,0,0,.55));
  z-index:1;
  pointer-events:none;         /* ما يمنع التفاعل مع المحتوى */
}

/* محتوى النص فوق الكل */
.dep-banner .container{
  position:relative;
  z-index:2;
  min-height:300px;
  display:flex; align-items:center; justify-content:center;
}

/* اختياري: هوفر لطيف على الصورة كلها */
.dep-banner:hover .dep-banner-img{
  transform: scale(1.02);
}

.dep-title{ font-weight:800; letter-spacing:.2px; text-shadow:0 3px 18px rgba(0,0,0,.35); }
.dep-subtitle{ opacity:.9; }


/* ===== Cover & rich text ===== */
.dep-cover{ --bs-aspect-ratio: 75%; border-radius:.75rem; overflow:hidden; }
.dep-cover img{ width:100%; height:100%; object-fit:cover; }
.dep-richtext p{ margin-bottom: .85rem; line-height:1.9; }

/* ===== Degree chip ===== */
.deg-chip{
  display:inline-block; padding:.4rem .7rem; border-radius:999px;
  background: var(--deg-bg); color: var(--deg-tx); font-weight:700; font-size:.85rem;
}

/* ===== Specialization cards (department page) ===== */
.dep-major-card{ border:1px solid rgba(0,0,0,.06); border-radius:.65rem; overflow:hidden; box-shadow:0 .25rem .75rem rgba(0,0,0,.06); transition:box-shadow .25s ease, transform .2s ease; }
.dep-major-card:hover{ box-shadow:0 .6rem 1.4rem rgba(0,0,0,.12); transform: translateY(-2px); }
.dep-major-media{ position:relative; overflow:hidden; --bs-aspect-ratio:100%; }
.dep-major-media img{ width:100%; height:100%; object-fit:cover; transition: transform .45s ease; }
.dep-major-card:hover .dep-major-media img{ transform:scale(1.035); }
.dep-major-hover{ position:absolute; inset:0; display:flex; align-items:flex-end; justify-content:flex-end; padding:12px; background:linear-gradient(to top, rgba(0,0,0,.45), rgba(0,0,0,0)); opacity:0; transition:opacity .3s; }
.dep-major-card:hover .dep-major-hover{ opacity:1; }
.dep-major-bar{ min-height:62px; }
.dep-major-arrow{ width:40px; height:40px; display:inline-grid; place-items:center; }

/* ===== People cards ===== */
.person-card{ border:1px solid #eef1f4; border-radius:.75rem; overflow:hidden; box-shadow:0 .15rem .45rem rgba(0,0,0,.06); }
.person-photo{ display:grid; place-items:center; padding-top:1.25rem; }
.person-photo img{ width:92px; height:92px; border-radius:50%; object-fit:cover; box-shadow:0 .3rem 1rem rgba(0,0,0,.12); }
.fw-800{ font-weight:800; }
.fw-700{ font-weight:700; }


/* Campus Tour */
.tour-player{
    position:relative;
    overflow:hidden;
    box-shadow:0 .5rem 1.5rem rgba(0,0,0,.12);
}
  /* نسبة أصغر (ارتفاع أقل) على الشاشات الكبيرة */
.tour-ratio-shallow{ --bs-aspect-ratio:45%; } /* بدك أقل؟ جرّب 40% */
  /* على الموبايل نخلي 16:9 لتكون مشاهدة أريح */
  @media (max-width:575.98px){
.tour-ratio-shallow{ --bs-aspect-ratio:56%; }
  }
  /* الفيديو */
.tour-video{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

    /* ===== Events style ===== */
    .event-item{
      display:flex;
      background:#0e6f73;            /* Teal الأساسي */
      color:#fff;
      overflow:hidden;
      box-shadow:0 .25rem .75rem rgba(0,0,0,.08);
      transition:transform .2s ease, box-shadow .25s ease, background-color .2s;
    }
    .event-item:hover{
      transform:translateY(-2px);
      box-shadow:0 .65rem 1.6rem rgba(0,0,0,.14);
      background:#0c5b5b;            /* لون الهوفر */
    }
    .event-left{
      width:140px; min-width:140px;
      background:#136f6f;            /* جهة الرقم */
      display:grid; place-items:center;
    }
    .event-no{
      font-size:72px; font-weight:800; color:rgba(255,255,255,.65);
      line-height:1;
    }
    .event-body{ padding:1rem 1.25rem; flex:1; }
    .event-title{ margin:0 0 .5rem; font-weight:700; font-size:1.15rem; }
    .event-meta{
      display:flex; align-items:center; gap:.75rem;
      font-size:.95rem; opacity:.95;
    }
    .event-meta .sep{ width:1px; height:16px; background:rgba(255,255,255,.35); display:inline-block; }
    
    /* ===== Announcements panel ===== */
    .ann-panel{
      border:1px solid #eef1f4;
      overflow:auto;
      max-height:540px;               /* يعمل Scroll عند كثرة العناصر */
    }
    .ann-row{
      display:flex; align-items:center; gap:14px;
      padding:14px 16px;
      text-decoration:none; color:#222;
      border-bottom:1px solid #f3f4f6;
      transition:background-color .2s;
    }
    .ann-row:hover{ background:#f8fafb; }
    .ann-date{ width:54px; text-align:center; }
    .ann-day{ font-weight:800; font-size:26px; color:#0e6f73; line-height:1; }
    .ann-mon{ font-size:12px; color:#666; text-transform:uppercase; }
    .ann-title{ flex:1; line-height:1.45; }
    
    /* ===== Responsive ===== */
    @media (max-width: 991.98px){
      .event-left{ width:110px; min-width:110px; }
      .event-no{ font-size:56px; }
      .ann-panel{ max-height:none; }
    }
    
    /* ===== Featured news ===== */
    .news-feature .nf-media{ position:relative; overflow:hidden; box-shadow:0 .35rem 1rem rgba(0,0,0,.08); }
    .news-feature img{ width:100%; height:100%; object-fit:cover; transform:scale(1); transition:transform .6s ease; }
    .news-feature .nf-overlay{
      position:absolute; inset:0;
      background:linear-gradient(to top, rgba(0,0,0,.65) 0%, rgba(0,0,0,.15) 55%, rgba(0,0,0,.0) 100%);
      transition:background-color .25s ease, opacity .25s ease;
    }
    .news-feature .nf-meta{
      position:absolute; inset-inline:16px; bottom:14px;
    }
    .news-feature .nf-title{ font-weight:800; margin:8px 0 0; text-shadow:0 4px 18px rgba(0,0,0,.45); }
    .news-feature .nf-meta-line{
      display:flex; align-items:center; gap:.75rem; opacity:.95;
      font-size:.95rem;
    }
    .news-feature .nf-meta-line .sep{ width:1px; height:14px; background:rgba(255,255,255,.5); display:inline-block; }
    .news-feature:hover img{ transform:scale(1.04); }
    
    /* ===== List rows ===== */
    .news-row{
      display:flex; gap:14px; align-items:stretch;
      padding:10px; border:1px solid #eef1f4; 
      background:#fff; color:#111;
      transition:box-shadow .25s ease, transform .15s ease, background-color .25s ease;
    }
    .news-row:hover{ transform:translateY(-2px); box-shadow:0 .6rem 1.2rem rgba(0,0,0,.08); background:#fdfefe; }
    .nr-thumb{ width:38%; min-width:38%; overflow:hidden; }
    .nr-thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
    .news-row:hover .nr-thumb img{ transform:scale(1.04); }
    .nr-body{ flex:1; display:flex; flex-direction:column; justify-content:center; }
    .nr-meta{ font-size:.9rem; color:#6b7280; display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; }
    .nr-meta .sep{ width:1px; height:14px; background:#e5e7eb; display:inline-block; }
    .nr-title{ margin-top:.25rem; font-weight:700; line-height:1.5; }
    
    /* ===== Responsive ===== */
    @media (max-width: 991.98px){
      .nr-thumb{ width:42%; min-width:42%; }
    }
    @media (max-width: 575.98px){
      .news-row{ flex-direction:column; }
      .nr-thumb{ width:100%; min-width:0; }
    }

    /* news-show */
/* ===== Hero ===== */
.ns-hero{position:relative;min-height:320px;color:#fff;overflow:hidden}
.ns-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ns-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.35),rgba(0,0,0,.65))}
.ns-hero .container{min-height:320px;display:flex;align-items:center}
.ns-hero-content{max-width:920px}
.ns-chip{display:inline-block;padding:.35rem .7rem;border-radius:999px;background:rgba(255,255,255,.15);backdrop-filter:blur(2px);border:1px solid rgba(255,255,255,.25);font-weight:700}
.ns-title{font-weight:800;margin-top:.75rem;text-shadow:0 4px 22px rgba(0,0,0,.28)}
.ns-meta{opacity:.95;margin-top:.25rem}
.ns-meta .sep{margin:0 .5rem}

/* ===== Article ===== */
.ns-cover img{width:100%;height:100%;object-fit:cover}
.ns-body{padding:1.25rem 1.25rem 1.5rem}
.ns-body-content p{line-height:1.9;margin-bottom:1rem}
.ns-body-content h2,.ns-body-content h3{margin-top:1.25rem}

/* ===== Related mini rows ===== */
.ns-mini{gap:.7rem;color:#111}
.ns-mini-thumb{width:120px;flex:0 0 120px;border-radius:.5rem;overflow:hidden}
.ns-mini-thumb img{width:100%;height:100%;object-fit:cover}
.ns-mini-title{font-weight:700;line-height:1.4;margin-bottom:.25rem}
.ns-mini-meta{font-size:.875rem;color:#6b7280}
@media (max-width:991.98px){.ns-mini-thumb{width:110px;flex-basis:110px}}

/* ===== Categories accordion (classic look) ===== */
.ns-acc-item{margin-bottom:.5rem}
.ns-acc .accordion-button{
  box-shadow:none;background:#fff;border:1px solid #eef2f6;border-radius:.65rem;
  padding:.6rem .75rem;display:flex;align-items:center;gap:.65rem;color:#374151
}
.ns-acc .accordion-button:not(.collapsed){background:#0c8a8a;color:#fff;border-color:#0c8a8a}
.ns-acc-dot{width:.55rem;height:.55rem;border-radius:50%;background:#0c8a8a}
.ns-acc .accordion-button:not(.collapsed) .ns-acc-dot{background:#fff;opacity:.95}
.ns-acc-label{flex:1;font-weight:600}
.ns-acc-count{font-weight:700;padding:.1rem .5rem;border-radius:.5rem;background:#eef2f6;color:#111}
.ns-acc .accordion-button:not(.collapsed) .ns-acc-count{background:rgba(255,255,255,.25);color:#fff}
.ns-acc-caret{opacity:.75;transition:transform .2s ease}
.ns-acc .accordion-button[aria-expanded="true"] .ns-acc-caret{transform:rotate(180deg)}
.ns-acc-list .ns-acc-li{border-inline-start:3px solid #0c8a8a0f}
.ns-acc-link{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .65rem;border-radius:.5rem;color:#111;text-decoration:none}
.ns-acc-link:hover{background:#f5f7fb}
.ns-acc-link.active{font-weight:700}

/* req-admmission */
/* Hero */
.ad-hero{position:relative;min-height:300px;color:#fff;overflow:hidden}
.ad-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ad-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom, rgba(0,0,0,.35), rgba(0,0,0,.65))}
.ad-hero .container{min-height:300px;display:flex;align-items:center}
.ad-title{font-weight:800;text-shadow:0 4px 22px rgba(0,0,0,.28)}

/* Guide card */
.sg-card{
  display:flex; gap:14px; padding:16px; border-radius:12px;
  background:#f6f8fb; color:#0f1a2a; border:1px solid #eef2f6;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.sg-card:hover{
  transform:translateY(-2px); background:#eef4ff; box-shadow:0 10px 24px rgba(0,0,0,.08);
}
.sg-icon{
  flex:0 0 48px; width:48px; height:48px; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  background:#176a6f; color:#fff; font-size:22px;
}
.sg-body{min-width:0}
.sg-title{font-weight:800; line-height:1.35}
.sg-meta{margin-top:6px; font-size:.925rem; color:#6b7280; display:flex; align-items:center; gap:.5rem; flex-wrap:wrap}
.sg-meta .dot{width:4px;height:4px;border-radius:50%;background:#9aa3af;display:inline-block}
.sg-filename{white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%}

/* acadmic calender */
.ac-card{
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #e9eef3;
  background:#fff;
}
.ac-bar{
  padding: 14px 18px;
  color:#fff;
  text-align:center;
}
.ac-bar-title{
  font-weight:800;
  font-size:1.25rem;
  letter-spacing:.3px;
}

.ac-table thead th{
  background:#f6f8fb;
  color:#1f2937;
  font-weight:700;
  border-bottom:1px solid #e9eef3;
  font-size:1rem;
}
.ac-table td{
  vertical-align:middle;
  padding:16px 14px;
  border-color:#eef2f6;
  font-size:1rem;
}
.ac-table tbody tr:nth-child(even){
  background:#fafbfd;
}

/* محاذاة لطيفة عند العربية أو الإنجليزية – الصفحة كلها RTL */
.ac-date, .ac-day{white-space:nowrap}
.ac-event{line-height:1.8}

/* all-news */
.ad-hero{position:relative;min-height:260px;color:#fff;overflow:hidden}
.ad-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ad-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.35),rgba(0,0,0,.65))}
.ad-hero .container{min-height:260px;display:flex;align-items:center}
.ad-title{font-weight:800;text-shadow:0 4px 22px rgba(0,0,0,.28)}

.badge-pill{padding:.5rem .9rem;border-radius:999px;border:1px solid #e5e7eb;text-decoration:none;color:#111;background:#fff}
.badge-pill:hover{background:#f5f7fa}
.badge-pill.is-active{background:#176a6f;color:#fff;border-color:#176a6f}

.news-card .card-title{font-weight:700;line-height:1.25}