/*========== GOOGLE FONTS ==========*/
@import url("https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&family=Nunito:ital,wght@0,200..1000;1,200..1000&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

/*========== VARIABLES CSS ==========*/
:root {
  /*===== Colors =====*/
  --soft-white: #fbfaf5;
  --soft-black: #181a18;
  --white: #ffffff;
  --black: #0a0a0a;
  --txt-grey: #444950;
  --th-eg: #6b8e23;
  --th-brn: #8b4513;
  --th-bge: #d2b48c;
  --th-grn: #477035;
  --cannoli-cream: #f1f0e2;
  --the-grey: #f6f7f9;
  --success: #13ae8f;
  --error: #ff3333;

  /*===== Font and typography =====*/
  /* --laini-font: */
  --pri-font: "Lora", serif;
  --pop-font: "Poppins", sans-serif;
  --nun-font: "Nunito", sans-serif;

  /* .5rem = 8px, 1rem = 16px, 1.5rem = 24px ... */
  --fs-9: 9rem;
  --fs-8-5: 8.5rem;
  --fs-8: 8rem;
  --fs-7-5: 7.5rem;
  --fs-7: 7rem;
  --fs-6-5: 6.5rem;
  --fs-6: 6rem;
  --fs-5-5: 5.5rem;
  --fs-5: 5rem;
  --fs-4-5: 4.5rem;
  --fs-4: 4rem;
  --fs-3-5: 3.5rem;
  --fs-3: 3rem;
  --fs-2-5: 2.5rem;
  --fs-2: 2rem;
  --fs-1-5: 1.5rem;
  --fs-1: 1rem;
  --fs-0-95: 0.95rem;
  --fs-0-85: 0.85rem;
  --fs-0-75: 0.75rem;
  --fs-0-65: 0.65rem;
  --fs-0-5: 0.5rem;
  --fs-0-25: 0.275rem;
  --fs-0-2: 0.2rem;
  /*===== Font weight =====*/
  --font-medium: 500;
  --font-semi-bold: 600;
  /*===== Margenes Bottom =====*/
  /* .25rem = 4px, .5rem = 8px, .75rem = 12px ... */
  --mb-0-25: 0.25rem;
  --mb-0-5: 0.5rem;
  --mb-0-75: 0.75rem;
  --mb-1: 1rem;
  --mb-1-5: 1.5rem;
  --mb-2: 2rem;
  --mb-2-5: 2.5rem;
  --mb-3: 3rem;
  --mb-3-5: 3rem;
  --mb-4: 4rem;
  --mb-4-5: 4.5rem;
  --mb-5: 5rem;
  --mb-5-5: 5.5rem;
  --mb-6: 6rem;
  --mb-6-5: 6.5rem;
  --mb-7: 7rem;
  --mb-7-5: 7.5rem;
  --mb-8: 8rem;
  --mb-8-5: 8.5rem;
  --mb-9: 9rem;
  --mb-9-5: 9.5rem;
  --mb-10: 10rem;
}

/* --------------- ========== LP-MAIN ========== ---------------*/
.lp-main {
  width: 100%;
  overflow: hidden;
}

/*========== >>>>> HERO SECTION <<<<< ==========*/
.hero {
  width: 100%;
  height: 100dvh;
  padding: 0;
}

.h-container {
  position: relative;
  width: 100%;
  height: 100%;
}

.h-media {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.h-media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.h-title {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  padding: var(--mb-2);
  padding-bottom: var(--mb-3);
  padding-left: var(--mb-3);
  justify-content: flex-end;
  align-items: flex-start;
  overflow: hidden;
}

.h-title h1 {
  font-size: 11vw;
  color: var(--white);
  text-align: left;
  font-weight: 300;
  line-height: 1.1;
  /* margin-bottom: -2.5rem; */
  font-family: var(--pri-font);
}

.h-title h1 span {
  color: var(--th-bge);
}

/*========== >>>>> ABOUT SECTION <<<<< ==========*/
.ab {
  width: 100%;
  padding: var(--mb-6) var(--mb-4);
}

.ab-container {
  width: 100%;
  justify-content: flex-start;
  row-gap: var(--mb-4);
}

.ab-title {
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
  /* border: 1px red solid; */
}

.abt-img {
  flex: 0 0 15%;
  /* border: 1px teal solid; */
  overflow: hidden;
}

.abt-img img {
  width: 100%;
  object-fit: cover;
}

.abt-data {
  flex: 0 0 65%;
  justify-content: flex-start;
  align-content: flex-start;
}

.abt-data h3 {
  font-size: 1.3rem;
  font-weight: 300;
  font-family: var(--pop-font);
  line-height: 1.6;
}

.abt-data h3 span {
  color: var(--th-brn);
  color: var(--th-eg);
}

.ab-body {
  width: 100%;
  justify-content: flex-end;
}

.ab-stats {
  flex: 0 0 65%;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  row-gap: var(--mb-3-5);
}

.abs {
  position: relative;
  flex: 0 0 46%;
  height: 200px;
  padding: var(--mb-2);
  justify-content: space-between;
  align-items: flex-start;
  /* background-color: #fafafa; */
  background: transparent;
  border: 1px #e5e5e5 solid;
  /* background-color: rgb(107, 142, 35, 0.05); */
  border-radius: 5px;
  overflow: hidden;
}

.abs-no {
  justify-content: flex-start;
  align-items: flex-end;
  /* border: 1px teal solid; */
}

.abs-no h5 {
  font-size: 2.5rem;
  font-weight: 400;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--txt-grey);
  color: var(--th-brn);
  line-height: 0.9;
}

.abs-no span {
  font-size: 1.5rem;
  line-height: 1.1;
  color: var(--th-grn);
  color: var(--th-brn);
}

.abs-text {
  width: 100%;
  justify-content: flex-start;
}

.abs-text p {
  font-size: 1.1rem;
  font-weight: 400;
  text-align: left;
  color: var(--txt-grey);
}

.abs-svg {
  position: absolute;
  top: -1.8rem;
  right: -1.35rem;
  z-index: 0;
}

.abs-svg p {
  font-size: var(--fs-4-5);
  font-weight: 500;
  text-align: left;
  color: var(--th-eg);
  opacity: 0.05;
}

.ab-quote {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
}

.ab-quote h4,
.ab-quote p {
  font-size: var(--fs-3);
  font-weight: 300;
  text-align: left;
  color: var(--th-brn);
  line-height: 1.3;
}

.ab-quote p {
  color: var(--th-eg);
}
/* 
.ab-partners {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-2);
  padding: var(--mb-2) 0;
  border-top: 1px #e5e5e5 solid;
  border-bottom: 1px #e5e5e5 solid;
}

.ab-partners h4 {
  flex: 0 0 20%;
  font-size: 1.2rem;
  font-weight: 400;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--txt-grey);
  line-height: 0.9;
}

.abp-list {
  flex: 0 0 60%;
  justify-content: flex-end;
  column-gap: var(--mb-1);
}

.abpl {
  flex: 0 0 70px;
  overflow: hidden;
  border: 1px #e5e5e5 solid;
  padding: var(--mb-0-5);
  border-radius: 5px;
}

.abpl img {
  width: 100%;
  object-fit: cover;
} */

.h-info {
  width: 100%;
  padding: var(--mb-2) 0;
  border-top: 1px #e5e5e5 solid;
  border-bottom: 1px #e5e5e5 solid;
  overflow: hidden;
  position: relative;
}

.hi-tags {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  column-gap: var(--mb-4);
  animation: scrollContinuous 80s linear infinite; /* Continuous scrolling animation */
  will-change: transform;
  /* border: 1px red solid; */
}

.h-info:hover .hi-tags {
  animation-play-state: paused; /* Pause animation on hover */
}

.hi-tags span {
  color: var(--th-grn);
  color: var(--txt-grey);
  font-size: 1.5rem;
  /* display: none; */
}

.hit {
  flex: 0 0 55px;
  overflow: hidden;
}

/* Continuous scrolling keyframes */
@keyframes scrollContinuous {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(
      -50%
    ); /* Scroll half the width (for duplicated content) */
  }
}

/* Responsive settings for small screens */
@media (max-width: 500px) {
  .hi-tags {
    column-gap: var(--mb-1);
    animation-duration: 40s; /* Adjust speed for smaller screens */
  }
}

.hit img {
  width: 100%;
  object-fit: cover;
  /* filter: grayscale(100%); */
}

/* .hc-text button p {
   width: 100%;
} */

/* .hit:hover {
  background-color: var(--t-blue);
}

.hit:hover i,
.hit:hover p {
  color: var(--white);
} */

/*========== >>>>> IMPACT SECTION <<<<< ==========*/
.im {
  width: 100%;
  background-color: var(--th-bge);
  background-image: url(/assets/img/bckg/bg-7.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 0;
}

.im-container {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  /* backdrop-filter: blur(3px); */
  justify-content: flex-start;
  padding: var(--mb-6) var(--mb-4);
}

.im-img {
  flex: 0 0 50%;
  height: 100%;
  overflow: hidden;
  display: none;
  /* border-radius: 5px; */
}

.im-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 70% 50%;
}

.im-content {
  flex: 0 0 40%;
  background-image: url(/assets/img/patterns/pt-2.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 8px;
  overflow: hidden;
}

.im-data {
  width: 100%;
  background-color: rgba(250, 250, 250, 0.95);
  /* border-radius: 5px; */
  padding: var(--mb-2-5);
  justify-content: flex-start;
  align-items: flex-start;
}

.im-data h3 {
  font-size: 2.4rem;
  font-weight: 300;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--soft-black);
  margin-bottom: var(--mb-3);
  line-height: 1.3;
}

.im-data h3 > span {
  /* color: var(--th-eg); */
  color: var(--th-brn);
}

.imd {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-2);
}

.imd > p {
  font-size: 1.08rem;
  font-weight: 300;
  text-align: left;
  color: var(--txt-grey);
  line-height: 1.6;
}

/*========== >>>>> SERVICES SECTION <<<<< ==========*/
.se {
  width: 100%;
  padding: 0;
  background-color: var(--white);
  background-image: url(/assets/img/patterns/pt-2.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.se-container {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-5);
  padding: var(--mb-6) var(--mb-4);
  background-color: rgba(250, 250, 250, 0.96);
}

.se-title {
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: var(--mb-3);
  border-bottom: 1px #d4d4d4 solid;
}

.se-title h3 {
  flex: 0 0 40%;
  font-size: 2.5rem;
  font-weight: 300;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--soft-black);
  line-height: 1.3;
}

.se-title h3 span,
.se-title p span {
  color: var(--th-brn);
}

.se-title p {
  flex: 0 0 40%;
  font-size: 1.3rem;
  font-weight: 300;
  text-align: left;
  color: var(--txt-grey);
  padding-top: var(--mb-0-5);
}

.se-cards {
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
}

.sec {
  flex: 0 0 31%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1-5);
  padding-bottom: var(--mb-1);
  border-bottom: 1px var(--th-brn) solid;
  overflow: hidden;
  transition: all 0.2s ease-in-out;
}

.sec:hover {
  border-bottom: 2px var(--th-grn) solid;
}

.sec h4 {
  font-size: 1.5rem;
  font-weight: 300;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--soft-black);
  line-height: 1.3;
}

.sec img {
  width: 100%;
  height: 400px;
  object-fit: cover;
}

.sec p {
  font-size: 0.95rem;
  font-weight: 400;
  text-align: left;
  color: var(--txt-grey);
}

/*========== >>>>> HELP SECTION <<<<< ==========*/
.hp {
  width: 100%;
  padding: var(--mb-6) var(--mb-4);
}

.hp-container {
  width: 100%;
  height: 750px;
  justify-content: space-between;
  align-items: flex-start;
}

.hp-title {
  position: relative;
  flex: 0 0 45%;
  height: 100%;
  border-radius: 8px;
  overflow: hidden;
}

.hpt-img {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.hpt-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hpt-data {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  padding: var(--mb-3);
  justify-content: space-between;
  align-items: flex-start;
  row-gap: var(--mb-2);
}

.hpt-data h3 {
  font-size: 2.4rem;
  font-weight: 300;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--white);
  line-height: 1.25;
}

.hpt-data h3 span {
  color: var(--th-bge);
}

.hptd {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1-5);
}

.hptd p {
  font-size: 1rem;
  font-weight: 300;
  text-align: left;
  color: var(--soft-white);
}

.hp-cards {
  flex: 0 0 52%;
  height: 100%;
  row-gap: var(--mb-1-5);
  justify-content: space-between;
  flex-wrap: wrap;
  /* padding: var(--mb-2); */
  /* border: 1px red solid; */
}

.hpc {
  flex: 0 0 47.5%;
  height: 48%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1);
  padding: var(--mb-1-5);
  /* border: 1px #d4d4d4 solid; */
  background-color: #fafafa;
  border-radius: 8px;
}

/* .hpc:nth-child(odd) {
  border-right: 2px #d4d4d4 solid;
}

.hpc:nth-child(1),
.hpc:nth-child(2) {
  border-bottom: 2px #d4d4d4 solid;
} */

.hpc-title {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1);
}

.hpc-title span {
  font-size: var(--fs-3-5);
  text-align: left;
  /* color: var(--th-grn); */
  color: var(--th-brn);
}

.hpc-title h4 {
  font-size: 1.3rem;
  font-weight: 400;
  font-family: var(--pop-font);
  text-align: left;
  /* color: var(--soft-black); */
  color: var(--th-brn);
  line-height: 1.3;
}

.hpc p {
  width: 95%;
  font-size: 0.9rem;
  font-weight: 400;
  text-align: left;
  color: var(--txt-grey);
}

/*========== >>>>> RECENT SECTION <<<<< ==========*/
.re {
  width: 100%;
  padding: 0;
  overflow: hidden;
  background-color: var(--white);
  background-image: url(/assets/img/patterns/pt-2.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.re-container {
  width: 100%;
  justify-content: flex-start;
  padding: var(--mb-6) var(--mb-4);
  row-gap: var(--mb-4);
  background-color: rgba(250, 250, 250, 0.95);
}

.re-title {
  width: 100%;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: var(--mb-3);
  border-bottom: 1px var(--th-grn) solid;
}

.re-title h3 {
  flex: 0 0 40%;
  font-size: 2.5rem;
  font-weight: 300;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--soft-black);
  line-height: 1.3;
}

.re-title h3 span {
  color: var(--th-brn);
}

.ret {
  flex: 0 0 40%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1);
}

.re-title p {
  font-size: 1.1rem;
  font-weight: 300;
  text-align: left;
  color: var(--txt-grey);
}
/* ---------- Carousel wrapper & track ---------- */
.re-cards-wrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
}

/* use gap (works with flexbox), and set touch-action for pointer handling */
.re-cards {
  display: flex; /* ensure this is a flex track */
  gap: var(--mb-0-75); /* explicit gap (used by JS measurement) */
  justify-content: flex-start;
  transition: transform 0.6s ease;
  will-change: transform;
  touch-action: pan-y; /* allow vertical scrolling, but let JS handle horizontal swipes */
  -webkit-tap-highlight-color: transparent;
}

/* ensure predictable sizing */
.rec {
  flex: 0 0 calc(50% - (var(--mb-0-75) / 2));
  max-width: calc(50% - (var(--mb-0-75) / 2));
  height: 470px;
  position: relative;
  box-sizing: border-box; /* important for exact widths */
  margin: 0;
  user-select: none;
  -webkit-user-drag: none;
}

/* @media (max-width: 768px) {
  .re-cards {
    column-gap: 0;
  }

  .rec {
    min-width: 375px;
    height: 280px;
  }
} */

.rec-img {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: var(--th-bge);
}

.rec-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rec-data {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  justify-content: flex-end;
  align-items: flex-start;
  row-gap: var(--mb-1);
  padding: var(--mb-2);
  background-color: rgba(0, 0, 0, 0.7);
  animation: fade 0.3s ease-in-out;
  display: none;
}

.rec:hover .rec-data {
  display: flex;
  animation: fade 0.3s ease-in-out;
}

.rec-data h5 {
  font-size: 1.4rem;
  font-weight: 400;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--white);
  line-height: 1.3;
  padding-bottom: var(--mb-1);
  border-bottom: 2px #fafafa solid;
}

.rec-data h5 span {
  color: var(--th-bge);
}

.rec-data p {
  width: 95%;
  font-size: 0.95rem;
  font-weight: 300;
  text-align: left;
  color: var(--white);
}

.rec-data p span {
  color: var(--th-bge);
  font-weight: 500;
}

.re-action {
  width: 90%;
  justify-content: space-between;
  padding-top: var(--mb-2);
  border-top: 1px var(--th-grn) solid;
}

.rea-nav {
  flex: 0 0 auto;
  justify-content: flex-end;
  column-gap: var(--mb-0-5);
}

.rea-nav span {
  border: 1px var(--th-brn) solid;
  padding: 0.2rem var(--mb-0-5);
  font-size: 2rem;
  color: var(--txt-grey);
  cursor: pointer;
}

.rea-nav span:hover {
  background-color: var(--th-brn);
  color: var(--white);
}

/*========== >>>>> CTA SECTION <<<<< ==========*/
.cta {
  width: 100%;
  height: 75vh;
  padding: 0;
  background-color: var(--white);
  background-image: url(/assets/img/bckg/bg-2.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.ct-container {
  width: 100%;
  height: 100%;
  /* justify-content: flex-start; */
  /* align-items: flex-end; */
  row-gap: var(--mb-6);
  padding: var(--mb-4) var(--mb-3);
  background-color: rgba(0, 0, 0, 0.7);
}

.ct-card {
  /* width: 50%; */
  border-radius: 8px;
  overflow: hidden;
}

.ctc {
  width: 100%;
  row-gap: var(--mb-1-5);
}

.ctc h3 {
  width: 80%;
  font-size: 6vw;
  font-weight: 300;
  font-family: var(--pop-font);
  text-align: center;
  color: var(--white);
  line-height: 1.1;
}

.ctc > p {
  width: 47%;
  font-size: 1rem;
  font-weight: 300;
  text-align: center;
  color: var(--txt-grey);
  color: var(--soft-white);
  margin-bottom: 0.2rem;
}

.ctc h3 span {
  color: var(--th-bge);
  line-height: 1;
}

/*========== >>>>> FAQ SECTION <<<<< ==========*/
.faq {
  width: 100%;
  padding: 0;
  background-color: var(--white);
  padding: var(--mb-6);
}

.fq-container {
  width: 100%;
  justify-content: flex-start;
  row-gap: var(--mb-4);
  background-color: #fafafa;
  padding: var(--mb-3);
  border-radius: 10px;
}

.fq-title {
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
}

.fq-title h3 {
  flex: 0 0 45%;
  font-size: 2.5rem;
  font-weight: 300;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--soft-black);
  line-height: 1.3;
}

.fq-title h3 span {
  color: var(--th-brn);
}

.fqt {
  flex: 0 0 45%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1-5);
  padding-top: var(--mb-0-25);
}

.fqt > p {
  font-size: 0.95rem;
  font-weight: 400;
  text-align: left;
  color: var(--txt-grey);
}

.fq-cards {
  width: 100%;
  justify-content: flex-start;
  row-gap: var(--mb-1);
}

.fqc {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1);
  padding: var(--mb-1-5);
  border: 1px #d4d4d4 solid;
  border-radius: 8px;
  cursor: pointer;
}

.fqc.active {
  background-color: var(--white);
}

.fqc:hover {
  background-color: var(--white);
}

.fqc-q {
  width: 100%;
  justify-content: space-between;
}

.fqc-q h4 {
  font-size: 1.1rem;
  font-weight: 400;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--soft-black);
}

.fqc-q span {
  padding: var(--mb-0-25);
  /* border: 1px red solid; */
  font-size: 1.8rem;
  border-radius: 5px;
  line-height: 1;
  /* rotate: 180deg; */
  display: flex;
  justify-content: center;
  align-items: center;
}

.fqc.active .fqc-q h4 {
  font-size: 1.2rem;
}

.fqc.active .fqc-q span {
  transform: rotate(-180deg);
  transition: all 0.3s ease-in-out;
  background-color: var(--th-brn);
  color: var(--white);
  padding-bottom: 0.2rem;
}

.fqc-a {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-0-75);
  animation: fadeY 0.3s ease-in-out;
  display: none;
}

.fqc.active .fqc-a {
  display: flex;
}

.fqc-a p {
  width: 85%;
  font-size: 0.95rem;
  font-weight: 400;
  text-align: left;
  color: var(--txt-grey);
}

.fqc-a p span {
  color: var(--th-brn);
  font-weight: 500;
}

/* --------------- ========== AB-MAIN ========== ---------------*/
.ab-main {
  width: 100%;
  overflow: hidden;
}

/*========== >>>>> AERO SECTION <<<<< ==========*/
.aero {
  width: 100%;
  /* height: 105dvh; */
  padding: 0;
  background-image: url(/assets/img/patterns/pt-1-clr.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.ae-container {
  width: 100%;
  height: 100%;
  padding: var(--mb-6) var(--mb-4);
  /* padding-top: var(--mb-6-5); */
  row-gap: var(--mb-3);
  background-color: rgba(250, 250, 250, 0.95);
}

.ae-title {
  width: 100%;
  justify-content: flex-start;
  align-items: center;
  row-gap: var(--mb-0-5);
  /* padding-bottom: var(--mb-2-5);
  border-bottom: 1px #d4d4d4 solid; */
}

.aet-span {
  padding: var(--mb-0-25) var(--mb-1);
  background-color: #e5e5e5;
  color: var(--txt-grey);
  border-radius: 30px;
  font-style: 0.9rem;
  display: none;
}

.ae-title h1 {
  font-size: var(--fs-6);
  font-weight: 300;
  text-align: center;
  color: var(--soft-black);
  letter-spacing: -0.05em;
}

.ae-title h1 > span {
  color: var(--th-brn);
}

.ae-title p {
  width: 65%;
  color: var(--txt-grey);
  font-size: 1rem;
  font-weight: 400;
  text-align: center;
  line-height: 1.6;
}

.ae-media {
  width: 100%;
  /* border: 1px teal solid; */
}
.aem {
  flex: 0 0 420px;
  height: 420px;
  border-radius: 50%;
  border: 8px var(--soft-white) solid;
  margin-left: -3.5rem;
  overflow: hidden;
}

.aem:first-child {
  margin: 0;
}

.aem img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

/*========== >>>>> ABOUT - ABOUT SECTION <<<<< ==========*/
.aa {
  position: relative;
  width: 100%;
  padding: var(--mb-6) var(--mb-4);
  padding-bottom: 0;
  overflow: hidden;
}

.aa-svg {
  position: absolute;
  right: -8rem;
  bottom: -10rem;
  width: 70%;
  overflow: hidden;
  z-index: 2;
}

.aa-svg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.03;
}

.aa-container {
  width: 100%;
  justify-content: flex-start;
  row-gap: var(--mb-8);
  z-index: 3;
}

.aa-title {
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
}

.aa-title h2 {
  flex: 0 0 51%;
  font-size: 2.1rem;
  font-weight: 300;
  text-align: left;
  color: var(--soft-black);
}

.aa-title h2 span {
  color: var(--txt-grey);
  color: var(--th-grn);
}

.aat {
  flex: 0 0 40%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1-5);
}

.aat > p {
  font-size: 1rem;
  font-weight: 300;
  text-align: left;
  color: var(--soft-black);
  line-height: 1.7;
  padding-top: var(--mb-0-5);
}

.aa-cards {
  position: relative;
  width: 100%;
  height: 600px;
  align-items: flex-end;
  /* border-bottom: 3px var(--th-brn) solid; */
  /* border: 1px red solid; */
}

.aac {
  position: absolute;
  bottom: 0;
  /* border: 1px teal solid; */
  padding: 2.2rem;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1-5);
  z-index: 2;
}

.aac:first-child {
  left: 0;
  width: 30vw;
  height: 450px;
  padding-right: var(--mb-4-5);
  background-color: var(--cannoli-cream);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}

.aac:nth-child(2) {
  left: 59%;
  transform: translate(-50%, 0);
  width: 37vw;
  height: 580px;
  padding-right: var(--mb-7);
  margin-left: -6rem;
  z-index: 3;
  background-color: var(--the-grey);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}

.aac:last-child {
  right: 0;
  width: 32.5vw;
  height: 360px;
  margin-left: -10rem;
  z-index: 4;
  background-color: var(--th-bge);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}

.aac > span {
  font-size: var(--fs-3);
  /* color: var(--soft-black); */
  color: var(--th-grn);
}

.aac h3 {
  font-size: 1.5rem;
  font-weight: 400;
  text-align: left;
  color: var(--soft-black);
  color: var(--th-brn);
  line-height: 1;
}

/* .aac:nth-child(3) h3 {
  color: var(--white);
} */

.aac p {
  font-size: 0.9rem;
  font-weight: 400;
  text-align: left;
  color: var(--txt-grey);
  line-height: 1.7;
}

/* .aac:nth-child(3) p {
  color: var(--white);
} */

/*========== >>>>> ABOUT - TRANSPARENCY SECTION <<<<< ==========*/

.ap {
  width: 100%;
  height: 100dvh;
  padding: 0;
  background-image: url(/assets/img/bckg/bg-24.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.ap-container {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  padding: var(--mb-4);
  justify-content: flex-start;
  align-items: flex-end;
}

.ap-card {
  width: 600px;
  padding: var(--mb-2-5);
  background-color: var(--white);
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-0-5);
  border-radius: 30px;
}

.ap-card h3 {
  font-size: 2.2rem;
  font-weight: 300;
  font-family: var(--pop-font);
  text-align: left;
  color: var(--soft-black);
  /* color: var(--th-brn); */
  /* color: var(--th-grn); */
  line-height: 1.3;
  margin-bottom: var(--mb-1);
}

.ap-card h3 > span {
  /* color: var(--th-eg); */
  color: var(--th-brn);
}

.ap-card > p {
  font-size: 0.95rem;
  font-weight: 400;
  text-align: left;
  color: var(--txt-grey);
  line-height: 1.7;
}

.ap-card button {
  margin-top: var(--mb-1);
}

/* --------------- ========== SE-MAIN || SERVICES/CAUSES PAGE ========== ---------------*/
.se-main {
  width: 100%;
  overflow: hidden;
}

/*========== >>>>> SERO SECTION <<<<< ==========*/
.sero {
  width: 100%;
  height: 75dvh;
  padding: 0;
  background-color: var(--soft-black);
  background-image: url(/assets/img/bckg/bg-52.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-bottom-left-radius: 60px;
  border-bottom-right-radius: 60px;
  overflow: hidden;
}

.so-container {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
}

.so-title {
  width: 100%;
  row-gap: var(--mb-1-5);
  padding: var(--mb-4);
  padding-top: var(--mb-5);
}

.so-title h1 {
  font-size: var(--fs-6);
  font-weight: 300;
  text-align: center;
  color: var(--soft-white);
  letter-spacing: -0.05em;
  line-height: 1;
}

.so-title h1 > span {
  color: var(--th-brn);
}

.so-title p {
  width: 60%;
  color: #fafafa;
  font-size: 1rem;
  font-weight: 400;
  text-align: center;
  line-height: 1.6;
}

.so-title p span {
  color: var(--th-bge);
}

.so-title > button p {
  width: auto;
}

/*========== >>>>> SERVICES - LISTING SECTION <<<<< ==========*/
.sl {
  width: 100%;
}

.sl-container {
  width: 100%;
  justify-content: flex-start;
  row-gap: var(--mb-4);
}

.sl-tabs {
  column-gap: var(--mb-1-5);
  align-items: flex-start;
}

.slt {
  flex: 0 0 auto;
  padding: var(--mb-0-75) var(--mb-1-5);
  border-radius: 30px;
  background-color: var(--cannoli-cream);
  cursor: pointer;
}

.slt p {
  color: var(--th-brn);
  text-align: center;
  font-size: var(--fs-1);
}

.slt:hover {
  background-color: var(--th-bge);
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.slt.active {
  background-color: var(--th-brn);
}

.slt.active p {
  color: var(--cannoli-cream);
}

.sl-wrapper {
  width: 100%;
  justify-content: flex-start;
  flex-wrap: wrap;
  row-gap: var(--mb-4);
  column-gap: var(--mb-4);
  /* border: 1px teal solid; */
  padding: var(--mb-4) 0;
  border-top: 2px var(--th-grn) solid;
  border-bottom: 2px var(--th-grn) solid;
}

.sl-wrapper.active {
  justify-content: center;
  align-items: flex-start;
  column-gap: unset;
}

.slw {
  flex: 0 0 47%;
  height: 663px;
  border: 1px var(--th-brn) solid;
  /* background-color: var(--cannoli-cream); */
  /* background-color: #fafafa; */
  border-radius: 30px;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-2);
  padding: var(--mb-2);
  display: none;
  animation: fadeY 0.3s ease-in-out;
}

.slw.default {
  display: flex;
}

.slw.active {
  flex: 0 0 85%;
  height: auto;
  display: flex;
  flex-direction: row;
  column-gap: var(--mb-2);
  row-gap: 0;
}

.slw-img {
  width: 100%;
  height: 300px;
  border-radius: 15px;
  overflow: hidden;
}

.slw.active .slw-img {
  flex: 0 0 50%;
  height: 320px;
}

.slw-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.slw-data {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-1);
  padding-top: var(--mb-1-5);
  border-top: 1px var(--th-grn) solid;
}

.slw.active .slw-data {
  border-top: none;
  padding-top: 0;
}

.slw-data h3 {
  font-size: var(--fs-1-5);
  font-weight: 400;
  text-align: left;
  color: var(--th-brn);
  line-height: 1.1;
}

.slw:first-child.active .slw-data h3 {
  padding-bottom: 3.6rem;
}

.slw:nth-child(2).active .slw-data h3 {
  padding-bottom: 6rem;
}

.slw:nth-child(3).active .slw-data h3 {
  padding-bottom: 5rem;
}

.slw-data > p {
  font-size: 0.95rem;
  font-weight: 400;
  text-align: left;
  color: var(--txt-grey);
}

/* --------------- ========== CO-MAIN || CONTACT PAGE ========== ---------------*/
.co-main {
  width: 100%;
  overflow: hidden;
}

/*========== >>>>> CERO SECTION <<<<< ==========*/

/*========== >>>>> SERO SECTION <<<<< ==========*/
.cero {
  width: 100%;
  height: 100dvh;
  padding: 0;
  background-image: url(/assets/img/patterns/pt-1-clr.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px;
  /* border: 1px red solid; */
}

.ce-container {
  width: 100%;
  height: 100%;
  padding: 0 var(--mb-2);
  padding-top: var(--mb-7);
  padding-bottom: var(--mb-2);
  background-color: rgba(250, 250, 250, 0.95);
  justify-content: space-between;
}

.ce-title {
  width: 100%;
  padding: var(--mb-3) 0;
  border-top: 2px #e5e5e5 solid;
}

.ce-title h1 {
  width: 100%;
  font-size: 11.25vw;
  font-weight: 300;
  text-align: center;
  /* color: var(--th-brn); */
  /* color: var(--soft-black); */
  color: var(--txt-grey);
  line-height: 1;
  letter-spacing: -0.05em;
  /* text-transform: uppercase; */
}

.ce-title h1 span {
  color: var(--th-brn);
  /* color: var(--soft-black); */
}

.ce-cards,
.ce-footer {
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
  padding: var(--mb-2-5) 0;
  border-top: 2px #e5e5e5 solid;
}

.cec {
  flex: 0 0 33.3%;
  /* border: 1px gold solid; */
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-0-75);
}

.cec-title {
  width: 100%;
  justify-content: flex-start;
}

.cec-title h4 {
  width: 100%;
  font-size: var(--fs-1);
  font-weight: 500;
  text-align: left;
  color: var(--th-brn);
  opacity: 0.8;
  line-height: 1.1;
  text-transform: uppercase;
}

.cec-data,
.cecd-ul {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-0-25);
}

/* .cecd-ul {
  row-gap: 0.1rem;
} */

.cecd-ul li {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  row-gap: var(--mb-0-5);
  font-size: 0.9rem;
  font-weight: 500;
  text-align: left;
  line-height: 1.2;
  color: var(--txt-grey);
  transition: all 0.2s ease-in-out;
}

.cecd-ul li a {
  color: var(--txt-grey);
  font-size: 0.9rem;
}

.cec:first-child .cecd-ul li:hover {
  text-decoration: underline;
  text-decoration-color: var(--th-brn);
  text-decoration-thickness: 1.5px;
}

.cec-data p,
.cec-data p a {
  width: 100%;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: left;
  color: var(--txt-grey);
  line-height: 1.35;
}

.cec-data p a {
  text-decoration: underline;
  text-decoration-color: var(--th-brn);
  transition: all 0.2s ease-in-out;
}

.cec-data p a:hover {
  text-decoration-thickness: 1.5px;
}

.ce-footer {
  align-items: center;
  column-gap: unset;
}

.cef {
  flex: 0 0 33.3%;
  justify-content: flex-start;
}

.cef p,
.cef-socials a {
  font-size: 0.9rem;
  font-weight: 500;
  text-align: left;
  color: var(--txt-grey);
  line-height: 1.35;
}

.cef-socials {
  flex: 0 0 33.3%;
  justify-content: space-between;
}

.cef-socials a {
  flex: 0 0 auto;
  transition: all 0.2s ease-in-out;
}

.cef-socials a:hover {
  text-decoration: underline;
  text-decoration-color: var(--th-brn);
  text-decoration-thickness: 1.5px;
}

/*===== MEDIA QUERIES =====*/
/* Media query for screens with a maximum width of 500px */
@media screen and (max-width: 500px) {
  /* --------------- ========== LP-MAIN ========== ---------------*/
  .lp-main {
    width: 100%;
    overflow: hidden;
  }

  /*========== >>>>> HERO SECTION <<<<< ==========*/
  .hero {
    width: 100%;
    height: 100dvh;
  }

  .h-container {
    width: 100%;
    height: 100%;

    /* padding-bottom: 0; */
    align-items: center;
    row-gap: var(--mb-2);
  }

  .h-title {
    width: 100%;
    height: 100%;
    justify-content: flex-end;
    align-items: flex-start;
    /* border: 1px red solid; */
    overflow: hidden;
    padding: var(--mb-2) var(--mb-1);
  }

  .h-title h1 {
    font-size: 21vw;
    color: var(--white);
    text-align: center;
    margin-bottom: 0;
    line-height: 1;
  }

  .h-title h1 span {
    color: var(--th-bge);
  }

  /*========== >>>>> ABOUT SECTION <<<<< ==========*/
  .ab {
    padding: var(--mb-4-5) var(--mb-1-5);
  }

  .ab-container {
    width: 100%;
    row-gap: var(--mb-4);
  }

  .ab-title {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    row-gap: var(--mb-3);
  }

  .abt-img {
    flex: 0 0 auto;
    width: 50%;
  }

  .abt-data {
    flex: 0 0 auto;
    width: 100%;
    justify-content: center;
    align-content: flex-start;
  }

  .abt-data h3 {
    width: 95%;
    font-size: 1.2rem;
    text-align: center;
    line-height: 1.6;
  }

  .ab-body {
    width: 100%;
    flex-direction: column;
    justify-content: flex-end;
  }

  .ab-stats {
    flex: 0 0 auto;
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-2-5);
  }

  .abs {
    position: relative;
    flex: 0 0 auto;
    width: 85%;
    height: auto;
    justify-content: center;
    padding: var(--mb-2) var(--mb-1-5);
    row-gap: var(--mb-2);
    align-items: center;
  }

  .abs-no {
    justify-content: flex-start;
    align-items: flex-end;
    /* border: 1px teal solid; */
  }

  .abs-no h5 {
    font-size: 3rem;
    line-height: 0.9;
    text-align: center;
  }

  .abs-no span {
    font-size: 1.5rem;
    line-height: 1.2;
  }

  .abs-text p {
    font-size: 0.95rem;
    font-weight: 400;
    text-align: center;
    line-height: 1.4;
  }

  .abs-svg {
    position: absolute;
    top: -1.8rem;
    right: -1.3rem;
    z-index: 0;
  }

  .abs-svg p {
    font-size: var(--fs-4-5);
    font-weight: 500;
  }

  .ab-quote {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-0-75);
  }

  .ab-quote h4,
  .ab-quote p {
    font-size: var(--fs-2-5);
    text-align: center;
    line-height: 1.2;
  }

  .hit {
    flex: 0 0 40px;
    overflow: hidden;
  }

  /*========== >>>>> IMPACT SECTION <<<<< ==========*/
  .im {
    width: 100%;
  }

  .im-container {
    width: 100%;
    height: 900px;
    padding: var(--mb-4) var(--mb-1-5);
    align-items: flex-end;
  }

  .im-content {
    flex: 0 0 100%;
    height: auto;
    border-radius: 8px;
    overflow: hidden;
  }

  .im-data {
    width: 100%;
    height: auto;
    padding: var(--mb-2) var(--mb-1-5);
    align-items: center;
    row-gap: var(--mb-1-5);
  }

  .im-data h3 {
    width: 100%;
    font-size: 1.8rem;
    text-align: center;
    line-height: 1.25;
    margin: 0;
  }

  .imd {
    align-items: center;
    row-gap: var(--mb-1-5);
  }

  .imd > p {
    font-size: 0.9rem;
    font-weight: 300;
    text-align: center;
  }

  /*========== >>>>> SERVICES SECTION <<<<< ==========*/
  .se {
    width: 100%;
    padding: 0;
  }

  .se-container {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-2-5);
    padding: var(--mb-4) var(--mb-1-5);
  }

  .se-title {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    row-gap: var(--mb-1);
    padding-bottom: var(--mb-2);
    border-bottom: 1px #d4d4d4 solid;
  }

  .se-title h3 {
    flex: 0 0 100%;
    font-size: 2rem;
    font-weight: 300;
    text-align: center;
    line-height: 1.3;
  }

  .se-title p {
    flex: 0 0 auto;
    width: 90%;
    font-size: 0.95rem;
    font-weight: 300;
    text-align: center;
  }

  .se-cards {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    row-gap: var(--mb-3);
  }

  .sec {
    flex: 0 0 auto;
    width: 90%;
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-1);
    padding-bottom: 1.25rem;
  }

  .sec:hover {
    border-bottom: 2px var(--th-grn) solid;
  }

  .sec h4 {
    font-size: 1.35rem;
    font-weight: 400;
    text-align: center;
  }

  .sec img {
    height: 280px;
    border-radius: 20px;
  }

  .sec p {
    font-size: 0.9rem;
    text-align: center;
  }

  /*========== >>>>> HELP SECTION <<<<< ==========*/
  .hp {
    width: 100%;
    height: auto;
    padding: var(--mb-4-5) var(--mb-1-5);
  }

  .hp-container {
    width: 100%;
    height: auto;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    row-gap: var(--mb-4);
  }

  .hp-title {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    height: 600px;
  }

  .hpt-data {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.7);
    padding: var(--mb-3) var(--mb-2);
    align-items: center;
    row-gap: var(--mb-2);
  }

  .hpt-data h3 {
    font-size: 2rem;
    text-align: center;
    line-height: 1.25;
  }

  .hptd {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
  }

  .hptd p {
    font-size: 1rem;
    font-weight: 300;
    text-align: center;
  }

  .hp-cards {
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    row-gap: var(--mb-1-5);
    justify-content: flex-start;
    align-items: center;
    flex-wrap: unset;
    flex-direction: column;
    row-gap: var(--mb-3);
  }

  .hpc {
    flex: 0 0 auto;
    width: 90%;
    height: auto;
    justify-content: flex-start;
    align-items: center;
    padding: var(--mb-2);
    row-gap: var(--mb-1);
    border-radius: 8px;
  }

  .hpc-title {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
  }

  .hpc-title span {
    font-size: var(--fs-4);
  }

  .hpc-title h4 {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.3;
    text-align: center;
  }

  .hpc p {
    width: 100%;
    text-align: center;
  }

  /*========== >>>>> RECENT SECTION <<<<< ==========*/
  .re {
    width: 100%;
    padding: 0;
  }

  .re-container {
    width: 100%;
    justify-content: flex-start;
    padding: var(--mb-4-5) 0;
  }

  .re-title {
    width: 90%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    row-gap: var(--mb-2);
    padding-bottom: var(--mb-3);
  }

  .re-title h3 {
    flex: 0 0 auto;
    width: 90%;
    text-align: center;
    font-size: 2rem;
    font-weight: 300;
    line-height: 1.4;
  }

  /* ✅ Wrapper to enable overflow hidden for carousel */
  .re-cards-wrapper {
    width: 100%;
    overflow: hidden;
    position: relative;
  }

  .re-cards {
    width: 100%;
    justify-content: flex-start;
    transition: transform 0.6s ease;
    gap: 0;
    will-change: transform;
    /* border: 1px red solid; */
  }

  .rec {
    position: relative;
    flex: 0 0 100%; /* Always take 100% width of carousel by default */
    max-width: 100%;
    height: 500px;
    /* border: 1px teal solid; */
  }

  /* @media (max-width: 768px) {
    .re-cards {
      column-gap: 0;
    }

    .rec {
      min-width: 370px;
      height: 280px;
    }
  } */

  .rec-data {
    display: flex;
    align-items: center;
    padding: var(--mb-2) var(--mb-1-5);
  }

  .rec:hover .rec-data {
    display: none;
    animation: fade 0.3s ease-in-out;
  }

  .rec-data h5 {
    text-align: center;
  }

  .rec-data p {
    text-align: center;
    font-size: 0.9rem;
  }

  .rea-nav {
    flex: 0 0 auto;
    justify-content: flex-end;
    column-gap: var(--mb-0-5);
  }

  .rea-nav span {
    border: 1px var(--th-brn) solid;
    padding: 0.2rem var(--mb-0-5);
    font-size: 2rem;
    color: var(--txt-grey);
    cursor: pointer;
  }

  /*========== >>>>> CTA SECTION <<<<< ==========*/
  .cta {
    width: 100%;
    height: 75vh;
    padding: 0;
  }

  .ct-container {
    width: 100%;
    height: 100%;
    row-gap: var(--mb-6);
    padding: var(--mb-4) var(--mb-1-5);
    background-color: rgba(0, 0, 0, 0.7);
  }

  .ctc {
    width: 100%;
    row-gap: var(--mb-1-5);
  }

  .ctc h3 {
    width: 100%;
    font-size: 2.6rem;
    font-weight: 300;
    line-height: 1.2;
  }

  .ctc > p {
    width: 90%;
    font-size: 0.95rem;
    font-weight: 300;
    margin-bottom: 0.2rem;
  }

  /*========== >>>>> FAQ SECTION <<<<< ==========*/
  .faq {
    width: 100%;
    padding: var(--mb-3) var(--mb-1-5);
  }

  .fq-container {
    width: 100%;
    justify-content: flex-start;
    row-gap: var(--mb-3);
    padding: var(--mb-2) var(--mb-1-5);
    border-radius: 10px;
  }

  .fq-title {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    row-gap: var(--mb-1-5);
  }

  .fq-title h3 {
    flex: 0 0 auto;
    width: 100%;
    font-size: 2rem;
    font-weight: 300;
    text-align: center;
    line-height: 1.3;
  }

  .fq-title h3 span {
    color: var(--th-brn);
  }

  .fqt {
    flex: 0 0 auto;
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-1-5);
  }

  .fqt > p {
    font-size: 0.95rem;
    font-weight: 400;
    text-align: center;
  }

  .fq-cards {
    width: 100%;
    justify-content: flex-start;
    row-gap: var(--mb-1-5);
  }

  .fqc {
    width: 100%;
    padding: var(--mb-1);
    cursor: pointer;
  }

  .fqc-q {
    width: 100%;
    justify-content: space-between;
    align-items: flex-start;
  }

  .fqc-q h4 {
    flex: 0 0 80%;
    /* border: 1px red solid; */
    font-size: 1rem;
    font-weight: 400;
    font-family: var(--pop-font);
    text-align: left;
    color: var(--txt-grey);
  }

  .fqc-q span {
    padding: unset;
    /* border: 1px red solid; */
    font-size: 1.8rem;
    border-radius: unset;
  }

  .fqc.active .fqc-q h4 {
    font-size: 1.1rem;
    color: var(--soft-black);
  }

  .fqc.active .fqc-q span {
    padding: 0.2rem;
    border-radius: 5px;
    padding-bottom: 0.2rem;
  }

  .fqc-a {
    width: 100%;
    row-gap: var(--mb-0-75);
    display: none;
  }

  .fqc.active .fqc-a {
    display: flex;
  }

  .fqc-a p {
    width: 90%;
    font-size: 0.9rem;
  }

  /* --------------- ========== AB-MAIN ========== ---------------*/
  .ab-main {
    width: 100%;
    overflow: hidden;
  }

  /*========== >>>>> AERO SECTION <<<<< ==========*/
  .aero {
    width: 100%;
    /* height: 105dvh; */
    padding: 0;
  }

  .ae-container {
    width: 100%;
    height: 100%;
    padding: var(--mb-5) var(--mb-1-5);
    padding-top: var(--mb-6);
    row-gap: var(--mb-3);
    background-color: rgba(250, 250, 250, 0.95);
  }

  .ae-title {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-1);
    /* padding-bottom: var(--mb-2-5);
  border-bottom: 1px #d4d4d4 solid; */
  }

  .ae-title h1 {
    width: 90%;
    font-size: var(--fs-4);
    line-height: 1.2;
  }

  .ae-title h1 > span {
    color: var(--th-brn);
  }

  .ae-title p {
    width: 90%;
    font-size: 0.9rem;
    line-height: 1.6;
  }

  .ae-media {
    width: 100%;
    flex-direction: column;
  }

  .aem {
    flex: 0 0 auto;
    width: 310px;
    height: 310px;
    margin-left: 0;
    margin-top: -3.5rem;
    overflow: hidden;
    background-color: var(--soft-white);
  }

  .aem:first-child {
    margin: 0;
  }

  .aem img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
  }

  /*========== >>>>> ABOUT - ABOUT SECTION <<<<< ==========*/
  .aa {
    position: relative;
    width: 100%;
    padding: var(--mb-4) var(--mb-1-5);
    padding-bottom: var(--mb-5);
    overflow: hidden;
  }

  .aa-svg {
    position: absolute;
    right: -8rem;
    bottom: -10rem;
    width: 70%;
    overflow: hidden;
    z-index: 2;
  }

  .aa-svg img {
    opacity: 0.03;
  }

  .aa-container {
    width: 100%;
    justify-content: flex-start;
    row-gap: var(--mb-4);
    z-index: 3;
  }

  .aa-title {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    row-gap: var(--mb-2);
  }

  .aa-title h2 {
    flex: 0 0 auto;
    width: auto;
    font-size: 1.8rem;
    text-align: center;
    line-height: 1.4;
  }

  .aa-title h2 span {
    color: var(--txt-grey);
    color: var(--th-grn);
  }

  .aat {
    flex: 0 0 auto;
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-1-5);
  }

  .aat > p {
    width: 90%;
    font-size: 0.95rem;
    font-weight: 300;
    text-align: center;
    line-height: 1.7;
    padding-top: var(--mb-0-5);
  }

  .aa-cards {
    position: unset;
    width: 100%;
    height: auto;
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-3);
    flex-direction: column;
  }

  .aac {
    position: unset;
    width: 100%;
    bottom: 0;
    /* border: 1px teal solid; */
    padding: var(--mb-2-5) var(--mb-2);
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-1-5);
    z-index: 2;
    border-radius: 15px;
  }

  .aac:first-child {
    left: 0;
    width: auto;
    height: auto;
    padding-right: var(--mb-2);
    border-radius: 15px;
  }

  .aac:nth-child(2) {
    left: 0;
    transform: unset;
    width: auto;
    height: auto;
    padding-right: var(--mb-2);
    margin-left: 0;
    z-index: 3;
    background-color: var(--the-grey);
    border-radius: 15px;
  }

  .aac:last-child {
    right: 0;
    width: auto;
    height: auto;
    margin-left: 0;
    z-index: 4;
    background-color: var(--cannoli-cream);
    border-radius: 15px;
  }

  .aac > span {
    font-size: var(--fs-3);
    color: var(--th-grn);
  }

  .aac h3 {
    font-size: 1.5rem;
    font-weight: 400;
    text-align: center;
  }

  .aac p {
    font-size: 0.9rem;
    text-align: center;
    line-height: 1.6;
  }

  /* .aac:nth-child(3) p {
  color: var(--white);
} */

  /*========== >>>>> ABOUT - TRANSPARENCY SECTION <<<<< ==========*/
  .ap {
    width: 100%;
    height: 100dvh;
  }

  .ap-container {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    padding: 0 var(--mb-1-5);
    padding-bottom: var(--mb-2);
    justify-content: center;
    align-items: flex-end;
  }

  .ap-card {
    width: 100%;
    padding: var(--mb-2) var(--mb-1-5);
    justify-content: flex-start;
    align-items: center;
    row-gap: var(--mb-0-5);
    border-radius: 20px;
  }

  .ap-card h3 {
    font-size: 1.8rem;
    font-weight: 300;
    text-align: center;
    line-height: 1.3;
    margin-bottom: var(--mb-0-5);
  }

  .ap-card > p {
    font-size: 0.9rem;
    text-align: center;
    line-height: 1.6;
  }

  .ap-card button {
    margin-top: var(--mb-0-5);
  }

  /* --------------- ========== SE-MAIN || SERVICES/CAUSES PAGE ========== ---------------*/
  .se-main {
    width: 100%;
    overflow: hidden;
  }

  /*========== >>>>> SERO SECTION <<<<< ==========*/
  .sero {
    width: 100%;
    height: 80dvh;
    padding: 0;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
  }

  .so-container {
    width: 100%;
    height: 100%;
  }

  .so-title {
    width: 100%;
    row-gap: var(--mb-1-5);
    padding: var(--mb-2) var(--mb-1-5);
  }

  .so-title h1 {
    font-size: var(--fs-4);
    font-weight: 300;
  }

  .so-title > p {
    width: 100%;
    color: #fafafa;
    font-size: 0.95rem;
    font-weight: 400;
    text-align: center;
    line-height: 1.6;
  }

  .so-title p span {
    color: var(--th-bge);
  }

  /*========== >>>>> SERVICES - LISTING SECTION <<<<< ==========*/
  .sl {
    width: 100%;
    padding: var(--mb-5) var(--mb-1-5);
    padding-top: var(--mb-4);
  }

  .sl-container {
    width: 100%;
    justify-content: flex-start;
    row-gap: var(--mb-3);
  }

  .sl-tabs {
    column-gap: var(--mb-1);
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    row-gap: var(--mb-1);
  }

  .slt {
    flex: 0 0 auto;
    padding: var(--mb-0-75) var(--mb-1-5);
    border-radius: 30px;
    background-color: var(--cannoli-cream);
    cursor: pointer;
  }

  .slt p {
    color: var(--th-brn);
    text-align: center;
    font-size: 0.95remz;
  }

  .sl-wrapper {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: unset;
    flex-direction: column;
    row-gap: var(--mb-3);
    column-gap: unset;
    /* border: 1px teal solid; */
    padding: var(--mb-3) 0;
  }

  .sl-wrapper.active {
    justify-content: center;
    align-items: flex-start;
    column-gap: unset;
  }

  .slw {
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    border: 1px var(--th-brn) solid;
    border-radius: 20px;
    align-items: center;
    row-gap: var(--mb-2);
    padding: var(--mb-1-5) 1.25rem;
    display: none;
    animation: fade 0.3s ease-in-out;
  }

  .slw.default {
    display: flex;
  }

  .slw.active {
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    column-gap: unset;
    row-gap: var(--mb-1-5);
  }

  .slw-img {
    width: 100%;
    height: 300px;
    border-radius: 15px;
    overflow: hidden;
  }

  .slw.active .slw-img {
    flex: 0 0 auto;
    width: 100%;
    height: 300px;
  }

  .slw-data {
    width: 100%;
    align-items: center;
    row-gap: var(--mb-1);
    border-top: none;
    padding-top: 0;
  }

  .slw.active .slw-data {
    border-top: none;
    padding-top: 0;
  }

  .slw-data h3 {
    font-size: 1.35rem;
    text-align: center;
  }

  .slw:first-child.active .slw-data h3 {
    padding-bottom: 0;
  }

  .slw:nth-child(2).active .slw-data h3 {
    padding-bottom: 0;
  }

  .slw:nth-child(3).active .slw-data h3 {
    padding-bottom: 0;
  }

  .slw-data > p {
    font-size: 0.9rem;
    font-weight: 400;
    text-align: center;
  }

  /* --------------- ========== CO-MAIN ========== ---------------*/
  .co-main {
    width: 100%;
    overflow: hidden;
    z-index: 10;
  }

  /*========== >>>>> CERO SECTION <<<<< ==========*/
  .cero {
    width: 100%;
    height: auto;
    padding: 0;
    /* border: 1px red solid; */
  }

  .ce-container {
    width: 100%;
    height: 100%;
    padding: 0 var(--mb-1);
    padding-top: var(--mb-5);
    padding-bottom: var(--mb-2);
    justify-content: flex-start;
  }

  .ce-title {
    width: 100%;
    padding: var(--mb-2) 0;
    border-top: 2px #e5e5e5 solid;
  }

  .ce-title h1 {
    width: 100%;
    font-size: 13vw;
    line-height: 1.2;
  }

  .ce-cards,
  .ce-footer {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    row-gap: var(--mb-2);
    padding: var(--mb-2-5) 0;
    border-top: 2px #e5e5e5 solid;
  }

  .cec {
    flex: 0 0 auto;
    width: auto;
    align-items: center;
    row-gap: var(--mb-0-75);
  }

  .cec-title {
    width: 100%;
    justify-content: flex-start;
  }

  .cec-title h4 {
    width: 100%;
    font-size: 0.9rem;
    font-weight: 500;
    text-align: center;
  }

  .cec-data,
  .cecd-ul {
    align-items: center;
  }

  .cecd-ul {
    row-gap: 0.25rem;
  }

  .cecd-ul li {
    width: 100%;
    justify-content: center;
    font-size: 0.85rem;
    font-weight: 400;
    text-align: center;
  }

  .cecd-ul li a {
    color: var(--txt-grey);
    text-align: center;
  }

  .cec-data p,
  .cec-data p a {
    width: 100%;
    font-size: 0.85rem;
    font-weight: 400;
    text-align: center;
    color: var(--txt-grey);
    line-height: 1.35;
  }

  .cec-data p {
    width: 80%;
    text-align: center;
  }

  .cec:last-child .cec-data {
    justify-content: center;
  }

  .cec-data p a {
    text-decoration: underline;
    text-decoration-color: var(--th-brn);
    transition: all 0.2s ease-in-out;
  }

  .cec-data p a:hover {
    text-decoration-thickness: 1.5px;
  }

  .ce-footer {
    align-items: center;
    column-gap: unset;
    row-gap: var(--mb-2);
  }

  .cef {
    flex: 0 0 auto;
    width: auto;
    justify-content: flex-start;
  }

  .cef p,
  .cef-socials a {
    font-size: 0.85rem;
    font-weight: 400;
  }

  .cef-socials {
    flex: 0 0 auto;
    width: 80%;
    justify-content: space-between;
  }

  .cef-socials a {
    flex: 0 0 auto;
    transition: all 0.2s ease-in-out;
  }

  .cef-socials a:hover {
    text-decoration: underline;
    text-decoration-color: var(--th-brn);
    text-decoration-thickness: 1.5px;
  }
}

/* Media query for screens with a minimum width of 1440px and a maximum width of 1600px */
@media screen and (min-width: 1440px) and (max-width: 1600px) {
}

/* Media query for screens with a minimum width of 1650px */
@media screen and (min-width: 1650px) {
  .aa-cards {
    position: relative;
    width: 100%;
    height: 730px;
    align-items: flex-end;
    /* border-bottom: 3px var(--th-brn) solid; */
    /* border: 1px red solid; */
  }

  .aac:first-child {
    left: 0;
    width: 31vw;
    height: 475px;
    padding-right: var(--mb-5);
    background-color: var(--cannoli-cream);
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
  }

  .aac:nth-child(2) {
    left: 59%;
    transform: translate(-50%, 0);
    width: 40vw;
    height: 670px;
    padding-right: var(--mb-7);
    margin-left: -6rem;
    z-index: 3;
    background-color: var(--the-grey);
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
  }

  .aac:last-child {
    right: 0;
    width: 35vw;
    height: 340px;
    margin-left: -10rem;
    z-index: 4;
    background-color: var(--th-bge);
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
  }

  .aac > span {
    font-size: var(--fs-3);
    /* color: var(--soft-black); */
    color: var(--th-grn);
  }

  .aac h3 {
    font-size: 1.8rem;
    font-weight: 400;
    text-align: left;
    color: var(--soft-black);
    color: var(--th-brn);
    line-height: 1;
  }

  /* .aac:nth-child(3) h3 {
  color: var(--white);
} */

  .aac p {
    font-size: 1rem;
    font-weight: 400;
    text-align: left;
    color: var(--txt-grey);
    line-height: 1.7;
  }

  /* --------------- ========== AB-MAIN ========== ---------------*/
  .ab-main {
    width: 100%;
    overflow: hidden;
  }

  /*========== >>>>> AERO SECTION <<<<< ==========*/
  .ae-title p {
    width: 60%;
    font-size: 1rem;
    line-height: 1.6;
  }

  .ae-media {
    width: 100%;
    /* border: 1px teal solid; */
  }
  .aem {
    flex: 0 0 550px;
    height: 550px;
    border-radius: 50%;
    background-color: var(--soft-white);
    border: 10px var(--soft-white) solid;
    margin-left: -3.5rem;
    overflow: hidden;
  }

  /*========== >>>>> FAQ SECTION <<<<< ==========*/
  .faq {
    width: 100%;
    padding: 0;
    background-color: var(--white);
    padding: 10rem;
  }

  /* --------------- ========== SE-MAIN || SERVICES/CAUSES PAGE ========== ---------------*/
  .se-main {
    width: 100%;
    overflow: hidden;
  }

  /*========== >>>>> SERVICES - LISTING SECTION <<<<< ==========*/
  .sl {
    width: 100%;
  }

  .sl-container {
    width: 100%;
    justify-content: flex-start;
    row-gap: var(--mb-4);
  }

  .sl-wrapper {
    column-gap: unset;
    justify-content: space-between;
  }

  .slw {
    flex: 0 0 32%;
    height: 663px;
  }
}

@media screen and (min-width: 700px) and (max-width: 900px) {
}
