/*overrides for main theme styles*/

.listing-card__background {
  content:'';
  display:flex;
  position:absolute;
  width:100%;
  height:100%;
  background:linear-gradient(-160deg, #004B4E 10%, #008286 130%);
  opacity:0;
  top:0;
  left:0;
  transition:0.5s ease opacity
}
.listing-card__background:before {
  content:'';
  position:absolute;
  left:0;
  bottom:0;
  width:241px;
  height:220px;
  background-image:url("../img/shapes/card-left.svg");
  transform-origin:bottom right;
  transform:translateX(-40px) rotate(-3deg);
  transition:0.3s ease transform
}
.listing-card__background:after {
  content:'';
  position:absolute;
  right:0;
  bottom:0;
  width:450px;
  height:410px;
  background-image:url("../img/shapes/card-right.svg");
  transform-origin:bottom left;
  transform:translateX(80px) rotate(5deg);
  transition:0.3s ease transform
  }
}
  .listing-card__header {
    display:flex;
    flex-direction:column;
    align-items:center;
    padding-bottom:25px;
    position:relative
  }
  .listing-card__headings {
    width:100%
  }
  .listing-card__image {
    width:220px !important;
    height:220px !important;
    border-radius:10px;
    background:#fff;
    margin-bottom:6px;
    display:flex;
    align-items:center;
    justify-content:center
  }
  .listing-card__image a {
    display:flex;
    align-items:center;
    justify-content:center
  }
  .listing-card__image-source {
    width:90%;
    height:90%;
    -o-object-fit:contain;
    font-family:"object-fit:contain";
    object-fit:contain
  }
  .listing-card__main-heading {
    font-family:"Bord Bia Sans",sans-serif;
    font-weight:700;
    font-size:24px;
    line-height:28px;
    margin-bottom:12px
  }
  .listing-card__main-link {
    color:#004B4E;
    transition:0.5s ease color
  }
  .listing-card__sub-heading {
    display:flex;
    align-items:center;
    color:#004B4E;
    font-family:"Bord Bia Sans",sans-serif;
    font-weight:700;
    font-size:14px;
    line-height:22px;
    margin-bottom:5px;
    transition:0.5s ease color
  }
  .listing-card__icon {
    margin-right:6px;
    font-size:18px
  }
  .listing-card__tags {
    display:flex;
    flex-wrap:wrap;
    margin-bottom:-5px;
    padding-bottom:10px
  }
  .listing-card__tag {
    display:inline-flex;
    margin-bottom:5px;
    font-size:12px;
    line-height:1em;
    padding:3px 10px;
    border-radius:10px;
    background:#B8925A;
    color:#fff;
    margin-right:10px
  }
  .listing-card__tag:last-child {
    margin-right:0
  }
  .listing-card__link {
    color:#009077;
    font-size:14px;
    line-height:23px;
    position:relative;
    display:inline-flex;
    transition:0.5s ease color
  }
  .listing-card__link:after {
    content:'';
    position:absolute;
    background:#EAC62D;
    left:0;
    bottom:0;
    height:1px;
    width:100%
    }
    .listing-card__strip {
      padding-top:11px;
      margin-bottom:12px;
      border-top:1px solid #B8925A;
      position:relative
    }
    .listing-card__description {
      font-size:12px;
      line-height:18px;
      transition:0.5s ease color
    }
    .listing-card__footer {
      display:flex;
      flex-direction:column;
      justify-content:flex-end;
      padding-top:4px;
      position:relative;flex:1
    }
    .listing-card__cta {
      margin-bottom:10px;
      transition:0.5s ease color;
      position:relative;
      overflow:hidden
    }
    .listing-card__cta:before {
      content:'';
      position:absolute;
      left:0;
      top:0;
      width:100%;
      height:100%;
      background:#fff;
      opacity:0;
      transition:0.5s ease opacity
    }
    .listing-card__cta span {
      position:relative
    }

    @media only screen and (min-width: 1024px)
      {
        .listing-card:hover{
          color:#fff
        }
        .listing-card:hover .listing-card__background {
          opacity:1
        }
        .listing-card:hover .listing-card__background:before,.listing-card:hover .listing-card__background:after {
          transform:none
        }
        .listing-card:hover .listing-card__main-link,.listing-card:hover .listing-card__sub-heading,.listing-card:hover .listing-card__link {
          color:currentColor
        }
        .listing-card:hover .listing-card__cta {
          color:#004B4E
        }
        .listing-card:hover .listing-card__cta:before {
          opacity:1
        }
        .listing-card:hover .listing-card__cta--alt {
          color:#fff
        }
        .listing-card:hover .listing-card__cta--alt:before {
          opacity:0
        }

      }

    @media only screen and (min-width: 1024px)
      {
        .listing-card--large .listing-card__header {
          flex-direction:row;
          margin-bottom:15px;
          border-bottom:1px solid #B8925A
        }
        .listing-card--large .listing-card__image {
          width:140px;
          flex:0 0 140px;
          height:140px;
          margin-bottom:0;
          margin-right:30px
        }
        .listing-card--large .listing-card__main-heading {
          font-size:28px;
          line-height:36px;
          margin-bottom:6px
        }
        .listing-card--large .listing-card__sub-heading {
          font-size:18px
        }
        .listing-card--large .listing-card__tags {
          padding-bottom:6px
        }
        .listing-card--large .listing-card__strip {
          border-top:none;
          padding-top:0;
          margin-bottom:16px
        }
        .listing-card--large .listing-card__strip:nth-child(2) {
          border-bottom:1px solid #B8925A;
          padding-bottom:16px;
          margin-bottom:22px
        }
        .listing-card--large .listing-card__description {
          font-size:18px;
          line-height:28px
        }
        .listing-card--large .listing-card__footer {
          padding-top:8px;
          flex-direction:row;
          align-items:flex-end;
          justify-content:space-between
        }
        .listing-card--large .listing-card__cta {
          min-width:235px;
          margin-bottom:0
        }
      }

      .listing-card--alt {
        width:100%;
        padding:25px;
        margin-bottom:20px
      }

      @media only screen and (min-width: 768px)
      {
        .listing-card--alt {
          width:calc(50% - 20px);
          margin-right:20px
        }
      }

      @media only screen and (min-width: 1024px)
      {
        .listing-card--alt {
          width:calc(33% - 20px)
        }
      }

      .listing-card--alt .listing-card__header {
        flex-direction:row;padding:0
      }
      .listing-card--alt .listing-card__main-heading {
        font-size:18px;line-height:22px;margin-bottom:5px
      }
      .listing-card--alt .listing-card__tags {
        padding:0
      }
      .listing-card--alt .listing-card__headings {
        margin-left:25px
      }
      .listing-card--alt .listing-card__image {
        width:80px;
        flex:0 0 80px;
        height:70px;
        margin-bottom:0
      }
