.tool-menu { display: flex; flex-wrap: wrap; gap: 8px; }
.tool-menu a, .batches button { padding: 9px 14px; color: #195947; border: 1px solid #9bb9aa; border-radius: 8px; background: #fff; font: inherit; cursor: pointer; }
.tool-menu a:hover, .batches button:hover { background: #eaf2eb; }
.finance-tool { margin: 48px 0; scroll-margin-top: 96px; }
.finance-tool > header { max-width: 780px; margin-bottom: 16px; }
.finance-tool h2 { margin-top: 6px; }
.finance-tool .tax-panel > .tax-fields { margin: 0; }
.finance-tool .tax-result h3 { margin: 0; }
.finance-tool .tax-result dl > div { margin-top: 12px; border-top: 1px solid #4e7165; padding-top: 12px; align-items: baseline; }
.finance-tool dd { font-weight: 700; font-variant-numeric: tabular-nums; }
.finance-tool .tax-result .compare { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.finance-tool dl.compare > div { display: block; margin: 0; }
.finance-tool .compare dd { font-size: 22px; }
.finance-tool .feedback { margin-bottom: 0; color: #e3f2e9; }
.batches { grid-column: 1 / -1; }
.batches .batch { margin: 0 0 16px; }
.batches button:disabled { display: none; }
.finance-shell .finance-note { font-size: 14px; color: #476159; }
.finance-note a { color: #14604b; text-decoration: underline; }
.tool-menu { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 285px), 1fr)); gap: 16px; }
.tool-menu a { display: grid; align-content: start; gap: 8px; padding: 20px; }
.tool-menu strong { font-size: 20px; }
.tool-menu span { color: #476159; }

.finance-directory .tax-intro { background: #204750 url('/images/finance-desk.svg') right center / auto 100% no-repeat; border-radius: 16px; padding: clamp(25px,4vw,50px); }
.finance-directory .tax-intro h1, .finance-directory .tax-intro p { color: #fff; width: 58%; }
.finance-directory .tax-intro p { color: #e3eee8; margin-bottom: 0; }
.tool-menu { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 14px; }
.tool-menu a { grid-column: span 2; border: 1px solid #c4d4d7; border-top: 4px solid var(--accent); padding: 20px; gap: 10px; color: #193947; background: #fff; }
.tool-menu a:nth-child(-n+2) { grid-column: span 3; }
.tool-menu a:hover, .tool-menu a:focus-visible { background: var(--wash); border-color: var(--accent); }
.tool-menu a small { margin-bottom: 5px; }
.tool-menu strong { font-size: clamp(19px,2vw,24px); line-height: 1.35; }
.tool-menu span { color: #3f5660; font-size: 15px; }
.finance-tool { margin: 22px 0 28px; }
.finance-tool > header { max-width: none; margin: 0 0 25px; }
.finance-tool .tax-result dl > div { border-color: #ffffff55; }
.finance-tool dd:is([data-value="floor"],[data-value="totalRefund"],[data-value="difference"],[data-value="gross"]) { font-size: clamp(23px,2.8vw,36px); line-height: 1.2; }
.finance-shell .finance-note { margin: 24px 0 0; padding: 14px 18px; background: var(--wash); border-left: 3px solid var(--accent); color: #314950; }
@media(max-width: 760px) {
  .tool-menu { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tool-menu a, .tool-menu a:nth-child(-n+2) { grid-column: auto; }
  .finance-directory .tax-intro { background-size: auto 82%; background-position: right -70px center; }
}
@media(max-width: 540px) {
  .tool-menu { grid-template-columns: 1fr; }
  .tool-menu a { padding: 16px 18px; gap: 5px; }
  .finance-directory .tax-intro { background-size: 190px auto; background-position: right -42px top -6px; }
  .finance-directory .tax-intro h1 { padding-top: 49px; width: auto; }
  .finance-directory .tax-intro p { width: auto; }
}
