/* Easy Peasy Sťahovanie — blog. Everything scoped to .ep-blog (specificity ≥ 0,2,0). */
.ep-blog {
  --ep-red: #c55629; --ep-red-dark: #a34620; --ep-orange: #d88a47; --ep-dark: #1a1a2e;
  --ep-ink: #2b2b3c; --ep-muted: #5f6272; --ep-line: #e7e1da; --ep-paper: #fbf8f5; --ep-white: #fff;
  --ep-head: 'Montserrat', 'Segoe UI', Arial, sans-serif; --ep-body: 'Open Sans', 'Segoe UI', Arial, sans-serif;
  --ep-r: 10px; --ep-r-lg: 16px;
  background: var(--ep-white); color: var(--ep-ink); font-family: var(--ep-body); font-size: 17px; line-height: 1.7;
}
.ep-blog *, .ep-blog *::before, .ep-blog *::after { box-sizing: border-box; }
.ep-blog a { color: var(--ep-red); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.ep-blog a:hover { color: var(--ep-red-dark); }
.ep-blog a:focus-visible, .ep-blog button:focus-visible, .ep-blog summary:focus-visible { outline: 3px solid var(--ep-orange); outline-offset: 2px; border-radius: 4px; }
.ep-blog img { max-width: 100%; height: auto; display: block; }
.ep-blog .epb-wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.ep-blog .epb-wrap--narrow > * { max-width: 820px; }

/* Theme chrome on blog URLs (The7) */
body.eps-blog-page .page-title, body.eps-blog-page .fancy-header, body.eps-blog-page #sidebar { display: none !important; }
body.eps-blog-page #content { width: 100% !important; }
body.eps-blog-page #main { padding-top: 20px !important; }
body.eps-blog-page #page { overflow-x: clip !important; }

/* Buttons */
.ep-blog .ep-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; background: var(--ep-red); color: #fff;
  font-family: var(--ep-head); font-weight: 700; font-size: 15px; padding: 13px 24px; border-radius: 999px; text-decoration: none;
  border: 2px solid var(--ep-red); transition: background .15s, border-color .15s; white-space: nowrap; }
.ep-blog .ep-btn:hover { background: var(--ep-red-dark); border-color: var(--ep-red-dark); color: #fff; }
.ep-blog .ep-btn--light { background: #fff; color: var(--ep-dark); border-color: #fff; }
.ep-blog .ep-btn--light:hover { background: var(--ep-paper); border-color: var(--ep-paper); color: var(--ep-dark); }
.ep-blog .ep-btn--ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.45); }
.ep-blog .ep-btn--ghost:hover { background: rgba(255,255,255,.08); border-color: #fff; color: #fff; }

/* Breadcrumbs + pills */
.ep-blog .epb-crumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 22px; padding: 0; font-size: 13px; color: var(--ep-muted); }
.ep-blog .epb-crumbs li + li::before { content: "/"; margin-right: 6px; color: #b9b2aa; }
.ep-blog .epb-crumbs a { color: var(--ep-muted); text-decoration: none; }
.ep-blog .epb-crumbs a:hover { color: var(--ep-red); }
.ep-blog .epb-crumbs li[aria-current] { color: var(--ep-ink); max-width: 46ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ep-blog .epb-pill { display: inline-block; font-family: var(--ep-head); font-size: 12px; font-weight: 700; color: var(--ep-red);
  background: #fbede6; border-radius: 999px; padding: 4px 12px; text-decoration: none; line-height: 1.5; }
.ep-blog .epb-pill--link:hover { background: var(--ep-red); color: #fff; }

/* ───────── Index ───────── */
.ep-blog .epb-hero { background: var(--ep-paper); padding: 44px 0 36px; border-radius: var(--ep-r-lg); }
.ep-blog .epb-hero h1 { font-family: var(--ep-head); font-size: clamp(34px, 5vw, 54px); font-weight: 800; letter-spacing: -0.02em; line-height: 1.08; color: var(--ep-dark); margin: 0 0 14px; }
.ep-blog .epb-hero h1 em { font-style: normal; color: var(--ep-red); }
.ep-blog .epb-lead { font-size: 19px; color: var(--ep-muted); max-width: 62ch; margin: 0 0 26px; line-height: 1.6; }
.ep-blog .epb-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ep-blog .epb-chip { font-family: var(--ep-head); font-size: 14px; font-weight: 600; color: var(--ep-ink); background: #fff; border: 1.5px solid var(--ep-line);
  border-radius: 999px; padding: 8px 16px; cursor: pointer; }
.ep-blog .epb-chip:hover { border-color: var(--ep-orange); }
.ep-blog .epb-chip.is-active { background: var(--ep-dark); color: #fff; border-color: var(--ep-dark); }
.ep-blog .epb-list { padding: 32px 0 56px; }
.ep-blog .epb-list > .epb-wrap { max-width: none; padding: 0; }
.ep-blog .epb-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.ep-blog .epb-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ep-line); border-radius: var(--ep-r-lg); overflow: hidden; }
.ep-blog .epb-card[hidden] { display: none; }
.ep-blog .epb-card-img { display: block; aspect-ratio: 1200 / 630; overflow: hidden; background: var(--ep-dark); }
.ep-blog .epb-card-img img { width: 100%; height: 100%; object-fit: cover; }
.ep-blog .epb-card-body { padding: 20px 22px 24px; display: flex; flex-direction: column; flex: 1; }
.ep-blog .epb-card-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; font-size: 13px; color: var(--ep-muted); margin-bottom: 12px; }
.ep-blog .epb-card-title { font-family: var(--ep-head); font-size: 19px; font-weight: 700; line-height: 1.3; margin: 0 0 10px; letter-spacing: -0.01em; }
.ep-blog .epb-card-title a { color: var(--ep-dark); text-decoration: none; }
.ep-blog .epb-card-title a:hover { color: var(--ep-red); }
.ep-blog .epb-card-excerpt { font-size: 15px; color: var(--ep-muted); line-height: 1.6; margin: 0 0 16px; flex: 1; }
.ep-blog .epb-card-more { font-family: var(--ep-head); font-weight: 700; font-size: 14px; text-decoration: none; }
.ep-blog .epb-card--featured { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); align-items: stretch; margin-bottom: 28px; }
.ep-blog .epb-card--featured .epb-card-img { aspect-ratio: auto; height: 100%; min-height: 100%; }
.ep-blog .epb-card--featured .epb-card-img img { object-position: left center; }
.ep-blog .epb-card--featured .epb-card-body { padding: 26px 32px; justify-content: center; }
.ep-blog .epb-card--featured .epb-card-title { font-size: clamp(21px, 2vw, 26px); }
.ep-blog .epb-card--featured .epb-card-excerpt { font-size: 15px; flex: 0; margin-bottom: 12px; }
.ep-blog .epb-pager { display: flex; gap: 8px; justify-content: center; margin-top: 40px; }
.ep-blog .epb-pager a, .ep-blog .epb-pager span { min-width: 42px; padding: 8px 12px; border-radius: 999px; text-align: center; border: 1.5px solid var(--ep-line); text-decoration: none; font-weight: 700; }
.ep-blog .epb-pager span { background: var(--ep-dark); color: #fff; border-color: var(--ep-dark); }

/* ───────── Single post ───────── */
.ep-blog .epb-preview-bar { background: #fef3c7; color: #78350f; text-align: center; font-weight: 600; font-size: 14px; padding: 10px 16px; }
.ep-blog .epb-post-head { padding: 40px 0 28px; background: var(--ep-paper); border-radius: var(--ep-r-lg) var(--ep-r-lg) 0 0; }
.ep-blog .epb-post-head h1 { font-family: var(--ep-head); font-size: clamp(30px, 4.2vw, 46px); font-weight: 800; line-height: 1.12; letter-spacing: -0.02em; color: var(--ep-dark); margin: 16px 0 16px; }
.ep-blog .epb-post-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 22px; font-size: 14px; color: var(--ep-muted); }
.ep-blog .epb-author { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; color: var(--ep-ink); }
.ep-blog .epb-avatar { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--ep-dark); color: var(--ep-orange);
  font-family: var(--ep-head); font-weight: 800; font-size: 12px; flex-shrink: 0; }
.ep-blog .epb-avatar--lg { width: 56px; height: 56px; font-size: 16px; }
.ep-blog .epb-figure { margin: 0 auto; }
.ep-blog .epb-post-head { padding-bottom: 0; }
.ep-blog .epb-post-meta { padding-bottom: 28px; }
.ep-blog .epb-figure-wrap { position: relative; }
.ep-blog .epb-figure-wrap::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 55%; background: var(--ep-paper); border-radius: 0 0 var(--ep-r-lg) var(--ep-r-lg); }
.ep-blog .epb-figure { position: relative; }
.ep-blog .epb-figure img { width: 100%; max-width: 820px; border-radius: var(--ep-r-lg); }
.ep-blog .epb-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 56px; padding-top: 44px; padding-bottom: 56px; align-items: start; }
.ep-blog .epb-content { max-width: 720px; min-width: 0; }

/* Article typography */
.ep-blog .epb-content > p, .ep-blog .epb-content li { color: var(--ep-ink); }
.ep-blog .epb-content p { margin: 0 0 1.1em; }
.ep-blog .epb-content h2 { font-family: var(--ep-head); font-size: 27px; font-weight: 800; line-height: 1.25; letter-spacing: -0.015em; color: var(--ep-dark);
  margin: 2.1em 0 .7em; scroll-margin-top: 110px; }
.ep-blog .epb-content h3 { font-family: var(--ep-head); font-size: 20px; font-weight: 700; color: var(--ep-dark); margin: 1.6em 0 .5em; }
.ep-blog .epb-content ul, .ep-blog .epb-content ol { margin: 0 0 1.3em; padding-left: 1.3em; }
.ep-blog .epb-content li { margin-bottom: .5em; }
.ep-blog .epb-content strong { color: var(--ep-dark); }

.ep-blog .ep-checklist { list-style: none; padding-left: 0 !important; }
.ep-blog .ep-checklist li { position: relative; padding-left: 34px; }
.ep-blog .ep-checklist li::before { content: ""; position: absolute; left: 0; top: 5px; width: 20px; height: 20px; border-radius: 6px; border: 2px solid var(--ep-red);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3.2L15 6.8' fill='none' stroke='%23c55629' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat; }
.ep-blog .ep-steps { list-style: none; counter-reset: s; padding-left: 0 !important; }
.ep-blog .ep-steps > li { counter-increment: s; position: relative; padding: 2px 0 6px 50px; margin-bottom: 14px; }
.ep-blog .ep-steps > li::before { content: counter(s); position: absolute; left: 0; top: 0; width: 34px; height: 34px; border-radius: 50%; background: var(--ep-dark);
  color: var(--ep-orange); font-family: var(--ep-head); font-weight: 800; font-size: 15px; display: grid; place-items: center; }

.ep-blog .ep-stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--ep-line); border-radius: var(--ep-r-lg); margin: 1.6em 0 2em; overflow: hidden; }
.ep-blog .ep-stat { padding: 18px 16px; border-right: 1px solid var(--ep-line); }
.ep-blog .ep-stat:last-child { border-right: 0; }
.ep-blog .ep-stat-num { display: block; font-family: var(--ep-head); font-weight: 800; font-size: 22px; color: var(--ep-red); line-height: 1.2; margin-bottom: 4px; }
.ep-blog .ep-stat-label { display: block; font-size: 13px; color: var(--ep-muted); line-height: 1.4; }

.ep-blog .ep-table-wrap { overflow-x: auto; margin: 1.2em 0 .6em; border: 1px solid var(--ep-line); border-radius: var(--ep-r); -webkit-overflow-scrolling: touch; }
.ep-blog .ep-table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.45; min-width: 560px; }
.ep-blog .ep-table th { background: var(--ep-dark); color: #fff; font-family: var(--ep-head); font-weight: 700; font-size: 13px; text-align: left; padding: 12px 14px; }
.ep-blog .ep-table td { padding: 11px 14px; border-top: 1px solid var(--ep-line); vertical-align: top; }
.ep-blog .ep-table tbody tr:nth-child(even) td { background: var(--ep-paper); }
.ep-blog .ep-td-price { font-family: var(--ep-head); font-weight: 800; color: var(--ep-red); white-space: nowrap; }
.ep-blog .ep-table-note { font-size: 14px; color: var(--ep-muted); margin-top: .4em !important; }

.ep-blog .ep-callout { border-left: 4px solid var(--ep-orange); background: var(--ep-paper); padding: 16px 20px; border-radius: 0 var(--ep-r) var(--ep-r) 0; margin: 1.4em 0; font-size: 16px; }
.ep-blog .ep-callout--tip { border-left-color: var(--ep-red); }
.ep-blog .ep-callout--warn { border-left-color: #b45309; background: #fffbeb; }
.ep-blog .ep-callout--info { border-left-color: var(--ep-dark); }

.ep-blog .ep-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 1.4em 0 1.8em; }
.ep-blog .ep-compare-col { border: 1px solid var(--ep-line); border-radius: var(--ep-r-lg); padding: 20px 22px 8px; }
.ep-blog .ep-compare-col h3 { margin-top: 0 !important; font-size: 18px !important; }
.ep-blog .ep-compare-col ul { font-size: 15px; }
.ep-blog .ep-compare-col--ok { border-top: 4px solid #15803d; }
.ep-blog .ep-compare-col--no { border-top: 4px solid var(--ep-red); }

.ep-blog .ep-timeline { margin: 1.4em 0 1.8em; border-left: 2px dashed var(--ep-orange); padding-left: 0; }
.ep-blog .ep-timeline-item { display: grid; grid-template-columns: 92px 1fr; gap: 12px; position: relative; padding: 0 0 18px 22px; font-size: 16px; }
.ep-blog .ep-timeline-item::before { content: ""; position: absolute; left: -7px; top: 7px; width: 12px; height: 12px; border-radius: 50%; background: var(--ep-red); box-shadow: 0 0 0 3px #fff; }
.ep-blog .ep-timeline-time { font-family: var(--ep-head); font-weight: 800; color: var(--ep-dark); }

.ep-blog .ep-blog-cta { display: flex; align-items: center; justify-content: space-between; gap: 20px; background: var(--ep-dark); color: #fff;
  border-radius: var(--ep-r-lg); padding: 22px 26px; margin: 2em 0; }
.ep-blog .ep-blog-cta-text strong { display: block; font-family: var(--ep-head); font-size: 18px; color: #fff; margin-bottom: 2px; }
.ep-blog .ep-blog-cta-text span { font-size: 15px; color: rgba(255,255,255,.75); }

/* FAQ — always open */
.ep-blog .epb-faq { margin-top: 3em; padding-top: 2em; border-top: 1px solid var(--ep-line); }
.ep-blog .epb-faq h2 { margin-top: 0; }
.ep-blog .epb-faq .ep-faq-item { border: 1px solid var(--ep-line); border-radius: var(--ep-r); padding: 18px 22px; margin-bottom: 12px; background: #fff; }
.ep-blog .epb-faq .ep-faq-q { font-family: var(--ep-head); font-size: 17px; font-weight: 700; color: var(--ep-dark); margin: 0 0 8px; cursor: default; padding: 0; }
.ep-blog .epb-faq .ep-faq-q::after, .ep-blog .epb-faq .ep-faq-q::before { display: none !important; }
.ep-blog .epb-faq .ep-faq-a { display: block !important; max-height: none !important; overflow: visible !important; opacity: 1 !important; padding: 0 !important; }
.ep-blog .epb-faq .ep-faq-a p { margin: 0; font-size: 16px; color: var(--ep-ink); }

.ep-blog .epb-share { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin: 2.4em 0 1.6em; font-size: 14px; color: var(--ep-muted); }
.ep-blog .epb-share a, .ep-blog .epb-share button { font-family: var(--ep-head); font-size: 13px; font-weight: 600; color: var(--ep-ink); background: #fff;
  border: 1.5px solid var(--ep-line); border-radius: 999px; padding: 6px 14px; text-decoration: none; cursor: pointer; }
.ep-blog .epb-share a:hover, .ep-blog .epb-share button:hover { border-color: var(--ep-red); color: var(--ep-red); }
.ep-blog .epb-authorbox { display: flex; gap: 18px; background: var(--ep-paper); border-radius: var(--ep-r-lg); padding: 22px 24px; }
.ep-blog .epb-authorbox strong { font-family: var(--ep-head); color: var(--ep-dark); }
.ep-blog .epb-authorbox p { font-size: 15px; color: var(--ep-muted); margin: 4px 0 8px; }
.ep-blog .epb-authorbox a { font-family: var(--ep-head); font-weight: 700; font-size: 14px; }

/* Sidebar: route-map TOC (the one bold element) */
.ep-blog .epb-sidebar { align-self: stretch; }
.ep-blog .epb-sticky { position: sticky; top: 110px; }
.ep-blog .epb-sticky.is-js { position: relative; top: auto; will-change: transform; }
.ep-blog .epb-toc-title { font-family: var(--ep-head); font-weight: 800; font-size: 15px; color: var(--ep-dark); margin: 0 0 14px; }
.ep-blog .epb-toc ol { list-style: none; margin: 0 0 28px; padding: 0 0 0 4px; position: relative; }
.ep-blog .epb-toc ol::before { content: ""; position: absolute; left: 9px; top: 10px; bottom: 10px; border-left: 2px dashed #e3c6a8; }
.ep-blog .epb-toc li { position: relative; padding: 0 0 0 28px; margin: 0 0 10px; }
.ep-blog .epb-toc li::before { content: ""; position: absolute; left: 0; top: 6px; width: 12px; height: 12px; border-radius: 50%; background: #fff; border: 2px solid #e3c6a8; transition: background .2s, border-color .2s, transform .2s; }
.ep-blog .epb-toc a { font-size: 14px; line-height: 1.45; color: var(--ep-muted); text-decoration: none; display: block; }
.ep-blog .epb-toc a:hover { color: var(--ep-red); }
.ep-blog .epb-toc li.is-passed::before { background: var(--ep-orange); border-color: var(--ep-orange); }
.ep-blog .epb-toc li.is-active::before { background: var(--ep-red); border-color: var(--ep-red); transform: scale(1.25); }
.ep-blog .epb-toc li.is-active a { color: var(--ep-dark); font-weight: 700; }
.ep-blog .epb-side-cta { background: var(--ep-dark); color: #fff; border-radius: var(--ep-r-lg); padding: 22px; }
.ep-blog .epb-side-cta p { font-size: 14px; color: rgba(255,255,255,.75); margin: 0 0 14px; line-height: 1.5; }
.ep-blog .epb-side-cta .epb-side-cta-kicker { color: var(--ep-orange); font-family: var(--ep-head); font-weight: 700; font-size: 13px; margin-bottom: 4px; }
.ep-blog .epb-side-cta .epb-side-cta-title { font-family: var(--ep-head); font-size: 19px; font-weight: 800; color: #fff; line-height: 1.25; margin-bottom: 8px; }
.ep-blog .epb-side-cta .ep-btn { width: 100%; }
.ep-blog .epb-side-phone { display: block; text-align: center; margin-top: 12px; font-size: 14px; color: rgba(255,255,255,.85) !important; }
.ep-blog .epb-toc-mobile { display: none; }

.ep-blog .epb-related { background: var(--ep-paper); padding: 48px 0; border-radius: var(--ep-r-lg); }
.ep-blog .epb-related h2 { font-family: var(--ep-head); font-size: 28px; font-weight: 800; color: var(--ep-dark); margin: 0 0 24px; }
.ep-blog .epb-related-all { margin: 24px 0 0; font-family: var(--ep-head); font-weight: 700; }

.ep-blog .epb-cta-band { background: var(--ep-dark); padding: 44px 0; border-radius: var(--ep-r-lg); margin: 28px 0 40px; }
.ep-blog .epb-cta-band-inner { max-width: 1180px; margin: 0 auto; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.ep-blog .epb-cta-band h2 { font-family: var(--ep-head); font-size: clamp(24px, 3vw, 32px); font-weight: 800; color: #fff; margin: 0 0 6px; }
.ep-blog .epb-cta-band p { color: rgba(255,255,255,.75); margin: 0; }
.ep-blog .epb-cta-band-btns { display: flex; gap: 12px; flex-wrap: wrap; }

/* Modal fallback — zero specificity so the site's global modal CSS always wins. */
:where(.ep-modal-overlay) { display: none; position: fixed; inset: 0; background: rgba(26,26,46,.6); z-index: 99999; align-items: flex-start; justify-content: center; overflow-y: auto; padding: 40px 16px; }
:where(.ep-modal-overlay.open) { display: flex; }
:where(.ep-modal) { background: #fff; border-radius: 16px; width: 100%; max-width: 760px; overflow: hidden; }
:where(.ep-modal-header) { display: flex; align-items: center; gap: 12px; background: #1a1a2e; color: #fff; padding: 18px 22px; }
:where(.ep-modal-header-text) { flex: 1; }
:where(.ep-modal-header h3) { margin: 0; color: #fff; font-size: 18px; }
:where(.ep-modal-header p) { margin: 2px 0 0; color: rgba(255,255,255,.7); font-size: 13px; }
:where(.ep-modal-close, .ep-modal-lang-btn) { background: none; border: 0; color: #fff; cursor: pointer; font-size: 15px; }

/* Responsive */
@media (max-width: 1080px) {
  .ep-blog .epb-layout { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .ep-blog .epb-sidebar { display: none; }
  .ep-blog .epb-content { width: 100%; max-width: 760px; margin: 0; justify-self: center; }
  .ep-blog .epb-toc-mobile { display: block; border: 1px solid var(--ep-line); border-radius: var(--ep-r); padding: 12px 18px; margin-bottom: 1.6em; background: var(--ep-paper); }
  .ep-blog .epb-toc-mobile summary { font-family: var(--ep-head); font-weight: 700; cursor: pointer; color: var(--ep-dark); }
  .ep-blog .epb-toc-mobile ol { margin: 10px 0 4px; font-size: 15px; }
  .ep-blog .epb-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .ep-blog { font-size: 16px; }
  .ep-blog .epb-wrap { padding: 0 18px; }
  .ep-blog .epb-grid { grid-template-columns: minmax(0, 1fr); }
  .ep-blog .epb-card--featured { grid-template-columns: 1fr; }
  .ep-blog .epb-card--featured .epb-card-img { aspect-ratio: 1200 / 630; height: auto; min-height: 0; }
  .ep-blog .epb-card--featured .epb-card-body { padding: 22px; }
  .ep-blog .ep-stat-grid { grid-template-columns: 1fr 1fr; }
  .ep-blog .ep-stat:nth-child(2) { border-right: 0; }
  .ep-blog .ep-stat:nth-child(-n+2) { border-bottom: 1px solid var(--ep-line); }
  .ep-blog .ep-compare { grid-template-columns: 1fr; }
  .ep-blog .ep-blog-cta { flex-direction: column; align-items: flex-start; }
  .ep-blog .epb-cta-band-inner { flex-direction: column; align-items: flex-start; }
  .ep-blog .epb-content h2 { font-size: 23px; }
  .ep-blog .ep-timeline-item { grid-template-columns: 1fr; gap: 2px; }
  .ep-blog .epb-post-head { padding-top: 32px; }
  .ep-blog .epb-crumbs li[aria-current] { max-width: 22ch; }
}
@media (prefers-reduced-motion: reduce) {
  .ep-blog *, .ep-blog *::before { transition: none !important; scroll-behavior: auto !important; }
}

/* Swipe hint for wide tables on small screens (added by blog.js) */
.ep-blog .ep-table-hint { display: none; font-size: 13px; color: var(--ep-muted); margin: 1em 0 -0.6em; }
@media (max-width: 760px) { .ep-blog .ep-table-hint { display: block; } }
