.tesseramento-main,
.tesseramento-aside {
  min-width: 0;
}

.tesseramento-steps {
  display: grid;
  gap: 0.9rem;
}

.form-wrapper-note {
  margin-top: 0.9rem;
  color: #50656f;
  font-size: 0.94rem;
}

/* Tesseramento page — sub-page cards */
.tesseramento-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(320px, 100%), 1fr));
  gap: 1.4rem;
  margin-top: 2.5rem;
}

.tess-card {
  display: flex;
  gap: 1.2rem;
  align-items: flex-start;
  padding: 1.6rem 1.8rem;
  background: #ffffff;
  border: 1.5px solid #dde8ef;
  border-radius: 12px;
  text-decoration: none;
  color: var(--ink);
  transition: box-shadow 0.22s, transform 0.22s, border-color 0.2s;
}

.tess-card:hover {
  box-shadow: 0 10px 28px rgba(9, 67, 101, 0.13);
  transform: translateY(-3px);
  border-color: #94c9e0;
}

.tess-card-icon {
  flex-shrink: 0;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e2f3fb;
  border-radius: 50%;
  color: #094365;
}

.tess-card-body {
  flex: 1;
  min-width: 0;
}

.tess-card-body h2 {
  margin: 0 0 0.5rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: #094365;
  line-height: 1.3;
}

.tess-card-body p {
  margin: 0 0 0.9rem;
  font-size: 0.95rem;
  color: #3a5566;
  line-height: 1.55;
}

.tess-card-link {
  font-size: 0.9rem;
  font-weight: 600;
  color: #0f6494;
}

.post-grid.rich-grid .post-card h2 {
  margin-bottom: 0.45rem;
}

.post-grid.rich-grid .post-card p {
  margin-top: 0.35rem;
}
