/* BankSearch v8: navigation, progressive guide list and related reading. */
.guides-archive { margin-top: 28px; }
.guides-archive > summary {
  display: flex; align-items: center; justify-content: center; gap: 12px;
  width: fit-content; min-height: 46px; margin: 0 auto; padding: 12px 26px;
  border: 1px solid #cddded; border-radius: 999px; background: #fff;
  color: var(--blue); font-size: .9rem; font-weight: 800; cursor: pointer;
  list-style: none;
}
.guides-archive > summary::-webkit-details-marker { display: none; }
.guides-archive > summary:hover { background: #edf5ff; }
.guides-archive > summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }
.guides-archive > summary svg { width: 18px; height: 18px; }
.guides-archive .guides-collapse-label { display: none; }
.guides-archive[open] .guides-expand-label { display: none; }
.guides-archive[open] .guides-collapse-label { display: inline; }
.guides-archive[open] > summary svg { transform: rotate(180deg); }
.guides-archive > .guides-grid { margin-top: 28px; }
.bs-newsletter-prompt .bs-prompt-availability { margin-top: 10px; color: #52657b; font-size: .75rem; }
.bs-related-guides { margin: 0 0 44px; }
.bs-related-guides > h2 { margin: 0 0 20px; font-size: 1.7rem; letter-spacing: -.035em; }
.bs-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.bs-related-card {
  display: flex; flex-direction: column; gap: 18px; padding: 24px;
  border: 1px solid #dce7f2; border-radius: 20px; background: #f5faff;
}
.bs-related-card h3 { margin: 0; font-size: 1.08rem; line-height: 1.35; }
.bs-related-card a:hover { color: var(--blue); }
.bs-related-card > a { margin-top: auto; color: var(--blue); font-size: .8rem; font-weight: 750; }
.bs-related-card a:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }

@media (max-width: 860px) {
  .main-nav {
    display: grid; grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: stretch; width: 100%; min-width: 0; gap: 4px;
    padding: 5px; border-radius: 20px; overflow: visible;
  }
  .main-nav a {
    display: flex; align-items: center; justify-content: center;
    grid-column: span 2; min-width: 0; min-height: 44px;
    padding: 8px 4px; border-radius: 14px; font-size: .79rem;
    line-height: 1.25; text-align: center; white-space: normal; overflow-wrap: anywhere;
  }
  .main-nav a[href="/regulamin-i-polityki/"] { grid-column: span 4; }
  .main-nav .nav-contact { margin-left: 0; padding-inline: 4px; }
  .bs-related-grid { grid-template-columns: 1fr; }
}
