/* Launch refinement: preserve the established PAT and TPS visual identities. */
.association-body--with-logo { grid-template-columns: 1fr; gap: 1rem; }
.association-logo { display: grid; place-items: center; min-height: 7rem; background: var(--surface); }
.association-logo img { width: 100%; height: 7.5rem; object-fit: contain; }
.association-body--with-logo h3 { margin: 0; padding-top: 1rem; border-top: 1px solid var(--soft-rule); }
.association-card { box-shadow: none; }
.event-member-section { margin-top: 4rem; padding-top: 3rem; border-top: 1px solid var(--soft-rule); }
.main-nav a, .menu-button, .locale-switch { min-height: 44px; }
.directory-tools input { min-height: 48px; }
.logo-tile-name { text-wrap: balance; }
.site-footer a { text-underline-offset: .25em; }
.site-footer a:hover { text-decoration-thickness: 2px; }
@media (min-width: 1081px) {
  [data-site="tps"] .logo-group--sponsors .logo-list { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .section-bar { flex-wrap: wrap; gap: .75rem; }
  .section-bar > a { display: inline-block; min-height: 44px; padding-block: .5rem; }
  .association-body { grid-template-columns: 1fr; }
  .association-mark { max-width: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
