.broker-shell {
  margin: 0;
  color: #1a1a1a;
  background: #fafafa;
  font: 16px/1.55 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
}
.broker-shell * { box-sizing: border-box; }
.broker-shell a { color: #057a92; text-underline-offset: 3px; }
.broker-shell :focus-visible { outline: 3px solid #0692af; outline-offset: 4px; }
.broker-header { background: white; border-bottom: 1px solid #e5e5e5; }
.broker-header__inner { max-width: 1040px; margin: auto; padding: 20px 28px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.broker-logo { width: 165px; height: auto; }
.broker-account { display: flex; align-items: center; gap: 16px; font-size: .875rem; overflow-wrap: anywhere; }
.broker-account form { flex-shrink: 0; }
.broker-link-button { border: 0; padding: 0; color: #057a92; background: transparent; text-decoration: underline; font: inherit; cursor: pointer; }
.broker-main { max-width: 880px; min-height: 65vh; margin: auto; padding: 48px 28px; }
.broker-eyebrow { color: #057a92; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; }
.broker-main h1 { margin: 8px 0 16px; font-size: 2.25rem; line-height: 1.15; color: #002b38; }
.broker-main h2 { margin: 0 0 16px; font-size: 1.25rem; color: #002b38; }
.broker-intro { color: #5c5c5c; margin-bottom: 28px; }
.broker-card { background: white; border: 1px solid #e5e5e5; border-radius: 8px; padding: 28px; margin: 24px 0; }
.broker-target { color: #002b38; font-size: 1.125rem; font-weight: 700; overflow-wrap: anywhere; }
.broker-field { display: block; margin: 24px 0; }
.broker-field > label { display: block; font-weight: 600; margin-bottom: 8px; }
.broker-field input, .broker-field textarea { display: block; width: 100%; padding: 12px; border: 1px solid #8a8a8a; border-radius: 4px; font: inherit; color: inherit; background: white; }
.broker-field textarea { resize: vertical; }
.broker-hint { color: #5c5c5c; font-size: .875rem; margin: 8px 0 0; }
.broker-button { display: inline-block; padding: 14px 24px; border: 0; border-radius: 4px; background: #002b38; color: white; font: inherit; font-weight: 600; cursor: pointer; }
.broker-button:hover { background: #057a92; }
.broker-button--secondary { border: 1px solid #8a8a8a; background: white; color: #002b38; }
.broker-button--secondary:hover { background: #e6edf0; }
.broker-flash { padding: 16px 20px; background: #e6f4f7; border-left: 4px solid #057a92; }
.broker-flash--error { color: #9b1c1c; background: #fff1f1; border-color: #9b1c1c; }
.broker-list { list-style: none; padding: 0; }
.broker-list > li { padding: 20px 0; border-top: 1px solid #e5e5e5; }
.broker-list p { margin: 6px 0; overflow-wrap: anywhere; }
.broker-reason { white-space: pre-wrap; }
.broker-list details { margin-top: 12px; }
.broker-list summary { color: #057a92; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.broker-footer { padding: 24px; text-align: center; font-size: .75rem; color: #5c5c5c; border-top: 1px solid #e5e5e5; }
.broker-sign-in { max-width: 460px; margin: 0 auto; }
.broker-sign-in .broker-button { width: 100%; }
@media (max-width: 600px) {
  .broker-header__inner { padding: 16px 20px; flex-wrap: wrap; }
  .broker-account { width: 100%; justify-content: space-between; }
  .broker-logo { width: 145px; }
  .broker-main { padding: 32px 20px; }
  .broker-main h1 { font-size: 1.875rem; }
  .broker-card { padding: 20px; }
}
