/* Homepage composition. Section headings center in the full content width;
   headings within editorial columns retain the reading alignment. */
body.home .site-main .audiences-v2,
body.home .site-main .home-case-studies,
body.home .site-main .home-process{max-width:1280px;width:100%;padding:72px 48px;box-sizing:border-box}
body.home .site-main .home-process>h2,
body.home .site-main .home-case-studies>h2,
body.home .site-main .audiences-v2 .section-heading h2{width:100%;max-width:900px;margin:16px auto 40px!important;text-align:center;font-size:clamp(34px,3.7vw,54px);line-height:1.1;letter-spacing:-.04em}
body.home .site-main .home-process>.eyebrow,
body.home .site-main .home-case-studies>.eyebrow,
body.home .site-main .audiences-v2 .section-heading>.eyebrow{width:100%;max-width:none!important;margin:0 auto!important;text-align:center}
body.home .site-main .home-case-studies>h2{margin-bottom:20px!important}
body.home .site-main .home-case-studies>p:not(.eyebrow):not(.text-link){max-width:660px;margin:0 auto 32px!important;line-height:1.65}
body.home .site-main :is(.stack-intro,.time-copy,.manifesto-copy,.faq-heading){text-align:left;min-width:0}
body.home .site-main :is(.stack-intro,.time-copy,.manifesto-copy,.faq-heading)>:is(h2,p){margin-left:0!important;margin-right:0!important;text-align:left}
body.home .site-main .home-process>.grid{gap:24px;margin:0!important}
body.home .home-process .method-card:nth-child(n){border-radius:14px;padding:28px 28px 34px;box-shadow:none;min-height:0;background:#fff}
body.home .home-process .method-card h3{min-height:0;margin-bottom:16px}
body.home .home-process .method-card .method-number{border-radius:50%;width:48px;height:48px;font-size:18px;margin-bottom:24px;background:#eef3e9;color:var(--wp--preset--color--forest)}
body.home .home-process .method-card:after{display:none}
body.home .home-process .method-card>p:last-child{font-size:17px;line-height:1.65}
body.home .home-process>.text-link{max-width:none;width:100%;display:flex;justify-content:center;margin-top:32px}
/* One reveal owner per element: prevent compounded parent/child movement. */
body.home .site-main .reveal{opacity:1!important;transform:none!important;transition:none!important}
body.home .site-main :is(.nv-title-arrived,.home-scroll-enter,.faq-row-arrived,.faq-photo-arrived){animation:none!important}
body.home .home-process .method-card{opacity:1!important;translate:none!important}
@media(max-width:760px){
 body.home .site-main :is(.audiences-v2,.home-case-studies,.home-process){padding:48px 24px}
 body.home .site-main :is(.home-process,.home-case-studies)>h2{font-size:clamp(32px,7.8vw,44px);margin-bottom:28px!important}
 body.home .home-process .method-card:nth-child(n){padding:24px}
}
@media(prefers-reduced-motion:reduce){body.home .site-main *{scroll-behavior:auto}}
/* A full-width pale sage band separates case studies from the method. */
body.home .site-main .home-case-studies{max-width:none;background:#edf2e9;padding-left:max(24px,calc((100% - 1184px)/2));padding-right:max(24px,calc((100% - 1184px)/2))}
@supports(background:color-mix(in srgb,white,black)){body.home .site-main .home-case-studies{background:color-mix(in srgb,var(--wp--preset--color--sage,#a6bda3) 20%,white)}}
/* A restrained unfolding stack: no pinning, no text splitting, no layout shift. */
body.home .time-section .task-stack{perspective:1200px}
body.home .time-section .task-stack .task{transform:translateY(var(--unfold-y,0px)) rotateX(var(--unfold-turn,0deg)) scale(var(--unfold-scale,1));transform-origin:center top;opacity:var(--unfold-opacity,1);box-shadow:0 18px 40px #0d221815;backface-visibility:hidden}
@media(max-width:760px){body.home .time-section .task-stack .task{transform:translateY(var(--unfold-y,0px))}}
@media(prefers-reduced-motion:reduce){body.home .time-section .task-stack .task{transform:none!important;opacity:1}}
/* Mobile homepage: consistent centred reading within headings and cards. */
@media(max-width:760px){
 body.home .site-main :is(h1,h2,h3,.eyebrow,.hero-description),
 body.home .site-main :is(.stack-intro,.time-copy,.manifesto-copy,.faq-heading)>:is(h2,p),
 body.home .site-main :is(.audience-card,.method-card,.nv-recent-case-copy,.stack-copy,.task){text-align:center!important}
 body.home .site-main :is(.audience-card,.method-card,.nv-recent-case-copy,.stack-copy,.task)>p{margin-left:auto!important;margin-right:auto!important}
 body.home .site-main .audience-card{align-items:center}
 body.home .site-main .method-number{margin-left:auto;margin-right:auto}
 body.home .site-main .stack-copy{align-items:center}
 body.home .site-main .task{justify-items:center}
 body.home .site-main .film-copy{width:100%;text-align:center}
 body.home .site-main .film-copy .wp-block-buttons{justify-content:center}
 body.home .site-main .film-copy>p{margin-left:auto;margin-right:auto}
}
/* Task cards: centred number, heading, then description. */
body.home .site-main .task-stack .task{display:flex;flex-direction:column;align-items:center;text-align:center;padding:26px 24px;gap:10px}
body.home .site-main .task-stack .task .task-no{position:relative;inset:auto;display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;margin:0 auto 6px!important;font-size:16px;line-height:1;color:var(--wp--preset--color--forest,#3e5a3b);background:#ffffff55;border-radius:50%}
body.home .task-stack .task-no:before{content:'';position:absolute;inset:-3px;border:1px solid currentColor;border-right-color:transparent;border-bottom-color:transparent;border-radius:50%;opacity:.55;animation:nv-task-orbit 4s linear infinite}
body.home .task-stack .task:nth-child(2) .task-no:before{animation-delay:-1.3s}body.home .task-stack .task:nth-child(3) .task-no:before{animation-delay:-2.6s}
body.home .site-main .task-stack .task h3{width:100%;margin:0!important;text-align:center}
body.home .site-main .task-stack .task>p:not(.task-no){width:100%;max-width:420px;margin:0!important;text-align:center;line-height:1.55}
@keyframes nv-task-orbit{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){body.home .task-stack .task-no:before{animation:none}}

body.home .time-section .task-stack .task{transform:none;transition:none;backface-visibility:visible}
