.land-offset {
   margin-top: 100px;
}

.land-head {
   text-align: center;
   max-width: 1200px;
   margin: 0 auto 64px;
}

.land-head__title {
   font-size: 62px;
   line-height: 1.2;
   font-weight: 500;
}

.land-head__text {
   font-size: 32px;
   line-height: 1.4;
   margin-top: 24px;
}

.land-slider {
   position: relative;
   max-width: 1280px;
   padding: 0 80px;
   margin: 0 auto 64px;
}

.land-slider--inside {
   margin-top: -80px;
}

.land-showcase img {
   display: block;
   height: auto;
   border-radius: 32px;
}

.land-grid {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 70px;
}

.land-goods {
   display: grid;
   grid-template-columns: 1fr 560px;
   gap: 48px;
   margin-bottom: 64px;
}

.land-goods__cover {
   background: 50% no-repeat;
   background-size: cover;
   border-radius: 32px;
}

.land-items {
   display: grid;
   gap: 24px;
   grid-template-columns: repeat(var(--land-items), 1fr);
}

.land-item {
   min-width: 0;
}

.land-item .N-element {
   margin-bottom: 0;
   height: 100%;
}

.land-items--slice .land-item:nth-child(n+5) {
   display: none;
}

.land-items--center {
   max-width: 1200px;
   margin: 0 auto 64px;
}

.land-button {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   padding: 0 40px;
   color: #fff;
   background-color: #2D2D2D;
   font-size: 28px;
   line-height: 1.2;
   font-weight: bold;
   text-decoration: none;
   height: 100px;
   border-radius: 20px;
   cursor: pointer;
}

.land-ribbon {
   height: 168px;
   position: relative;
}

.land-ribbon::before {
   content: '';
   position: absolute;
   left: 50%;
   top: 0;
   width: 100vw;
   height: 100%;
   transform: translateX(-50%);
   background: url('land-ribbon.svg') repeat-x;
   animation: ribbon 10s infinite linear;
}

@keyframes ribbon {
   0% {
      background-position: 0 0;
   }
   100% {
      background-position: -100vw 0
   }
}

.land-brand {
   height: 170px;
   border-radius: 40px;
   display: flex;
   justify-content: center;
   align-items: center;
   padding: 20px;
   font-size: 24px;
   background-color: #FAF7F1;
}

.land-brand img {
   max-width: 160px;
   height: auto;
   display: block;
}

@media (max-width: 1023px) {
   .land-offset {
      margin-top: 50px;
   }

   .land-showcase img {
      border-radius: 10px;
   }

   .land-head__title {
      font-size: 32px;
      font-weight: bold;
   }

   .land-head__text {
      font-size: 16px;
   }

   .land-slider {
      padding: 0;
   }

   .land-slider--inside {
      margin-top: 24px;
   }

   .land-button {
      border-radius: 10px;
      height: auto;
      padding: 20px;
      font-size: 16px;
   }

   .land-grid {
      flex-direction: column;
      gap: 20px;
   }

   .land-goods {
      grid-template-columns: 1fr;
      gap: 0;
   }

   .land-items {
      --land-items: 2 !important;
      gap: 10px;
   }

   .land-brand {
      border-radius: 10px;
   }
}