/* AI-search readiness (feat/aiseo): the "How did you find us?" card and the data guides. Uses the design tokens only. */
.fu { margin-bottom: var(--card-gap); display: flex; flex-direction: column; gap: var(--space-3); border-left: 4px solid var(--color-accent); }
.fu { gap: var(--space-2); }
.fu-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); }
.fu-title { font-size: var(--text-base); margin: 0; }
.fu-lead { margin: 0; }
.fu-x { flex: none; font-weight: 500; color: var(--color-text-muted, inherit); }
.fu-after { display: flex; flex-direction: column; gap: var(--space-2); }
.fu-after[hidden] { display: none; }
.fu textarea { resize: vertical; }
.fu-chips { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.fu-chip { border: 1px solid var(--color-line); background: var(--color-surface); color: var(--color-text); border-radius: var(--radius-full); padding: var(--space-1) var(--space-3); font: inherit; font-size: var(--text-sm); cursor: pointer; min-height: 36px; letter-spacing: normal; word-spacing: 0.08em; }
.fu-chip:hover { border-color: var(--color-accent); }
.fu-chip[aria-checked="true"] { background: var(--color-primary); border-color: var(--color-primary); color: var(--color-accent-text); }
.fu-chips-small .fu-chip { min-height: 36px; padding: var(--space-1) var(--space-3); }
.fu-more { display: flex; flex-direction: column; gap: var(--space-2); }
.fu-more[hidden] { display: none; }
.fu-label { margin: 0; font-weight: 600; font-size: var(--text-sm); }
.fu-actions { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.fu-status { margin: 0; }
.fu .field { margin: 0; }

.guide .guide-dates { margin-top: var(--space-2); }
.guide-sec { margin: var(--space-6) 0; }
.guide-sec > p, .guide-prose p, .guide-prose li { max-width: 72ch; }
.guide-table td strong { font-variant-numeric: tabular-nums; }
.guide-table td { font-variant-numeric: tabular-nums; }
.guide-list { padding-left: 1.25rem; display: flex; flex-direction: column; gap: var(--space-2); max-width: 72ch; }
.guide-list .src, .guide-step .src { font-size: var(--text-sm); white-space: normal; }
.guide-method { margin: var(--space-6) 0; }
.guide-method p { max-width: 72ch; }
.guide-steps { list-style: none; padding: 0; margin: var(--space-5) 0; display: flex; flex-direction: column; gap: var(--card-gap); }
.guide-step h2 { font-size: var(--text-lg); display: flex; align-items: center; gap: var(--space-2); margin-top: 0; }
.step-n { display: inline-grid; place-items: center; width: 2rem; height: 2rem; border-radius: var(--radius-full); background: var(--color-primary); color: var(--color-accent-text); font-size: var(--text-sm); flex: none; }
.guide-cards { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: var(--card-gap); margin: var(--space-5) 0; }
.guide-cards h2 { font-size: var(--text-lg); margin-top: 0; }
.guide-cta { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: baseline; margin: var(--space-5) 0; }

.guide-table { table-layout: fixed; width: 100%; }
.guide-sec .table-wrap { max-width: 920px; }
.guide-table .gc-label { width: 40%; } .guide-table .gc-num { width: 18%; } .guide-table .gc-range { width: 28%; } .guide-table .gc-n { width: 14%; }
.guide-table .num { text-align: right; }
.guide-sec > p { margin: 0 0 var(--space-3); }
.guide-sec .table-wrap { margin-bottom: var(--space-4); }
.guide-sec .mini-title { margin: var(--space-5) 0 var(--space-2); font-size: var(--text-lg); }
.guide-sec + .guide-sec { border-top: 1px solid var(--color-line); padding-top: var(--space-6); }
.nowrap-link { white-space: nowrap; }
@media (max-width: 640px) {
  .guide-table { table-layout: auto; }
  .guide-table .num { text-align: left; }
}
.fu-chip[aria-checked="true"]::before { content: "\2713\00a0"; }
.fu-chip { border-color: var(--color-text-muted); }
.guide-cta-row { margin-top: var(--space-5); }
.src { font-size: var(--text-sm); color: var(--color-text-muted); }
.src a { color: inherit; }
.guide-method p + p { margin-top: var(--space-3); }
