.api-page{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  gap:22px;
}

.api-page .api-hero{
  grid-template-columns:minmax(0,1fr) 430px;
  align-items:center;
  padding:34px;
  border-radius:28px;
  background:linear-gradient(135deg,#ffffff 0%,#f7fbff 100%);
}

.api-page .api-hero-copy h1{
  max-width:720px;
  margin:12px 0;
  font-size:clamp(2.6rem,4.6vw,4.25rem);
  line-height:1;
}

.api-page .api-intro-markup{
  max-width:680px;
  color:#5e7390;
  font-size:1.02rem;
  line-height:1.65;
}

.api-page .api-hero-card{
  min-height:310px;
  padding:22px;
  background:#ffffff;
  border-radius:24px;
}

.api-flow-card{
  display:grid;
  grid-template-columns:1fr 42px 1fr 42px 1fr;
  align-items:center;
  gap:10px;
  padding:20px;
  border:1px solid #d9e6f7;
  border-radius:22px;
  background:#f5f8fd;
}

.api-flow-node{
  display:grid;
  justify-items:center;
  gap:10px;
  min-height:118px;
  padding:16px 10px;
  border:1px solid #d5e3f6;
  border-radius:18px;
  background:#ffffff;
  color:#102a4c;
  font-weight:900;
  text-align:center;
}

.api-flow-node i{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#edf4ff;
  color:#396dfb;
}

.api-flow-node.strong{
  color:#ffffff;
  background:linear-gradient(135deg,#396dfb,#6b8bff);
  border-color:#396dfb;
}

.api-flow-node.strong i{
  background:rgba(255,255,255,.18);
  color:#ffffff;
}

.api-flow-line{
  height:3px;
  border-radius:99px;
  background:linear-gradient(90deg,#bdd2f1,#396dfb);
}

.api-endpoint-card{
  display:flex;
  gap:10px;
  align-items:center;
  margin-top:18px;
  padding:14px;
  border-radius:16px;
  background:#102a4c;
  color:#ffffff;
}

.api-endpoint-card span{
  padding:5px 9px;
  border-radius:999px;
  background:#eaf0ff;
  color:#396dfb;
  font-size:.76rem;
  font-weight:900;
}

.api-endpoint-card code{
  color:#ffffff;
  white-space:normal;
}

.api-page .api-tabs{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  padding:8px;
  border-radius:18px;
}

.api-page .api-tabs a{
  flex:1 1 190px;
  min-height:46px;
  display:grid;
  place-items:center;
}

.api-page .api-preview-strip{
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.api-page .api-qr-swatch{
  min-height:148px;
}

.api-swatch-image{
  width:min(132px,80%);
  height:92px;
  object-fit:contain;
  display:block;
  padding:8px;
  border:1px solid #d9e6f7;
  border-radius:16px;
  background:#ffffff;
}

.api-page .api-feature-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.api-page .api-feature-card{
  min-height:220px;
}

.api-page .api-doc-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.api-page .api-code-card pre,
.api-page .api-hero-card pre{
  max-height:260px;
  font-size:.82rem;
  white-space:pre-wrap;
  word-break:break-word;
  background:#102a4c;
}

.api-page .api-table-card,
.api-page .api-steps-card,
.api-page .api-faq{
  background:#ffffff;
}

.api-page .api-section-head{
  display:grid;
  gap:8px;
}

.api-page .api-section-head h2{
  margin:0;
  font-size:1.8rem;
}

.api-page .api-section-head .site-markup{
  color:#5e7390;
}

.api-page .api-section-head .site-markup h2{
  color:#102a4c;
}

.api-page .api-steps{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

@media (max-width: 1100px){
  .api-page .api-hero,
  .api-page .api-feature-grid,
  .api-page .api-doc-grid,
  .api-page .api-steps{
    grid-template-columns:1fr;
  }

  .api-page .api-preview-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 680px){
  .api-page .api-hero{
    padding:22px;
  }

  .api-flow-card{
    grid-template-columns:1fr;
  }

  .api-flow-line{
    width:3px;
    height:28px;
    justify-self:center;
  }

  .api-page .api-preview-strip{
    grid-template-columns:1fr;
  }
}
