/* Shared homepage design, with a readable layout for editorial pages. */
body.is-content {
  --font-body: var(--body);
  --font-heading: var(--display);
  --text-muted: var(--lp-text-2);
  --accent-blue: var(--neo-1);
  --border: var(--lp-border);
  background: var(--lp-bg);
  color: var(--lp-text-2);
  font-family: var(--body);
}
.is-content main {
  min-height: 65vh;
  background: radial-gradient(ellipse at top left, rgba(34,211,238,.08), transparent 55%), var(--lp-bg);
}
.is-content .container { max-width: var(--container); padding-left: var(--pad-x); padding-right: var(--pad-x); }
.is-content h1, .is-content h2, .is-content h3, .is-content h4 { font-family: var(--display); font-weight: 700; letter-spacing: -.025em; text-wrap: balance; }
.is-content .post-layout { padding-top: 72px; padding-bottom: 96px; grid-template-columns: minmax(0, 760px) minmax(0, 280px); gap: 64px; }
.is-content .post { min-width: 0; overflow-wrap: anywhere; }
.is-content .post h1 { font-size: clamp(32px, 4vw, 48px); line-height: 1.15; margin-bottom: 28px; }
.is-content .post h2 { font-size: clamp(24px, 3vw, 30px); line-height: 1.3; margin-top: 48px; }
.is-content .post h3 { line-height: 1.4; }
.is-content .post p, .is-content .post li { line-height: 1.85; }
.is-content .post a { color: var(--neo-1); text-decoration: underline; text-underline-offset: 4px; }
.is-content .author { padding-bottom: 24px; border-bottom: 1px solid var(--lp-border); }
.is-content .post .embed-img { border: 1px solid var(--lp-border); border-radius: var(--r-lg); margin: 28px 0; background: var(--lp-card); }
.is-content .post pre { background: var(--lp-bg-2); border: 1px solid var(--lp-border-h); border-radius: var(--r-md); padding-top: 56px; }
.is-content .copy-btn { background: var(--neo-gradient); color: var(--lp-bg); border-radius: var(--r-pill); }
.is-content .post-aside { align-self: start; padding: 24px; border: 1px solid var(--lp-border); border-radius: var(--r-lg); background: var(--lp-card); }
.is-content .post-aside h4 { font-size: 16px; }
.is-content .post-aside .miss-card { padding: 14px 0; border: 0; border-bottom: 1px solid var(--lp-border); border-radius: 0; background: transparent; }
.is-content .post-aside .miss-card:last-child { border-bottom: 0; }
.is-content .post-aside .miss-card:hover { color: var(--neo-1); }
.is-content .blog-head { text-align: left; padding-top: 72px; padding-bottom: 28px; }
.is-content .blog-head h1 { font-size: clamp(40px, 5vw, 60px); }
.is-content .blog-card { background: var(--lp-card); border: 1px solid var(--lp-border); border-radius: var(--r-lg); box-shadow: none; }
.is-content .blog-card:hover { background: var(--lp-card-h); border-color: var(--lp-border-h); }
.is-content .blog-card-frame { padding: 0; background: var(--lp-bg-2); }
.is-content .blog-card-frame::before { display: none; }
.is-content .blog-card-body { background: transparent; text-align: left; padding: 24px; }
.is-content .blog-card-body h3 { color: var(--lp-text); font-size: 20px; }
.is-content .hero, .is-content .section { background: transparent; }
.is-content .section { border-top: 1px solid var(--lp-border); }
.is-content .btn { background: var(--neo-gradient); border-radius: var(--r-pill); font-family: var(--body); }
.is-content .faq-title { color: var(--neo-1) !important; font-family: var(--display) !important; }
.lp-nav a[aria-current="page"] { color: var(--lp-text); background: var(--lp-card-h); }
.skip-link { position: fixed; top: 8px; left: 18px; z-index: 100; padding: 12px 18px; background: var(--lp-bg-2); color: #fff; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid var(--neo-1); outline-offset: 5px; }
#main-content { scroll-margin-top: 80px; }
/* The same footer is rendered on the homepage and every content page. */
.site-footer { font-family: var(--body); }
.site-footer h3, .site-footer h4 { font-family: var(--display); }
@media (max-width: 991px) {
  .is-content .post-layout { grid-template-columns: minmax(0, 1fr); gap: 40px; }
}
@media (max-width: 820px) {
  .lp-nav.open { display: flex; position: absolute; top: 100%; left: 0; right: 0; border-radius: 0; padding: 18px; flex-direction: column; align-items: stretch; background: var(--lp-bg); }
  .lp-nav.open a { padding: 14px 18px; }
}
@media (max-width: 640px) {
  .is-content .post-layout { padding-top: 40px; padding-bottom: 56px; }
  .is-content .blog-head { padding-top: 40px; }
  .is-content .blog-grid { padding-top: 12px; gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

.is-content .post > .back-link { margin-bottom: 24px; text-decoration: none; }
.is-content .post .article-meta { color: var(--lp-text-3); font-size: 13px; padding-bottom: 24px; border-bottom: 1px solid var(--lp-border); }

/* Contextual links within guides and landing-page copy. */
a.context-link { color: var(--neo-1); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
a.context-link:hover { color: var(--lp-text); }

.dl-release-note { color: var(--lp-text-3); font-size: 13px; line-height: 1.6; margin: 0 0 16px; }
