/*
Theme Name: GeneratePress Child
Template: generatepress
*/

/* ═══════════════════════════════════════
   FONTS
═══════════════════════════════════════ */

@font-face {
  font-family: 'IBM Plex Sans Arabic';
  src: url('fonts/IBMPlexSansArabic-Regular.woff2') format('woff2');
  font-weight: 400;
  font-display: optional;
}

@font-face {
  font-family: 'IBM Plex Sans Arabic';
  src: url('fonts/IBMPlexSansArabic-Medium.woff2') format('woff2');
  font-weight: 500;
  font-display: optional;
}

@font-face {
  font-family: 'IBM Plex Sans Arabic';
  src: url('fonts/IBMPlexSansArabic-SemiBold.woff2') format('woff2');
  font-weight: 600;
  font-display: optional;
}

@font-face {
  font-family: 'IBM Plex Sans Arabic';
  src: url('fonts/IBMPlexSansArabic-Bold.woff2') format('woff2');
  font-weight: 700;
  font-display: optional;
}

/* ═══════════════════════════════════════
   DESIGN TOKENS
═══════════════════════════════════════ */

:root {
  /* Colors */
  --color-primary:      #89431B;  /* 7.29:1 ✅ AAA */
  --color-primary-dark: #6B3214;
  --color-link:         #0279B3;  /* 4.79:1 ✅ AA  */
  --color-link-hover:   #025d87;
  --color-text:         #2D2D2D;  /* 13.77:1 ✅ AAA */
  --color-text-muted:   #5A6469;  /* 6.07:1  ✅ AA  */
  --color-on-dark:      #FFFFFF;  /* 7.29:1 ✅ AAA */
  --color-bg:           #FFFFFF;
  --color-bg-warm:      #F8F5F2;
  --color-border:       #B8AFA8;

  /* Format / track accents (home page extensions) */
  --color-olive-earth:  #6B7F4F;  /* 4.62:1 on bg-warm ✅ AA */
  --color-ochre:        #B8882C;  /* 4.51:1 on bg-warm ✅ AA */
  --color-deep-rust:    #5C2D0E;  /* 10.1:1 on bg-warm ✅ AAA */
  --color-muted-teal:   #2B5F6B;  /* 7.38:1 on bg-warm ✅ AAA */
  --color-cool-gray:    #5A6469;  /* 6.07:1 on bg-warm ✅ AA */
  --color-accent-green: #2E6B4F;  /* 6.04:1 on bg-warm ✅ AA */

  /* Typography */
  --font-primary: 'IBM Plex Sans Arabic', sans-serif;

  /* Spacing */
  --space-4:   4px;
  --space-8:   8px;
  --space-12:  12px;
  --space-16:  16px;
  --space-24:  24px;
  --space-32:  32px;
  --space-48:  48px;
  --space-64:  64px;

  /* Layout */
  --container-content: 1200px;
  --container-wide:    1440px;
  --reading-width:     720px;
  --radius:            0;
}

/* ═══════════════════════════════════════
   BASE
═══════════════════════════════════════ */

body {
  direction: rtl;
  text-align: right;
  font-family: var(--font-primary);
  font-weight: 400;
  color: var(--color-text);
  background-color: var(--color-bg);
  line-height: 1.7;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-primary);
  font-weight: 600;
  color: var(--color-text);
  line-height: 1.4;
}

a {
  color: var(--color-link);
  text-decoration: none;
}

/* ═══════════════════════════════════════
   BACK TO TOP (custom)
═══════════════════════════════════════ */

.omran-back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 44px;
  height: 44px;
  background: var(--color-primary);
  color: #fff;
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transform: translateY(20px);
  transition: opacity 0.25s ease, transform 0.25s ease, background-color 0.15s ease;
  box-shadow: 0 2px 8px rgba(137, 67, 27, 0.25);
}

.omran-back-to-top.visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
  display: flex;
}

.omran-back-to-top svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.omran-back-to-top:hover,
.omran-back-to-top:focus {
  background: var(--color-primary-dark);
  box-shadow: 0 4px 12px rgba(137, 67, 27, 0.35);
  outline: none;
}

/* ═══════════════════════════════════════
   HEADER — Omran Center
   ═══════════════════════════════════════ */

/* --- Variables --- */
:root {
  --header-primary: #89431B;
  --header-primary-dark: #5C2D0E;
  --header-primary-hover: #6B3214;
  --header-text-on-dark: #FFFFFF;
  --header-text-on-light: #2D2D2D;
  --header-accent: #D4A574;
  --header-dropdown-bg: #FFFFFF;
  --header-dropdown-hover: #F5F0EB;
  --header-transition: all 0.3s ease;
}

/* ═══════════════════════════════════════
   الحالة الابتدائية: هيدر بني داكن قبل Scroll
   ═══════════════════════════════════════ */

/* الشريط العلوي — بني داكن */
.site-header-top {
  background-color: var(--header-primary-dark) !important;
}

.site-header-top,
.site-header-top a,
.site-header-top .elementor-icon i,
.site-header-top .elementor-icon svg {
  color: var(--header-accent) !important;
}

/* شريط القائمة الرئيسية — بني */
.site-header-main {
  background-color: var(--header-primary) !important;
  transition: var(--header-transition);
}

/* القائمة الرئيسية — نص أبيض قبل Scroll */
@media (min-width: 1025px) {
  .elementor-nav-menu > li > a {
    color: var(--header-text-on-dark) !important;
  }

  .elementor-nav-menu > li > a:hover {
    opacity: 0.85 !important;
  }

  /* أسهم القائمة — بيضاء قبل Scroll */
  .elementor-nav-menu > li > a .sub-arrow svg path {
    fill: var(--header-text-on-dark) !important;
  }
}

/* أيقونة البحث — بيضاء قبل Scroll */
.site-header-main .elementor-icon i,
.site-header-main .elementor-icon svg path {
  color: var(--header-text-on-dark) !important;
  fill: var(--header-text-on-dark) !important;
}

/* أيقونة الهامبرغر — بيضاء قبل Scroll */
.elementor-menu-toggle svg path,
.elementor-menu-toggle i {
  fill: var(--header-text-on-dark) !important;
  color: var(--header-text-on-dark) !important;
}

/* ═══════════════════════════════════════
   أولاً: Dropdowns بيضاء (في كل الحالات)
   ═══════════════════════════════════════ */

@media (min-width: 1025px) {
  .elementor-nav-menu--dropdown,
  .elementor-nav-menu .sub-menu {
    background-color: var(--header-dropdown-bg) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 6px 0 !important;
    min-width: 200px !important;
  }

  .elementor-nav-menu--dropdown li a,
  .elementor-nav-menu .sub-menu li a {
    color: var(--header-text-on-light) !important;
    font-size: 13.5px !important;
    padding: 10px 20px !important;
    border-bottom: 1px solid #F0ECE7 !important;
    transition: background 0.15s ease, color 0.15s ease !important;
  }

  .elementor-nav-menu--dropdown li:last-child a,
  .elementor-nav-menu .sub-menu li:last-child a {
    border-bottom: none !important;
  }

  .elementor-nav-menu--dropdown li a:hover,
  .elementor-nav-menu .sub-menu li a:hover {
    background-color: var(--header-dropdown-hover) !important;
    color: var(--header-primary) !important;
  }

  /* أسهم القوائم الفرعية — بنية دائماً */
  .elementor-nav-menu .sub-menu .sub-arrow svg path,
  .elementor-nav-menu--dropdown .sub-arrow svg path {
    fill: var(--header-primary) !important;
  }
}

/* ═══════════════════════════════════════
   ثانياً: Scroll Effect
   ═══════════════════════════════════════ */

/* --- يعمل على كل الأحجام (Desktop + Mobile) --- */

/* الشريط الرئيسي يتحول لأبيض */
.header-scrolled .site-header-main {
  background-color: #FFFFFF !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  transition: var(--header-transition);
}

/* الشريط العلوي يبقى بنياً داكناً */
.header-scrolled .site-header-top {
  background-color: var(--header-primary-dark) !important;
}

.header-scrolled .site-header-top a {
  color: var(--header-accent) !important;
}

/* أيقونة البحث عند Scroll — بنية */
.header-scrolled .site-header-main .elementor-icon i,
.header-scrolled .site-header-main .elementor-icon svg path {
  color: var(--header-primary) !important;
  fill: var(--header-primary) !important;
}

/* أيقونة الهامبرغر عند Scroll — بنية */
.header-scrolled .elementor-menu-toggle svg path,
.header-scrolled .elementor-menu-toggle i {
  fill: var(--header-primary) !important;
  color: var(--header-primary) !important;
}

/* --- Desktop فقط: تعديلات القائمة الأفقية --- */
@media (min-width: 1025px) {
  /* القائمة الرئيسية — نص بني عند Scroll */
  .header-scrolled .elementor-nav-menu > li > a {
    color: var(--header-primary) !important;
  }

  /* أسهم القائمة الرئيسية عند Scroll */
  .header-scrolled .elementor-nav-menu > li > a .sub-arrow svg path {
    fill: var(--header-primary) !important;
  }

  /* Hover على القائمة الرئيسية عند Scroll */
  .header-scrolled .elementor-nav-menu > li > a:hover {
    color: var(--header-primary-hover) !important;
    opacity: 1 !important;
  }

  /* خط Hover الخاص بـ Elementor (pointer underline/overline) — بني عند Scroll */
  .header-scrolled .elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
  .header-scrolled .elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after {
    background-color: var(--header-primary) !important;
  }

  .header-scrolled .elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
  .header-scrolled .elementor-widget-nav-menu .e--pointer-framed .elementor-item:after {
    border-color: var(--header-primary) !important;
  }
}

/* ═══════════════════════════════════════
   ثالثاً: Active State (الصفحة الحالية)
   ═══════════════════════════════════════ */

@media (min-width: 1025px) {
  .elementor-nav-menu .current-menu-item > a,
  .elementor-nav-menu .current-menu-parent > a,
  .elementor-nav-menu .current-menu-ancestor > a {
    position: relative !important;
  }

  .elementor-nav-menu .current-menu-item > a::after,
  .elementor-nav-menu .current-menu-parent > a::after,
  .elementor-nav-menu .current-menu-ancestor > a::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    right: 14px !important;
    left: 14px !important;
    height: 2px !important;
    background: #FFFFFF !important;
  }

  /* Active بعد Scroll — خط بني */
  .header-scrolled .elementor-nav-menu .current-menu-item > a::after,
  .header-scrolled .elementor-nav-menu .current-menu-parent > a::after {
    background: var(--header-primary) !important;
  }

  /* Active داخل القائمة الفرعية — خط بني دائماً (لأن خلفية الدروبداون بيضاء) */
  .elementor-nav-menu .sub-menu .current-menu-item > a::after,
  .elementor-nav-menu .sub-menu .current-menu-parent > a::after,
  .elementor-nav-menu .sub-menu .current-menu-ancestor > a::after,
  .elementor-nav-menu--dropdown .sub-menu .current-menu-item > a::after,
  .elementor-nav-menu--dropdown .sub-menu .current-menu-parent > a::after,
  .elementor-nav-menu--dropdown .sub-menu .current-menu-ancestor > a::after {
    background: var(--header-primary) !important;
  }
}

/* ═══════════════════════════════════════
   رابعاً: Mobile Menu (بيضاء مع نص داكن)
   ═══════════════════════════════════════ */

@media (max-width: 1024px) {
  /* أيقونة الهامبرغر */
  .elementor-menu-toggle svg path,
  .elementor-menu-toggle i {
    fill: #FFFFFF !important;
    color: #FFFFFF !important;
  }

  /* القائمة المفتوحة — خلفية بيضاء */
  .elementor-nav-menu__container.elementor-nav-menu--dropdown {
    background-color: #FFFFFF !important;
    border-bottom: 3px solid var(--header-primary) !important;
  }

  /* روابط القائمة — نص داكن */
  .elementor-nav-menu--dropdown a,
  .elementor-nav-menu--dropdown .elementor-item,
  .elementor-nav-menu--dropdown .elementor-sub-item {
    color: var(--header-text-on-light) !important;
    font-size: 14px !important;
    padding: 14px 20px !important;
    border-bottom: 1px solid #F0ECE7 !important;
  }

  /* أسهم القوائم الفرعية — بنية */
  .elementor-nav-menu--dropdown .sub-arrow svg path {
    fill: var(--header-primary) !important;
  }

  /* Hover */
  .elementor-nav-menu--dropdown a:hover,
  .elementor-nav-menu--dropdown .elementor-item:hover,
  .elementor-nav-menu--dropdown .elementor-sub-item:hover {
    background-color: var(--header-dropdown-hover) !important;
    color: var(--header-primary) !important;
  }

  /* الصفحة النشطة — لون بني + خط جانبي */
  .elementor-nav-menu--dropdown .current-menu-item > a {
    color: var(--header-primary) !important;
    font-weight: 500 !important;
    border-right: 3px solid var(--header-primary) !important;
  }
}

/* =============================================================
   Neutralize GeneratePress's dynamic button hover/focus override
   GP emits these rules from inc/css-output.php using Customizer
   values; we can't delete them at the source without forking the
   parent theme. Setting both properties to `unset !important`
   removes them from the cascade so each button component's own
   static styles apply on hover too.
   ============================================================= */
button:hover, html input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover, a.button:hover,
button:focus, html input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus, a.button:focus,
a.wp-block-button__link:not(.has-background):active, a.wp-block-button__link:not(.has-background):focus, a.wp-block-button__link:not(.has-background):hover {
  color: unset !important;
  background-color: unset !important;
}