/* =========================================================
   القالب الافتراضي - Default Theme Stylesheet
   ========================================================= */

:root {
    --brand-primary: #2563eb;
    --brand-secondary: #0f172a;
}

body {
    font-family: 'Cairo', 'Inter', sans-serif;
    color: #1e293b;
    background: #fff;
}

body.locale-en {
    font-family: 'Inter', 'Cairo', sans-serif;
}

a { text-decoration: none; }

/* ---------- الأزرار ---------- */
.btn-brand {
    background: var(--brand-primary);
    border-color: var(--brand-primary);
    color: #fff;
    font-weight: 600;
    border-radius: 10px;
    transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.btn-brand:hover {
    filter: brightness(0.92);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(37, 99, 235, .25);
}
.btn-brand-outline {
    border: 2px solid var(--brand-primary);
    color: var(--brand-primary);
    font-weight: 600;
    border-radius: 10px;
    background: transparent;
}
.btn-brand-outline:hover {
    background: var(--brand-primary);
    color: #fff;
}
.text-brand { color: var(--brand-primary); }

/* ---------- الهيدر ---------- */
.site-header .navbar-brand img { max-height: 42px; width: auto; }
.brand-fallback { font-size: 1.3rem; font-weight: 800; color: var(--brand-secondary); }
.navbar .nav-link {
    font-weight: 600;
    color: #334155 !important;
    padding: 8px 14px !important;
    border-radius: 8px;
    transition: color .15s ease, background .15s ease;
}
.navbar .nav-link:hover { color: var(--brand-primary) !important; background: rgba(37,99,235,.06); }
.lang-switch { border-radius: 20px; font-weight: 600; }

/* ---------- الهيرو ---------- */
.hero-slider .carousel-item { height: 560px; }
.hero-slide {
    height: 560px;
    background-size: cover;
    background-position: center;
}
.hero-caption { max-width: 640px; }
.hero-plain {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary));
    padding: 100px 0;
}
@media (max-width: 768px) {
    .hero-slider .carousel-item, .hero-slide { height: 420px; }
}

/* ---------- قسم "عن" في الرئيسية ---------- */
.section-eyebrow {
    display: inline-block;
    color: var(--brand-primary);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: .8rem;
    margin-bottom: 8px;
}
.about-visual {
    background: linear-gradient(135deg, rgba(37,99,235,.1), rgba(15,23,42,.08));
    color: var(--brand-primary);
    height: 320px;
}
.about-excerpt { line-height: 1.9; }

/* ---------- الإحصائيات ---------- */
.stats-section {
    background: linear-gradient(135deg, var(--brand-secondary), #1e293b);
}
.stat-box { color: #fff; }
.stat-box i { color: var(--brand-primary); }
.stat-number { font-size: 2.4rem; font-weight: 800; }
.stat-label { opacity: .8; font-weight: 500; }

/* ---------- دعوة للتواصل ---------- */
.cta-section { background: #f8fafc; }

/* ---------- صفحات عامة ---------- */
.page-header {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary));
    padding: 70px 0;
}
.page-content { line-height: 2; font-size: 1.05rem; }
.page-content img { max-width: 100%; border-radius: 12px; height: auto; }

/* ---------- التواصل ---------- */
.contact-form-card {
    background: #f8fafc;
    border-radius: 16px;
    padding: 32px;
}
.contact-icon {
    width: 44px; height: 44px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(37,99,235,.1);
    color: var(--brand-primary);
    border-radius: 10px;
    flex-shrink: 0;
}

/* ---------- التذييل ---------- */
.site-footer { background: var(--brand-secondary); }
.footer-links li { margin-bottom: 8px; }
.footer-links a { color: #cbd5e1; }
.footer-links a:hover { color: #fff; }
.social-icon {
    width: 38px; height: 38px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,.1);
    color: #fff;
    border-radius: 50%;
    transition: background .15s ease;
}
.social-icon:hover { background: var(--brand-primary); color: #fff; }

/* ---------- بطاقات الأخبار ---------- */
.news-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,.08);
    transition: transform .18s ease, box-shadow .18s ease;
    color: #1e293b;
}
.news-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(15,23,42,.12);
    color: #1e293b;
}
.news-card-img { position: relative; height: 190px; overflow: hidden; background: #f1f5f9; }
.news-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.news-card:hover .news-card-img img { transform: scale(1.06); }
.news-card-placeholder {
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    color: #cbd5e1; font-size: 2.5rem;
}
.news-badge-featured {
    position: absolute; top: 10px; inset-inline-end: 10px;
    background: #f59e0b; color: #fff;
    width: 30px; height: 30px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: .8rem;
}
.news-card-body { padding: 18px; }
.news-card-date { color: var(--brand-primary); font-size: .78rem; font-weight: 700; margin-bottom: 6px; }

/* ---------- فريق العمل ---------- */
.team-card {
    background: #fff;
    border-radius: 16px;
    padding: 28px 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,.08);
    transition: transform .18s ease, box-shadow .18s ease;
}
.team-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px rgba(15,23,42,.12); }
.team-card-photo {
    width: 110px; height: 110px;
    border-radius: 50%;
    object-fit: cover;
    margin: 0 auto 16px;
    display: block;
}
.team-card-placeholder {
    display: flex; align-items: center; justify-content: center;
    background: #f1f5f9; color: #cbd5e1; font-size: 2.2rem;
}
.team-card-position { color: var(--brand-primary); font-size: .85rem; font-weight: 700; }
.team-card .social-icon {
    width: 34px; height: 34px;
    background: #f1f5f9;
    color: #475569;
}
.team-card .social-icon:hover { background: var(--brand-primary); color: #fff; }

/* ---------- معرض الصور ---------- */
.gallery-album-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,.08);
    transition: transform .18s ease, box-shadow .18s ease;
    color: #1e293b;
    display: block;
}
.gallery-album-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(15,23,42,.12);
    color: #1e293b;
}
.gallery-album-img { position: relative; height: 210px; overflow: hidden; background: #f1f5f9; }
.gallery-album-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.gallery-album-card:hover .gallery-album-img img { transform: scale(1.06); }
.gallery-album-placeholder {
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    color: #cbd5e1; font-size: 2.5rem;
}
.gallery-album-count {
    position: absolute; bottom: 10px; inset-inline-end: 10px;
    background: rgba(15,23,42,.65); color: #fff;
    font-size: .78rem; font-weight: 700;
    padding: 3px 10px; border-radius: 20px;
}
.gallery-album-body { padding: 18px; }

.gallery-photo-thumb {
    display: block; position: relative; height: 170px; border-radius: 12px; overflow: hidden; background: #f1f5f9;
}
.gallery-photo-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.gallery-photo-thumb:hover img { transform: scale(1.08); }
.gallery-photo-thumb .zoom-icon {
    position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
    background: rgba(15,23,42,0); color: #fff; font-size: 1.4rem; opacity: 0; transition: all .2s ease;
}
.gallery-photo-thumb:hover .zoom-icon { background: rgba(15,23,42,.35); opacity: 1; }

/* ---------- الأعمال ---------- */
.work-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,.08);
    transition: transform .18s ease, box-shadow .18s ease;
    color: #1e293b;
}
.work-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(15,23,42,.12);
    color: #1e293b;
}
.work-card-img { position: relative; height: 190px; overflow: hidden; background: #f1f5f9; }
.work-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.work-card:hover .work-card-img img { transform: scale(1.06); }
.work-card-placeholder {
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    color: #cbd5e1; font-size: 2.5rem;
}
.work-card-audience {
    position: absolute; bottom: 10px; inset-inline-start: 10px;
    background: rgba(15,23,42,.65); color: #fff;
    font-size: .72rem; font-weight: 700;
    padding: 3px 10px; border-radius: 20px;
}
.work-card-body { padding: 18px; }

/* ---------- الفيديو ---------- */
.video-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,.08);
    transition: transform .18s ease, box-shadow .18s ease;
    color: #1e293b;
}
.video-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(15,23,42,.12);
    color: #1e293b;
}
.video-card-img { position: relative; height: 190px; overflow: hidden; background: #0f172a; }
.video-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; opacity: .85; }
.video-card:hover .video-card-img img { transform: scale(1.06); }
.video-card-placeholder {
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    color: #64748b; font-size: 2.5rem;
}
.video-play-icon {
    position: absolute; inset: 0; margin: auto;
    width: 56px; height: 56px; border-radius: 50%;
    background: rgba(255,255,255,.92); color: var(--brand-primary);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.4rem; transition: transform .2s ease, background .2s ease;
}
.video-card:hover .video-play-icon { transform: scale(1.1); background: #fff; }
.video-card-body { padding: 14px 16px; }
.video-player-wrap {
    position: relative; width: 100%; aspect-ratio: 16 / 9;
    background: #000; overflow: hidden;
}
.video-player-wrap iframe, .video-player-wrap video {
    position: absolute; inset: 0; width: 100%; height: 100%; border: 0;
}

.pagination .page-link { color: var(--brand-primary); border-radius: 8px !important; margin: 0 3px; border-color: #e2e8f0; }
.pagination .page-item.active .page-link { background: var(--brand-primary); border-color: var(--brand-primary); }

/* ---------- صفحات الخطأ ---------- */
.error-page { min-height: 55vh; display: flex; align-items: center; }

/* ---------- عام ---------- */
.card { border: 1px solid #eef2f7; border-radius: 14px; }
