/* Aurochs Online home page (section 09). Only kit tokens (var(--au-...)): no typed colors. */
.home-main { padding-top: var(--au-space-5); padding-bottom: var(--au-space-5); }
.home-skip { position: absolute; left: var(--au-space-2); top: -10rem; z-index: var(--au-z-toast); padding: var(--au-space-2) var(--au-space-4);
  min-height: var(--au-touch); display: inline-flex; align-items: center;
  background: var(--au-primary); color: var(--au-primary-fg); }
.home-skip:focus { top: var(--au-space-2); }

.home-hero h1 { font-size: var(--au-text-3xl); line-height: 1.15; margin: 0 0 var(--au-space-3); }
.home-lead { font-size: var(--au-text-lg); max-width: 46rem; margin: 0; }
.home-section { margin-top: var(--au-space-7); }
.home-section > h2 { font-size: var(--au-text-2xl); margin: 0 0 var(--au-space-4); padding-bottom: var(--au-space-2);
  border-bottom: var(--au-border-width) solid var(--au-border); }

/* ---------- Picker: search + category chips ---------- */
.home-tools { display: flex; flex-wrap: wrap; gap: var(--au-space-4); align-items: flex-end; margin-bottom: var(--au-space-4); }
.home-search { flex: 1 1 16rem; max-width: 28rem; }
.home-search .au-label { display: block; margin-bottom: var(--au-space-1); }
.home-filters { flex: 2 1 18rem; }
.home-filters[hidden] { display: none; }
.home-filters .au-label { display: block; margin-bottom: var(--au-space-1); }
.home-chips { display: flex; flex-wrap: wrap; gap: var(--au-space-2); }
.home-chip { min-height: var(--au-touch); padding: var(--au-space-2) var(--au-space-4); font: inherit; font-weight: var(--au-weight-semibold);
  color: var(--au-fg); background: var(--au-secondary); border: var(--au-border-width) solid var(--au-border); border-radius: var(--au-radius); cursor: pointer; }
.home-chip[aria-pressed="true"] { background: var(--au-primary); color: var(--au-primary-fg); }
.home-count { margin: 0 0 var(--au-space-3); font-size: var(--au-text-sm); }

/* ---------- App cards ---------- */
.home-cards, .home-services { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--au-space-4);
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr)); }
.home-cards > li { display: flex; }
.home-card { display: flex; flex-direction: column; gap: var(--au-space-3); width: 100%; }
.home-card__head { display: flex; align-items: center; gap: var(--au-space-3); }
.home-card__title { margin: 0; overflow-wrap: anywhere; }
.home-card__icon { flex: none; display: inline-flex; align-items: center; justify-content: center; width: var(--au-touch-lg); height: var(--au-touch-lg);
  background: var(--au-ok-bg); color: var(--au-ok-text); border: var(--au-border-width) solid var(--au-border); }
.home-icon { width: 60%; height: 60%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.home-card__purpose { margin: 0; flex: 1 1 auto; }
.home-card__note { margin: 0; }
.home-tags { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--au-space-2); }
.home-tag { font-size: var(--au-text-sm); font-weight: var(--au-weight-semibold); padding: var(--au-space-1) var(--au-space-2);
  background: var(--au-surface-2); border: var(--au-border-width-thin) solid var(--au-border-soft); }
.home-tag--ok { background: var(--au-ok-bg); color: var(--au-ok-text); }
.home-tag--net { background: var(--au-info-bg); color: var(--au-info-text); }
.home-card__foot { display: flex; align-items: center; justify-content: space-between; gap: var(--au-space-3); flex-wrap: wrap; margin-top: auto; }
a.home-card:hover .home-card__open { background: var(--au-primary-hover); }

/* ---------- Who we are ---------- */
.home-about__grid { display: grid; gap: var(--au-space-5); grid-template-columns: minmax(0, 15rem) minmax(0, 1fr); align-items: start; }
.home-photo { margin: 0; }
.home-photo img { display: block; width: 100%; height: auto; border: var(--au-border-width) solid var(--au-border); box-shadow: var(--au-shadow); }
.home-photo figcaption { margin-top: var(--au-space-2); font-size: var(--au-text-sm); color: var(--au-muted-fg); }
.home-quote { margin: 0; padding: var(--au-space-3) var(--au-space-4); border-inline-start: var(--au-space-1) solid var(--au-primary);
  background: var(--au-surface-2); font-size: var(--au-text-lg); font-weight: var(--au-weight-semibold); }
.home-quote p { margin: 0; }
.home-about p { margin-top: 0; }

/* ---------- Services and contact ---------- */
.home-services p { margin: 0; }
.home-contact__list { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: var(--au-space-3) var(--au-space-5); margin: 0; }
.home-contact__list dt { font-weight: var(--au-weight-bold); }
.home-contact__list dd { margin: 0; overflow-wrap: anywhere; }
.home-contact a, .home-section a:not(.au-card) { color: var(--au-link); }

/* ---------- Draft legal pages ---------- */
.legal { max-width: 50rem; }
.legal h1 { font-size: var(--au-text-2xl); }
.legal h2 { font-size: var(--au-text-xl); margin-top: var(--au-space-6); }
.legal h3 { font-size: var(--au-text-lg); margin-top: var(--au-space-5); }
.legal .au-table-wrap { margin: var(--au-space-3) 0; }

/* ---------- Phones ---------- */
@media (max-width: 40rem) {
  .home-hero h1 { font-size: var(--au-text-2xl); }
  .home-about__grid { grid-template-columns: minmax(0, 1fr); }
  .home-photo { max-width: 12rem; }
  .home-contact__list { grid-template-columns: minmax(0, 1fr); gap: var(--au-space-1); }
  .home-contact__list dd { margin-bottom: var(--au-space-3); }
  .au-header__title { display: none; }
}
.home-services + p { margin-top: var(--au-space-4); }
