@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;600;700&display=swap');

:root{
  /* Theme: Charcoal + Accent */
  --brand:#f59e0b;           /* accent (amber) */
  --brand-2:#d97706;         /* deeper accent */
  --ink:#111827;             /* charcoal */
  --muted:#6b7280;
  --card:#ffffff;
  --soft:#f3f4f6;
  --radius:18px;

  /* Bootstrap overrides (works with Bootstrap 5.3+) */
  --bs-primary: var(--brand);
  --bs-primary-rgb: 245,158,11;
}

html{ scroll-behavior:smooth; }
body{ background: var(--soft); color: var(--ink); font-family: 'Cairo', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }

/* Helpers */
.bg-soft{ background: var(--soft); }
.btn-rounded{ border-radius: 999px; }
.shadow-soft{ box-shadow: 0 12px 30px rgba(11,18,32,.06); }

/* Navbar */
.navbar{
  backdrop-filter: blur(10px);
}
.navbar .nav-link{ font-weight:600; }
.navbar .nav-link.active{ color: var(--brand) !important; }

/* Cards */
.card-soft{
  background: var(--card);
  border: 1px solid rgba(17,24,39,.10);
  border-radius: var(--radius);
  box-shadow: 0 12px 30px rgba(11,18,32,.06);
}

.section-title{
  font-weight: 900;
  letter-spacing: .2px;
  color: var(--ink);
}
.section-kicker{
  color: var(--brand);
  font-weight: 800;
  letter-spacing: .6px;
  text-transform: uppercase;
  font-size: .85rem;
}

.small-muted{ color: var(--muted); }

/* Hero / slider overlay */
.hero-wrap{
  border-radius: var(--radius);
  overflow:hidden;
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(900px 450px at 80% 10%, rgba(245,158,11,.18), transparent 55%),
    linear-gradient(120deg, rgba(17,24,39,.92), rgba(30,41,59,.92));
}
.hero-content{ position:relative; z-index:2; }

/* Bootstrap tweaks */
.form-control, .form-select{ border-radius: 14px; }
.table thead th{ background: rgba(17,24,39,.04); }
.ratio iframe{ border-radius: 16px; }

.badge-soft{
  background: rgba(245,158,11,.12);
  color: var(--brand-2);
  border: 1px solid rgba(245,158,11,.22);
}

/* Feature icon */
.feature-ic{
  width: 48px; height:48px;
  border-radius: 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(245,158,11,.14);
  color: var(--brand-2);
}

/* Avatars / profile images */
.avatar-circle{
  width: 54px;
  height: 54px;
  border-radius: 999px;
  object-fit: cover;
  border: 2px solid rgba(245,158,11,.22);
  background: rgba(17,24,39,.04);
  flex: 0 0 auto;
}
.avatar-fallback{
  width: 54px;
  height: 54px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(245,158,11,.22);
  background: rgba(245,158,11,.14);
  color: var(--brand-2);
  flex: 0 0 auto;
}
.avatar-fallback i{ font-size: 22px; }

/* Partner logos */
.logo-tile{
  background: var(--card);
  border: 1px solid rgba(17,24,39,.10);
  border-radius: 18px;
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 84px;
  box-shadow: 0 10px 25px rgba(11,18,32,.05);
}
.logo-tile img{
  max-height: 46px;
  max-width: 100%;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: .85;
  transition: all .2s ease;
}
.logo-tile:hover img{ filter: none; opacity: 1; transform: translateY(-1px); }

/* Counter */
.counter{
  font-weight: 900;
  font-size: 2rem;
}

/* Footer */
.footer-note{ color: #7b8aa0; }

/* Links */
a{ text-decoration: none; }
a:hover{ text-decoration: underline; }

/* RTL polish */
.list-check li{ margin-bottom:.4rem; }

/* Make carousel captions readable */
.carousel-caption{
  right: 0; left: 0;
  text-align: right;
  padding: 2rem;
}
.carousel-caption .cap-box{
  max-width: 720px;
  margin-inline-start: auto;
  background: rgba(11,18,32,.35);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 16px;
  padding: 1rem 1.25rem;
  backdrop-filter: blur(8px);
}

/* Dark mode */
html.theme-dark,
body.theme-dark{
  --ink:#e6edf7;
  --muted:#a8b3c2;
  --card:#111827;
  --soft:#0b1220;
  --bs-body-color: var(--ink);
  --bs-body-bg: var(--soft);
}
body.theme-dark{ background: var(--soft); color: var(--ink); }
body.theme-dark .navbar{ background: rgba(15,23,42,.8) !important; }
body.theme-dark .navbar .nav-link{ color: #dbe6f5; }
body.theme-dark .dropdown-menu{ background: #0f172a; color: var(--ink); border-color: rgba(255,255,255,.12); }
body.theme-dark .dropdown-item{ color: var(--ink); }
body.theme-dark .dropdown-item:hover{ background: rgba(255,255,255,.06); }
body.theme-dark .table{ color: var(--ink); }
body.theme-dark .table-light{ --bs-table-bg: rgba(255,255,255,.05); }

/* Notifications */
.notif-drop{ width: 380px; }
.notif-item{ border:1px solid rgba(0,0,0,.06); background: rgba(255,255,255,.55); }
.notif-item.unread{ border-color: rgba(245,158,11,.35); }
.notif-item:hover{ background: rgba(17,24,39,.05); }
.notif-ic{ width: 18px; }

/* Hover helper */
.hover-soft:hover{ background: rgba(17,24,39,.05); }

/* Chat widget */
#bisChatBtn{ position: fixed; bottom: 18px; left: 18px; z-index: 9999; }
#bisChatPanel{ position: fixed; bottom: 78px; left: 18px; width: 320px; max-width: calc(100vw - 36px); z-index: 9999; }

/* Chatbot */
.chatbot{ position: fixed; left: 18px; bottom: 18px; z-index: 1055; }
.chatbot-btn{ width:56px; height:56px; border-radius: 18px; border:0; background: var(--brand); color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 10px 25px rgba(0,0,0,.15); }
.chatbot-btn i{ font-size: 22px; }
.chatbot-box{ width: 320px; border-radius: 18px; overflow: hidden; background: #fff; }
body.theme-dark .chatbot-box{ background: var(--card); }
.chatbot-head{ padding:10px 12px; background: rgba(245,158,11,.12); }
body.theme-dark .chatbot-head{ background: rgba(245,158,11,.10); color: var(--ink); }
.chatbot-body{ padding: 10px 12px; max-height: 280px; overflow: auto; background: transparent; }
.chatbot-foot{ padding: 10px 12px; border-top: 1px solid rgba(0,0,0,.06); }
body.theme-dark .chatbot-foot{ border-top-color: rgba(255,255,255,.08); }
.chatbot-msg{ padding: 8px 10px; border-radius: 14px; margin-bottom: 8px; font-size: 13px; line-height: 1.35; }
.chatbot-msg.bot{ background: rgba(0,0,0,.05); }
.chatbot-msg.me{ background: rgba(245,158,11,.18); margin-left: 22px; }
body.theme-dark .chatbot-msg.bot{ background: rgba(255,255,255,.08); color: var(--ink); }
body.theme-dark .chatbot-msg.me{ background: rgba(245,158,11,.18); color: var(--ink); }


/* Reveal on scroll */
.reveal{ opacity:0; transform: translateY(14px); transition: opacity .6s ease, transform .6s ease; }
.reveal.show{ opacity:1; transform:none; }
/* Partners logos fixed size 150x150 */
.partner-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
}

.partner-logo img{
  width: 150px;
  height: 150px;
  object-fit: contain;   /* يحافظ على أبعاد اللوجو بدون قص */
  display: block;
}