/* =========================
   GLOBAL THEME
========================= */

body{
  background:#0b1620;
  color:#e7ecf3;
  font-family: Inter, system-ui, Segoe UI, Roboto;
}

.navbar{
  background:#0f1f33;
  border-bottom:1px solid #1f2f45;
}

footer{
  background:#07111b;
}

.text-muted{
  color:#b5c2d4 !important;
}

/* =========================
   COMMON UI BLOCKS
========================= */

.section-dark{
  background:#0f1f33;
  border-radius:20px;
  border:1px solid #1f2f45;
}

.card-dark{
  background:#111f32;
  border-radius:18px;
  border:1px solid #24344e;
  transition:.25s;
}

.card-dark:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 40px rgba(0,0,0,.45);
}

.badge-soft{
  background:#193b6b;
  color:#cfe6ff;
  border-radius:20px;
  padding:6px 12px;
}

/* =========================
   BUTTONS
========================= */

.btn-primary{
  background:#2c8bff;
  border:none;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
}

.btn-outline-light{
  border-color:#8fbafc;
  color:#cfe2ff;
}

.btn-outline-light:hover{
  background:#8fbafc;
  color:#083266;
}

/* =========================
   FLOATING BUTTONS
========================= */

.btn-top{
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: none;
  background:#0d6efd;
  color:#fff;
  font-size:18px;
  cursor:pointer;
  display:none;
  box-shadow:0 6px 14px rgba(0,0,0,.35);
  z-index:999;
  transition:.25s;
}

.btn-top:hover{
  transform: translateY(-3px);
}

.whatsapp-btn{
  position: fixed;
  right: 18px;
  bottom: 78px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background:#25D366;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 6px 14px rgba(0,0,0,.35);
  z-index:9999;
  text-decoration:none;
  transition:.25s;
}

.whatsapp-btn svg{
  width:22px;
  height:22px;
  fill:#fff;
}

/* =========================
   HERO SLIDER
========================= */

.hero-slider{
  color:#fff;
}

.hero-slider .carousel-item{
  padding:80px 15px;
}

.hero-slider .container{
  max-width:900px;     /* ⭐ KEY FIX */
  margin:0 auto;
  text-align:center;
}

/* Headline */
.hero-slider h1{
  font-weight:700;
  margin-bottom:18px;
  text-shadow:0 2px 8px rgba(0,0,0,.35);
}


/* CTA */
.hero-slider .btn-primary{
  margin-top:8px;
}

/* =========================
   HERO LOGO CARD (IMPORTANT)
========================= */

.hero-logo-card{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  background:rgba(255,255,255,.92);
  background-color:#ffffff !important;  
  padding:20px 28px;
  border-radius:18px;

  box-shadow:
    0 12px 30px rgba(0,0,0,.35),
    inset 0 0 0 1px rgba(255,255,255,.55);

  margin-bottom:28px;
  
  /* ✅ FIX-3: Mobile repaint stability */
  transform: translateZ(0);
  backface-visibility: hidden;
}

.hero-logo{
  max-height:95px;
  width:auto;
  display:block;
}

/* =========================
   SLIDE BACKGROUNDS
========================= */

.bg-ace10{
  background:linear-gradient(135deg,#0f2027,#203a43,#2c5364);
}

.bg-erp{
  background:linear-gradient(135deg,#134e5e,#1f4037);
}

.bg-pos{
  background:linear-gradient(135deg,#3a1c71,#d76d77,#ffaf7b);
}

.bg-backup{
  background:linear-gradient(135deg,#232526,#414345);
}

/* =========================
   CAROUSEL ANIMATION
========================= */

.carousel-item{
  transition:transform .8s ease-in-out;
}

/* =========================
   MOBILE RESPONSIVE
========================= */

@media (max-width:768px){

  .hero-slider .carousel-item{
    padding:65px 15px;
  }

  .hero-slider .container{
    max-width:100%;
    padding-left:20px;
    padding-right:20px;
  }

  .hero-logo-card{
    padding:22px 30px;
    border-radius:14px;
  }

  .hero-logo{
    max-height:60px;
  }

  .hero-slider h1{
    font-size:22px;
  }
}

/* HERO FEATURES – SIMPLE CENTER LIST */

.hero-slider ul{
  list-style: none;
  padding: 0;
  margin: 12px auto 26px;
  max-width: 600px;
  text-align: center;
}

.hero-slider ul li{
  position: relative;
  margin-bottom: 6px;

  font-size: 15px;
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: .2px;
  color: #e7ecf3;
}

@media (max-width:768px){
  .hero-slider ul{
    max-width: 100%;
  }

  .hero-slider ul li{
    font-size: 14px;
  }
}

/* CAROUSEL ARROWS – FINAL */

.carousel-control-prev,
.carousel-control-next{
  width: 54px;
  height: 54px;
  opacity: 1;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.25);
  border-radius: 50%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon{
  background-size: 100% 100%;
  filter: drop-shadow(0 4px 10px rgba(0,0,0,0.6));
}

.carousel-control-prev:hover,
.carousel-control-next:hover{
  background: rgba(0,0,0,0.45);
}

/* Mobile arrows + text safe spacing + download version fix */
@media (max-width:768px){

  /* Arrow size & vertical position */
  .carousel-control-prev,
  .carousel-control-next{
    width: 44px;
    height: 44px;
    top: 60%;
  }

  .carousel-control-prev{
    left: 6px;
  }

  .carousel-control-next{
    right: 6px;
  }

  .hero-slider ul{
    padding-left: 36px;
    padding-right: 36px;
  }

  .hero-slider ul li{
    font-size: 14px;
    line-height: 1.4;
  }

  /* ✅ DOWNLOAD PAGE – VERSION INFO (MOBILE ONLY) */
  .version-row{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }

  .version-row .badge-soft{
    font-size: 13px;
    padding: 6px 10px;
    white-space: nowrap;
  }
}

/* FIX CAROUSEL POSITION CONTEXT */
.hero-slider .carousel{
  position: relative;   /* 👈 MOST IMPORTANT */
}

/* Ensure arrows use absolute positioning */
.carousel-control-prev,
.carousel-control-next{
  position: absolute;
}

/* FINAL HERO HEIGHT – NO JUMP GUARANTEE */

.hero-slider{
  position: relative;
}

/* FORCE HERO HEIGHT */

.hero-slider .carousel-inner{
  height: 600px;        /* 🔒 FIXED HEIGHT */
}

.hero-slider .carousel-item{
  height: 600px;
}

/* =========================
   HERO INDICATORS – MOBILE HIDE (FINAL)
   ========================= */
@media (max-width:768px){
  .hero-slider .carousel-indicators{
    display: none !important;
  }
}

/* FESTIVAL GREETING STRIP – HERO MATCH */
.festival-strip{
  background: #0f2642;   /* 👈 hero tone pick */
  color: #e7ecf3;
  padding: 8px 12px;
  font-size: 15px;
  text-align: center;

  border-top: 1px solid rgba(255,255,255,0.08);
  border-bottom: 1px solid rgba(0,0,0,0.45);
}
