<style>
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }
    
    body {
      font-family: 'Microsoft JhengHei', Arial, sans-serif;
      line-height: 1.6;
      color: #333;
      background: transparent;
    }
    
    .container {
      max-width: 1200px;
      margin: 0 auto;
      background: transparent;
      display: flex;
      flex-wrap: wrap;
      grid-auto-rows: 1fr; /* 關鍵：讓所有行高度相等 */

    }
    
    h1 {
      text-align: center;
      margin-bottom: 30px;
      color: #2c3e50;
    }
    
  .grid {
       display: grid;
       grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
       gap: 25px;
       grid-auto-rows
    }
    
    .grid-item {
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
      background: transparent;
      display: grid;
      grid-template-rows: auto 1fr; /* 圖片高度自動，內容區域填滿剩餘空間 */
    }
    
    .grid-item a {
      display: block;
      text-decoration: none;
      color: inherit;
    }
    
    .grid-item img {
      width: 100%;
      height: 200px;
      object-fit: cover;
      display: block;
    }
    
    .grid-item-content {
      background-color: rgba(0, 0, 0, 0.3); /* 30% 透明度的黑色背景 */
      padding: 15px;
      color: white;
      height: 100%; /* 讓內容區域填滿grid-item */
      box-sizing: border-box; /* 確保padding不會增加總高度 */
      
    }
    
    .grid-item-title {
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 8px;
    }
    
    .grid-item-description {
      font-size: 14px;
      opacity: 0.9;
    }
    
    @media (max-width: 768px) {
      .grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
      }
    }
    
    @media (max-width: 480px) {
      .grid {
        grid-template-columns: 1fr;
      }
    }
  </style>