/* ================================================================
   ARTICLES (build_articles.py). Blog, resource articles, city pages, legal.
   These pages rank in Google, so not one word changes. This file only gives
   them a clean reading layout in the same look as the approved pages:
   light sections (white / cream), rounded cards, upright headings,
   spacing scale 10 / 12 / 26, 64 section padding on phones.
   Colors are the kit's only: charcoal #2d302a, sage #818f6b, moss #5f6b52,
   cream #f3f2ec, white, text #45493f, muted #55594f / #6b6f63.
   Body classes: a-art on all; a-post, a-blog, a-res (+ a-seo), a-legal.
   ================================================================ */

/* ---------- 0. Shared base (blog pages ship without the site reset) ---------- */
html body.a-art{margin:0!important;padding:0!important}
html body.a-post footer ul,html body.a-blog footer ul{list-style:none;margin:0;padding:0}
html body.a-post footer a,html body.a-blog footer a{text-decoration:none}
html body.a-post footer p,html body.a-blog footer p{margin:0}
html body.a-art h1 em,html body.a-art h2 em,html body.a-art h3 em,html body.a-art h4 em{font-style:normal}

/* ================================================================
   1. BLOG POSTS (.post-hero + .post-body)
   ================================================================ */
html body.a-post .post-hero{padding:96px 0 40px}
html body.a-post .post-hero .container{max-width:760px;padding:0 20px}
html body.a-post .post-hero .eyebrow{margin:0 0 var(--r-label,10px)!important;color:#a9b29a}
html body.a-post .post-hero h1{font-style:normal;line-height:1.05;text-wrap:balance}
html body.a-post .post-hero .meta{margin:var(--r-lead,12px) 0 0}

html body.a-post .post-body{max-width:760px;margin:0 auto;padding:40px 20px 64px;
  font-family:'Bitter',Georgia,serif;font-size:18px;line-height:1.7;color:#45493f}
html body.a-post .post-body .sqs-layout,html body.a-post .post-body .sqs-row,
html body.a-post .post-body [class*="sqs-col"],html body.a-post .post-body .sqs-block,
html body.a-post .post-body .sqs-block-content,html body.a-post .post-body .sqs-html-content{max-width:none;width:auto;padding-left:0;padding-right:0}
html body.a-post .post-body p{margin:0 0 20px;font-size:18px;line-height:1.7;color:#45493f;max-width:68ch}
html body.a-post .post-body p:empty{display:none}
html body.a-post .post-body h2{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-style:normal;
  font-size:30px;line-height:1.08;letter-spacing:.01em;color:#2d302a;margin:52px 0 var(--r-lead,12px);text-wrap:balance}
html body.a-post .post-body h3{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-style:normal;
  font-size:22px;line-height:1.2;letter-spacing:.01em;color:#2d302a;margin:var(--r-block,26px) 0 10px}
html body.a-post .post-body h4{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:18px;line-height:1.2;color:#2d302a;margin:var(--r-block,26px) 0 10px}
html body.a-post .post-body h2 + h3{margin-top:var(--r-lead,12px)}
html body.a-post .post-body h2:first-child,html body.a-post .post-body h3:first-child,
html body.a-post .post-body .sqs-html-content > :first-child{margin-top:0}
html body.a-post .post-body strong{color:#2d302a}
html body.a-post .post-body a{color:#5f6b52;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* lists: sage dots, 12 between items */
html body.a-post .post-body .sqs-html-content ul,html body.a-post .post-body > ul{list-style:none;margin:0 0 20px;padding:0}
html body.a-post .post-body .sqs-html-content ul > li,html body.a-post .post-body > ul > li{position:relative;padding-left:22px;margin:0 0 var(--r-lead,12px)}
html body.a-post .post-body .sqs-html-content ul > li::before,html body.a-post .post-body > ul > li::before{content:"";position:absolute;left:2px;top:.68em;width:7px;height:7px;border-radius:50%;background:#818f6b}
html body.a-post .post-body ol{margin:0 0 20px;padding-left:24px}
html body.a-post .post-body ol > li{margin:0 0 var(--r-lead,12px);padding-left:4px}
html body.a-post .post-body ol > li::marker{color:#818f6b;font-family:'Barlow Condensed',sans-serif;font-weight:800}
html body.a-post .post-body li > p{margin:0!important}
html body.a-post .post-body li > p + p{margin-top:8px!important}

html body.a-post .post-body blockquote{margin:var(--r-block,26px) 0;padding:20px 22px;background:#f3f2ec;border:0;border-left:3px solid #818f6b;border-radius:0 18px 18px 0;color:#2d302a}
html body.a-post .post-body blockquote p{margin:0;color:#2d302a}
html body.a-post .post-body img{max-width:100%;height:auto;border-radius:18px}
html body.a-post .post-body figure{margin:var(--r-block,26px) 0}
html body.a-post .post-body hr{border:0;border-top:1px solid rgba(45,48,42,.12);margin:40px 0}

/* custom-built posts (.sk9b): rounded cream cards, no dark slabs */
html body.a-post .sk9b-h2{font-style:normal;text-wrap:balance}
html body.a-post .sk9b-p{font-size:18px!important;line-height:1.7!important;color:#45493f!important}
html body.a-post .sk9b-eyebrow{margin-bottom:var(--r-label,10px)!important}
html body.a-post .sk9b-quote{background:#f3f2ec!important;border-left:3px solid #818f6b!important;border-radius:0 18px 18px 0;padding:22px 22px!important;margin:var(--r-block,26px) 0!important}
html body.a-post .sk9b-quote p{color:#2d302a!important;font-size:18px!important}
html body.a-post .sk9b-cta{background:#f3f2ec!important;border-radius:22px;padding:28px 22px!important;margin:40px 0!important}
html body.a-post .sk9b-cta h3,html body.a-post .sk9b-cta .sk9b-h2,html body.a-post .sk9b-cta [class*="title"]{color:#2d302a!important}
html body.a-post .sk9b-cta p{color:#45493f!important}
html body.a-post .sk9b-btn{border-radius:999px!important;background:#818f6b!important;color:#fff!important;padding:16px 28px!important;min-height:52px;justify-content:center;text-decoration:none!important;box-shadow:0 6px 18px rgba(95,107,82,.35)}
html body.a-post .sk9b-btn:hover{background:#5f6b52!important}
html body.a-post :is(.sk9b-sign,.sk9b-signal,.sk9b-need,.sk9b-trait,.sk9b-benefit,.sk9b-card,.sk9b-dont){border-top:0!important;border-radius:18px}
html body.a-post :is(.sk9b-signs,.sk9b-signals,.sk9b-needs,.sk9b-traits,.sk9b-benefits,.sk9b-cards,.sk9b-donts,.sk9b-who){gap:12px!important}
html body.a-post :is(.sk9b-causes,.sk9b-states,.sk9b-timeline,.sk9b-mistakes,.sk9b-scenarios){display:flex;flex-direction:column;gap:12px}
html body.a-post :is(.sk9b-cause,.sk9b-state,.sk9b-tl-item,.sk9b-mistake,.sk9b-scenario,.sk9b-compare){border-radius:18px;overflow:hidden;border:0!important}
html body.a-post :is(.sk9b-cause,.sk9b-state)+:is(.sk9b-cause,.sk9b-state){border-top:0!important}
html body.a-post :is(.sk9b-cause-label,.sk9b-tl-age,.sk9b-compare-header){background:#e6e6e2!important}
html body.a-post :is(.sk9b-cause-label,.sk9b-tl-age,.sk9b-compare-header) *{color:#5f6b52!important}
html body.a-post .sk9b-cause-label,html body.a-post .sk9b-tl-age{color:#5f6b52!important}
html body.a-post .sk9b-state.shutdown .sk9b-state-label{background:#5f6b52!important}
html body.a-post .sk9b-step-num{border-radius:50%!important}
html body.a-post .sk9b-eyebrow + .sk9b-h2{margin-top:0!important}
html body.a-post .sk9b-h2{margin-bottom:var(--r-lead,12px)!important}
html body.a-post :is(.sk9b-sign,.sk9b-signal,.sk9b-need,.sk9b-trait,.sk9b-benefit,.sk9b-card,.sk9b-dont,.sk9b-cause,.sk9b-state,.sk9b-tl-item,.sk9b-mistake,.sk9b-scenario,.sk9b-who-card,.sk9b-compare) :is(p,div,li):not([class*="title"]):not([class*="label"]):not([class*="num"]):not([class*="tag"]):not([class*="age"]){font-size:16px!important;line-height:1.6!important}
@media (max-width:600px){
  html body.a-post :is(.sk9b-signs,.sk9b-signals,.sk9b-needs,.sk9b-traits,.sk9b-benefits,.sk9b-cards,.sk9b-donts,.sk9b-who){grid-template-columns:1fr!important}
}
html body.a-post .sk9b-who-card{background:#f3f2ec!important;border-radius:18px}
html body.a-post .sk9b-who-card *{color:#2d302a!important}
html body.a-post .sk9b-who-card p{color:#45493f!important}
html body.a-post .sk9b-table{border-radius:18px;overflow:hidden}
html body.a-post .sk9b-table th.reactive{background:#e6e6e2!important;color:#5f6b52!important}
html body.a-post .sk9b-divider{border-top-color:rgba(45,48,42,.12)!important;margin:40px 0!important}

/* end of post: related reads + quiz band, light */
html body.a-post .post-body{padding-bottom:0!important}
html body.a-post .blog-item-injection{max-width:760px;margin:0 auto;padding:40px 20px 0;box-sizing:border-box;font-family:'Bitter',Georgia,serif}
html body.a-post .sk9-post-end{margin-top:0}
html body.a-post .sk9-post-divider{display:none}
html body.a-post .sk9-related{background:#f3f2ec!important;border-radius:22px;padding:26px 20px!important}
html body.a-post .sk9-related-eyebrow{font-size:12.5px!important;letter-spacing:.16em!important;color:#818f6b!important;margin:0 0 var(--r-label,10px)!important}
html body.a-post .sk9-related-grid{gap:12px!important;margin:0 0 var(--r-block,26px)!important}
html body.a-post .sk9-related-card{background:#fff!important;border:0!important;border-radius:18px;padding:16px 16px 18px!important;text-decoration:none!important;box-shadow:0 1px 2px rgba(26,29,24,.06)}
html body.a-post .sk9-related-card:hover{box-shadow:0 1px 2px rgba(26,29,24,.08),0 12px 32px rgba(26,29,24,.14)}
html body.a-post .sk9-related-card-label{color:#818f6b!important;font-size:11px!important;letter-spacing:.14em!important}
html body.a-post .sk9-related-card-title{color:#2d302a!important;font-size:18px!important;line-height:1.15!important}
html body.a-post .sk9-resources{display:flex;flex-wrap:wrap;gap:8px}
html body.a-post .sk9-resource-link{background:#fff!important;color:#2d302a!important;border:1px solid rgba(45,48,42,.14)!important;border-radius:999px!important;
  padding:9px 14px!important;text-decoration:none!important;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
html body.a-post .sk9-quiz-band{background:#fff!important;border:1px solid rgba(45,48,42,.1);border-radius:22px;padding:26px 20px!important;margin-top:var(--r-lead,12px)!important;
  display:flex;flex-direction:column;align-items:stretch;gap:var(--r-block,26px)}
html body.a-post .sk9-quiz-band-title{color:#2d302a!important;font-size:26px!important;line-height:1.05!important;font-style:normal!important}
html body.a-post .sk9-quiz-band-sub{font-family:'Bitter',Georgia,serif!important;font-weight:400!important;color:#45493f!important;font-style:normal!important;font-size:16px!important;margin:var(--r-lead,12px) 0 0!important;max-width:60ch}
html body.a-post .sk9-quiz-band > div:last-child{display:flex;flex-direction:column;gap:12px}
html body.a-post :is(.sk9-quiz-btn,.sk9-consult-btn){display:flex!important;align-items:center;justify-content:center;min-height:52px;border-radius:999px!important;
  padding:16px 28px!important;margin:0!important;text-decoration:none!important;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:14.5px;letter-spacing:.07em;text-transform:uppercase;text-align:center;width:100%;box-sizing:border-box}
html body.a-post .sk9-quiz-btn{background:#818f6b!important;color:#fff!important;border:0!important;box-shadow:0 6px 18px rgba(95,107,82,.35)}
html body.a-post .sk9-consult-btn{background:transparent!important;color:#2d302a!important;border:1.5px solid rgba(45,48,42,.25)!important}
@media (min-width:761px){
  html body.a-post .sk9-quiz-band > div:last-child{flex-direction:row}
  html body.a-post :is(.sk9-quiz-btn,.sk9-consult-btn){width:auto}
}

/* author line and the closing card, in the same column */
html body.a-post .blog-item-author-profile-wrapper{max-width:760px;margin:0 auto;padding:var(--r-block,26px) 20px var(--r-sec,64px);font-family:'Bitter',Georgia,serif;box-sizing:border-box}
html body.a-post .blog-item-author-profile-wrapper > a{display:inline-block;text-decoration:none;color:#5f6b52;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
html body.a-post .post-cta{margin:var(--r-lead,12px) 0 0;background:#f3f2ec;border:0;border-radius:22px;padding:26px 20px}
html body.a-post .post-cta h3{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:26px;line-height:1.05;color:#2d302a;margin:0}
html body.a-post .post-cta p{font-family:'Bitter',Georgia,serif;font-size:16px;line-height:1.6;color:#45493f;margin:var(--r-lead,12px) 0 var(--r-block,26px)}
html body.a-post .post-cta a{display:flex;align-items:center;justify-content:center;min-height:52px;background:#818f6b;color:#fff;border-radius:999px;padding:16px 28px;
  font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:14.5px;line-height:1.1;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;box-shadow:0 6px 18px rgba(95,107,82,.35);box-sizing:border-box}
@media (min-width:761px){html body.a-post .post-cta a{display:inline-flex}}

/* ================================================================
   2. BLOG INDEX (.blog-hero + .blog-list of .pcard)
   ================================================================ */
html body.a-blog .blog-hero{padding:96px 0 40px}
html body.a-blog .blog-hero .container{padding:0 20px}
html body.a-blog .blog-hero .eyebrow{margin:0 0 var(--r-label,10px)}
html body.a-blog .blog-hero p:not(.eyebrow){margin-top:var(--r-lead,12px);font-family:'Bitter',Georgia,serif}
html body.a-blog .blog-list{max-width:1050px;margin:0 auto;padding:var(--r-sec,64px) 20px;display:grid;grid-template-columns:1fr;gap:12px}
@media (min-width:761px){html body.a-blog .blog-list{grid-template-columns:repeat(2,1fr);gap:16px}}
html body.a-blog .pcard{background:#f3f2ec;border:0;border-radius:18px;padding:22px 20px;font-family:'Bitter',Georgia,serif;
  transition:box-shadow .35s cubic-bezier(.22,1,.36,1),transform .35s cubic-bezier(.22,1,.36,1)}
html body.a-blog .pcard:hover{border-color:transparent;transform:translateY(-2px);box-shadow:0 1px 2px rgba(26,29,24,.08),0 12px 32px rgba(26,29,24,.14)}
html body.a-blog .pcard time{color:#818f6b;font-size:12.5px;letter-spacing:.16em}
html body.a-blog .pcard h2{font-size:24px;line-height:1.1;margin:var(--r-label,10px) 0 0;font-style:normal;text-wrap:balance}
html body.a-blog .pcard h2 a{color:#2d302a}
html body.a-blog .pcard p{margin:var(--r-lead,12px) 0 0;font-size:16px;line-height:1.6;color:#45493f}
html body.a-blog .pcard .more{margin-top:var(--r-block,26px);color:#5f6b52}

/* ================================================================
   3. RESOURCE ARTICLES AND CITY PAGES (.sk9-wrap > section)
   Every section under the hero is light: white, then cream, alternating.
   Sections that used to be dark get dark text back.
   ================================================================ */
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero){background:#fff!important;background-image:none!important;padding:var(--r-sec,64px) 0!important;border:0!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero):nth-of-type(odd){background:#f3f2ec!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero)::before,
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero)::after{display:none!important}

/* text colors: headings charcoal, copy dark gray, accents sage */
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(h1,h2,h3,h4,h5){color:#2d302a!important;font-style:normal!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(h1,h2,h3) em{color:#818f6b!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(p,li,blockquote,td,dd){color:#45493f!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(strong,b){color:#2d302a!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(.eyebrow,.eyebrow-light,.eyebrow-sage){color:#818f6b!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(p,li) a:not(.btn){color:#5f6b52!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
html body.a-res :is(.city-name,.nearby-name,.tl-name,.detail-value,.service-value,.stat-num,.distance-num,.area-name,.neighborhood-name,.class-name,.p-label,.science-title,.timeline-title){color:#2d302a!important}
html body.a-res :is(.city-desc,.distance-note,.area-sub,.neighborhood-desc,.science-desc,.timeline-desc,.label-text){color:#55594f!important}
html body.a-res :is(.distance-label,.stat-label,.type-tag,.when-card-label,.detail-label,.service-label,.tl-label,.tl-range,.label-real,.compare-tag,.related-tag,.class-label,.class-level,.vs-card-label,.scope-col-label,.timeline-age,.story-type,.review-tag,.pillar-num,.method-num,.approach-item-num){color:#5f6b52!important}
html body.a-res :is(.tl-label,.compare-tag,.related-tag){background:transparent!important}
html body.a-res .p-body p,html body.a-res .p-body{color:#45493f!important}

/* text size and measure */
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) p{font-size:17px;line-height:1.7;max-width:68ch}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(.truth-quote,.what-quote,.why-quote,.window-quote,.answer-quote){font-size:clamp(22px,5.4vw,30px)!important;line-height:1.4!important;color:#2d302a!important;max-width:30ch}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) .centered p,
html body.a-res .sk9-wrap > section.cta-band p{margin-left:auto;margin-right:auto}

/* heading block rhythm: label 10, headline, lead 12, content 26 */
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) .container > * + *{margin-top:var(--r-block,26px)!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(h2,.section-title){margin-top:0!important;margin-bottom:0!important;text-wrap:balance}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(h2,.section-title) + :is(p,div:not([class*="grid"]):not([class*="list"]):not([class*="stack"])){margin-top:var(--r-lead,12px)!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(h2,.section-title) + :is([class*="grid"],[class*="list"],[class*="stack"]){margin-top:var(--r-block,26px)!important}

/* cards: rounded, no colored bars, on the opposite tone of their section */
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is([class$="-card"],[class*="-card "],.step,.approach-item,.stat-block,.link-box,.pull-quote,.pull-dark,.mid-quiz,.quiz-block,.pillar,.class-item,.program-item,.service-row,.faq-item){
  background:#f3f2ec!important;border:0!important;border-radius:18px!important;box-shadow:none}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero):nth-of-type(odd) :is([class$="-card"],[class*="-card "],.step,.approach-item,.stat-block,.link-box,.pull-quote,.pull-dark,.mid-quiz,.quiz-block,.pillar,.class-item,.program-item,.service-row,.faq-item){background:#fff!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is([class$="-card"],[class*="-card "]) :is([class$="-card"],[class*="-card "]){background:transparent!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is([class$="-grid"],[class*="-grid "],[class$="-stack"],[class*="-stack "],.faq-list){gap:12px!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is([class$="-card"],[class*="-card "]) :is(h3,h4){margin:0 0 6px!important;line-height:1.1}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is([class$="-card"],[class*="-card "]) p{font-size:16px;line-height:1.6}

/* detail card (format / location / phone): a clean list */
html body.a-res .detail-card{padding:24px 20px!important}
html body.a-res .detail-row{border-color:rgba(45,48,42,.1)!important}
html body.a-res .detail-card .btn{width:100%}

/* steps: a round sage number, no gray column */
html body.a-res .step{padding:20px!important;gap:16px!important;display:grid!important;grid-template-columns:44px 1fr!important;align-items:start!important}
html body.a-res .step + .step{border-top:0!important}
html body.a-res .step-num{background:#818f6b!important;color:#fff!important;width:44px!important;height:44px!important;min-height:0!important;border-radius:50%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;font-size:18px!important;padding:0!important;align-self:start!important}
html body.a-res .step-body{padding:0!important}
html body.a-res .step-body h3{margin:0 0 6px!important}
@media (max-width:600px){
  html body.a-res .step{display:block!important}
  html body.a-res .step-num{margin:0 0 var(--r-lead,12px)!important;width:40px!important;height:40px!important;font-size:16px!important}
}

/* lists inside sections: sage dots, 12 apart */
html body.a-res :is(.signs-list,.check-list,.service-list,.details-list,.villain-bullet-list) li{margin:0!important}
html body.a-res :is(.signs-list,.check-list,.service-list,.details-list,.villain-bullet-list){display:flex!important;flex-direction:column;gap:var(--r-lead,12px)!important}

/* FAQs: tap-to-open cards like the kit */
html body.a-res .faq-list{display:flex!important;flex-direction:column}
html body.a-res .faq-item{padding:0 20px!important}
html body.a-res .faq-q{padding:18px 0!important;font-size:15px!important;line-height:1.25!important;color:#2d302a!important}
html body.a-res .faq-q::after{content:"+"!important;width:28px;height:28px;border-radius:50%;background:#f3f2ec;color:#5f6b52!important;
  display:flex;align-items:center;justify-content:center;font-size:18px!important;line-height:1;flex-shrink:0}
html body.a-res .sk9-wrap > section:nth-of-type(even) .faq-q::after{background:#fff}
html body.a-res .faq-a{padding:0 0 18px!important;font-size:16px!important;line-height:1.65!important;color:#45493f!important}

/* buttons that were white-on-dark now sit on light */
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) .btn-outline-white,
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) .btn-outline{background:transparent!important;color:#2d302a!important;border:1.5px solid rgba(45,48,42,.25)!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) .btn-dark{background:#2d302a!important;color:#fff!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(.cta-btns,.hero-btns,.ipw-btns){display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
@media (max-width:760px){
  html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) :is(.cta-btns,.ipw-btns) .btn{width:100%}
}

/* closing band: light, centered */
html body.a-res .sk9-wrap > section.cta-band h2{color:#2d302a!important}
html body.a-res .sk9-wrap > section.cta-band :is(.cta-band-sub,p){color:#45493f!important;font-style:normal}
html body.a-res .sk9-wrap > section.cta-band .eyebrow{color:#818f6b!important}

/* images */
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) img{border-radius:18px}
html body.a-res .section-photo-wrap,html body.a-res .villain-photo{border-radius:18px;overflow:hidden}

/* ---------- 3b. The three long-read resource articles (.seo-hero + .content-body) ---------- */
html body.a-seo .content-body{max-width:720px!important}
html body.a-seo .content-body p{font-size:18px!important;line-height:1.7!important;margin:0 0 20px!important}
html body.a-seo .content-body h2{margin:0 0 var(--r-lead,12px)!important}
html body.a-seo .content-body h3{margin:var(--r-block,26px) 0 10px!important;font-size:20px!important}
html body.a-seo .content-body ul{gap:var(--r-lead,12px)!important;margin:0 0 20px!important}
html body.a-seo .content-body ul li{font-size:17px!important;line-height:1.6!important;padding-left:22px!important}
html body.a-seo .content-body ul li::before{content:""!important;left:2px!important;top:.62em!important;width:7px;height:7px;border-radius:50%;background:#818f6b}
html body.a-seo .reason-grid{gap:12px!important;margin:var(--r-block,26px) 0!important}
html body.a-seo .reason-card{border-left:0!important;border-radius:18px!important;padding:18px 18px 20px!important}
html body.a-seo .link-box{padding:22px 20px!important;margin:var(--r-block,26px) 0!important}
html body.a-seo .link-box p{font-style:normal!important;margin:0 0 10px!important}
html body.a-seo .link-box a{color:#5f6b52!important;text-decoration:underline;text-underline-offset:3px}
html body.a-seo .related-grid{gap:12px!important;margin-top:var(--r-block,26px)!important}
html body.a-seo .related-card{padding:18px 18px 20px!important;text-decoration:none!important}
html body.a-seo .related-card h4{color:#2d302a!important}
html body.a-seo .related-card p{color:#55594f!important}
html body.a-seo .quiz-cta-band-inner{gap:var(--r-block,26px)!important}
html body.a-seo .text-center{text-align:center}

/* ================================================================
   4. LEGAL (privacy policy, terms)
   ================================================================ */
html body.a-legal .sk9-wrap > section:first-of-type{padding:96px 0 40px!important}
html body.a-legal .sk9-wrap > section:first-of-type .eyebrow{margin-bottom:var(--r-label,10px)!important}
html body.a-legal .sk9-wrap > section:first-of-type h1{margin:0!important;font-style:normal}
html body.a-legal .sk9-wrap > section:first-of-type p{margin-top:var(--r-lead,12px)!important}
html body.a-legal .sk9-wrap > section:nth-of-type(2){padding:48px 0 var(--r-sec,64px)!important}
html body.a-legal .legal-body{max-width:720px!important;margin:0 auto}
html body.a-legal .legal-body p,html body.a-legal .legal-body li{font-size:17px!important;line-height:1.7!important;color:#45493f!important}
html body.a-legal .legal-body p{margin:0 0 var(--r-lead,12px)!important}
html body.a-legal .legal-body h2{font-style:normal;font-size:24px!important;line-height:1.1!important;color:#2d302a!important;
  margin:40px 0 var(--r-lead,12px)!important;padding-top:var(--r-block,26px)!important;border-top:1px solid rgba(45,48,42,.12)!important}
html body.a-legal .legal-body ul{list-style:none!important;margin:0 0 var(--r-lead,12px)!important;padding:0!important;display:flex;flex-direction:column;gap:10px}
html body.a-legal .legal-body ul li{position:relative;padding-left:22px!important;margin:0!important}
html body.a-legal .legal-body ul li::before{content:""!important;position:absolute;left:2px;top:.68em;width:7px;height:7px;border-radius:50%;background:#818f6b}
html body.a-legal .legal-body strong{color:#2d302a!important}
html body.a-legal .legal-body a{color:#5f6b52!important;text-decoration:underline;text-underline-offset:3px}

/* ---------- fixes found on the 390 pass ---------- */
/* sage buttons keep white labels (an article link color was painting them sage on sage) */
html body.a-res .btn-sage,html body.a-res .btn-sage:hover{color:#fff!important;text-decoration:none!important}
/* stacked lists of cards: 12 apart, no outer frame */
html body.a-res :is(.classes-stack,.program-stack,.timeline-stack,.steps-stack,.stat-stack,.stats-stack){display:flex!important;flex-direction:column;gap:12px!important;border:0!important;background:transparent!important}
html body.a-res :is(.class-item,.program-item){overflow:hidden}
html body.a-res .p-label span{color:#5f6b52!important}
/* no dead space at the bottom of a card */
html body.a-art :is([class$="-card"],[class*="-card "],.step-body,.sk9b-sign,.sk9b-signal,.sk9b-need,.sk9b-trait,.sk9b-benefit,.sk9b-card,.sk9b-dont,.sk9b-cause-body,.sk9b-state-body,.sk9b-tl-body,.faq-a) > :last-child{margin-bottom:0!important}
html body.a-post .sk9b-state.shutdown .sk9b-state-label,html body.a-post .sk9b-state.shutdown .sk9b-state-label *{color:#fff!important}
/* the quiz block under the quiz page hero: light, like every other band */
html body.a-res .sk9-wrap > .quiz-block{background:#f3f2ec!important;border-top:0!important;padding:var(--r-sec,64px) 20px!important}
html body.a-res .sk9-wrap > .quiz-block h2{color:#2d302a!important;margin:0!important}
html body.a-res .sk9-wrap > .quiz-block h2 em{color:#818f6b!important}
html body.a-res .sk9-wrap > .quiz-block p{color:#45493f!important;margin:var(--r-lead,12px) auto 0!important}
html body.a-res .sk9-wrap > .quiz-block .quiz-bullets{margin:var(--r-block,26px) 0!important;gap:12px!important}
html body.a-res .sk9-wrap > .quiz-block .quiz-bullet{color:#2d302a!important}
/* rhythm fixes from tools/audit.sh */
html body.a-res .hero-btns{margin-top:var(--r-block,26px)!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) .container .fade-up > span:not(.eyebrow){display:block;margin-top:var(--r-block,26px)!important}
html body.a-res .sk9-wrap > section:not(.hero):not(.seo-hero) .container .fade-up > span + ul{margin-top:var(--r-label,10px)!important}
html body.a-res .detail-card > :last-child,html body.a-res .detail-card > div:last-child{margin-top:var(--r-block,26px)!important}
html body.a-res .sk9-wrap > section.cta-band :is(.cta-btns,.hero-btns){margin-top:var(--r-block,26px)!important}
html body.a-res :is(.nearby-link,.city-link,.p-link,.service-link,.program-link,.related-link){margin-top:var(--r-lead,12px)!important;display:inline-block}
html body.a-post .sk9b :is(.sk9b-signs,.sk9b-signals,.sk9b-needs,.sk9b-traits,.sk9b-benefits,.sk9b-cards,.sk9b-donts,.sk9b-who,.sk9b-causes,.sk9b-states,.sk9b-timeline,.sk9b-mistakes,.sk9b-scenarios,.sk9b-steps,.sk9b-compare,.sk9b-table){margin-top:var(--r-block,26px)!important;margin-bottom:var(--r-block,26px)!important}
html body.a-post .sk9b-divider + .sk9b-h2{margin-top:0!important}
html body.a-post .sk9b-list{margin-bottom:20px!important}
html body.a-post .sk9b-cta .sk9b-btn{margin-top:var(--r-block,26px)!important}
html body.a-post .sk9b-cta p{margin-bottom:0!important}
html body.a-res .hero-sub,html body.a-res .cta-band-sub{margin-bottom:0!important}
html body.a-res p:has(+ :is(.nearby-link,.city-link,.p-link,.service-link,.program-link,.related-link)){margin-bottom:0!important}
html body.a-legal .legal-body{padding:0!important}
html body.a-legal .sk9-wrap > section:nth-of-type(2){padding-top:40px!important}
html body.a-legal .legal-body h2:first-child{border-top:0!important;margin-top:0!important;padding-top:0!important}
html body.a-seo .seo-hero-content p{margin-bottom:0!important}
html body.a-seo .seo-hero-content > div:last-child{margin-top:var(--r-block,26px)!important}
