a {
  text-decoration: none;
  color: #009044;
}
a:hover {
  color: #004b23;
}
a.cta {
  background: #009044;
  color: white;
  display: inline-block;
  padding: 0.5rem 1rem;
}
a.cta:hover {
  background-color: #004b23;
}

img {
  max-width: 100%;
  height: auto;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 600;
}

h1, h2 {
  font-size: 3rem;
}
@media (max-width: 992px) {
  h1, h2 {
    font-size: 4.8387096774vw;
  }
}
@media (max-width: 768px) {
  h1, h2 {
    font-size: 6.25vw;
  }
}

h2 {
  color: #004b23;
  margin-bottom: 1rem;
}

h3, h4, h5, h6 {
  margin-top: 3rem;
  color: #009044;
}

@media (min-width: 1540px) {
  .container {
    max-width: 1600px;
  }
}

.header {
  z-index: 100;
}
.header__nav {
  height: 130px;
  background: #004b23;
}
@media (max-width: 768px) {
  .header__nav {
    height: 16.9270833333vw;
  }
}
.header__nav--logo {
  height: 150px;
  background: #009044;
  -webkit-filter: drop-shadow(0px 5px 5px rgba(0, 0, 0, 0.5));
  filter: drop-shadow(0px 5px 5px rgba(0, 0, 0, 0.5));
  padding-right: 3rem;
  padding-left: 1rem;
}
.header__nav--logo a {
  width: 445px;
}
.header__nav--logo::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 150px 80px;
  border-color: transparent transparent transparent #009044;
  position: absolute;
  right: -80px;
  top: 0;
}
@media (max-width: 768px) {
  .header__nav--logo {
    height: 19.53125vw;
  }
  .header__nav--logo::after {
    border-width: 0 0 19.53125vw 10.4166666667vw;
    right: calc(-10.4166666667vw + 1px);
  }
}
.header__nav nav {
  padding-left: calc(80px + 2rem);
  padding-right: 1rem;
  height: 130px;
  max-width: 1066.6666666667px;
}
.header__nav nav a {
  color: #f4ffe1;
}
.header__nav nav a img {
  width: 55px;
}
.header__nav nav a:hover {
  opacity: 0.7;
}
@media (max-width: 992px) {
  .header__nav nav {
    position: absolute;
    width: 100%;
    top: 0;
    right: -275px;
    height: 100%;
    flex-direction: column;
    background: #004b23;
    padding-top: 170px;
    padding-left: 3rem;
    padding-bottom: 2rem;
    align-items: start !important;
    transition: right 500ms;
  }
}
@media (max-width: 768px) {
  .header__nav nav {
    padding-top: 135px;
  }
}
@media (max-width: 577px) {
  .header__nav nav {
    padding-top: 100px;
  }
}
@media (max-width: 992px) {
  .header__nav-wrap {
    visibility: hidden;
    position: absolute;
    top: 0;
    right: 0;
    overflow: hidden;
    width: 275px;
    height: 425px;
    transition: visibility 500ms;
  }
  .header__nav-wrap.nav-open {
    visibility: visible;
  }
  .header__nav-wrap.nav-open nav {
    right: 0;
  }
}
@media (max-width: 768px) {
  .header__nav-wrap {
    height: 390px;
  }
}
@media (max-width: 577px) {
  .header__nav-wrap {
    height: 355px;
  }
}
.header__mobile-button--open, .header__mobile-button--close {
  top: 45px;
  right: 25px;
  color: white;
  line-height: 1;
  font-size: 30px;
  background: transparent;
  border: 0;
  padding: 0;
}
@media (max-width: 768px) {
  .header__mobile-button--open, .header__mobile-button--close {
    top: 5.859375vw;
  }
}
@media (max-width: 577px) {
  .header__mobile-button--open, .header__mobile-button--close {
    top: 4.3327556326vw;
  }
}

.hero__left {
  background: #2eb79b;
}
.hero__left-heading {
  width: 666.6666666667px;
  padding-left: 1rem;
}
@media (min-width: 767px) {
  .hero__left::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 500px 267px;
    border-color: transparent transparent transparent #2eb79b;
    position: absolute;
    right: -267px;
    top: 0;
  }
}
.hero__right {
  background: #1796b1 50% 50%/cover no-repeat;
}
.hero__left {
  height: auto;
  padding: 4rem 0;
}
.hero__right {
  height: 58.6701434159vw;
}
@media (min-width: 767px) {
  .hero__left, .hero__right {
    height: 500px;
  }
}

.main {
  padding: 4rem 0;
}
.main__left ol, .main__left ul {
  margin-top: 1rem;
}
.main__left ol:last-of-type, .main__left ul:last-of-type, .main__left p:last-of-type {
  margin-bottom: 0;
}
.recycle__table {
  background: #f8ffe5;
}
.recycle__table h4 {
  color: #004b23;
}
.recycle__table h4:first-of-type {
  font-size: 3rem;
}
@media (min-width: 768px) {
  .recycle__table h4:first-of-type {
    font-size: 4rem;
  }
}
.recycle__table > div:nth-child(2) {
  border-top: 2px solid gray;
  border-left: 0;
}
@media (min-width: 576px) {
  .recycle__table > div:nth-child(2) {
    border-top: 0;
    border-left: 2px solid gray;
  }
}

.footer__top {
  background: #f1f1f1;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.footer__top--icon {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.footer__top--icon h4 {
  color: black;
}
.footer__top--icon img {
  width: 150px;
  height: 150px;
}
.footer__bottom {
  background: #7dde92;
}

.bg-gray-1 {
  background-color: #e8e8e8;
}

.card-header {
  background-color: #666;
}
.card input, .card select, .card button {
  border-radius: 0;
}
.card button {
  color: white !important;
  background: #009044;
}
.card button:hover {
  background: #004b23;
}

@media (min-width: 991px) {
  .locations {
    display: grid;
    grid-template-columns: 33.333333% 66.66666%;
    grid-template-rows: auto 1fr;
    height: 90vh;
  }
  .locations-map {
    grid-column: 2;
    grid-row: 1/span 2;
  }
}
.locations-stores {
  min-height: 0;
}
.locations-stores > div {
  overflow-y: scroll;
}
.locations-stores > div > div {
  position: relative;
  border-top: 0 !important;
}
.locations-stores > div > div:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #009044;
}
.locations-stores > div > div:last-of-type {
  margin-bottom: 0 !important;
}
@media (max-width: 992px) {
  .locations-stores > div {
    height: 550px;
  }
}
@media (max-width: 992px) {
  .locations-map {
    height: 500px !important;
  }
}
.locations h5, .locations h6 {
  margin-top: 0;
}

/*# sourceMappingURL=main.css.map */
