/* Format guide pages (/formats). */
.fm-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--space-4); padding-bottom: var(--space-8); }
.fm-card { display: flex; flex-direction: column; gap: 8px; padding: var(--space-5); border: 1px solid var(--line-strong); border-radius: var(--r-panel); background: var(--surface); color: var(--ink); text-decoration: none; transition: transform .15s, box-shadow .15s; }
.fm-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-rest); }
.fm-card__name { font-family: var(--font-display); font-size: 1.5rem; text-transform: uppercase; line-height: 1.05; }
.fm-card__what { color: var(--ink-2); font-size: var(--fs-small); }
.fm-card__meta { margin-top: auto; font-size: var(--fs-label); text-transform: uppercase; letter-spacing: .08em; color: var(--ink-3); }
.fm-card--limits { border-style: dashed; }
.fm-structure { max-width: 70ch; color: var(--ink-2); }
.fm-prose { max-width: 760px; padding-bottom: var(--space-8); }
.fm-faq { max-width: 760px; padding-bottom: var(--section-y); }
.fm-faq details { border-top: 1px solid var(--line); padding: 14px 0; }
.fm-faq summary { cursor: pointer; font-weight: 600; }
.fm-faq p { margin-top: 8px; color: var(--ink-2); }
