.main-banner{
  background:
    url('assets/images/banner-rings-overlay.png') center/cover no-repeat,
    #000080 !important;
}


/* Footer brand fix */
footer{
  background-color: #000080 !important;  /* beats #7a6ad8 */
  background: #000080 !important;        /* just in case shorthand used */
}

/* (optional) left-bottom decorative image jo purple lag sakta hai */
footer::before{
  opacity: .6;                            /* ya */
  /* display: none;  <- agar design se hatana ho to uncomment */
}


@media (max-width: 991px){
  .header-area .main-nav.menu-open #primary-menu,
  .header-area .main-nav.menu-open #primary-menu *{
    color:#111827 !important;
    -webkit-text-fill-color:#111827 !important;
    opacity:1 !important; text-shadow:none !important; filter:none !important;
    mix-blend-mode:normal !important;
  }
}


/* ✅ All hero slides identical like item-2 */
.main-banner .item{
  min-height: 640px;                    /* same height for all */
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
}

/* set the same image (ya alag path de sakte ho per slide) */
.main-banner .item-1{
  background-image: url('../images/banner-item-01.jpg') !important;
}
.main-banner .item-2{
  background-image: url('../images/banner-item-02.jpg') !important;
}
.main-banner .item-3{
  background-image: url('../images/banner-item-03.jpg') !important;
}

/* kill any per-item overlay/pseudo that may shrink/offset bg */
.main-banner .item::before,
.main-banner .item::after{
  background: none !important;
  content: none !important;
}

/* some templates scale item-2 specifically — neutralize that */
.main-banner .item-2,
.owl-item .item-2{
  transform: none !important;
}


/* brand.css */
.main-banner .item{
  background-image: image-set(
    url('../images/banner-item-02.webp') type('image/webp'),
    url('../images/banner-item-02.jpg')  type('image/jpeg')
  );
}
@media (max-width: 768px){
  .main-banner .item{
    background-image: image-set(
      url('../images/banner-item-02-mobile.webp') type('image/webp'),
      url('../images/banner-item-02-mobile.jpg')  type('image/jpeg')
    );
  }
}


.main-banner .item{ height: clamp(560px, 92vh, 1024px); min-height:560px; }





/* Hide hero overlay text only on the banner slide with built-in text */
.main-banner .item.no-overlay .header-text,
.main-banner .item.no-overlay .caption,
.main-banner .item.no-overlay h1,
.main-banner .item.no-overlay p { display:none !important; }

/* Make sure the banner image/card looks clean */
.main-banner .item.no-overlay img{
  width:100%; height:100%; object-fit:cover; border-radius:24px;
}
.main-banner .item.no-overlay{
  border-radius:24px; overflow:hidden; /* rounded corners */
}

/* Remove extra space above hero */
.main-banner{ 
  padding: clamp(20px, 3vw, 40px) 0 clamp(40px, 4vw, 64px) !important;  /* was ~170px top */
}

/* Make sure nothing else is pushing it down */
.header-area, .header-area .main-nav{ margin-bottom: 0 !important; }
.main-banner .item{ margin-top: 0 !important; }   /* just in case template added any top margin */

@media (min-width: 992px){
  .main-banner{ padding-top: 48px !important; }   /* desktop */
}
@media (max-width: 991px){
  .main-banner{ padding-top: 28px !important; }   /* tablet/mobile */
}







/* Clean card (no theme ties) */
#download-card.download-card{
  background:#f2f2ff;
  border-radius:28px;
  padding:32px 24px;
  display:flex;
  flex-direction:column;
  align-items:center;   /* centers heading + badge */
  gap:16px;
  position:relative;
  overflow:hidden;
}

/* Safety: kill any stray blobs/images injected by theme inside this card */
#download-card::before,
#download-card::after{ content:none !important; display:none !important; background:none !important; }

/* Title */
#download-card h3{ margin:0; text-align:center; }

/* Badge centered */
#download-card .store-badge{ display:inline-flex; float:none !important; position:static !important; }
#download-card .store-badge img{ display:block; width:250px; height:auto; margin:0 auto; }







html { scroll-behavior: smooth; } /* optional */

.scrolltop{
  position: fixed; right: 16px; bottom: 16px;
  width: 48px; height: 48px; border: 0; border-radius: 9999px;
  background:#061a78; color:#fff; display:grid; place-items:center;
  box-shadow: 0 8px 20px rgba(0,0,0,.2);
  cursor:pointer; z-index:4000;
  opacity:0; visibility:hidden; transform: translateY(10px);
  transition: opacity .2s, transform .2s, visibility 0s linear .2s;
}
.scrolltop.show{
  opacity:1; visibility:visible; transform: translateY(0);
  transition: opacity .2s, transform .2s, visibility 0s;
}
.scrolltop svg{ width:22px; height:22px; fill:#fff; pointer-events:none; }
@media (hover:hover){ .scrolltop:hover{ filter:brightness(1.08); } }
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  .scrolltop{ transition:none; }
}




/* FEATURES – smaller icon circle */
#features .service-item{ margin-top: 70px; }                 /* was 95 (=190/2) */
#features .service-item .icon{
  width: 140px; height: 140px; line-height: 140px;           /* was 190 */
  top: -70px;                                                /* was -95 (= -diameter/2) */
  border-radius: 50%;                                        /* keep as circle */
}
/* icon image scale (optional: ~45% of circle) */
#features .service-item .icon img{ max-width: 64px; }        /* ~0.45 * 140 */

/* mobile (<992px) */
@media (max-width: 992px){
  #features .service-item{ margin-top: 60px; }
  #features .service-item .icon{
    width: 100px; height: 100px; line-height: 100px; top:-60px;
  }
  #features .service-item .icon img{ max-width: 54px; }
}

/* if circle chhota karne ke baad right side gap zyada lage: */
#features .service-item .main-content{ margin-right: 60px; }  /* was 80 */




/* Fix big gap above/below copyright text */
footer p{
  line-height: 24px !important;   /* or 1.6; use what looks best */
  margin: 25px 0 14px !important;  /* tighten spacing under the icons */
}




footer .col-lg-12:first-child{ padding-top: 12px; }  /* social list wala column */






/* 404 badge sizing: keep aspect ratio, no stretching */
.error-hero .gp-badge {
  height: 56px;            /* desktop size */
  width: auto;             /* maintain proportion */
  aspect-ratio: 646 / 250; /* official Google Play badge ratio */
  display: inline-block;
}

/* mobile tweak */
@media (max-width: 576px) {
  .error-hero .gp-badge { height: 48px; }
}

/* guard against any global rules that make images 100% wide */
.error-hero .buttons img { max-width: none; }
