* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.dark-green {
  color: #169f45;
}

.back-to-top {
  position: fixed;
  bottom: 100px;
  right: 30px;
  z-index: 99;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}

.co2-sub {
  font-size: 0.6em;
  vertical-align: sub;
  font-weight: 900;
  position: relative;
}

.back-to-top.show {
  opacity: 1;
  visibility: visible;
}

.back-to-top img {
  width: 50px;
  height: 50px;
  border-radius: 25px;
}

@media only screen and (max-width: 767px) {
  .back-to-top.show {
    opacity: 0;
    visibility: hidden;
  }

  .logo-icon {
    max-width: 100px;
  }
}

.text-title {
  font-size: 48px;
  font-weight: bolder;
}

.text-subtitle {
  font-size: 36px;
  font-weight: bold;
}

.text-title-small {
  font-size: 40px;
}

.text-subtitle-small {
  font-size: 32px;
}

.text-bold {
  font-weight: bold;
}

.text-title-hero {
  font-size: 36px;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .text-title {
    font-size: 32px;
  }

  .text-subtitle {
    font-size: 24px;
  }

  .text-title-hero {
    font-size: 32px;
  }
}

.color-red {
  color: #ee3700;
}

.section-left-title-text {
  display: inline-block;
  width: fit-content;
  border: 2px solid #88c87a;
  border-radius: 25px;
  background-color: #ffffff;
  padding: 10px;
  font-weight: 500;
  line-height: 100%;
  color: #23b24b;
}

.section-left-title-first,
.section-left-content-first {
  margin-bottom: 40px;
}

.section-left-content-first {
  color: #169f45;
}

.banner {
  height: 900px;
  background-color: #fffdf3;
}

.background-section-1 {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  /* hoặc auto nếu cần */
}

.bg-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 5000%;
  /* chứa 2 ảnh liền nhau */
  height: 100%;
  background-repeat: repeat-x;
  background-size: contain;
  background-position: left bottom;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  z-index: 0;
  pointer-events: none;
}

/* Các lớp khác nhau với ảnh & tốc độ riêng */
.background-section-1 .layer-1 {
  background-image: url("../images/banner-bg-layer-1.png");
  animation-name: scroll-layer-1;
  animation-duration: 5000s;
  z-index: 1;
}

.background-section-1 .layer-2 {
  background-image: url("../images/banner-bg-layer-2.png");
  animation-name: scroll-layer-2;
  animation-duration: 2500s;
  z-index: 2;
}

.layer-3 {
  background-image: url("../images/banner-bg-layer-3.png");
  animation-name: scroll-layer-3;
  animation-duration: 1500s;
  z-index: 3;
}

.banner-content {
  position: relative;
  z-index: 10;
  padding: 40px 80px;
  height: 100%;
}

/* Scroll animations */
@keyframes scroll-layer-1 {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

@keyframes scroll-layer-2 {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

@keyframes scroll-layer-3 {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

.banner .banner-title {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 56px;
  color: #169f45;
}

.banner .banner-subtitle {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 32px;
  color: #ee3700;
}

.banner .banner-content {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 24px;
  color: #71bf44;
}

.banner img {
  padding: 40px 0;
}

/* @media banner */
@media only screen and (max-width: 767px) {
  .banner .banner-content {
    padding: 16px;
  }

  .banner .banner-title {
    font-size: 29px;
  }

  .banner .banner-subtitle {
    font-size: 18px;
    margin-top: 12px;
  }

  .banner .col-md-12>div:last-child {
    font-size: 16px;
  }

  .banner .circle-text-icon {
    min-width: 280px;
  }

  .banner {
    height: 750px;
  }

  .section-left-title img {
    padding-right: 40px;
  }

  .section-left {
    margin-left: 0;
  }

  .img-sec1 {
    width: 340px;
    height: 375px;
    margin: 50px 0;
  }

  .video-sec2 {
    width: 100%;
    height: auto;
    display: block;
    margin: 10px auto;
  }
}

@keyframes floatCloud {
  0% {
    transform: translateY(5px);
  }

  50% {
    transform: translateY(-10px);
  }

  100% {
    transform: translateY(5px);
  }
}

/* decarbon section */
.decarbon {
  padding: 50px;
}

.decarbon .decarbon-title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
}

.decarbon .decarbon-title .decarbon-ct {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 40px;
  color: #169f45;
}

.decarbon .decarbon-ct2 {
  font-family: Noto Sans JP;
  font-weight: 500;
  font-size: 24px;
  padding-top: 10px;
  text-align: center;
  color: #595959;
}

.decarbon .co2-reduce {
  animation: floatCloud 6s ease-in-out infinite;
  display: inline-block;
  will-change: transform;
}

/* @media decarbon */
@media only screen and (max-width: 767px) {
  .decarbon {
    padding: 18px;
  }

  .decarbon .co2-reduce {
    width: 60px;
    height: 50px;
  }

  .decarbon .decarbon-title .decarbon-ct {
    font-size: 36px;
  }

  .decarbon .decarbon-ct2 {
    font-size: 16px;
  }
}

.video-wrapper {
  padding-top: 80px;
  max-width: 900px;
}

.video-sec2 {
  width: 100%;
  margin: 0 auto;
  display: block;
  border-radius: 25px;
  border: 4px solid #7cac35;
}

.background-section-2 {
  background-color: #fffdf3;
}

.circle-text-icon {
  min-width: 470px;
}

/* .img-sec1{
    animation: bg-scale 3s infinite alternate ease-in-out;
}

@keyframes bg-scale {
    0% {
        transform: rotate(0deg);
    }
    20% {
        transform: rotate(-1.5deg);
    }
    40% {
        transform: rotate(1.5deg);
    }
    60% {
        transform: rotate(-1deg);
    }
    80% {
        transform: rotate(1deg);
    }
    100% {
        transform: rotate(0deg);
    }
} */

@media only screen and (max-width: 1199px) {
  .circle-text-icon {
    min-width: 370px;
  }
}

/* OVERVIEW SECTION */

.overview-section {
  background: #f2ffd9;
  padding: 100px 0 170px;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  background-image: url("../images/overview_bg.png");
  background-size: 380px;
  background-position: bottom left;
  background-repeat: repeat-x;
}

/* Base styles for each background layer */
.overview-section .bg-overview-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 20000%;
  /* Gấp đôi để scroll */
  height: 100%;
  background-repeat: repeat-x;
  background-size: 1200px;
  background-position: left bottom;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  z-index: 0;
  pointer-events: none;
}

/* Layer gần hơn scroll nhanh hơn */
.overview-section .bg-overview-layer.layer-1 {
  background-image: url("../images/bg-overview-close.png");
  animation: scroll-layer-1 20000s linear infinite;
  z-index: 1;
}

/* Layer xa hơn scroll chậm hơn */
.overview-section .bg-overview-layer.layer-2 {
  background-image: url("../images/bg-overview-far.png");
  animation: scroll-layer-2 50000s linear infinite;
  z-index: 2;
}

@keyframes scroll-layer-1 {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

@keyframes scroll-layer-2 {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

.overview-section .highlight {
  color: #d10000;
  font-weight: bold;
}

.overview-section .section-title {
  display: flex;
  justify-content: center;
  margin-bottom: 50px;
}

.overview-section .section-title h2 {
  border-radius: 20px;
  background: linear-gradient(180deg,
      #8c5e32 0%,
      #b77636 0.01%,
      #a6682c 17.79%,
      #975e3b 71.63%,
      #a96f3f 92.79%);
  padding: 12px 25px;
  color: #fff;
  text-align: center;
  font-weight: 900;
  text-shadow: -3px -3px 0 #754c24, 3px -3px 0 #754c24, -3px 3px 0 #754c24,
    3px 3px 0 #754c24;
}

.overview-section .section-title-green h2 {
  color: #169f45;
  text-shadow: -3px -3px 0 #fff, 3px -3px 0 #fff, -3px 3px 0 #fff,
    3px 3px 0 #fff;
}

.arrow-bounce {
  animation: bounceDown 2s ease-in-out infinite;
  will-change: transform;
}

@keyframes bounceDown {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(10px);
  }
}

.overview-section .step-box {
  /* border-radius: 20px; */
  background-color: #fff;
  font-weight: 500;
}

.overview-section .des-step p {
  margin-bottom: 0;
}

/* .overview-section .step-box.step1 {
    border: 3px solid #00ABE5;
}

.overview-section .step-box.step2 {
    border: 3px solid #9C85BD;
}
    
.overview-section .step-box.step3 {
    border: 3px solid #F17085;
}
        
.overview-section .step-box.step4 {
    border: 3px solid #00ABE5;
} */

.overview-section .step-box {
  position: relative;
  z-index: 1;
}

.overview-section .step-box.step1::after {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 60px;
  background-color: #e5f6fc;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  z-index: 2;
}

.overview-section .step-box.step1::before {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 60px;
  background-color: rgba(0, 0, 0, 0.2);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  filter: blur(5px);
  transform: translateX(-50%) translateY(3px);
  z-index: 1;
}

/* .overview-section .step-box.step1::after {
    content: "";
    position: absolute;
    bottom: -60px;
    left: 50%;
    transform: translateX(-50%);
    filter: drop-shadow(0px 3px 2px rgba(0, 0, 0, 0.2));
    width: 100%;
    height: 60px;
    background-color: #e5f6fc;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
} */

.overview-section .step-box.step2::after {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 60px;
  background-color: #f5f3f8;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  z-index: 2;
}

.overview-section .step-box.step2::before {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 60px;
  background-color: rgba(0, 0, 0, 0.2);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  filter: blur(5px);
  transform: translateX(-50%) translateY(3px);
  z-index: 1;
}

/* .overview-section .step-box.step2::after {
    content: "";
    position: absolute;
    bottom: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 155px solid transparent;
    border-right: 155px solid transparent;
    border-top: 60px solid #F6F3F9;
    filter: drop-shadow(0px 3px 2px rgba(0, 0, 0, 0.2));
} */

.overview-section .step-box.step3::after {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 60px;
  background-color: #fef0f3;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  z-index: 2;
}

.overview-section .step-box.step3::before {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 60px;
  background-color: rgba(0, 0, 0, 0.2);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  filter: blur(5px);
  transform: translateX(-50%) translateY(3px);
  z-index: 1;
}

/* .overview-section .step-box.step3::after {
    content: "";
    position: absolute;
    bottom: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 155px solid transparent;
    border-right: 155px solid transparent;
    border-top: 60px solid #FEF1F3;
    filter: drop-shadow(0px 3px 2px rgba(0, 0, 0, 0.2));
} */

.overview-section .step-box.step4::after {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 60px;
  background-color: #e5f6fc;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  z-index: 2;
}

.overview-section .step-box.step4::before {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 60px;
  background-color: rgba(0, 0, 0, 0.2);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  filter: blur(5px);
  transform: translateX(-50%) translateY(3px);
  z-index: 1;
}

/* .overview-section .step-box.step4::after {
    content: "";
    position: absolute;
    bottom: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 155px solid transparent;
    border-right: 155px solid transparent;
    border-top: 60px solid #E6F7FD;
    filter: drop-shadow(0px 3px 2px rgba(0, 0, 0, 0.2));
} */

.overview-section .des-step.step-1 {
  background-color: #00abe51a;
  transition: all 0.5s;
  font-size: 24px;
}

/* .overview-section .step1:hover .des-step.step-1 {
    background-color: #00abe542;
    transition: all 0.5s;
} */

.overview-section .des-step.step-2 {
  background-color: #9c85bd1a;
  transition: all 0.5s;
  font-size: 24px;
}

/* .overview-section .step2:hover .des-step.step-2 {
    background-color: #9C85BD42;
    transition: all 0.5s;

} */

.overview-section .des-step.step-3 {
  background-color: #f170851a;
  transition: all 0.5s;
  font-size: 24px;
}

.overview-section .des-step.step-3>div {
  font-size: 11px;
}

/* .overview-section .step3:hover .des-step.step-3 {
    background-color: #F1708542;
    transition: all 0.5s;
} */

.overview-section .des-step.step-4 {
  background-color: #00abe51a;
  transition: all 0.5s;
  font-size: 24px;
}

.overview-section .des-step.step-4>div {
  font-size: 11px;
}

/* .overview-section .step4:hover .des-step.step-4 {
    background-color: #00ABE542;
    transition: all 0.5s;
} */

.overview-section .des-step small {
  /* font-size: xx-small; */
  font-size: 16px;
}

.overview-section .des-step {
  height: 180px;
  padding: 17px;
}

.overview-section .step-title {
  display: flex;
  padding: 20px;
  align-items: center;
  height: 120px;
}

@media only screen and (max-width: 1399px) {
  .overview-section .step-title {
    height: 170px;
  }
}

.overview-section .step-box .step-title h3 {
  text-align: center;
}

.overview-section .step-box.step1 .step-title h3 {
  color: #2195bf;
}

.overview-section .step-box.step2 .step-title h3 {
  color: #845fb8;
}

.overview-section .step-box.step3 .step-title h3 {
  color: #f17085;
}

.overview-section .step-box.step4 .step-title h3 {
  color: #2195bf;
}

.overview-section .step-box .step-img {
  width: 75px;
  height: 75px;
  margin-right: 10px;
}

.overview-section .overview-box {
  background-color: #fffdf3;
  border: 10px solid #88c87a;
  border-radius: 40px;
  padding: 100px;
  margin-bottom: 60px;
}

.overview-section .overview-box .overview-title::after {
  content: "";
  display: block;
  width: 80px;
  margin: 10px auto 0 auto;
  border-bottom: 6px solid #aad447;
}

.overview-section .overview-box .overview-subtitle {
  color: #169f45;
  font-weight: 700;
}

.overview-section .overview-box img {
  width: 400px;
}

@media only screen and (max-width: 1399px) {
  .overview-section .overview-box {
    padding: 40px;
  }
}

.overview-section .title-light-icon {
  margin-right: 10px;
}

.overview-section .business-owner {
  margin-top: 40px;
}

.overview-section .business-owner .brown-title {
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #f79559;
  padding: 30px;
  border-radius: 25px;
}

.overview-section .business-owner .brown-title-text {
  display: flex;
  align-items: center;
  font-family: Noto Sans JP;
  font-size: 42px;
  line-height: 100%;
  color: #fff;
}

.overview-section .business-owner img {
  width: 50px;
  height: 45px;
  padding-right: 10px;
}

.overview-section .business-owner small {
  font-size: xx-small;
}

@media only screen and (max-width: 1399px) {
  .overview-section .des-step {
    height: 135px;
  }

  .overview-section .des-step.step-1 {
    font-size: 17px;
  }

  .overview-section .des-step.step-2 {
    font-size: 17px;
  }

  .overview-section .des-step.step-3 {
    font-size: 17px;
  }

  .overview-section .des-step.step-4 {
    font-size: 17px;
  }

  /* .overview-section .step-box.step1::after {
        border-left: 130px solid transparent;
        border-right: 130px solid transparent;
    }

    .overview-section .step-box.step2::after {
        border-left: 130px solid transparent;
        border-right: 130px solid transparent;
    }

    .overview-section .step-box.step2::after {
        border-left: 130px solid transparent;
        border-right: 130px solid transparent;
    }

    .overview-section .step-box.step3::after {
        border-left: 130px solid transparent;
        border-right: 130px solid transparent;
    }

    .overview-section .step-box.step4::after {
        border-left: 130px solid transparent;
        border-right: 130px solid transparent;
    } */

  .overview-section .energy-box .energy-title {
    min-height: 175px;
  }
}

@media only screen and (max-width: 1199px) {
  .overview-section .step-box {
    margin-bottom: 80px;
  }
}

@media only screen and (max-width: 767px) {
  .overview-section {
    padding-bottom: 170px;
    /* background: #B3D7AB;
        background-image: url('../images/overview_bg.png'), linear-gradient(90deg, rgba(179, 215, 171, 1) 0%, rgba(210, 222, 182, 1) 23%, rgba(209, 240, 178, 1) 54%, rgba(204, 239, 177, 1) 98%);
        background-position: bottom left;
        background-size: contain;
        background-repeat: no-repeat; */
  }

  .overview-section .step-box {
    margin-left: 30px;
    margin-right: 30px;
    margin-bottom: 70px;
  }

  .overview-section .step-box .step-title h3.text-subtitle {
    font-size: 40px;
  }

  .overview-section .step-box .des-step p {
    font-size: 24px;
  }

  .overview-section .section-title {
    padding: 0 25px;
  }

  .overview-section .section-title h2 {
    font-size: 32px;
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  .overview-section .energy-box {
    padding: 24px 0;
  }

  .overview-section .energy-box .energy-title {
    min-height: unset;
  }

  .overview-section .energy-box .energy-box-center {
    border-left: 0;
    border-right: 0;
    border-top: 3px dashed #88c87a;
    border-bottom: 3px dashed #88c87a;
    padding: 48px 0;
  }

  .overview-section .overview-box {
    padding: 60px 24px;
    border: 5px solid #88c87a;
  }

  .overview-section .overview-box .overview-title {
    margin-bottom: 40px;
  }

  .overview-section .energy-box {
    margin: 0 8px;
  }

  .overview-section .section-title-green h2 {
    color: #169f45;
    text-shadow: -3px -3px 0 #fff, 3px -3px 0 #fff, -3px 3px 0 #fff,
      3px 3px 0 #fff;
    align-content: center;
  }

  .overview-section .des-step {
    height: 150px;
    padding: 24px;
  }

  .overview-section .step-box small {
    font-size: 16px;
  }

  /* .overview-section .step-box.step1::after {
        border-left: 150px solid transparent;
        border-right: 150px solid transparent;
    }

    .overview-section .step-box.step2::after {
        border-left: 150px solid transparent;
        border-right: 150px solid transparent;
    }

    .overview-section .step-box.step3::after {
        border-left: 150px solid transparent;
        border-right: 150px solid transparent;
    }

    .overview-section .step-box.step4::after {
        border-left: 150px solid transparent;
        border-right: 150px solid transparent;
    } */

  .overview-section .business-owner {
    margin-top: 0;
  }

  .overview-section .business-owner .col-12>div:nth-child(2) {
    text-align: left;
  }

  .overview-section .business-owner img {
    width: 40px;
    height: 30px;
    padding-right: 0;
  }

  .overview-section .business-owner .brown-title-text {
    font-size: 24px;
    padding: 0 8px;
  }
}

/* NEW SECTION */
.new {
  background-color: #fffdf3;
  padding-top: 80px;
}

.new .news-with-file {
  color: black;
  text-decoration: none;
}

.new .background-sec3 {
  background-color: #ffffff;
  border-radius: 30px;
  padding: 50px;
  border: 2px solid #88C87A;
}

.new .new-title {
  display: inline-block;
  position: relative;
  padding-bottom: 10px;
  margin-bottom: 40px;
}

.new .new-title::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 80px;
  height: 4px;
  background-color: #aad447;
  transform: translateX(-50%);
}

.new .container {
  max-width: 1000px;
}

.new .new-line:first-child {
  position: relative;
  padding-bottom: 20px;
  padding-top: 0px;
}

.new .new-line {
  position: relative;
  padding-bottom: 20px;
  padding-top: 20px;
}

.new .new-line::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0px;
  border-bottom: 1px solid #71bf4480;
}

/* .new .new-line:hover {
    cursor: pointer;
} */

.new .icon-arrow {
  position: absolute;
  right: 0;
  transform: translateX(-50%);
}

.new .new-line:first-child .news-file-icon {
  position: absolute;
  top: 0px;
  right: 0px;
}

.new .new-line .news-file-icon {
  position: absolute;
  top: 20px;
  right: 0px;
}

.new .button-new {
  font-family: Noto Sans;
  font-weight: 500;
  border: 1px solid #f86c41;
  border-radius: 7px;
  text-align: center;
  color: #f86c41;
  width: 80px;
  align-content: center;
  transition: all 0.5s;
  font-size: 16px;
}

/* .new .new-line:hover .button-new {
    background-color: #F86C41;
    color: #fff;
    cursor: pointer;
    transition: all 0.3s;
} */

.new .new-line:hover .file-icon-name a {
  color: #f86c41 !important;
  transition: all 0.3s;
}

/* .new .new-line:hover .new-text {
    font-weight: 500;
    transition: all 0.3s;
} */

.new .date {
  font-family: Noto Sans;
  font-weight: 600;
  align-content: center;
  padding-right: 20px;
}

.new .view-all {
  text-decoration: none;
  color: #333;
  font-weight: bold;
  display: inline-block;
  text-align: center;
  font-size: 16px;
  padding-bottom: 50px;
  cursor: pointer;
}

.new .view-all .arrow {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 2px;
  background-color: #7cae31;
  bottom: 10px;
}

.new .view-all .arrow::after {
  content: "";
  position: absolute;
  top: -3px;
  right: -2px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #7cae31;
  border-right: 2px solid #7cae31;
  transform: rotate(45deg);
}

.new .new-height {
  max-height: 500px;
  overflow-y: auto;
}

.new .new-text {
  position: relative;
  padding: 0px 10px;
  transition: all 0.5s;
}

.new .new-text .new-icon {
  position: absolute;
  top: 0;
  right: -50px;
}

@media only screen and (max-width: 767px) {
  .new {
    padding-left: 10px;
    padding-right: 10px;
  }

  .new .background-sec3 {
    padding: 40px;
  }

  .new .new-text .new-icon {
    top: -45px;
  }

  .icon-arrow {
    display: block;
  }

  .view-all {
    padding-top: 30px;
  }
}

/* GOALS SECTION */
.goals-section {
  padding-top: 110px;
  padding-bottom: 25%;
  background: #f6f5ee;
  background-image: url("../images/goals-bg.svg");
  background-position: bottom center;
  background-size: contain;
  background-repeat: no-repeat;
}

.goals-section .card {
  background-color: #2fba8c;
  padding: 40px;
  border-radius: 40px;
  background-image: url("../images/card-bg.png");
  background-position: top left;
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  overflow: hidden;
  margin-bottom: 60px;
}

.goals-section .card h2 {
  font-size: 65px;
  color: #fff;
  font-weight: bold;
}

.goals-section .card h3 {
  font-size: 40px;
  color: #f5f1cc;
  font-weight: bold;
}

.goals-section .card img {
  position: absolute;
  bottom: 0;
  left: 5%;
  max-width: 360px;
}

.goals-section .card .card-list-item {
  padding: 20px;
  background-color: #fff;
  margin: 12px 0px;
  border-radius: 20px;
  color: #34b587;
  font-weight: bold;
  transition: all 0.3s;
  font-size: 23px;
  align-content: center;
  min-height: 175px;
  ;
}

/* .goals-section .card .card-list-item:hover {
  background-color: #fff7d3;
  transition: all 0.3s;
} */

.goals-section .energy-box {
  background-color: #fffce0;
  border: 4px solid #88c87a;
  border-radius: 40px;
  padding: 60px 30px;
  margin-top: 60px;
}

.goals-section .energy-box .section-title {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}

.goals-section .energy-box .section-title div {
  border-radius: 20px;
  background: linear-gradient(180deg,
      #8c5e32 0%,
      #b77636 0.01%,
      #a6682c 17.79%,
      #975e3b 71.63%,
      #a96f3f 92.79%);
  padding: 10px 40px;
}

.goals-section .energy-box .energy-title {
  min-height: 95px;
  font-size: 30px;
}

.goals-section .energy-box .box {
  padding: 30px 30px 15px 30px;
}

.goals-section .energy-box .box-left {
  padding-right: 40px;
}

.goals-section .energy-box .box-right {
  padding-left: 40px;
}

.goals-section .energy-box .box-center {
  border-left: 3px dashed #88c87a;
  border-right: 3px dashed #88c87a;
  border-top: 0;
  border-bottom: 0;
  padding-left: 40px;
  padding-right: 40px;
}

.goals-section .energy-box .highlight {
  color: #f42f48;
  font-weight: 700;
}

.goals-section .energy-box small {
  font-size: small;
  color: #303030;
}

.goals-section .energy-box .info-box {
  background-color: #fff;
  padding: 20px;
  border-radius: 20px;
  margin: 10px 0;
  display: flex;
}

.goals-section .energy-box .info-box .info-img {
  max-width: 100px;
  margin-right: 20px;
}

.goals-section .energy-box .info-box .energy {
  color: #0b9444;
  font-size: 24px;
  font-weight: 700;
}

.goals-section .energy-box .info-box .cost {
  color: #88bb00;
  font-size: 24px;
  font-weight: 700;
}

.goals-section .energy-box .info-box .number {
  font-size: 24px;
  font-weight: 700;
  word-break: break-all;
  display: flex;
  align-items: center;
}

.goals-section .energy-box .info-box .number div {
  font-size: 12px;
  margin: 4px;
  padding-bottom: 3px;
}

.goals-section .energy-box .info-box hr {
  border-bottom: 1px dashed #303030;
}

@media only screen and (max-width: 1399px) {
  .goals-section .energy-box .energy-title {
    min-height: 150px;
  }
}

@media only screen and (max-width: 1399px) {
  .goals-section .energy-box .info-box .info-img {
    max-width: 70px;
  }
}

@media only screen and (max-width: 1199px) {
  .goals-section .energy-box .info-box .info-img {
    max-width: 65px;
  }

  .goals-section .energy-box {
    padding: 40px 20px;
  }

  .goals-section .energy-box .box-left {
    padding: 0px 20px 0px 0px;
  }

  .goals-section .energy-box .box-center {
    padding: 0 20px;
  }

  .goals-section .energy-box .box-right {
    padding: 0px 0px 0px 20px;
  }
}

@media only screen and (max-width: 1199px) {
  .goals-section {
    padding-top: 40px;
    padding-bottom: 30%;
  }

  .goals-section .card {
    padding: 20px;
    margin-bottom: 40px;
  }

  .goals-section .card h2 {
    font-size: 45px;
  }

  .goals-section .card h3 {
    font-size: 30px;
  }

  .goals-section .card img {
    position: absolute;
    top: 175px;
    left: 50%;
    transform: translateX(-50%);
    max-width: 260px;
  }

  .goals-section .card .card-list {
    margin-top: 200px;
  }

  .goals-section .card .card-list-item {
    margin: 5px 0px;
    font-size: 22px;
    padding: 20px 30px;
    min-height: 105px;
  }

  .goals-section .energy-box {
    padding: 40px 0;
    margin-top: 40px;
  }

  .goals-section .energy-box .section-title {
    margin-bottom: 20px;
    margin-left: 20px;
    margin-right: 20px;
  }

  .goals-section .energy-box .box {
    padding: 20px 20px 20px 20px;
  }

  .goals-section .energy-box .box-left {
    padding-right: 20px;
    padding-bottom: 20px;
  }

  .goals-section .energy-box .box-right {
    padding-left: 20px;
    padding-top: 20px;
  }

  .goals-section .energy-box .box-center {
    border-top: 0;
    border-bottom: 0;
    border-left: 3px dashed #88c87a;
    border-right: 3px dashed #88c87a;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .goals-section .energy-box .energy-title {
    min-height: 135px;
  }

  .goals-section .energy-box .info-box .number {
    font-size: 24px;
    display: flex;
  }

  .goals-section .energy-box .info-box .number div {
    margin: 4px;
  }
}

@media only screen and (max-width: 991px) {
  .goals-section .energy-box .box-center {
    border-left: 0;
    border-right: 0;
    border-top: 3px dashed #88c87a;
    border-bottom: 3px dashed #88c87a;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .goals-section .energy-box .energy-title {
    min-height: unset;
  }
}

/* CONTACT SECTION */
.contact-section {
  padding-top: 80px;
  padding-bottom: 160px;
  background-color: #609d3c;
}

.contact-section .title-box {
  padding-top: 60px;
  padding-bottom: 60px;
  color: #fff;
  overflow: hidden;
}

.contact-section .title-box .main-title {
  font-size: 34px;
}

.contact-section .title-box .green-title {
  font-size: 88px;
  font-weight: 900;
  color: #e2ffb9;
}

.contact-section .title-box .icon-top-left {
  top: 16%;
  left: 8%;
}

.contact-section .title-box .icon-top-right {
  top: 16%;
  right: 8%;
}

.contact-section .title-box .icon-bottom-left {
  bottom: 16%;
  left: 4%;
}

.contact-section .title-box .icon-bottom-right {
  bottom: 16%;
  right: 8%;
}

.contact-section .title-box .icon-top-left,
.icon-top-right,
.icon-bottom-left,
.icon-bottom-right {
  opacity: 0.8;
  width: 90px;
}

.contact-section .list-box {
  border: 4px solid #aad447;
  background-color: #fff;
  border-radius: 40px;
  padding: 60px 100px;
}

.contact-section .list-box .right-box {
  justify-items: center;
}

.contact-section .list-box ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.contact-section .list-box li {
  margin-bottom: 25px;
  font-size: 22px;
}

.contact-section .list-box li .check-box-list {
  width: 30px;
}

@media only screen and (max-width: 767px) {
  .contact-section {
    padding-top: 30px;
    padding-bottom: 60px;
  }

  .contact-section .title-box {
    padding-top: 30px;
    padding-bottom: 40px;
  }

  .contact-section .title-box .main-title {
    font-size: 22px;
  }

  .contact-section .title-box .green-title {
    font-size: 35px;
  }

  .contact-section .title-box .icon-top-left {
    top: 1%;
    left: 0%;
  }

  .contact-section .title-box .icon-top-right {
    top: 1%;
    right: -2%;
  }

  .contact-section .title-box .icon-bottom-left {
    bottom: 8%;
    left: 8%;
  }

  .contact-section .title-box .icon-bottom-right {
    bottom: 6%;
    right: 6%;
  }

  .contact-section .title-box .icon-top-left,
  .icon-top-right,
  .icon-bottom-left,
  .icon-bottom-right {
    width: 50px;
  }

  .contact-section .list-box {
    padding: 40px;
  }

  .contact-section .list-box .right-box {
    justify-items: unset;
  }
}

@keyframes icon-float {
  0% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-10px);
  }

  100% {
    transform: translateY(0px);
  }
}

.icon-top-left {
  animation: icon-float 5s ease-in-out infinite;
  animation-delay: 0s;
}

.icon-top-right {
  animation: icon-float 5s ease-in-out infinite;
  animation-delay: 0.5s;
}

.icon-bottom-left {
  animation: icon-float 5s ease-in-out infinite;
  animation-delay: 1s;
}

.icon-bottom-right {
  animation: icon-float 5s ease-in-out infinite;
  animation-delay: 1.5s;
}

.reference-section{
  background-color: #FFFDF3;
  padding-top: 120px;
  padding-bottom: 120px;
}

.reference-section .reference-title{
  display: inline-block;
  position: relative;
  padding-bottom: 10px;
  margin-bottom: 40px;
}

.reference-section .reference-title::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 80px;
  height: 4px;
  background-color: #aad447;
  transform: translateX(-50%);
}

.reference-btn{
  background-color: #169F45;
  padding: 12px 32px;
  color: #fff;
  border-radius: 32px;
  border: none;
  transition: all 0.3s;
  width: fit-content;
  text-align: right;
  cursor: pointer;
}

.reference-btn:hover{
  background-color: #128038;
  color: #fff;
  transition: all 0.3s ease-in-out;
}

.reference-btn:active{
  background-color: #169F45 !important;
  padding: 12px 32px;
  color: #fff;
  border-radius: 32px;
  border: none;
  transition: all 0.3s;
  width: fit-content;
  text-align: right;
}

.reference-section .title-text{
  font-size: 18px;
  font-weight: 500;
  line-height: 168%;
}

.reference-section .body-text{
  font-size: 16px;
  font-weight: 500;
  line-height: 150%;
}

.reference-section .refercence-logo{
  height: 240px;
  background-color: #fff;
  border: 1px solid #88C87A;
  display: flex;
  padding: 20px;
}

@media only screen and (max-width: 989px) {
  .reference-section .htt-logo{
    margin-bottom: 30px;
  }
  .reference-section .refercence-logo{
    margin-bottom: 60px;
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .reference-section .refercence-logo img{
    /* width: 100%; */
  }
}