/* =========================================
   MAPA OUR WORK
========================================= */

.mapa-our-work-list {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* =========================================
   SINGLE WORK ITEM - DESKTOP
========================================= */

.mapa-work-item {
  display: grid !important;

  grid-template-columns:
    minmax(220px, 1.1fr)
    70px
    minmax(220px, 1fr)
    minmax(280px, 1.25fr)
    minmax(240px, 1.1fr);

  column-gap: 10px !important;

  width: 100% !important;
  max-width: 100% !important;

  min-height: 180px !important;
  min-width: 0 !important;

  margin: 0 0 10px !important;
  padding: 0 !important;

  background: #ffffff !important;

  border: none !important;
  border-radius: 0 !important;

  overflow: visible !important;

  box-sizing: border-box !important;
}

/* =========================================
   IMAGE
========================================= */

.mapa-work-image {
  grid-column: 1 !important;
  grid-row: 1 !important;

  width: 100% !important;
  height: 180px !important;

  min-width: 0 !important;
  min-height: 180px !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: hidden !important;

  border-radius: 8px !important;

  box-sizing: border-box !important;
}

.mapa-work-image img {
  display: block !important;

  width: 100% !important;
  height: 100% !important;

  object-fit: cover !important;
  object-position: center !important;

  border-radius: 8px !important;
}

/* =========================================
   IMAGE PLACEHOLDER
========================================= */

.mapa-work-image-placeholder {
  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  height: 180px !important;

  background: #edf0f2 !important;

  color: #5d6773 !important;

  box-sizing: border-box !important;
}

/* =========================================
   COLOURED ICON BOX
   DESKTOP ONLY
========================================= */

.mapa-work-icon-box {
  grid-column: 2 !important;
  grid-row: 1 !important;

  align-self: stretch !important;

  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 70px !important;
  height: 180px !important;

  margin: 0 !important;
  padding: 0 !important;

  background: var(--mapa-work-color) !important;

  border-radius: 8px !important;

  box-sizing: border-box !important;
}

.mapa-work-icon {
  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 40px !important;
  height: 40px !important;

  color: #ffffff !important;
}

.mapa-work-icon i {
  font-size: 38px !important;
  line-height: 1 !important;

  padding-bottom: 0 !important;

  color: currentColor !important;
}

/* =========================================
   TITLE AND DESCRIPTION
========================================= */

.mapa-work-info {
  grid-column: 3 !important;
  grid-row: 1 !important;

  min-width: 0 !important;

  padding-top: 15px !important;
  padding-right: 15px !important;
  padding-bottom: 15px !important;
  padding-left: 0 !important;

  border-top: solid 1px #e1e5ea !important;
  border-bottom: solid 1px #e1e5ea !important;
  border-right: solid 1px #e1e5ea !important;

  box-sizing: border-box !important;

  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
}

.mapa-work-title,
.mapa-work-item .mapa-work-title {
  margin: 0 0 12px !important;
  padding: 0 !important;

  color: #0a2751 !important;

  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 900 !important;

  line-height: 1.35 !important;

  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
}

.mapa-work-description {
  margin: 0 !important;
  padding: 0 !important;

  color: #000000 !important;

  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 100 !important;

  line-height: 1.65 !important;

  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
}

/* =========================================
   KEY ACTIVITIES
   DYNAMIC COLOUR
========================================= */

.mapa-work-activities {
  grid-column: 4 !important;
  grid-row: 1 !important;

  min-width: 0 !important;

  padding: 0 10px !important;

  border-top: solid 1px #e1e5ea !important;
  border-bottom: solid 1px #e1e5ea !important;

  box-sizing: border-box !important;

  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
}

.mapa-work-activities h4,
.mapa-work-item .mapa-work-activities h4 {
  margin: 0 0 13px !important;
  padding-top: 15px !important;

  color: var(--mapa-work-color) !important;

  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 900 !important;

  line-height: 1.4 !important;
}

.mapa-work-activities ul {
  margin: 0 !important;

  padding: 0 5px 0 0 !important;

  list-style: none !important;
}

.mapa-work-activities li {
  position: relative !important;

  margin: 0 0 9px !important;

  padding: 0 0 0 13px !important;

  color: #000000 !important;

  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 100 !important;

  line-height: 1.45 !important;

  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
}

.mapa-work-activities li:last-child {
  margin-bottom: 0 !important;
}

.mapa-work-activities li::before {
  /* content: "-" !important; */

  position: absolute !important;

  left: 0 !important;
  top: 0 !important;

  color: var(--mapa-work-color) !important;

  font-weight: 700 !important;
}

/* =========================================
   IMPACT
   DYNAMIC COLOUR
========================================= */

.mapa-work-impact {
  grid-column: 5 !important;
  grid-row: 1 !important;

  display: flex !important;

  align-items: center !important;
  justify-content: space-between !important;

  width: 100% !important;
  height: 100% !important;

  min-width: 0 !important;

  gap: 20px !important;

  padding: 22px 24px !important;

  background: var(--mapa-work-light-color) !important;

  border-left: 4px solid var(--mapa-work-color) !important;

  border-radius: 8px !important;

  box-sizing: border-box !important;

  overflow: hidden !important;
}

/* =========================================
   IMPACT CIRCLE
========================================= */

.mapa-work-impact-icon {
  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  flex-shrink: 0 !important;

  width: 100px !important;
  min-width: 100px !important;
  height: 100px !important;

  margin: 0 !important;
  padding: 0 !important;

  border-radius: 50% !important;

  background: var(--mapa-work-light-color) !important;

  color: var(--mapa-work-color) !important;

  box-sizing: border-box !important;
}

.mapa-work-impact-icon i {
  font-size: 31px !important;

  line-height: 1 !important;

  color: currentColor !important;
}

/* =========================================
   IMPACT TEXT
========================================= */

.mapa-work-impact-content {
  flex: 1 !important;

  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  text-align: left !important;

  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
}

.mapa-work-impact-content h4,
.mapa-work-item .mapa-work-impact-content h4 {
  margin: 0 0 10px !important;
  padding: 0 !important;

  color: var(--mapa-work-color) !important;

  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 900 !important;

  line-height: 1.35 !important;
}

.mapa-work-impact-content p {
  margin: 0 !important;
  padding: 0 !important;

  color: #000000 !important;

  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 100 !important;

  line-height: 1.55 !important;

  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
}

/* =========================================
   EMPTY MESSAGE
========================================= */

.mapa-no-work-items {
  margin: 0 !important;
  padding: 20px 0 !important;

  color: #5d6773 !important;
}

/* =========================================
   TABLET
   768px - 1100px
========================================= */

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .mapa-our-work-list {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
  }

  .mapa-work-item {
    display: grid !important;

    /*
     * Four equal responsive columns:
     *
     * 1. Image
     * 2. Information
     * 3. Key Activities
     * 4. Impact
     */
    grid-template-columns: 25% 25% 25% 25% !important;

    column-gap: 0 !important;

    width: 100% !important;
    max-width: 100% !important;

    min-width: 0 !important;
    min-height: 180px !important;

    margin: 0 0 10px !important;
    padding: 0 !important;

    box-sizing: border-box !important;

    overflow: visible !important;
  }

  /* =========================================
     IMAGE
  ========================================= */

  .mapa-work-image {
    grid-column: 1 !important;
    grid-row: 1 !important;

    width: 100% !important;
    height: 180px !important;

    min-width: 0 !important;
    min-height: 180px !important;

    overflow: hidden !important;

    border-radius: 8px !important;
  }

  .mapa-work-image img {
    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
  }

  /* =========================================
     HIDE ICON ON TABLET
  ========================================= */

  .mapa-work-icon-box {
    display: none !important;
  }

  /* =========================================
     INFORMATION
  ========================================= */

  .mapa-work-info {
    grid-column: 2 !important;
    grid-row: 1 !important;

    width: 100% !important;
    min-width: 0 !important;

    padding: 15px 10px !important;

    border-top: 1px solid #e1e5ea !important;
    border-bottom: 1px solid #e1e5ea !important;
    border-right: 1px solid #e1e5ea !important;

    box-sizing: border-box !important;

    overflow: hidden !important;
  }

  .mapa-work-title,
  .mapa-work-item .mapa-work-title {
    font-size: 13px !important;

    line-height: 1.35 !important;

    margin: 0 0 9px !important;
  }

  .mapa-work-description {
    font-size: 11px !important;

    line-height: 1.45 !important;
  }

  /* =========================================
     KEY ACTIVITIES
  ========================================= */

  .mapa-work-activities {
    grid-column: 3 !important;
    grid-row: 1 !important;

    width: 100% !important;
    min-width: 0 !important;

    padding: 15px 8px !important;

    border-top: 1px solid #e1e5ea !important;
    border-bottom: 1px solid #e1e5ea !important;

    box-sizing: border-box !important;

    overflow: hidden !important;
  }

  .mapa-work-activities h4,
  .mapa-work-item .mapa-work-activities h4 {
    font-size: 12px !important;

    padding-top: 0 !important;

    margin: 0 0 9px !important;

    color: var(--mapa-work-color) !important;
  }

  .mapa-work-activities ul {
    margin: 0 !important;
    padding: 0 0 0 8px !important;
  }

  .mapa-work-activities li {
    font-size: 11px !important;

    line-height: 1.35 !important;

    margin: 0 0 6px !important;

    padding-left: 10px !important;
  }

  .mapa-work-activities li::before {
    color: var(--mapa-work-color) !important;
  }

  /* =========================================
     IMPACT
  ========================================= */

  .mapa-work-impact {
    grid-column: 4 !important;
    grid-row: 1 !important;

    display: flex !important;

    align-items: center !important;
    justify-content: flex-start !important;

    width: 100% !important;
    min-width: 0 !important;

    height: 180px !important;

    gap: 8px !important;

    padding: 12px 8px !important;

    background: var(--mapa-work-light-color) !important;

    border-left: 3px solid var(--mapa-work-color) !important;

    border-radius: 8px !important;

    box-sizing: border-box !important;

    overflow: hidden !important;
  }

  /* =========================================
     IMPACT ICON
  ========================================= */

  .mapa-work-impact-icon {
    width: 45px !important;
    min-width: 45px !important;
    height: 45px !important;

    flex-shrink: 0 !important;

    background: var(--mapa-work-light-color) !important;

    color: var(--mapa-work-color) !important;
  }

  .mapa-work-impact-icon i {
    font-size: 20px !important;
  }

  /* =========================================
     IMPACT CONTENT
  ========================================= */

  .mapa-work-impact-content {
    min-width: 0 !important;

    flex: 1 !important;

    overflow: hidden !important;
  }

  .mapa-work-impact-content h4,
  .mapa-work-item .mapa-work-impact-content h4 {
    font-size: 12px !important;

    line-height: 1.3 !important;

    margin: 0 0 6px !important;

    color: var(--mapa-work-color) !important;
  }

  .mapa-work-impact-content p {
    font-size: 10px !important;

    line-height: 1.4 !important;

    margin: 0 !important;

    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
  }
}

/* =========================================
   MOBILE
   BELOW 768px
========================================= */

@media screen and (max-width: 767px) {
  .mapa-work-item {
    display: flex !important;

    flex-direction: column !important;

    width: 100% !important;
    max-width: 100% !important;

    min-width: 0 !important;
    min-height: auto !important;

    margin-bottom: 20px !important;

    padding: 0 !important;

    overflow: hidden !important;

    box-sizing: border-box !important;
  }

  /* =========================================
     IMAGE
  ========================================= */

  .mapa-work-image {
    position: relative !important;

    width: 100% !important;
    height: 240px !important;

    min-height: 240px !important;

    min-width: 0 !important;

    border-radius: 0 !important;

    overflow: hidden !important;
  }

  .mapa-work-image img {
    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;

    border-radius: 0 !important;
  }

  /* =========================================
     HIDE ICON ON MOBILE
  ========================================= */

  .mapa-work-icon-box {
    display: none !important;
  }

  /* =========================================
     INFORMATION
  ========================================= */

  .mapa-work-info {
    width: 100% !important;

    height: auto !important;

    min-width: 0 !important;

    padding: 22px 20px !important;

    border-top: none !important;
    border-right: none !important;
    border-bottom: 1px solid #e1e5ea !important;

    box-sizing: border-box !important;
  }

  .mapa-work-title,
  .mapa-work-item .mapa-work-title {
    font-size: 18px !important;

    line-height: 1.35 !important;

    margin: 0 0 10px !important;
  }

  .mapa-work-description {
    font-size: 14px !important;

    line-height: 1.6 !important;
  }

  /* =========================================
     KEY ACTIVITIES
  ========================================= */

  .mapa-work-activities {
    width: 100% !important;

    height: auto !important;

    min-width: 0 !important;

    padding: 22px 20px !important;

    border-top: none !important;
    border-right: none !important;
    border-bottom: 1px solid #e1e5ea !important;

    box-sizing: border-box !important;
  }

  .mapa-work-activities h4,
  .mapa-work-item .mapa-work-activities h4 {
    font-size: 15px !important;

    line-height: 1.4 !important;

    margin: 0 0 12px !important;

    padding-top: 0 !important;

    color: var(--mapa-work-color) !important;
  }

  .mapa-work-activities ul {
    margin: 0 !important;

    padding: 0 !important;
  }

  .mapa-work-activities li {
    font-size: 13px !important;

    line-height: 1.5 !important;

    margin: 0 0 8px !important;

    padding-left: 13px !important;
  }

  .mapa-work-activities li::before {
    color: var(--mapa-work-color) !important;
  }

  /* =========================================
     IMPACT
  ========================================= */

  .mapa-work-impact {
    width: 100% !important;

    height: auto !important;

    min-width: 0 !important;
    min-height: 120px !important;

    display: flex !important;

    align-items: center !important;

    gap: 15px !important;

    padding: 22px 20px !important;

    background: var(--mapa-work-light-color) !important;

    border-left: 4px solid var(--mapa-work-color) !important;

    border-radius: 0 !important;

    box-sizing: border-box !important;

    overflow: visible !important;
  }

  /* =========================================
     IMPACT ICON
  ========================================= */

  .mapa-work-impact-icon {
    width: 55px !important;
    min-width: 55px !important;
    height: 55px !important;

    flex-shrink: 0 !important;

    background: var(--mapa-work-light-color) !important;

    color: var(--mapa-work-color) !important;
  }

  .mapa-work-impact-icon i {
    font-size: 22px !important;
  }

  /* =========================================
     IMPACT CONTENT
  ========================================= */

  .mapa-work-impact-content {
    flex: 1 !important;

    min-width: 0 !important;

    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
  }

  .mapa-work-impact-content h4,
  .mapa-work-item .mapa-work-impact-content h4 {
    font-size: 16px !important;

    line-height: 1.35 !important;

    margin: 0 0 8px !important;

    color: var(--mapa-work-color) !important;
  }

  .mapa-work-impact-content p {
    font-size: 13px !important;

    line-height: 1.55 !important;

    margin: 0 !important;
  }
}

/* =========================================
   SMALL MOBILE
   BELOW 480px
========================================= */

@media screen and (max-width: 480px) {
  .mapa-work-image {
    height: 220px !important;
    min-height: 220px !important;
  }

  .mapa-work-info {
    padding: 20px 16px !important;
  }

  .mapa-work-title,
  .mapa-work-item .mapa-work-title {
    font-size: 17px !important;
  }

  .mapa-work-description {
    font-size: 13px !important;

    line-height: 1.55 !important;
  }

  .mapa-work-activities {
    padding: 20px 16px !important;
  }

  .mapa-work-activities h4 {
    font-size: 14px !important;
  }

  .mapa-work-activities li {
    font-size: 12px !important;

    line-height: 1.45 !important;
  }

  .mapa-work-impact {
    gap: 12px !important;

    padding: 20px 16px !important;
  }

  .mapa-work-impact-icon {
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
  }

  .mapa-work-impact-icon i {
    font-size: 20px !important;
  }

  .mapa-work-impact-content h4 {
    font-size: 15px !important;
  }

  .mapa-work-impact-content p {
    font-size: 12px !important;

    line-height: 1.5 !important;
  }
}
