/* CHR Tools landing page, in the firm website colors (chr.legal, read 6 Nov 2026):
   orange #FC7A00, brown #61360A, warm peach #FFE4CC, serif headings. */
.home {
  --chr-orange: #FC7A00; --chr-orange-dark: #D96800; --chr-brown: #61360A; --chr-brown-deep: #3F2306;
  --chr-peach: #FFE9D6; --chr-peach-line: #F6CFA9;
  --serif: Ellery, Georgia, "Times New Roman", serif;
  background: #fff;
}
.home-top { display: flex; align-items: center; padding: 14px 28px; border-bottom: 1px solid #eee5dc; background: #fff; }
.home .brand h1 { font-family: var(--serif); color: var(--chr-brown); font-size: 21px; font-weight: 600; letter-spacing: 0; }
.home .brand .subtitle { color: #8a6a4d; font-size: 12.5px; letter-spacing: .02em; }

.home-hero {
  text-align: center; color: #fff; padding: 46px 20px 50px;
  background: linear-gradient(180deg, #7a4a1d 0%, var(--chr-brown) 55%, var(--chr-brown-deep) 100%);
}
.home-kicker { margin: 0 0 10px; text-transform: uppercase; letter-spacing: .32em; font-size: 12.5px; color: #f3e3d3; }
.home-hero h2 { margin: 0; font-family: var(--serif); font-weight: 500; font-size: clamp(30px, 4.6vw, 44px); color: var(--chr-orange); letter-spacing: 0; }
.home-rule { display: block; width: 120px; height: 2px; margin: 16px auto 14px; background: var(--chr-orange); }
.home-lede { margin: 0; color: #fbf3ea; font-size: 15.5px; }

.home-main { max-width: 900px; margin: 0 auto; padding: 32px 20px 44px; }
.home .tools { gap: 18px; }
.home .tool {
  border: 1px solid #eadfd3; border-radius: 12px; box-shadow: 0 1px 2px rgba(63, 35, 6, .06);
  border-bottom: 3px solid var(--chr-peach-line); transition: border-color .15s, box-shadow .15s, transform .15s;
}
.home .tool:hover { border-color: var(--chr-orange); box-shadow: 0 6px 18px rgba(97, 54, 10, .12); transform: translateY(-1px); }
.home .tool:focus-visible { outline: 2px solid var(--chr-orange); outline-offset: 2px; }
.home .tool h3 { font-family: var(--serif); color: var(--chr-brown); font-size: 20px; font-weight: 600; }
.home .tool p { color: #4b4038; }
.home .tool-icon { background: var(--chr-peach); color: var(--chr-orange-dark); border-radius: 10px; }
.home .tool-foot { color: var(--chr-orange-dark); }
.home .tool-foot.muted { color: #8a6a4d; }
.home .badge-new { background: var(--chr-orange); color: #fff; font-family: system-ui, sans-serif; }
.home .home-foot { text-align: center; color: #8a6a4d; margin-top: 26px; }
@media (max-width: 640px) {
  .home-top { padding: 12px 16px; }
  .home-hero { padding: 34px 16px 38px; }
  .home-kicker { letter-spacing: .2em; font-size: 11.5px; }
}
