.cat-row{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center;margin-top:1.9rem}.cat-chip{font-family:var(--f-orn);font-weight:600;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bone-dim);border:1px solid var(--hair);border-radius:999px;padding:.55em 1.15em;background:rgba(0,0,0,.2);cursor:pointer;transition:border-color .25s var(--ease),color .25s,background .25s,transform .2s}.cat-chip:hover{border-color:var(--gold-line);color:var(--bone);transform:translateY(-1px)}.cat-chip.active{border-color:var(--oxblood-2);color:var(--bone);background:rgba(168,48,42,.16)}.post-hidden{display:none !important}.blog-search{position:relative;display:flex;align-items:center;max-width:460px;margin:1.7rem auto 0}.blog-search .bs-ic{position:absolute;left:1.05rem;opacity:.85;pointer-events:none}.blog-search input{width:100%;background:rgba(0,0,0,.3);border:1px solid var(--hair);border-radius:999px;color:var(--bone);font-family:var(--f-body);font-size:1.06rem;padding:.85rem 2.7rem .85rem 2.9rem;text-align:left;transition:border-color .25s var(--ease),box-shadow .25s,background .25s}.blog-search input::placeholder{color:var(--bone-dim)}.blog-search input:focus{outline:none;border-color:var(--oxblood-2);box-shadow:0 0 0 3px var(--oxblood-gl);background:rgba(0,0,0,.42)}.blog-search input::-webkit-search-decoration,.blog-search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.bs-clear{position:absolute;right:.6rem;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:var(--bone-dim);font-family:var(--f-orn);font-size:.85rem;display:grid;place-items:center;cursor:pointer;transition:color .2s,background .2s}.bs-clear:hover{color:var(--bone);background:rgba(168,48,42,.2)}.result-count{font-family:var(--f-orn);font-weight:500;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dim);margin:1.3rem 0 0}.plate{position:relative;overflow:hidden;background:radial-gradient(120% 80% at 50% -10%,rgba(60,42,30,.55),transparent 60%),radial-gradient(100% 100% at 50% 120%,rgba(0,0,0,.7),transparent 55%),linear-gradient(180deg,#1d1610,#0f0b09)}.plate::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");
  opacity:.06; mix-blend-mode:overlay; }
.plate .g-main{ position:absolute; inset:0; display:grid; place-items:center;
  font-family:var(--f-orn); color:var(--gold); opacity:.14; line-height:1; }
.plate .g-flash{ position:absolute; font-family:var(--f-orn); color:var(--gold); opacity:.12; line-height:1; pointer-events:none; }

/* ----------------------------- FEATURED POST --------------------- */
.feat{
  display:grid; grid-template-columns:1.12fr .88fr; gap:0;
  border:1px solid var(--hair); border-radius:10px; overflow:hidden;
  background:linear-gradient(180deg,var(--char-2),var(--panel));
  transition:border-color .4s var(--ease), box-shadow .4s var(--ease), transform .4s var(--ease);
}
.feat:hover{ border-color:var(--gold-line); box-shadow:0 28px 70px rgba(0,0,0,.5); transform:translateY(-3px); }
@media(max-width:860px){ .feat{ grid-template-columns:1fr; } }
.feat-body{ padding:clamp(28px,4vw,56px); display:flex; flex-direction:column; justify-content:center; }
.feat-tag{ font-family:var(--f-orn); font-weight:600; font-size:.66rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--oxblood-2); display:inline-flex; align-items:center; gap:.6em; }
.feat-tag::before{ content:"✦"; color:var(--oxblood); font-size:.8em; }
.feat-title{ font-family:var(--f-black); font-weight:600; font-size:clamp(2rem,3.6vw,3.1rem); line-height:1.02; margin:.45em 0 .35em; color:var(--bone); }
.feat-excerpt{ color:var(--bone-2); max-width:52ch; }
.feat-art{ position:relative; min-height:320px; border-left:1px solid var(--hair); }
@media(max-width:860px){ .feat-art{ border-left:0; border-top:1px solid var(--hair); min-height:200px; order:-1; } }
.feat-art .g-main{ font-size:clamp(120px,22vw,260px); }

/* ----------------------------- POST GRID CARDS ------------------- */
.post-card{ display:flex; flex-direction:column; padding-top:0; overflow:hidden; }
.post-thumb{
  position:relative; height:148px; margin:-1px -1px 1.5rem; border-bottom:1px solid var(--hair);
  display:grid; place-items:center;
}
.post-thumb .g-main{ position:static; font-size:3.2rem; opacity:.5; }
.post-card h3{ margin:.1em 0 .45em; }
.post-card .excerpt{ color:var(--bone-dim); margin:0; flex:1; }

/* meta row (date · read time) used on cards + featured */
.post-meta{ display:flex; flex-wrap:wrap; align-items:center; gap:.6em; margin-top:1.3rem;
  font-family:var(--f-orn); font-weight:500; font-size:.66rem; letter-spacing:.16em; text-transform:uppercase; color:var(--gold-2); }
.post-meta .sep{ color:var(--gold-dim); opacity:.7; padding:0; }
.post-meta .cat{ color:var(--oxblood-2); }

/* ----------------------------- NEWSLETTER BAND ------------------- */
.news{ display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(24px,4vw,56px); align-items:center; }
@media(max-width:780px){ .news{ grid-template-columns:1fr; } }
.news-form{ display:flex; gap:.6rem; flex-wrap:wrap; }
.news-form input{
  flex:1; min-width:220px; background:rgba(0,0,0,.3); border:1px solid var(--hair); border-radius:5px;
  color:var(--bone); font-family:var(--f-body); font-size:1.05rem; padding:.95rem 1.05rem;
  transition:border-color .25s, box-shadow .25s;
}
.news-form input:focus{ outline:none; border-color:var(--oxblood-2); box-shadow:0 0 0 3px var(--oxblood-gl); }
.news-note{ font-size:.86rem; color:var(--bone-dim); margin:.9rem 0 0; }

/* ----------------------------- ARTICLE (LONG-FORM) --------------- */
.article{ max-width:760px; margin:0 auto; }
.byline{
  display:flex; flex-wrap:wrap; gap:.7em; align-items:center; justify-content:center; margin-top:1.5rem;
  font-family:var(--f-orn); font-weight:500; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--gold-2);
}
.byline .sep{ color:var(--gold-dim); opacity:.7; }
.byline .author{ color:var(--bone-2); }

.article-body{ font-size:1.16rem; line-height:1.82; color:var(--bone-2); }
.article-body h2{ font-family:var(--f-black); font-weight:600; font-size:clamp(1.7rem,3vw,2.3rem);
  color:var(--bone); line-height:1.1; margin:2.1em 0 .55em; }
.article-body h2 .lead-glyph{ color:var(--oxblood-2); font-family:var(--f-orn); font-size:.7em; margin-right:.35em; }
.article-body h3{ font-family:var(--f-black); font-weight:500; font-size:1.42rem; color:var(--bone); margin:1.7em 0 .4em; }
.article-body p{ margin:0 0 1.3em; }
.article-body > p:first-of-type::first-letter{
  font-family:var(--f-black); font-weight:700; float:left; font-size:4.2em; line-height:.66;
  padding:.06em .14em 0 0; color:var(--oxblood);
}
.article-body a{ color:var(--gold-2); text-decoration:underline; text-decoration-color:var(--gold-line); text-underline-offset:3px; transition:color .2s; }
.article-body a:hover{ color:var(--bone); text-decoration-color:var(--gold); }
.article-body strong{ color:var(--bone); font-weight:600; }
.article-body em{ color:var(--bone); }
.article-body ul{ list-style:none; padding:0; margin:0 0 1.4em; display:grid; gap:.7em; }
.article-body ul li{ position:relative; padding-left:1.85em; color:var(--bone-2); }
.article-body ul li::before{ content:"✠";position:absolute;left:0;top:0;color:var(--oxblood-2);font-family:var(--f-orn)}.article-body hr{border:0;height:1px;background:var(--hair);margin:2.4em 0}.pullquote{margin:1.8em 0;padding:.2em 0 .2em 1.5rem;border-left:2px solid var(--oxblood);font-family:var(--f-black);font-weight:500;font-style:normal;font-size:clamp(1.5rem,2.7vw,2rem);line-height:1.24;color:var(--bone)}.pullquote cite{display:block;margin-top:.7rem;font-family:var(--f-orn);font-style:normal;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2)}.article-callout{margin:2em 0}.article-callout .h3{margin-bottom:.3em}.article-foot{max-width:760px;margin:clamp(40px,6vw,72px) auto 0}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.5vw,30px)}@media(max-width:760px){.related-grid{grid-template-columns:1fr}}