:root {
    --main-color-light: #E8E4DA;
    /*--main-color-light-hero: #dee221;*/
    --main-color-dark: #283D23;
    --main-color-dark-alt: #B9C4A4;
  }
  
  .bg-dark {
      background-color: var(--main-color-dark) !important;
      color: #fff !important;
      position: relative; /* for texture overlay */
  }
  .bg-dark a {
      color: var(--main-color-dark-alt);
  }
  .bg-dark a:hover {
      color: var(--main-color-light);
  }
  .bg-dark-alt {
      background-color: var(--main-color-dark-alt);
      color: #000 !important;
  }
  .bg-light {
      background-color: var(--main-color-light) !important;
      color: #000 !important;
  }
  
  /* Typography */
  @media only screen and (max-width: 400px) {
      #break-1 {
          display: none;
      }
  }
  .ministry-template .underline {
      display: inline-block;
      line-height: 25px;
      border-bottom: 3px solid var(--main-color-dark-alt);
  }
  
  /* Buttons */
  .btn-primary {
      color: #fff !important;
      background-color: var(--main-color-dark) !important;
      border-color: var(--main-color-dark) !important;
  }
  .btn-primary:hover {
      color: var(--main-color-dark) !important;
      background-color: var(--main-color-light) !important;
      border-color: var(--main-color-light) !important;
  }
  .btn-default {
      color: var(--main-color-dark) !important;
      background-color: var(--main-color-light) !important;
      border-color: var(--main-color-light) !important;
  }
  .btn-default:hover {
      color: #fff !important;
      background-color: var(--main-color-dark) !important;
      border-color: var(--main-color-dark) !important;
  }
  .bg-dark .btn-primary {
      color: var(--main-color-dark) !important;
      background-color: #fff !important;
      border-color: #fff !important;
  }
  .bg-dark .btn-primary:hover {
      color: var(--main-color-dark) !important;
      background-color: var(--main-color-light) !important;
      border-color: var(--main-color-light) !important;
  }
  
  /* SECTIONS */
   /* Header */
  .missions header.global-reach {
      color: #000;
      background-image: url('/images/missions/global-reach-bg-low-v2.jpg');
      background-attachment: scroll; 
      background-color: white; 
      background-position: center;
      position: relative;
      z-index: -10;
  }
  .missions header video {
          display: none;
      }
  .missions .missions-logo-wrapper {
      max-width: 750px;
      margin: 0 auto;
  }
  .missions header.global-reach img {
      margin: 0 auto;
      margin-bottom: 30px;
  }
  .missions header.global-reach h2 {
      font-weight: 400;
      letter-spacing: -2px;
  }
  
  @media only screen and (min-width: 768px) {
      .missions header.global-reach {
          background-image: url('/images/missions/global-reach-bg-high-v2.jpg');
      }
      .missions header video {
          display: inline-block;
      }
  }
  
    /* Partner Update */
  .missions .update-wrapper {
      max-width: 750px;
      margin: 0 auto;
  }
  .missions .update-image {
      margin-bottom: 30px;
  }
  .update-section a.video {
      transition: transform 250ms;
  }
  .update-section a.video:hover {
      transform: scale(1.01);
  }
  /* .missions .update-content p {
      margin-bottom: 0;
  } */
  @media only screen and (min-width: 1200px) {
      .missions .update-wrapper {
          max-width: 100%;
          display: flex;
          gap: 30px;
      }
      .missions .update-image {
          margin-bottom: 0;
      }
      .missions .update-image {
          min-width: 50%;
      }
      .missions .update-content {
          display: flex;
          flex-direction: column;
          justify-content: center;
      }
  }
  
  /* Partner Section */
  .partner-grid {
      --_spacer: 2rem;
      display: grid;
      grid-gap: var(--_spacer);
      grid-auto-flow: column;
      grid-auto-columns: 370px;
      overflow-x: auto;
      overscroll-behavior-inline: contain;
  }
  @media only screen and (max-width:768px) {
      .snaps-inline .partner-card:first-child {
          margin-left: var(--_spacer);
      }
      .snaps-inline .partner-card:last-child {
          margin-right: var(--_spacer);
      }
  }
  @media only screen and (max-width: 430px) {
      .partner-grid {
          grid-auto-columns: 85%;
      }
  }
  @media only screen and (min-width: 768px) {
      .partner-grid {
          grid-template-columns: repeat(auto-fill,minmax(31rem,1fr));
          grid-auto-rows: 1fr;
          grid-auto-flow: unset;
          grid-auto-columns: unset;
          width: 750px;
          margin-left: auto;
          margin-right: auto;
      }
  }
  @media only screen and (min-width: 992px) {
      .partner-grid {
          grid-template-columns: repeat(auto-fill,minmax(42rem,1fr));
          grid-auto-rows: 1fr;
          width: 970px;
      }
  }
  @media only screen and (min-width: 1200px) {
      .partner-grid {
          width: 1170px;
      }
  }
  
    .snaps-inline {
        scroll-snap-type: inline mandatory;
        scroll-padding-inline: var(--_spacer);
    }
    .snaps-inline > * {
        scroll-snap-align: start;
    }
  
    .swipe-for-more {
        width: 100%;
        display: block;
        padding-top: 10px;
        padding-right: 10px;
        color: var(--gray-800);
  }
  @media only screen and (min-width: 768px) {
    .swipe-for-more {
        display: none;
    }
  }
  /* scroller logos */
.partner-grid-logos {
    display: grid;
    grid-auto-flow: column;
    grid-auto-rows: 150px;
    align-items: center;
    margin: 60px 0 30px;
}
.partner-grid-logos .logo {
    width: 150px;
    height: 150px;
    margin-left: 35px;
    margin-right: 35px;
}
.partner-grid-logos .logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


  /* Trips Section */
  .mission-trip-grid {
      display: grid;
      grid-gap: 2rem;
      grid-template-columns: repeat(auto-fill,minmax(35rem,1fr));
      grid-auto-rows: 1fr;
  }
  
  
  
  /* Texture */
  .texture-overlay {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background-image: url('/images/missions/global-reach-texture.png');
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      opacity: .6;
  }
  .texture-overlay.parallax {
      background-attachment: fixed;
  }
  
  
  /* MISSION CARD (General) */
  
  .mission-card {
      background-color: #fff;
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      border-radius: 20px;
      overflow: hidden;
  }
  .mission-card-header, .mission-card-body, .mission-card-footer {
      padding: 15px 30px;
  }
  
  /* Partner Card */
  .partner-card {
      color: #fff;
      background-color: var(--main-color-dark);
      background-position: top center;
      background-size: cover;
      min-height: 480px;
  }
  .partner-card-body {
      background-image: linear-gradient(0deg, rgba(0,0,0,.95) 30% , rgba(0,0,0,.25) 100%);
      text-align: left;
      /* padding-top: 255px; */
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: end;
      position: relative;
      transition: all 500ms;
  }
  .partner-card-body .partner-stat p {
      font-size: 21px;
      line-height: 33px;
      text-align: right;
      vertical-align: middle;
      max-width: 400px;
      position: absolute;
      top: 15px;
      right: 30px;
      transition: opacity 250ms;
  }
  .partner-card-body .partner-stat p strong {
      font-size: 36px;
      font-weight: 700;
      vertical-align: middle;
  }
  .partner-card-body .logo {
      max-width: 250px;
      max-height: 85px;
      margin-bottom: 15px;
      display: flex;
  }
  .partner-card-body .logo img {
      height: 100%;
      object-fit: contain;
  }
  .partner-card-body .partner-description {
      color: #ddd;
      font-size: 16px;
      line-height: 20px;
      margin-bottom: 15px;
      transition: all 500ms;
  }
  .partner-card-body a {
      color: #fff;
      transition: all 500ms;
  }
  .partner-grid .final-card {
      display: flex;
      flex-direction: column;
      justify-content: center;
      height: 100%;
      padding: var(--_spacer);
  }
  @media only screen and (min-width: 768px) {
      .partner-card:hover .partner-stat p {
          opacity: .6;
      }
      .partner-card:hover .partner-card-body .partner-description {
          line-height: 24px;
      }
      .partner-card:hover .partner-card-body a {
          display: inline-block;
          padding: 5px 10px;
          color: #000;
          background-color: #fff;
      }
      .partner-card:hover .partner-card-body a:hover {
          text-decoration: none;
      }
      .partner-card:hover .partner-card-body {
          row-gap: 1.5rem;
          padding-bottom: 4rem;
      }
  }
  
  /* Mission Trip Card */
  .mission-trip-card {
      color: var(--gray-800);
  }
  .mission-trip-card-header {
      background-color: var(--main-color-dark-alt);
      color: #fff;
      height: 180px;
      position: relative;
      margin-bottom: 0;
      transition: all .5s;
      display: flex;
      align-items: center;
      justify-content: center;
  }
  .mission-trip-card-body {
      background-color: #fff;
      padding-top: 50px;
  }
  .mission-trip-card-body h6 {
      margin-top: 2em;
      margin-bottom: 0;
  }
  .mission-trip-card-body hr {
      margin-top: .5em;
      margin-bottom: .5em;
  }
  .interest-meetings {
      font-size: 16px;
      text-align: center;
  }
  .interest-meetings p {
      margin: 0;
      text-align: center;
  }
  .interest-meetings p.meeting-location {
      line-height: 1.05;
  }
  .mission-trip-card-header .date-box {
      background-color: var(--main-color-dark);
      color: #fff;
      width: -moz-fit-content;
      width: fit-content;
      bottom: -36px;
      padding: 15px;
      border: solid #fff 3px;
      position: absolute;
      margin: 0 auto;
      left: 0;
      right: 0;
      text-align: center;
  }
  .mission-trip-card-footer .btn-primary {
      color: #fff !important;
      background-color: var(--main-color-dark) !important;
      border-color: var(--main-color-dark) !important;
  }
  .mission-trip-card-footer .btn-primary:hover {
      color: var(--main-color-dark) !important;
      background-color: var(--main-color-light) !important;
      border-color: var(--main-color-light) !important;
  }
  .mission-trip-card-footer .btn {
      display: block;
      width: 100%;
      margin-bottom: 10px;
  }
  .mission-trip-1, .mission-trip-5, .mission-trip-9, .mission-trip-13 {
      background-image: url('/images/missions/mission-trip-bg-1.png');
      background-size: cover;
  }
  .mission-trip-2, .mission-trip-6, .mission-trip-10, .mission-trip-14 {
      background-image: url('/images/missions/mission-trip-bg-2.png');
      background-size: cover;
  }
  .mission-trip-3, .mission-trip-7, .mission-trip-11, .mission-trip-15 {
      background-image: url('/images/missions/mission-trip-bg-3.png');
      background-size: cover;
  }
  .mission-trip-4, .mission-trip-8, .mission-trip-12, .mission-trip-16 {
      background-image: url('/images/missions/mission-trip-bg-4.png');
      background-size: cover;
  }
  .mission-trip h4 {
      text-transform: uppercase;
      font-size: 40px;
      font-weight: 600;
      padding: 0 20px;
  }
  .mission-trip h5 {
      color: #fff;
      font-size: 30px;
      margin-bottom: 65px;
  }
  .mission-trip h5 span {
      background-color: #00000070;
      padding: 8px 18px;
  }
  .mission-trip h6 {
      font-weight: 300;
      text-transform: lowercase;
      font-style: italic;
      font-size: 34px;
  }

  .interest-meetings {
    text-align: left; /* remove */
}
.mission-trip-meeting-details {
    display: flex;
    align-items: center;
    gap: 1rem;
}
.mission-trip-meeting-details .meeting-date {
    color: #fff;
    background-color: var(--gray-800);
    font-size: 14px;
    font-weight: 700;
    border-radius: 25px;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
}
.mission-trip-meeting-details .meeting-location {
    text-align: left;
}
.mission-trip-card-header {
    position: relative;
}
.trip-header-img, .trip-header-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.trip-header-img {
    object-fit: cover;
    object-position: center;
    overflow: hidden;
}
.trip-header-img img {
    width: 100%;
    min-height: 100%;
    object-fit: cover;
}
.trip-header-img-overlay {
    background-color: rgba(0,0,0,.4);
}