.portablefeature-hero .hero-description a,
.portablefeature-streams a,
.portablefeature-detail-section a,
.signal-table a,
.footer-links a,
.portablefeature-grid a {
  text-decoration: none;
}

.portablefeature-hero .hero-description a:hover,
.portablefeature-streams a:hover,
.portablefeature-detail-section a:hover,
.signal-table a:hover,
.footer-links a:hover,
.portablefeature-grid a:hover {
  text-decoration: underline;
}

.portablefeature-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.portablefeature-streams .streams-grid {
  align-items: stretch;
}

.portablefeature-detail-section {
  margin-bottom: 24px;
}

.portablefeature-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.portablefeature-detail-card {
  border-radius: 10px;
  background-color: #ffffff;
  border: 1px solid var(--color-border-subtle);
  padding: 18px 18px 20px;
}

.portablefeature-detail-card h2 {
  margin: 0 0 10px;
  font-size: 1.22rem;
  color: var(--color-ink);
}

.portablefeature-detail-card p {
  margin: 0 0 14px;
  font-size: 0.96rem;
  line-height: 1.72;
  color: var(--color-muted);
}

.portablefeature-detail-card p:last-child {
  margin-bottom: 0;
}

@media (max-width: 1100px) {
  .portablefeature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .portablefeature-detail-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 620px) {
  .portablefeature-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
