/* Guides under Resources (2026-10-01) use the Blog's pages and blog.css. These rules add
   only what a Blog article does not have: model thumbnails in the comparison table, the
   certificate grid and the FAQ page's accordion. */
.kw-guide-model { display: flex; align-items: center; gap: 14px; min-width: 180px; color: inherit; text-decoration: none !important; }
.kw-guide-model img { flex: none; width: 64px; height: auto; max-height: 64px; object-fit: contain; }
.kw-guide-model span { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: #969b9f; }
.kw-guide-model:is(:hover,:focus-visible) span { color: var(--kj-red, #b5121b); }
.kj-body .kw-guide-certificates { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; margin: 30px 0 0; padding: 0; list-style: none; }
.kj-body .kw-guide-certificates li { margin: 0; padding: 0; }
.kj-body .kw-guide-certificates a { display: block; color: inherit; text-decoration: none !important; }
.kw-guide-certificates img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: contain; background: #f6f7f8; border: 1px solid var(--kj-border, #e3e6e8); border-radius: 5px; }
.kw-guide-certificates span { display: block; margin-top: 8px; font-size: 13px; line-height: 1.4; color: var(--kj-muted, #5f656a); }
.kw-guide-certificates a:is(:hover,:focus-visible) span { color: var(--kj-red, #b5121b); }
.kw-guide .faq-sections { display: grid; gap: 12px; margin-top: 8px; }
.kw-guide .faq-sections__item { border: 1px solid var(--kw-line, #d8dee4); border-radius: 7px; background: #fff; scroll-margin-top: 110px; }
.kw-guide .faq-sections__item:hover, .kw-guide .faq-sections__item.is-open { border-color: var(--kw-red); }
.kw-guide .faq-sections__item h3 { margin: 0; font-size: inherit; }
.kw-guide .faq-sections__item h3 button { display: flex; align-items: center; justify-content: space-between; gap: 22px; width: 100%; min-height: 64px; padding: 16px 20px; border: 0; background: transparent; color: var(--kw-ink); font: inherit; font-size: 18px; font-weight: 600; letter-spacing: normal; line-height: 1.45; text-align: left; cursor: pointer; }
.kw-guide .faq-sections__item h3 button span { text-wrap: pretty; }
.kw-guide .faq-sections__item button svg { flex: 0 0 18px; width: 18px; height: 18px; transition: transform 160ms ease; }
.kw-guide .faq-sections__item.is-open button svg { transform: rotate(180deg); }
.kw-guide .faq-sections__answer-inner { padding: 0 56px 20px 20px; }
.kw-guide .faq-sections__answer p { margin: 0; }
.kw-guide :is(a, button):focus-visible { outline: 2px solid var(--kw-red); outline-offset: 3px; }
@media (max-width: 900px) {
  .kj-body .kw-guide-certificates { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .kj-body .kw-guide-certificates { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .kw-guide .faq-sections__item h3 button { font-size: 17px; padding: 15px 16px; gap: 16px; }
  .kw-guide .faq-sections__answer-inner { padding: 0 16px 18px; }
}
