/* ==========================================================================
   Kwest LLC — US market entry info hub (list page + article template).
   Linked on info-us-market-entry.html and info/article-*.html.
   Reuses .hero/.hero--compact, .cta-banner, .notice from home.css/components.css.
   ========================================================================== */

/* ---------------------------------------------------------------------
   Article card list (template: copy one .article-card to add a post)
   --------------------------------------------------------------------- */

/* KO subheadline needs a wider container so the forced line break lands
   after "정보입니다." instead of the browser auto-wrapping earlier. */
.hero--info-ko .hero__content {
  max-width: 1000px;
}

/* ---------------------------------------------------------------------
   Hero image (contained, not full-bleed)
   --------------------------------------------------------------------- */

.info-image-section {
  padding: 64px 24px;
}

.info-image-frame {
  max-width: 1100px;
  aspect-ratio: 21 / 9;
  margin-inline: auto;
  border-radius: 12px;
  overflow: hidden;
  background-color: var(--color-bg-light);
}

.info-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 768px) {
  .info-image-section {
    padding: 40px 20px;
  }

  .info-image-frame {
    aspect-ratio: 16 / 9;
  }
}

.article-list {
  padding: 72px 24px 96px;
}

.article-grid {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 760px;
  margin-inline: auto;
}

.article-card {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 32px;
  background-color: var(--color-white);
  border: 0.5px solid var(--color-border);
  border-radius: 10px;
  transition: box-shadow var(--transition-base), transform var(--transition-base);
}

.article-card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}

.article-card__icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background-color: var(--color-bg-light);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-navy);
  font-size: 22px;
}

.article-card__title {
  font-size: var(--fs-card-title);
  font-weight: var(--fw-card-title);
  color: var(--color-navy);
  margin-bottom: 8px;
  line-height: 1.4;
  text-wrap: balance;
}

.article-card__summary {
  font-size: var(--fs-card-body);
  color: var(--color-text-body);
  line-height: 1.6;
  margin-bottom: 14px;
}

.article-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: var(--fs-small);
  font-weight: var(--fw-bold);
  color: var(--color-navy);
}

@media (max-width: 768px) {
  .article-list {
    padding: 40px 20px 56px;
  }

  .article-card {
    padding: 24px;
    gap: 16px;
  }

  .article-card__icon {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }

}

/* ---------------------------------------------------------------------
   Article page: back link + prose body
   --------------------------------------------------------------------- */

.article-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: var(--fs-small);
  font-weight: var(--fw-semibold);
  color: var(--color-text-hero-subtext);
  margin-bottom: 20px;
}

.article-back:hover {
  color: var(--color-white);
}

.article-body {
  padding: 72px 24px 96px;
}

.article-body__inner {
  max-width: 680px;
  margin-inline: auto;
}

.article-body__inner p {
  font-size: var(--fs-body-paragraph);
  font-weight: var(--fw-body-paragraph);
  line-height: var(--lh-body-paragraph);
  color: var(--color-text-body);
  margin-bottom: 24px;
}

.article-body__inner p:last-child {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .article-body {
    padding: 40px 20px 56px;
  }

  .article-body__inner p {
    margin-bottom: 20px;
  }
}
