/* Prevent horizontal scroll */
html, body {
    overflow-x: hidden !important;
    max-width: 100% !important;
}

/* ========== Tablet Font Styles ========== */
@media (min-width: 768px) and (max-width: 1024px){
  h1{
    font-size:50px !important;
    line-height:1.2em !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
  }

  h2{
    font-size:50px !important;
    line-height:1.2em !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
  }

  h3{
    font-size:24px !important;
    line-height:30px !important;
    font-weight:300 !important;
    letter-spacing:0 !important;
  }

  h4{
    font-size:18px !important;
    line-height:23px !important;
    font-weight:300 !important;
    letter-spacing:0 !important;
  }

  /* Paragraph and text styles for tablet */
  p, .zptext, .ptag h3, .ptag h3, .ptag h4 span, .ptag h6{
    font-size:18px !important;
    line-height:28px !important;
    font-weight:400 !important;
    letter-spacing:0 !important;
    color:#2e2e2e !important;
  }
}

/* ========== Mobile Font Styles ========== */
@media (max-width: 767px){
  h1{
    font-size:40px !important;
    line-height:1.2em !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
  }

  h2{
    font-size:34px !important;
    line-height:1.2em !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
  }

  h3{
    font-size:20px !important;
    line-height:25px !important;
    font-weight:300 !important;
    letter-spacing:0 !important;
  }

  h4{
    font-size:16px !important;
    line-height:23px !important;
    font-weight:300 !important;
    letter-spacing:0 !important;
  }

  /* Paragraph and text styles for mobile */
  p, .zptext, .ptag h3, .ptag h4, .ptag h4 span, .ptag h6{
	  font-family: 'Montserrat', sans-serif;
      font-size: 16px !important;
      line-height: 26px !important;
      font-weight:400 !important;
      letter-spacing: 0px !important;
      color: #2e2e2e;
  }
}

/* ========== Global Button Border Radius ========== */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
a.zpbutton,
.zpbutton,
.zp-button,
.zp-btn{
  	border-radius:30px !important;
}

/* Adjust button padding for group button widget */
@media (max-width: 768px) {
    .zpelem-buttonicon a, .zpbutton-wrapper {
        padding: 10px 15px !important;
    }
}

/* ========== Header Contact Button Style (Desktop) ========== */
@media (min-width:1025px){
  ul[data-zs-menu-container][data-zp-menu-top] > li:last-of-type > a{
    background:#FF751F !important;
    border-radius:30px !important;
  }
}

/* Make header transparent on tablet and mobile */
@media (max-width:1024px){
    .theme-header-fixed {
   		margin-bottom: -80px !important;
   		z-index: 999999999;
	}

/* Fix header left right spacing on mobile */
  .theme-header{
   		padding-inline-start:30px !important;
    	padding-inline-end:30px !important;
   		background:transparent !important;
  }

/* Fix header logo width on mobile */
  .theme-header .zpcontainer .theme-branding-info .theme-logo-parent a img.mobileLogoAuto {
    height: auto !important; 
    width: 130px !important;
  }

   .theme-navigation-and-icons{
     margin-top: -10px!important; 
    }
}

/* Adjust logo width for laptop */
.theme-logo-parent img{
    width: 150px !important;
    height: auto !important;
}

/* Change hero background image on tablet and mobile */
@media (max-width: 1024px) {
    div.zpslider-img{
        background-image: url("/Media/Backgrounds/hero-bg-img-mobile.png") !important;
        background-position: center top !important;
        background-repeat: no-repeat !important;
        background-size: contain !important;
    }
}

/* Primary hero button style */
.zshero-banner-style-18 .zpbutton-container .zpbutton-type-primary{
    font-family: 'Montserrat', sans-serif !important;
    background-color: #123497 !important;
}

/* Set minimum height for Enterprise Solutions boxes (desktop) */
@media (min-width: 1025px) {
  .enter-box{
	min-height: 305px!important;
  }
}

/* White text utility class */
.c-white, .c-white p{
 color: white !important;   
}

/* Align icon and heading in icon-heading widget */
.ptag .zpicon-container{
 	align-items: self-start !important;   
}

/* Add spacing above icon in icon-heading widget (desktop) */
@media (min-width: 992px) {
    .ptag span {
        margin-top: 3px;
    }
}

/* Make background images cover full section */
.bg-cover div{
    background-size: cover!important;
}

/* Adjust specific row spacing on mobile/tablet */
@media (max-width: 991px) {
    [data-element-id="elm_FR2OSm8adtv0y6tHgr5_Mw"].zprow {
        margin-top: 100px !important;
        height: 300px !important;
    }
}

/* Adjust icon heading text size on mobile */
@media (max-width: 767px) {
    .zpelem-iconheadingtext {
        font-size: 16px !important;
    }
}

/* Add 20px padding utility class */
.p-all{
 padding: 20px!important;
}

/* Align heading to start in specific section */
.t-start h4{
  text-align: start!important;   
}

/* Gradient background utility */
.bg-gradient {
  background: linear-gradient(
    to bottom,
    #ffffff 0%,
    #E4FCFC 30%,
    #E4FCFC 100%,
    rgba(255, 255, 255, 0) 100%
  );
}

/* Reverse gradient background utility */
.bgs-gradient {
  background: linear-gradient(
    to bottom,
    #E4FCFC 0%,
    #fff 30%,
    #fff 100%,
    rgba(255, 255, 255, 0) 100%
  );
}

/* Gradient for last section */
.bg-last-gradient {
  background: linear-gradient(
    to bottom,
    #ffffff 0%,
    #E4FCFC 30%,
    #E4FCFC 88%,
    #FFF 100%,
    rgba(255, 255, 255, 0) 100%
  );
}

/* Position icon on left center of card (e.g., Key Features) */
.i-obsolete {
 	position: absolute;
    left: -40px;
    top: 43%;
}

/* Position icon at top center on plan cards */
.plan-i-obsolete{
    position: absolute;
    top: -40px;
    left: 42%;
}

/* Icon background and border style */
.i-obsolete span, .plan-i-obsolete span{
    background: white;
    border: 5px solid;
}

/* Minimum height for first row of Key Features cards */
@media (min-width: 992px) {
  .key-row-one .m-height {
    min-height: 720px !important;
  }
}

/* Minimum height for second row of Key Features cards */
@media (min-width: 992px) {
  .key-row-two .m-height {
    min-height: 600px !important;
  }
}

/* Style and height for "Ready to Elevate" section */
.f-section, .fc-section {
  height: 670px !important; 
  display: flex !important;
  align-items: end !important;
}

/* Adjust height of "Ready to Elevate" section on mobile */
@media (max-width: 767px) {
  .f-section, .fc-section {
    height: 500px !important;
  }
}

/* Style the "Popular" label on pricing card */
.popular-plan-obsolete{
    position: absolute;
    top: -39px;
    left: 68%;
    padding: 5px 10px!important;
    background: #123497;
    border-radius: 45px;
}

/* FAQ Page Styles */

/* Adjust FAQ question heading size on mobile */
@media (max-width: 767px) {
  .zpaccordion-name {
    font-size: 18px !important;
  }
}

/* Highlight left FAQ column when active */
.faq-left .faq-column:has(.zpaccordion-active) {
  background-color: #ECF8F8 !important;
  transition: all 0.3s ease;
}

/* Highlight right FAQ column when active */
.faq-right .faq-column:has(.zpaccordion-active) {
  background-color: #ECEEF6 !important;
  transition: all 0.3s ease;
}

/* Change FAQ heading color when active */
.faq-column:has(.zpaccordion.zpaccordion-active) .zpaccordion-name {
  color: #000000 !important;
}

/* Change FAQ content color when active */
.faq-column:has(.zpaccordion-active) 
.zpaccordion-active-content * {
  color: #2E2E2E !important;
}

/* Change FAQ icon color when active */
.faq-column:has(.zpaccordion-active) 
.zpaccordion-active .zpaccord-svg-icon-4 path {
  fill: #000000 !important;
}

/* Position FAQ open/close icon */
.zpaccordionicon {
  position: absolute !important;
  right: 20px !important;
}

/* White text utility class */
.p-white p span, .p-white a, .p-white span {
    color:#FFFFFF!important
}

/* Set minimum height and center alignment for FAQ boxes */
.faq-column{
    min-height: 165px!important;
 	display: flex!important;
    align-items: center!important;
}

/* Hide nofollow links */
a[rel="nofollow"] {
    display: none !important;
}

/* Hide specific element by ID */
[data-element-id="elm_B6rLpQ_4--Dx-WWdZjoHZw"] {
    display: none !important;
}

/* Make cards equal height */
.plan-m-height, .m-height, .mv-box, .po-box {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* Force equal height layout */
.zprow-equalCol > .zpelem-col {
  display: flex!important;
}

.zprow-equalCol > .zpelem-col > .zprow {
  flex: 1!important;
  display: flex!important;
}

/* Adjust icon position in "Why Bind Technologies Stands Out" section */
.why-bind-row .i-obsolete{
	top: 35%;
}

#zf_div_33m6CR82PGgnhTmQjkTGaV2eRfYLVWnbI3U6duhcauM{
 display: flex!important;
 justify-content: center!important;
}