.tools_grid{ text-align:center; }
.tools_grid__title{ font-weight:700; font-size:clamp(2rem,1.2rem + 2.2vw,3rem); line-height:1.15; margin:0 0 .5rem; }
@media (max-width: 767px){
  .tools_grid__title{ 
    font-size: 30px !important;
    line-height: 40px !important;
  }
}

.tools_grid__subtitle{ max-width:58rem; margin:0 auto 2.5rem; font-size:1.125rem; line-height:1.6; color:#56657a; }

/* responsive columnsâ€”auto-fit makes it adapt if you add/remove groups */
.tools_grid__cols{
  display:grid;       
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 3rem;    
  text-align: left;
}

/* columns */
.tools_grid__cols{
  /* force a count, and give the browser a small target width so 4 can fit */
  column-count: 4;
  column-width: 12rem;   /* <= lower this if it still collapses to 3 */
  column-gap: 2.5rem;    /* slightly smaller gap helps fit 4 */
  text-align: left;
}

/* each group */
.tools_grid__col{
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  break-inside: avoid-column;
  display: block;        /* block is enough; no inline-block or width:100% */
  margin: 0 0 2rem;
}

/* responsive */
@media (max-width:1100px){
  .tools_grid__cols{ column-count: 3; grid-template-columns: repeat(3, minmax(0, 1fr));}
}
@media (max-width:800px){
  .tools_grid__cols{ column-count: 2; column-gap: 1.5rem; grid-template-columns: repeat(2, minmax(0, 1fr));}
}

    .tools_grid__title{ 
        color: var(--primary-900);
        font-size: 2.875rem;       /* 46px */
        font-style: normal;
        font-weight: 600;
        line-height: 3.5rem;       /* 56px (121.739%) */
        letter-spacing: -0.0575rem;
     }
     .tools_grid__subtitle{
        color: var(--neutral-700);
        text-align: center;
        /* Desktop/Text – Medium – 1.25rem 2rem */
        font-family: var(--LT-Text-Font, "Source Sans Pro");
        font-size: 1.25rem;      /* 20px */
        font-style: normal;
        font-weight: 400;
        line-height: 2rem; 
     }

/* column wrapper: space between heading and list */
.tools_grid__col{
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  break-inside: avoid-column;
  display: inline-block;  /* ensure correct column height calc */
  width: 100%;
  margin: 0 0 2rem;       /* vertical spacing between groups */
}

.tools_grid__heading{ color:var(--primary-900); font-size:1.25rem; font-weight:600; line-height:2rem; margin-bottom:1rem; }

.tools_grid__list{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:1rem; }
.tools_grid__item{ margin:0; }

.tools_grid__link{
  display:grid;
  grid-template-columns:40px 1fr;
  align-items:center;
  gap:1rem;
  text-decoration:none;
  color:inherit;
  border:none;
  background-color: transparent;
  cursor: pointer;
  padding: 0;
}
.tools_grid__link:hover .tools_grid__label{ text-decoration:underline; color: #23479A; }

.tools_grid__icon{ width:40px; height:40px; display:grid; place-items:center; }
.tools_grid__img{ width:32px; height:32px; object-fit:contain; display:block; }
.tools_grid__dot{ width:8px; height:8px; border-radius:50%; background:#2B6FFB; display:inline-block; }
.tools_grid__label{ font-size:1rem; line-height:1.5; }