/* Hero layout, uploaded photo and the original editable palette. */
.np-block.hero {
   min-height: 530px;
   position: relative;
   overflow: hidden;
   isolation: isolate;
   color: var(--hero-text, #fff);
   background:
      radial-gradient(
         circle at 68% 35%,
         var(--hero-glow, #ab93ff) 0,
         transparent 21%
      ),
      radial-gradient(
         circle at 10% 95%,
         var(--hero-shadow, #2a1b76),
         transparent 42%
      ),
      linear-gradient(
         120deg,
         var(--hero-start, #352083),
         var(--hero-middle, #7049df) 55%,
         var(--hero-end, #4f2aba)
      );
}
.np-block.hero {
   display: flex;
   justify-content: space-around;
}
.np-block.hero .hero-copy {
   width: min(510px, calc(50% - 48px));
   padding: 84px 0 65px;
   position: relative;
   z-index: 2;
   margin-left: max(24px, calc((100vw - 1180px) / 2));
}

.np-block.hero h1 {
   font-size: clamp(44px, 5.6vw, 72px);
   line-height: 0.96;
   letter-spacing: -3px;
   margin: 0;
   font-weight: 700;
}

.np-block.hero h1 em {
   font-family: Georgia, "Times New Roman", serif;
   font-weight: 600;
}

.np-block.hero .hero-text {
   line-height: 1.55;
   max-width: 410px;
   margin: 23px 0;
}

.np-block.hero .hero-buttons {
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   gap: 23px;
}

.np-block.hero .hero-art {
   /* position: absolute;
   right: max(24px, calc((100vw - 1180px) / 2));
   bottom: 15px;
   width: min(640px, calc(50% - 24px));
   height: 415px; */
}

.np-block.hero .hero-image {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: contain;
   object-position: center bottom;
}

@media (max-width: 760px) {
   .np-block.hero {
      min-height: 570px;
   }
   .np-block.hero .hero-copy {
      width: calc(100% - 48px);
      padding: 59px 0 32px;
   }
   .np-block.hero h1 {
      font-size: 51px;
   }
   .np-block.hero .hero-text {
      max-width: 310px;
   }
   .np-block.hero .hero-buttons {
      align-items: flex-start;
      flex-direction: column;
      gap: 15px;
   }
   .np-block.hero .hero-art {
      position: relative;
      right: auto;
      bottom: auto;
      width: min(640px, calc(100% - 32px));
      height: auto;
      margin: 0 auto 32px;
   }
   .np-block.hero .hero-image {
      height: auto;
   }
}
