/* ========== COLORS ========== */
:root{
  --blue-dark:#0b2a4a;
  --blue:#0d4fa3;
  --red:#e53935;
}

/* ========== GLOBAL ========== */
body{
  font-family:'Inter',sans-serif;
}

/* ========== TOP BAR ========== */
.top-bar{
  background:var(--blue-dark);
  color:#fff;
  font-size:14px;
  padding:7px 0;
}

.top-bar a{
  color:#fff;
  text-decoration:none;
  margin-right:18px;
  opacity:.9;
}

.top-bar a:hover{
  color:var(--red);
  opacity:1;
}

.top-bar i{
  color:var(--red);
}

/* ========== MAIN NAVBAR ========== */
.main-navbar{
  background:#fff;
  padding:14px 0;
  transition:.3s;
}

.main-navbar.scrolled{
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

/* Logo */
.navbar-brand img{
  height:44px;
}

/* Menu */
.navbar-nav .nav-link{
  color:var(--blue-dark);
  font-weight:600;
  margin:0 10px;
  position:relative;
}

/* Underline animation */
.navbar-nav .nav-link::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:0;
  height:2px;
  background:var(--red);
  transition:.3s;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active{
  color:var(--red);
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after{
  width:100%;
}

/* CTA */
.btn-talk{
  background:linear-gradient(135deg,var(--red),#ff6f61);
  color:#fff;
  border-radius:30px;
  padding:10px 22px;
  font-weight:600;
  border:none;
}

.btn-talk:hover{
  opacity:.9;
  color:#fff;
}

/* Mobile */
.navbar-toggler{
  border:none;
}

/* ===== SOCIAL ICONS ===== */
.social-icons a{
  font-size:16px;
  margin-left:14px;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  transition:.3s;
}

.social-icons{
  display:flex;
  gap:14px;
}

.social-icons a{
  font-size:18px;
  transition: all .3s ease;
}

/* REAL BRAND COLORS */
.social-icons .ig i{
  color:#E1306C; /* Instagram */
}

.social-icons .in i{
  color:#0A66C2; /* LinkedIn */
}

.social-icons .wa i{
  color:#25D366; /* WhatsApp */
}

/* Hover animation */
.social-icons a:hover{
  transform: translateY(-2px) scale(1.12);
}


/* ===============================
   MOBILE FIX – HIDE TOP BAR
   =============================== */
@media (max-width: 991px) {
  .top-bar {
    display: none !important;
  }
}

/* =========================
   NAVBAR LOAD ANIMATION
========================= */
.main-navbar{
  animation: navSlideDown .6s ease forwards;
}

@keyframes navSlideDown{
  from{
    opacity:0;
    transform: translateY(-15px);
  }
  to{
    opacity:1;
    transform: translateY(0);
  }
}

/* =========================
   NAVBAR SCROLL EFFECT
========================= */
.main-navbar.scrolled{
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  backdrop-filter: blur(6px);
  background:rgba(255,255,255,.95);
}

/* =========================
   DESKTOP MENU HOVER
========================= */
.navbar-nav .nav-link{
  position:relative;
}

.navbar-nav .nav-link::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:0;
  height:2px;
  background:#e53935;
  transition:.3s;
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after{
  width:100%;
}

/* =========================
   CTA BUTTON PULSE
========================= */
@keyframes pulseGlow{
  0%{ box-shadow:0 0 0 rgba(229,57,53,0.6); }
  70%{ box-shadow:0 0 25px rgba(229,57,53,0); }
  100%{ box-shadow:0 0 0 rgba(229,57,53,0); }
}

.btn-talk{
  animation:pulseGlow 2.5s infinite;
}

/* =========================
   MOBILE MODAL ENTRY
========================= */
.modal.show .modal-content{
  animation: modalFadeScale .4s ease;
}

@keyframes modalFadeScale{
  from{
    opacity:0;
    transform: scale(.96);
  }
  to{
    opacity:1;
    transform: scale(1);
  }
}

#mobileMenuModal .nav-link::after{
  display: none !important;
}

/* Ensure CTA has no border/line */
#mobileMenuModal .btn-talk{
  border: none !important;
  box-shadow: 0 12px 35px rgba(229,57,53,.35);
}

/* =========================
   MOBILE MENU ITEM STAGGER
========================= */
.mobile-nav .nav-item{
  opacity:0;
  transform: translateY(12px);
  animation: menuItemUp .5s forwards;
}

.mobile-nav .nav-item:nth-child(1){ animation-delay:.05s }
.mobile-nav .nav-item:nth-child(2){ animation-delay:.1s }
.mobile-nav .nav-item:nth-child(3){ animation-delay:.15s }
.mobile-nav .nav-item:nth-child(4){ animation-delay:.2s }
.mobile-nav .nav-item:nth-child(5){ animation-delay:.25s }

@keyframes menuItemUp{
  to{
    opacity:1;
    transform: translateY(0);
  }
}

/* =========================
   SOCIAL ICON POP
========================= */
.social-icons a{
  animation: iconPop .6s ease both;
}

@keyframes iconPop{
  0%{ transform: scale(.8); opacity:0 }
  100%{ transform: scale(1); opacity:1 }
}



/* about */
/* ================= ABOUT MODERN ================= */
.about-modern{
  overflow:hidden;
}

/* ===== SECTION TITLE ===== */
.section-title{
  font-weight:700;
  color:#002855;
}
.section-title span{
  color:#e63946;
}
/* =========================
   CTA SHINE EFFECT (DESKTOP)
========================= */
@media (min-width: 992px) {

  .btn-talk{
    position: relative;
    overflow: hidden;
  }

  .btn-talk::before{
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 120%;
    height: 100%;
    background: linear-gradient(
      120deg,
      transparent,
      rgba(255,255,255,.55),
      transparent
    );
    transition: all .6s ease;
  }

  .btn-talk:hover::before{
    left: 120%;
  }
}


/* ===== ABOUT IMAGE SHAPE ===== */
/* Experience badge */
.experience-tag{
  position:absolute;
  bottom:20px;
  left:20px;
  background:#002855; /* brand blue */
  color:#fff;
  padding:18px 20px;
  border-radius:16px;
  text-align:center;
  box-shadow:0 10px 30px rgba(0,0,0,.2);
}

.experience-tag h3{
  margin:0;
  font-size:32px;
  font-weight:700;
}

.experience-tag span{
  font-size:14px;
  line-height:1.3;
}


/* ===== ABOUT SECTION ===== */
.about-modern{
  overflow:hidden;
}

/* Small top label */
.about-label{
  font-weight:600;
  letter-spacing:2px;
  color:#e63946;
  margin-bottom:10px;
}

/* Big professional heading */
.about-title{
  font-size:42px;
  /* font-weight:800; */
  color:#002855;
}

.about-title span{
  color:#e63946;
}

/* Bullet points */
.about-points{
  list-style:none;
  padding:0;
}

.about-points li{
  margin-bottom:10px;
  font-weight:500;
  color:#002855;
}

.about-points i{
  color:#e63946;
  margin-right:8px;
}

/* ===== ANIMATIONS ===== */
.animate-img{
  animation:floatImg 6s ease-in-out infinite;
}

.animate-content{
  animation:fadeUp 1s ease forwards;
}

@keyframes floatImg{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-12px); }
}

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(30px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* ===== MOBILE FIX ===== */
@media(max-width:768px){
  .about-content{
    text-align:center;
  }

  .about-title{
    font-size:32px;
  }

  .about-points{
    text-align:left;
    display:inline-block;
  }

  .about-image-wrap img{
    max-width:300px;
  }
}

/* why choose us  */
.why-choose-section {
  position: relative;
  padding: 90px 0;

  background-image: url("../images/image.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.why-choose-section .overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(5, 45, 95, 0.82),
    rgba(5, 95, 181, 0.78)
  );
}

/* ===== TITLE ===== */
.why-title {
  font-size: 2.6rem;
  font-weight: 700;
  color: #fff;
  animation: fadeDown 1s ease forwards;
}

.why-title span {
  color: #ff4d4d;
}

.why-subtitle {
  color: #e1e9f2;
  font-size: 1.05rem;
  margin-top: 10px;
  animation: fadeUp 1.2s ease forwards;
}

/* ===== CARD ===== */
.why-card {
  background: #ffffff;
  border-radius: 22px;
  padding: 40px 28px;
  text-align: center;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.15);
  transition: all 0.45s ease;
  position: relative;
  overflow: hidden;
  animation: zoomFade 0.9s ease forwards;
}

.why-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #0077cc, #00c8d2);
  opacity: 0;
  transition: 0.4s;
  z-index: 0;
}

.why-card:hover::before {
  opacity: 0.08;
}

.why-card:hover {
  transform: translateY(-14px) scale(1.02);
}

.why-card h5 {
  margin-top: 20px;
  font-weight: 600;
  color: #0b2c52;
  position: relative;
  z-index: 1;
}

.why-card p {
  font-size: 0.95rem;
  color: #555;
  margin-top: 10px;
  position: relative;
  z-index: 1;
}

/* ===== ICON ===== */
.icon-box {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  margin: 0 auto;
  color: #fff;
  position: relative;
  z-index: 1;
  animation: floatIcon 3s ease-in-out infinite;
}

.icon-box.red {
  background: linear-gradient(135deg, #ff4d4d, #ff7a7a);
}

.icon-box.blue {
  background: linear-gradient(135deg, #0077cc, #00c8d2);
}

/* ===== ANIMATIONS ===== */
@keyframes fadeDown {
  from {
    opacity: 0;
    transform: translateY(-30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes zoomFade {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes floatIcon {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
}

/* ===== MOBILE ===== */
@media (max-width: 768px) {
  .why-title {
    font-size: 2rem;
  }
}

/* Read More */
.read-btn {
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--red);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.read-btn:hover {
  color: var(--blue);
}

/* Button */
.services-modern .btn-primary {
  background: var(--red);
  border: none;
  padding: 12px 30px;
  border-radius: 40px;
  font-weight: 600;
}

.services-modern .btn-primary:hover {
  background: var(--red);
}

/* ===== CTA ===== */
.cta-section {
  background: var(--blue-dark);
  color: #fff;
}
.text-red {
  color: var(--red);
}

.text-blue {
  color: var(--blue);
}

/* About page banner */
