.cewa-wrap{
  --cew-red:     #fd0000;
  --cew-red-dk:  #c50000;
  --cew-red-lt:  #fff3f3;
  --cew-red-bd:  #ffd0d0;
  --cew-orange:  #f39618;
  --cew-orange-lt:#fff3e0;
  --ink:         #1C1C1C;
  --ink-mid:     #484848;
  --ink-soft:    #676767;
  --border:      #e8eaed;
  --bg:          #fafafa;
  --white:       #ffffff;
  --card-bg:     #ffffff;
  --tag-bg:      #fff3f3;

  /* Updated Font Families */
  --font-title: 'Barlow', sans-serif;
  --font-body: 'Source Sans Pro', sans-serif;

  --radius-sm:  8px;
  --radius-md:  16px;
  --radius-lg:  24px;
  --radius-xl:  40px;

  --shadow-card:  0 2px 16px rgba(253,0,0,.07), 0 1px 4px rgba(0,0,0,.04);
  --shadow-hover: 0 12px 48px rgba(253,0,0,.16), 0 2px 8px rgba(0,0,0,.07);
}

/* ─── WRAPPER ─────────────────────────────────────────────── */
.cewa-wrap{
  font-family: var(--font-body);
  color: var(--ink);
  background: var(--bg);
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}

/* ─── HERO BAND ───────────────────────────────────────────── */
.cewa-hero{
  background: var(--white);
  border-bottom: 1px solid var(--border);
  padding: 72px 24px 64px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.cewa-hero::before{
  content:'';
  position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--cew-red) 0%,var(--cew-orange) 55%,var(--cew-red-dk) 100%);
}
.cewa-hero::after{
  content:'';
  position:absolute;
  width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(253,0,0,.05) 0%,transparent 70%);
  top:-200px;left:50%;transform:translateX(-50%);
  pointer-events:none;
}
.cewa-hero-inner{position:relative;z-index:1;max-width:680px;margin:0 auto;}
.cewa-hero-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--cew-red-lt);color:var(--cew-red);
  font-family: var(--font-body);
  font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  padding:7px 16px;border-radius:999px;margin-bottom:24px;
}
.cewa-hero-eyebrow span{
  width:6px;height:6px;border-radius:50%;background:var(--cew-red);flex-shrink:0;
}
.cewa-hero-title{
  font-family: var(--font-title);
  font-size:clamp(2.4rem,6vw,3.8rem);
  font-weight:800;line-height:1.08;
  letter-spacing:-.02em;color:var(--ink);
  margin-bottom:16px;
}
.cewa-hero-title em{font-style:italic;color:var(--cew-red)}
.cewa-hero-sub{
  font-family: var(--font-body);
  font-size:clamp(15px,2vw,17px);
  line-height:1.7;color:var(--ink-soft);
  max-width:520px;margin:0 auto 36px;
  font-weight:400;
}
.cewa-hero-stats{
  display:flex;align-items:center;justify-content:center;gap:32px;flex-wrap:wrap;
}
.cewa-hero-stat{text-align:center;}
.cewa-hero-stat-num{
  font-family: var(--font-title);
  font-size:1.9rem;font-weight:800;color:var(--cew-red);line-height:1;display:block;
}
.cewa-hero-stat-label{
  font-family: var(--font-body);
  font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-soft);margin-top:3px;display:block;
}
.cewa-hero-stat-sep{width:1px;height:36px;background:var(--border);}

/* ─── RESULTS META ────────────────────────────────────────── */
.cewa-results-meta{
  max-width:1100px;margin:32px auto 0;padding:0 24px;
  display:flex;align-items:center;justify-content:flex-end;
  flex-wrap:wrap;gap:8px;
}
.cewa-results-count{
  font-family: var(--font-body);
  font-size:13px;color:var(--ink-soft);
  font-weight:400;
}
.cewa-results-count strong{color:var(--ink);font-weight:700;}

/* ─── FEATURED POST (first card, full-width) ──────────────── */
.cewa-featured-post{
  max-width:1100px;margin:32px auto 0;padding:0 24px;
  display:none;
}
.cewa-featured-card{
  background:var(--white);border:1px solid var(--border);
  border-radius:var(--radius-lg);overflow:hidden;
  box-shadow:var(--shadow-card);
  display:grid;grid-template-columns:1.1fr 1fr;
  transition:box-shadow .3s,transform .3s;
  text-decoration:none;color:inherit;
  opacity:0;animation:cewaFadeUp .7s .1s ease forwards;
}
.cewa-featured-card:hover{
  box-shadow:var(--shadow-hover);transform:translateY(-3px);
}
@media(max-width:740px){
  .cewa-featured-card{grid-template-columns:1fr;}
}
.cewa-featured-img-wrap{
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
}

.cewa-featured-img-wrap img{
    width:100%;
    height:auto;
    max-height:none;
}
.cewa-featured-card:hover .cewa-featured-img-wrap img{transform:scale(1.04);}
.cewa-featured-img-placeholder{
  width:100%;height:100%;min-height:340px;
  display:flex;align-items:center;justify-content:center;
  font-family: var(--font-body);
  font-size:18px;color:var(--cew-red);font-style:italic;
  background:linear-gradient(135deg,var(--cew-red-lt),var(--white));
}

/* Featured category badge - RIGHT side */
.cewa-featured-cat-wrap{
  position:absolute;top:12px;right:12px;
  z-index:2;
}
.cewa-featured-cat{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--cew-red);color:#fff;
  font-family: var(--font-body);
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:5px 12px;border-radius:999px;
  width:fit-content;
  box-shadow:0 2px 6px rgba(0,0,0,0.1);
}
/* Featured "NEW" badge - appears on latest blog only (hero section) */
.cewa-featured-new{
  position:absolute;top:12px;left:12px;
  background:var(--cew-orange);color:#fff;
  font-family: var(--font-body);
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:5px 12px;border-radius:999px;
  box-shadow:0 2px 6px rgba(243,150,24,0.3);
  z-index:2;
}

.cewa-featured-body{
  padding:48px 44px;display:flex;flex-direction:column;justify-content:center;
}
@media(max-width:740px){.cewa-featured-body{padding:32px 28px;}}
.cewa-featured-title{
  font-family: var(--font-title);
  font-size:clamp(1.6rem,3vw,2.2rem);
  font-weight:800;color:var(--ink);
  line-height:1.18;letter-spacing:-.02em;
  margin-bottom:14px;
  transition:color .2s;
}
.cewa-featured-card:hover .cewa-featured-title{color:var(--cew-red);}
.cewa-featured-excerpt{
  font-family: var(--font-body);
  font-size:15px;line-height:1.75;color:var(--ink-soft);
  margin-bottom:28px;
  font-weight:400;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.cewa-featured-meta{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
}
.cewa-featured-avatar{
  width:38px;height:38px;border-radius:50%;object-fit:cover;
  border:2px solid var(--cew-red-lt);background:var(--cew-red-lt);flex-shrink:0;
}
.cewa-featured-author-name{
  font-family: var(--font-body);
  font-size:13px;font-weight:600;color:var(--ink);display:block;
}
.cewa-featured-date{
  font-family: var(--font-body);
  font-size:12px;color:var(--ink-soft);
  font-weight:400;
}
.cewa-featured-sep{width:1px;height:28px;background:var(--border);}
.cewa-featured-rt{
  display:flex;align-items:center;gap:5px;
  font-family: var(--font-body);
  font-size:12px;color:var(--ink-soft);
  font-weight:400;
}
.cewa-featured-rt svg{color:var(--cew-red);width:13px;height:13px;}
.cewa-featured-cta{
  margin-left:auto;
  display:inline-flex;align-items:center;gap:6px;
  background:var(--cew-red);color:#fff;
  font-family: var(--font-body);
  font-size:12px;font-weight:700;letter-spacing:.04em;
  padding:9px 20px;border-radius:999px;
  text-decoration:none;flex-shrink:0;
  transition:background .2s,transform .2s;
}
.cewa-featured-cta:hover{background:var(--cew-red-dk);transform:translateX(2px);}
.cewa-featured-cta svg{width:13px;height:13px;}

/* ─── SECTION DIVIDER ─────────────────────────────────────── */
.cewa-section-divider{
  max-width:1100px;margin:48px auto 0;padding:0 24px;
  display:flex;align-items:center;gap:16px;
}
.cewa-section-divider-line{flex:1;height:1px;background:var(--border);}
.cewa-section-divider-label{
  font-family: var(--font-body);
  font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-soft);white-space:nowrap;
}

/* ─── POSTS GRID ──────────────────────────────────────────── */
.cewa-grid-wrap{
  max-width:1100px;margin:28px auto 0;padding:0 24px;
}
.cewa-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
}
@media(max-width:1000px){
  .cewa-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:640px){
  .cewa-grid{grid-template-columns:1fr;}
}

/* ─── POST CARD ───────────────────────────────────────────────── */
.cewa-card{
  background:var(--card-bg);
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  overflow:hidden;
  box-shadow:var(--shadow-card);
  transition:all .3s ease;
  text-decoration:none;color:inherit;
  display:flex;flex-direction:column;
  opacity:0;
  animation:cewaFadeUp .55s ease forwards;
}
.cewa-card:hover{
  box-shadow:var(--shadow-hover);
  transform:translateY(-5px);
  border-color:var(--cew-red-lt);
}

/* Card image */
.cewa-card-img{
  width:100%;aspect-ratio:16/9;overflow:hidden;
  background:var(--cew-red-lt);position:relative;flex-shrink:0;
}
.cewa-card-img img{
  width:100%;height:100%;object-fit:contain;display:block;
  transition:transform .55s ease;
}
.cewa-card:hover .cewa-card-img img{transform:scale(1.07);}
.cewa-card-img-ph{
  width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;
  font-family: var(--font-body);
  font-size:13px;color:var(--cew-red);font-style:italic;
  background:linear-gradient(135deg,var(--cew-red-lt) 0%,#fff3f3 100%);
  font-weight:400;
}

/* Category badge on image - MOVED TO RIGHT SIDE */
.cewa-card-cat{
  position:absolute;top:12px;right:12px;
  background:var(--cew-red);color:#fff;
  font-family: var(--font-body);
  font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:4px 10px;border-radius:999px;
  z-index:2;
  box-shadow:0 1px 3px rgba(0,0,0,0.1);
}

/* NEW badge - NEVER shown on grid cards (only featured hero gets it) */
/* .cewa-card-new is intentionally not used in grid cards */

/* Card body */
.cewa-card-body{
  padding:20px 22px 22px;
  display:flex;flex-direction:column;flex:1;
}
.cewa-card-title{
  font-family: var(--font-title);
  font-size:1.05rem;font-weight:700;
  color:var(--ink);line-height:1.32;
  margin-bottom:10px;letter-spacing:-.01em;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
  transition:color .2s;
}
.cewa-card:hover .cewa-card-title{color:var(--cew-red);}
.cewa-card-excerpt{
  font-family: var(--font-body);
  font-size:13px;line-height:1.65;color:var(--ink-soft);
  margin-bottom:18px;flex:1;
  font-weight:400;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}

/* Card footer */
.cewa-card-footer{
  display:flex;align-items:center;
  padding-top:14px;border-top:1px solid var(--border);
  gap:8px;
}
.cewa-card-avatar{
  width:28px;height:28px;border-radius:50%;object-fit:cover;
  border:2px solid var(--cew-red-lt);background:var(--cew-red-lt);flex-shrink:0;
}
.cewa-card-author{
  font-family: var(--font-body);
  font-size:11px;font-weight:600;color:var(--ink-mid);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.cewa-card-date{
  font-family: var(--font-body);
  font-size:11px;color:var(--ink-soft);flex-shrink:0;
  font-weight:400;
}
.cewa-card-rt{
  display:flex;align-items:center;gap:4px;
  font-family: var(--font-body);
  font-size:11px;color:var(--cew-red);font-weight:600;flex-shrink:0;
}
.cewa-card-rt svg{width:11px;height:11px;}

/* ─── SKELETON LOADERS ────────────────────────────────────── */
.cewa-skeleton{
  background:var(--card-bg);border:1px solid var(--border);
  border-radius:var(--radius-md);overflow:hidden;
}
.cewa-skel-img{
  width:100%;aspect-ratio:16/9;
  background:linear-gradient(90deg,#eff1f3 25%,#fafafa 50%,#eff1f3 75%);
  background-size:200% 100%;animation:cewaSkel 1.6s infinite;
}
.cewa-skel-body{padding:20px 22px;}
.cewa-skel-line{
  height:13px;border-radius:6px;margin-bottom:10px;
  background:linear-gradient(90deg,#eff1f3 25%,#fafafa 50%,#eff1f3 75%);
  background-size:200% 100%;animation:cewaSkel 1.6s infinite;
}
.cewa-skel-line.w90{width:90%}
.cewa-skel-line.w75{width:75%}
.cewa-skel-line.w55{width:55%}
.cewa-skel-line.w40{width:40%}

/* ─── EMPTY / ERROR STATES ────────────────────────────────── */
.cewa-empty{
  grid-column:1/-1;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:80px 24px;text-align:center;
}
.cewa-empty-icon{
  width:64px;height:64px;border-radius:50%;
  background:var(--cew-red-lt);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:20px;
}
.cewa-empty-icon svg{color:var(--cew-red);}
.cewa-empty-title{
  font-family: var(--font-title);
  font-size:1.35rem;font-weight:700;color:var(--ink);margin-bottom:8px;
}
.cewa-empty-sub{
  font-family: var(--font-body);
  font-size:14px;color:var(--ink-soft);
  font-weight:400;
}

/* ─── LOAD MORE SECTION ───────────────────────────────────── */
.cewa-load-more-wrap{
  max-width:1100px;margin:52px auto 80px;
  padding:0 24px;
  display:flex;flex-direction:column;align-items:center;gap:20px;
}
.cewa-progress-bar{
  width:100%;max-width:400px;
  height:4px;background:var(--border);border-radius:999px;overflow:hidden;
}
.cewa-progress-fill{
  height:100%;background:linear-gradient(90deg,var(--cew-red),var(--cew-red-dk));
  border-radius:999px;transition:width .4s ease;
}
.cewa-progress-label{
  font-family: var(--font-body);
  font-size:13px;color:var(--ink-soft);
  text-align:center;
  font-weight:400;
}
.cewa-progress-label strong{color:var(--ink);font-weight:700;}
.cewa-load-btn{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--white);color:var(--cew-red);
  border:2px solid var(--cew-red);
  font-family: var(--font-body);
  font-size:14px;font-weight:700;
  padding:14px 40px;border-radius:999px;
  cursor:pointer;transition:all .25s ease;
  position:relative;overflow:hidden;
}
.cewa-load-btn::before{
  content:'';
  position:absolute;inset:0;
  background:var(--cew-red);
  transform:translateY(100%);
  transition:transform .3s ease;
  z-index:0;
}
.cewa-load-btn:hover::before{transform:translateY(0);}
.cewa-load-btn:hover{color:#fff;}
.cewa-load-btn span,.cewa-load-btn svg{position:relative;z-index:1;}
.cewa-load-btn svg{width:16px;height:16px;transition:transform .3s;}
.cewa-load-btn:hover svg{transform:translateY(3px);}
.cewa-load-btn:disabled{opacity:.55;cursor:not-allowed;}
.cewa-load-btn:disabled::before{display:none;}
.cewa-load-btn.loading span::after{
  content:'';display:inline-block;
  width:14px;height:14px;margin-left:8px;
  border:2px solid var(--cew-red);border-top-color:transparent;
  border-radius:50%;animation:cewaSpin .7s linear infinite;
  vertical-align:middle;
}
.cewa-all-loaded{
  display:flex;align-items:center;gap:12px;
  font-family: var(--font-body);
  font-size:13px;color:var(--ink-soft);
  font-weight:400;
}
.cewa-all-loaded::before,.cewa-all-loaded::after{
  content:'';flex:1;height:1px;background:var(--border);
  min-width:60px;
}

/* ─── ANIMATIONS ──────────────────────────────────────────── */
@keyframes cewaFadeUp{
  from{opacity:0;transform:translateY(22px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes cewaSkel{
  0%{background-position:200% 0}
  100%{background-position:-200% 0}
}
@keyframes cewaSpin{
  to{transform:rotate(360deg)}
}

/* ─── RESPONSIVE ──────────────────────────────────────────── */
@media(max-width:680px){
  .cewa-hero{padding:52px 16px 44px;}
  .cewa-grid-wrap{padding:0 16px;}
  .cewa-load-more-wrap{padding:0 16px;margin-bottom:56px;}
  .cewa-results-meta{padding:0 16px;}
  .cewa-featured-post{padding:0 16px;}
  .cewa-section-divider{padding:0 16px;}
  .cewa-hero-stats{gap:20px;}
  .cewa-hero-stat-sep{display:none;}
}

/* Inline style */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --red:    #fd0000;
  --red2:   #c50000;
  --ink:    #1a1410;
  --muted:  #7a6f65;
  --light:  #9a8f85;
  --bg:     #f5f3ef;
  --white:  #ffffff;
  --border: rgba(0,0,0,0.08);
  --font:   'Mona Sans', sans-serif;
  --ease:   cubic-bezier(0.76, 0, 0.24, 1);
}


/* ─── Single blog post (3-column editorial layout) ─── */
.blog-single-wrap {
  --color-primary:  #E31507;
  --color-dark:     #1A1A1A;
  --color-body:     #444444;
  --color-light-bg: #F5F5F5;
  --color-white:    #FFFFFF;
  --color-border:   #E0E0E0;
  --font-primary:   'Roboto', sans-serif;
  --font-heading:   'Roboto Slab', serif;
  background: var(--color-white);
  font-family: var(--font-primary);
}
.back-to-blog {
  display: inline-flex; align-items: center; gap: 6px;
  color: var(--color-primary); font-size: 12px; font-weight: 700;
  text-decoration: none; text-transform: uppercase; letter-spacing: .8px;
  padding: 8px 0 10px 24px; transition: opacity .2s;
}
.back-to-blog:hover { opacity: .75; }
.back-to-blog svg { width: 15px; height: 15px; }
.blog-hero { max-width: 1140px; margin: 0 auto; padding: 0 20px; display: block; overflow: hidden; }
.blog-hero img { width: 100%; height: auto; display: block; border-radius: 8px; }
.blog-post-header { max-width: 1140px; margin: 24px auto 0; padding: 0 20px; }
.blog-post-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 14px; }
.blog-cat-badge {
  background: var(--color-primary); color: #fff !important; -webkit-text-fill-color: #fff !important;
  font-size: 10px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase;
  padding: 5px 14px; border-radius: 20px; text-decoration: none; transition: opacity .2s;
}
.blog-cat-badge:hover { opacity: .85; }
.blog-meta-item {
  font-size: 12px; color: #888; display: inline-flex; align-items: center; gap: 5px;
  background: #F5F5F5; padding: 5px 12px; border-radius: 20px;
}
.blog-meta-item svg { width: 13px; height: 13px; }
.blog-post-title {
  font-family: var(--font-heading); font-size: 32px; font-weight: 700;
  color: #1A1A1A !important; -webkit-text-fill-color: #1A1A1A !important;
  line-height: 1.3; margin: 0 0 8px; max-width: 820px;
}
.blog-content-grid {
  display: grid; grid-template-columns: 230px 1fr 230px; gap: 32px;
  max-width: 1140px; margin: 0 auto; padding: 36px 20px 70px; align-items: start;
}
.blog-toc { position: sticky; top: 100px; }
.blog-toc-inner { background: #F0F0F0 !important; border-left: 4px solid #E31507; border-radius: 3px; padding: 18px 18px 18px 16px; }
.blog-toc-label { font-size: 11px; font-weight: 700; color: var(--color-primary); text-transform: uppercase; letter-spacing: 1px; margin: 0 0 4px; }
.blog-toc-heading { font-family: var(--font-heading); font-size: 14px; font-weight: 700; color: var(--color-dark); margin: 0 0 14px; padding-bottom: 10px; border-bottom: 1px solid var(--color-border); }
.blog-toc-list { list-style: none; padding: 0; margin: 0; }
.blog-toc-list li { margin-bottom: 2px; }
.blog-toc-list a {
  font-size: 12.5px; color: #444444 !important; -webkit-text-fill-color: #444444 !important;
  text-decoration: none; display: block; padding: 5px 6px; border-radius: 2px; line-height: 1.4;
  transition: background .15s, color .15s, padding-left .15s;
}
.blog-toc-list a:hover,
.blog-toc-list a.toc-active {
  color: #E31507 !important; -webkit-text-fill-color: #E31507 !important;
  background: rgba(227,21,7,.07); padding-left: 10px;
}
.blog-toc-list .toc-h3 > a { padding-left: 18px; font-size: 12px; color: #666 !important; -webkit-text-fill-color: #666 !important; }
.blog-toc-list .toc-h3 > a:hover { color: #E31507 !important; -webkit-text-fill-color: #E31507 !important; }
.blog-toc-empty { font-size: 12px; color: #888; margin: 0; }
.blog-article { min-width: 0; }
.blog-article-lead {
  font-size: 15px; color: var(--color-body); line-height: 1.75; margin-bottom: 28px;
  padding: 16px 20px; background: var(--color-light-bg); border-left: 4px solid var(--color-primary); border-radius: 2px;
}
.blog-article h2,
.blog-article h2 * {
  font-family: var(--font-heading) !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  color: #1A1A1A !important;
  -webkit-text-fill-color: #1A1A1A !important;
  background: none !important;
  margin: 34px 0 14px !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid #E31507 !important;
  scroll-margin-top: 110px;
}
.blog-article h3,
.blog-article h3 * {
  font-family: var(--font-heading) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #1A1A1A !important;
  -webkit-text-fill-color: #1A1A1A !important;
  background: none !important;
  margin: 24px 0 10px !important;
  padding-left: 10px !important;
  border-left: 3px solid #E31507 !important;
  scroll-margin-top: 110px;
}
.blog-article p { font-size: 14.5px; color: var(--color-body); line-height: 1.8; margin-bottom: 16px; }
.blog-article strong { color: #1A1A1A !important; -webkit-text-fill-color: #1A1A1A !important; }
.blog-article a { color: #E31507 !important; -webkit-text-fill-color: #E31507 !important; }
.blog-article a:hover { text-decoration: underline !important; }
.blog-article h2 a,
.blog-article h3 a { color: #1A1A1A !important; -webkit-text-fill-color: #1A1A1A !important; }
.blog-article h2 a:hover,
.blog-article h3 a:hover { color: #E31507 !important; -webkit-text-fill-color: #E31507 !important; }
.blog-article ul, .blog-article ol { padding-left: 22px; margin-bottom: 18px; }
.blog-article li { font-size: 14.5px; color: var(--color-body); line-height: 1.75; margin-bottom: 6px; }
.blog-article ul li::marker { color: var(--color-primary); }
.blog-article img { max-width: 100%; border-radius: 4px; margin: 18px 0; display: block; height: auto; }
.blog-article table { width: 100%; border-collapse: collapse; margin: 20px 0; font-size: 13.5px; }
.blog-article th,
.blog-article td { border: 1px solid var(--color-border); padding: 10px 12px; text-align: left; color: var(--color-body); }
.blog-article th { background: var(--color-light-bg); font-weight: 700; color: var(--color-dark); }
.blog-article .post-tags { margin-top: 28px; padding-top: 16px; border-top: 1px solid var(--color-border); font-size: 12px; color: #888; }
.blog-article .post-tags a {
  display: inline-block; margin: 0 6px 6px 0; padding: 4px 10px;
  background: var(--color-light-bg); border-radius: 14px; font-size: 11px; font-weight: 600;
  color: var(--color-dark) !important; -webkit-text-fill-color: var(--color-dark) !important; text-decoration: none;
}
.blog-article .post-tags a:hover { color: #E31507 !important; -webkit-text-fill-color: #E31507 !important; }
.blog-recent { position: sticky; top: 100px; }
.blog-recent-heading {
  font-family: var(--font-heading); font-size: 15px; font-weight: 700; color: var(--color-dark);
  text-transform: uppercase; letter-spacing: .5px; padding-bottom: 10px;
  border-bottom: 2px solid var(--color-primary); margin: 0 0 16px;
}
.recent-post-card {
  display: flex; gap: 11px; align-items: flex-start; margin-bottom: 16px;
  text-decoration: none; padding-bottom: 16px; border-bottom: 1px solid var(--color-border); transition: opacity .2s;
}
.recent-post-card:last-child { border-bottom: none; }
.recent-post-card:hover { opacity: .78; }
.recent-post-thumb { width: 72px; height: 54px; object-fit: cover; border-radius: 3px; flex-shrink: 0; background: var(--color-light-bg); }
.recent-post-thumb-placeholder { display: block; }
.recent-post-info { flex: 1; min-width: 0; }
.recent-post-title {
  font-size: 12.5px; font-weight: 600; color: var(--color-dark); line-height: 1.45;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 5px;
}
.recent-post-date { font-size: 11px; color: #888; }
@media (max-width: 1024px) {
  .blog-content-grid { grid-template-columns: 200px 1fr 200px; }
  .blog-post-title { font-size: 26px; }
}
@media (max-width: 768px) {
  .blog-content-grid { grid-template-columns: 1fr; padding: 24px 16px 48px; gap: 20px; }
  .blog-toc, .blog-recent { position: static; }
  .blog-toc { order: -1; }
  .blog-post-title { font-size: 22px; }
  .blog-hero { max-height: 280px; }
  .blog-hero img { height: 100%; max-height: 280px; object-fit: cover; }
}
@media (max-width: 480px) {
  .blog-hero { max-height: 200px; }
  .blog-hero img { max-height: 200px; }
  .blog-post-title { font-size: 19px; }
}
.cewa-pagination {
  margin: 2.5rem 0 3.5rem;
  display: flex;
  justify-content: center;
  padding: 0 20px;
}
.cewa-pager {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  width: 100%;
  max-width: 720px;
}
.cewa-pager-meta {
  margin: 0;
  font-family: var(--font-body, 'Source Sans Pro', sans-serif);
  font-size: 13px;
  color: var(--ink-soft, #676767);
}
.cewa-pager-meta strong {
  color: var(--ink, #1C1C1C);
  font-weight: 700;
}
.cewa-pager-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.cewa-pager-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 12px;
  border: 1px solid var(--border, #e8eaed);
  border-radius: 8px;
  background: #fff;
  color: var(--ink-mid, #484848) !important;
  -webkit-text-fill-color: var(--ink-mid, #484848) !important;
  font-family: var(--font-body, 'Source Sans Pro', sans-serif);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none !important;
  line-height: 1;
  transition: background .15s, border-color .15s, color .15s;
}
a.cewa-pager-btn:hover {
  border-color: var(--cew-red, #fd0000);
  color: var(--cew-red, #fd0000) !important;
  -webkit-text-fill-color: var(--cew-red, #fd0000) !important;
  background: #fff5f5;
}
.cewa-pager-btn.is-active {
  background: var(--cew-red, #fd0000);
  border-color: var(--cew-red, #fd0000);
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.cewa-pager-btn.is-disabled {
  opacity: .45;
  cursor: not-allowed;
  background: #fafafa;
}
.cewa-empty {
  grid-column: 1 / -1;
  text-align: center;
  color: var(--ink-soft, #676767);
  padding: 2rem;
}
