/* Match the approved Weather Turns section headings across article layouts. */
body.cg-article h2.cg-numbered-heading {
  display:flex; align-items:flex-start; gap:14px;
  color:#172219; font:700 32px/1.2 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:-.03em;
}
body.cg-article h2.cg-numbered-heading > .cg-section-number {
  box-sizing:border-box; display:grid; place-items:center;
  flex:0 0 42px; width:42px; height:42px; margin:0; padding:0;
  border-radius:50%; background:#456d49; color:#fff;
  font:700 20px/1 Inter,ui-sans-serif,system-ui,sans-serif; letter-spacing:0;
}
body.cg-article h2.cg-numbered-heading > .cg-section-label {
  flex:1; min-width:0; margin:0; padding:0;
  font:inherit; color:inherit; letter-spacing:inherit;
}
@media(max-width:640px) {
  body.cg-article h2.cg-numbered-heading {font-size:25px;}
  body.cg-article h2.cg-numbered-heading > .cg-section-number {flex-basis:34px;width:34px;height:34px;font-size:18px;}
}

/* One contents component, shared by all article templates. */
body.cg-article .cg-contents {
  position:sticky; top:90px; max-height:calc(100dvh - 106px); overflow-y:auto;
  scrollbar-gutter:stable; box-sizing:border-box; padding:20px; margin:0;
  background:#f0f4eb; border:1px solid #dfe5dc; border-radius:18px;
  font:400 14px/1.5 Inter,ui-sans-serif,system-ui,sans-serif; color:#2c4632;
}
body.cg-article.admin-bar .cg-contents {top:122px;max-height:calc(100dvh - 138px);}
body.cg-article .cg-contents h2 {display:block; margin:0 0 12px; color:#294b32; font:700 20px/1.25 Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:0;}
body.cg-article .cg-contents ol {list-style:none;margin:0;padding:0;columns:1;}
body.cg-article .cg-contents li {list-style:none;margin:0;padding:0;font:inherit;}
body.cg-article .cg-contents a {display:flex;align-items:flex-start;gap:9px;padding:7px 0;color:#2c4632;text-decoration:none;font:inherit;}
body.cg-article .cg-contents a:hover {text-decoration:underline;}
body.cg-article .cg-contents a:focus-visible {outline:2px solid #456d49;outline-offset:2px;}
body.cg-article .cg-contents-number {display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:#456d49;color:#fff;font-size:11px;}
body.cg-article h2.cg-numbered-heading {scroll-margin-top:140px;}
body.cg-article-004 .cg-a004-body {max-width:1240px;display:grid;grid-template-columns:minmax(0,790px) 300px;gap:54px;}
body.cg-article-004 .cg-article-prose {min-width:0;}
body.cg-article-004 .cg-contents-sidebar {margin:0;min-width:0;}
@media(max-width:980px) {
  body.cg-article .layout,body.cg-article .cg-guide-layout,body.cg-article-004 .cg-a004-body {display:flex;flex-direction:column;gap:28px;}
  body.cg-article .sidebar,body.cg-article .cg-contents-sidebar,body.cg-article .cg-guide-layout>.cg-contents {order:-1;width:100%;}
  body.cg-article .cg-contents,body.cg-article.admin-bar .cg-contents {position:static;max-height:none;width:100%;}
}
