/* ==========================================================================
   09 — blog
   Values taken verbatim from docs/research/sections/09-blog.html
   No hover states exist on the original.
   ========================================================================== */

.blog {
  background: var(--bg);
  border-top: 1px solid var(--line-soft);
}

.blog__inner {
  padding-top: 110px;
  padding-bottom: 40px;
}

/* --- head ---------------------------------------------------------------- */
.blog__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
  margin-bottom: 44px;
}

.blog__head-text { max-width: 560px; }

.blog__eyebrow {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--pink);
}

.blog__title {
  font-weight: 800;
  font-size: clamp(30px, 3.4vw, 44px);
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--ink);
  margin: 16px 0 0;
}

.blog__all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--indigo);
  font-weight: 700;
  font-size: 16px;
  text-decoration: none;
}

.blog__all-arrow { font-size: 18px; }

/* --- grid ---------------------------------------------------------------- */
.blog__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.blog__card {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  background: var(--bg);
  border: 1px solid var(--line-2);
  border-radius: var(--r-lg);
  overflow: hidden;
  cursor: pointer;
}

/* --- cover --------------------------------------------------------------- */
.blog__cover {
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.blog__cover--1 { background: linear-gradient(135deg, #1E26A8, #0D1060); }
.blog__cover--2 { background: linear-gradient(135deg, #6C63FF, #2E259C); }
.blog__cover--3 { background: linear-gradient(135deg, #161C8E, #0D1060); }

.blog__cover-label {
  font-weight: 800;
  font-size: 40px;
  color: var(--white);
  letter-spacing: -0.02em;
}

/* --- body ---------------------------------------------------------------- */
.blog__body {
  padding: 26px 26px 30px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.blog__meta {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.blog__meta--pink   { color: var(--pink); }
.blog__meta--indigo { color: var(--indigo); }

.blog__card-title {
  font-weight: 800;
  font-size: 19px;
  line-height: 1.24;
  letter-spacing: -0.015em;
  color: var(--ink);
  margin: 12px 0 10px;
  text-wrap: pretty;
}

.blog__excerpt {
  font-size: 14.5px;
  line-height: 1.6;
  color: var(--muted);
  margin: 0 0 18px;
  flex: 1;
  text-wrap: pretty;
}

.blog__read {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--pink);
  font-weight: 700;
  font-size: 14.5px;
}

.blog__read-arrow { font-size: 16px; }

/* --- responsive ---------------------------------------------------------- */
@media (max-width: 860px) {
  /* Verified on the original at 390px: 64px top AND bottom. */
  .blog__inner {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .blog__grid { grid-template-columns: 1fr; }
}
