@media (min-width: 1200px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl {
    max-width: 1230px;
  }
}

@media (max-width: 991px) {
  .navbar-toggler {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 5px;
    width: 46px;
    height: 46px;
    border: 1px solid #e2ded4;
    border-radius: 10px;
    background: #fff;
    padding: 0 12px;
  }
  .navbar-toggler:focus {
    box-shadow: none;
  }
  .hamburger-line {
    display: block;
    height: 2.5px;
    border-radius: 3px;
    background: #022b63;
    transition: width 0.25s ease;
  }
  .hamburger-line:nth-child(1) { width: 12px; }
  .hamburger-line:nth-child(2) { width: 18px; }
  .hamburger-line:nth-child(3) { width: 24px; }
  .navbar-toggler:hover .hamburger-line { width: 24px; }

  .collapse.navbar-collapse.navmenucustom,
  .collapse:not(.show).navbar-collapse.navmenucustom,
  .navbar-collapse.navmenucustom {
    position: fixed !important;
    top: 0 !important;
    left: 0;
    bottom: 0 !important;
    height: 100vh !important;
    min-height: 100vh !important;
    width: 100%;
    max-width: 100%;
    background: #fff;
    z-index: 1050;
    padding: 20px 18px 30px;
    transform: translateX(-105%);
    transition: transform 0.35s ease;
    overflow-y: auto;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    display: block !important;
    visibility: hidden;
    margin-top: 0;
    border-radius: 0;
  }
  .collapse.navbar-collapse.navmenucustom.menu-open,
  .collapse.navbar-collapse.navmenucustom.show,
  .navbar-collapse.navmenucustom.menu-open,
  .navbar-collapse.navmenucustom.show {
    transform: translateX(0) !important;
    visibility: visible !important;
  }

  .mobile-backdrop {
    position: fixed;
    inset: 0;
    background: transparent;
    z-index: 1040;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
  }
  .mobile-backdrop.show {
    opacity: 1;
    visibility: visible;
  }

  .msb-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 16px;
    margin-bottom: 8px;
    border-bottom: 1px solid #eee;
  }
  .msb-head img {
    height: 34px;
  }
  .msb-close {
    width: 40px;
    height: 40px;
    border: 1px solid #e2ded4;
    border-radius: 10px;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #022b63;
  }

  .navmenucustom .navbar-nav {
    flex-direction: column;
    gap: 2px;
    width: 100%;
    align-items: stretch;
  }
  .navmenucustom .nav-item {
    width: 100%;
    border-bottom: 1px solid #f0eee8;
  }
  .navmenucustom .nav-item .nav-link {
    padding: 14px 6px !important;
    font-size: 16px;
    color: #111827 !important;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
  .navmenucustom .nav-link.dropdown-toggle::after {
    content: "\ea4a";
    font-family: "boxicons";
    border: none !important;
    font-size: 20px;
    transition: transform 0.3s;
    margin: 0;
  }
  .megamenuitem.msb-open > .nav-link.dropdown-toggle::after {
    transform: rotate(180deg);
  }

  .navmenucustom .megamenu {
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    box-shadow: none !important;
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease;
  }
  .megamenuitem.msb-open .megamenu {
    max-height: 2200px;
    padding: 4px 0 12px !important;
  }
  .megamenu::before {
    display: none !important;
  }
  .navmenucustom .megagrid,
  .navmenucustom .megagrid.twocol {
    grid-template-columns: 1fr !important;
    gap: 0px !important;
  }
  .navmenucustom .megalink {
    padding: 11px 10px !important;
    margin: 0 !important;
  }
  .navmenucustom .megalink h5 {
    font-size: 14.5px !important;
  }
  .navmenucustom .megalink p {
    display: none;
  }
  .navmenucustom .megaicon {
    width: 34px !important;
    height: 34px !important;
    font-size: 18px !important;
    flex: 0 0 34px !important;
  }
  .navmenucustom .headerbtnwrap {
    margin-top: 16px;
  }
  .navmenucustom .headerbtnwrap .mainbtn,
  .navmenucustom .headerbtnwrap a {
    width: 100%;
    text-align: center;
  }
  body.msb-lock {
    overflow: hidden;
  }
}

@media (max-width: 767px) {
  .demo_popupcontent h4 {
    font-size: 22px;
  }
  .demo_popupcontent {
    padding: 20px 20px;
  }
  .formwrapper {
    padding: 18px 20px 20px 20px;
  }
  .banner_content h1 {
    font-size: 26px;
    margin-bottom: 18px;
  }
  .banner_content {
    padding-top: 0px;
  }
  .hero_sectionbtnwrap {
    margin-top: 40px;
  }
  .hero_sectionbtnwrap a:last-child {
    margin-left: 7px;
  }
  .banner_img_wrapper img.bannermainimg {
    margin-top: 30px;
  }
  .mainsectionheading {
    width: 100%;
  }
  .mainsectionheading h2 {
    font-size: 22px;
  }
  .aboutbreakdown {
    grid-row-gap: 15px;
    grid-template-columns: 1fr;
    grid-auto-columns: 1fr;
  }
  .companycardinner h2 {
    font-size: 22px;
  }
  .starrating {
    align-items: start;
  }
  .trustedstarwrapper ul {
    display: none;
  }
  .mainsectionheadingcustom h2 {
    font-size: 22px;
  }
  .processimg {
    margin-top: 20px;
  }
  .vaanipoints li div h5 {
    font-size: 18px;
    margin-bottom: 2px;
  }
  .testimonialvideo {
    margin-top: 20px;
  }
  .contactsectionwrapperbg {
    padding: 60px 20px;
  }
  .contactsectionwrapper h2 {
    font-size: 22px;
  }
  .footersubscribe {
    flex-direction: column;
    gap: 20px;
  }
  .footersubscribe h3 {
    font-size: 22px;
    width: 100%;
  }
  .subsribefield {
    width: 100%;
  }
  .footerlinks {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px 15px;
  }
  .footerlinks div h4 {
    font-size: 20px;
  }
  .footerlinks div ul li a {
    font-size: 12px;
    margin-bottom: 6px;
  }
  .footercontactstrip {
    gap: unset;
    border-radius: 12px;
    padding: 20px 15px;
    margin-top: 20px;
  }
  .footercontactstrip .fcs-col {
    border-bottom: dashed 1px #9f9f9f;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .footercontactstrip .fcs-col:last-child {
    border-bottom: none;
    padding-bottom: 0px;
    margin-top: 0px;
  }
  .footercopyright p {
    font-size: 14px;
  }
  .footercopyright {
    align-items: start;
    gap: 7px;
    flex-direction: column;
  }
  .footercompliance {
    display: none;
  }
  .megagridwrapper {
    grid-template-columns: 1fr;
  }
  .innerbanner {
    padding: 44px 0 44px;
    background-image: linear-gradient(45deg, #f6f6f1c7, #f7f7f278), url(../img/innerhero.avif);
  }
  .innerbanner h1 {
    font-size: 26px;
  }
  .innerbanner h5 {
    margin-bottom: 12px;
  }
  .innerbanner .crumb {
    margin-bottom: 12px;
  }
  .mb-100 {
    margin-bottom: 70px;
  }
  .ab-stats,
  .ab-supcards {
    grid-template-columns: 1fr 1fr;
    gap: 15px;
  }
  .ab-stat .num {
    font-size: 22px;
  }
  .ab-stat {
    padding: 20px 15px;
  }
  .ab-scard {
    padding: 20px 15px;
  }
  .ab-mvcard {
    padding: 20px 15px;
  }
  .cmp-step h3 {
    font-family: "PlusJakartaSans-Medium";
    font-size: 22px;
  }
  .cmp-band,
  .cmp-cta {
    padding: 20px 15px;
  }
  .cmp-cta h2 {
    font-size: 22px;
    margin-bottom: 7px;
  }
  .cmp-band h3 {
    font-family: "PlusJakartaSans-Medium";
    font-size: 22px;
  }
  .ct-form h3 {
    font-family: "PlusJakartaSans-Medium";
    font-size: 22px;
  }
  .smp-highlight h2 {
    font-family: "PlusJakartaSans-Medium";
    font-size: 22px;
  }
  .smp-highlight,
  .smp-adv,
  .smp-tabcard {
    padding: 20px 15px;
  }
  .lms-typecard {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 20px 20px;
  }
  .lms-whonum {
    font-family: "PlusJakartaSans-Medium";
    font-size: 22px;
  }
  .oas-fnum {
    font-size: 22px;
    width: 46px;
    height: 46px;
  }
  .oas-frow {
    padding: 20px;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .oas-ben {
    grid-template-columns: 1fr;
  }
  .lib-mod {
    padding: 20px;
  }
  .lib-bcard {
    padding: 20px;
  }
  .lib-fcard {
    padding: 20px;
  }
  .vms-step {
    padding: 20px;
  }
  .vms-rcard {
    padding: 20px;
  }
  .ims-bcard {
    padding: 20px;
  }
  .ims-stat {
    padding: 20px;
  }
  .ims-mod {
    padding: 20px;
  }
  .ims-wcard {
    padding: 20px;
  }
  .ims-cta {
    padding: 20px;
  }
  .ims-cta h2 {
    font-family: "PlusJakartaSans-Medium";
    font-size: 22px;
  }
  .exm-ccard {
    padding: 20px;
  }
  .exm-bit {
    padding: 20px;
  }
  .sma-qcard {
    padding: 20px;
  }
  .sma-band h2 {
    font-size: 22px;
  }
  .sma-band {
    padding: 20px;
  }
  .cms-fcard {
    padding: 20px;
  }
  .cms-hcard {
    padding: 20px;
  }
  .adm-fcard {
    padding: 20px;
  }
  .adm-whycard {
    padding: 20px;
  }
  .cbse-rep {
    grid-template-columns: 1fr 1fr;
    gap: 15px;
  }
  .cbse-rcard {
    padding: 20px;
    text-align: center;
  }
  .cbse-rcard h4 {
    font-size: 14px;
  }
  .svc-card {
    padding: 20px;
  }
  .svc-stat {
    padding: 20px;
    gap: 15px;
    text-align: center;
  }
  .svc-stat h5 {
    font-family: "DMSans-medium";
    font-size: 14px;
    color: var(--ink);
    margin: 0;
    line-height: 1.4;
  }
  .svc-cta {
    padding: 20px;
  }
  .svc-cta h2 {
    font-family: "PlusJakartaSans-Medium";
    font-size: 22px;
  }
  .svc-bandcard {
    padding: 20px;
  }
  .cr-cta {
    padding: 20px;
  }
  .cr-cta h2 {
    font-size: 22px;
  }
  .loclist-card {
    padding: 20px;
  }
  .loc-cta {
    padding: 20px;
  }
  .loc-cta h2 {
    font-size: 22px;
  }
  .blogcard {
    flex-direction: column-reverse;
    margin: 7px 0px;
  }
  .latestblogimg {
    max-width: 100% !important;
    height: 210px !important;
  }
  .blog-toolbar {
    align-items: stretch;
  }
  .blog-search {
    max-width: 100%;
    flex: unset;
  }
  .latestblogheading h2 {
    font-size: 18px;
}
.latestbloguser {
    padding-top: 15px;
    margin-top: 15px;
}
.navmenucustom .megalink {
        align-items: center;
    }
    .servicelistwrapper {
    grid-template-columns: 1fr;
    gap: 30px;
}
.servicelistright{
  display: none;
}
.servicelistleft ul{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.servicelistleft h2 {
    font-size: 22px;
    font-family: 'PlusJakartaSans-Medium';
}
.servicelistleft h4 {
    font-size: 18px;
    margin-top: 7px;
}
.integrationcard {
    width: auto;
    padding: 15px 15px;
        height: 120px;
}
.integrationcard ul li{
  height: auto;
}
.integrationcard h4 {
    font-size: 15px;
    margin-top: 13px;
}
.servicecardbox h2{
  font-size: 22px;
}
.servicecardbox h2 br{
  display: none;
}
.servicecardbox h4 {
    font-size: 18px;
}
.mainheader .primarybtn{
  background: #022b63;
  color: #fff;
}
.testiimg h2 {
    font-size: 20px;
    font-family: "PlusJakartaSans-Medium";
    margin-top: 13px;
}
.pol-toc{
  display: none;
}
.companycardinner{
  height: auto;
}
.starrating h2{
  font-size: 20px;
}
.servicecardbox{
  height: auto;
}
.testimonialcard{
  height: auto;
}
.awardcard{
  height: auto;
}
.ja-submitrow{ flex-direction:column; align-items:flex-start; gap:10px; }
.ja-step-dot{ font-size:12px; }
  .ja-steps{ gap:6px; width: max-content; }
  .demo_popupcontent{
    display: none;
  }
}

/* erp content pages responsive */
@media(max-width:991px){
  .erp-intro{ grid-template-columns:1fr; gap:28px; }
  .erp-cards{ grid-template-columns:repeat(2,1fr); }
  .erp-highlights{ grid-template-columns:1fr; }
  .erp-cta{ padding:38px 28px; }
}
@media(max-width:575px){
  .erp-cards{ grid-template-columns:1fr; }
  .erp-cta{ padding:28px 20px; }
  .erp-cta h2{ font-size:24px; }
}
