.nav-links .nav-active { color: var(--accent); }
.blog-shell { padding-top: 72px; }
.blog-hero .hero-split-right { min-height: 420px; }
.blog-scene {
  display:flex; align-items:center; justify-content:center; padding:2rem;
}
.blog-grid-panel {
  width:min(520px, 90%);
  display:grid; grid-template-columns:1fr 1fr; gap:1px;
  background:var(--border); border:1px solid var(--border);
  box-shadow: 0 30px 60px rgba(0,0,0,.35);
}
.blog-grid-card {
  background:rgba(8,15,26,.92);
  padding:1.4rem 1.2rem;
  min-height:118px;
  display:flex; flex-direction:column; justify-content:space-between;
}
.blog-grid-card span {
  font-size:.68rem; letter-spacing:.18em; text-transform:uppercase; color:var(--muted);
}
.blog-grid-card strong {
  font-family:'Syne',sans-serif; font-weight:800; font-size:1.2rem; line-height:1.25;
}
.blog-hubs .service-card { text-decoration:none; color:inherit; }
.issue-feed, .archive-shell, .single-shell { padding: 6rem 4rem; background: var(--bg2); }
.blog-post-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:2.4rem;
}
.blog-card {
  background:linear-gradient(180deg, rgba(13,23,38,.98), rgba(8,15,26,.98));
  border:1px solid var(--border); padding:1.6rem; min-height:280px;
  display:flex; flex-direction:column; gap:1rem;
}
.blog-card h3 { font-family:'Syne',sans-serif; font-size:1.18rem; line-height:1.3; }
.blog-card h3 a { color:var(--text); text-decoration:none; }
.blog-card h3 a:hover { color:var(--accent); }
.blog-card p { color:var(--muted); font-size:.9rem; line-height:1.75; flex:1; }
.blog-card-meta {
  display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap;
  font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--accent);
}
.blog-card.placeholder { opacity:.9; }
.archive-note { max-width: 760px; }
.blog-pagination { margin-top: 2rem; }
.blog-pagination .nav-links, .blog-pagination .page-numbers {
  display:flex; gap:.5rem; list-style:none; text-decoration:none;
}
.blog-pagination .page-numbers a, .blog-pagination .page-numbers span {
  padding:.6rem .9rem; border:1px solid var(--border); background:var(--surface); color:var(--text); text-decoration:none;
}
.single-shell {
  display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:2rem; align-items:start;
}
.single-article {
  background:linear-gradient(180deg, rgba(13,23,38,.98), rgba(8,15,26,.98));
  border:1px solid var(--border); padding:2rem;
}
.single-title { margin-top:.6rem; }
.single-meta { color:var(--muted); font-size:.8rem; margin: 1rem 0 1.5rem; text-transform:uppercase; letter-spacing:.14em; }
.single-content { color:var(--text); line-height:1.85; }
.single-content p, .single-content ul, .single-content ol, .single-content h2, .single-content h3 { margin-bottom:1.2rem; }
.single-content a { color:var(--accent); }
.single-content h2, .single-content h3 { font-family:'Syne',sans-serif; }
.single-cta-panel { position:sticky; top:96px; }
.category-pills {
  display:flex; gap:.75rem; flex-wrap:wrap; margin-top:1rem;
}
.category-pill {
  display:inline-flex; padding:.6rem .9rem; border:1px solid var(--border); color:var(--text); text-decoration:none; background:var(--surface);
}
@media (max-width: 1100px) {
  .blog-post-grid { grid-template-columns:repeat(2,1fr); }
  .single-shell { grid-template-columns:1fr; }
  .single-cta-panel { position:static; }
}
@media (max-width: 900px) {
  .issue-feed, .archive-shell, .single-shell { padding-left:1.25rem; padding-right:1.25rem; }
}
@media (max-width: 700px) {
  .blog-post-grid { grid-template-columns:1fr; }
  .blog-grid-panel { grid-template-columns:1fr; }
}



/* === DUPAS BLOG CARD GRID OVERRIDE === */
.dupas-shell{
  width:min(1280px, calc(100% - 48px));
  margin:0 auto;
}

.dupas-site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(7,11,18,.94);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 28px rgba(0,0,0,.28);
}

.dupas-header-inner{
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.dupas-brand{
  display:flex;
  align-items:baseline;
  gap:10px;
  text-decoration:none;
  white-space:nowrap;
}

.dupas-brand__mark{
  color:#86c3ff;
  font-size:1.25rem;
  font-weight:800;
  letter-spacing:.04em;
}

.dupas-brand__text{
  color:#fff;
  font-size:1rem;
  font-weight:700;
  letter-spacing:.03em;
}

.dupas-main-nav{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  justify-content:center;
  flex:1;
}

.dupas-main-nav__link{
  color:rgba(255,255,255,.72);
  text-decoration:none;
  font-weight:600;
  font-size:.95rem;
  transition:all .2s ease;
}

.dupas-main-nav__link:hover,
.dupas-main-nav__link.is-active{
  color:#fff;
}

.dupas-header-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  padding:11px 16px;
  border-radius:12px;
  background:linear-gradient(135deg,#6aa7ff,#8dd6ff);
  color:#0b1220;
  font-weight:800;
  box-shadow:0 10px 24px rgba(106,167,255,.28);
  white-space:nowrap;
}

.dupas-blog-hero{
  padding:56px 0 22px;
}

.dupas-kicker{
  margin:0 0 10px;
  color:#7e8ba0;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.78rem;
  font-weight:700;
}

.dupas-page-title{
  margin:0;
  font-size:clamp(2rem,4vw,3.3rem);
  line-height:1.05;
  color:#f5f9ff;
}

.dupas-page-subtitle{
  max-width:780px;
  margin:14px 0 0;
  color:#a5b3c6;
  line-height:1.75;
  font-size:1.05rem;
}

.dupas-blog-feed{
  padding:26px 0 72px;
}

.dupas-post-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:28px !important;
  align-items:stretch;
}

.dupas-post-card{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  min-height:100%;
  border-radius:18px;
  background:#111827;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 45px rgba(0,0,0,.30);
  transition:transform .2s ease, box-shadow .2s ease;
}

.dupas-post-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 54px rgba(0,0,0,.36);
}

.dupas-post-card__image img{
  width:100%;
  height:240px;
  object-fit:cover;
  display:block;
}

.dupas-post-card__body{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:22px 22px 18px;
}

.dupas-post-card__top{
  flex:1;
}

.dupas-post-card__tax{
  margin:0 0 12px;
  color:#8dd6ff;
  font-size:.76rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.15em;
}

.dupas-post-card__title{
  margin:0 0 14px;
  font-size:1.34rem;
  line-height:1.22;
}

.dupas-post-card__title a{
  color:#ffffff !important;
  text-decoration:none;
}

.dupas-post-card__title a:hover{
  color:#8dd6ff !important;
}

.dupas-post-card__excerpt{
  color:#c6d0dd;
  line-height:1.75;
  font-size:.98rem;
}

.dupas-post-card__excerpt p{
  margin:0;
}

.dupas-post-card__footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
}

.dupas-post-card__link{
  color:#ffffff;
  font-weight:800;
  text-decoration:none;
}

.dupas-post-card__link:hover{
  color:#8dd6ff;
}

.dupas-post-card__date{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
  padding:10px 12px;
  border-radius:999px;
  background:rgba(141,214,255,.13);
  color:#dbeeff;
  font-size:.84rem;
  font-weight:700;
  white-space:nowrap;
}

.dupas-post-card__calendar{
  font-size:.95rem;
  line-height:1;
}

.dupas-pagination{
  margin-top:36px;
}

.dupas-pagination .nav-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.dupas-pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:0 14px;
  border-radius:10px;
  background:#111827;
  border:1px solid rgba(255,255,255,.08);
  text-decoration:none;
  color:#ffffff;
  font-weight:700;
  box-shadow:0 8px 18px rgba(0,0,0,.16);
}

.dupas-pagination .page-numbers.current{
  background:#6aa7ff;
  color:#08111c;
  border-color:#6aa7ff;
}

.dupas-empty-state{
  padding:34px;
  border-radius:18px;
  background:#111827;
  border:1px solid rgba(255,255,255,.08);
  color:#dbe7f5;
  box-shadow:0 18px 45px rgba(0,0,0,.30);
}

@media (max-width: 1100px){
  .dupas-post-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media (max-width: 760px){
  .dupas-shell{
    width:min(100% - 28px, 1280px);
  }

  .dupas-header-inner{
    min-height:auto;
    padding:16px 0;
    align-items:flex-start;
    flex-direction:column;
  }

  .dupas-main-nav{
    width:100%;
    justify-content:flex-start;
    overflow:auto;
  }

  .dupas-post-grid{
    grid-template-columns:1fr !important;
  }

  .dupas-post-card__footer{
    flex-direction:column;
    align-items:flex-start;
  }

  .dupas-post-card__date{
    margin-left:0;
  }
}



/* === DUPAS BLOG CONTINUITY FLOW PATCH === */
.dupas-header-inner{
  display:grid !important;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:24px;
}

.dupas-main-nav{
  justify-content:flex-end !important;
}

.dupas-blog-index,
.dupas-archive,
.dupas-index-fallback{
  position:relative;
  padding:34px 0 96px;
  isolation:isolate;
}

.dupas-blog-index::before,
.dupas-archive::before,
.dupas-index-fallback::before{
  content:'';
  position:absolute;
  inset:18px 0 0;
  z-index:-1;
  background:
    linear-gradient(180deg, rgba(8,12,20,.92) 0%, rgba(8,12,20,.72) 28%, rgba(8,12,20,.82) 100%),
    radial-gradient(circle at 18% 0%, rgba(106,167,255,.10), transparent 34%),
    radial-gradient(circle at 82% 18%, rgba(141,214,255,.08), transparent 30%);
  border-top:1px solid rgba(106,167,255,.14);
  border-bottom:1px solid rgba(106,167,255,.10);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    inset 0 -1px 0 rgba(255,255,255,.02);
}

.dupas-blog-hero{
  padding:40px 0 18px;
  margin-bottom:8px;
}

.dupas-blog-feed{
  padding:6px 0 18px;
}

.dupas-page-title{
  max-width:900px;
  margin-bottom:0;
}

.dupas-page-subtitle{
  max-width:760px;
}

.dupas-post-grid{
  margin-top:12px;
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:28px !important;
}

.dupas-post-card{
  background:
    linear-gradient(180deg, rgba(18,25,38,.96), rgba(16,23,35,.98)),
    radial-gradient(circle at top right, rgba(106,167,255,.08), transparent 35%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 18px 40px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.03);
}

.dupas-post-card:hover{
  transform:translateY(-3px);
  box-shadow:
    0 24px 52px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.04);
}

.dupas-post-card__body{
  padding:24px 24px 18px;
}

.dupas-post-card__title{
  min-height:3.1em;
}

.dupas-post-card__excerpt{
  min-height:4.9em;
}

.dupas-post-card__footer{
  margin-top:24px;
}

.dupas-post-card__date{
  background:linear-gradient(180deg, rgba(106,167,255,.20), rgba(106,167,255,.11));
  border:1px solid rgba(141,214,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

.dupas-pagination{
  margin-top:42px;
}

footer{
  margin-top:0 !important;
  padding-top:44px !important;
  border-top:1px solid rgba(106,167,255,.10);
  background:transparent !important;
}

footer .dupas-shell{
  width:min(1280px, calc(100% - 48px));
  margin:0 auto;
}

@media (max-width: 1100px){
  .dupas-post-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media (max-width: 760px){
  .dupas-header-inner{
    grid-template-columns:1fr;
    align-items:flex-start;
  }

  .dupas-main-nav{
    justify-content:flex-start !important;
  }

  .dupas-post-grid{
    grid-template-columns:1fr !important;
  }
}
