/* Search workspace and shared result cards. */
.search-page > .search-page__section { padding: 40px 0 64px; background: #fff; }
/* The entrance animation creates a stacking context; keep it above the footer. */
.search-workspace { position: relative; z-index: 2; max-width: 1040px; margin: 0 auto; }
.search-workspace__intro { margin-bottom: 20px; }
.search-workspace__intro h2 { margin: 0 0 10px; font-size: 24px; font-weight: 700; line-height: 1.35; letter-spacing: -0.02em; }
.search-workspace__intro p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.search-page .search-results-form { z-index: 3; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; margin: 0; padding: 0; border: 0; border-radius: 0; }
.search-page .search-results-form .search-line { min-width: 0; }
.search-page .search-results-form .search-line input { height: 48px; font-size: 16px; font-weight: 500; }
.search-page .search-results-form > button { min-height: 44px; gap: 16px; padding: 0 20px; border-color: var(--brand-logo-blue); background: var(--brand-logo-blue); font-size: 13px; font-weight: 650; text-transform: none; }
.search-page .search-results-form > button:hover { background: var(--brand-dark); }
.search-page .search-results-form > button iconify-icon { font-size: 16px; }
.search-page .search-results-form .search-suggestions { width: 100%; }
.search-type-nav { display: flex; align-items: center; gap: 24px; margin: 24px 0 28px; border-bottom: 1px solid var(--line); overflow-x: auto; scrollbar-width: thin; }
.search-type-link { display: inline-flex; flex: 0 0 auto; align-items: center; min-height: 44px; border-bottom: 2px solid transparent; color: var(--muted); font-size: 12px; font-weight: 500; }
.search-type-link.is-active { border-bottom-color: var(--brand-logo-blue); color: var(--brand-logo-blue); font-weight: 700; }
.search-type-link:hover { color: var(--brand-logo-blue); }
.search-results-toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 14px 24px; margin-bottom: 20px; }
.search-results-toolbar h2 { flex: 1 1 300px; min-width: 0; margin: 0; font-size: 18px; font-weight: 700; line-height: 1.5; overflow-wrap: anywhere; }
.search-results-toolbar h2 span { font-weight: 500; }
.search-results-toolbar__controls { display: flex; align-items: center; gap: 20px; }
.search-results-toolbar .toolbar-count,
.search-results-toolbar .page-size { gap: 6px; color: var(--muted); font-size: 11px; font-weight: 500; }
.search-page .search-results-list { gap: 14px; }
.search-page .search-result-card { grid-template-columns: 88px minmax(0, 1fr) 78px; gap: 20px; min-height: 112px; padding: 20px; border: 1px solid var(--line); border-radius: 6px; box-shadow: none; }
.search-page .search-result-card:hover { border-color: #b2bdd2; box-shadow: none; transform: none; }
.search-page .search-result-card__media { width: 88px; height: 72px; border: 0; border-radius: 0; background: #fff; }
.search-page .search-result-card__media img { padding: 0; object-position: center; }
.search-page .search-result-card--editorial .search-result-card__media { border-radius: 4px; }
.search-page .search-result-card__meta { flex-wrap: wrap; gap: 6px 14px; margin-bottom: 8px; }
.search-page .search-result-card__meta > span { min-height: 0; padding: 0; border: 0; background: transparent; color: var(--brand-logo-blue); font-size: 11px; font-weight: 600; line-height: 1.5; letter-spacing: 0; text-transform: none; }
.search-page .search-result-card__meta time,
.search-page .search-result-card__meta .search-result-card__company { color: var(--muted); font-size: 11px; font-weight: 400; white-space: normal; overflow-wrap: anywhere; }
.search-page .search-result-card h2 { display: block; overflow: visible; font-size: 16px; font-weight: 700; line-height: 1.5; letter-spacing: -0.01em; overflow-wrap: anywhere; -webkit-line-clamp: unset; }
.search-page .search-result-card__summary { margin-top: 8px; font-size: 12px; line-height: 1.65; }
.search-page .search-result-card__action { justify-content: flex-start; gap: 6px; min-height: 40px; padding: 0; border: 0; color: var(--brand-logo-blue); font-size: 12px; font-weight: 650; letter-spacing: 0; text-transform: none; transition: color 180ms ease; }
.search-page .search-result-card__action svg { width: 16px; height: 16px; transition: transform 180ms ease; }
.search-page .search-result-card:hover .search-result-card__action { color: var(--brand-dark); }
.search-page .search-result-card:hover .search-result-card__action svg { transform: translateX(3px); }
.search-empty { padding: 32px; border: 1px solid var(--line); border-radius: 6px; }
.search-empty__icon { color: var(--muted); font-size: 24px; }
.search-empty h3 { margin: 16px 0 8px; font-size: 18px; font-weight: 700; }
.search-empty p,
.search-start > p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.search-empty__reset { display: inline-flex; align-items: center; gap: 12px; margin-top: 16px; min-height: 36px; color: var(--brand-logo-blue); font-size: 12px; font-weight: 650; }
.search-page .search-page-suggestion { margin: 20px 0; max-width: 520px; }
.search-page .search-page-suggestion[hidden] { display: none; }
.search-page .search-page-suggestion a { display: grid; grid-template-columns: 34px minmax(0, 1fr) 16px; align-items: center; gap: 14px; padding: 20px; border: 1px solid var(--line); border-radius: 6px; background: #fff; text-decoration: none; }
.search-page .search-page-suggestion a:hover { border-color: #c8cfdf; background: #f8f9fb; }
.search-page .search-page-suggestion a:focus-visible { outline: 2px solid var(--brand-logo-blue); outline-offset: 3px; }
.search-page-suggestion__label { display: block; color: var(--muted); font-size: 12px; font-weight: 500; line-height: 1.5; }
.search-page-suggestion__word { display: block; margin: 4px 0 6px; color: var(--brand-logo-blue); font-size: 21px; font-weight: 700; line-height: 1.35; overflow-wrap: anywhere; }
.search-page .search-suggestions { min-width: 0; }

.search-start { padding-top: 4px; }
.search-start h3 { margin: 28px 0 16px; font-size: 15px; font-weight: 700; }
.search-shortcuts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.search-shortcuts a { display: flex; align-items: center; gap: 12px; min-height: 68px; padding: 18px; border: 1px solid var(--line); border-radius: 6px; color: var(--brand-logo-blue); font-size: 13px; font-weight: 650; }
.search-shortcuts a:hover { border-color: #b2bdd2; }
.search-shortcuts iconify-icon { font-size: 18px; }
.search-shortcuts iconify-icon:last-child { margin-left: auto; font-size: 16px; }
.search-page a:focus-visible,
.search-page button:focus-visible { outline: 2px solid var(--brand-logo-blue); outline-offset: -2px; }
@media (max-width: 640px) {
  .search-page > .search-page__section { padding-top: 24px; }
  .search-workspace__intro h2 { font-size: 22px; }
  .search-page .search-results-form { gap: 12px; }
  .search-page .search-results-form > button { padding: 0 14px; gap: 10px; }
  .search-type-nav { gap: 22px; margin-top: 20px; margin-bottom: 24px; }
  .search-results-toolbar h2 { font-size: 16px; }
  .search-results-toolbar__controls { width: 100%; justify-content: space-between; }
  .search-page .search-result-card { grid-template-columns: 64px minmax(0, 1fr); align-items: start; gap: 14px; padding: 18px; }
  .search-page .search-result-card__media { width: 64px; height: 56px; }
  .search-page .search-result-card h2 { font-size: 15px; }
  .search-page .search-result-card__action { grid-column: 2; min-height: 36px; padding-top: 10px; border-top: 1px solid var(--line); }
  .search-empty { padding: 24px; }
  .search-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .search-shortcuts a { gap: 8px; padding: 14px; font-size: 12px; }
}
