

/* #region hero */
.page-hero {
  --hero-animate-duration: 2s;
  position: relative;
  display: block;
  width: 100vw;
  height: auto;
  overflow-x: hidden;
  padding-top: 4.5rem;
}

.hero-bkg {
  display: flex;
  flex-flow: row;
  justify-content: center;
  height: auto;
  margin: 0 -6rem;
}

.hero-bkg > svg {
  margin-top: -5rem;
  max-width: 1555px;
  width: 100%;
  height: auto;
}

.hero-bkg > svg .slide-one,
.hero-bkg > svg .slide-two,
.hero-bkg > svg .indicator-one,
.hero-bkg > svg .indicator-two {
  transition: all var(--hero-animate-duration) ease-in-out;
}

.page-hero[data-slide="0"] .hero-bkg > svg .slide-one {
  opacity: 1;
}
.page-hero[data-slide="0"] .hero-bkg > svg .slide-two {
  opacity: 0;
}
.page-hero[data-slide="0"] .hero-bkg > svg .indicator-one {
  width: 31px;
  fill: #004099;
}
.page-hero[data-slide="0"] .hero-bkg > svg .indicator-two {
  width: 8px;
  fill: #FFFFFF;
  transform: translateX(0);
}

.page-hero[data-slide="1"] .hero-bkg > svg .slide-one {
  opacity: 0;
}
.page-hero[data-slide="1"] .hero-bkg > svg .slide-two {
  opacity: 1;
}
.page-hero[data-slide="1"] .hero-bkg > svg .indicator-one {
  width: 8px;
  fill: #FFFFFF;
}
.page-hero[data-slide="1"] .hero-bkg > svg .indicator-two {
  width: 31px;
  fill: #004099;
  transform: translateX(-23px);
}

.hero-bkg + .container {
  position: relative;
  z-index: 3;
}

.scroll-indicator {
  position: absolute;
  display: none;
  width: 168px;
  transform-origin: center;
  transform: rotate(90deg);
  bottom: 70px;
  left: 0;
  overflow: hidden;
  z-index: 5;
}

.scroll-indicator > .indicator {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #FFF;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 1.12px;
  text-transform: uppercase;
  padding-bottom: 10px;
}

.scroll-indicator > .indicator::before {
  content: "";
  position: absolute;
  display: block;
  width: 168px;
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: #FFF;
  animation: scroll 3s ease infinite;
}

@keyframes scroll {
  0% {
    left: 0%;
    opacity: 1;
  }

  10% {
    left: 0%;
    opacity: 1;
  }

  50% {
    left: 100%;
    opacity: 1;
  }

  51% {
    left: 100%;
    opacity: 0;
  }

  55% {
    left: -100%;
    opacity: 0;
  }

  58% {
    left: -100%;
    opacity: 1;
  }

  60% {
    left: -100%;
    opacity: 1;
  }

  100% {
    left: 0%;
    opacity: 1;
  }
}

.page-hero .hero-overlay {
  position: absolute;
  top: 4.5rem;
  left: 0;
  right: 0;
  z-index: 2;
}
.page-hero .hero-overlay > .container {
  position: relative;
}

.page-hero .page-title {
  position: absolute;
  left: 0.75rem;
  top: 8.5rem;
  display: inline-flex;
  flex-flow: column;
  align-items: flex-start;
  transition: opacity var(--hero-animate-duration) ease-in-out;
}
.page-hero .page-title .title {
  --translate-y: 70px;
  display: inline-block;
  padding: 0 0.25rem;
  margin-bottom: 0.8125rem;
  border-radius: 0.5rem;
  background-color: #001529;
  color: #FFF;
  font-family: var(--font-hiragino);
  font-size: clamp(30px,4.44vw,64px);
  font-weight: 600;
  line-height: 150%;
  overflow: hidden;
}
.page-hero .page-title .title > span {
  display: inline-block;
  transform: translateY(var(--translate-y));
  transition: transform 0.8s ease-in;
  transition-delay: calc(var(--index) * 0.1s);
}
.page-hero .page-title.two .title {
  font-size: clamp(25px,4.44vw,64px);
}

.page-hero .page-title .title.small {
  font-size: clamp(12px,2.22vw,32px);
}

.page-hero .page-title.two {
  opacity: 0;
}

.page-hero[data-slide="0"] .page-title.one {
  opacity: 1;
}
.page-hero[data-slide="0"] .page-title.two {
  opacity: 0;
}
.page-hero[data-slide="0"] .page-title.one .title > span {
  transform: translateY(0);
}

.page-hero[data-slide="1"] .page-title.one {
  opacity: 0;
}
.page-hero[data-slide="1"] .page-title.two {
  opacity: 1;
}
.page-hero[data-slide="1"] .page-title.two .title > span {
  transform: translateY(0);
}

@media screen and (min-width: 992px) {
  .page-hero {
    padding-top: 8rem;
    background: linear-gradient(rgba(255, 255, 255, 1) 0px, rgba(255, 255, 255, 0.8) 50px, rgba(255, 255, 255, 0) 120px);
  }
  .hero-bkg {
    min-width: 100vw;
    margin: 0 -10rem;
  }
  .hero-bkg > svg {
    margin-top: -8rem;
  }
  .page-hero .hero-overlay {
    top: 8rem;
  }
  .scroll-indicator {
    display: block;
  }
  .page-hero .page-title {
    left: auto;
    right: 0.5rem;
    top: 24rem;
  }
  .page-hero .page-title .title {
    padding: 0 1.25rem;
    line-height: 120%;
  }
}
/* #endregion hero */

.section-title {
  display: inline-flex;
  flex-flow: column;
  align-items: flex-start;
  color: #FFF;
  font-family: var(--font-hiragino);
  font-size: clamp(50px,6.94vw,100px);
  font-weight: 600;
  text-transform: uppercase;
}
.section-title > .ruby-text {
  color: #FFF;
  font-family: var(--font-yu-gothic);
  font-size: clamp(8px,0.83vw,12px);
  font-weight: 700;
  display: inline-flex;
  padding: 0.375rem 1rem;
  justify-content: center;
  align-items: center;
  border-radius: 5rem;
  border: 1px solid #FFF;
  background: #004099;
  margin-bottom: 0.25rem;
}
.section-title.blue {
  color: #004099;
}
.section-title.blue > .ruby-text {
  color: #004099;
  border: 1px solid #004099;
  background: #FFF;
}

.section-message {
  color: #001529;
  font-family: YuGothic;
  font-size: clamp(16px,1.53vw,22px);
  font-weight: 700;
}
.section-message.white {
  color: #FFF;
}

.card .card-tags {
  display: flex;
  flex-flow: wrap;
  gap: 0.5rem 0.75rem;
}
.card .card-tags .tag {
  display: flex;
  padding: 0.375rem 0.75rem;
  justify-content: center;
  align-items: center;
  border-radius: 2rem;
  background: #E0EDFF;
  color: #004099;
  font-size: clamp(10px,0.83vw,12px);
  font-weight: 700;
}
.card .card-tags .tag::before {
  content: "#";
}

/* #region News */
.home-news {
  position: relative;
  padding-top: 1.875rem;
  padding-bottom: 4rem;
}

.home-news .news-actions {
  position: absolute;
  bottom: 0.25rem;
  right: 1rem;
  padding-top: 3rem;
}

.home-news .news-actions .btn-light {
  --bs-btn-padding-x: 1.25rem;
  --bs-btn-padding-y: 0.75rem;
  --bs-btn-border-color: var(--bs-body-bg);
  --bs-btn-color: #004099;
  --bs-btn-hover-border-color: ;
  --bs-btn-active-border-color: ;
  font-size: clamp(14px,1.11vw,16px);
  font-weight: 700;
  padding-left: 1rem;
}

.home-news .list-group {
  --bs-list-group-border-color: transparent;
  --bs-list-group-item-padding-x: 1rem;
  --bs-list-group-item-padding-y: 0.625rem;
  gap: 0.5rem;
}

.home-news .list-group-item {
  display: flex;
  flex-flow: row;
  align-items: center;
  justify-content: space-between;
  border-radius: 0.625rem;
}

.home-news .list-group-item .item-heading {
  display: flex;
  flex-flow: row;
  gap: 1rem;
}

.home-news .list-group-item .item-heading .date {
  color: #AEAEAE;
  font-size: clamp(10px,1.11vw,16px);
  font-weight: 500;
}
.home-news .list-group-item .item-heading .category {
  position: relative;
  padding-left: 0.75rem;
  color: #004099;
  font-size: clamp(10px,1.11vw,16px);
  font-weight: 700;
}

.home-news .list-group-item .item-heading .category::before {
  content: "";
  position: absolute;
  display: block;
  width: 5px;
  height: 5px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #90F07E;
  border-radius: 3px;
}

.home-news .list-group-item .item-body {
  color: #001529;
  font-size: clamp(14px,1.11vw,16px);
  font-weight: 700;
  padding-top: 0.5rem;
}

.home-news .list-group-item .item-body > p:last-child {
  margin-bottom: 0;
}

.home-news .list-group-item .link-indicator-dot {
  display: none;
}

@media screen and (min-width: 992px) {
  .home-news {
    padding-top: 6.25rem;
  }
  .home-news .section-title > .ruby-text {
    padding: 0.625rem 1.5rem;
  }
  .home-news .news-actions {
    position: relative;
    padding-top: 3rem;
    right: unset;
    bottom: unset;
  }
  .home-news .list-group {
    --bs-list-group-item-padding-x: 1.875rem;
    --bs-list-group-item-padding-y: 1.25rem;
    gap: 1rem;
  }
  .home-news .list-group-item .item-heading .category {
    padding-left: 1rem;
  }
  .home-news .list-group-item .item-heading .category::before {
    width: 8px;
    height: 8px;
  }
  .home-news .list-group-item .link-indicator-dot {
    display: inline-flex;
  }
}
/* #endregion News */

/* #region Message */
.home-message {
  padding-top: 1rem;
}

.home-message .message-swiper .swiper-wrapper {
  transition-timing-function: linear !important;
}
.home-message .message-swiper .swiper-slide {
  padding-right: 4rem;
  width: auto;
  color: #FFF;
  font-family: var(--font-hiragino);
  font-size: clamp(50px,6.94vw,100px);
  font-weight: 600;
  text-transform: uppercase;
}

.home-message .message-content {
  margin-top: -2.5rem;
  padding: 5rem 0 4rem 0;
  background: linear-gradient(120deg, #91F17E -1.77%, #0653BD 51.64%);
}

.home-message .message-content .message-title {
  color: #FFF;
  font-family: var(--font-hiragino);
  font-size: clamp(32px,3.61vw,52px);
  font-weight: 600;
  line-height: normal;
  padding-bottom: 1rem;
}

.home-message .message-content .message-text {
  color: #FFF;
  font-family: var(--font-yu-gothic);
  font-size: clamp(16px,1.67vw,24px);
  font-weight: 700;
  line-height: 190%;
  margin-bottom: 0;
}

@media screen and (min-width: 992px) {
  .home-message .message-content {
    margin-top: -5.5rem;
    padding: 10.5rem 0 8.125rem 0;
  }
  .home-message .message-content .message-title {
    display: flex;
    align-items: center;
    height: 100%;
    line-height: 150%;
  }
  .home-message .message-content .message-text {
    line-height: 300%;
  }
}
/* #endregion Message */

/* #region Service */
.home-service {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  background-color: #F5F5F5;
  border-radius: 0 0 2.5rem 2.5rem;
}

.plx-container {
  position: relative;
}

.card-service {
  --bs-card-border-width: 0;
  --bs-card-spacer-x: 0;
  --bs-card-title-color: #001529;
  --bs-card-color: #001529;
  --bs-card-title-spacer-y: 0.75rem;
  flex-flow: column;
  margin-bottom: 1rem;
}
.card-service .card-img-top {
  border-radius: 0.75rem;
  overflow: hidden;
  flex-basis: 100%;
  aspect-ratio: 10 / 7;
}
.card-service .card-img-top > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.card-service .card-body {
  display: flex;
  flex-flow: column;
  justify-content: center;
}
.card-service .card-title {
  display: flex;
  flex-flow: row;
  align-items: center;
  font-size: clamp(24px,2.22vw,32px);
  font-weight: 700;
  line-height: 125%;
}
.card-service .card-title .number {
  color: #004099;
  font-family: var(--font-hiragino);
  font-size: clamp(32px,3.61vw,52px);
  font-weight: 600;
  margin-right: 0.5rem;
}
.card-service .card-text {
  font-weight: 500;
}

.service-message {
  color: #001529;
  font-size: clamp(16px,1.67vw,24px);
  font-weight: 700;
  margin-top: 1rem;
}

.home-service .card-category {
  --bs-card-height: 7rem;
  --bs-card-border-radius: 0.5rem;
  --bs-card-border-width: 0;
  --bs-card-title-color: #FFF;
  --bs-card-spacer-y: 1.25rem;
  --bs-card-spacer-x: 2.5rem;
  position: relative;
  text-decoration: none;
  margin-bottom: 0.5rem;
}
.home-service .card-category.bg-1 {
  background: linear-gradient(282deg, #91F17E -4.75%, #005BD8 41.57%);
}
.home-service .card-category.bg-2 {
  background: linear-gradient(77deg, #91F17E -4.25%, #005BD8 38.29%);
}
.home-service .card-category.bg-3 {
  background: linear-gradient(279deg, #91F17E -7.85%, #005BD8 41.71%);
}
.home-service .card-category.bg-4 {
  background: linear-gradient(252deg, #91F17E -7.93%, #005BD8 38.08%);
}
.home-service .card-category.bg-5 {
  background: linear-gradient(101deg, #91F17E -0.83%, #005BD8 40.8%);
}
.home-service .card-category.bg-6 {
  background: linear-gradient(257deg, #91F17E -8.22%, #005BD8 45.16%);
}
.home-service .card-category .card-img-top {
  padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x) 0 var(--bs-card-spacer-x);
}
.home-service .card-category .card-img-top > img {
  width: 1.875rem;
  height: 1.875rem;
}
.home-service .card-category .card-title {
  font-size: 16px;
  font-weight: 700;
}
.home-service .card-category .link-indicator-arrow {
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (min-width: 992px) {
  .home-service {
    padding-top: 3rem;
    padding-bottom: 5rem;
    border-radius: 0 0 6.25rem 6.25rem;
  }

  .plx-container .plx-heading {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    padding-left: 0.5rem;
    width: 33.33333333%;
    height: auto;
    max-width: 28.25rem;
  }

  .card-service {
    --bs-card-border-color: transparent;
    --bs-card-title-spacer-y: 1.25rem;
    flex-flow: row;
    margin-left: 2rem;
    margin-bottom: 2rem;
    gap: 3rem;
  }
  .card-service.reverse {
    flex-flow: row-reverse;
  }
  .card-service .card-img-top {
    flex-basis: 47%;
    flex-shrink: 0;
    flex-grow: 1;
    aspect-ratio: 10 / 8;
  }

  .service-message {
    margin-top: 3rem;
  }

  .home-service .card-category {
    --bs-card-height: 9rem;
    margin-bottom: 1rem;
  }
  .home-service .card-category .card-img-top > img {
    width: 2.8125rem;
    height: 2.8125rem;
  }
}
/* #endregion Service */

/* #region Company */
.home-company {
  padding-top: 2.5rem;
  padding-bottom: 0.5rem;
}

.card-company {
  --bs-card-height: 8.8125rem;
  --bs-card-border-width: 0;
  --bs-card-color: #001529;
  --bs-card-bg: #FFF;
  position: relative;
  text-decoration: none;
  display: flex;
  flex-flow: row;
  align-items: center;
  padding-right: 1.5rem;
  overflow: hidden;
}
.card-company::before {
  position: absolute;
  content: "";
  display: block;
  inset: 0;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.30) 0%, rgba(255, 255, 255, 0.30) 100%);
  z-index: 1;
}
.card-company .card-img-top {
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
  opacity: 0.8;
}
.card-company .card-body {
  position: relative;
  z-index: 2;
}
.card-company .card-title {
  font-size: clamp(24px,2.22vw,32px);
  font-weight: 700;
}
.card-company .card-subtitle {
  font-size: clamp(14px,1.11vw,16px);
  font-weight: 700;
}
.card-company .link-indicator-arrow {
  position: relative;
  z-index: 3;
}

@media screen and (min-width: 992px) {
  .home-company {
    padding-top: 4.75rem;
    padding-bottom: 4.75rem;
  }
  .card-company {
    --bs-card-height: 19.375rem;
    --bs-card-spacer-x: 2rem;
  }
}
/* #endregion Company */

/* #region Technology */
.home-technology {
  padding-top: 2.5rem;
  padding-bottom: 1rem;
  background-color: #F5F5F5;
}

.technology-actions .btn-light {
  --bs-btn-border-color: #004099;
  --bs-btn-color: #004099;
  --bs-btn-hover-border-color: ;
  --bs-btn-active-border-color: ;
  --bs-btn-padding-x: 1.25rem;
  --bs-btn-padding-y: 0.75rem;
  font-size: clamp(14px,1.11vw,16px);
  font-weight: 700;
}

.card-technology {
  --bs-card-height: auto;
  --bs-card-bg: #FFF;
  --bs-card-cap-bg: #FFF;
  --bs-card-color: #001529;
  --bs-card-border-width: 0;
  --bs-card-spacer-y: 2.5rem;
  --bs-card-spacer-x: 2.5rem;
  text-decoration: none;
  box-shadow: 0 2px 40px 0 rgba(0, 18, 48, 0.05);
}
.card-technology .card-title {
  font-size: clamp(24px,2.22vw,32px);
  font-weight: 700;
}
.card-technology .card-title .ruby-text {
  font-size: clamp(12px,1.11vw,16px);
  font-weight: 500;
  margin-left: 0.5rem;
}
.card-technology .card-values {
  display: flex;
  flex-flow: column;
}
.card-technology .card-values .card-tags {
  margin-top: 1rem;
}
.card-technology .card-value {
  color: #001529;
  text-align: center;
  font-size: clamp(16px,1.39vw,20px);
  font-weight: 700;
  margin-bottom: 1rem;
}
.card-technology .card-values .card-value:nth-child(2) {
  border-top: 1px solid #D9D9D9;
}
.card-technology .card-value .value {
  color: #004099;
  font-family: var(--font-hiragino);
  font-size: clamp(50px,6.94vw,100px);
  font-weight: 600;
}
.card-technology .card-value .value .suffix {
  color: #001529;
  text-align: center;
  font-size: clamp(14px,1.67vw,24px);
  font-weight: 500;
}
.card-technology .card-tags .year::before {
  content: "";
}
.card-technology .card-footer {
  display: flex;
  flex-flow: row;
  align-items: center;
  justify-content: center;
  color: #004099;
  font-size: 16px;
  font-weight: 700;
  gap: 0.5rem;
  padding: 0 var(--bs-card-spacer-x) 2rem var(--bs-card-spacer-x);
}

.technology-swiper .swiper-wrapper {
  transition-timing-function: linear !important;
}
.technology-swiper .swiper-slide {
  padding-right: 2rem;
  width: 24.0625rem;
  height: 13.125rem;
}
.technology-swiper .swiper-slide > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 0.625rem;
}

@media screen and (min-width: 992px) {
  .home-technology {
    padding-top: 4.875rem;
    padding-bottom: 1rem;
    background-image: url('../assets/images/tech-decor.svg');
    background-repeat: no-repeat;
    background-position: 50% 23.5rem;
    background-size: contain;
  }
  .card-technology {
    --bs-card-height: 40.5rem;
    margin: 1rem;
  }
  .card-technology .card-values {
    flex-flow: row;
  }
  .card-technology .card-values .card-value {
    padding: 1rem 1rem;
  }
  .card-technology .card-values .card-tags {
    margin-top: 2rem;
  }
  .card-values:has(> :nth-child(2)) > .card-value {
    flex-basis: 50%;
  }
  .card-technology .card-values .card-value:nth-child(2) {
    border-top: none;
    border-left: 1px solid #D9D9D9;
  }
  .card-technology .card-value .value .suffix {
    text-align: left;
  }
  .card-technology .card-footer {
    justify-content: flex-end;
  }
}
/* #endregion Technology */

/* #region Sustainability */
.home-sustainability {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  background: linear-gradient(120deg, #91F17E -1.77%, #0653BD 51.64%);
  border-radius: 0 0 2.5rem 2.5rem;
}
.home-sustainability .section-title {
  font-size: clamp(40px,6.94vw,100px);
}
.nonestandard-tabs {
  position: relative;
  display: block;
  width: 100%;
}
.nonestandard-tabs .tab {
  display: flex;
  flex-flow: column;
}
.nonestandard-tabs .tab .tab-heading {
  position: relative;
  flex: none;
  display: flex;
  flex-flow: row;
  align-items: center;
  border-radius: 0.63rem;
  padding: 0;
  cursor: pointer;
}
.nonestandard-tabs .tab .tab-heading::after {
  position: absolute;
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  right: 0.5rem;
  top: 1.25rem;
  background: transparent url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 2a1 1 0 0 1 1 1v6h6a1 1 0 1 1 0 2h-6v6a1 1 0 1 1-2 0v-6H3a1 1 0 1 1 0-2h6V3a1 1 0 0 1 1-1Z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 50% 50%;
}
.nonestandard-tabs .tab .tab-heading:has(input:checked) {
  background-color: #FFF;
  margin-bottom: 0.5rem;
  padding: 0 1.19rem;
}
.nonestandard-tabs .tab .tab-heading:has(input:checked)::after {
  display: none;
}
.nonestandard-tabs .tab .tab-heading input[type="radio"] {
  appearance: none;
  display: none;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 0.5rem;
}
.nonestandard-tabs .tab .tab-heading input:checked {
  display: inline-block;
  background-color: #26DF3B;
  margin-right: 1rem;
}
.nonestandard-tabs .tab .tab-heading .title {
  display: block;
  width: 100%;
  color: #FFF;
  font-size: clamp(24px,2.22vw,32px);
  font-weight: 700;
  line-height: 100%;
  padding: 1rem 0 0.5rem 0;
  border-bottom: 1px solid #FFF;
}
.nonestandard-tabs .tab:has(input:checked) .tab-heading .title {
  color: #001529;
  border-bottom: none;
}
.nonestandard-tabs .tab .tab-body {
  flex-grow: 1;
  display: none;
  flex-flow: column;
  gap: 0.75rem;
}
.nonestandard-tabs .tab:has(input:checked) .tab-body {
  display: flex;
}
.card-sustain {
  --bs-card-height: 8.75rem;
  --bs-card-border-width: 0;
  --bs-card-color: #001529;
  --bs-card-bg: #FFF;
  position: relative;
  text-decoration: none;
  display: flex;
  flex-flow: row;
  align-items: center;
  padding-right: 1.5rem;
}
.card-sustain::after {
  position: absolute;
  right: 1rem;
  top: 1rem;
  content: "";
  display: block;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 0.5rem;
  background-color: #0754BE;
}
.card-sustain .card-img-top {
  position: absolute;
  display: block;
  left: 7rem;
  top: 50%;
  transform: translate(0, -2.1875rem);
  width: 4.375rem;
  height: 4.375rem;
  object-fit: contain;
  object-position: center;
  z-index: 0;
}
.card-sustain .card-body {
  position: relative;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.card-sustain .card-title {
  text-align: center;
  font-size: clamp(16px,1.39vw,20px);
  font-weight: 700;
}
.card-sustain .card-subtitle {
  text-align: center;
  font-size: clamp(10px,0.83vw,12px);
  font-weight: 700;
}

@media screen and (min-width: 992px) {
  .home-sustainability {
    padding-top: 3.75rem;
    padding-bottom: 2.8125rem;
    border-radius: 0 0 6.25rem 6.25rem;
  }
  .nonestandard-tabs {
    height: 19rem;
    margin-top: 2rem;
  }
  .nonestandard-tabs .tab {
    flex-flow: row;
    align-items: flex-start;
    padding: 0;
    height: 5rem;
  }
  .nonestandard-tabs .tab .tab-heading {
    width: 36%;
    height: 5rem;
    margin-right: 2rem;
    padding: 0 0 0 1.88rem;
  }
  .nonestandard-tabs .tab .tab-heading::after {
    top: 1.75rem;
  }
  .nonestandard-tabs .tab .tab-heading input[type="radio"] {
    width: 1rem;
    height: 1rem;
  }
  .nonestandard-tabs .tab .tab-body {
    position: absolute;
    display: none;
    width: 60%;
    top: 0;
    bottom: 0;
    right: 0;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 1rem;
    padding: 0 0.5rem;
  }
  .nonestandard-tabs .tab:has(input:checked) .tab-body {
    display: grid;
  }
  .card-sustain {
    flex-flow: column;
    padding-right: 0;
    padding-bottom: 0.75rem;
  }
  .card-sustain .card-img-top {
    left: 50%;
    transform: translate(-3.125rem, -3.125rem);
    width: 6.25rem;
    height: 6.25rem;
  }
}
/* #endregion Sustainability */

/* #region Career */
.home-career {
  padding-top: 2.5rem;
  padding-bottom: 6.25rem;
}

.card-career {
  --bs-card-spacer-y: 1.5rem;
  --bs-card-spacer-x: 1.5rem;
  --bs-card-border-width: 0;
  --bs-card-height: 5.25rem;
  --bs-card-title-color: #004099;
  position: relative;
  text-decoration: none;
}
.card-career .card-body {
  display: flex;
  flex-flow: column;
  justify-content: center;
}
.card-career .card-title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 0;
}

.card-career .link-indicator-arrow {
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (min-width: 992px) {
  .home-career {
    padding-top: 7rem;
    padding-bottom: 5rem;
  }
  .card-career {
    --bs-card-height: 13.4375rem;
  }
  .card-career .card-body {
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding-left: 6rem;
  }
}
/* #endregion Career */

/* #region scroll-top */
.scroll-top {
  position: fixed;
  display: inline-block;
  bottom: 1rem;
  right: 1.875rem;
  z-index: 120;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.scroll-top.show {
  opacity: 1;
}

.scroll-top .btn-scroll-top {
  display: block;
  width: 3.75rem;
  height: 3.75rem;
  background: linear-gradient(90deg, #91F17E 0%, #0653BD 60%, #0653BD 100%);
  border-radius: 2.5rem;
  border: none;
  outline: none;
  cursor: pointer;
}
.scroll-top.white .btn-scroll-top {
  background: #FFF;
}
.scroll-top.white .btn-scroll-top > svg {
  fill: #004099;
}

@media screen and (min-width: 992px) {
  .scroll-top {
    bottom: 3.125rem;
    right: 3.75rem;
  }
  .scroll-top .btn-scroll-top {
    width: 5rem;
    height: 5rem;
  }
}
/* #endregion scroll-top */