.hero {
  background:
    radial-gradient(circle at 92% 28%, #fff1ca 0 0, transparent 23%),
    radial-gradient(circle at 8% 42%, #dbeaff 0 0, transparent 30%),
    linear-gradient(180deg, #f8fbff 0%, #edf5ff 52%, #fbfcfd 100%);
}

.hero .eyebrow,
.hero h1,
.hero-copy,
.hero .actions,
.hero-card {
  position: relative;
  z-index: 1;
}

.hero-card {
  position: relative;
  isolation: isolate;
  color: #fff;
  background:
    radial-gradient(circle at 82% 18%, #ffffff2f 0 0, transparent 24%),
    linear-gradient(135deg, #0a244f 0%, #1767ff 60%, #58d7c8 100%);
  border: 1px solid #dce5ef;
}

.hero-card::before,
.hero-card::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

.hero-card::before {
  inset: 42px;
  border: 1px solid #ffffff20;
  border-radius: 38px;
  background:
    linear-gradient(#ffffff36, #ffffff36) 72% 25% / 150px 2px no-repeat,
    linear-gradient(#ffffff24, #ffffff24) 25% 73% / 210px 2px no-repeat,
    #ffffff0d;
}

.hero-card::after {
  top: 72px;
  right: 92px;
  width: 16px;
  height: 16px;
  border: 4px solid #fff;
  border-radius: 999px;
  background: #58d7c8;
  box-shadow:
    -380px 290px 0 -1px #f4be55,
    0 0 0 12px #61d8c524,
    -380px 290px 0 11px #f4be5524;
  animation: partnerPulse 3.5s ease-in-out infinite;
}

.hero-card .pill {
  background: #ffffff24;
  border: 1px solid #ffffff2b;
}

.art.merchant-art,
.art.capital-art {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--ink);
  background:
    radial-gradient(circle at 86% 14%, #fff0c9 0 0, transparent 29%),
    radial-gradient(circle at 13% 83%, #d9ebff 0 0, transparent 34%),
    linear-gradient(135deg, #f8fbff 0%, #edf5ff 50%, #e9fbf7 100%);
  border: 1px solid #dce5ef;
}

.art.merchant-art::before,
.art.capital-art::before {
  content: "";
  position: absolute;
  inset: 44px;
  z-index: -1;
  border-radius: 42px;
  background:
    radial-gradient(circle at 24% 22%, #ffffff3d 0 0, transparent 25%),
    linear-gradient(135deg, #0a244f 0%, #1767ff 58%, #58d7c8 100%);
  box-shadow: 0 32px 70px #12375f33;
}

.art.capital-art::before {
  background:
    radial-gradient(circle at 24% 22%, #ffffff3d 0 0, transparent 25%),
    linear-gradient(135deg, #081526 0%, #1767ff 52%, #f4be55 100%);
}

.art.merchant-art::after,
.art.capital-art::after {
  content: "";
  position: absolute;
  top: 86px;
  right: 58px;
  z-index: -1;
  width: 180px;
  height: 118px;
  border: 1px solid #ffffff38;
  border-radius: 28px;
  background:
    linear-gradient(#ffffff70, #ffffff70) 30px 34px / 105px 12px no-repeat,
    linear-gradient(#ffffff48, #ffffff48) 30px 62px / 78px 12px no-repeat,
    #ffffff26;
  box-shadow: inset 0 1px 0 #ffffff35;
}

.art.merchant-art span,
.art.merchant-art strong,
.art.merchant-art i,
.art.capital-art span,
.art.capital-art strong,
.art.capital-art i {
  position: relative;
  z-index: 2;
}

.art.merchant-art span,
.art.capital-art span,
.art.merchant-art i,
.art.capital-art i {
  color: #ddecff;
  opacity: 1;
}

.art.merchant-art strong,
.art.capital-art strong {
  color: #fff;
  border: 1px solid #ffffff35;
  border-radius: 28px;
  padding: 28px 42px;
  background: #ffffff1f;
  box-shadow: inset 0 1px 0 #ffffff30;
}

.art.merchant-art span::before,
.art.capital-art span::before,
.art.merchant-art i::after,
.art.capital-art i::after {
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  border: 4px solid #fff;
  border-radius: 999px;
  background: #58d7c8;
  box-shadow: 0 0 0 12px #61d8c524, 0 20px 40px #0f355a21;
}

.art.merchant-art span::before,
.art.capital-art span::before {
  top: 166px;
  left: -98px;
}

.art.merchant-art i::after,
.art.capital-art i::after {
  right: -92px;
  bottom: 164px;
  background: #f4be55;
}

.partner-hero {
  grid-template-columns: 1.15fr .85fr;
  gap: 60px;
  min-height: 720px;
  padding: 110px 6vw;
}

.partner-page .partner-visual {
  position: relative;
  overflow: hidden;
  min-height: 520px;
  border-radius: 50px;
  box-shadow: 0 40px 80px #0e356424;
}

.partner-page .partner-image-card {
  position: absolute;
  inset: 0;
  border: 1px solid #dce5ef;
  border-radius: 50px;
  box-shadow: none;
}

.partner-page .partner-image-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.partner-page .partner-orbit {
  z-index: 3;
}

.about-visual {
  overflow: hidden;
  background: #fff;
  border: 1px solid #dce5ef;
  box-shadow: 0 34px 75px #1641711f;
}

.about-visual-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (width <= 850px) {
  .partner-hero {
    grid-template-columns: 1fr;
    padding-top: 70px;
  }

  .partner-page .partner-visual {
    width: 100%;
    max-width: 620px;
    min-height: 470px;
    margin: 0 auto;
  }
}

@media (width <= 520px) {
  .partner-page .partner-visual,
  .partner-page .partner-image-card {
    border-radius: 30px;
  }

  .partner-page .partner-visual {
    min-height: 340px;
  }
}
