:root {
  --blog-ink: #17182f;
  --blog-copy: #4b4f6c;
  --blog-muted: #747893;
  --blog-primary: #6558e8;
  --blog-primary-dark: #4d43ca;
  --blog-primary-soft: #eeebff;
  --blog-line: #e4e6f1;
  --blog-surface: #f6f7ff;
  --blog-shadow: 0 18px 52px rgba(54,58,111,.10);
}
body { background: #fff; color: var(--blog-ink); }
.site-header { top: 14px; }
.nav-shell { width: min(calc(100% - 24px), 1440px); }
.navbar {
  min-height: 68px; padding: 9px 10px 9px 18px; border: 1px solid rgba(222,224,239,.95);
  border-radius: 22px; background: rgba(255,255,255,.92); backdrop-filter: blur(20px);
  box-shadow: 0 10px 35px rgba(44,48,92,.09);
}
.nav-logo-text { color: var(--blog-ink); }
.nav-link { color: #42455e; border-radius: 12px; }
.nav-link:hover, .nav-link.active { background: var(--blog-primary-soft); color: var(--blog-primary-dark); }
.nav-cta, .mobile-cta { background: var(--blog-primary); color: #fff !important; border-radius: 14px; box-shadow: 0 10px 24px rgba(101,88,232,.24); }
.nav-cta:hover { background: var(--blog-primary-dark); }
.mobile-menu { border-color: var(--blog-line); border-radius: 20px; background: rgba(255,255,255,.98); box-shadow: var(--blog-shadow); }

.blog-hero {
  position: relative; overflow: hidden; padding-top: clamp(160px,16vw,220px); padding-bottom: clamp(72px,8vw,110px);
  background: radial-gradient(circle at 84% 18%, rgba(101,88,232,.13), transparent 32%), #fff;
}
.blog-hero::after { content:""; position:absolute; width:360px; height:360px; left:-190px; bottom:-240px; border-radius:50%; background:rgba(255,122,89,.09); }
.eyebrow { color: var(--blog-primary); background: var(--blog-primary-soft); border-radius: 999px; padding: 8px 12px; }
.section-h { color: var(--blog-ink); letter-spacing: -.04em; }
.section-h mark, .section-h span[style*="#ff7446"] { color: var(--blog-primary) !important; background: transparent; }
.section-p { color: var(--blog-copy); }
.blog-listing { padding: clamp(70px,8vw,115px) 0; background: linear-gradient(180deg,#fafaff,#f5f7ff); }
.b-grid { gap: 20px; }
.b-card { border: 1px solid var(--blog-line); border-radius: 26px; background: #fff; box-shadow: var(--blog-shadow); overflow: hidden; }
.b-card__img { background: var(--blog-surface); }
.b-card__body { padding: 26px; }
.b-card__title { color: var(--blog-ink); letter-spacing: -.025em; }
.b-card__desc { color: var(--blog-copy); }
.b-pill { border: 0; background: var(--blog-primary-soft); color: var(--blog-primary-dark); }
.b-card__link { color: var(--blog-primary); }

.reading-progress { background: #eceefa; }
.reading-progress__bar { background: var(--blog-primary); }
.article { color: var(--blog-ink); }
.article__header { padding-top: clamp(150px,15vw,205px); }
.article__title { color: var(--blog-ink); letter-spacing: -.045em; }
.article__subtitle, .article__content p, .article__list { color: var(--blog-copy); }
.article__meta-row { color: var(--blog-muted); }
.article__hero { border-radius: 30px; box-shadow: var(--blog-shadow); }
.article__section h2, .article__section h3 { color: var(--blog-ink); }
.article__quote { border-color: #dcd8ff; border-radius: 22px; background: var(--blog-primary-soft); }
.article__quote-badge { background: #fff; color: var(--blog-primary); }
.article__checklist { border-color: var(--blog-line); border-radius: 22px; background: var(--blog-surface); }
.article__table-wrap { border-color: var(--blog-line); border-radius: 20px; box-shadow: var(--blog-shadow); }
.article a { color: var(--blog-primary); }
.article span[style*="#ff7446"] { color: var(--blog-primary) !important; }

.footer-cta-section { border-radius: 34px; background: var(--blog-primary-soft); }
.footer-cta .section-h span[style*="#ff7446"] { color: var(--blog-primary) !important; }
.web-cta { color: var(--blog-primary); }
footer > div { background: #f6f7fc !important; }
.footer__col-links a:hover { color: var(--blog-primary); }

@media (max-width: 620px) {
  .site-header { top: 9px; }
  .navbar { min-height: 60px; border-radius: 18px; }
  .blog-hero { padding-top: 125px; }
  .article__header { padding-top: 122px; }
  .b-card, .article__hero { border-radius: 22px; }
}
.blog-hero { margin-top: 0 !important; }
.blog-hero .section-h mark,
.blog-hero .section-h mark::before,
.blog-hero .section-h mark::after {
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
  color: var(--blog-primary) !important;
}
