/* khalign.20261012al1.css  Kindra Hire site-wide left alignment (Zee 12 Oct: every section's text starts on one left line; Beacon).
   ONE line for the whole site: --kh-edge = the page gutter on phones/tablets (var(--gut)), and the left edge of the centred
   1120px column on wide screens (the line the split hero copy already uses, so the hero does not move on desktop).
   Every top-level padded content band (sections, call-to-action bands, section heads, the strip under the hero, the footer)
   pads to that line, and blocks that were centred inside a band with their own max-width (1400 strips/grids, 680 articles)
   now start on it. The hand-built pages' .wrap column is sized so its text lands on the same line.
   Backgrounds stay full width; split picture/text rows and heroes are left alone.
   Format only: no text, link, image or colour change. */
:root{--kh-max:1120px;--kh-edge:max(var(--gut,20px),calc((100vw - var(--kh-max)) / 2))}
body:not(:has(.wrap)) :is(.sec,.cta,.offer,.enemy,.pp-sec,.cp-sec,.pp-close,.pp-arrive,.cp-end,footer:not(.khf)):not([class*="hero"]):not(:is(.sec,.cta,.offer,.enemy,.mech,.pp-sec,.cp-sec,.pp-close,.pp-arrive,.cp-end) *),body:not(:has(.wrap)) .pieces > .head{padding-left:var(--kh-edge)!important;padding-right:var(--kh-edge)!important}
body:not(:has(.wrap)) .mech{padding-left:max(0px,calc((100vw - var(--kh-max)) / 2))!important;padding-right:max(0px,calc((100vw - var(--kh-max)) / 2))!important}
body:not(:has(.wrap)) :is(.sec,.cta,.offer,.enemy,.mech,.pp-sec,.cp-sec,.pp-close,.pp-arrive,.cp-end):not([class*="hero"]):not(:is(.sec,.cta,.offer,.enemy,.mech,.pp-sec,.cp-sec,.pp-close,.pp-arrive,.cp-end) *) > *,body:not(:has(.wrap)) .pieces > .head > *{margin-left:0!important;margin-right:auto!important}
body:not(:has(.wrap)) :is(.sec,.cta,.offer,.enemy,.mech,.pp-sec,.cp-sec,.pp-close,.pp-arrive,.cp-end):not([class*="hero"]):not(:is(.sec,.cta,.offer,.enemy,.mech,.pp-sec,.cp-sec,.pp-close,.pp-arrive,.cp-end) *) > * > :is(.inner,.strip,.mosaic,.jobs,.jobs-h,.ways,.exam,.tline,.thepoint,.shapes,.oops,.incl,.honest,.honestprice,.form,.syl){margin-left:0!important;margin-right:auto!important}
/* hand-built pages (guardrails, coach, jobs-you-hate): .wrap = 1120 column + its own gutter, so text lands on the line */
/* (template pages are scoped with body:not(:has(.wrap)); the 8 hand-built pages use .wrap) */
html body .wrap:not(.khn-in){max-width:calc(var(--kh-max) + 2 * var(--gut,20px))!important}
/* split hero (khhero sh1) on phones/tablets: copy on the page gutter */
@media (max-width:859.98px){
  :is(#khsh-a,.kh-sh):is(#khsh-b,.kh-sh):not(.playing) > :is(.inner,.over,.wrap){padding-left:var(--kh-edge)!important;padding-right:var(--kh-edge)!important}
}
/* footer (khnav footer): same line */
.khf-in{max-width:none!important;padding-left:var(--kh-edge)!important;padding-right:var(--kh-edge)!important}
