/* =========================================================
    Component: Card Hero
    File: assets/css/3_components/feature-card-hero.css
   ========================================================= */

/* --- 1. Container & Link (外枠) --- */
.c-cardHero {
  background: var(--wan-color-bg, #ffffff);
  border-radius: var(--wan-s-4);
  overflow: hidden;
  box-shadow: var(--wan-shd-lg);
  transition: transform 0.3s ease, opacity 0.3s ease;
  height: 100%;
}

@media screen and (min-width: 769px) {
  .c-cardHero:hover {
    opacity: 0.9;
    transform: translateY(-4px);
  }
}

.c-cardHero__link {
  display: flex;
  flex-direction: row;
  text-decoration: none;
  color: inherit;
  height: 100%;
}

/* --- 2. Image Section (画像エリア) --- */
.c-cardHero__img {
  position: relative;
  width: 60%;
  aspect-ratio: 16 / 10; 
  overflow: hidden;
}

.c-cardHero__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.c-cardHero__tagArea {
  position: absolute;
  top: 15px;
  right: 15px;
  z-index: 2;
  display: flex;
  gap: 6px;
}

/* --- 3. Content Section (テキストエリア) --- */
.c-cardHero__content {
  width: 40%;
  padding: var(--wan-s-12);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.c-cardHero__meta {
  margin-bottom: var(--wan-s-1);
}

.c-cardHero__title {
  font-size: var(--wan-f-size-3xl);
  font-weight: var(--wan-f-weight-bold);
  line-height: var(--wan-f-lh-relaxed);
  margin-bottom: var(--wan-s-5);
}

.c-cardHero__desc {
  color: var(--wan-color-text-muted, #666666);
  font-size: var(--wan-f-size-md);
  line-height: var(--wan-f-lh-relaxed);
  margin-bottom: var(--wan-s-1);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.c-cardHero__dateArea {
  margin-top: auto; 
}

/* --- 4. Responsive (スマホ・タブレット対応) --- */
@media screen and (max-width: 768px) {
  .c-cardHero {
    border-radius: var(--wan-s-3);
    box-shadow: var(--wan-shd-md);
  }

  .c-cardHero__link {
    flex-direction: column;
  }

  .c-cardHero__img,
  .c-cardHero__content {
    width: 100%;
  }

  .c-cardHero__img {
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .c-cardHero__content {
    padding: var(--wan-s-6) var(--wan-s-5); 
  }

  .c-cardHero__title {
    font-size: var(--wan-f-size-xl);
    margin-bottom: var(--wan-s-5);
  }

  .c-cardHero__desc {
    font-size: var(--wan-f-size-sm);
    margin-bottom: var(--wan-s-2);
    -webkit-line-clamp: 2; 
  }

  .c-cardHero .c-postMeta__area,
  .c-cardHero .c-postMeta__date {
    font-size: var(--wan-f-size-sm);
  }
}