/* ===========================
   Basic Utility Styles
   =========================== */

/* Flexbox */
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.flex-1 {
  flex: 1;
}
/* Flex Direction */
.flex-row {
  flex-direction: row;
}
.flex-column {
  flex-direction: column;
}

/* Position */
.position-relative {
  position: relative;
}
.position-absolute {
  position: absolute;
}

/* Justify Content */
.justify-start {
  justify-content: flex-start;
}
.justify-center {
  justify-content: center;
}
.justify-end {
  justify-content: flex-end;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}
.justify-evenly {
  justify-content: space-evenly;
}

/* Align Items */
.items-start {
  align-items: flex-start;
}
.items-center {
  align-items: center;
}
.items-end {
  align-items: flex-end;
}
.items-stretch {
  align-items: stretch;
}

/* Align Self */
.self-start {
  align-self: flex-start;
}
.self-center {
  align-self: center;
}
.self-end {
  align-self: flex-end;
}
.self-stretch {
  align-self: stretch;
}
.flex-shrink-0 {
  flex-shrink: 0;
}

/* Text Alignment */
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-justify {
  text-align: justify;
}

/* Font Weights */
.font-weight-100 {
  font-weight: 100;
}
.font-weight-200 {
  font-weight: 200;
}
.font-weight-300 {
  font-weight: 300;
}
.font-weight-400 {
  font-weight: 400;
}
.font-weight-500 {
  font-weight: 500;
}
.font-weight-600 {
  font-weight: 600;
}
.font-weight-700 {
  font-weight: 700;
}
.font-weight-800 {
  font-weight: 800;
}
.font-weight-900 {
  font-weight: 900;
}

/* Margin (example: m-10 = margin: 10px) */
.m-0 {
  margin: 0 !important;
}
.m-5 {
  margin: 5px;
}
.m-10 {
  margin: 10px;
}
.m-15 {
  margin: 15px;
}
.m-20 {
  margin: 20px;
}
.m-auto-right-left {
  margin-left: auto;
  margin-right: auto;
}
/* Padding */
.p-0 {
  padding: 0;
}
.p-5 {
  padding: 5px;
}
.p-10 {
  padding: 10px;
}
.p-15 {
  padding: 15px;
}
.p-20 {
  padding: 20px;
}
.p-30 {
  padding: 30px;
}
.p-40 {
  padding: 40px;
}
.pb-10 {
  padding-bottom: 10px;
}
.pb-20 {
  padding-bottom: 20px;
}
.pb-50 {
  padding-bottom: 50px;
}
.pt-10 {
  padding-top: 10px;
}
.pt-20 {
  padding-top: 20px;
}
.px-30 {
  padding-left: 30px;
  padding-right: 30px;
}
.py-30 {
  padding-top: 30px;
  padding-bottom: 30px;
}
.py-100 {
  padding-top: 100px;
  padding-bottom: 100px;
}
.py-50 {
  padding-top: 50px;
  padding-bottom: 50px;
}
.px-50 {
  padding-left: 50px;
  padding-right: 50px;
}
.pl-30 {
  padding-left: 30px;
}
/* Width & Height */
.w-100 {
  width: 100%;
}
.h-100 {
  height: 100%;
}
.w-max-content {
  width: max-content;
}

/* Display */
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.hidden {
  display: none;
}

.container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 20px !important;
}
.color-white {
  color: #fff;
}
.color-blue {
  color: #3d5588;
}
.bg-color-blue {
  background-color: #3d5588 !important;
}

.bg-color-white {
  background-color: #fff;
}

.bg-color-gray {
  background-color: #f5f8ff;
}

.color-dark-font {
  color: #494949;
}
.radius-20 {
  border-radius: 20px;
}
.radius-8 {
  border-radius: 8px;
}
.gap-10 {
  gap: 10px;
}
.gap-20 {
  gap: 20px;
}
.gap-40 {
  gap: 40px;
}
.gap-80 {
  gap: 80px;
}

.font-24 {
  font-size: 1.5rem !important;
  line-height: 2rem !important;
}
a {
  text-decoration: none;
  display: flex;
  align-items: center;
}
.border-dark-gray {
  border: 1px solid rgba(73, 73, 73, 0.25);
}

.underline-gap {
  text-decoration: underline;
  text-underline-offset: 8px;
  line-height: 2rem;
}

.image-boxed img {
  max-width: 100%;
  object-fit: contain;
}

.accordion {
  max-width: 700px;
  margin: 20px auto;
  font-family: Arial, sans-serif;
}
.accordion-item {
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 10px;
  border: 1px solid #eee;
  background: #fff;
}
.accordion-header {
  padding: 15px 20px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  transition: background 0.3s;
}
.accordion-header svg {
  transition: transform 0.3s;
}
.accordion-header.active svg {
  transform: rotate(180deg);
}
.accordion-content {
  max-height: 0;
  overflow: hidden;
  padding: 0 20px;
  font-size: 14px;
  line-height: 30px;
  transition: max-height 0.3s ease, padding 0.3s ease;
}
.accordion-content.open {
  padding: 15px 20px;
  max-height: 500px; /* enough space to show content */
}

/* ===========================
   Custom Styles
   =========================== */
body {
  font-family: "Inter", sans-serif;
}

.top-section {
  background-image: url("../assets/background.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.content-section {
  min-height: 80vh;
  gap: 20px;
}
.content-section h1 {
  max-width: 780px;
}
.content-section p {
  max-width: 680px;
  font-size: 1rem;
  line-height: 1.7rem;
}
h1 {
  font-size: 4rem;
  line-height: 4.5rem;
}

h4 {
  font-size: 1.2rem;
  line-height: 1.8rem;
}
h3 {
  font-size: 3.12rem;
  line-height: 3.6rem;
}

.section-heading {
  max-width: 645px;
}

/* Button Base */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 18px 24px;
  border: none;
  border-radius: 66px;
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  width: auto;
  max-width: max-content;
}

/* Optional: size variants */
.btn-sm {
  padding: 8px 16px;
  font-size: 14px;
}
.btn-lg {
  padding: 16px 32px;
  font-size: 18px;
}
.box {
  flex: 1;
  max-width: 33.333%;
}
.box .icon-wrap {
  width: 68px;
  height: 70px;
  margin-bottom: 10px;
  border-radius: 10px;
}

.box p {
  font-size: 1rem;
  line-height: 1.5rem;
}

.box .height-fx-200 {
  height: 200px;
}

.third-section .box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  max-width: 100%;
}

.third-section .image-wrapper {
  padding: 0px 30px;
  border-radius: 20px 20px 0px 0px;
}

.two-boxes {
  max-width: 50%;
}

.fourth-pr {
  font-size: 1.125rem !important;
  line-height: 1.5rem !important;
}
.fourth-section .box img {
  max-width: 530px;
  object-fit: contain;
}
.fourth-section .box .font-24 {
  max-width: 430px;
}
.fourth-section .box p {
  max-width: 520px;
}

.four-box-row .box {
  flex: 1;
  max-width: 25%;
}
.four-box-row .box .icon-wrap {
  width: 48px;
  height: 48px;
}
.box img {
  max-width: 100%;
  object-fit: contain;
}

.sixth-section .two-boxes .btn {
  max-width: 210px;
  padding: 10px 20px;
}

.sixth-section .two-boxes img {
  max-width: 480px;
}

.seventh-section .main-heading {
  max-width: 600px;
}
.seventh-section .main-heading p.font-weight-400 {
  font-size: 1.125rem;
}

/* minimal: remove default bullets */
.list-no-style {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* icon-list: items align with an SVG instead of the dot */
.icon-list li {
  display: flex;
  align-items: center;
  gap: 5px;
  padding-left: 0;
}

/* pseudo-element shows the SVG icon */
.icon-list li::before {
  content: "";
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../assets/Vector-checkmark.svg");
}

.eleventh-section li {
  margin-bottom: 8px;
}

.eleventh-section a {
  text-decoration: underline !important;
}

.twelfth-section .content-wrap {
  max-width: 840px;
}

.twelfth-section .content-wrap p {
  line-height: 1.6rem;
  font-size: 1rem;
}

.below-line > .box {
  margin-top: -20px;
}

.line-img {
  bottom: -20px;
  position: relative;
}

.trusted-section.fifteenth-section {
  background-image: url("../assets/trusted-back.png");
}

.trusted-desc {
  max-width: 630px;
  line-height: 1.6rem;
}

.form-section .accordion .active {
  background-color: #3d5588 !important;
  color: #fff !important;
}

.form-section .input-field {
  background: transparent;
  border: 1px solid #fff;
  padding: 12px 15px;
  border-radius: 6px;
  color: #fff; /* white text */
  font-size: 14px;
}

.form-section .input-field::placeholder {
  color: rgba(255, 255, 255, 0.8); /* softer placeholder */
}

.form-section button {
  display: inline-block;
  text-align: center;
  cursor: pointer;
  border: none;
  font-size: 1rem;
}

.ready-arrow.position-absolute {
  right: -15px;
  top: -10px;
}

.image-wrapper.ready-arrow.position-absolute img {
  width: 225px;
}
.flex-row .input-field {
  flex: 1 1 48%;
}

.slider-heading {
  font-size: 1.8rem;
  line-height: 2.5rem;
}

.accordion-header.color-dark-font svg {
  background-color: #494949;
  border-radius: 50%;
  padding: 5px;
  color: #fff;
}

.accordion-header.active.bg-color-blue.color-white svg {
  background-color: #efefef;
  border-radius: 50%;
  padding: 5px;
  color: #3d5588;
}

/* Remove slick's default dot */
/* .slick-dots li button:before {
  content: none;
} */
.slider-section {
  overflow: hidden;
}

/* Dots container */
.slick-dots {
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 4px;
  margin-top: 20px;
}

/* Base dot style */
.slick-dots li button {
  font-size: 0; /* hide text */
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #c5ccd8; /* light gray */
  border: none;
  outline: none;
  transition: all 0.3s ease;
  cursor: pointer;
}
.slick-dots li button:before {
  font-size: 10px !important;
}

/* Active dot = pill */
.slick-dots li.slick-active button {
  width: 40px;
  border-radius: 20px;
  background-color: #3d5588; /* blue */
}
.slick-dots li.slick-active button:before {
  content: none;
}
li.slick-active {
  width: 40px !important;
  top: 5px;
}

.third-section span {
  cursor: pointer;
}
body p.fourth-pr {
  line-height: 32px !important;
}

.box-30 {
  max-width: 30%;
}
.box-70 {
  max-width: 70%;
}
.box p {
  font-size: 18px !important;
  line-height: 32px !important;
}
.form-section input {
  height: 34px !important;
}
.slick-dots button {
  height: 10px !important;
}
.slick-center > .flex {
  align-items: center !important;
}
.slick-center p {
  text-align: center !important;
}
.slick-center h3 {
  text-align: center !important;
  color: #3d5588;
}
.slick-center svg path {
  fill: #3d5588 !important;
}

.slick-prev-slide > .flex {
  align-items: flex-end !important;
}
.slick-prev-slide h3,
.slick-prev-slide p {
  text-align: right !important;
}

.slick-next-slide > .flex {
  align-items: flex-start !important;
}
.slick-next-slide h3,
.slick-next-slide p {
  text-align: left !important;
}

@media screen and (max-width: 1350px) {
  .image-wrapper.ready-arrow.position-absolute {
    display: none !important;
  }
}

@media screen and (max-width: 1025px) {
  .flex-row {
    flex-direction: column !important;
  }
  .box,
  .box-70,
  .box-30 {
    max-width: 100%;
  }
  .four-box-row .box {
    max-width: 100%;
  }
  .fourth-section .box img {
    max-width: 100%;
    object-fit: contain;
  }
  .image-boxed img {
    max-width: 100% !important;
    object-fit: contain;
  }
  .section-heading {
    max-width: 100% !important;
  }
  .twelfth-section .content-wrap,
  .trusted-desc {
    max-width: 100% !important;
  }
  .line-img {
    display: none !important;
  }
  .below-line {
    gap: 40px !important;
  }
  .gap-80 {
    gap: 40px !important;
  }
  :not(.card-boxes) > .px-50,
  .box-70 {
    padding-left: 0px;
    padding-right: 0px;
  }
  /* .form-section .w-100 {
    width: 90% !important;
  } */
}

@media (max-width: 480px) {
  .container {
    max-width: 100%;
  }
  h1 {
    font-size: 2.5rem;
    line-height: 3rem;
  }
  h3 {
    font-size: 2rem !important;
    line-height: 2.5rem !important;
  }
  .section-heading {
    font-size: 1.5rem !important;
  }
  .tenth-section.px-50,
  .eigth-section.px-50,
  .fourth-section.px-50 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
