/* Extracted from index.html */
:root{
      --primary:#1E40AF;
      --accent:#0EA5E9;
      --dark:#0F172A;
      --muted:#475569;
      --transition: 800ms cubic-bezier(0.22, 1, 0.36, 1);
    }

    body{
      font-family:'Inter', sans-serif;
      color: var(--dark);
      background:#ffffff;
      line-height:1.7;
      overflow-x:hidden;
      transition: background-color var(--transition), color var(--transition);
    }
    a{ text-decoration:none!important; }

    section{
      padding:110px 0;
      position:relative;
      z-index:1;
    }

    section[data-theme="light"]{ color:var(--dark); }
    section[data-theme="dark"]{ color:#fff; }
    section[data-theme="dark"] .text-secondary{ color:rgba(255,255,255,.75)!important; }

    /* NAVBAR */
    .navbar{
      padding:20px 0;
      background:rgba(255,255,255,.9);
      backdrop-filter:blur(14px);
      transition:.35s;
      border-bottom:1px solid rgba(0,0,0,.06);
    }
    .navbar.scrolled{
      padding:12px 0;
      box-shadow:0 10px 30px rgba(0,0,0,.08);
    }
    .nav-link{
      font-weight:600;
      color:#0f172a;
    }

    /* === ONLY ADDITION (Navbar Mega Menu UI) === */
    .mega-menu{
      width: 520px;
      border-radius: 18px;
      overflow: hidden;
    }
    .mega-inner{
      padding: 14px;
    }
    .mega-title{
      font-weight: 900;
      color: var(--dark);
      font-size: .9rem;
      letter-spacing: .02em;
      margin-bottom: 10px;
    }
    .mega-item{
      display:flex;
      gap:12px;
      align-items:flex-start;
      padding:12px 12px;
      border-radius:14px;
      transition:.2s ease;
      color: var(--dark);
    }
    .mega-item:hover{
      background: rgba(14,165,233,.08);
    }
    .mega-ico{
      width:42px;height:42px;
      border-radius:12px;
      display:flex;
      align-items:center;
      justify-content:center;
      color: var(--primary);
      background: linear-gradient(135deg,#E0F2FE,#DBEAFE);
      flex: 0 0 auto;
      font-size: 18px;
    }
    .mega-name{
      font-weight: 800;
      line-height: 1.2;
      margin-bottom: 2px;
    }
    .mega-desc{
      font-size: .86rem;
      color: rgba(71,85,105,.9);
      line-height: 1.25;
      margin: 0;
    }
    .animate-dropdown{
      animation: dropdownFade .22s ease-out;
    }
    @keyframes dropdownFade{
      from{ opacity:0; transform: translateY(10px); }
      to{ opacity:1; transform: translateY(0); }
    }

    /* ✅ Desktop: open towards LEFT + hover open */
    @media (min-width: 992px){
      .navbar .dropdown-menu.mega-menu{
        left: auto !important;
        right: 0 !important;
        margin-top: 6px;
      }
      .navbar .dropdown:hover > .dropdown-menu{
        display: block;
      }
    }

    /* ✅ Mobile: full width inside collapsed navbar */
    @media (max-width: 991px){
      .mega-menu{ width: 100%; }
      .navbar .dropdown-menu.mega-menu{
        position: static !important;
        float: none;
        left: 0 !important;
        right: 0 !important;
        margin-top: 10px;
        box-shadow: none !important;
      }
    }

    /* Contact highlight (replaces consultation button) */
    .nav-contact{
      background: linear-gradient(135deg, rgba(30,64,175,.12), rgba(14,165,233,.15));
      border-radius: 999px;
      padding: 10px 18px !important;
      font-weight: 800 !important;
    }
    .nav-contact:hover{
      background: linear-gradient(135deg, rgba(30,64,175,.18), rgba(14,165,233,.22));
    }

    /* HERO */
    .hero-section{
      min-height:92vh;
      display:flex;
      align-items:center;
      text-align:center;
      color:#fff;
      background:
        linear-gradient(135deg, rgba(15,23,42,.9), rgba(30,64,175,.85)),
        url('../images/home_hero_image.jpg') center/cover fixed;
    }

    .btn-primary-custom{
      background:linear-gradient(135deg,var(--primary),var(--accent));
      color:#fff!important;
      padding:14px 28px;
      border-radius:14px;
      font-weight:800;
      border:none;
    }

    .btn-ghost{
      background:rgba(255,255,255,.15);
      color:#fff!important;
      padding:14px 28px;
      border-radius:14px;
      font-weight:800;
      border:1px solid rgba(255,255,255,.25);
    }

    /* SERVICES */
    .service-card{
      background:#fff;
      border-radius:24px;
      padding:38px 32px;
      border:1px solid rgba(0,0,0,.06);
      transition:.35s;
      height:100%;
    }
    .service-card:hover{ transform:translateY(-10px); }

    .service-icon{
      width:60px;height:60px;
      background:#E0F2FE;
      color:var(--primary);
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:24px;
      margin-bottom:18px;
    }

    /* === FULL WIDTH STATS (SINGLE GRADIENT) === */
    #stats{
      background:linear-gradient(135deg,#F0F9FF,#ECFEFF);
    }

    .stat-value{
      font-size:2.4rem;
      font-weight:900;
    }

    /* === FULL WIDTH CTA (SINGLE GRADIENT) === */
    #cta{
      background:linear-gradient(135deg,#1E40AF,#0EA5E9);
    }

    /* FOOTER */
    footer{
      background:#0F172A;
      color:#94A3B8;
      padding:90px 0 40px;
    }
    footer h5{ color:#fff;font-weight:800; }
    footer a{ color:#94A3B8;display:block;margin-bottom:10px; }


/* Our Solutions section: make it visually distinct from What We Do */
.solutions-section{
  background: #F1F5FF;
}
.solutions-section .solutions-panel{
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 18px 50px rgba(2,6,23,.06);
}
.solutions-section .service-card{
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(2,6,23,.08);
}
.solutions-section .service-card:hover{
  transform: translateY(-4px);
}
.learn-more-btn{
  margin-top: 14px;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(14,165,233,.10);
  text-decoration: none;
}
.learn-more-btn i{
  transition: transform .2s ease;
}
.learn-more-btn:hover i{
  transform: translateX(3px);
}
