/* Services List 02 Widget */
.services02-grid{
  display:grid;
  gap:16px;
  align-items:stretch;
}

.services02-card{
  /* transition variables with soft defaults */
  --mn-tr-dur: .3s;
  --mn-tr-ease: ease-out;
  position:relative;
  overflow:hidden;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  height:100%;
  text-decoration:none;
  background:#ffffff;
  color:#222;
  border-radius:18px;
  padding:18px 16px;
  box-shadow:0 6px 22px rgba(0,0,0,.06);
  transition:transform var(--mn-tr-dur) var(--mn-tr-ease), box-shadow var(--mn-tr-dur) var(--mn-tr-ease), background-color var(--mn-tr-dur) var(--mn-tr-ease), color var(--mn-tr-dur) var(--mn-tr-ease);
  min-height:120px;
}

.service02-card-body{
  position:relative;
  z-index:1;
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  min-height:0;
  gap:8px;
}
.service02-card-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  pointer-events:none;
}
.services02-card.has-service-bg .service02-card-body{
  position:relative;
  z-index:1;
}
.services02-card:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(0,0,0,.08);
}

.services02-icon{
  display:flex;
  flex-shrink:0;
  align-items:center;
  justify-content:center;
  width:100%;
  margin:0;
}
.services02-icon img{
  display:block;
  width:42px;
  height:42px;
  object-fit:contain;
  object-position:center center;
  filter:none;
}
.services02-icon-fallback{display:inline-flex;width:42px;height:42px;border-radius:50%;align-items:center;justify-content:center;background:#f3dbe0;color:#a3072a;font-weight:700;font-size:20px;}

.service02-title{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
  width:100%;
  margin:0;
  font-size:14px;
  font-weight:600;
  line-height:1.45;
  color:inherit;
  word-break:break-word;
}
.service02-excerpt{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
  width:100%;
  margin:0;
  margin-top:auto;
  font-size:12px;
  line-height:1.55;
  color:inherit;
  opacity:.85;
  word-break:break-word;
}

/* Active/highlighted item like screenshot */
.services02-card.is-active{
  background:#a3072a; /* maroon */
  color:#fff;
}
.services02-card.is-active .services02-icon img{filter:brightness(0) invert(1);} 
.services02-card.is-active .services02-icon-fallback{background:rgba(255,255,255,.2);color:#fff;}

/* Responsive tweaks */
@media (max-width:768px){
  .services02-grid{gap:12px;}
  .services02-card{padding:14px 12px;}
  .services02-icon img,.services02-icon-fallback{width:36px;height:36px;}
  .service02-title{font-size:13px;}
}
