/* ew-blog-responsive.css — GENERATED, do not edit by hand.
   (1) undo the mock's fixed-artboard width/overflow on .ew-blog
   (2) the design's .ew-blog.mobile rules, rehosted into a real media query. */
.ew-blog { width: 100%; max-width: none; overflow: visible; }

@media (max-width: 880px) {
  .ew-blog { width: 100%; font-size: 16px; }
  .ew-blog .ewb-wrap { padding: 0 20px; }
  .ew-blog .ewb-header-in { display: none; }
  .ew-blog .ewb-hero { padding: 32px 0 26px; }
  .ew-blog .ewb-hero h1 { font-size: 40px; margin-bottom: 10px; }
  .ew-blog .ewb-hero p { font-size: 17px; }
  .ew-blog .ewb-seclabel { margin-bottom: 16px; }
  .ew-blog .ewb-hubsec,   .ew-blog .ewb-featsec,   .ew-blog .ewb-gridsec { padding: 30px 0 4px; }
  .ew-blog .ewb-hubgrid { display: flex; grid-template-columns: none; gap: 14px; overflow-x: auto; margin: 0 -20px; padding: 4px 20px 12px; scroll-snap-type: x mandatory; }
  .ew-blog .ewb-hubcard { flex: 0 0 232px; scroll-snap-align: start; }
  .ew-blog .ewb-feat { grid-template-columns: 1fr; }
  .ew-blog .ewb-feat-img { min-height: 0; aspect-ratio: 16/9; }
  .ew-blog .ewb-feat-body { padding: 24px 22px 26px; }
  .ew-blog .ewb-feat-body h3 { font-size: 28px; margin: 14px 0 12px; }
  .ew-blog .ewb-feat-dek { font-size: 16px; margin-bottom: 20px; }
  .ew-blog .ewb-postgrid { grid-template-columns: 1fr; gap: 22px; }
  .ew-blog .ewb-card h3 { font-size: 20px; }
  .ew-blog .ewb-pager { padding: 32px 0 4px; gap: 6px; flex-wrap: wrap; }
  .ew-blog .ewb-newssec { padding: 34px 0; }
  .ew-blog .ewb-news { grid-template-columns: 1fr; gap: 22px; padding: 30px 26px; }
  .ew-blog .ewb-news h3 { font-size: 23px; }
  .ew-blog .ewb-news-form { flex-direction: column; }
  .ew-blog .ewb-news-form button { height: 50px; }
  .ew-blog .ewb-browse-grid { grid-template-columns: repeat(2, 1fr); }
  .ew-blog .ewb-f500-row { gap: 12px 22px; }
  .ew-blog .ewb-f500-row span { font-size: 15px; }
  .ew-blog .ewb-footer { padding: 44px 0 24px; }
  .ew-blog .ewb-footer-top { grid-template-columns: 1fr; gap: 32px; }
  .ew-blog .ewb-footer-cols { grid-template-columns: repeat(2, 1fr); gap: 24px; }
  .ew-blog .ewb-footer-bot { flex-direction: column; gap: 14px; align-items: flex-start; }
  .ew-blog .ewb-arthead h1 { font-size: 32px; max-width: none; }
  .ew-blog .ewb-art-dek { font-size: 18px; }
  .ew-blog .ewb-byline { gap: 12px; }
  .ew-blog .ewb-byline-meta { font-size: 12.5px; }
  .ew-blog .ewb-art-feat .ewb-art-figwrap { aspect-ratio: 16/10; }
  .ew-blog .ewb-art-layout { grid-template-columns: 1fr; gap: 0; padding: 26px 0 4px; }
  .ew-blog .ewb-toc { position: static; border: 1px solid var(--ew-line-strong); border-radius: var(--card-radius); padding: 16px 18px; margin-bottom: 28px; background: rgba(255,255,255,0.5); }
  .ew-blog .ewb-toc-lab { margin-bottom: 10px; }
  .ew-blog .ewb-prose { max-width: none; font-size: 17.5px; }
  .ew-blog .ewb-prose h2 { font-size: 25px; margin: 32px 0 12px; }
  .ew-blog .ewb-pull p { font-size: 23px; }
  .ew-blog .ewb-stat { flex-direction: column; gap: 8px; padding: 24px 24px; }
  .ew-blog .ewb-stat-num { font-size: 46px; }
  .ew-blog .ewb-related-svc { padding: 24px 22px; }
  .ew-blog .ewb-related-svc h4 { font-size: 20px; }
  .ew-blog .ewb-authbio { flex-direction: column; gap: 16px; }
  .ew-blog .ewb-relsvc-grid { grid-template-columns: 1fr; }
  .ew-blog .ewb-comments .ewb-narrow,   .ew-blog .ewb-arthead.ewb-narrow { max-width: none; }
  .ew-blog .ewb-authmast { grid-template-columns: 1fr; gap: 20px; }
  .ew-blog .ewb-authmast h1 { font-size: 32px; }
  .ew-blog .ewb-hubmast h1 { font-size: 38px; }
  .ew-blog .ewb-hubmast { padding: 36px 0 32px; }
  .ew-blog .ewb-hubcta { grid-template-columns: 1fr; gap: 22px; padding: 30px 26px; }
  .ew-blog .ewb-recent-date { flex-basis: 86px; }
}
