:root {
  /* Brand Colors – as before */
  --color-rufous: #a02516;
  --color-cinnabar: #d94620;
  --color-caramel: #dc7c3c; 
  --color-hunyadi-yellow: #e8ae3b;
  --color-peach: #eabf92;
  --color-black: #020301;
  --color-white: #ffffff;
  --color-davys-gray: #525252;

  /* Transparent Versions */
  --color-rufous-transparent: rgba(160, 37, 22, 0.8);
  --color-cinnabar-transparent: rgba(217, 70, 32, 0.8);
  --color-caramel-transparent: rgba(220, 124, 60, 0.8);
  --color-hunyadi-yellow-transparent: rgba(232, 174, 59, 0.8);
  --color-peach-transparent: rgba(234, 191, 146, 0.8);

  /* Font Families */
  --font-montserrat: 'Montserrat', sans-serif;
  --font-avenir-lt-pro: 'Avenir LT Pro', sans-serif;
  --font-barriecito: 'Barriecito', cursive;
  --font-sue-ellen-francisco: 'Sue Ellen Francisco', cursive;

  /* Fluid Typography – h1–h6 */
   /* Perfect Fourth Scale – scaled so H1 max is 4rem */
  --fs-h6: clamp(1rem, 0.6rem + 0.4vw, 1.2rem);   /* base ×1.333 */
  --fs-h5: clamp(1.3rem, 0.8rem + 0.6vw, 1.6rem); /* h6 ×1.333 */
  --fs-h4: clamp(1.6rem, 1rem + 0.8vw, 2.1rem);   /* h5 ×1.333 */
  --fs-h3: clamp(2rem, 1.2rem + 1vw, 2.8rem);     /* h4 ×1.333 */
  --fs-h2: clamp(2.6rem, 1.4rem + 1.3vw, 3.2rem); /* h3 ×1.333 */
  --fs-h1: clamp(2.8rem, 1.6rem + 2vw, 4rem);     /* capped at 4rem */

  /* Body */
  --fs-body: clamp(0.85rem, 0.8rem + 0.3vw, 0.9rem);

   /* Font Weights */
  --fw-regular: 400;
  --fw-bold: 700;
  --fw-extra-bold: 800;

    --lh-reset: 1;
    --lh-compact: 0.92;
    --lh-snug: 1.07;
    --lh-tight: 1.14;
    --lh-medium: 1.15;
    --lh-relaxed: 1.43;
    --lh-loose: 1.8;
    --lh-list: 1.25;

    /* Letter-Spacing Variables */
  --ls-h1: 0.02em;  /* Slightly tighter for big headlines */
  --ls-h2: 0.015em;
  --ls-h3: 0.01em;
  --ls-h4: 0.005em;
  --ls-h5: 0.005em;
  --ls-h6: 0.005em;

  --ls-body: 0.01em; /* Slightly open for body text */
  --ls-small: 0.02em; /* for captions or UI labels */
}

/* base font size */
html {
  font-size: 17px; /* 1rem = 16px */
}

.moksha-heading--h1 {
  font-size: var(--fs-h1);
  font-weight: var(--fw-bold);
  line-height: 1.2;
}

.moksha-heading--h2 {
  font-size: var(--fs-h2);
  font-weight: var(--fw-bold);
  line-height: 1.25;
}

.moksha-heading--h3 {
  font-size: var(--fs-h3);
  font-weight: var(--fw-bold);
  line-height: 1.3;
}

.moksha-heading--h4 {
  font-size: var(--fs-h4);
  font-weight: var(--fw-bold);
  line-height: 1.35;
}

.moksha-heading--h5 {
  font-size: var(--fs-h5);
  font-weight: var(--fw-bold);
  line-height: 1.4;
}

.moksha-heading--h6 {
  font-size: var(--fs-h6);
  font-weight: var(--fw-bold);
  line-height: 1.45;
}

.moksha-text--body {
  font-size: var(--fs-body);
  font-weight: var(--fw-regular);
  line-height: 1.6;
}

/* Font Family Classes */
.moksha-font--montserrat {
  font-family: var(--font-montserrat);
}

.moksha-font--avenir-lt-pro {
  font-family: var(--font-avenir-lt-pro);
}

.moksha-font--barriecito {
  font-family: var(--font-barriecito);
}

.moksha-font--sue-ellen-francisco {
  font-family: var(--font-sue-ellen-francisco);
}

/* Font Weight Classes */
.moksha-font--regular {
  font-weight: var(--fw-regular);
}

.moksha-font--bold {
  font-weight: var(--fw-bold);
}

.moksha-font--extra-bold {
  font-weight: var(--fw-extra-bold);
}

/* Homepage CSS */
.main-title {
  font-size: var(--fs-h1);
  font-weight: var(--fw-bold);
  line-height: var(--lh-tight);
  color: var(--color-white);
}

.main-tagline {
  font-size: var(--fs-h3);
  font-weight: var(--fw-bold);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat);
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.main-intro {
  font-size: var(--fs-h5);
  font-weight: var(--fw-regular);
  line-height: var(--lh-relaxed);
  color: var(--color-white);
  font-family: var(--font-montserrat) !important;
  width: 100%;
}

@media (min-width: 1024px) {
  .main-intro {
    width: 70%;
  }
}

.what-project-moksha-is-section {
  /*background: linear-gradient(186deg,rgba(220, 124, 60, 0.96) 8%, rgba(160, 37, 22, 0.88) 62%);*/
  background: 
    linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.4)), /* Darkening layer */
    linear-gradient(to right, var(--color-rufous), var(--color-cinnabar), var(--color-caramel));
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); /* Adds extra "lift" to white font */
}

.what-is-the-project-title {
  font-size: var(--fs-h3);
  font-weight: var(--fw-bold);
  line-height: var(--lh-tight);
  color: var(--color-white);
  font-family: var(--font-montserrat);
  text-align: center;
}
.what-is-the-project-intro {
  font-size: var(--fs-h5);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat) !important;
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
  text-align: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.what-is-the-project-difference {
  font-size: var(--fs-h4);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat);
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
  text-align: center;
}
.what-is-the-project-outro {
  font-size: var(--fs-h5);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat) !important;
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
  text-align: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}


@media (min-width: 1024px) {
.what-is-the-project-outro,
.what-is-the-project-intro {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
}
}

.what-is-the-project-difference-icon-wrapper {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

@media (min-width: 1024px) {
  .what-is-the-project-difference-icon-wrapper {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem;
}
}

.what-is-the-project-difference-icons {

}

.what-is-the-project-difference-icons .w-iconbox-icon {
    color: var(--color-white)!important;
}

.what-is-the-project-difference-icons .w-iconbox-title {
  font-size: var(--fs-h5);
  font-weight: var(--fw-bold);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat);
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
  text-align: center;
}

.what-is-the-project-difference-icons .w-iconbox-text {
  font-size: var(--fs-h6);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat) !important;
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.about-project-title {

}

.about-project-title {
    font-size: var(--fs-h3);
    font-weight: var(--fw-bold);
    line-height: var(--lh-tight);
    color: var(--color-white);
    font-family: var(--font-montserrat);
    text-align: center;
}

.about-project-tagline {
    font-size: var(--fs-h6);
    font-weight: var(--fw-regular);
    line-height: var(--lh-tight);
    color: var(--color-white);
    font-family: var(--font-montserrat);
    text-align: center;
}

.about-the-project-difference-icon-wrapper {

}

.about-the-project-difference-icon-wrapper  {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

@media (min-width: 1024px) {
  .about-the-project-difference-icon-wrapper  {
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem;
}
}

.about-the-project-difference-icons .w-iconbox-icon {
    color: var(--color-white)!important;
}

.about-the-project-difference-icons .w-iconbox-title {
  font-size: var(--fs-h5);
  font-weight: var(--fw-bold);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat);
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.about-the-project-difference-icons .w-iconbox-text {
  font-size: var(--fs-h6);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat) !important;
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.founders-story-section {
  /*background: linear-gradient(14deg,rgba(220, 124, 60, 0.96) 8%, rgba(160, 37, 22, 0.88) 62%);*/
  background-color: var(--color-cinnabar);
  background-image: 
    radial-gradient(at 0% 0%, var(--color-caramel) 0, transparent 50%), 
    radial-gradient(at 100% 100%, var(--color-rufous) 0, transparent 50%);
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); /* Adds extra "lift" to white font */
}

.founders-story-wrapper {

}

.founders-story-wrapper  {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

@media (min-width: 1024px) {
  .founders-story-wrapper  {
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem;
}
}

.founders-story-inner-title {
  font-size: var(--fs-h5);
  font-weight: var(--fw-bold);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat);
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.founders-story-inner-content {
  font-size: var(--fs-h6);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat) !important;
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.philosophy-approach-wrapper {

}

.philosophy-approach-wrapper  {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

@media (min-width: 1024px) {
  .philosophy-approach-wrapper  {
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem;
}
}

.philosophy-approach-icons {

}

.philosophy-approach-icons .w-iconbox-icon {
    color: var(--color-white)!important;
}

.philosophy-approach-icons .w-iconbox-title {
  font-size: var(--fs-h5);
  font-weight: var(--fw-bold);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat);
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.philosophy-approach-icons .w-iconbox-text {
  font-size: var(--fs-h6);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat) !important;
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.philosophy-approach-icons ul {
  margin-left: 1.5rem !important;
}

.who-its-for-section {
  background-color: var(--color-rufous);
  background-image: radial-gradient(
    circle at center, 
    var(--color-cinnabar) 0%, 
    var(--color-rufous) 70%
  );
  text-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

.who-its-for-title {

}

.who-its-for-title {
    font-size: var(--fs-h3);
    font-weight: var(--fw-bold);
    line-height: var(--lh-tight);
    color: var(--color-white);
    font-family: var(--font-montserrat);
    text-align: center;
}

.who-its-for-wrapper {

}

.who-its-for-wrapper  {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

@media (min-width: 1024px) {
  .who-its-for-wrapper  {
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem;
}
}

.who-its-for-inner-title {
  font-size: var(--fs-h5);
  font-weight: var(--fw-bold);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat);
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.who-its-for-inner-content {
  font-size: var(--fs-h6);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat) !important;
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.who-its-for-wrapper ul,
.who-its-for-wrapper ol {
  margin-left: 1.5rem !important;
}

.future-vision-section {
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); /* Adds extra "lift" to white font */
}

.future-vision-title {
    font-size: var(--fs-h3);
    font-weight: var(--fw-bold);
    line-height: var(--lh-tight);
    color: var(--color-white);
    font-family: var(--font-montserrat);
    text-align: center;
}

.future-vision-wrapper  {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

@media (min-width: 1024px) {
  .future-vision-wrapper  {
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem;
}
}

.future-vision-icons .w-iconbox-icon {
    color: var(--color-white)!important;
}

.future-vision-icons .w-iconbox-title {
  font-size: var(--fs-h5);
  font-weight: var(--fw-bold);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat);
  letter-spacing: var(--ls-h1);
  color: var(--color-white);
}

.future-vision-icons .w-iconbox-text {
  font-size: var(--fs-h6);
  font-weight: var(--fw-regular);
  line-height: var(--lh-medium);
  font-family: var(--font-montserrat) !important;
  letter-spacing: var(--ls-h1);
  color: var(--color-white); 
}

.footer-section {
  background: var(--color-rufous, #a02516);
  color: var(--color-white, #FFFFFF);
}

.inner-footer-wrapper .vc_column-inner>.wpb_wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.1rem;
}

@media (min-width: 1024px) {
  .inner-footer-wrapper .vc_column-inner>.wpb_wrapper {
      display: grid;
      grid-template-columns: 1fr 2fr;
      gap: 3rem;
}
}

.footer-contact-title {
    font-size: var(--fs-h4);
    font-weight: var(--fw-bold);
    line-height: var(--lh-tight);
    color: var(--color-white);
    font-family: var(--font-montserrat);
}

.footer-contact-tagline {
    font-size: var(--fs-h4);
    font-weight: var(--fw-regular);
    line-height: var(--lh-tight);
    color: var(--color-white);
    font-family: var(--font-montserrat);
}

.footer-contact-text {
    font-size: var(--fs-h6);
    color: var(--color-white);
    font-weight: var(--fw-regular);
    line-height: var(--lh-relaxed);
    font-family: var(--font-montserrat);
}

.footer-contact-text p {
  margin-bottom: 0.4rem;
}

.footer-contact-text a {
  color: var(--color-white);
}

.footer-contact-text a:hover {
  color: var(--color-hunyadi-yellow, #e8ae3b);
  font-weight: var(--fw-bold);
}