#projects {
    position: relative;
    margin: 0;
    padding: 0;
}
  
#projects .section_hero {
    --border-radius: 0;
    --transition-duration: 1000ms;
    position: relative;
    width: 100%;
    height: 350px;
    margin-top: 300px;
}
#projects .section_hero h2 {
    margin-top: 0;
}
  
.hero__fullsize {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 0;
}
  
.hero__content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    filter: drop-shadow(0 5px 5px #0007);
    transition:
      top var(--transition-duration), 
      left var(--transition-duration), 
      width var(--transition-duration), 
      height var(--transition-duration),
      border-radius var(--transition-duration),
      transform var(--transition-duration),
      opacity var(--transition-duration);
}
  
.hero__content--hidden {
    visibility: hidden;
    transition: none;
    transform: none;
    opacity: 1;
    z-index: 0;
}
  
.hero__content--bottom {
    opacity: 0;
    transform: scale(1.5);
    z-index: 1;
}
  
.hero__content--top {
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    border-radius: 0;
    z-index: 2;
}
  
/* curtain */
  
.hero__content--show-text::before {
    transform: translateX(0);
    transition: transform 300ms;
}
  
.hero__content--grow::before {
    transform: translateX(-100%);
    transition: none;
}
  
/* title */
.hero__content--show-text .content__title {
    transform: translateY(0);
    transition: transform 300ms;
}
  
.hero__content--show-text .content__title .word {
    clip-path: inset(0);
    transition: clip-path 300ms;
}
  
.hero__content--grow .content__title {
    visibility: hidden;
    transform: translateY(48px);
    transition: none;
}
  
.hero__content--grow .content__title .word {
    clip-path: inset(0 0 48px);
    transition: none;
}

/* desc */

.hero__content--show-text .content__desc {
    transform: translateY(0px);
    transition: transform 300ms;
  }
  
  .hero__content--show-text .content__desc .word {
    clip-path: inset(0);
    transition: clip-path 300ms;
  }
  
  .hero__content--grow .content__desc {
    visibility: hidden;
    transform: translateY(18px);
    transition: none;
  }
  
  .hero__content--grow .content__desc .word {
    clip-path: inset(0 0 18px);
    transition: none;
  }
  
.hero__swiper {
    position: absolute;
    width: 80%;
    aspect-ratio: 3.5 / 1;
    right: 0px;
    bottom: 50px;
    padding: 15px 0;
    z-index: 1;
    user-select: none;
}
  
.swiper {
    --swiper-navigation-size: 20px;
    visibility: hidden;
}
  
.swiper.swiper-initialized {
    visibility: visible;
}
  
.swiper-slide-prev,
.swiper-slide-active {
    opacity: 0;
}
  
.swiper-slide {
    display: flex;
}
  
.content {
    display: flex;
    position: relative;
    width: 100%;
    filter: drop-shadow(0 5px 5px #0007);
    overflow: hidden;
    z-index: 0;
}
  
.content--slide {
    position: relative;
    border-radius: var(--border-radius, 0);
}
  
.content__text {
    display: flex;
    flex-direction: column;
    width: 100%;
    color: #fff;
    padding-bottom: 120px;
}
  
.content--slide .content__title,
.content--slide .content__text {
    display: none;
}
  
.content--hero {
    padding: 50px 50px 0 25px;
    position: absolute;
    border-radius: 0;
}
  
.content--hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 300%;
    background: linear-gradient(90deg, hsl(49deg 70% 0% / 50%), transparent);
    pointer-events: none;
    z-index: -1;
}
  
.content--hero .content__title {
    margin: 0 0 0.2em;
    color: #fff;
    text-transform: uppercase;
}
  
.content--hero .content__text {
    width: 75%;
}
.content--slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
  
.content--hero img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -2;
}
 
.swiper-pagination.swiper-pagination-clickable {
    bottom: 0;
    text-align: left;
}
.swiper-pagination span {
    background-color: #fff;
    border-radius: 0;
    opacity: 1;
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap,10px) !important;
}
.swiper-pagination span.swiper-pagination-bullet-active {
    background-color: var(--wp--preset--color--theme-primary-red);
}
.section-content {
    width: 100%;
    position: absolute;
    top: -300px;
    right: 0;
}
.section-content h2,
.section-content p {
    color: #fff;
}

.swiper-button-next {
    right: auto !important;
    left: calc(100% - 45px);
    top: calc(50% - 20px) !important;
    width: 40px;
    height: 40px;
    background-color: var(--wp--preset--color--theme-primary-red);
    border-radius: 50%;
    color: #fff;
}
  
@media screen and (min-width: 568px) {
    .hero__fullsize {
        width: 70%;
    }
    .swiper-button-next {
        left: 48%;
        top: 50% !important;
    }
}

@media screen and (min-width: 782px) {
    .hero__fullsize {
        width: 55%;
        height: 100%;
    }
    #projects .section_hero {
        margin-top: 0;
        height: 575px;
    }
    .section-content {
        width: 36%;
        top: 0;
    }
    .swiper-button-next {
        left: 32%;
    }
    .content--hero {
        padding: 100px 50px 0 50px
    }
    .content--hero .content__title {
        font-size: var(--wp--preset--font-size--x-large);
    }
    .content--hero .content__desc {
        font-size: 21px;
    }
}

@media screen and (min-width: 960px) {
    #projects .section_hero {
        height: 625px;
    }
}

@media screen and (min-width: 1200px) {
    #projects .section_hero {
        height: 700px;
    }
    .content--hero {
        padding: 175px 100px 0 75px;
    }
}