/* /schools: the hero's live block log. Builds on landing.css and churches.css. */
.log-stage { padding-top: 12px; }
.blocklog {
  position: relative; z-index: 2; width: min(400px, 88vw); background: #fff; color: var(--ink); border-radius: 10px; overflow: hidden;
  box-shadow: 0 0 0 1px rgba(22,33,58,.08), 0 40px 70px -30px rgba(22,33,58,.5);
  animation: log-rise .9s cubic-bezier(.2,.8,.2,1) .15s both;
}
@keyframes log-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
.bl-head { display: flex; align-items: center; gap: 8px; padding: 14px 18px; border-bottom: 1px solid var(--line); font: 600 13px var(--mono); color: var(--ink-2); }
.bl-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--brand); animation: room-pulse 2.4s ease-out infinite; }
.bl-count { margin-left: auto; font-weight: 500; color: var(--ink-3); }
.bl-count b { color: var(--ink); font-variant-numeric: tabular-nums; }
.bl-rows { list-style: none; margin: 0; padding: 0; height: 378px; overflow: hidden; position: relative; }
.bl-rows::after { content: ""; position: absolute; inset: auto 0 0; height: 64px; background: linear-gradient(transparent, #fff); pointer-events: none; }
.bl-rows li { display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto auto; column-gap: 12px; padding: 11px 18px; border-bottom: 1px solid var(--line); }
.bl-rows li.enter { animation: log-in .55s cubic-bezier(.2,.8,.2,1) both; background: linear-gradient(90deg, rgba(30,143,110,.07), transparent 70%); }
@keyframes log-in { from { opacity: 0; transform: translateY(-100%); } to { opacity: 1; transform: none; } }
.lg-site { font: 500 14px var(--mono); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.lg-why { grid-row: 2; font-size: 12.5px; color: var(--ink-3); }
.lg-tag { grid-row: 1 / span 2; grid-column: 2; align-self: center; font: 600 11px var(--mono); text-transform: uppercase; letter-spacing: .08em; color: #b4232c; }
.schools .stats .stat b { font-variant-numeric: tabular-nums; }
@media (max-width: 420px) { .bl-rows { height: 300px; } .bl-count { display: none; } }
@media (prefers-reduced-motion: reduce) { .blocklog, .bl-rows li.enter, .bl-dot { animation: none; } }
