/* TLA Partner Hub public design foundation — v1.0.303.
 * One palette and one compact row component across sector, related-profile
 * and directory discovery. Deliberately no !important declarations.
 * All rules are public-only; the private partner workspace stays light.
 * The main legacy front-end stack is not removed in this first migration.
 */
body.tla-ph-public-dark-page {
  --tph-canvas: #050d20;
  --tph-surface: #0d2040;
  --tph-surface-raised: #13294a;
  --tph-border: #335679;
  --tph-title: #f5f9ff;
  --tph-text: #e4f0ff;
  --tph-muted: #bad0e9;
  --tph-cyan: #65d7ff;
  --tph-gold: #e4b55f;
  --tph-radius: 16px;
  --tph-space-1: 8px;
  --tph-space-2: 12px;
  --tph-space-3: 16px;
  --tph-space-4: 22px;
  --tph-space-5: 32px;
}
/* Scope to the component, never style unrelated account pages. */
.tla-ph-partner-row {
  --tph-row-sector: var(--tla-sector-color, #0a90f6);
  display: block;
  box-sizing: border-box;
  min-width: 0;
  align-self: start;
  color: #eaf4ff;
  background: #0e213d;
  border: 1px solid #335679;
  border-radius: 16px;
  box-shadow: none;
  overflow: hidden;
}
.tla-ph-partner-row.is-trusted { border-color: #4686aa; }
.tla-ph-partner-row.is-verified { border-color: #355e84; }
.tla-ph-partner-row:focus-within { border-color: #73d9ff; }
.tla-ph-partner-row .tla-ph-partner-row-summary {
  box-sizing: border-box;
  min-height: 92px;
  list-style: none;
  cursor: pointer;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 44px auto;
  gap: 12px;
  align-items: center;
  padding: 11px 14px;
  background: transparent;
  border: 0;
  color: #f5f9ff;
}
.tla-ph-partner-row .tla-ph-partner-row-summary::-webkit-details-marker { display: none; }
.tla-ph-partner-row .tla-ph-partner-row-summary:hover { background: #173050; }
.tla-ph-partner-row .tla-ph-partner-row-summary:focus-visible { outline: 3px solid #80dcff; outline-offset: -4px; }
.tla-ph-partner-row .tla-ph-partner-row-logo {
  display: grid;
  place-items: center;
  width: 72px;
  height: 68px;
  box-sizing: border-box;
  padding: 6px;
  border-radius: 12px;
  background: white;
  color: #124f9b;
}
.tla-ph-partner-row .tla-ph-partner-row-logo img { display:block; width:100%; height:100%; object-fit:contain; }
.tla-ph-partner-row .tla-ph-partner-row-logo span { font-size: 18px; font-weight: 800; }
.tla-ph-partner-row .tla-ph-partner-row-identity { display:flex; min-width:0; flex-direction:column; gap:4px; }
.tla-ph-partner-row .tla-ph-partner-row-name {
  color: #f7faff;
  font-size: clamp(16px, 1.5vw, 20px);
  font-weight: 800;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.tla-ph-partner-row .tla-ph-partner-row-location { color:#bdd2eb; font-size:12px; line-height:1.3; overflow-wrap:anywhere; }
.tla-ph-partner-row .tla-ph-partner-row-sector {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  box-sizing: border-box;
  border-radius: 12px;
  border: 1px solid var(--tph-row-sector);
  background: color-mix(in srgb, var(--tph-row-sector) 13%, #0c1f3d);
  color: var(--tph-row-sector);
}
.tla-ph-partner-row .tla-ph-partner-row-sector :is(svg,.tla-ph-sector-glyph) { display:block; width:25px; height:25px; }
.tla-ph-partner-row .tla-ph-partner-row-toggle { display:flex; align-items:center; gap:8px; font-weight:750; color:#87dfff; }
.tla-ph-partner-row .tla-ph-partner-row-toggle-label { font-size:12px; }
.tla-ph-partner-row .tla-ph-partner-row-plus { display:grid; place-items:center; width:33px; height:33px; border:1px solid #35688c; border-radius:50%; font-size:22px; line-height:1; transition:transform .2s; }
.tla-ph-partner-row[open] .tla-ph-partner-row-plus { transform: rotate(45deg); }
.tla-ph-partner-row .tla-ph-partner-row-body {
  border-top: 1px solid #2d5073;
  padding: 14px 18px 16px;
  background: #0b1a33;
  display: flex;
  gap: 12px;
  flex-direction:column;
}
.tla-ph-partner-row .tla-ph-partner-row-status { margin:0; font-size:11px; font-weight:800; letter-spacing:.025em; text-transform:uppercase; color:#91d9ff; }
.tla-ph-partner-row.is-trusted .tla-ph-partner-row-status { color:#7de8f5; }
.tla-ph-partner-row .tla-ph-partner-row-description { margin:0; color:#cfdef2; font-size:13px; line-height:1.55; overflow-wrap:anywhere; }
.tla-ph-partner-row .tla-ph-partner-row-services { display:flex; flex-wrap:wrap; gap:7px; }
.tla-ph-partner-row .tla-ph-partner-row-services span { border:1px solid #335e87; color:#d7ecff; background:#163354; border-radius:30px; padding:6px 9px; font-size:11px; }
.tla-ph-partner-row .tla-ph-partner-row-actions { display:flex; align-items:center; justify-content:flex-end; gap:9px; flex-wrap:wrap; }
.tla-ph-partner-row .tla-ph-partner-row-actions a { box-sizing:border-box; text-decoration:none; font-size:12px; font-weight:800; border-radius:10px; padding:10px 13px; min-height:40px; display:inline-flex; align-items:center; gap:8px; }
.tla-ph-partner-row .tla-ph-partner-row-link { background:#127bd0; color:#fff; border:1px solid #3999e4; }
.tla-ph-partner-row .tla-ph-partner-row-claim { background:#183757; color:#eaf8ff; border:1px solid #4e7194; }
.tla-ph-partner-row .tla-ph-partner-row-actions a:hover { filter:brightness(1.15); }
.tla-ph-partner-row .tla-ph-partner-row-actions a:focus-visible { outline:3px solid #8de2ff; outline-offset:3px; }
/* Compact results display in a stable two-column grid. A Nationwide card is
   deliberately unaffected and retains its larger premium presentation. */
body.tla-ph-public-dark-page .tla-ph-related-partner-grid.is-other-row,
body.tla-ph-public-dark-page .tla-ph-sector-refresh-302 .tla-ph-s302-tier-grid,
body.tla-ph-public-dark-page .tla-ph-sector-refresh-302 .tla-ph-s302-tier.is-business .tla-ph-s302-tier-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  align-items: start;
  gap: 12px;
}
@media (max-width:760px) {
  body.tla-ph-public-dark-page .tla-ph-related-partner-grid.is-other-row,
  body.tla-ph-public-dark-page .tla-ph-sector-refresh-302 .tla-ph-s302-tier-grid,
  body.tla-ph-public-dark-page .tla-ph-sector-refresh-302 .tla-ph-s302-tier.is-business .tla-ph-s302-tier-grid { grid-template-columns: minmax(0,1fr); }
}
@media (max-width:500px) {
  .tla-ph-partner-row .tla-ph-partner-row-summary { grid-template-columns: 56px minmax(0,1fr) 33px; gap: 9px; min-height: 78px; padding:10px; }
  .tla-ph-partner-row .tla-ph-partner-row-logo { width:56px; height:56px; }
  .tla-ph-partner-row .tla-ph-partner-row-sector { display:none; }
  .tla-ph-partner-row .tla-ph-partner-row-toggle-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; padding:0; border:0; }
  .tla-ph-partner-row .tla-ph-partner-row-plus { width:32px; height:32px; }
  .tla-ph-partner-row .tla-ph-partner-row-name { font-size:16px; }
  .tla-ph-partner-row .tla-ph-partner-row-body { padding:12px; }
}
@media (prefers-reduced-motion: reduce) {
  .tla-ph-partner-row .tla-ph-partner-row-plus { transition:none; }
}

/* v1.0.306: staff-only explanation on a hidden profile page. */
.tla-ph-staff-hidden-note{margin-top:18px;padding:16px 18px;border:1px dashed rgba(23,178,226,.55);border-radius:14px;background:rgba(23,178,226,.07);text-align:left}
.tla-ph-staff-hidden-note ul{margin:8px 0 14px 18px;padding:0}
.tla-ph-staff-hidden-note li{margin:4px 0;line-height:1.5}
.tla-ph-staff-hidden-note p{display:flex;flex-wrap:wrap;gap:8px;margin:0}
