:root {
  --grants-green: #00A443;
  --grants-green-light: #DCEBE1;
  --grants-brown: #615D5A;
  --grants-white: #FFFFFF;
  --grants-border: #D8CFC7;
  --grants-forest: #00402A;
  --grants-orange: #FF9C1A;
  --grants-orange-light: #FFF5EC;
  --grants-green-1: #007F33;
  --grants-sand: #FFF5EC;
  --grants-sand-1: #FFFEFF;
  --grants-sand-3: #D8CFC7;
}

#grants {
  width: 100%;
  max-width: 980px;
  padding: 24px;
  margin: 20px auto;
  text-align: left;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: 15px;
  border: 1px solid var(--grants-sand-3);
  background: var(--grants-white);
}

#grants * {
  font-family: 'IberPangea' !important;
  font-style: normal;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

#grants h2 {
  margin-top: 0 !important;
}

#grants ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#grants ul li:before {
  content: none !important;
  display: none !important;
}

#grants img,
#grants svg {
  display: block;
  width: 100%;
}

#grants .grants_title {
  color: var(--grants-green-1) !important;
  font-size: 30px;
  line-height: 1.13;
  font-family: 'IberPangea' !important;
  font-style: normal;
  font-weight: normal;
  text-align: left;
  width: 100%;
  margin-bottom: 32px;
}

#grants .grants_title strong {
  font-family: 'IberPangea Medium' !important;
  font-style: normal;
  font-weight: normal;
}

#grants .grants_content {
  width: 100%;
  position: relative;
}

#grants .grants_media {
  position: relative;
  order: 2;
  overflow: visible !important;
  border-radius: 16px;
  margin-bottom: 16px;
}

#grants .grants_media_container {
  position: relative;
  margin: 0 auto;
  width: 100%;
}

#grants .grants_media:before {
  content: '';
  display: block;
  width: 11px;
  background-image: url('/wcorp/gc/prod/es_ES/estaticos/mapa-becas/images/vector.svg');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 11px auto;
  position: absolute;
  bottom: 0;
  opacity: 0;
  transition: opacity 0.5s;
  z-index: 1 !important;
}

#grants.espana .grants_media:before {
  height: 169px;
  top: 82%;
  left: 43%;
  opacity: 1;
}

#grants.uk .grants_media:before {
  height: 581px;
  top: 29%;
  left: 59%;
  opacity: 1;
}

#grants .grants_media_path {
  transition: all 0.5s;
}

#grants .grants_media_path.active {
  fill: var(--grants-forest);
}

#grants .grants_menu {
  order: 1;
  display: flex;
  gap: 8px;
  width: 100%;
  padding-bottom: 16px;
  position: relative; 
  z-index: 5;
  background-color: white;
}

#grants .grants_menu_link {
  flex: 1;
  border-radius: 8px;
  border: 1px solid var(--grants-green-1);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  color: var(--grants-forest) !important;
  font-family: "IberPangea Medium" !important;
  font-size: 18px;
  line-height: 1.22;
  font-style: normal;
  font-weight: normal;
  text-align: center;
  text-wrap: balance;
  text-decoration: none;
}

#grants .grants_menu_link.active {
  background-color: var(--grants-green-1);
  color: var(--grants-sand-1) !important;
}

#grants .grants_modal {
  width: 100%;
  border: none;
  border-radius: 16px;
  background-color: var(--grants-sand);
  padding: 16px;
  max-height: 100%;
  overflow-y: auto;
  z-index: 5;
  display: none;
  position: relative;
  order: 3;
}

#grants .grants_modal.active {
  display: block;
}

#grants .grants_modal_button {
  display: block;
  width: 25px;
  height: 25px;
  background-image: url('/wcorp/gc/prod/es_ES/estaticos/mapa-becas/images/ico-close.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-align: left;
  text-indent: -9999px;
  overflow: hidden;
  position: absolute;
  top: 11px;
  right: 10px;
}

#grants .grants_modal_header {
  display: flex;
  flex-direction: column;
  margin-bottom: 24px;
}

#grants .grants_modal_image {
  display: block;
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 10px;
}

#grants .grants_modal_title {
  color: var(--grants-green-1) !important;
  font-family: "IberPangea Medium" !important;
  font-size: 21px;
  line-height: 1.33;
  font-style: normal;
  font-weight: normal;
  text-align: left;
  margin-bottom: 8px;
}

#grants .grants_modal_kicker {
  color: var(--grants-forest) !important;
  font-size: 14px;
  line-height: 1.4;
  font-family: "IberPangeaText Medium" !important;
  font-style: normal;
  font-weight: normal;
  margin-bottom: 8px;
}

#grants .grants_modal_kicker a {
  color: var(--grants-forest) !important;
  text-decoration: underline;
}

#grants .grants_modal_total {
  background-color: #007F33;
  padding: 10px 16px;
  border-radius: 15px;
  color: var(--grants-white);
  font-size: 16px;
  line-height: 1.31;
  font-family: "IberPangeaText Medium" !important;
  font-style: normal;
  font-weight: normal;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
}

#grants .grants_modal_total strong {
  font-family: "IberPangeaText Medium" !important;
  font-style: normal;
  font-weight: normal;
  font-size: 26px;
  line-height: 1;
}

#grants .grants_modal_list {
  border-radius: 15px;
  overflow: hidden;
  border: 0px solid var(--grants-border);
  background-color: var(--grants-white);
}

#grants .grants_modal_list_title {
  background-color: var(--grants-green-light);
  border-bottom: 0px solid var(--grants-border);
  border-radius: 15px 15px 0 0;
  overflow: hidden;
  padding: 8px;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-bottom: 16px;
}

#grants .grants_modal_list_title img {
  max-width: 26px;
}

#grants .grants_modal_list_title strong {
  color: var(--grants-forest) !important;
  font-family: "IberPangea Bold" !important;
  font-size: 15px;
  line-height: 1;
  font-style: normal;
  font-weight: normal;
  text-align: left;
}

#grants .grants_modal_list_item {
  padding: 0px 16px 8px;
  background-color: var(--grants-white);
  color: black !important;
  font-size: 15px;
  line-height: 1.33;
  font-family: "IberPangeaText" !important;
  font-style: normal;
  font-weight: normal;
  text-align: left;
}

#grants .grants_modal_list_item:last-child {
  padding-bottom: 16px;
}

#grants .grants_modal_list_item a {
  color: black !important;
  text-decoration: none;
}

#grants .grants_modal_list_item a:hover {
  text-decoration: underline;
}

@media (min-width: 700px) {

  #grants {
    padding: 24px;
    flex-wrap: wrap;
    flex-direction: row;
  }

  #grants .grants_content {
    display: flex;
    flex-direction: column;
    position: relative;
    padding-left: 280px;
    min-height: 668px;
  }

  #grants .grants_media {
    position: absolute;
    top: 0;
    left: 0;
    width: 248px;
    margin: 0;
  }

  #grants .grants_media {
    max-height: 623px;
    overflow: visible;
  } 

  #grants .grants_media_container {
    overflow: hidden;
    max-height: 623px;
    border-radius: 16px;
  }

  #grants #grantsSVGGroup {
    transform: translateY(100px) translateX(-70px) scale(1.4);
  }

  #grants .grants_modal {
    padding: 24px;
  }

  #grants .grants_modal_header {
    flex-direction: row;
    gap: 10px;
  }

  #grants .grants_modal_image {
    max-width: 160px;
    margin-bottom: 0;
  }

  #grants .grants_modal_list {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
  }

  #grants .grants_modal_list_title {
    justify-content: flex-start;
    padding-left: 24px;
    width: 100%;
  }

  #grants .grants_modal_list_item {
    width: calc(50% - 8px);
    padding-bottom: 0;
    text-wrap: balance;
  }

  #grants .grants_media:before {
    width: 506px;
    height: 11px;
    background-image: url('/wcorp/gc/prod/es_ES/estaticos/mapa-becas/images/vector-2.svg');
    background-position: left center;
    background-size: auto 11px;
    bottom: 0;
  }
  
  #grants.espana .grants_media:before {
    height: 11px;
    right: auto;
    left: 41%;
    bottom: 27%;
  }
  
  #grants.uk .grants_media:before {
    height: 11px;
    left:40%;
    top: 26%;
  }
  
}

@media (min-width: 1000px) {

  #grants {
    padding: 32px;
  }

  #grants .grants_content {
    padding-left: 410px;
    min-height: 668px;
  }

  #grants .grants_media {
    width: 330px;
    max-height: 668px;
  } 

  #grants .grants_media_container {
    overflow: hidden;
    max-height: 668px;
    border-radius: 16px;
  }

  #grants #grantsSVGGroup {
    transform: translateY(30px) translateX(-20px) scale(1.15);
  }

  #grants.espana .grants_media:before {
    left: 49%;
    top: 71%;
  }
  
  #grants.uk .grants_media:before {
    left: 57%;
    top: 26%;
  }
  
}