/* Homepage focus layer. Loaded after shared chrome styles; scoped to the home dashboard. */
.home-dash {
  --home-ink: #17283c;
  --home-muted: #526579;
  --home-slate: #526579;
  --home-line: #dce5ee;
  --home-line-soft: #e9eef4;
  --home-shadow: none;
  --home-shadow-hover: 0 14px 28px -24px rgba(20, 39, 60, .32);
  --poa-module-title-color: #ff9900;
  gap: 18px;
}

.home-dash > .home-spotlight { margin-top: 34px; }
.home-dash > .dashboard-grid.home-columns:not(.dashboard-grid-lower) { margin-top: 28px; }

.home-dash .home-hero,
.home-dash .home-platform-strip,
.home-dash .home-tool-entry,
.home-dash .home-stats article,
.home-dash .home-stats .metric-note,
.home-dash .home-spotlight,
.home-dash .home-flow-panel,
.home-dash .dashboard-panel,
.home-dash .matrix-panel {
  border-color: var(--home-line);
  box-shadow: none;
}

/* The opening panel states the page's job; the photo and proof remain supporting material. */
.home-dash .home-hero {
  grid-template-columns: minmax(0, 1.38fr) minmax(0, .62fr);
  gap: 28px;
  min-height: 308px;
  padding: 32px 34px;
  border: 1px solid #243b53;
  border-radius: 18px;
  background: linear-gradient(135deg, #1d3149, #132238 76%);
  color: #fff;
  box-shadow: 0 16px 30px -26px rgba(19, 34, 56, .55);
}

.home-dash .home-hero .home-kicker {
  color: #f9bd75;
  letter-spacing: .14em;
}
.home-dash .home-hero .home-kicker-line { background: #f9bd75; }
.home-dash .home-hero h1 {
  color: #fff;
  font-size: clamp(30px, 2.8vw, 40px);
  font-weight: 800;
  letter-spacing: -.025em;
  text-shadow: none;
}
.home-dash .home-hero-lead {
  max-width: 590px;
  color: #dce6f0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.75;
}
.home-dash .home-hero-actions { margin-top: 24px; }
.home-dash .primary-action.dash-cta,
.home-dash .primary-action.dash-cta:hover {
  height: 46px;
  padding: 0 21px;
  border-color: #ffb65f;
  border-radius: 9px;
  background: #ffa33d;
  color: #fff;
  text-shadow: none;
  box-shadow: none;
  filter: none;
}
.home-dash .primary-action.dash-cta:hover { background: #ffb65f; transform: translateY(-1px); }
.home-dash .primary-action.dash-cta::before { display: none; }
.home-dash .home-ghost-action { color: #dce6f0; font-size: 13px; }
.home-dash .home-ghost-action:hover { color: #fff; }
.home-dash .home-hero-proof {
  gap: 12px 28px;
  margin-top: 26px;
  padding-top: 17px;
  border-top-color: rgba(220, 232, 244, .18);
}
.home-dash .home-hero-proof strong,
.home-dash .home-hero-proof strong span {
  color: #fff;
  font-size: 19px;
}
.home-dash .home-hero-proof strong span { font-size: 14px; }
.home-dash .home-hero-proof small { color: #bdcbd9; font-size: 11px; }
.home-dash .home-hero-visual {
  min-height: 230px;
  max-height: 270px;
  border-radius: 11px;
  background: #17283c;
}
.home-dash .home-hero-visual img {
  object-position: center;
  filter: saturate(.76) contrast(.94);
}
.home-dash .home-hero-visual::after { height: 35%; }
.home-dash .home-hero-visual figcaption { left: 14px; right: 14px; bottom: 12px; }
.home-dash .home-hero-badge {
  width: 32px;
  height: 32px;
  flex-basis: 32px;
  border-radius: 8px;
  background: #ffa33d;
}

/* Platforms and knowledge counts sit below the two decisions. */
.home-dash .home-platform-strip {
  gap: 12px 18px;
  padding: 10px 20px;
  background: #f8fafc;
}
.home-dash .home-platform-label {
  padding-right: 18px;
  color: #31465e;
  letter-spacing: .03em;
}
.home-dash .home-platform-label::before { display: none; }
.home-dash .home-platform-list { justify-content: flex-start; gap: 6px 18px; }
.home-dash .home-platform-list li,
.home-dash .home-platform-list li:hover {
  min-height: 28px;
  padding: 3px 9px;
  border: 1px solid #e0e7ef;
  background: #fff;
  color: #40566c;
  font-size: 12px;
  font-weight: 600;
  box-shadow: none;
  transform: none;
}
.home-dash .home-platform-list li::before { width: 5px; height: 5px; }

.home-dash .home-tool-entries {
  grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
  gap: 16px;
}
.home-dash .home-tool-entry {
  gap: 18px;
  min-height: 180px;
  padding: 20px 24px;
  border-left: 3px solid #a7b8c9;
  background: #fff;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.home-dash .home-tool-entry.risk-entry {
  border-left: 4px solid #ffa33d;
  background: #fffdfa;
}
.home-dash .home-tool-entry:hover {
  border-color: #aebdcb;
  box-shadow: var(--home-shadow-hover);
  transform: translateY(-1px);
}
.home-dash .home-tool-entry.risk-entry:hover { border-left-color: #ffa33d; }
.home-dash .home-tool-copy small,
.home-dash .ip-entry .home-tool-copy small { color: #65788a; letter-spacing: .12em; }
.home-dash .home-tool-copy strong { margin-top: 8px; font-size: var(--poa-card-title-size); }
.home-dash .risk-entry .home-tool-copy strong { font-size: var(--poa-card-title-size); }
.home-dash .home-tool-copy em { margin-top: 6px; color: var(--home-muted); font-size: 12px; }
.home-dash .home-tool-action,
.home-dash .ip-entry .home-tool-action,
.home-dash .home-tool-action:hover,
.home-dash .ip-entry .home-tool-action:hover {
  height: 36px;
  min-height: 36px;
  margin-top: 13px;
  padding: 0 14px;
  border: 1px solid #d1dce7;
  border-radius: 8px;
  background: #edf3f8;
  color: #2c435a;
  text-shadow: none;
  box-shadow: none;
  filter: none;
  transform: none;
}
.home-dash .risk-entry .home-tool-action,
.home-dash .risk-entry .home-tool-action:hover {
  border-color: #ffa33d;
  background: #ffa33d;
  color: #fff;
}
.home-dash .home-tool-action::before { display: none; }
.home-dash .home-tool-thumb {
  flex-basis: clamp(160px, 31%, 220px);
  max-width: 220px;
  aspect-ratio: 16 / 10;
  border: 0;
  border-radius: 9px;
  box-shadow: none;
}
.home-dash .home-tool-thumb img { filter: saturate(.78); }

.home-dash .home-stats { gap: 12px; }
.home-dash .home-stats article,
.home-dash .home-stats .metric-note {
  gap: 10px;
  min-height: 88px;
  padding: 14px 18px;
  background: #f8fafc;
  box-shadow: none;
}
.home-dash .home-stats .metric-note,
.home-dash .home-stats .metric-note:hover {
  border-color: var(--home-line);
  background: #f2f6fa;
  box-shadow: none;
  transform: none;
}
.home-dash .home-stats .dash-stat-icon {
  width: 38px;
  height: 38px;
  flex-basis: 38px;
  border-radius: 10px;
  box-shadow: none;
}
.home-dash .home-stats .dash-stat-icon.orange,
.home-dash .home-stats .dash-stat-icon.blue,
.home-dash .home-stats .dash-stat-icon.green,
.home-dash .home-stats .dash-stat-icon.amber {
  color: #405b75;
  background: #e9f0f7;
  box-shadow: none;
}
.home-dash .home-stats .dash-stat-icon svg { width: 20px; height: 20px; }
.home-dash .home-stats strong { margin-top: 5px; color: #23384e; font-size: 21px; }
.home-dash .home-stats .metric-note strong { font-size: 14px; }
.home-dash .home-stats small { margin-top: 4px; color: #526579; }
.home-dash .home-stats .metric-note > i:last-child { color: #536c83; }

/* Service explanation and the three-step path use a quieter editorial scale. */
.home-dash .home-spotlight {
  grid-template-columns: minmax(0, 1.26fr) minmax(0, .74fr);
}
.home-dash .home-spotlight-copy { padding: 30px 34px; }
.home-dash .home-spotlight-copy h2,
.home-dash .home-section-head h2 {
  color: var(--poa-module-title-color) !important;
  font-size: var(--poa-module-title-size) !important;
  letter-spacing: var(--poa-module-title-tracking) !important;
}
.home-dash .home-spotlight-points { gap: 12px; margin-bottom: 20px; }
.home-dash .home-spotlight-visual {
  width: 100%;
  max-width: none;
  height: 100%;
  aspect-ratio: auto;
  overflow: hidden;
}
.home-dash .home-spotlight-visual img {
  object-position: center 34%;
  filter: saturate(.78);
}
.home-dash .home-flow-panel { padding: 26px 28px; background: #f6f9fc; }
.home-dash .home-flow { gap: 14px; margin-top: 20px; }
.home-dash .home-flow-step {
  min-height: 90px;
  padding: 17px;
  border-color: #dce5ee;
  background: #fff;
}
.home-dash .home-flow-step:hover { background: #fff; border-color: #a9bfd2; transform: none; }
.home-dash .home-flow-number { color: #9f5e00; background: #fff2df; }

/* The working panels keep one consistent title, border, and action treatment. */
.home-dash .dashboard-panel,
.home-dash .matrix-panel { padding: 25px 28px; }
.home-dash .dashboard-panel-head h2 {
  color: var(--poa-module-title-color) !important;
  font-size: var(--poa-module-title-size) !important;
  letter-spacing: var(--poa-module-title-tracking) !important;
}
.home-dash .dashboard-panel-head p { color: var(--home-muted) !important; }
.home-dash .panel-code { color: #526579; }
.home-dash .priority-count { color: #405c78; background: #edf3f8; }
.home-dash .dashboard-search-tabs { background: #edf2f7; }
.home-dash .dashboard-search-tab.active { color: var(--home-ink); }
.home-dash .dashboard-search-box button,
.home-dash .dashboard-search-box button:hover {
  border-color: #263f58;
  background: #263f58;
  color: #fff;
  text-shadow: none;
  box-shadow: none;
  filter: none;
  transform: none;
}
.home-dash .dashboard-search-box button::before { display: none; }
.home-dash.home-rebuilt > .recent-cases-panel { background: #f4f7fb; }
.home-dash .recent-case-table { border: 1px solid #d7e3ef; border-radius: 9px; overflow: hidden; }
.home-dash .recent-case-head,
.home-dash .recent-case-item { padding-inline: 0; }
.home-dash .recent-case-head { border-radius: 0; background: #d8e5f2; color: #40566c; }
.home-dash .recent-case-head > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.home-dash .recent-case-item { background: #fff; box-shadow: none; }
.home-dash .recent-case-item::before { display: none; }
.home-dash .recent-case-item > span.case-money,
.home-dash .feed-date { color: #405d78; }
.home-dash .service-matrix > button {
  border-color: #dce5ee;
  background: #f8fafc;
  border-radius: 10px;
}
.home-dash .service-matrix > button:hover {
  border-color: #a9bfd2;
  background: #f2f6fa;
  transform: none;
}

.home-dash a:focus-visible,
.home-dash button:focus-visible {
  outline: 2px solid #2d70b0;
  outline-offset: 3px;
}
.home-dash .home-hero a:focus-visible,
.home-dash .home-hero button:focus-visible { outline-color: #ffb65f; }

@media (max-width: 1250px) {
  .home-dash .home-tool-entries { grid-template-columns: 1fr; }
}
@media (max-width: 1240px) {
  .home-dash .home-hero { grid-template-columns: 1fr; }
  .home-dash .home-spotlight { grid-template-columns: 1fr; }
  .home-dash .home-spotlight-visual { order: 0; max-height: 230px; aspect-ratio: 2 / 1; }
}
@media (max-width: 900px) {
  .home-dash .home-hero { padding: 26px; }
  .home-dash .home-spotlight-copy,
  .home-dash .home-flow-panel,
  .home-dash .dashboard-panel,
  .home-dash .matrix-panel { padding: 22px; }
}
@media (max-width: 620px) {
  .home-dash { gap: 14px; }
  .home-dash > .home-spotlight { margin-top: 24px; }
  .home-dash .home-hero { gap: 18px; min-height: 0; padding: 22px; }
  .home-dash .home-hero h1 { font-size: 29px; }
  .home-dash .home-hero-lead { font-size: 14px; }
  .home-dash .home-hero-proof { gap: 12px 18px; margin-top: 20px; }
  .home-dash .home-hero-proof strong { font-size: 17px; }
  .home-dash .home-hero-visual { min-height: 0; height: 130px; max-height: none; }
  .home-dash .home-platform-strip { padding: 12px 15px; }
  .home-dash .home-platform-list { gap: 6px; }
  .home-dash .home-tool-entry { flex-direction: column; min-height: 0; padding: 18px; }
  .home-dash .home-tool-thumb {
    flex: 0 0 auto;
    width: 100%;
    max-width: none;
    height: 112px;
    aspect-ratio: auto;
  }
  .home-dash .home-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-dash .home-stats article,
  .home-dash .home-stats .metric-note { padding: 12px; }
  .home-dash .home-stats .metric-note { grid-column: 1 / -1; }
  .home-dash .home-stats .dash-stat-icon { width: 32px; height: 32px; flex-basis: 32px; }
  .home-dash .home-stats strong { font-size: 18px; }
  .home-dash .home-spotlight-visual { max-height: 180px; }
}
@media (max-width: 360px) {
  .home-dash .home-stats { grid-template-columns: 1fr; }
  .home-dash .home-hero-proof { gap: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-dash .home-tool-entry,
  .home-dash .home-tool-thumb img { transition: none; }
  .home-dash .home-tool-entry:hover,
  .home-dash .primary-action.dash-cta:hover { transform: none; }
}
