.fs-display-1 {
  font-size: 3.75rem;
  line-height: 1.2;
}

.fs-display-2 {
  font-size: 3rem;
  line-height: 1.2;
}

.fs-text-lg {
  font-family: 'Inter';
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 26px;
  letter-spacing: 0;
  vertical-align: middle;
  color: #191A1A;

}

.fs-text-sm {
  font-size: 0.875rem;
}

.fs-text-xs {
  font-size: 0.75rem;
}


.desc-text {
  color: #191A1A;
  font-weight: 400;
  font-size: 1.125rem;
}

.h2-heading {
  color: #191A1A !important;
  font-size: 2.25rem;
  font-weight: 500;
    line-height: 3.31rem;
}

/* White Text Utilities (for dark backgrounds) */
.white-desc {
  color: #fff;
  font-weight: 400;
  font-size: 1rem;
}

.white-title {
  color: #fff;
  font-weight: 500;
  font-size: 1.375rem;
}

.white-link {
  color: #fff !important;
  font-weight: 400 !important;
  text-decoration: underline !important;
}


.blue-btn {
  background-color: #7235F4;
  color: #fff;
  font-weight: 500;
  font-size: 0.9375rem;
  /* ~15px */
  padding: 11px 24px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: background-color 0.3s ease, transform 0.2s ease;
  text-decoration: none;
  white-space: nowrap;
}


.blue-btn:hover {
  background-color: #7235F4;
  transform: none;
  text-decoration: none;
  cursor: pointer;
  outline: none;
  box-shadow: none;
  color: #fff;
}

.blue-btn:focus,
.blue-btn:active {
  background-color: #7235F4;
  transform: none;
  outline: none;
  color: #fff;
  box-shadow: none;
}



/* Not recommended, but possible if you need a global change */



.dark-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  width: 20.5625rem;
  height: 2.875rem;
  padding: 0.6875rem 0.5rem;
  border: 1px solid #191A1A;
  border-radius: 0.75rem;
  background-color: transparent;
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  font-weight: 500;
  color: #191A1A;
  text-decoration: none;
  transition: all 0.3s ease;
}

.dark-btn:hover,
.dark-btn:focus {
  background-color: #fff;
  color: #191A1A;
}

.dark-btn i {
  font-size: 1rem;
}

.figma-subtext {
  font-family: 'Inter', sans-serif;
  font-style: italic;
  font-weight: 400;
  font-size: 0.9875rem;
  /* 15.8px */
  line-height: 1.4825rem;
  /* 23.72px */
  letter-spacing: 0;
  color: rgba(25, 27, 27, 0.8);
  /* #191B1BCC */
  vertical-align: middle;
}

.figma-heading {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.375rem;
  /* 22px */
  line-height: 1.875rem;
  /* 30px */
  letter-spacing: 0;
  text-align: center;
  vertical-align: middle;
  margin-bottom: 0.5rem;
}


.custom-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  /* 8px spacing between text and icon */
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 1rem;
  /* Adjust if needed */
  line-height: 1.5rem;
  color: #fff;
  text-decoration: none;
  border-bottom: 2px solid #fff;
  padding-bottom: 0.1rem;
  transition: color 0.3s ease, border-color 0.3s ease;
}

.custom-link:hover {
  color: #ffffffcc;
  /* Slightly dim white on hover */
  border-color: #ffffffcc;
}

.custom-link i {
  font-size: 1rem;
  vertical-align: middle;
}

.btn-dark,
.btn-dark-cta {
  background-color: #191A1A !important;
  /* Reusing the color for general dark button */
  padding: 11px 24px 11px 24px !important;
  color: #fff !important;
  font-weight: 500 !important;
}

/* Specific Dark CTA for Insights */
.btn-dark-cta {
  background-color: #212529;
  color: white;
  border-radius: 4px;
  padding: 8px 15px;
  font-weight: 600;
  text-decoration: none;
}

.btn-dark-cta:hover {
  background-color: #000000;
  color: white;
}


.custom-gap {

  --bs-gutter-x: 2rem;
  /* ~ g-4.5 (1.75-2rem horizontal gap) */

  --bs-gutter-y: 1.5rem;

}

/* Card - Dark Variant (used in Hero) */
.card-dark {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: #1a1a1a;
  border-radius: 1.7rem;
  padding: 3rem 2.99rem;
  padding-bottom: 0;
  color: #fff;
  height: 100%;
  text-align: center;
}

.card-dark h5 {
  margin-bottom: 0.75rem;
  font-weight: 400;
}

.card-dark p {
  margin-bottom: 1rem;
  font-size: 0.9rem;
  line-height: 1.5;
  font-weight: 400;
  font-family: 'Inter', sans-serif;

}

.card-dark a {
  text-decoration: none;
  font-weight: 400;
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  transition: color 0.3s ease;
}

.card-image-container {
  text-align: center;
  margin-top: auto;
}

.card-image {
  max-width: 100%;
  height: 200px;
  object-fit: contain;
}

/* Figma Button */
.figma-btn {
  width: 139px;
  height: 46px;
  padding: 11px 24px;
  border-radius: 12px;
  opacity: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: none;
  outline: none;
}

/* General Responsive Utilities */
@media (max-width: 576px) {
  .fs-display-1 {
    font-size: 2.25rem;
  }

  .fs-text-lg {
    font-size: 1rem;
  }
}


/*==========================================================
  02. HERO SECTION
  ----------------------------------------------------------
==========================================================*/
.hero-section {
  position: relative;
  padding: 70px 0 80px 0;
  background-color: #F3F4EF;
  overflow: hidden;
}

.hero-bg-img {
  position: absolute;
  top: 40%;
  right: -10%;
  transform: translateY(-62%) translateX(2%) rotate(-58deg);
  height: 48%;
  max-height: none;
  z-index: 0;
  opacity: 1;
  pointer-events: none;
  object-fit: contain;
  mix-blend-mode: multiply;
}

.hero-section .container {
  position: relative;
  z-index: 1;
}

.hero-title {
  font-size: 3.75rem;

  line-height: 4.25rem;

  font-family: 'Inter', sans-serif;
  font-weight: 700;

  letter-spacing: 0;
  vertical-align: middle;

}

.star-bullet {
  padding-left: 2rem;
  position: relative;
}

.star-bullet::before {
  content: "";
  background-image: url('/assets/images/decorator/Star_decorator.png');
  display: block;
  position: absolute;
  left: 0;

  /* --- FIX START --- */
  top: 0.2em;
  /* Align with the start of the first line of text. 
                 Using 'em' is better as it scales with font size. */
  transform: translateY(0);
  /* Remove vertical centering transform */
  /* --- FIX END --- */

  width: 16px;
  height: 16px;
  background-size: contain;
  background-repeat: no-repeat;
}

.sub-text {
  color: #191B1BCC;
  margin-top: 15px;
  font-size: 0.95rem;
}


.fs-text-lg.star-bullet,
.star-bullet {
  font-size: 1.125rem;
  line-height: 1.625rem;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  /* Maps to Regular */
  letter-spacing: 0;
  vertical-align: middle;
}

@media (max-width: 768px) {
  .hero-title {
    font-size: 2.5rem;
    line-height: 1.2;
    text-align: center;
  }

  .hero-section .row.align-items-center>.col-12 {
    text-align: center;
  }

  .hero-bg-img {
    right: -20%;
    top: 60%;
    transform: translateY(-50%) rotate(-60deg);
    height: 40%;
  }

  .card-dark {
    text-align: center;
    padding: 2rem 1.5rem;

  }

  .card-dark a {
    justify-content: center;
    font-size: 0.875rem;
  }

  .figma-subtext {
    text-align: center;
  }

  .star-bullet::before {
    top: 0.6em;
  }
}

@media (max-width: 576px) {
  .hero-title {
    font-size: 2rem;
    line-height: 1.3;
  }

  .fs-display-1 {
    font-size: 2.375rem;
  }

  .fs-text-lg {
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .card-image {
    height: 11.688rem;
  }

  .blue-btn {
    /* max-width: 7.688rem; */
    font-size: 0.875rem;
    justify-content: center;
  }

  .button-change {
    max-width: 17.5rem;
    font-size: 0.875rem;
    font-weight: 500;
  }

  .btn-change {
    max-width: 7.688rem;
  }

  .dark-btn {
    max-width: 21.063rem;
    justify-content: center;
    font-size: 0.875rem;
  }

  .chage-black-btn {
    max-width: 16.75rem;
  }

  .figma-subtext {
    font-size: 0.9rem;
    max-width: 19.063rem;
  }

  .row.g-4 {
    gap: 1.5rem;
  }


  /* by kirtan */

  .hero-bg-img {
    right: -43%;
    top: 519px;
    transform: translateY(-52%) rotate(-45deg);
    height: 20%;
  }

  .fs-text-lg.star-bullet,
  .star-bullet {
    font-size: 1rem;
    line-height: 1.625rem;
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    letter-spacing: 0;
    vertical-align: middle;
  }
.card-dark{
  padding: 1.5rem 1rem;
}

  .ms-top{
    margin-top: 0.938rem;
  }
}



/*==========================================================
  03. LOGO SLIDER SECTION
  ----------------------------------------------------------
==========================================================*/

.logo-slider-section {
  background: #191A1A;
  padding: 65px 0;
  overflow: hidden;
  text-align: center;
}

.slider-heading {
  font-size:1rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #fff;
  font-weight: 500;
  margin-bottom: 2.5rem;
}

/* Multi-row container */
.slider-multi-container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  overflow: hidden;
}

/* Track */
.slider-track {
  display: flex;
  gap: 1rem;  
  animation: scroll 30s linear infinite;  /* Variable speed: 30s */
  width: max-content;
  align-items: center;
  padding-bottom: 1.8rem;
}

.slider-track.reverse {
  animation-direction: reverse;
  animation-duration: 35s;  /* Slightly different speed */
}

/* Logo size & clickable */
.logo-link {
  display: block;
  transition: transform 0.3s ease;
}



.logo-img {
  width: clamp(100px, 15vw, 162px);
  height: auto;
  aspect-ratio: 161.975 / 36.55;  /* Equal width/height ratio */
  object-fit: contain;
  flex-shrink: 0;
}

/* Infinite scroll – no glitch */
@keyframes scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(calc(-100% / 3)); }  /* For 3x repeat */
}

/* ========================================
   RESPONSIVE
   ======================================== */

/* Tablet & Mobile – 2 rows */
@media (max-width: 768px) {
  .logo-slider-section { padding: 50px 0; }
  .slider-heading { margin-bottom: 2rem; font-size: 0.9rem; }
  .slider-multi-container { gap: 0rem; }
  .slider-track { gap: 0.75rem; animation-duration: 40s; }
  .slider-track.reverse { animation-duration: 45s; }
  .logo-img { width: clamp(80px, 20vw, 130px); }
}

@media (max-width: 576px) {
  .logo-slider-section { padding: 40px 0; }
  .slider-heading { font-size: 0.85rem; }
  .slider-track { animation-duration: 50s; }
  .logo-img { width: clamp(70px, 22vw, 110px); }
    .slider-track {
 
  padding-bottom: 1.5rem;
}
}

/* Desktop ≥769px – SINGLE ROW ONLY */
@media (min-width: 769px) {
  .slider-multi-container {
    flex-direction: row;
    gap: 6rem;
  }
  .slider-track { animation-duration: 25s; }
  .slider-track.reverse { animation-duration: 30s; display: none !important; }
  .logo-img { width: 162px; }

}


/*==========================================================
  04. FAQ SECTION
  ----------------------------------------------------------
==========================================================*/
.faq-section {
  background-color: #F3F4EF;
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
  margin-top: -32px;
  position: relative;
  z-index: 2;
  padding: 0;
  /* Removed padding from section */
}

.faq-title {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 36px;
  line-height: 40px;
  color: #191A1A;
  margin-bottom: 1.5rem;
}


/* Main Image */
.main-image {
  width: 97%;
  aspect-ratio: 4 / 2;
  background-image: url('/assets/images/staff.png');
  background-size: cover;
  background-position: center;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}

.img-bottom-wrapper {
  width: 97%;
  display: flex;
  gap: 1.9rem;
  margin-top: 1.9rem;
  /* spacing between images */
}

/* Each bottom image */
.bottom-image {
  flex: 1;
  aspect-ratio: 1 / 1;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Bottom-left image */
.bottom-image.image1 {
  background-image: url('/assets/images/staff2.png');
  border-bottom-left-radius: 20px;
  /* only bottom-left corner */
}

/* Bottom-right image */
.bottom-image.image2 {
  background-image: url('/assets/images/staff3.png');
  border-bottom-right-radius: 20px;
  /* only bottom-right corner */
}

.faq-question-text {
  font-weight: 500;
}

/* Optional: stack on mobile */
@media (max-width: 576px) {
  .img-bottom-wrapper {
    /* flex-direction: column; */
    gap: 1rem;
  }

  .bottom-image.image1 {
    border-bottom-left-radius: 12px;
  }

  .bottom-image.image2 {
    border-bottom-right-radius: 12px;
  }

  /* kirtan by */

  .faq-answer {
    margin-top: 0rem !important;
  }

  .faq-divider {
    height: 1px;
    background-color: #191A1A;
    margin: 0rem 0 !important;
    /* Reduced margin for the divider */
  }

  .faq-margin-top {
    margin-top: 0.95rem !important;
  }
}

.faq-question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem 0;
  /* Reduced padding for tighter layout */
  cursor: pointer;
  font-size: 1.2rem;
  /* Reduced font size */
  color: #191A1A;
}

.faq-toggle {
  transition: transform 0.3s ease;
}

.faq-toggle i {
  font-size: 1.25rem;
  color: #191A1A;
}

.faq-answer {
  display: none;
  margin-top: 0.75rem;
  /* Reduced margin-top for answer */
  color: #191A1A;
  line-height: 1.5;
  /* Slightly reduced line height for more compactness */
}

.faq-divider {
  height: 1px;
  background-color: #191A1A;
  margin: 0.75rem 0;
  /* Reduced margin for the divider */
}

.faq-question.active .faq-toggle i {
  transform: rotate(45deg);
}

.custom-btn-dark {

  display: inline-flex !important;
  height: 2.875rem;

  padding: 0.6875rem 1.5rem;
  border-radius: 0.75rem;
  border: 0.0625rem solid #000;
  gap: 0.625rem;

  font-size: 1rem;
  background-color: #212529;
  color: #fff;

  align-items: center;
  justify-content: center;

  opacity: 1;
  transition: all 0.3s ease;
}

.custom-btn-dark i {
  font-size: 1.5rem;
}

.custom-btn-dark:hover {
  background-color: #343a40;
  color: #fff;
}

@media (min-width:768px) {
  .faq-section .row {
    align-items: flex-start;
  }

  .faq-section .image-column .faq-image-wrapper {
    position: sticky;
    top: 40px !important;
    align-self: flex-start !important;
    margin-bottom: 5rem !important;
  }

  .faq-section .image-column {
    position: sticky;
    top: 4.6rem;
    margin-top: 4.5rem !important;
    align-self: flex-start !important;
  }
}

@media (max-width: 768px) {
  .custom-btn-dark {
    width: 100%;
    /* Full-width on tablets and below */
    justify-content: center;
    font-size: 0.5rem;
    padding: 10px 20px;
  }




}

@media (max-width: 576px) {
  .custom-btn-dark {
    font-size: 0.7rem;
    padding: 10px 16px;
  }


  .custom-btn-dark i {
    font-size: 0.95rem;
  }

  /* kirtan by */
  .faq-image-wrapper {
    margin-top: 0.875rem !important;
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
    /* margin-top: 18px; */

  }

  .img-bottom-wrapper {
    margin-top: 1.2rem !important;
  }



}

/* Responsive adjustments */
@media (max-width: 768px) {
  .faq-section .row {
    display: flex;
    flex-direction: column;
    /* Stack the columns vertically */
    /* gap: 2rem; */
    /* Gap between FAQ section and image */
  }

  .faq-image-wrapper {
    max-width: 100%;
    padding: 1rem;

    /* kirtan by */

  }

  .faq-title {
    font-size: 1.75rem;
  }

  .faq-question {
    font-size: 1rem;
    font-weight: 500 !important;
  }

  .faq-answer {
    font-size: 1rem;
  }
}

@media (max-width: 576px) {
  .faq-section .row {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    /* Reduced gap for small screen */
  }

  .img-top {
    height: 180px;
    /* Reduced height for smaller screens */
  }

  .img-bottom-wrapper {
    gap: 0.5rem;
    /* Reduced gap for smaller screens */
  }

  .img-bottom {
    width: 100%;
    height: 120px;
  }

  .faq-title {
    font-size: 1.75rem;
  }

  .faq-question {
    font-size: 1rem !important;
  }

  .custom-btn-dark {
    width: auto; /* Remove fixed width */
    font-size: 0.75rem;
    padding: 8px 16px; /* Adjust padding for smaller screens */
    text-align: center; /* Ensure text is centered */
  }
}


@media (max-width: 576px) {
  .img-bottom-wrapper {
    /* flex-direction: column; */
    gap: 1.1rem !important;
  }

  .img-bottom {
    width: 100%;
    height: 140px;
  }


  /* .faq-section .col-md-6:last-child{
    margin-top: 2rem !important;
  } */
}



/* --- Sticky left side (image column) --- */
.faq-image-wrapper {
  position: sticky;
  top: 6rem;
  /* Adjust for your navbar height */
  align-self: flex-start;
  max-height: 100vh;
  /* stays visible within viewport */
  overflow: hidden;
}

/* Make sure row items align at top so sticky works correctly */
.faq-section .row {
  align-items: flex-start;
}

/* Right side naturally scrolls */
.faq-section .col-md-6:last-child {
  overflow-y: visible;
  margin-bottom: 4.5rem !important;
  margin-top: 5rem !important;
}

/* Optional smooth scroll behavior for FAQ section */
.faq-section {
  scroll-behavior: smooth;
}

/* Disable sticky on mobile for layout consistency */
@media (max-width: 991px) {
  .faq-image-wrapper {
    position: static;
    top: auto;
    max-height: none;
    margin-top: 1.875rem;
  }
  .faq-section .col-md-6:last-child {
 
  margin-top: 2rem !important;
}
}


/*==========================================================
  05. DELIVERY / SERVICE CARDS SECTION
  ----------------------------------------------------------
==========================================================*/
@media (min-width: 992px) {

  /* Only apply inside delivery-section */
  .delivery-section .g-lg-4-5>[class^="col-"] {
    /* padding-left: 1.2rem; */
    padding-right: 1.875rem;
  }
}

.delivery-section-titlte {
  font-size: 2.25rem;
  font-weight: 500;
  color: #191A1A;
  line-height: 2.5rem;
  letter-spacing: 0%;
  text-align: center;
}

/* Base Card Styles */
.delivery-card {
  display: flex;
  flex-direction: column;
  height: 100%;

  background-color: #F3F4EF;
  /* Default background */
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 1.25rem;
  padding: 2rem 1.9rem;
  min-height: 21.75rem;
  color: #191A1A;
  /* Default text color */
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
  /* **TRANSITION REMOVED as requested** */
  margin: 0 auto;
}

/* Card Hover Effect: Adopts the look of the old .delivery-card-2 */
.delivery-card:hover {
  background-color: #191A1A;
  /* Dark background on hover */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
  color: #FFFFFF;
  /* White text on hover for the card itself (parent) */
}

.delivery-card-title {
  font-weight: 500;
  font-size: 1.375rem;
  line-height: 1.875rem;
  margin-bottom: 1rem;
  /* **TRANSITION REMOVED as requested** */
  color: #191A1A;
  /* Default title color */
}

/* Title Color on Hover */
.delivery-card:hover .delivery-card-title {
  color: #ffffff;
  /* White title on hover */
}


.delivery-card-desc {
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.625rem;
  color: #444;
  /* Default description color */
  margin-bottom: 1.5rem;
  flex-grow: 1;
  /* **TRANSITION REMOVED as requested** */
}

/* Description Color on Hover */
.delivery-card:hover .delivery-card-desc {
  color: #ffffff;
  /* White description on hover */
  font-weight: 400;
  /* Added this from the old .delivery-card-2 .delivery-card-desc-2 */
}

.delivery-card-link-wrapper {
  margin-top: auto;
  padding-top: 0;
  display: inline-block;
  /* Removed .delivery-card-link-wrapper-2 */
}

.delivery-card-link {
  font-weight: 500;
  font-size: 1rem;
  text-decoration: underline;
  /* **TRANSITION REMOVED as requested** */
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: #191A1A;
  /* Default link color */
}

/* Link Color on Hover */
.delivery-card:hover .delivery-card-link {
  color: #ffffff;
  /* White link on hover */
}

.delivery-card-link i {
  font-size: 1.5rem;
  line-height: 1;
  display: inline-block;
  transform: translateY(1px);
}

/* Media Queries remain the same, targeting .delivery-card and its children */
@media (max-width: 992px) {
  .delivery-card {
    max-width: 100%;
    height: auto;
    min-height: 21.75rem;
  }

  .delivery-card-desc {
    /* kirtan */
    font-size: 1rem;
    /* font-size: 0.95rem; */
  }
}

@media (max-width: 768px) {
  .title-text {
    font-size: 2rem;
    line-height: 2.25rem;
  }

  .delivery-card {
    padding: 1.5rem;
    min-height: 20rem;
  }

  .delivery-card-title {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (max-width: 576px) {
  .title-text {
    font-size: 1.75rem;
    line-height: 2rem;
  }

  .delivery-card {
    padding: 2rem;
    min-height: 18rem;
  }

  .delivery-card-title {
    /* kirta */
    font-size: 1.25rem;
    /* font-size: 1.125rem; */
    line-height: 1.5rem;
  }

  .delivery-card-desc {
    font-size: 1rem;
  }

  .delivery-card-link {
    font-size: 0.875rem;
  }

  .delivery-card-link i {
    font-size: 1.563rem;
  }

  .delivery-section-titlte{
    font-size: 1.75rem;
  }
}
/*==========================================================
  06. FOUNDER SECTION
  ----------------------------------------------------------
==========================================================*/
.founder-section {
  background-color: #191A1A;
  color: #FFFFFF;
  width: 100%;
  position: relative;
  overflow: hidden;
  font-family: 'Inter', sans-serif;
}

.founder-section::before {
  content: '';
  position: absolute;
  inset: 0;
  box-shadow: inset 0 0 80px rgba(0, 0, 0, 1);
  z-index: 2;
  pointer-events: none;
}

.founder-inner {
  position: relative;
  min-height: 100%;
  box-shadow: inset 0 -100px 200px -10px rgba(0, 0, 0, 0.5);
}

.founder-image-col {
  position: relative;
  padding: 0;
  display: flex;
  align-items: flex-end;
  min-height: 400px;
}

.image-wrapper {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 0;
  max-width: 430px;
  width: 440px;
  height: auto;
  z-index: 1;
}

.founder-img {
  display: block;
}

/* --------------------------------------
   TEXT CONTENT
-------------------------------------- */
.founder-text-content {
  width: 100%;
  max-width: 42rem;
  padding: 2rem;
}

.founder-content {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 5rem !important;
}

.sherpa-text {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 1.875rem;
  color: #FFFFFFCC;
  margin-bottom: 1.5rem;
  text-indent: 1.2rem;
}

.founder-desc {
  font-style: italic;
  font-weight: 500;
  color: #fff;
}

.founder-name {
  font-weight: 600;
  font-size: 1.25rem;
  color: #fff;
}

.founder-role {
  font-weight: 400;
  font-size: 1rem;
  color: #FFFFFFCC;
}
@media (max-width: 992px) {

  .founder-text-col {
    order: 1;
  }

  .founder-image-col {
    order: 2;
    display: flex;
    justify-content: flex-end;
    position: relative;
    padding: 0;
    margin-top: -1.25rem;
  }

  .image-wrapper {
    position: relative;
    transform: scaleX(-1);
    width: 75%;
    max-width: 360px;
    margin-right: -0.5rem;
    margin-bottom: -0.75rem;
  }

  .founder-img {
    width: 100%;
    height: auto;
    display: block;
  }

  .founder-text-content {
    padding: 1.25rem;
    text-align: left;
  }

  .sherpa-text {
    font-size: 1rem;          
    line-height: 1.6rem;
    color: #ffffffcc;
    margin-bottom: 1.2rem;
  }

  .founder-desc {
    font-size: 1rem;
  }

  .founder-name {
    font-size: 1.1rem;
  }

  .founder-role {
    font-size: 0.9rem;
  }
}

@media (max-width: 576px) {

  .founder-inner {
    flex-direction: column;
  }

  .founder-text-col {
    order: 1;
  }

.founder-image-col {
    order: 2;
    display: flex;
    justify-content: flex-end;
    position: relative;
    padding: 0;
    margin-top: -11rem; 
  }

  .image-wrapper {
    transform: scaleX(-1);
    width: 80%;
    max-width: 280px;
            margin-right: -0.75rem;
    margin-bottom: -2.5rem;
  }

  .founder-img {
    width: 100%;
    height: auto;
  }

  .founder-text-content {
    padding: 0.9rem;
    text-align: left;
  }

  .sherpa-text {
    font-size: 0.92rem;       
    line-height: 1.45rem;  
    color: #ffffffcc;
  }

  .founder-desc {
    font-size: 0.92rem;
  }

  .founder-name {
    font-size: 1rem;
  }

  .founder-role {
    font-size: 0.85rem;
  }
}
/*==========================================================
  07. TEAM SECTION
  ----------------------------------------------------------
==========================================================*/
.team-transform-section {
  background-color: #F3F4EF;
  padding: 60px 0;
}

.team-transform-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 15px;
  margin-bottom: 30px;
}

.h2-heading {
  font-size: 2.25rem;
  font-weight: 500;
  color: #191A1A;
  margin: 0;
}

/* -------------------------
   Navigation Buttons
------------------------- */
.nav-buttons {
  display: flex;
  gap: 10px;
  justify-content: center;
}

.nav-buttons .btn {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  transition: background-color 0.3s ease, color 0.3s ease;
  outline: none; /* remove default focus outline */
  box-shadow: none; /* remove default focus shadow */
}

.nav-buttons .btn:focus,
.nav-buttons .btn:active,
.nav-buttons .btn:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

.left-arrow-btn {
  color: #191A1A;
  background-color: #e0e0e0;
  border: none;
}
.left-arrow-btn:hover {
  background-color: #333; /* darken on hover */
  color: #fff;
}


.right-arrow-btn {
 color: #191A1A;
  background-color: #e0e0e0;
  border: none;
}

.right-arrow-btn:hover {
  background-color: #333; /* darken on hover */
  color: #fff;
}

/* -------------------------
   Carousel
------------------------- */
.carousel-inner {
  width: 100%;
}

.carousel-item .row {
  justify-content: center;
}

/* -------------------------
   Team Card
------------------------- */
.team-card {
  background-color: #fff;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  max-width: 20rem;
  margin: 0 auto;
  cursor: pointer;
  transition: transform 0.2s;
}


.image-section {
  width: 100%;
  height: 220px;
  background-color: #D7D7D7;
  overflow: hidden;
}

.image-section img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.card-content {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

.card-content h5 {
  margin-bottom: 0.25rem;
  font-size: 1rem;
}

.card-content p {
  margin-bottom: 0.5rem;
  font-size: 0.85rem;
}

.social-icons-home {
  margin-top: auto;
  display: flex;
  gap: 12px;
}

.social-link {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background-color: #F2F4F7;
  text-decoration: none;
}

.social-link:hover {
  background-color: #F2F4F7;
}

.social-icon-home {
  width: 18px;
  height: 18px;
}

/* -------------------------
   Modal
------------------------- */
#modalImage {
  object-fit: cover;
  border: 4px solid #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.fw-500 {
  font-weight: 500 !important;
}

.modal .social-link {
  width: 36px;
  height: 36px;
  background: #e9ecef;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.modal .social-link:hover {
  background: #d3d3d3;
}

.modal .social-icon-home {
  width: 18px;
  height: 18px;
}

/* -------------------------
   Responsive
------------------------- */
@media (max-width: 991.98px) {
  .team-transform-header {
    flex-direction: column;
    text-align: center;
  }

  .h2-heading {
    font-size: 1.9rem;
  }

  .team-card {
    max-width: 85%;
    min-width: auto;
  }

  .image-section {
    height: 210px;
  }

  .card-content h5 {
    font-size: 0.95rem;
  }

  .card-content p {
    font-size: 0.8rem;
  }

  .social-link {
    width: 28px;
    height: 28px;
  }

  .social-icon-home {
    width: 14px;
    height: 14px;
  }
}

@media (max-width: 576px) {
  .h2-heading {
    font-size: 1.75rem;
  }

  .team-card {
    max-width: 90%;
  }

  .image-section {
    height: 200px;
  }

  .card-content h5 {
    font-size: 1rem;
  }

  .card-content p {
    font-size: 0.75rem;
  }

  .social-icons-home {
    gap: 8px;
  }

  .social-link {
    width: 26px;
    height: 26px;
  }

  .social-icon-home {
    width: 13px;
    height: 13px;
  }

  .modal .row>div {
    text-align: left !important;
  }

  .modal .d-flex.align-items-center {
    justify-content: center !important;
  }

  .modal .ms-auto {
    margin-left: 0 !important;
  }
}

@media (min-width: 992px) {

  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl {
    padding-left: 3.9rem !important;
    padding-right: 3.9rem !important;
  }
}


@media (min-width: 576px) {

  .container,
  .container-sm {
    max-width: 550px !important;
  }
}

@media (min-width: 768px) {

  .container,
  .container-sm,
  .container-md {
    max-width: 720px !important;
  }
}

@media (min-width: 992px) {

  .container,
  .container-sm,
  .container-md,
  .container-lg {
    max-width: 960px !important;
  }
}

@media (min-width: 1200px) {

  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl {

    max-width: 1280px !important;
  }
}

@media (min-width: 1400px) {

  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl {
    max-width: 1440px !important;
  }
}

/* @media (min-width: 576px) {
    .container, .container-sm {
        max-width: calc(100% - 40px) !important;  
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
} */

@media (max-width: 576px) {

  .container,
  .container-sm {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}






/* ------------------------------------------- */
/* 1. MODAL DIALOG SIZE ADJUSTMENTS (Responsive) */
/* ------------------------------------------- */

@media (min-width: 576px) {
    .modal-dialog {
        max-width: 450px;
    }
}

@media (min-width: 992px) {
    .modal-lg {
        --bs-modal-width: 900px; 
        max-width: var(--bs-modal-width);
    }
}


/* ------------------------------------------- */
/* 2. IMAGE STYLING (Fixed Size and Circular) */
/* ------------------------------------------- */
#modalImage {
    width: 104px;
    height: 104px;
    border-radius: 50% !important;
    object-fit: cover;
    border: 4px solid #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    margin: 0;
    display: block;
}

/* ------------------------------------------- */
/* 3. PARAGRAPH STYLING (Font Specifications) */
/* ------------------------------------------- */
#modalParagraph {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1.813rem;
    color: #191A1A !important;
    margin-bottom: 0;
}


@media (max-width: 575px) {
    #modalParagraph {
        font-size: 0.65rem; 
        line-height: 1.4;
    }
}

/* ------------------------------------------- */
/* 4. NAME & POSITION STYLING */
/* ------------------------------------------- */
#modalName {
    font-weight: 700;
}

#modalPosition {
    font-size: 1rem;
    color: #191A1A !important;
}

/* ------------------------------------------- */
/* 5. SOCIAL LINKS STYLING */
/* ------------------------------------------- */
.modal .social-link {
    width: 36px;
    height: 36px;
    background: #e9ecef;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s;
}

.modal .social-link:hover {
    background: #d3d3d3;
}

.modal .social-icon-home {
    width: 18px;
    height: 18px;
}
@media (min-width: 992px) {
    .modal-lg {
        --bs-modal-width: 1080px; 
        max-width: var(--bs-modal-width);
    }
}

/*==========================================================
  08. INSIGHTS SECTION
  ----------------------------------------------------------
==========================================================*/
/* SECTION WRAPPER */
.insights-home-section {
  padding: 70px 0;
  background-color: #ffffff;
}

/* HEADER */
.insights-header {
  gap: 1rem;
}

.insights-title {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 2.61875rem;
  line-height: 3.325rem;
  color: #191A1A;
}

.insights-cta {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5rem;
  color: #191A1A;
  background-color: transparent;
  border: 1px solid #191A1A;
  border-radius: 0.75rem;
  padding: 0.6875rem 1.5rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.insights-cta i {
  font-size: 1.1rem;
  line-height: 1;
  margin-left: 0.25rem;
}

.insights-cta:hover,
.insights-cta:focus {
  background-color: #ffffff;
  color: #000000;
}

.insights-content {
  margin-top: 20px;
}

/* LEFT FEATURED INSIGHT */
.featured-insight {
  position: relative;
  height: 450px;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  flex-direction: column;
}

.featured-image,
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.featured-image {
  background-size: cover;
  background-position: center;
}

.overlay {
  background-color: rgba(25, 26, 26, 0.5);
  z-index: 2;
}

.featured-content {
  position: relative;
  z-index: 3;
  padding: 24px;
  color: #fff;
  display: flex;
  flex-direction: column;
  height: 100%;
  text-align: left;
}

.featured-title {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 1.375rem;
  line-height: 1.875rem;
  margin-bottom: 1rem;
  color: #fff;
}

.btn-glass {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 7.5rem;
  height: 2.1rem;
  border-radius: 0.56rem;
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #fff;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 0.75rem;
  text-decoration: none;
  transition: background-color 0.3s ease, border-color 0.3s ease;
  margin-top: auto;
}

.btn-glass:hover,
.btn-glass:focus {
  background-color: rgba(255, 255, 255, 0.35);
  border-color: rgba(255, 255, 255, 0.6);
  color: #000;
}

.btn-glass .bi-arrow-right {
  font-size: 1rem;
  margin-left: 0.4rem;
}

/* RIGHT COLUMN: LIST CONTAINER */
.insight-list {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
  height: 450px;
}

.insight-item {
  display: flex;
  align-items: stretch;
  gap: 1rem;
  border-radius: 16px;
  overflow: hidden;
  cursor: pointer;
  flex: 1;
}

.insight-thumb-wrapper {
  flex: 0 0 280px;
  border-radius: 20px;
  background-size: cover;
  background-position: center;
  aspect-ratio: 1 / 1;
}

.insight-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
  padding: 0.5rem 0;
}

.insight-summary {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.75rem; /* Added proper line-height */
  color: #191A1A;
  margin: 0 0 0.5rem 0;
}

.insight-meta {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 0.95rem;
  color: #555;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.meta-divider {
  margin: 0 0.25rem;
  color: #555;
}

/* ======================= RESPONSIVE DESIGN ======================= */

/* Tablet (Fixes) */
@media (max-width: 992px) {

  .featured-image {
    background-image: none !important;
  }

  .overlay {
    display: none;
  }

  .featured-content {
    align-items: center;
    text-align: center;
    padding: 1rem 0;
  }

  .btn-glass {
    margin-left: auto;
    margin-right: auto;
    margin-top: auto;
  }

  .insight-list {
    gap: 1.5rem;
  }

  .insight-item {
    flex: 0 0 auto;
  }

  .insight-thumb-wrapper {
    flex: 0 0 150px;
  }

  .insight-summary {
    font-size: 1.1rem;
    line-height: 1.6rem; /* Increased line height for better readability */
  }

  .insights-title {
    font-size: 2rem;
  }
}

/* Mobile (≤768px) */
@media (max-width: 768px) {
  .insights-header {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.75rem;
  }

  .insight-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .insight-thumb-wrapper {
    width: 100%;
    height: 180px;
    flex: none;
  }

  .insight-body {
    padding: 0.75rem 0;
    width: 100%;
  }

  .insight-meta {
    flex-direction: row;
    justify-content: center;
    gap: 0.75rem;
  }

  .insights-title {
    font-size: 1.75rem;
  }
}

/* Mobile (≤480px) */
@media (max-width: 480px) {
  .insight-summary {
    font-size: 1rem;
    line-height: 1.4rem; /* Adjusted line-height for small mobile */
  }

  .insight-meta {
    font-size: 0.8rem;
  }

  .insights-title {
    font-size: 1.55rem;
    text-align: left;
  }

  .insights-cta {
    font-size: 0.9rem;
    padding: 0.5rem 1.25rem;
  }
}

/* Tablet (≤992px) */
@media (max-width: 992px) {
  .insights-content {
    flex-direction: column;
  }

  .featured-insight,
  .insight-list,
  .insight-item {
    width: 100%;
    height: auto;
  }

  .featured-insight .overlay {
    display: none;
  }

  .featured-content {
    position: static;
    background: #fff;
    color: #191A1A;
    text-align: left;
  }

  .featured-title {
    color: #191A1A;
    font-size: 1.2rem;
    line-height: 1.6rem;
  }

  .btn-glass {
    background-color: #191A1A;
    color: #fff;
    border-radius: 0.5rem;
    font-size: 0.8rem;
    padding: 0.4rem 1rem;
  }

  .insight-item {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    border-radius: 12px;
  }

  .insight-thumb-wrapper {
    width: 100%;
    height: 180px;
    border-radius: 12px;
  }

  .insight-body {
    width: 100%;
    padding: 0;
  }

  .insight-summary {
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .insight-meta {
    flex-direction: row;
    justify-content: flex-start;
    gap: 0rem;
  }

  .insights-footer {
    text-align: left;
    margin-top: 1.5rem;
  }
}

@media (max-width: 576px) {
  .insights-content{
   margin-top:0px ;
  }
  .featured-title {
    font-size: 1rem;
    line-height: 1.4rem;
  }

  .insight-summary {
    font-size: 0.95rem;
  }

  .insight-meta {
    font-size: 0.8rem;
  }

  .insights-cta {
    font-size: 0.9rem;
    padding: 0.5rem 1.2rem;
  }
}


/* ---------------------------------------------------------------------- */
/* 🧩 Insight Detail Page Specific Styles */
/* ---------------------------------------------------------------------- */

/* Scoped classes now start with .insight-detail-page or have an insight- prefix */

.insight-detail-page .content-main {
  padding: 0 !important;
}

.insight-detail-page .image-container {
  margin-top: 0.625rem;
  margin-bottom: 1.25rem;
  width: 100%;
  max-height: 500px; 
  overflow: hidden;
  border-radius: 0.625rem;
}

.insight-detail-page .article-image {
  width: 100%;
  height: auto; 
  object-fit: cover;
  display: block;
  border-radius: 0.625rem;
}

/* Original TOC-related classes are now prefixed with .insight-detail-page to prevent leakage */

.insight-detail-page .toc-title {
  font-weight: 500;
  font-style: Medium;
  font-size: 2.25rem;
  line-height: 2.875rem;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #191A1A;
}

@media (max-width: 61.999rem) {
  .insight-detail-page .content-main {
    order: 1;
    border-right: none;
  }

}

.insight-list-details {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.insight-paragraph.para {
  margin-top: 0.938rem;
}

.insight-detail-page .details-top {
  margin-top: 2.3rem;
}

@media (min-width:51.125rem) {
  .insight-paragraph {
    padding-right: 12rem !important;
  }
}




/*==========================================================
  09. GROWTH CHALLENGE SECTION (Unused in provided HTML, but CSS is present)
  ----------------------------------------------------------
==========================================================*/

.growth-challenge {
  background-color: #F3F4EF;
  padding: 70px 0;
}

.section-wrapper {
  padding-inline: 3rem;
  margin-inline: 3rem;
}

@media (max-width: 992px) {
  .section-wrapper {
    padding-inline: 2rem;
    margin-inline: 2rem;
  }
}

@media (max-width: 768px) {
  .section-wrapper {
    padding-inline: 1rem;
    margin-inline: 1rem;
  }
}

@media (max-width: 576px) {
  .section-wrapper {
    padding-inline: 0.75rem;
    margin-inline: 0.75rem;
  }
}

/* TEXT HEADINGS */
.h2-heading {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.3;
  color: #191A1A;
  margin-bottom: 1rem;
}

.desc-text {
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  color: #191A1A;
  line-height: 1.6;
  margin-bottom: 1.5rem;
}

/* CTA Button */
.blue-btn {
  background-color: #7235F4;
  color: #fff;
  padding: 11px 24px;
  border-radius: 12px;
  font-weight: 500;
  text-decoration: none;
  display: inline-block;
  transition: background-color 0.3s ease;
}

.blue-btn:hover {
  background-color: #5e2cc1;
  color: #fff;
}

/* Image Styling */
.growth-image-custom {
  max-width: 100%;
  /* Ensures the image scales properly */
  width: 100%;
  max-height: 460px;
  /* Limit image height */
  height: auto;
  /* Maintains aspect ratio */
  border-radius: 20px;
  object-fit: cover;
  /* Maintain the cover style for larger screens */
}

/* Mobile Styling */
@media (max-width: 768px) {
  .growth-image-custom {
    margin-top: 20px;
    /* Pushes image down */
    object-fit: contain;
    /* Prevents cropping and makes sure the whole image is shown */
    max-height: none;
    /* Remove the max-height limit to allow the image to be taller */
  }
}

/* Larger screens */
@media (min-width: 992px) {
  .growth-image-custom {
    margin-top: 0;
    /* Removes margin on larger screens */
    object-fit: cover;
    /* Maintains cover styling for larger screens */
  }
}

/* Extra Small Screens */
@media (max-width: 576px) {
  .growth-image-custom {
    margin-top: 10px;
    /* Adds a little margin for extra small screens */
    object-fit: contain;
    /* Prevents cropping and ensures full image display */
    max-height: 28.125rem !important;
    /* Remove max-height to allow more flexibility */

  }
}



@media (max-width: 992px) {
  .growth-image-custom {
    max-height: 320px;
  }
}

@media (max-width: 768px) {
  .growth-image-custom {
    max-height: 280px;
  }
}

@media (max-width: 576px) {
  .h2-heading {
    /* kirtan */
    font-size: 1.75rem;
    text-align: center;
    /* padding: 0 2.5rem; */
  }

  .desc-text {
    /* kirtan */
    font-size: 1rem;
    text-align: center;
    line-height: 1.5rem;
  }

  .blue-btn {
    width: 100%;
    text-align: center;
    padding: 10px 18px;
    white-space: normal;
    /* allows text to wrap */
    display: inline-block;
    /* ensures wrapping works properly */
    line-height: 1.4;
    /* gives better spacing after wrapping */
  }
 .growth-challenge .blue-btn {
    text-align: center;
    white-space: normal;
    display: inline;
    line-height: 1.4;
  }
}

