@font-face {
  font-family: 'ZonaPro-Bold';
  src: url('../fonts/extra_fonts/ZonaPro-Bold.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

/* Modern Theme Colors */
:root {
  --primary-color: #6366f1;
  --primary-dark: #4f46e5;
  --primary-light: #818cf8;
  --secondary-color: #10b981;
  --secondary-dark: #059669;
  --secondary-light: #34d399;
  --accent-color: #f59e0b;
  --accent-dark: #d97706;
  --accent-light: #fbbf24;
  --dark-color: #1f2937;
  --dark-light: #374151;
  --gray-100: #f3f4f6;
  --gray-200: #e5e7eb;
  --gray-300: #d1d5db;
  --gray-400: #9ca3af;
  --gray-500: #6b7280;
  --gray-600: #4b5563;
  --gray-700: #374151;
  --gray-800: #1f2937;
  --gray-900: #111827;
  --white: #ffffff;
  --black: #000000;
  --gradient-primary: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
  --gradient-secondary: linear-gradient(135deg, var(--secondary-color) 0%, var(--accent-color) 100%);
  --gradient-dark: linear-gradient(135deg, var(--dark-color) 0%, var(--gray-800) 100%);
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

/* --- FONT FAMILY --- */
body, h1, h2, h3, h4, h5, h6, p, .btn, .service-2, .application-card, .project-card {
  font-family: 'Noto Kufi Arabic', 'Tajawal', 'Cairo', 'Montserrat', sans-serif !important;
}

body {
  font-size: 1.12rem;
  background-color: #f3f4f6;
  color: var(--gray-800);
}

body.rtl, [lang="ar"] body {
  font-family: 'Markazi Text', 'Tajawal', 'Montserrat', sans-serif !important;
  font-size: 1.15rem;
  letter-spacing: 0;
}

body.rtl h1, body.rtl h2, body.rtl h3, body.rtl h4, body.rtl h5, body.rtl h6,
[lang="ar"] h1, [lang="ar"] h2, [lang="ar"] h3, [lang="ar"] h4, [lang="ar"] h5, [lang="ar"] h6,
body.rtl .site-nav, body.rtl .btn, body.rtl .service-2, body.rtl .application-card, body.rtl .project-card {
  font-family: 'Changa', 'Montserrat', sans-serif !important;
  font-weight: 700;
  letter-spacing: 0;
}

.site-nav, .site-footer {
  box-shadow: 0 4px 24px 0 rgba(60,60,90,0.08);
  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(12px);
}

.site-footer {
  margin-top: 3rem;
  border-radius: 1.5rem 1.5rem 0 0;
}

.site-blocks-cover, .site-section, .service-2, .application-card, .project-card {
  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(10px);
  box-shadow: 0 6px 32px 0 rgba(60,60,90,0.10);
  border-radius: 1.5rem;
}

.site-blocks-cover {
  background: linear-gradient(135deg, #6366f1 0%, #10b981 100%), url('../images/background.gif') center/cover no-repeat;
  background-blend-mode: overlay;
}

.site-section {
  margin-bottom: 3.5rem;
  padding: 3.5rem 0;
}

.service-2, .application-card, .project-card {
  margin-bottom: 2.5rem;
  padding: 2.8rem 2.2rem;
}

.btn, .btn-primary {
  font-family: 'Montserrat', 'Cairo', sans-serif;
  font-weight: 700;
  font-size: 1.08rem;
  border-radius: 1rem;
  background: linear-gradient(90deg, #6366f1 0%, #10b981 100%);
  box-shadow: 0 2px 12px 0 rgba(60,60,90,0.10);
  transition: background 0.4s, box-shadow 0.3s, transform 0.2s;
  position: relative;
  overflow: hidden;
}
.btn:focus, .btn-primary:focus {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
  box-shadow: 0 0 0 4px #6366f133;
}
.btn:hover, .btn-primary:hover {
  background: linear-gradient(90deg, #10b981 0%, #6366f1 100%);
  transform: translateY(-2px) scale(1.04);
  box-shadow: 0 6px 24px 0 rgba(60,60,90,0.13);
}

/* Accessibility: Focus for links and inputs */
a:focus, button:focus, input:focus, textarea:focus {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
  box-shadow: 0 0 0 4px #6366f133;
}

/* Section titles and spacing */
.section-title h2 {
  font-size: 2.7rem;
  font-weight: 900;
  background: linear-gradient(90deg, #6366f1 0%, #10b981 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 1.5rem;
}
.section-title p {
  font-size: 1.18rem;
  color: var(--gray-600);
  margin-bottom: 2.2rem;
}

/* Modern Typography */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  font-weight: 600;
  line-height: 1.2;
  color: var(--dark-color);
  margin-bottom: 1rem;
}

h1 { font-size: 3.5rem; font-weight: 700; }
h2 { font-size: 2.5rem; font-weight: 600; }
h3 { font-size: 1.75rem; font-weight: 600; }
h4 { font-size: 1.5rem; font-weight: 600; }
h5 { font-size: 1.25rem; font-weight: 500; }
h6 { font-size: 1rem; font-weight: 500; }

p {
  font-family: 'Inter', sans-serif;
  font-size: 1.1rem;
  line-height: 1.7;
  color: var(--gray-600);
  margin-bottom: 1rem;
}

/* Modern Buttons */
.btn {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 1.08rem;
  padding: 0.75rem 1.5rem;
  border-radius: 1rem;
  border: none;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  position: relative;
  overflow: hidden;
}

.btn::before {
  content: '';
    position: absolute;
    top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  transition: left 0.5s;
}

.btn:hover::before {
  left: 100%;
}

.btn-primary {
  background: linear-gradient(90deg, #6366f1 0%, #10b981 100%);
  color: var(--white);
  box-shadow: 0 2px 12px 0 rgba(60,60,90,0.10);
  transition: background 0.4s, box-shadow 0.3s, transform 0.2s;
  position: relative;
  overflow: hidden;
}

.btn-primary:hover {
  background: linear-gradient(90deg, #10b981 0%, #6366f1 100%);
  color: var(--white);
  transform: translateY(-2px) scale(1.04);
  box-shadow: 0 6px 24px 0 rgba(60,60,90,0.13);
}

.btn-outline-white {
  background: transparent;
  color: var(--white);
  border: 2px solid var(--white);
  backdrop-filter: blur(10px);
}

.btn-outline-white:hover {
  background: var(--white);
  color: var(--primary-color);
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}

/* Modern Cards */
.service-2 {
  background: var(--white);
  padding: 2.5rem;
  border-radius: 1.5rem;
  box-shadow: var(--shadow-lg);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  height: 100%;
  border: 1px solid var(--gray-200);
  position: relative;
  overflow: hidden;
}

.service-2::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--gradient-primary);
  transform: scaleX(0);
  transition: transform 0.3s ease;
}

.service-2:hover::before {
  transform: scaleX(1);
}

.service-2:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-xl);
  border-color: var(--primary-light);
}

.service-2 .service-icon {
  width: 80px;
  height: 80px;
  background: var(--gradient-primary);
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
  transition: all 0.3s ease;
  position: relative;
}

.service-2:hover .service-icon {
  transform: scale(1.1) rotate(5deg);
  box-shadow: var(--shadow-lg);
}

.service-2 .service-icon span {
  font-size: 2rem;
  color: var(--white);
}

.service-2 .service-contents h3 {
  font-size: 1.25rem;
  margin-bottom: 1rem;
  color: var(--dark-color);
  font-weight: 600;
}

.service-2 .service-contents p {
  color: var(--gray-600);
  line-height: 1.6;
  margin: 0;
}

/* Application Cards */
.application-card {
  background: var(--white);
  padding: 2.5rem;
  border-radius: 1.5rem;
  box-shadow: var(--shadow-lg);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  height: 100%;
  text-align: center;
  position: relative;
  overflow: hidden;
  border: 1px solid var(--gray-200);
}

.application-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--gradient-secondary);
  transform: scaleX(0);
  transition: transform 0.3s ease;
}

.application-card:hover::before {
  transform: scaleX(1);
}

.application-card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-xl);
  border-color: var(--secondary-light);
}

.application-card .app-icon {
  width: 80px;
  height: 80px;
  background: var(--gradient-secondary);
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 1.5rem;
  transition: all 0.3s ease;
}

.application-card:hover .app-icon {
  transform: scale(1.1) rotate(5deg);
  box-shadow: var(--shadow-lg);
}

.application-card .app-icon span {
  font-size: 2.5rem;
  color: var(--white);
}

.application-card h4 {
  font-size: 1.25rem;
  margin-bottom: 1rem;
  color: var(--dark-color);
  font-weight: 600;
}

.application-card p {
  color: var(--gray-600);
  line-height: 1.6;
  margin: 0;
}

/* Project Cards */
.project-card {
  background: var(--white);
  border-radius: 1.5rem;
  overflow: hidden;
  box-shadow: var(--shadow-lg);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  height: 100%;
  border: 1px solid var(--gray-200);
}

.project-card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-xl);
  border-color: var(--primary-light);
}

.project-card .project-image {
  position: relative;
  overflow: hidden;
  height: 250px;
}

.project-card .project-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.project-card:hover .project-image img {
  transform: scale(1.1);
}

.project-card .project-content {
  padding: 2rem;
}

.project-card .project-content h4 {
  font-size: 1.25rem;
  margin-bottom: 1rem;
  color: var(--dark-color);
  font-weight: 600;
}

.project-card .project-content p {
  color: var(--gray-600);
  line-height: 1.6;
  margin-bottom: 1rem;
}

.project-card .project-category {
  display: inline-block;
  background: var(--gradient-primary);
  color: var(--white);
  padding: 0.5rem 1rem;
  border-radius: 2rem;
  font-size: 0.875rem;
  font-weight: 500;
}

/* Startup Features */
.startup-feature {
  background: var(--white);
  padding: 3rem;
  border-radius: 1.5rem;
  box-shadow: var(--shadow-lg);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  height: 100%;
  text-align: center;
  position: relative;
  overflow: hidden;
  border: 1px solid var(--gray-200);
}

.startup-feature::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 4px;
  background: var(--gradient-primary);
  transition: width 0.3s ease;
}

.startup-feature:hover::after {
  width: 80%;
}

.startup-feature:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-xl);
  border-color: var(--primary-light);
}

.startup-feature .feature-icon {
  width: 90px;
  height: 90px;
  background: var(--gradient-primary);
  border-radius: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 2rem;
  transition: all 0.3s ease;
  position: relative;
}

.startup-feature .feature-icon::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  background: var(--gradient-primary);
  border-radius: 1.5rem;
  opacity: 0.3;
  transition: all 0.3s ease;
}

.startup-feature:hover .feature-icon::before {
  transform: scale(1.2);
  opacity: 0.5;
}

.startup-feature:hover .feature-icon {
  transform: scale(1.1) rotate(5deg);
}

.startup-feature .feature-icon span {
  font-size: 2.5rem;
  color: var(--white);
  z-index: 1;
  position: relative;
}

.startup-feature h3 {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  color: var(--dark-color);
  font-weight: 600;
}

.startup-feature p {
  color: var(--gray-600);
  line-height: 1.8;
  margin: 0;
}

/* Language Switcher */
.lang-switch {
  background: rgba(255,255,255,0.1);
  color: var(--white) !important;
  padding: 0.75rem 1.25rem !important;
  border-radius: 2rem;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid rgba(255,255,255,0.2);
  backdrop-filter: blur(10px);
}

.lang-switch:hover {
  background: rgba(255,255,255,0.2);
  color: var(--white) !important;
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}

/* Enhanced section spacing */
.site-section {
  margin-bottom: 3.5rem;
  padding: 3.5rem 0;
}

.site-section.bg-light {
  background: linear-gradient(135deg, var(--gray-100) 0%, var(--gray-200) 100%);
}

/* Enhanced animations */
@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.application-card,
.project-card,
.startup-feature {
  animation: slideInUp 0.8s ease-out;
}

/* Enhanced responsive design */
@media (max-width: 768px) {
  .application-card,
  .project-card,
  .startup-feature {
    margin-bottom: 2rem;
  }
  
  .application-card .app-icon,
  .startup-feature .feature-icon {
    width: 70px;
    height: 70px;
  }
  
  .application-card .app-icon span,
  .startup-feature .feature-icon span {
    font-size: 2rem;
  }
  
  .project-card .project-image {
    height: 200px;
  }
  
  .project-card .project-content {
    padding: 1.5rem;
  }
  
  h1 { font-size: 2.5rem; }
  h2 { font-size: 2rem; }
  h3 { font-size: 1.5rem; }
}

/* Enhanced hover effects for all cards */
.service-2:hover,
.application-card:hover,
.project-card:hover,
.startup-feature:hover {
  transform: translateY(-8px) scale(1.02);
}

/* Enhanced section titles */
.section-title h2 {
  font-size: 2.7rem;
  font-weight: 900;
  background: linear-gradient(90deg, #6366f1 0%, #10b981 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 1.5rem;
}

.section-title h2:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  border-radius: 2px;
}

.section-title p {
  font-size: 1.18rem;
  color: var(--gray-600);
  margin-bottom: 2.2rem;
}

/* Enhanced count numbers */
.count-numbers {
  padding: 5rem 0;
}

.count-numbers .number {
  font-size: 3.5rem;
  font-weight: 700;
  color: var(--white);
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
  display: block;
  margin-bottom: 0.5rem;
}

.count-numbers span {
  font-size: 1.2rem;
  color: var(--white);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Enhanced footer for multilingual support */
.site-footer .lang-switch {
  background: var(--dark-color);
  color: var(--white) !important;
  padding: 0.75rem 1.25rem !important;
  border-radius: 2rem;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid var(--dark-color);
}

.site-footer .lang-switch:hover {
  background: var(--primary-color);
  color: var(--white) !important;
  transform: translateY(-2px);
}

/* Enhanced mobile menu for multilingual support */
@media (max-width: 991.98px) {
  .lang-switch {
    margin-top: 1rem;
    display: inline-block;
  }
}

/* Enhanced accessibility */
.application-card:focus,
.project-card:focus,
.startup-feature:focus {
  outline: 2px solid var(--primary-color);
  outline-offset: 2px;
}

/* Enhanced loading states */
.application-card,
.project-card,
.startup-feature {
  opacity: 0;
  animation: slideInUp 0.8s ease-out forwards;
}

.application-card:nth-child(1) { animation-delay: 0.1s; }
.application-card:nth-child(2) { animation-delay: 0.2s; }
.application-card:nth-child(3) { animation-delay: 0.3s; }
.application-card:nth-child(4) { animation-delay: 0.4s; }

.project-card:nth-child(1) { animation-delay: 0.1s; }
.project-card:nth-child(2) { animation-delay: 0.2s; }

.startup-feature:nth-child(1) { animation-delay: 0.1s; }
.startup-feature:nth-child(2) { animation-delay: 0.2s; }

/* Original Navigation Styles */
.site-nav {
  position: absolute;
  top: 0;
  left: 30px;
  right: 30px;
  z-index: 99;
}

.menu-absolute {
  position: absolute;
  right: 15px;
}

.site-nav {
  padding-top: 20px;
  padding-bottom: 20px;
}

  .site-nav h1 {
    margin: 0;
    padding: 0;
  font-size: 24px;
}

  .site-nav .site-navigation .site-menu {
  margin-bottom: 0;
}

    .site-nav .site-navigation .site-menu > li {
  display: inline-block;
}

      .site-nav .site-navigation .site-menu > li > a {
        font-size: 14px;
        padding: 10px 15px;
        color: rgba(255, 255, 255, 0.7);
        display: inline-block;
  text-decoration: none !important;
}

        .site-nav .site-navigation .site-menu > li > a:hover {
  color: #ffffff;
}

      .site-nav .site-navigation .site-menu > li.cta-button a {
        padding: 6px 20px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        color: #ffffff;
  border-radius: 30px;
}

        .site-nav .site-navigation .site-menu > li.cta-button a:hover {
          color: #ffffff;
          background: #298c20;
  border-color: #298c20;
}

      .site-nav .site-navigation .site-menu > li.active > a {
  color: #ffffff;
}

    .site-nav .site-navigation .site-menu .has-children {
  position: relative;
}

      .site-nav .site-navigation .site-menu .has-children > a {
        position: relative;
  padding-right: 20px;
}

        .site-nav .site-navigation .site-menu .has-children > a:before {
          position: absolute;
          content: "\e313";
          font-size: 14px;
          top: 50%;
          right: 0;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-family: 'icomoon';
}

      .site-nav .site-navigation .site-menu .has-children .dropdown {
        visibility: hidden;
        opacity: 0;
        top: 100%;
        z-index: 999;
        position: absolute;
        text-align: left;
        -webkit-box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
        box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
        padding: 20px 0;
        margin-top: 20px;
        margin-left: 0px;
        background: #ffffff;
        -webkit-transition: 0.2s 0s;
        -o-transition: 0.2s 0s;
  transition: 0.2s 0s;
}

        .site-nav .site-navigation .site-menu .has-children .dropdown.arrow-top {
  position: absolute;
}

          .site-nav .site-navigation .site-menu .has-children .dropdown.arrow-top:before {
            display: none;
            bottom: 100%;
            left: 20%;
            border: solid transparent;
            content: " ";
            height: 0;
            width: 0;
            position: absolute;
  pointer-events: none;
}

          .site-nav .site-navigation .site-menu .has-children .dropdown.arrow-top:before {
            display: none;
            border-color: rgba(136, 183, 213, 0);
            border-bottom-color: #ffffff;
            border-width: 10px;
  margin-left: -10px;
}

        .site-nav .site-navigation .site-menu .has-children .dropdown a {
          font-size: 14px;
          text-transform: none;
          letter-spacing: normal;
          -webkit-transition: 0s all;
          -o-transition: 0s all;
          transition: 0s all;
  color: #000000;
}

        .site-nav .site-navigation .site-menu .has-children .dropdown .active {
  color: #298c20 !important;
}

        .site-nav .site-navigation .site-menu .has-children .dropdown > li {
          list-style: none;
          padding: 0;
          margin: 0;
  min-width: 180px;
}

          .site-nav .site-navigation .site-menu .has-children .dropdown > li.active > a {
  color: #298c20 !important;
}

          .site-nav .site-navigation .site-menu .has-children .dropdown > li > a {
            padding: 5px 20px;
  display: block;
}

            .site-nav .site-navigation .site-menu .has-children .dropdown > li > a:hover {
  color: #298c20;
}

          .site-nav .site-navigation .site-menu .has-children .dropdown > li.has-children > a:before {
            content: "\e315";
  right: 20px;
}

.site-nav .site-navigation .site-menu .has-children .dropdown > li.has-children > .dropdown,
.site-nav .site-navigation .site-menu .has-children .dropdown > li.has-children > ul {
            left: 100%;
  top: 0;
}

.site-nav .site-navigation .site-menu .has-children .dropdown > li.has-children > .dropdown li a:hover,
.site-nav .site-navigation .site-menu .has-children .dropdown > li.has-children > ul li a:hover {
  color: #298c20;
}

.site-nav .site-navigation .site-menu .has-children .dropdown > li.has-children:hover > a,
.site-nav .site-navigation .site-menu .has-children .dropdown > li.has-children:active > a,
.site-nav .site-navigation .site-menu .has-children .dropdown > li.has-children:focus > a {
  color: #298c20;
}

.site-nav .site-navigation .site-menu .has-children:hover > a,
.site-nav .site-navigation .site-menu .has-children:focus > a,
.site-nav .site-navigation .site-menu .has-children:active > a {
  color: #ffffff;
}

.site-nav .site-navigation .site-menu .has-children:hover,
.site-nav .site-navigation .site-menu .has-children:focus,
.site-nav .site-navigation .site-menu .has-children:active {
  cursor: pointer;
}

.site-nav .site-navigation .site-menu .has-children:hover > .dropdown,
.site-nav .site-navigation .site-menu .has-children:focus > .dropdown,
.site-nav .site-navigation .site-menu .has-children:active > .dropdown {
          -webkit-transition-delay: 0s;
          -o-transition-delay: 0s;
          transition-delay: 0s;
          margin-top: 0px;
          visibility: visible;
  opacity: 1;
}

/* Mobile Menu */
.site-mobile-menu-close {
  display: block;
  position: relative;
  height: 30px;
  width: 30px;
  z-index: 99;
  cursor: pointer;
  top: -20px;
}

  .site-mobile-menu-close > span {
    cursor: pointer;
    display: block;
    position: absolute;
    height: 30px;
  width: 30px;
}

.site-mobile-menu-close > span:before,
.site-mobile-menu-close > span:after {
      position: absolute;
      content: "";
      width: 2px;
      height: 30px;
  background: #000000;
}

    .site-mobile-menu-close > span:before {
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

    .site-mobile-menu-close > span:after {
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.site-mobile-menu {
  width: 300px;
  position: fixed;
  right: 0;
  z-index: 2000;
  padding-top: 20px;
  background: #ffffff;
  height: calc(100vh);
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
  transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
}

  .site-mobile-menu .site-nav-wrap {
    padding: 0;
    margin: 0;
    list-style: none;
  position: relative;
}

    .site-mobile-menu .site-nav-wrap a {
      padding: 5px 20px;
      display: block;
      position: relative;
  color: #000000;
}

      .site-mobile-menu .site-nav-wrap a:hover {
  color: #298c20;
}

    .site-mobile-menu .site-nav-wrap li {
      position: relative;
  display: block;
}

      .site-mobile-menu .site-nav-wrap li.active > a {
  color: #298c20;
}

    .site-mobile-menu .site-nav-wrap .arrow-collapse {
      position: absolute;
      right: 0px;
      top: 0px;
      z-index: 20;
      width: 36px;
      height: 36px;
      text-align: center;
      cursor: pointer;
      border-radius: 50%;
  border: 1px solid #f8f9fa;
}

      .site-mobile-menu .site-nav-wrap .arrow-collapse:before {
        font-size: 14px;
        z-index: 20;
        font-family: "icomoon";
        content: "\e313";
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%) rotate(-180deg);
        -ms-transform: translate(-50%, -50%) rotate(-180deg);
        transform: translate(-50%, -50%) rotate(-180deg);
        -webkit-transition: .3s all ease;
        -o-transition: .3s all ease;
  transition: .3s all ease;
}

      .site-mobile-menu .site-nav-wrap .arrow-collapse.collapsed:before {
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

    .site-mobile-menu .site-nav-wrap > li {
      display: block;
      position: relative;
      float: left;
  width: 100%;
}

      .site-mobile-menu .site-nav-wrap > li > a {
        padding-left: 20px;
  font-size: 14px;
}

      .site-mobile-menu .site-nav-wrap > li > ul {
        padding: 0;
        margin: 0;
  list-style: none;
}

        .site-mobile-menu .site-nav-wrap > li > ul > li {
  display: block;
}

          .site-mobile-menu .site-nav-wrap > li > ul > li > a {
            padding-left: 40px;
  font-size: 14px;
}

          .site-mobile-menu .site-nav-wrap > li > ul > li > ul {
            padding: 0;
  margin: 0;
}

            .site-mobile-menu .site-nav-wrap > li > ul > li > ul > li {
  display: block;
}

              .site-mobile-menu .site-nav-wrap > li > ul > li > ul > li > a {
                font-size: 14px;
  padding-left: 60px;
}

/* Sticky Navigation */
.sticky-wrapper {
  position: absolute;
  z-index: 100;
  width: 100%;
}

  .sticky-wrapper .site-navbar {
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
  transition: .3s all ease;
}

  .sticky-wrapper .site-navbar .site-menu-toggle {
  color: #000000;
}

  .sticky-wrapper .site-navbar .site-logo a {
  color: #000000;
}

  .sticky-wrapper .site-navbar .site-menu > li > a {
  color: rgba(0, 0, 0, 0.8) !important;
}

.sticky-wrapper .site-navbar .site-menu > li > a:hover,
.sticky-wrapper .site-navbar .site-menu > li > a.active {
  color: #000000 !important;
}

.sticky-wrapper.is-sticky .burger:before,
.sticky-wrapper.is-sticky .burger span,
.sticky-wrapper.is-sticky .burger:after {
    background: #000000;
    -webkit-transition: .0s all ease;
    -o-transition: .0s all ease;
  transition: .0s all ease;
}

  .sticky-wrapper.is-sticky .site-navbar {
    background: #000000;
    border-bottom: 1px solid transparent;
    -webkit-box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.1);
}

    .sticky-wrapper.is-sticky .site-navbar .site-logo a {
  color: #000000 !important;
}

    .sticky-wrapper.is-sticky .site-navbar .site-menu > li > a {
  color: #000000 !important;
}

.sticky-wrapper.is-sticky .site-navbar .site-menu > li > a:hover,
.sticky-wrapper.is-sticky .site-navbar .site-menu > li > a.active {
  color: #298c20 !important;
}

    .sticky-wrapper.is-sticky .site-navbar .site-menu > li.active a {
  color: #298c20 !important;
}

  .sticky-wrapper .shrink {
    padding-top: 0px !important;
  padding-bottom: 0px !important;
}

/* Burger Menu */
.burger {
  width: 28px;
  height: 32px;
  cursor: pointer;
  position: relative;
}

.burger:before,
.burger span,
.burger:after {
  width: 100%;
  height: 2px;
  display: block;
  background: #000;
  border-radius: 2px;
  position: absolute;
  opacity: 1;
}

.burger.light:before,
.burger.light span,
.burger.light:after {
  background-color: #ffffff;
}

.burger:before,
.burger:after {
  -webkit-transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
  transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
  transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
  transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
  content: "";
}

.burger:before {
  top: 4px;
}

.burger span {
  top: 15px;
}

.burger:after {
  top: 26px;
}

/* Hover */
.burger:hover:before {
  top: 7px;
}

.burger:hover:after {
  top: 23px;
}

/* Click */
.burger.active:before {
  top: 15px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.burger.active:after {
  top: 15px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.burger.active span {
  opacity: 0;
}

/* Modern Hero Section */
.site-blocks-cover {
  background: linear-gradient(135deg, #6366f1 0%, #10b981 100%), url('../images/background.gif') center/cover no-repeat;
  background-blend-mode: overlay;
  position: relative;
}

.site-blocks-cover::before {
  content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.8) 0%, rgba(16, 185, 129, 0.8) 100%);
  z-index: 1;
}

.site-blocks-cover .container {
      position: relative;
  z-index: 2;
}

/* Modern Footer */
.site-footer {
  background: var(--dark-color);
  color: var(--gray-300);
  margin-top: 3rem;
  border-radius: 1.5rem 1.5rem 0 0;
}

.site-footer h3 {
  color: var(--white);
  font-weight: 600;
}

.site-footer .links li a {
  color: var(--gray-300);
  transition: color 0.3s ease;
}

.site-footer .links li a:hover {
  color: var(--primary-light);
}

/* Modern Form Styling */
.form-control {
  font-family: 'Inter', sans-serif;
  border: 2px solid var(--gray-200);
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  transition: all 0.3s ease;
}

.form-control:focus {
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
}

/* Modern Icons */
.icon-wrap {
  background: var(--gradient-primary);
  border-radius: 1rem;
  padding: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.icon-wrap span {
  font-size: 2rem;
  color: var(--white);
}

/* Custom icons for services - Professional 2D Icons */
.icon-robot:before { content: "🔧"; }
.icon-precision:before { content: "🎯"; }
.icon-innovation:before { content: "💡"; }
.icon-local:before { content: "🏠"; }
.icon-steel:before { content: "🔨"; }
.icon-stainless:before { content: "⚡"; }
.icon-galvanized:before { content: "🛡️"; }
.icon-construction:before { content: "🏗️"; }
.icon-manufacturing:before { content: "🏭"; }
.icon-oil-gas:before { content: "⛽"; }
.icon-automotive:before { content: "🚗"; }
.icon-cog:before { content: "⚙️"; }
.icon-quality:before { content: "✅"; }

/* Modern Background Patterns */
.bg-light {
  background: linear-gradient(135deg, var(--gray-100) 0%, var(--gray-200) 100%);
}

.bg-primary {
  background: var(--gradient-primary) !important;
}

/* Fix white-on-white text issue */
.site-section.bg-light {
  background: var(--gray-100) !important;
}

.site-section.bg-light h2,
.site-section.bg-light h3,
.site-section.bg-light h4,
.site-section.bg-light h5,
.site-section.bg-light h6 {
  color: var(--dark-color) !important;
}

.site-section.bg-light p {
  color: var(--gray-700) !important;
}

/* Fix Our Expertise section colors */
.hero h1,
.hero h2,
.hero h3,
.hero h4,
.hero h5,
.hero h6 {
  color: var(--dark-color) !important;
}

.hero p {
  color: var(--gray-700) !important;
}

/* Ensure feature section text is readable */
.feature h3 {
  color: var(--dark-color) !important;
}

.feature p {
  color: var(--gray-700) !important;
}

/* Enhanced Typography for better readability */
.hero h1 {
  font-size: 3.5rem;
    font-weight: 700;
  color: var(--white);
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

.hero p {
  font-size: 1.25rem;
  color: var(--white);
  text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}

/* Modern spacing utilities */
.mb-4 { margin-bottom: 1.5rem !important; }
.mb-5 { margin-bottom: 3rem !important; }
.mt-4 { margin-top: 1.5rem !important; }
.mt-5 { margin-top: 3rem !important; }

/* Enhanced button animations */
.btn {
    position: relative;
  overflow: hidden;
}

.btn::after {
  content: '';
    position: absolute;
    top: 50%;
    left: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.2);
          border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: width 0.6s, height 0.6s;
}

.btn:hover::after {
  width: 300px;
  height: 300px;
}

/* Modern card hover effects */
.service-2,
.application-card,
.project-card,
.startup-feature {
  position: relative;
  overflow: hidden;
}

.service-2::after,
.application-card::after,
.project-card::after,
.startup-feature::after {
  content: '';
  position: absolute;
      top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);
  transition: left 0.5s;
}

.service-2:hover::after,
.application-card:hover::after,
.project-card:hover::after,
.startup-feature:hover::after {
  left: 100%;
}

/* Mobile Menu Contact Section */
.mobile-menu-contact {
  padding: 2rem;
  text-align: center;
  border-top: 1px solid var(--gray-200);
  margin-top: 2rem;
}

.mobile-menu-contact .btn {
  margin: 0.5rem;
  display: inline-block;
}

.mobile-menu-contact .lang-switch {
  margin: 0.5rem;
  display: inline-block;
  background: var(--gray-200);
  color: var(--dark-color) !important;
  padding: 0.75rem 1.25rem !important;
  border-radius: 2rem;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid var(--gray-300);
  text-decoration: none;
}

.mobile-menu-contact .lang-switch:hover {
  background: var(--primary-color);
  color: var(--white) !important;
  transform: translateY(-2px);
    }

body.rtl .site-nav {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

body:not(.rtl) .site-nav {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

.rtl .site-nav, .rtl .site-menu, .rtl .site-menu a {
  font-family: 'Changa', 'Markazi Text', 'Tajawal', sans-serif !important;
  font-weight: 800 !important;
  font-size: 1.15rem;
  letter-spacing: 0;
}

