/* Section Title */
.ttb-section-title {
  font-size: 1.6rem;
  margin-bottom: 1rem;
  color: #222;
}

/* Featured Tools Grid */
.ttb-section-title{
  font-size:1.6rem;
  margin-bottom:1rem;
  color:#222
}

/* Featured Tools Grid – NEW responsive rules */
.featured-tools ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:1rem;
  grid-template-columns:repeat(3,1fr);     /* desktop default */
}

/* snap to 3 columns at ≈ 1200 px */
@media (max-width:1200px){
  .featured-tools ul{grid-template-columns:repeat(3,1fr)}
}
/* snap to 2 columns at ≈ 768 px */
@media (max-width:768px){
  .featured-tools ul{grid-template-columns:repeat(2,1fr)}
}
/* single-column fallback at ≈ 480 px */
@media (max-width:480px){
  .featured-tools ul{grid-template-columns:1fr}
}

.featured-tools li{
  background:#f5faff;
  border:1px solid #ddeeff;
  border-radius:8px;
  padding:1rem;
  transition:box-shadow .2s ease;
  min-width:0               /* prevent text overflow */
}
.featured-tools li:hover{
  box-shadow:0 4px 12px rgba(0,0,0,.08)
}
.featured-tools li a{
  text-decoration:none;
  color:#004d99;
  font-weight:600;
  font-size:1.1rem
}

/* Tool Categories Grid */
.tool-category-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* Force 2 columns */
  gap: 1rem;
  margin-top: 1rem;
}

.category-card {
  background-color: #f5faff;
  border: 1px solid #ddeeff;
  border-radius: 8px;
  padding: 1rem;
  transition: box-shadow 0.2s ease;
}

.category-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.category-card h3 {
  margin-top: 0;
  font-size: 1.2rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.category-card a {
  text-decoration: none;
  color: #004d99;
  font-weight: 600;
}

.category-count {
  font-size: 0.9rem;
  color: #666;
  margin-top: 0.5rem;
}

.ttb-tool-snippet {
    color: #777; /* lighter grey */
    font-size: 0.9em;
    margin: 4px 0;
}

.ttb-tool-cta {
    color: #222; /* darker text */
    font-weight: bold;
}

/* Make each item a padded card */
.featured-tools ul { /* keep your existing layout */ }
.featured-tools li.ttb-tool-item { list-style: none; margin-bottom: 12px; display: flex; }

/* Card with flex column so CTA can sit at bottom */
.ttb-tool-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* Title link */
.ttb-tool-title {
    font-weight: 700;
    text-decoration: none;
}

/* Snippet: lighter colour */
.ttb-tool-snippet {
    color: #6b7280;        /* light gray */
    font-size: 0.92em;
    margin-top: 4px;
}

/* CTA: darker text, pinned to bottom */
.ttb-tool-cta {
    margin-top: auto;      /* pushes link to bottom of the card */
    font-weight: 700;
    color: #111827;        /* darker */
    text-decoration: none;
	background-color: #fff;
    padding: 2px 0 2px 7px;
    border: 1px solid #def;
    border-radius: 6px;
}
.ttb-tool-cta:hover { text-decoration: underline; }


.ttb-category-snippet { color:#6b7280; font-size:0.95em; margin:6px 0 2px; }

.ttb-term-description { margin: 0 0 12px; color:#374151; }

/* Category cards behave like the tool cards so CTA can sit at bottom */
.category-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px;
}

/* Header row: title left, count right */
.category-card-header {
    display: flex;
    align-items: center;
    gap: 12px;
}
.category-card-title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
}
.category-card-title a {
    text-decoration: none;
}
.category-count {
    margin-left: auto;                 /* pushes count to far right */
    white-space: nowrap;
    color: #374151;
    font-size: 0.95em;
}

/* Report button wrapper */
.ttb-report-wrap {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 10px;
}

/* Report button */
.ttb-report-btn {
  display: inline-block;
  font-size: 12px;
  text-decoration: none;
  background-color: #d4f1ff;
  border: 1px solid #61c8ff;
  color: #002437;
  padding: 5px;
  border-radius: 10px;
  line-height: 1;
  box-shadow: 0 1px 0 rgba(0,0,0,.04);
}
.ttb-report-btn:hover {
  filter: brightness(0.98);
  text-decoration: none;
  background-color: #b5e7ff;
  border: 1px solid #19adfc;
}
