/* =========================
   Updates / YouTube tiles
   ========================= */

/* The grid container (you already use id="latest-posts" + class="latest-grid") */
.latest-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 1rem;
  align-items: start;
}

@media (max-width: 960px){
  .latest-grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px){
  .latest-grid{ grid-template-columns: 1fr; }
}

/* Card */
.update-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 10px 25px rgba(0,0,0,.06);
  min-width:0;
}
.update-card a{
  display:block;
  color:inherit;
  text-decoration:none;
}

/* Thumbnail: force consistent shape so rows align */
.update-card .thumb{
  width:100%;
  aspect-ratio: 4 / 5;     /* portrait look; change to 16/9 if preferred */
  background:#111;
  overflow:hidden;
}
.update-card .thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Text */
.update-card .pad{ padding:12px 12px 14px; }
.update-card .title{
  font-weight:700;
  font-size:.95rem;
  line-height:1.25;
}
.update-card .meta{
  margin-top:.35rem;
  font-size:.8rem;
  color: var(--muted);
}
.blog-hero{
  position:relative;
  border-radius:18px;
  overflow:hidden;
  margin: 18px auto 22px;
  max-width: 1100px; /* match your content max width if different */
  min-height: clamp(220px, 26vw, 360px);
  background:#111;
}

.blog-hero__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform: scale(1.02);
}

.blog-hero__overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(
    90deg,
    rgba(0,0,0,0.70) 0%,
    rgba(0,0,0,0.45) 40%,
    rgba(0,0,0,0.15) 70%,
    rgba(0,0,0,0.00) 100%
  );
}

.blog-hero__content{
  position:relative;
  z-index:2;
  padding: clamp(18px, 3vw, 34px);
  max-width: 720px;
  color:#fff;
}

.blog-hero__content h1{
  margin:0 0 8px;
  font-size: clamp(26px, 3.2vw, 44px);
  letter-spacing: 0.3px;
}

.blog-hero__content p{
  margin:0;
  font-size: clamp(14px, 1.6vw, 18px);
  opacity: 0.95;
}
