/* ============================================================
   Modern 2026 layer — MSN Study (bloghash theme)
   Presentation only. Palette: unified indigo.
   ============================================================ */
:root {
  --m26-primary: #4153d6;
  --m26-primary-dark: #2f3dae;
  --m26-primary-soft: #eef0fd;
  --m26-accent: #0ea5a4;
  --m26-ink: #171c2e;
  --m26-body: #4a5265;
  --m26-muted: #8b93a7;
  --m26-line: #e7eaf1;
  --m26-bg: #f7f8fb;
  --m26-radius: 16px;
  --m26-shadow: 0 1px 2px rgba(16,24,40,.05), 0 10px 28px -10px rgba(23,28,46,.12);
  --m26-shadow-lg: 0 14px 42px -12px rgba(65,83,214,.35);
  --m26-head-font: "Inter Tight", "Inter", -apple-system, sans-serif;
  --m26-body-font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
}

/* ---------- Base ---------- */
body {
  font-family: var(--m26-body-font) !important;
  color: var(--m26-body);
  font-size: 16.5px; line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}
h1,h2,h3,h4,h5,h6,
.elementor-heading-title, .entry-title, .bloghash-entry-title {
  font-family: var(--m26-head-font) !important;
  color: var(--m26-ink); letter-spacing: -0.015em;
}
a { transition: color .18s ease; }
::selection { background: var(--m26-primary); color: #fff; }

/* ---------- Header ---------- */
.bloghash-header, header.site-header, .site-header {
  background: rgba(255,255,255,.9) !important;
  backdrop-filter: saturate(160%) blur(12px);
  -webkit-backdrop-filter: saturate(160%) blur(12px);
  box-shadow: 0 1px 0 var(--m26-line), 0 8px 30px -14px rgba(23,28,46,.22);
}
.bloghash-topbar { background: var(--m26-ink) !important; color: #cdd5e4 !important; font-size: 13px; }
.bloghash-topbar a { color: #fff !important; }
.site-header .menu > li > a, .bloghash-navigation .menu > li > a, .main-navigation .menu > li > a {
  font-weight: 600 !important; font-size: 15px !important; color: var(--m26-ink) !important;
  border-radius: 9px; padding: 8px 13px !important;
}
.site-header .menu > li > a:hover { color: var(--m26-primary) !important; background: var(--m26-primary-soft); }
/* header CTA buttons */
.site-header a[href*="login"], .site-header a[href*="Login"],
.header-button a, .bloghash-header .button, .site-header .wp-block-button__link {
  border-radius: 999px !important; font-weight: 700 !important;
}

/* ---------- Elementor buttons: one consistent style ---------- */
.elementor-button, a.elementor-button, .elementor-button-wrapper .elementor-button {
  border-radius: 999px !important;
  font-family: var(--m26-head-font) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  padding: 14px 30px !important;
  box-shadow: var(--m26-shadow-lg);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}
.elementor-button:hover { transform: translateY(-2px); filter: brightness(.94); }
/* unify every solid Elementor button to the brand colour */
.elementor-button:not(.elementor-button-outline):not(.elementor-size-xs) {
  background-color: var(--m26-primary) !important;
  color: #fff !important;
}
.elementor-button:not(.elementor-button-outline):not(.elementor-size-xs) .elementor-button-text,
.elementor-button:not(.elementor-button-outline):not(.elementor-size-xs) .elementor-button-icon { color: #fff !important; fill: #fff !important; }

/* ---------- Elementor headings & sections ---------- */
.elementor-widget-heading .elementor-heading-title { line-height: 1.25; }
.elementor-section { will-change: transform; }

/* ---------- Blog archive (bloghash) ---------- */
.bloghash-article, article.bloghash-article {
  background: #fff;
  border: 1px solid var(--m26-line) !important;
  border-radius: var(--m26-radius) !important;
  padding: 26px 28px;
  margin-bottom: 24px;
  box-shadow: var(--m26-shadow);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  overflow: hidden;
}
.bloghash-article:hover {
  transform: translateY(-3px);
  border-color: #c7cfff !important;
  box-shadow: 0 18px 46px -16px rgba(65,83,214,.25);
}
.bloghash-article .entry-title, .bloghash-article .entry-title a,
.bloghash-entry-content-wrapper .entry-title a {
  font-family: var(--m26-head-font) !important;
  font-size: 1.4rem !important; font-weight: 700; line-height: 1.35;
  color: var(--m26-ink) !important; text-decoration: none;
}
.bloghash-article .entry-title a:hover { color: var(--m26-primary) !important; }
.post-category .cat-links a, .cat-links a {
  display: inline-block; background: var(--m26-primary-soft) !important; color: var(--m26-primary) !important;
  font-size: 12px !important; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  padding: 4px 12px !important; border-radius: 999px !important; text-decoration: none;
}
.entry-meta, .bloghash-entry-meta, .posted-on, .byline {
  font-size: 13px !important; color: var(--m26-muted) !important;
}
.entry-meta a, .bloghash-entry-meta a { color: var(--m26-body) !important; font-weight: 600; }
.entry-meta a:hover { color: var(--m26-primary) !important; }
.bloghash-thumb-hero .post-thumb, .post-thumb.entry-media, .entry-media {
  border-radius: calc(var(--m26-radius) - 6px); overflow: hidden;
}
/* read more / continue reading */
.bloghash-article .more-link, .more-link, .read-more, a.bloghash-readmore {
  display: inline-block !important;
  background: var(--m26-primary-soft) !important; color: var(--m26-primary) !important;
  font-weight: 700 !important; font-size: 14px !important;
  padding: 9px 20px !important; border-radius: 999px !important; text-decoration: none !important;
}
.more-link:hover, .read-more:hover { background: var(--m26-primary) !important; color: #fff !important; }

/* ---------- Featured slider (top stories) ---------- */
.bloghash-featured-area, .featured-slider, .bloghash-slider {
  border-radius: var(--m26-radius); overflow: hidden; box-shadow: var(--m26-shadow);
}

/* ---------- Pagination ---------- */
.nav-links .page-numbers, .pagination .page-numbers, .page-numbers {
  border-radius: 10px !important; border: 1px solid var(--m26-line) !important;
  color: var(--m26-ink) !important; font-weight: 600;
}
.page-numbers.current {
  background: var(--m26-primary) !important; color: #fff !important; border-color: var(--m26-primary) !important;
}

/* ---------- Sidebar ---------- */
.widget, .sidebar .widget, #secondary .widget {
  background: #fff; border: 1px solid var(--m26-line); border-radius: var(--m26-radius);
  padding: 24px 26px; margin-bottom: 24px; box-shadow: var(--m26-shadow);
}
.widget .widget-title, .widgettitle, .widget-title {
  font-family: var(--m26-head-font) !important; color: var(--m26-ink) !important;
  font-size: 1.05rem !important; padding-bottom: .6em; border-bottom: 2px solid var(--m26-primary-soft);
}
.widget a { color: var(--m26-body); font-weight: 500; }
.widget a:hover { color: var(--m26-primary); }
input[type="search"], input.search-field {
  border: 1.5px solid var(--m26-line) !important; border-radius: 10px !important; padding: 10px 14px !important;
}
.search-submit, .search-form button, input[type="submit"] {
  background: var(--m26-primary) !important; color: #fff !important;
  border-radius: 10px !important; border: none !important; font-weight: 700; padding: 10px 18px !important;
}

/* ---------- Single post ---------- */
.single .entry-title, .single-post .entry-title {
  font-size: clamp(1.9rem, 3.2vw, 2.6rem) !important; font-weight: 800; line-height: 1.2;
}
.single .entry-content { font-size: 17px; }
.single .entry-content h2, .single .entry-content h3 {
  position: relative; padding-left: 16px; margin-top: 2em;
}
.single .entry-content h2::before, .single .entry-content h3::before {
  content: ""; position: absolute; left: 0; top: .16em; bottom: .16em; width: 5px; border-radius: 3px;
  background: linear-gradient(180deg, var(--m26-primary), #8a98ff);
}
.single .entry-content img { border-radius: var(--m26-radius); box-shadow: var(--m26-shadow); }
.single .entry-content blockquote {
  border-left: 4px solid var(--m26-primary); background: var(--m26-primary-soft);
  border-radius: 0 12px 12px 0; padding: 18px 24px; font-style: normal; color: var(--m26-ink);
}
.post-navigation, .posts-navigation { margin: 30px 0; }
.post-navigation a {
  background: #fff; border: 1px solid var(--m26-line); border-radius: 12px;
  padding: 12px 18px; font-weight: 600; box-shadow: var(--m26-shadow);
}

/* ---------- Author box / related ---------- */
.author-box, .bloghash-author-box, .entry-author {
  background: var(--m26-bg); border: 1px solid var(--m26-line); border-radius: var(--m26-radius);
  padding: 22px 26px;
}
.related-posts, .bloghash-related-posts { margin-top: 34px; }
.related-posts .post, .bloghash-related-posts article {
  border: 1px solid var(--m26-line); border-radius: var(--m26-radius); box-shadow: var(--m26-shadow);
}

/* ---------- Footer ---------- */
.site-footer, .bloghash-footer, #colophon {
  background: var(--m26-ink) !important; color: #b7c0d2 !important;
}
.site-footer a, #colophon a { color: #e6eaf3 !important; }
.site-footer a:hover { color: #9aa8ff !important; }
.site-footer .widget-title, #colophon .widget-title { color: #fff !important; }

.m26-hidden-artifact { display: none !important; }

@media (max-width: 768px) {
  body { font-size: 15.5px; }
  .bloghash-article { padding: 20px; }
}
