/* Authored articles use the same shell, type and tokens as the Cleo hand pages. */
body[data-gg-blog-cleo] { color: var(--ink); background: var(--paper); font-family: PPNeue, Arial, sans-serif; font-size: 18px; line-height: 1.62; }
body[data-gg-blog-cleo] .gg-blog-content { width: min(920px, calc(100% - 64px)); margin: 0 auto; padding: 120px 0 80px; overflow-wrap: anywhere; }
.gg-blog-content *, .gg-blog-content *::before, .gg-blog-content *::after { box-sizing: border-box; }
body[data-gg-blog-cleo] .gg-blog-content :is(main, article) { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 32px 0 48px !important; }
body[data-gg-blog-cleo] .gg-blog-content :is(header, section, [class*="card"], [class*="bg-gradient"], [class*="-gradient"], .gradient-bg) { min-width: 0; max-width: 100%; border-color: var(--line) !important; border-radius: 28px !important; color: var(--ink) !important; background: var(--paper) !important; background-image: none !important; box-shadow: none !important; }
body[data-gg-blog-cleo] .gg-blog-content :is(div, aside)[class*="bg-"] { background-color: var(--paper) !important; background-image: none !important; }
body[data-gg-blog-cleo] .gg-blog-content > header { padding: 48px 24px !important; margin: 0 !important; }
body[data-gg-blog-cleo] .gg-blog-content :is(main, article) > header { padding: 32px 0 !important; margin-bottom: 32px !important; }
body[data-gg-blog-cleo] .gg-blog-content :is(h1, h2, h3, h4, p, li, span, strong, td, th) { color: var(--ink) !important; -webkit-text-fill-color: currentColor; text-shadow: none; }
body[data-gg-blog-cleo] .gg-blog-content :is(h1, h2, h3, h4) { font-family: PPNeue, Arial, sans-serif !important; font-weight: 350 !important; letter-spacing: -.045em; }
body[data-gg-blog-cleo] .gg-blog-content h1 { font-size: clamp(40px, 5vw, 64px) !important; line-height: 1.05 !important; text-wrap: balance; }
body[data-gg-blog-cleo] .gg-blog-content h2 { font-size: clamp(28px, 3vw, 40px) !important; line-height: 1.1 !important; margin: 32px 0 18px; }
body[data-gg-blog-cleo] .gg-blog-content :is(h3, h4) { font-size: 24px !important; line-height: 1.2 !important; }
body[data-gg-blog-cleo] .gg-blog-content :is(p, li) { font-size: 18px; line-height: 1.65; }
body[data-gg-blog-cleo] .gg-blog-content a { color: var(--violet) !important; text-underline-offset: .2em; }
body[data-gg-blog-cleo] .gg-blog-content :is(a, button):is([class*="bg-"], [class*="btn"]) { color: #fff !important; background: var(--violet) !important; background-image: none !important; border-radius: 30px; }
body[data-gg-blog-cleo] .gg-blog-content a[class*="bg-"] * { color: inherit !important; }
body[data-gg-blog-cleo] .gg-blog-content :is(span, div)[class*="bg-"]:not([class*="grid"]):not([class*="flex"]) { background-color: var(--lavender) !important; }
body[data-gg-blog-cleo] .gg-blog-content :is(img, svg, table) { max-width: 100%; }
body[data-gg-blog-cleo] .gg-blog-content img { height: auto; border-radius: 28px; }
body[data-gg-blog-cleo] .gg-blog-content :is(.grid, .flex) > * { min-width: 0; }
body[data-gg-blog-cleo] .gg-blog-read-next { display: flex; flex-wrap: wrap; gap: 20px; padding: 32px 0; border-top: 1px solid var(--line); }
body[data-gg-blog-cleo] .gg-blog-read-next a { text-decoration: underline; }
@media (max-width: 650px) {
  body[data-gg-blog-cleo] .gg-blog-content { width: calc(100% - 40px); padding: 100px 0 48px; }
  body[data-gg-blog-cleo] .gg-blog-content > header { padding: 28px 0 !important; }
  body[data-gg-blog-cleo] .gg-blog-content :is(p, li) { font-size: 16px; }
}
