/* /communities/ — a directory of fifty-four organisations. */

.cm-search{margin-top:8px;max-width:520px}
.cm-search label{display:block;font-size:13px;font-weight:600;
  color:var(--se-text-white);margin-bottom:8px}
.cm-search input{width:100%;box-sizing:border-box;padding:14px 16px;
  font-family:var(--font-secondary);font-size:15px;color:var(--se-text-white);
  background:var(--se-bg);border:1px solid rgba(var(--se-border-teal-rgb),.28);
  border-radius:var(--r-md);outline:none;
  transition:border-color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}
.cm-search input:focus{border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.14)}
.cm-search input::placeholder{color:var(--se-text-caption)}
.cm-count{margin:10px 0 0;font-family:var(--font-mono);font-size:11.5px;
  letter-spacing:.06em;color:var(--se-text-caption)}

/* A card is the whole link, the way the source has it. */
.cm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.cm-card{display:flex;flex-direction:column;gap:10px;min-width:0;
  padding:20px;text-decoration:none;
  background:var(--se-inner);border:1px solid rgba(var(--se-border-teal-rgb),.16);
  border-radius:var(--r-xl);
  transition:transform var(--dur-fast) ease,border-color var(--dur-fast) ease,
             box-shadow .3s var(--ease-settle)}
.cm-card:hover{transform:translateY(-3px);border-color:rgba(var(--accent-rgb),.4);
  box-shadow:0 16px 40px rgba(0,0,0,.28)}
/* The logos arrive at every shape and on every background. A fixed box with
   contain keeps a wall of fifty-four from looking like a ransom note. */
.cm-logo{display:grid;place-items:center;height:56px;margin-bottom:2px}
.cm-logo img{max-width:120px;max-height:56px;width:auto;height:auto;object-fit:contain}
.cm-name{font-size:16px;font-weight:700;color:var(--se-text-white);line-height:1.3}
.cm-blurb{font-size:13.5px;line-height:1.55;color:var(--se-text-dim)}
.cm-out{margin-top:auto;padding-top:8px;font-size:15px;line-height:1;color:var(--accent);
  opacity:.75;transition:transform var(--dur-fast) ease,opacity var(--dur-fast) ease}
.cm-card:hover .cm-out{opacity:1;transform:translate(2px,-2px)}
.cm-none{margin-top:18px;color:var(--se-text-caption);font-size:15px}

@media(max-width:520px){
  .cm-grid{grid-template-columns:1fr}
}
