body[data-account-page="partner"] {
  --stock-hero-image: var(--partner-hero-image,none);
}

.partner-hero {
  background-image:
    linear-gradient(90deg,rgba(3,13,31,.98) 0%,rgba(3,13,31,.84) 45%,rgba(3,13,31,.3) 78%,rgba(3,13,31,.72) 100%),
    linear-gradient(180deg,rgba(4,16,36,.04),rgba(4,16,36,.2) 64%,#061026 100%),
    var(--stock-hero-image),
    radial-gradient(circle at 78% 40%,rgba(226,185,93,.17),transparent 24%),
    radial-gradient(circle at 75% 43%,rgba(44,148,255,.22),transparent 42%),
    linear-gradient(135deg,#061127 0%,#0a1d3c 58%,#071329 100%);
}
.partner-hero::after {
  content: "携手共赢";
  right: max(4vw,50px);
  color: rgba(232,196,122,.045);
  font-size: clamp(100px,14vw,230px);
  letter-spacing: -.04em;
}
.partner-hero .stock-hero-copy { max-width: 790px; }
.partner-hero .stock-hero-copy h1 { max-width: 790px; font-size: clamp(44px,5.1vw,72px); }

.partner-intro {
  padding: 112px 0;
  background:
    radial-gradient(circle at 88% 48%,rgba(232,196,122,.07),transparent 28%),
    radial-gradient(circle at 72% 45%,rgba(48,143,244,.09),transparent 38%);
}
.partner-intro-grid {
  display: grid;
  grid-template-columns: .88fr 1.12fr;
  gap: 84px;
  align-items: center;
}
.partner-intro-copy h2 {
  max-width: 560px;
  font-size: clamp(36px,4.2vw,54px);
  font-weight: 500;
}
.partner-intro-copy p {
  max-width: 590px;
  margin-top: 23px;
  color: #abc3df;
  font-size: 16px;
  line-height: 2;
}
.partner-intro-copy p + p { margin-top: 12px; color: #7fa2c8; }
.partner-capabilities {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 14px;
  padding: 22px;
  border: 1px solid rgba(57,147,239,.52);
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0,rgba(232,196,122,.1),transparent 43%),
    linear-gradient(155deg,rgba(10,40,78,.94),rgba(2,18,39,.98));
  box-shadow: 0 30px 70px rgba(0,12,34,.34),inset 0 1px 0 rgba(255,255,255,.05);
}
.partner-capabilities > div {
  min-height: 150px;
  padding: 25px;
  border: 1px solid rgba(72,180,255,.19);
  border-radius: 15px;
  background: rgba(10,38,75,.66);
}
.partner-capabilities span {
  display: block;
  color: #e8c47a;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
}
.partner-capabilities strong { display: block; margin-top: 19px; font-size: 20px; font-weight: 500; }
.partner-capabilities p { margin-top: 8px; color: #83a7ce; font-size: 13px; }

.partner-benefits {
  background:
    radial-gradient(circle at 50% 0,rgba(232,196,122,.075),transparent 30%),
    radial-gradient(circle at 50% 0,rgba(33,126,235,.12),transparent 48%),
    linear-gradient(180deg,rgba(5,23,48,.44),rgba(3,15,34,.74));
}
.partner-benefit-grid { grid-template-columns: repeat(3,1fr); }
.partner-benefit-grid .stock-benefit { min-height: 250px; }
.partner-benefit-grid .benefit-mark { font-family: var(--font); font-size: 18px; font-weight: 700; }

.partner-types {
  overflow: hidden;
  background: radial-gradient(circle at 90% 18%,rgba(72,180,255,.08),transparent 30%);
}
.partner-types::before {
  content: "";
  position: absolute;
  right: -220px;
  bottom: -330px;
  width: 760px;
  height: 760px;
  border: 1px solid rgba(232,196,122,.07);
  border-radius: 50%;
  box-shadow: 0 0 0 95px rgba(72,180,255,.012);
}
.partner-type-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 20px;
}
.partner-type-card {
  min-height: 184px;
  display: flex;
  align-items: flex-start;
  gap: 24px;
  padding: 34px;
  border: 1px solid rgba(43,134,230,.5);
  border-radius: 18px;
  background:
    radial-gradient(circle at 0 0,rgba(72,180,255,.1),transparent 42%),
    linear-gradient(160deg,rgba(10,39,76,.94),rgba(2,20,43,.96));
  transition: transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.partner-type-card:hover {
  transform: translateY(-5px);
  border-color: rgba(232,196,122,.68);
  box-shadow: 0 24px 56px rgba(0,17,47,.4);
}
.partner-type-card > span {
  flex: 0 0 auto;
  color: rgba(232,196,122,.5);
  font-size: 33px;
  font-weight: 700;
  line-height: 1;
}
.partner-type-card h3 { font-size: 22px; font-weight: 500; }
.partner-type-card p { margin-top: 14px; color: #91adcc; font-size: 14px; line-height: 1.85; }
.partner-type-card--wide { grid-column: 1 / -1; min-height: 155px; }

.partner-closing .closing-box {
  background:
    radial-gradient(circle at 80% 0,rgba(232,196,122,.12),transparent 34%),
    linear-gradient(135deg,rgba(14,54,100,.96),rgba(3,23,50,.98));
}

@media (max-width: 1000px) {
  .partner-intro-grid { grid-template-columns: 1fr; gap: 48px; }
  .partner-capabilities { max-width: 760px; }
  .partner-benefit-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 820px) {
  .partner-hero .stock-hero-copy h1 { font-size: clamp(40px,11vw,58px); }
  .partner-intro { padding: 78px 0; }
  .partner-intro-grid { gap: 38px; }
  .partner-capabilities { grid-template-columns: 1fr; padding: 18px; }
  .partner-capabilities > div { min-height: 128px; }
  .partner-benefit-grid,.partner-type-grid { grid-template-columns: 1fr; }
  .partner-benefit-grid .stock-benefit { min-height: 0; }
  .partner-type-card,.partner-type-card--wide { grid-column: auto; min-height: 0; padding: 28px 24px; }
}
