/* Subject directories reuse the Home typography, cards, palette and navigation. */
.subject-page .feedback-widget { left: auto; width: auto; }

.subject-hero {
  padding: 22px 0 42px;
  border-bottom: 1px solid var(--home-line);
  background: var(--home-paper-light);
}

.subject-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin-bottom: 34px;
  font-size: 0.82rem;
}

.subject-breadcrumb a { text-underline-offset: 4px; }
.subject-breadcrumb .bi { font-size: 0.65rem; }
.subject-hero .home-kicker { margin-bottom: 14px; }

.subject-hero h1,
.subject-tools h2 {
  font-family: "Fraunces", Georgia, serif;
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.12;
}

.subject-hero h1 {
  max-width: 900px;
  margin: 0;
  font-size: clamp(2.2rem, 4.3vw, 3.6rem);
}

.subject-hero__lead {
  max-width: 770px;
  margin: 20px 0 0;
  color: #3f5a5b;
  font-size: 1.06rem;
}

.subject-tools { padding-block: 42px 64px; }

.subject-tools__heading {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: 10px 24px;
  margin-bottom: 23px;
}

.subject-tools h2 { margin: 0; font-size: clamp(1.7rem, 2.8vw, 2.25rem); }
.subject-tools__heading p { margin: 0; color: #4f6768; font-size: 0.9rem; }

.subject-tools__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 18px;
}

.subject-tool { grid-column: span 2; min-height: 274px; }
.subject-tool:nth-last-child(-n+2) { grid-column: span 3; }
.subject-tool .home-tool-card__icon { margin-bottom: 22px; }
.subject-tool h3 + span { max-width: 420px; margin-bottom: 24px; }
.subject-tool .subject-tool__action { margin-top: auto; font-size: 0.9rem; font-weight: 700; }
.subject-tool__action .bi { margin-left: 8px; }

.subject-tools__closing {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px 40px;
  padding-top: 28px;
}

.subject-tools__closing p { max-width: 690px; margin: 0; color: #4f6768; font-size: 0.94rem; }
.subject-tools__closing a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-weight: 700; text-underline-offset: 5px; }

@media (max-width: 991.98px) {
  .subject-tools__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .subject-tool, .subject-tool:nth-last-child(-n+2) { grid-column: auto; }
  .subject-tool:last-child { grid-column: 1 / -1; }
}

@media (max-width: 575.98px) {
  .subject-hero { padding-bottom: 30px; }
  .subject-breadcrumb { margin-bottom: 26px; }
  .subject-hero__lead { font-size: 1rem; }
  .subject-tools { padding-block: 30px 42px; }
  .subject-tools__grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .subject-tool { min-height: 245px; }
}
