/* 既存の記事カードを活かし、施工例だけに適用する調整 */
.ledeco-cases .ledeco-section-header { gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.ledeco-cases-intro { margin: 0 0 24px; font-size: 14px; line-height: 1.8; color: var(--ledeco-text); }
.ledeco-case-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.ledeco-case-card .ledeco-card-link { display: flex; flex-direction: column; height: 100%; color: inherit; text-decoration: none; }
.ledeco-case-card .ledeco-card-thumb { aspect-ratio: 4 / 3; }
.ledeco-case-card .ledeco-card-meta { flex-wrap: wrap; gap: 8px; }
.ledeco-case-area { font-size: 12px; color: #666; }
.ledeco-case-card .ledeco-card-title { flex: none; }
.ledeco-case-description { margin: 0 0 16px; font-size: 14px; line-height: 1.8; color: #666; }
.ledeco-case-link { margin-top: auto; justify-content: flex-end; }
.ledeco-case-card .ledeco-card-link:focus-visible { outline: 3px solid var(--ledeco-green-dark); outline-offset: -3px; }
@media (max-width: 1023px) { .ledeco-case-grid { gap: 16px; } }
@media (max-width: 767px) {
  .ledeco-case-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .ledeco-cases .ledeco-section-title { font-size: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .ledeco-case-card, .ledeco-case-card .ledeco-card-thumb img { transition: none; }
}
