.partners-section { padding-block: clamp(52px, 6vw, 80px); }
.partners-section .sec-head { margin-bottom: 30px; }
.partners-section .sec-head h2 { max-width: none; }
.partners-grid { display: grid; gap: 20px; }
.partner-card {
  display: block;
  min-width: 0;
  padding: 28px;
  --card-accent: var(--it);
  --card-soft: var(--it-soft);
  --card-line: var(--it-line);
}
.partner-card:nth-child(2) { --card-accent: var(--accent); --card-soft: var(--accent-soft); --card-line: var(--accent-line); }
.partner-logo { display: flex; align-items: center; gap: 12px; min-height: 58px; margin-bottom: 22px; }
.partner-logo img { display: block; width: auto; height: 32px; max-width: 100%; object-fit: contain; }
.partner-logo .partner-logo-microsoft { width: 32px; height: 32px; }
.partner-logo .partner-logo-mikrotik { height: 33px; }
.partner-wordmark { font-family: "Segoe UI", var(--font); font-size: 28px; font-weight: 600; letter-spacing: -.04em; }
.partner-logo-monochrome { filter: brightness(0) invert(1); }
[data-theme="light"] .partner-logo-monochrome { filter: none; }
.partner-card p { color: var(--dim); font-size: 15px; padding-right: 30px; }
.partner-arrow { position: absolute; right: 28px; bottom: 26px; color: var(--card-accent); font-size: 21px; transition: transform 180ms ease; }
.partner-card:hover .partner-arrow { transform: translate(2px, -2px); }
.partner-card:focus-visible { outline: 2px solid var(--it); outline-offset: 5px; }

@media (max-width: 1080px) and (min-width: 701px) {
  .partners-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .partner-card { padding: 22px; }
  .partner-wordmark { font-size: 23px; }
  .partner-logo { gap: 8px; }
  .partner-logo img { max-width: 160px; height: 28px; }
  .partner-logo .partner-logo-microsoft { width: 26px; height: 26px; }
}

@media (max-width: 700px) {
  .partners-grid { grid-template-columns: 1fr; gap: 14px; }
  .partner-card { padding: 22px 24px; }
  .partner-logo { min-height: 42px; margin-bottom: 14px; }
  .partner-arrow { right: 24px; bottom: 20px; }
}
