/* Azure technology page extras, loaded after pages.css */

/* Azure service logo strip under the hero */
.az-services { margin: 80px auto 0; max-width: 1040px; }
.az-services-h { font-family: var(--mono); font-size: 12.5px; color: var(--fg-3); }
.az-logos { list-style: none; margin: 28px 0 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.az-logos li { display: grid; place-items: center; height: 96px; border: 1px solid var(--line); border-radius: 14px; background: rgb(var(--ink) / .02); }
.az-logos img { display: block; width: auto; height: 58px; }

/* six capability cards */
.az-caps { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* two highlight lines under each feature */
.az-points { list-style: none; margin: 22px 0 0; padding: 0; display: grid; gap: 10px; }
.az-points li { position: relative; padding-left: 22px; font-size: 15.5px; line-height: 1.5; color: var(--fg-2); }
.az-points li::before { content: ""; position: absolute; left: 2px; top: .62em; width: 8px; height: 8px; border-radius: 2px; background: var(--accent); box-shadow: 0 0 10px rgba(19,233,137,.6); }
.az-points b { color: var(--fg); font-weight: 600; }

/* integration tiles */
.az-ints { list-style: none; margin: 0 auto; padding: 0; max-width: 560px; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.az-ints li { display: grid; place-items: center; }
.az-ints img { display: block; width: 100%; max-width: 101px; height: auto; border-radius: 10px; background: var(--bg-1); }

/* related articles */
.az-posts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.az-post { display: flex; flex-direction: column; overflow: hidden; padding: 0; }
.az-post img { display: block; width: 100%; height: auto; aspect-ratio: 1024 / 536; object-fit: cover; border-bottom: 1px solid var(--line); }
.az-post-body { flex: 1; display: flex; flex-direction: column; padding: 24px 26px 28px; }
.az-tag { display: block; margin-bottom: 12px; font-family: var(--mono); font-size: 12.5px; color: var(--accent); }
.az-post h3 { font-size: 18px; line-height: 1.3; font-weight: 600; letter-spacing: -0.02em; margin-bottom: 10px; }
.az-post p { flex: 1; font-size: 14.5px; line-height: 1.6; color: var(--fg-2); }
.az-meta { margin-top: 16px; font-family: var(--mono); font-size: 12px; color: var(--fg-3); }
.az-post .link { margin-top: 14px; font-size: 14px; }

/* final CTA */
.final .fine { text-align: center; }
.az-facts b { margin-top: 0; font-size: clamp(32px, 3.4vw, 44px); line-height: 1; font-weight: 600; letter-spacing: -0.04em; color: var(--accent); }
.az-facts span { margin-top: 12px; }

@media (max-width: 1120px) {
  .az-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 960px) {
  .az-caps { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .az-posts { grid-template-columns: minmax(0, 1fr); max-width: 560px; margin: 0 auto; }
}
@media (max-width: 560px) {
  .az-services { margin-top: 56px; }
  .az-logos { gap: 8px; }
  .az-logos li { height: 76px; }
  .az-logos img { height: 46px; }
  .az-caps { grid-template-columns: minmax(0, 1fr); }
  .az-ints { gap: 10px; }
}


/* Light skin: small green text uses --mint (≥4.5:1 on the light surfaces); --accent stays for dots, fills,
   borders and large numbers. Light only, so the dark skin is unchanged. */
:root[data-theme="light"] .az-tag { color: var(--mint); }
