/* ============================================================
   BLOG INDEX — Astra Child
   ============================================================ */
:root{
  --dpi-bg:#eef3f8;
  --dpi-surface:#ffffff;
  --dpi-surface-soft:#f7f9fc;
  --dpi-text:#122033;
  --dpi-muted:#66758a;
  --dpi-line:#e5ecf4;
  --dpi-line-strong:#d8e2ef;
  --dpi-primary:#2f6fed;
  --dpi-primary-dark:#1a4ab8;
  --dpi-shadow:0 1px 0 rgba(18,48,79,.06), 0 10px 20px rgba(18,48,79,.05);
  --dpi-shadow-hover:0 2px 0 rgba(18,48,79,.08), 0 14px 26px rgba(18,48,79,.08);
  --dpi-radius:22px;
}

body.home.blog,
body.archive.category,
body.archive.tag,
body.search,
body.page-template-page-blog{
  background:var(--dpi-bg);
  color:var(--dpi-text);
}

.home.blog .site-content,
.home.blog #primary,
.home.blog #content,
.home.blog .ast-container,
.archive.category .site-content,
.archive.category #primary,
.archive.category #content,
.archive.category .ast-container,
.archive.tag .site-content,
.archive.tag #primary,
.archive.tag #content,
.archive.tag .ast-container,
.search .site-content,
.search #primary,
.search #content,
.search .ast-container,
.page-template-page-blog .site-content,
.page-template-page-blog #primary,
.page-template-page-blog #content,
.page-template-page-blog .ast-container{
  max-width:100% !important;
  width:100% !important;
}

.dp-blog-index{
  min-height:100vh;
  padding-bottom:30px;
}

.dp-blog-index__hero{
  padding:40px 20px 18px;
}

.dp-blog-index__hero-inner,
.dp-blog-index__list-wrap{
  max-width:1400px;
  margin:0 auto;
}

.dp-blog-index__breadcrumb{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  font-size:13px;
  color:var(--dpi-muted);
  margin-bottom:18px;
}

.dp-blog-index__breadcrumb a{
  color:var(--dpi-primary-dark);
  text-decoration:none;
  font-weight:700;
}

.dp-blog-index__hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr);
  gap:24px;
  align-items:stretch;
}

.dp-blog-index__hero-copy,
.dp-blog-index__search-card,
.dp-blog-index__list-head,
.dp-blog-index__empty{
  background:var(--dpi-surface);
  border:none;
  border-radius:var(--dpi-radius);
  box-shadow:var(--dpi-shadow);
}

.dp-blog-index__hero-copy{
  padding:30px;
}

.dp-blog-index__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  margin:0 0 14px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--dpi-primary-dark);
  background:#eef2f8;
}

.dp-blog-index__title{
  margin:0 0 14px;
  font-size:clamp(34px,5vw,62px);
  line-height:1.02;
  letter-spacing:-.04em;
  color:var(--dpi-text);
}

.dp-blog-index__desc{
  margin:0 0 18px;
  max-width:780px;
  font-size:17px;
  line-height:1.82;
  color:var(--dpi-muted);
}

.dp-blog-index__stats{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.dp-blog-index__stats span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:14px;
  background:var(--dpi-surface-soft);
  border:none;
  color:var(--dpi-text);
  font-size:13px;
  font-weight:700;
}

.dp-blog-index__search-card{
  padding:22px;
  background:var(--dpi-surface-soft);
}

.dp-blog-index__search-form{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.dp-blog-index__search-input{
  flex:1 1 220px;
  min-height:50px;
  border:none;
  border-radius:14px;
  padding:0 16px;
  font-size:15px;
  color:var(--dpi-text);
  background:#fff;
  box-shadow:none;
  outline:none;
  appearance:none;
  -webkit-appearance:none;
}

.dp-blog-index__search-input:focus,
.dp-blog-index__search-input:focus-visible{
  border:none;
  box-shadow:none;
  outline:none;
}

.dp-blog-index__search-btn,
.dp-blog-index__empty-btn{
  min-height:50px;
  padding:0 20px;
  border:none;
  border-radius:14px;
  background:#2f6fed;
  box-shadow:0 3px 0 rgba(26,79,196,.22), 0 10px 18px rgba(47,111,237,.18);
  color:#fff;
  font-size:14px;
  font-weight:800;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:transform .22s ease, box-shadow .22s ease, background-color .22s ease, color .22s ease;
}

.dp-blog-index__search-btn:hover,
.dp-blog-index__empty-btn:hover{
  transform:none;
  box-shadow:0 4px 0 rgba(26,79,196,.24), 0 14px 24px rgba(47,111,237,.22);
  background:#1a4fc4;
  color:#fff;
}

.dp-blog-index__filters{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}

.dp-blog-index__filter{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 12px;
  border-radius:999px;
  background:#fff;
  border:none;
  color:var(--dpi-text);
  font-size:12px;
  font-weight:700;
  text-decoration:none;
  box-shadow:none;
  opacity:.94;
}

.dp-blog-index__list-wrap{
  padding:0 20px 64px;
  background:transparent;
  border:none;
  box-shadow:none;
}

.dp-blog-index__list-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:22px;
  padding:22px 26px;
}

.dp-blog-index__list-head h2{
  margin:0;
  font-size:28px;
  line-height:1.15;
}

.dp-blog-index__list-head p{
  margin:0;
  color:var(--dpi-muted);
  font-size:14px;
}

.dp-blog-index__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  grid-auto-flow:dense;
}

.dp-post-card{
  min-width:0;
}

.dp-post-card--featured{
  grid-column:span 2;
  grid-row:span 2;
}

.dp-post-card--wide{
  grid-column:span 2;
}

.dp-post-card__inner{
  display:block;
  height:100%;
  background:var(--dpi-surface);
  border:1px solid transparent;
  border-radius:16px;
  overflow:hidden;
  box-shadow:var(--dpi-shadow);
  text-decoration:none;
  color:inherit;
  transition:box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}

.dp-post-card__inner:hover{
  transform:none;
  box-shadow:0 2px 0 rgba(18,48,79,.08), 0 12px 22px rgba(18,48,79,.08);
  border-color:transparent;
}

.dp-post-card__media{
  overflow:hidden;
  position:relative;
  background:#dfe7f2;
}

.dp-post-card__thumb{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  display:block;
}

.dp-post-card--featured .dp-post-card__thumb{
  aspect-ratio:16/11;
}

.dp-post-card--tall .dp-post-card__thumb{
  aspect-ratio:4/5;
}

.dp-post-card__thumb--placeholder{
  width:100%;
  aspect-ratio:16/10;
  background:#dfe7f2;
}

.dp-post-card__badge{
  position:absolute;
  top:16px;
  left:16px;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:#122033;
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  display:inline-flex;
  align-items:center;
  box-shadow:none;
}

.dp-post-card__body{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:20px;
}

.dp-post-card__cat{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  background:#eef2f8;
  color:var(--dpi-primary-dark);
  box-shadow:none;
  border:1px solid var(--dpi-line-strong);
}

.dp-post-card__title{
  margin:0;
  font-size:24px;
  line-height:1.32;
  color:var(--dpi-text);
}

.dp-post-card--featured .dp-post-card__title{
  font-size:34px;
  line-height:1.18;
}

.dp-post-card__excerpt{
  margin:0;
  font-size:15px;
  line-height:1.8;
  color:#4d5d73;
  display:-webkit-box;
  line-clamp:3;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.dp-post-card--featured .dp-post-card__excerpt{
  font-size:17px;
  line-clamp:4;
  -webkit-line-clamp:4;
}

.dp-post-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px 12px;
  padding-top:6px;
  border-top:none;
  color:var(--dpi-muted);
  font-size:12px;
}

.dp-blog-index__pagination{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin-top:28px;
}

.dp-blog-index__pagination .page-numbers{
  min-width:44px;
  min-height:44px;
  padding:0 14px;
  border-radius:14px;
  border:none;
  background:#fff;
  color:var(--dpi-text);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  box-shadow:none;
}

.dp-blog-index__pagination .current{
  background:#122033;
  color:#fff;
  border:none;
  box-shadow:0 2px 0 rgba(18,32,51,.14);
}

.dp-blog-index__empty{
  padding:34px 24px;
  text-align:center;
}

.dp-blog-index__empty h2{
  margin:0 0 10px;
  font-size:28px;
}

.dp-blog-index__empty p{
  margin:0 0 16px;
  color:var(--dpi-muted);
  line-height:1.8;
}

.screen-reader-text{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  border:0;
}

@media (max-width: 1100px){
  .dp-blog-index__hero-grid{
    grid-template-columns:1fr;
  }
  .dp-blog-index__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .dp-post-card--featured,
  .dp-post-card--wide{
    grid-column:span 2;
  }
}

@media (max-width: 760px){
  .dp-blog-index__hero{
    padding:30px 16px 18px;
  }
  .dp-blog-index__hero-copy,
  .dp-blog-index__search-card,
  .dp-blog-index__list-head,
  .dp-blog-index__empty{
    padding:20px;
  }
  .dp-blog-index__list-wrap{
    padding:0 16px 44px;
  }
  .dp-blog-index__grid{
    grid-template-columns:1fr;
  }
  .dp-post-card--featured,
  .dp-post-card--wide,
  .dp-post-card--tall{
    grid-column:auto;
    grid-row:auto;
  }
  .dp-blog-index__list-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .dp-post-card--featured .dp-post-card__title{
    font-size:28px;
  }
}
