/* SHARED COMPONENTS: article cards, section header, sidebar widgets */
  .section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:2px solid var(--navy);margin-bottom:24px}
  .section-header h2{font-family:var(--serif);font-size:22px;font-weight:900;color:var(--text);letter-spacing:-.02em;display:flex;align-items:center;gap:12px}
  .section-header h2::before{content:'';width:4px;height:22px;background:var(--red);border-radius:2px}
  .section-header .view-all{font-size:12px;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:4px;transition:gap .15s}
  .section-header .view-all:hover{gap:8px}
  .articles-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
  @media(max-width:640px){.articles-grid{grid-template-columns:1fr}}
  .article-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:all .2s;display:flex;flex-direction:column}
  .article-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--border-2)}
  .article-card:hover .article-card-title{color:var(--red)}
  .article-card-img{aspect-ratio:16/9;background:var(--bg-3);overflow:hidden;position:relative}
  .article-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
  .article-card:hover .article-card-img img{transform:scale(1.04)}
  .badge{display:inline-block;padding:4px 10px;background:var(--red);color:#fff;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border-radius:3px;line-height:1}
  .badge.navy{background:var(--navy)}
  .article-card-img .badge{position:absolute;top:12px;left:12px}
  .article-card-body{padding:18px}
  .article-card-meta{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--text-3);margin-bottom:8px}
  .article-card-meta .dot{color:var(--border-2)}
  .article-card-title{font-family:var(--serif);font-size:18px;font-weight:700;line-height:1.35;color:var(--text);margin-bottom:10px;transition:color .15s;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .article-card-excerpt{font-size:13.5px;color:var(--text-2);line-height:1.55;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .article-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--border);font-size:11.5px;color:var(--text-3)}
  .article-card-footer span{display:flex;align-items:center;gap:4px}

  /* SIDEBAR */
  .sidebar{display:flex;flex-direction:column;gap:32px}
  .widget{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
  .widget-header{padding:16px 20px;background:var(--bg-2);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
  .widget-header h3{font-family:var(--serif);font-size:15px;font-weight:900;color:var(--text);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:8px}
  .widget-header h3::before{content:'';width:3px;height:16px;background:var(--red);border-radius:2px}
  .widget-body{padding:16px 20px}
  .trending-list{display:flex;flex-direction:column;gap:16px}
  .trending-item{display:flex;gap:14px;cursor:pointer;padding:4px 0;transition:all .15s}
  .trending-item:hover .trending-title{color:var(--red)}
  .trending-rank{font-family:var(--serif);font-size:26px;font-weight:900;color:var(--border-2);line-height:1;flex-shrink:0;width:28px}
  .trending-item:hover .trending-rank{color:var(--red)}
  .trending-body{flex:1;min-width:0}
  .trending-title{font-family:var(--serif);font-size:14px;font-weight:700;line-height:1.35;color:var(--text);margin-bottom:4px;transition:color .15s;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .trending-meta{font-size:11px;color:var(--text-3);display:flex;align-items:center;gap:6px}
  .newsletter-widget{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);color:#fff;border-radius:var(--radius);padding:24px;border:none;position:relative;overflow:hidden}
  .newsletter-widget::before{content:'';position:absolute;top:-40px;right:-40px;width:120px;height:120px;background:rgba(200,16,46,.2);border-radius:50%;filter:blur(30px)}
  .newsletter-widget h3{font-family:var(--serif);font-size:18px;font-weight:900;margin-bottom:6px;position:relative}
  .newsletter-widget p{font-size:13px;color:rgba(255,255,255,.7);margin-bottom:16px;line-height:1.5;position:relative}
  .newsletter-form{display:flex;gap:8px;position:relative}
  .newsletter-form input{flex:1;padding:10px 12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:13px;outline:none;transition:all .15s;min-width:0}
  .newsletter-form input::placeholder{color:rgba(255,255,255,.5)}
  .newsletter-form input:focus{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.4)}
  .newsletter-form button{padding:10px 16px;background:var(--red);color:#fff;border:none;border-radius:4px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;transition:background .15s;white-space:nowrap}
  .newsletter-form button:hover{background:var(--red-hover)}
  .about-widget p{font-size:13.5px;color:var(--text-2);line-height:1.65;margin-bottom:12px}
  .about-widget a{color:var(--red);font-weight:600;font-size:13px}
  .about-widget a:hover{text-decoration:underline}
