/* New grade articles only. Reuses approved preview geometry; shared site CSS remains untouched. */
.rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-shell {
  max-width: 980px;
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-back.is-top {
  margin-bottom: clamp(38px, 5vw, 62px);
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-back .rio-text-link {
  margin-top: 0;
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-meta {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 20px;
  align-items: center;
  color: var(--rio-muted);
  font-size: 0.82rem;
  font-weight: 500;
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-category {
  padding: 7px 14px;
  color: #7a3b0a;
  border-radius: 999px;
  background: rgba(240, 149, 74, 0.18);
  font-size: 0.75rem;
  font-weight: 700;
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-body {
  padding: clamp(30px, 5vw, 68px);
  border: 1px solid rgba(28, 51, 80, 0.1);
  border-radius: 30px 14px 30px 14px;
  background: var(--rio-white);
  box-shadow: 0 16px 38px rgba(28, 51, 80, 0.06);
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-reading-width {
  max-width: 760px;
  margin-inline: auto;
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-introduction p,
.rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-copy p {
  color: var(--rio-muted);
  font-size: clamp(0.96rem, 1.2vw, 1.05rem);
  line-height: 2.15;
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-introduction p:first-child {
  color: var(--rio-navy);
  font-weight: 500;
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-introduction p + p,
.rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-copy p + p {
  margin-top: 24px;
}





 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-copy {
  margin-top: clamp(58px, 7vw, 86px);
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-copy section {
  scroll-margin-top: 110px;
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-copy section + section {
  margin-top: clamp(58px, 7vw, 84px);
  padding-top: clamp(48px, 6vw, 68px);
  border-top: 1px solid var(--rio-line);
}
 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-copy h2 {
  color: var(--rio-navy);
  font-size: clamp(1.55rem, 3vw, 2.25rem);
  line-height: 1.55;
  letter-spacing: 0.025em;
}

 .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-copy h2 + p {
  margin-top: 26px;
}
.rio-home-v2.rio-article-upload-prep a { text-underline-offset: 0.24em; }
.rio-home-v2.rio-article-upload-prep a:focus-visible { outline: 3px solid var(--rio-navy); outline-offset: 4px; }
.rio-home-v2.rio-article-upload-prep .rio-blog-copy ul { padding-left: 1.4em; margin-block: 24px; color: var(--rio-muted); font-size: clamp(0.96rem, 1.2vw, 1.05rem); line-height: 2.15; }
.rio-home-v2.rio-article-upload-prep .rio-blog-copy li + li { margin-top: 10px; }
.rio-home-v2.rio-article-upload-prep .rio-blog-copy a { text-decoration: underline; }
.rio-home-v2.rio-article-upload-prep h1, .rio-home-v2.rio-article-upload-prep h2, .rio-home-v2.rio-article-upload-prep p { overflow-wrap: anywhere; }
@media (max-width: 560px) { .rio-home-v2.rio-article-upload-prep .rio-blog-article .rio-blog-meta { align-items: flex-start; flex-direction: column; } }
.rio-home-v2.rio-article-upload-prep .rio-blog-back.is-bottom { margin-block: clamp(42px, 6vw, 64px); }

/* latest-blog only: approved list fallback geometry, using the existing home card aspect ratios. */
#latest-blog .rio-home-blog-media-fallback { display: grid; place-items: center; padding: 24px; isolation: isolate; background: var(--rio-cream); }
#latest-blog .rio-home-blog-media-fallback::before { content: ""; position: absolute; width: 48%; aspect-ratio: 1; top: -24%; right: -6%; border-radius: 50%; background: rgba(240,149,74,.18); z-index: -1; }
#latest-blog .rio-home-blog-media-fallback::after { content: ""; position: absolute; width: 65%; aspect-ratio: 1.4; bottom: -48%; left: -15%; border: 1px solid rgba(28,51,80,.16); border-radius: 50%; z-index: -1; }
#latest-blog .rio-home-blog-media-fallback > span { position: static; padding: 0; color: var(--rio-navy); border-radius: 0; background: transparent; font-size: clamp(1rem,1.5vw,1.2rem); font-weight: 500; text-align: center; overflow-wrap: anywhere; }
#latest-blog .rio-content-card:focus-visible { outline: 3px solid var(--rio-navy); outline-offset: 5px; }
#latest-blog .rio-content-card-body { overflow-wrap: anywhere; }
