/* OnlyRank light editorial theme */
:root {
  color-scheme: light !important;
  --dark: #ffffff !important;
  --bg: #ffffff !important;
  --bg-primary: #ffffff !important;
  --bg-secondary: #ffffff !important;
  --panel: #faf8fc !important;
  --card: #ffffff !important;
  --card-bg: #ffffff !important;
  --card-border: #e8e1ec !important;
  --line: #e8e1ec !important;
  --text: #171717 !important;
  --text-primary: #171717 !important;
  --text-secondary: #3f3a43 !important;
  --text-muted: #615968 !important;
  --muted: #514a56 !important;
  --soft: #615968 !important;
  --accent: #6d28d9 !important;
  --pink: #c0267a !important;
  --purple: #6d28d9 !important;
}
html, body {
  background: #ffffff !important;
  background-image: none !important;
  color: #171717 !important;
}
html::before, html::after, body::before, body::after {
  content: none !important;
  display: none !important;
}
/* Remove dark fills and shadows from the reading area. */
body * {
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  color: #171717 !important;
  -webkit-text-fill-color: #171717 !important;
}
body *::before, body *::after {
  background-image: none !important;
  box-shadow: none !important;
}
/* Editorial cards and callouts: a fine frame, pale fill, and quiet depth. */
body :is(.card, .panel, .box, .faq-item, .faq-question, .faq-answer, .toc, .note, .author,
  .related, .callout, .tip, .step, ol.steps > li, .feature, .feat-card, .price-card,
  .article-card, .content-card, .post-card, .warning, .info, .info-box, .alert,
  .stat-card, .income-card, .pricing-card, .case-study, .problem-card, .rec-card,
  .geo-card, .geo-detailed-card, .recommendation-cards .rec-card, .faq h3) {
  background-color: #ffffff !important;
  border: 1px solid #e8e1ec !important;
  border-radius: 16px !important;
  box-shadow: 0 7px 22px rgba(45, 25, 59, 0.055) !important;
}
body :is(.alert-info, .info-box, .info, .tip) {
  background-color: #f6f2fb !important;
  border-left: 4px solid #7c3aed !important;
}
body :is(.alert-warning, .warning, .note) {
  background-color: #fff8ee !important;
  border-left: 4px solid #e59a29 !important;
}
body :is(.cta, .cta-box) {
  background-color: #fff5fa !important;
  border-color: #f0d7e5 !important;
  border-left: 4px solid #c0267a !important;
}
body :is(.eyebrow, .badge, .tag, .section-tag, .geo-status, .geo-status-badge) {
  background-color: #f5effa !important;
  border-color: #e4d6f0 !important;
  border-radius: 999px !important;
}
/* Light page dividers and tighter editorial rhythm. */
body .content-section {
  padding: 34px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid #eee8f1 !important;
}
body .content-section h2:first-child { margin-top: 0 !important; }
body :is(.shell, .blog-shell) {
  padding-top: 34px !important;
  padding-bottom: 56px !important;
}
body .wrap {
  padding-top: 64px !important;
  padding-bottom: 64px !important;
}
body h1 {
  color: #171717 !important;
  -webkit-text-fill-color: #171717 !important;
  line-height: 1.14 !important;
  margin: 14px 0 16px !important;
}
body h2 {
  color: #171717 !important;
  -webkit-text-fill-color: #171717 !important;
  line-height: 1.24 !important;
  margin: 30px 0 13px !important;
  padding-left: 13px !important;
  border-left: 3px solid #c0267a !important;
}
body h3 {
  color: #171717 !important;
  -webkit-text-fill-color: #171717 !important;
  line-height: 1.34 !important;
  margin: 19px 0 8px !important;
}
/* Unified journal type scale + reading column width, scoped to article
   content only (.shell = old article template, .hero/.content-section =
   newer template) so the homepage hero, blog index cards, join.html and
   the noindex utility pages are left untouched. */
body :is(.shell, .hero) h1 {
  font-size: clamp(2rem, 5.4vw, 3.8rem) !important;
}
body :is(.shell, .content-section) h2 {
  font-size: clamp(1.45rem, 3.6vw, 2.2rem) !important;
}
body :is(.shell, .content-section) h3 {
  font-size: clamp(1.12rem, 2.5vw, 1.38rem) !important;
}
body :is(.shell, .content-section, .container-narrow) :is(p, li) {
  font-size: 18px !important;
}
/* .container-narrow excluded: on onlyfans-registraciya-iz-rossii-2026.html
   it also wraps a 5-column .status-grid that needs its current ~840px width
   to avoid the cards getting cramped on wide viewports. */
body .shell {
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body p {
  color: #242126 !important;
  -webkit-text-fill-color: #242126 !important;
  line-height: 1.68 !important;
  margin: 10px 0 !important;
}
body li {
  color: #242126 !important;
  -webkit-text-fill-color: #242126 !important;
  line-height: 1.65 !important;
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}
body :is(.author, .toc, .related, .note, .alert, .info-box, .cta, .cta-box) {
  margin: 17px 0 !important;
  padding: 18px 21px !important;
}
body :is(.geo-grid, .geo-detailed-grid, .grid, .features-grid, .problems-grid) {
  gap: 14px !important;
  margin-top: 17px !important;
  margin-bottom: 17px !important;
}
body :is(.geo-card, .geo-detailed-card, .income-card, .pricing-card, .problem-card, .rec-card, .faq-item) {
  padding: 17px !important;
}
body ol.steps > li { margin: 9px 0 !important; padding: 14px 16px !important; }
body .faq-item { margin: 0 0 12px !important; }
body hr { border-color: #e8e1ec !important; }
/* Brand-coloured links remain distinct from black body copy. */
body a {
  color: #6d28d9 !important;
  -webkit-text-fill-color: #6d28d9 !important;
  text-decoration-color: currentColor !important;
  text-underline-offset: 3px;
}
body a:hover {
  color: #c0267a !important;
  -webkit-text-fill-color: #c0267a !important;
}
body a.article-card { color: #171717 !important; -webkit-text-fill-color: #171717 !important; }
body a.article-card :is(h2, h3, .read-more) {
  color: #6d28d9 !important;
  -webkit-text-fill-color: #6d28d9 !important;
}
body a.article-card :is(p, .excerpt, .description) {
  color: #242126 !important;
  -webkit-text-fill-color: #242126 !important;
}
body :is(button, [role="button"], .btn, .button, .btn-primary, .btn-secondary,
  .nav-cta, .cta, .cta-btn, .cta-link, .path-cta, .join-btn) {
  background-color: #f1eaff !important;
  background-image: none !important;
  border: 1px solid #d8c8f1 !important;
  border-radius: 999px !important;
  color: #5b21b6 !important;
  -webkit-text-fill-color: #5b21b6 !important;
  box-shadow: 0 4px 12px rgba(91, 33, 182, 0.1) !important;
}
body :is(button, [role="button"], .btn, .button, .btn-primary, .btn-secondary,
  .nav-cta, .cta, .cta-btn, .cta-link, .path-cta, .join-btn):hover {
  background-color: #e9dcff !important;
  color: #4c1d95 !important;
  -webkit-text-fill-color: #4c1d95 !important;
}
/* Deep plum masthead and footer frame the white article pages. */
body :is(header:not(.hero), footer, .footer, .site-header, .site-footer, .navbar, .topbar,
  nav.nav:not(.toc):not(.breadcrumbs), .nav:not(.toc):not(.breadcrumbs)) {
  background-color: #28163a !important;
  background-image: linear-gradient(115deg, #21122f 0%, #352047 62%, #472451 100%) !important;
  border-color: rgba(255,255,255,.14) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
body :is(header:not(.hero), footer, .footer, .site-header, .site-footer, .navbar, .topbar,
  nav.nav:not(.toc):not(.breadcrumbs), .nav:not(.toc):not(.breadcrumbs)) * {
  color: #f7f1fb !important;
  -webkit-text-fill-color: #f7f1fb !important;
}
body :is(header:not(.hero), footer, .footer, .site-header, .site-footer, .navbar, .topbar,
  nav.nav:not(.toc):not(.breadcrumbs), .nav:not(.toc):not(.breadcrumbs)) a:not(.nav-cta):not(.btn-primary) {
  color: #f2b6d8 !important;
  -webkit-text-fill-color: #f2b6d8 !important;
}
body :is(header:not(.hero), footer, .footer, .site-header, .site-footer, .navbar, .topbar,
  nav.nav:not(.toc):not(.breadcrumbs), .nav:not(.toc):not(.breadcrumbs))
  :is(button, .nav-cta, .btn, .btn-primary, .btn-secondary) {
  background-color: #f0e6fb !important;
  background-image: none !important;
  border-color: rgba(255,255,255,.28) !important;
  color: #51227d !important;
  -webkit-text-fill-color: #51227d !important;
}
body input, body textarea, body select {
  background: #ffffff !important;
  color: #171717 !important;
  border-color: #cbd5e1 !important;
}
body ::placeholder { color: #64748b !important; opacity: 1 !important; }
@media (max-width: 700px) {
  body :is(.shell, .blog-shell) { padding: 26px 16px 44px !important; }
  body .content-section { padding: 25px 0 !important; }
  body h2 { margin-top: 23px !important; padding-left: 10px !important; }
  body :is(.author, .toc, .related, .note, .alert, .info-box, .cta, .cta-box) { padding: 15px 16px !important; }
}

/* Shared branded masthead and footer for the blog index and articles. */
.site-header {
  display: block !important;
  width: 100% !important;
  padding: 13px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}
.site-header .nav-container {
  width: min(1160px, calc(100% - 40px)) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 22px !important;
}
.site-header .nav-logo {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 1.35rem !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.site-header .nav-links {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 20px !important;
}
.site-header .nav-links a:not(.nav-cta) {
  color: #f2b6d8 !important;
  -webkit-text-fill-color: #f2b6d8 !important;
  text-decoration: none !important;
}
.site-header .nav-cta {
  display: inline-flex !important;
  align-items: center !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  background: #f0e6fb !important;
  color: #51227d !important;
  -webkit-text-fill-color: #51227d !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}
.site-footer {
  margin-top: 36px !important;
  padding: 30px 0 !important;
  border-top: 1px solid rgba(255,255,255,.13) !important;
}
.site-footer .nav-container {
  width: min(1160px, calc(100% - 40px)) !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px 28px !important;
}
.site-footer .nav-logo {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}
.site-footer .footer-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
}
.site-footer .footer-links a {
  color: #f2b6d8 !important;
  -webkit-text-fill-color: #f2b6d8 !important;
  text-decoration: none !important;
}
.site-footer p { flex-basis: 100% !important; margin: 0 !important; color: #e6dced !important; -webkit-text-fill-color: #e6dced !important; }
@media (max-width: 720px) {
  .site-header .nav-container { width: calc(100% - 28px) !important; align-items: flex-start !important; flex-direction: column !important; gap: 10px !important; }
  .site-header .nav-links { justify-content: flex-start !important; gap: 10px 15px !important; }
  .site-header .nav-cta { padding: 8px 12px !important; }
  .site-footer .nav-container { width: calc(100% - 28px) !important; }
}

/* Keep blog cards and article blocks aligned at every viewport width. */
body .blog-shell {
  width: min(100%, 1160px) !important;
  padding-inline: clamp(16px, 3vw, 32px) !important;
}
body .blog-shell h1 {
  font-size: clamp(2.2rem, 5vw, 3.3rem) !important;
  line-height: 1.08 !important;
  overflow-wrap: anywhere !important;
}
body .blog-shell .lead { max-width: 760px !important; margin-bottom: 34px !important; }
body .blog-shell .articles-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 22px !important;
}
body .blog-shell .article-card {
  min-width: 0 !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  overflow-wrap: anywhere !important;
}
body .blog-shell .article-card > img.article-cover {
  width: 100% !important;
  max-width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  object-fit: cover !important;
  border-radius: 15px 15px 0 0 !important;
}
body .shell {
  width: min(900px, calc(100% - 32px)) !important;
  margin-inline: auto !important;
}
body .shell > * { min-width: 0 !important; overflow-wrap: anywhere !important; }
body .shell img { max-width: 100% !important; height: auto !important; }
body .shell .hero img { display: block !important; width: 100% !important; }
body .shell .grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}
body .shell .grid > * { min-width: 0 !important; overflow-wrap: anywhere !important; }
body .shell :is(pre, table) { display: block !important; max-width: 100% !important; overflow-x: auto !important; }
body .shell .sources {
  margin: 18px 0 !important;
  padding: 15px 18px !important;
  background: #f8f5fa !important;
  border: 1px solid #e8e1ec !important;
  border-left: 4px solid #c0267a !important;
  border-radius: 12px !important;
  overflow-wrap: anywhere !important;
}
@media (max-width: 700px) {
  body .blog-shell { width: 100% !important; }
  body .blog-shell .articles-grid { grid-template-columns: minmax(0, 1fr) !important; gap: 16px !important; }
  body .shell { width: 100% !important; padding-inline: 16px !important; }
  body .shell .grid { grid-template-columns: minmax(0, 1fr) !important; }
  body .shell h1 { font-size: clamp(1.85rem, 7vw, 2.2rem) !important; }
  body .shell .hero img { border-radius: 14px !important; }
  body .shell :is(.author, .toc, .note, .card, .faq-item) { padding: 15px !important; }
}

/* Editorial homepage: restrained colors, clear pathways, consistent cards. */
body.homepage .hero {
  min-height: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: clamp(54px, 7vw, 88px) max(24px, calc((100vw - 1160px) / 2)) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(350px, .82fr) !important;
  grid-template-areas: "badge paths" "title paths" "sub paths";
  align-content: center !important;
  align-items: center !important;
  justify-content: stretch !important;
  gap: 0 clamp(44px, 6vw, 86px) !important;
  text-align: left !important;
  background:
    radial-gradient(ellipse 58% 82% at 3% 0%, rgba(109,40,217,.075), transparent 70%),
    linear-gradient(180deg, #fff 0%, #fbf9fd 100%) !important;
  border-bottom: 1px solid #eee8f1 !important;
}
body.homepage .hero > .hero-badge { grid-area: badge; justify-self: start !important; margin: 0 0 22px !important; }
body.homepage .hero > h1 {
  grid-area: title;
  max-width: 700px !important;
  margin: 0 0 18px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(2.8rem, 5.1vw, 4.5rem) !important;
  font-weight: 700 !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em !important;
  color: #21172a !important;
  -webkit-text-fill-color: #21172a !important;
}
body.homepage .hero > h1 .grad {
  background: linear-gradient(90deg, #6d28d9, #b83280) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
body.homepage .hero > .hero-sub {
  grid-area: sub;
  max-width: 570px !important;
  margin: 0 !important;
  color: #514a56 !important;
  -webkit-text-fill-color: #514a56 !important;
  font-size: clamp(1.05rem, 1.5vw, 1.22rem) !important;
  line-height: 1.7 !important;
}
body.homepage .hero > div[style*="max-width:460px"] {
  grid-area: paths;
  width: 100% !important;
  max-width: 450px !important;
  margin: 0 !important;
  justify-self: end !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}
body.homepage .hero > div[style*="max-width:460px"] > div {
  padding: 21px 22px !important;
  border: 1px solid #e8e1ec !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 9px 28px rgba(45,25,59,.07) !important;
}
body.homepage .hero > div[style*="max-width:460px"] > div:first-child { border-top: 3px solid #c0267a !important; }
body.homepage .hero > div[style*="max-width:460px"] > div:last-child { border-top: 3px solid #6d28d9 !important; }
body.homepage .hero > div[style*="max-width:460px"] > div p {
  color: #514a56 !important;
  -webkit-text-fill-color: #514a56 !important;
  font-size: .95rem !important;
  line-height: 1.6 !important;
}
body.homepage .hero .btn-primary,
body.homepage .hero > div[style*="max-width:460px"] > div > a:last-child {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 12px 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #6d28d9 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: .94rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 5px 14px rgba(109,40,217,.18) !important;
}
body.homepage .hero .btn-primary:hover,
body.homepage .hero > div[style*="max-width:460px"] > div > a:last-child:hover { background: #5521a5 !important; }
body.homepage .wrap {
  width: min(100%, 1200px) !important;
  margin-inline: auto !important;
  padding: clamp(54px, 7vw, 82px) clamp(20px, 3vw, 32px) !important;
}
body.homepage .section-tag { color: #6d28d9 !important; -webkit-text-fill-color: #6d28d9 !important; }
body.homepage .section-title {
  max-width: 780px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(2rem, 4vw, 3.1rem) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  color: #21172a !important;
  -webkit-text-fill-color: #21172a !important;
}
body.homepage .section-sub {
  max-width: 720px !important;
  margin-bottom: 34px !important;
  color: #514a56 !important;
  -webkit-text-fill-color: #514a56 !important;
  font-size: 1.05rem !important;
  line-height: 1.7 !important;
}
body.homepage .paths-grid,
body.homepage .features-grid,
body.homepage .who-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 20px !important;
}
body.homepage .path-card,
body.homepage .who-card {
  min-width: 0 !important;
  height: 100% !important;
  padding: 27px 25px !important;
  border: 1px solid #e8e1ec !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 8px 25px rgba(45,25,59,.055) !important;
  overflow-wrap: anywhere !important;
}
body.homepage .path-card h3,
body.homepage .who-card h3,
body.homepage .feat-card h3 {
  color: #281b31 !important;
  -webkit-text-fill-color: #281b31 !important;
  line-height: 1.3 !important;
  margin-bottom: 10px !important;
}
body.homepage .path-card p,
body.homepage .feat-card p,
body.homepage .who-card p {
  color: #514a56 !important;
  -webkit-text-fill-color: #514a56 !important;
  line-height: 1.65 !important;
}
body.homepage .path-who { color: #6d28d9 !important; -webkit-text-fill-color: #6d28d9 !important; }
body.homepage .path-list { margin: 16px 0 22px !important; gap: 10px !important; }
body.homepage .path-list li { color: #39323e !important; -webkit-text-fill-color: #39323e !important; }
body.homepage .path-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  background: #f2eafa !important;
  color: #5b21b6 !important;
  -webkit-text-fill-color: #5b21b6 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
body.homepage .feat-card { padding: 27px 25px !important; }
body.homepage .problem-wrap {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  padding: 20px !important;
  border: 1px solid #e8e1ec !important;
  border-radius: 20px !important;
  background: #f8f5fa !important;
  box-shadow: none !important;
}
body.homepage .problem-col {
  min-width: 0 !important;
  padding: 26px !important;
  border: 1px solid #eee8f1 !important;
  border-radius: 16px !important;
  background: #fff !important;
}
body.homepage .problem-col h3 { color: #3c2d46 !important; -webkit-text-fill-color: #3c2d46 !important; }
body.homepage .problem-list li { color: #39323e !important; -webkit-text-fill-color: #39323e !important; }
body.homepage .steps-wrap {
  padding: 24px 32px !important;
  border: 1px solid #e8e1ec !important;
  border-radius: 20px !important;
  background: #faf8fc !important;
}
body.homepage .step { grid-template-columns: 56px minmax(0,1fr) !important; gap: 18px !important; border-bottom-color: #e8e1ec !important; }
body.homepage .step-num { color: #fff !important; -webkit-text-fill-color: #fff !important; }
body.homepage .step h3 { color: #281b31 !important; -webkit-text-fill-color: #281b31 !important; }
body.homepage .step p { color: #514a56 !important; -webkit-text-fill-color: #514a56 !important; }
body.homepage .card-preview-wrap { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important; gap: clamp(28px, 5vw, 64px) !important; }
body.homepage .card-preview-wrap > * { min-width: 0 !important; }
body.homepage .card-mockup { box-shadow: 0 18px 42px rgba(45,25,59,.17) !important; }
body.homepage .cta-bottom {
  margin: 30px auto !important;
  max-width: 900px !important;
  padding: clamp(30px, 5vw, 52px) !important;
  border: 1px solid #e8ddec !important;
  border-radius: 22px !important;
  background: linear-gradient(135deg, #f8f3fb, #fff8fb) !important;
  box-shadow: 0 10px 30px rgba(45,25,59,.07) !important;
  text-align: center !important;
}
body.homepage .cta-bottom :is(h2, h3, p) { color: #281b31 !important; -webkit-text-fill-color: #281b31 !important; }
body.homepage .cta-bottom a { background: #6d28d9 !important; color: #fff !important; -webkit-text-fill-color: #fff !important; }
body.homepage .divider { height: 1px !important; max-width: 1136px !important; margin: 0 auto !important; background: #eee8f1 !important; }
@media (max-width: 900px) {
  body.homepage .hero {
    grid-template-columns: minmax(0, 1fr) minmax(300px, .9fr) !important;
    gap: 0 32px !important;
    padding-inline: 28px !important;
  }
  body.homepage .paths-grid, body.homepage .features-grid, body.homepage .who-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 680px) {
  body.homepage .hero {
    display: flex !important;
    min-height: 0 !important;
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: left !important;
    padding: 38px 18px 44px !important;
    gap: 0 !important;
  }
  body.homepage .hero > .hero-badge { margin-bottom: 18px !important; }
  body.homepage .hero > h1 { font-size: clamp(2.25rem, 11vw, 3.2rem) !important; margin-bottom: 14px !important; }
  body.homepage .hero > h1 br, body.homepage .hero > .hero-sub br { display: none !important; }
  body.homepage .hero > .hero-sub { margin-bottom: 24px !important; }
  body.homepage .hero > div[style*="max-width:460px"] { max-width: none !important; }
  body.homepage .hero > div[style*="max-width:460px"] > div { padding: 18px !important; }
  body.homepage .wrap { padding: 48px 18px !important; }
  body.homepage .paths-grid, body.homepage .features-grid, body.homepage .who-grid,
  body.homepage .problem-wrap, body.homepage .card-preview-wrap { grid-template-columns: minmax(0,1fr) !important; }
  body.homepage .problem-wrap { padding: 12px !important; gap: 12px !important; }
  body.homepage .problem-col { padding: 20px !important; }
  body.homepage .steps-wrap { padding: 12px 20px !important; }
  body.homepage .step { grid-template-columns: 42px minmax(0,1fr) !important; gap: 12px !important; padding: 21px 0 !important; }
  body.homepage .step-num { width: 40px !important; height: 40px !important; font-size: 1rem !important; }
  body.homepage .card-preview-wrap { gap: 25px !important; }
}


/* Clear editorial components used across the article families. */
body :is(.quick-answer, .callout, .example, .sourcebox, .formula) {
  background: #f6f2fb !important;
  border: 1px solid #e8e1ec !important;
  border-left: 4px solid #7c3aed !important;
  border-radius: 14px !important;
  padding: 17px 20px !important;
}
body :is(.status-card, .hero-card, .article-panel, .decision-card, .quote-card,
  .metric, .module, .lesson, .week, .format-card, .access-card) {
  background: #fff !important;
  border: 1px solid #e8e1ec !important;
  border-radius: 16px !important;
  box-shadow: 0 6px 18px rgba(45, 25, 59, .05) !important;
  padding: 18px !important;
}
body :is(.cta-section, .cta) {
  background: #fbf5fc !important;
  border: 1px solid #eadced !important;
  border-left: 4px solid #c0267a !important;
  border-radius: 16px !important;
  padding: 22px !important;
}
body :is(.status-grid, .stat-grid) {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
body table {
  width: 100% !important;
  border-collapse: collapse !important;
  border: 1px solid #e8e1ec !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #fff !important;
}
body :is(th, td) {
  padding: 12px 14px !important;
  border: 1px solid #e8e1ec !important;
  vertical-align: top !important;
  line-height: 1.55 !important;
}
body th {
  background: #f6f2fb !important;
  font-weight: 700 !important;
}
/* Reserve space for the numbered marker; keep it clear of the first word. */
body ol.steps > li {
  position: relative !important;
  min-height: 58px !important;
  padding: 15px 18px 15px 64px !important;
}
body ol.steps > li::before {
  left: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 30px !important;
  height: 30px !important;
  display: grid !important;
  place-items: center !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: #6d28d9 !important;
}
@media (max-width: 720px) {
  body :is(.status-grid, .stat-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body ol.steps > li { padding-left: 60px !important; }
}
@media (max-width: 480px) {
  body :is(.status-grid, .stat-grid) { grid-template-columns: 1fr !important; }
  body ol.steps > li { padding: 14px 14px 14px 56px !important; }
  body ol.steps > li::before { left: 14px !important; }
}

/* Modern magazine rhythm for the blog index and long-form stories. */
body {
  background-color: #fffdfb !important;
}
body .blog-shell,
body .shell {
  color: #201b21 !important;
}
body .blog-shell h1,
body .shell h1,
body .shell h2,
body .shell h3,
body .blog-shell .article-body h2 {
  font-family: Georgia, "Times New Roman", serif !important;
  color: #241b27 !important;
  -webkit-text-fill-color: #241b27 !important;
  font-weight: 500 !important;
  letter-spacing: -.025em !important;
}
body .shell {
  max-width: 780px !important;
  padding-top: 48px !important;
  padding-bottom: 74px !important;
}
body .shell > .brand {
  color: #6d28d9 !important;
  -webkit-text-fill-color: #6d28d9 !important;
  font-size: .88rem !important;
  letter-spacing: .025em !important;
}
body .shell > .tag {
  margin-top: 26px !important;
  padding: 6px 11px !important;
  border: 0 !important;
  border-radius: 3px !important;
  background: #f6edf5 !important;
  color: #8a2867 !important;
  -webkit-text-fill-color: #8a2867 !important;
  font-size: .77rem !important;
  font-weight: 700 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}
body .shell h1 {
  margin: 12px 0 15px !important;
  font-size: clamp(2.35rem, 5vw, 3.8rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
}
body .shell .meta {
  margin: 0 0 21px !important;
  padding-bottom: 17px !important;
  border-bottom: 1px solid #e9e2e9 !important;
  color: #746d75 !important;
  -webkit-text-fill-color: #746d75 !important;
  font-size: .86rem !important;
}
body .shell .intro {
  margin: 0 0 24px !important;
  color: #302a31 !important;
  -webkit-text-fill-color: #302a31 !important;
  font-size: clamp(1.12rem, 1.8vw, 1.27rem) !important;
  line-height: 1.68 !important;
}
body .shell .author {
  margin: 22px 0 30px !important;
  padding: 17px 20px !important;
  border: 0 !important;
  border-left: 3px solid #c0267a !important;
  border-radius: 0 10px 10px 0 !important;
  background: #faf5f8 !important;
  box-shadow: none !important;
}
body .shell .author blockquote {
  margin: 9px 0 13px !important;
  color: #484049 !important;
  -webkit-text-fill-color: #484049 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.08rem !important;
  line-height: 1.58 !important;
}
body .shell .toc {
  margin: 25px 0 30px !important;
  padding: 17px 20px !important;
  border: 1px solid #e8e0e9 !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
}
body .shell .toc > strong {
  color: #6d28d9 !important;
  -webkit-text-fill-color: #6d28d9 !important;
  font-size: .8rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
body .shell :is(p, li) {
  color: #302b31 !important;
  -webkit-text-fill-color: #302b31 !important;
  font-size: 1.04rem !important;
  line-height: 1.78 !important;
}
body .shell p { margin: 13px 0 !important; }
body .shell h2 {
  margin: 39px 0 13px !important;
  padding: 0 0 9px !important;
  border: 0 !important;
  border-bottom: 1px solid #e9e2e9 !important;
  font-size: clamp(1.7rem, 3.4vw, 2.25rem) !important;
  line-height: 1.18 !important;
}
body .shell h3 {
  margin: 23px 0 8px !important;
  font-size: 1.35rem !important;
  line-height: 1.28 !important;
}
body .shell :is(.note, .faq-item, .card, .sources, .quick-answer, .callout, .example, .sourcebox, .formula) {
  box-shadow: none !important;
}
body .shell :is(.note, .quick-answer, .callout, .example, .sourcebox, .formula) {
  background: #f8f4fa !important;
  border: 1px solid #e9e0ed !important;
  border-left: 3px solid #7c3aed !important;
  border-radius: 0 10px 10px 0 !important;
}
body .shell .faq-item {
  margin: 0 0 12px !important;
  padding: 17px 19px !important;
  border: 1px solid #e9e2e9 !important;
  border-radius: 10px !important;
  background: #fff !important;
}
body .shell .faq-item h3 { margin: 0 0 7px !important; }
body .shell .hero { margin: 24px 0 29px !important; }
body .shell .hero img {
  border: 0 !important;
  border-radius: 3px !important;
}
body .shell .hero figcaption {
  margin-top: 8px !important;
  color: #777078 !important;
  -webkit-text-fill-color: #777078 !important;
  font-size: .82rem !important;
}
body .shell :is(.sources, .sourcebox) {
  color: #69616b !important;
  -webkit-text-fill-color: #69616b !important;
  font-size: .88rem !important;
  line-height: 1.6 !important;
}
body .shell a:not(.brand):not(.cta-link) {
  color: #6d28d9 !important;
  -webkit-text-fill-color: #6d28d9 !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}
body .shell .cta-link {
  background: #6d28d9 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}
body .blog-shell {
  padding-top: 55px !important;
  padding-bottom: 78px !important;
}
body .blog-shell .back-link {
  margin-bottom: 30px !important;
  color: #6d28d9 !important;
  -webkit-text-fill-color: #6d28d9 !important;
}
body .blog-shell .eyebrow {
  padding: 0 !important;
  margin-bottom: 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #a02e73 !important;
  -webkit-text-fill-color: #a02e73 !important;
  font-size: .76rem !important;
  font-weight: 700 !important;
  letter-spacing: .13em !important;
}
body .blog-shell h1 {
  max-width: 820px !important;
  margin: 0 0 14px !important;
  font-size: clamp(3rem, 6vw, 4.8rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.045em !important;
}
body .blog-shell h1 .grad {
  background: none !important;
  -webkit-text-fill-color: #6d28d9 !important;
  color: #6d28d9 !important;
}
body .blog-shell .lead {
  max-width: 720px !important;
  margin: 0 0 37px !important;
  color: #514a56 !important;
  -webkit-text-fill-color: #514a56 !important;
  font-size: clamp(1.08rem, 1.8vw, 1.24rem) !important;
  line-height: 1.72 !important;
}
body .blog-shell .articles-grid { gap: 20px !important; }
body .blog-shell .article-card {
  border: 1px solid #e9e1e9 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 5px 20px rgba(45, 25, 59, .045) !important;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}
body .blog-shell .article-card:hover {
  transform: translateY(-3px) !important;
  border-color: #d8bfd5 !important;
  box-shadow: 0 12px 30px rgba(45, 25, 59, .09) !important;
}
body .blog-shell .article-card > img.article-cover { border-radius: 0 !important; }
body .blog-shell .article-body {
  padding: 22px 23px 23px !important;
  gap: 11px !important;
}
body .blog-shell .article-body .badge {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #a02e73 !important;
  -webkit-text-fill-color: #a02e73 !important;
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}
body .blog-shell .article-body h2 {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  font-size: clamp(1.34rem, 2.1vw, 1.72rem) !important;
  line-height: 1.23 !important;
  letter-spacing: -.02em !important;
}
body .blog-shell .article-body p {
  margin: 0 !important;
  color: #5b555d !important;
  -webkit-text-fill-color: #5b555d !important;
  font-size: .97rem !important;
  line-height: 1.62 !important;
}
body .blog-shell .article-body .read-more {
  margin-top: auto !important;
  padding-top: 6px !important;
  color: #6d28d9 !important;
  -webkit-text-fill-color: #6d28d9 !important;
  font-size: .88rem !important;
}
body .blog-shell .articles-grid > .article-card:first-child {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr) !important;
  grid-template-rows: 1fr !important;
}
body .blog-shell .articles-grid > .article-card:first-child > img.article-cover {
  width: 100% !important;
  height: 100% !important;
  min-height: 300px !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
}
body .blog-shell .articles-grid > .article-card:first-child .article-body {
  justify-content: center !important;
  padding: clamp(24px, 4vw, 48px) !important;
}
body .blog-shell .articles-grid > .article-card:first-child .article-body h2 {
  font-size: clamp(1.8rem, 3vw, 2.6rem) !important;
  line-height: 1.13 !important;
}
body .blog-shell .note {
  max-width: 720px !important;
  margin: 30px auto 0 !important;
  padding-top: 17px !important;
  border-top: 1px solid #e9e2e9 !important;
  color: #706873 !important;
  -webkit-text-fill-color: #706873 !important;
}
@media (max-width: 700px) {
  body .shell { width: 100% !important; padding: 33px 18px 54px !important; }
  body .shell h1 { font-size: clamp(2.15rem, 9vw, 2.8rem) !important; }
  body .shell h2 { margin-top: 31px !important; }
  body .shell :is(p, li) { font-size: 1rem !important; line-height: 1.72 !important; }
  body .blog-shell { padding: 34px 17px 54px !important; }
  body .blog-shell h1 { font-size: clamp(2.7rem, 13vw, 3.8rem) !important; }
  body .blog-shell .articles-grid > .article-card:first-child {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body .blog-shell .articles-grid > .article-card:first-child > img.article-cover {
    min-height: 0 !important;
    aspect-ratio: 16 / 9 !important;
  }
  body .blog-shell .articles-grid > .article-card:first-child .article-body { padding: 22px !important; }
}


/* First-screen typography: keep long Russian headlines balanced on narrow screens. */
body h1 {
  max-width: 100%;
  min-width: 0;
  hyphens: auto;
  overflow-wrap: break-word;
  text-wrap: balance;
}
@media (max-width: 1024px) {
  body.homepage .hero {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: "badge" "title" "sub" "paths" !important;
    align-items: start !important;
    gap: 0 !important;
    padding: 48px clamp(22px, 5vw, 56px) !important;
  }
  body.homepage .hero > h1 {
    max-width: 19ch !important;
    font-size: clamp(2.35rem, 6vw, 3.4rem) !important;
    line-height: 1.08 !important;
    text-wrap: balance !important;
  }
  body.homepage .hero > div[style*="max-width:460px"] {
    width: 100% !important;
    max-width: none !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-self: stretch !important;
    margin-top: 12px !important;
  }
  body.homepage .hero > div[style*="max-width:460px"] > div { min-width: 0 !important; }
}
@media (max-width: 680px) {
  body.homepage .hero { padding: 34px 18px 38px !important; }
  body.homepage .hero > .hero-badge { margin-bottom: 15px !important; }
  body.homepage .hero > h1 {
    max-width: 18ch !important;
    font-size: clamp(1.9rem, 8vw, 2.5rem) !important;
    line-height: 1.08 !important;
    margin-bottom: 13px !important;
  }
  body.homepage .hero > div[style*="max-width:460px"] {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }
  body .shell h1 {
    max-width: 22ch !important;
    font-size: clamp(1.85rem, 6.7vw, 2.3rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -.025em !important;
  }
  body .blog-shell h1 {
    max-width: 20ch !important;
    font-size: clamp(2rem, 8vw, 2.8rem) !important;
    line-height: 1.08 !important;
  }
  body :is(.hero, .page-hero) h1 {
    max-width: 22ch !important;
    font-size: clamp(1.85rem, 7vw, 2.45rem) !important;
    line-height: 1.12 !important;
    text-wrap: balance !important;
  }
}


/* 2026-09-28: fixes for article components (numbered steps, cards, FAQ). */
body .shell ol.steps { list-style: none !important; padding-left: 0 !important; counter-reset: step !important; }
body .shell ol.steps > li { counter-increment: step !important; padding: 15px 18px 15px 60px !important; }
body .shell ol.steps > li::before {
content: counter(step) !important;
position: absolute !important;
top: 15px !important;
left: 16px !important;
transform: none !important;
border-radius: 50% !important;
font-size: .9rem !important;
font-weight: 700 !important;
line-height: 1 !important;
}
body .shell :is(.card, .faq-item, .note, .author) > :first-child { margin-top: 0 !important; }
body .shell :is(.card, .faq-item, .note, .author) > :last-child { margin-bottom: 0 !important; }
body .shell .grid .card { padding: 18px 19px !important; border-radius: 10px !important; box-shadow: none !important; }
body .shell .grid .card h3 { font-size: 1.15rem !important; margin-bottom: 6px !important; }
body .shell .grid .card p { font-size: .96rem !important; line-height: 1.6 !important; }
body .shell ul:not(.steps), body .shell ol:not(.steps) { padding-left: 22px !important; }
body .shell .related-list { list-style: none !important; padding-left: 0 !important; display: grid !important; gap: 10px !important; }
body .shell .related-list li { margin: 0 !important; padding: 13px 16px !important; border: 1px solid #e9e2e9 !important; border-radius: 10px !important; background: #fff !important; }
body .shell .related-list a { text-decoration: none !important; font-weight: 600 !important; }
body .shell .related-list li span { display: block !important; margin-top: 3px !important; font-size: .9rem !important; color: #69616b !important; -webkit-text-fill-color: #69616b !important; line-height: 1.5 !important; }
body .shell .summary { margin: 18px 0 !important; padding: 18px 20px !important; border-radius: 10px !important; background: #f8f4fa !important; border: 1px solid #e9e0ed !important; }
body .shell .summary ul { margin: 8px 0 0 !important; }
@media (max-width: 480px) {
body .shell ol.steps > li { padding: 14px 14px 14px 52px !important; }
body .shell ol.steps > li::before { left: 12px !important; top: 14px !important; }
}

/* --- Consolidated from duplicated page-level <style> blocks (byte-identical, conflict-free) --- */
.author em{color:#ffabc9}
.content-section:nth-child(even) {
            background: rgba(255,255,255,0.02);
        }
.cta p{margin:0 0 17px}
.cta-link{display:inline-flex;background:linear-gradient(135deg,var(--p),var(--o));padding:11px 18px;border-radius:12px;color:#160611;text-decoration:none;font-weight:800}
.example p{margin:0;font-size:1rem}
.faq h3{padding:17px 19px;margin-top:18px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.04)}
.faq-item p{margin-bottom:0}
.faq-item.active .faq-answer {
            max-height: 500px;
        }
.faq-item.active .faq-icon {
            transform: rotate(45deg);
        }
.gradient-text {
            background: var(--gradient-primary);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
.hamburger {
            display: none;
            flex-direction: column;
            gap: 5px;
            cursor: pointer;
            padding: 5px;
        }
.ok{border-left-color:var(--ok)}
.sources li{margin:8px 0}
.stat span{color:#dacde7;line-height:1.45}
/* Feature List */
        .feature-list {
            list-style: none;
            margin: 1.5rem 0;
        }
/* Steps */
        .steps {
            margin: 2rem 0;
        }
@media(max-width:700px){.shell{padding:28px 16px 58px}.grid{grid-template-columns:1fr}.author,.toc,.note,.related,.cta{padding:18px}.hero img{border-radius:15px}p,li{font-size:1rem}}
