/*
Theme Name: ACE Impact — Editorial
Theme URI: https://www.aceimpact.co.uk/
Author: ACE Impact CIC
Description: Bespoke editorial block theme for ACE Impact CIC. Distinctive navy and gold, accessible responsive layouts, native WordPress editing, original ACE identity.
Version: 0.6.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: ace-impact-editorial
License: GPL-2.0-or-later
*/

:root{--ace-navy:#14253d;--ace-ink:#1c2a3b;--ace-slate:#293d54;--ace-gold:#c9a45b;--ace-gold-bright:#dfbe78;--ace-champagne:#eee2c8;--ace-ivory:#f7f5f0;--ace-white:#fff;--ace-muted:#596677;--ace-line:#e4e1da;--ace-serif:Georgia,'Times New Roman',serif;--ace-sans:'Manrope','Avenir Next','Segoe UI',Arial,sans-serif}
html{scroll-behavior:smooth}body{margin:0;background:var(--ace-white);font-family:var(--ace-sans);color:var(--ace-ink);line-height:1.7;-webkit-font-smoothing:antialiased}body.admin-bar .ace-site-header{top:32px}*{box-sizing:border-box}
a{color:inherit;text-underline-offset:.19em;text-decoration-thickness:1px}a:hover{color:var(--ace-gold)}:focus-visible{outline:3px solid #e0af47!important;outline-offset:4px;border-radius:2px}
.wp-site-blocks{overflow:hidden}.entry-content{min-height:50vh}.wp-block-post-content> .wp-block-group{max-width:none!important}.wp-block-post-content>.wp-block-group:first-child{margin-top:0}
.ace-site-header{position:relative;z-index:40;border-bottom:1px solid var(--ace-line);background:#fff}.ace-header-inner{max-width:1340px!important;margin:auto!important;display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:102px;padding:12px clamp(22px,4vw,66px)!important}
.ace-brand{display:block;position:relative;min-width:171px;width:171px;height:76px;margin:0!important;font-size:0!important;line-height:0;color:transparent}.ace-brand a{position:absolute;inset:0;display:block;font-size:0;white-space:nowrap}.ace-brand a::before{content:'';position:absolute;inset:0;background-image:url('./assets/images/ace-logo-original.png');background-position:center;background-size:contain;background-repeat:no-repeat}
.ace-site-header .wp-block-navigation{font-size:.78rem;font-weight:750;letter-spacing:.025em}.ace-site-header .wp-block-navigation-item__content{text-decoration:none;padding:13px 5px}.ace-site-header .wp-block-navigation-item__content:hover{color:#987337}.ace-site-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open{padding:3rem 1.5rem;background:var(--ace-ivory)}
.ace-header-cta .wp-block-button__link{background:var(--ace-navy)!important;color:#fff!important;border:1px solid var(--ace-navy);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:14px 22px;white-space:nowrap;border-radius:0}.ace-header-cta a:hover{background:var(--ace-gold)!important;color:var(--ace-navy)!important;border-color:var(--ace-gold)!important}
h1,h2,h3{line-height:1.1;letter-spacing:-.04em}h1{font-family:var(--ace-serif);font-weight:400}h2{font-family:var(--ace-serif);font-weight:400}h3{font-weight:720;letter-spacing:-.035em}p{max-width:70ch}p.has-large-font-size{line-height:1.55}h1.wp-block-heading{font-size:clamp(3.5rem,6vw,7.1rem);line-height:1.04;max-width:1150px}h2.wp-block-heading{font-size:clamp(2.1rem,3.9vw,4.5rem)}.wp-block-post-content>.wp-block-group{padding-top:clamp(60px,8vw,126px)!important;padding-bottom:clamp(60px,8vw,126px)!important}.wp-block-post-content>.wp-block-group:first-child h1{margin-top:1rem}.wp-block-post-content>.wp-block-group:first-child p.has-large-font-size{font-size:clamp(1.15rem,1.6vw,1.55rem)}.wp-block-post-content>.wp-block-group:first-child p.has-small-font-size{font-size:.76rem;letter-spacing:.17em;font-weight:700;text-transform:uppercase;color:var(--ace-gold-bright)}
.wp-block-post-content>.wp-block-group>*:not(.alignfull){max-width:1120px}.wp-block-post-content .wp-block-columns{gap:clamp(1.3rem,3vw,3rem);margin-top:2.5rem}.wp-block-post-content .wp-block-column{border-top:1px solid #c9a45b;padding-top:1.2rem}.wp-block-post-content .wp-block-column h2,.wp-block-post-content .wp-block-column h3{font-family:var(--ace-serif);font-weight:400;font-size:clamp(1.5rem,2.5vw,2.35rem)}
.wp-block-button__link{border-radius:0;display:inline-flex;align-items:center;gap:20px;padding:16px 23px;font-weight:780;font-size:.85rem;letter-spacing:.02em;transition:transform .2s,background .2s;line-height:1.35}.wp-block-button__link:hover{transform:translateY(-2px);color:var(--ace-navy)!important;background:var(--ace-champagne)!important}.wp-block-buttons{margin-top:32px}.wp-block-separator{width:64px;border:0!important;height:3px;margin:36px 0!important}
.ace-eyebrow{font-size:.73rem!important;letter-spacing:.16em;font-weight:760;text-transform:uppercase}.ace-eyebrow:before{content:'';width:28px;height:1px;background:currentColor;display:inline-block;vertical-align:middle;margin-right:12px}.ace-editorial-title{font-family:var(--ace-serif);font-size:clamp(2.8rem,6vw,7rem);font-weight:400;line-height:1.07;letter-spacing:-.055em;margin-top:0}.ace-editorial-title em{font-style:italic;color:var(--ace-gold)}.ace-display-lead{font-size:clamp(1.15rem,1.8vw,1.5rem);max-width:33rem;line-height:1.6}
.ace-hero{position:relative;isolation:isolate;overflow:hidden;min-height:min(760px,88vh);background:var(--ace-navy);color:#fff;padding:clamp(70px,8vw,142px) clamp(24px,6vw,86px);display:grid;grid-template-columns:minmax(0,1.17fr) minmax(240px,.83fr);align-items:center;gap:2rem}.ace-hero:after{content:'';position:absolute;right:-8%;top:-13%;width:52%;aspect-ratio:1;background:url('./assets/images/arc.svg') center/contain no-repeat;opacity:.4;z-index:-1}.ace-hero-copy{max-width:820px;z-index:1}.ace-hero .ace-editorial-title{font-size:clamp(3.5rem,6.4vw,7.6rem)}.ace-hero-art{min-height:400px;position:relative;align-self:stretch}.ace-hero-art:before{content:'';position:absolute;inset:0;background:url('./assets/images/ace-people.svg') center 45%/min(100%,520px) auto no-repeat;filter:drop-shadow(0 10px 20px #0002)}.ace-hero-kicker{color:var(--ace-gold-bright)}.ace-scroll-prompt{position:absolute;bottom:30px;left:clamp(24px,6vw,86px);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:#c9d0da}
.ace-light-section{background:var(--ace-ivory);padding:clamp(70px,9vw,145px) clamp(25px,6vw,86px)}.ace-white-section{background:#fff;padding:clamp(70px,9vw,145px) clamp(25px,6vw,86px)}.ace-inner{max-width:1320px;margin:0 auto}.ace-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,7rem);align-items:start}.ace-split>.ace-overline{max-width:450px}.ace-split h2{font-family:var(--ace-serif);font-weight:400;font-size:clamp(2.7rem,4vw,5rem);line-height:1.08;letter-spacing:-.045em;margin:0}.ace-intro{font-size:1.1rem;color:var(--ace-muted);max-width:550px}.ace-what-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d7d4ca;border:1px solid #d7d4ca;margin-top:3rem}.ace-what-card{background:var(--ace-ivory);padding:clamp(25px,3.5vw,50px);min-height:260px}.ace-what-card small{font-weight:740;color:#7f713e;letter-spacing:.12em}.ace-what-card h3{font-family:var(--ace-serif);font-size:clamp(1.6rem,2.3vw,2.6rem);font-weight:400;margin:.9rem 0}.ace-what-card p{font-size:.96rem;color:#465365;line-height:1.65}
.ace-projects-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:20px;margin-top:45px}.ace-project-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(25px,3vw,48px);min-height:360px;text-decoration:none;color:#fff!important;background:var(--ace-navy);overflow:hidden}.ace-project-card:nth-child(2){background:#3b5d45}.ace-project-card:nth-child(3){background:#85664d}.ace-project-card:nth-child(4){background:#304b65}.ace-project-card:before{content:'';position:absolute;right:-6%;top:0;width:60%;height:100%;background:url('./assets/images/arc.svg') center/contain no-repeat;opacity:.15;transform:rotate(-18deg)}.ace-project-card h3{font-family:var(--ace-serif);font-weight:400;font-size:clamp(2rem,3vw,3.7rem);line-height:1.08;max-width:450px;margin:15px 0}.ace-project-card .ace-project-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#f0e4ce;font-weight:740}.ace-project-card .ace-project-more{align-self:flex-end;border:1px solid #fff7;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font-size:1.3rem}.ace-project-card:hover{transform:translateY(-3px);transition:transform .2s}.ace-projects-grid .ace-project-card:nth-child(3){min-height:270px}.ace-projects-grid .ace-project-card:nth-child(4){min-height:270px}
.ace-statement{background:var(--ace-navy);color:white;padding:clamp(65px,8vw,120px) clamp(25px,6vw,86px);position:relative}.ace-statement blockquote{max-width:1150px;margin:0;font-family:var(--ace-serif);font-size:clamp(2.4rem,4.2vw,5rem);line-height:1.18;letter-spacing:-.04em}.ace-statement strong{color:var(--ace-gold);font-weight:normal}.ace-statement p{color:#d4dde5}
.ace-site-footer{background:#0c1929;color:#edf2f4;padding:clamp(60px,7vw,105px) clamp(25px,5vw,70px) 30px}.ace-footer-inner{max-width:1320px!important;margin:0 auto!important}.ace-footer-heading{font-family:var(--ace-serif);font-weight:400;font-size:clamp(2.3rem,5vw,5.4rem);line-height:1.06;letter-spacing:-.04em;max-width:900px}.ace-site-footer .wp-block-navigation{color:#e5e9ed}.ace-site-footer a{color:#f3f5f7}.ace-site-footer .wp-block-navigation-item__content:hover{color:var(--ace-gold)}.ace-footer-rule{border-top:1px solid #5c6270;margin-top:50px;padding-top:25px;font-size:.76rem;letter-spacing:.02em;color:#c2cbd3}.ace-footer-label{font-size:.72rem;letter-spacing:.17em;color:var(--ace-gold);text-transform:uppercase}
/* Project identities: each project uses a different muted accent while retaining ACE navigation and typography */
.page-id-18{--ace-project-accent:#547b57;--ace-project-soft:#edf2eb}.page-id-19{--ace-project-accent:#937251;--ace-project-soft:#f5f0e8}.page-id-17{--ace-project-accent:#64849d;--ace-project-soft:#eef3f6}.page-id-20{--ace-project-accent:#607f4d;--ace-project-soft:#f2f4ed}.page-id-21{--ace-project-accent:#9c747f;--ace-project-soft:#faf2f4}.page-id-22{--ace-project-accent:#557d7a;--ace-project-soft:#eef5f3}.page-id-23{--ace-project-accent:#405ca5;--ace-project-soft:#f0f3fc}.page-id-24{--ace-project-accent:#aa8b46;--ace-project-soft:#fbf7ed}.page-id-25{--ace-project-accent:#656177;--ace-project-soft:#f5f3f8}
body[class*="page-id-"] .wp-block-post-content>.wp-block-group:nth-child(2){border-left:8px solid var(--ace-project-accent,var(--ace-gold))}body[class*="page-id-"] .wp-block-post-content>.wp-block-group:nth-child(2) h2{color:var(--ace-navy)}
body[class*="page-id-"] .wp-block-post-content>.wp-block-group:nth-child(3) .wp-block-column{border-top-color:var(--ace-project-accent,var(--ace-gold))}
.ace-project-ident{height:10px;background:var(--ace-project-accent,var(--ace-gold))}
/* Accessibility and small screens */
@media(max-width:1100px){.ace-header-inner{min-height:86px}.ace-header-cta{display:none}.ace-hero{grid-template-columns:1fr .7fr}.ace-header-inner .wp-block-navigation{font-size:.72rem}}
@media(max-width:800px){.ace-header-inner{min-height:78px;padding:10px 22px!important}.ace-brand{width:140px;min-width:140px;height:60px}.ace-hero{grid-template-columns:1fr;min-height:720px;gap:0;padding:70px 25px 0}.ace-hero .ace-editorial-title{font-size:clamp(3.3rem,12vw,6.6rem)}.ace-hero-art{height:300px;min-height:300px}.ace-hero-art:before{background-position:center 30%;background-size:auto 350px}.ace-scroll-prompt{display:none}.ace-split,.ace-projects-grid{grid-template-columns:1fr}.ace-what-grid{grid-template-columns:1fr}.ace-what-card{min-height:auto}.ace-what-card:not(:first-child){border-top:1px solid #dad4c8}.wp-block-post-content>.wp-block-group{padding-left:25px!important;padding-right:25px!important}.wp-block-post-content>.wp-block-group h1.wp-block-heading{font-size:clamp(2.9rem,11vw,5.5rem)}.ace-project-card{min-height:300px}}
@media(max-width:480px){.ace-site-header .wp-block-navigation{font-size:1rem}.ace-site-footer .wp-block-navigation{flex-direction:column;align-items:flex-start}.ace-project-card h3{font-size:2.4rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:0s!important;animation:none!important}}
/* Ensure headings and links retain intended contrast inside dark editorial sections. */
.ace-hero h1.wp-block-heading,.ace-statement h2,.ace-statement h3,.ace-site-footer .wp-block-heading{color:#fff}
.ace-project-card a,.ace-project-card a:hover,.ace-project-card h3{color:#fff!important;text-decoration:none}
.ace-hero .wp-block-button__link{color:#14253d!important}
:is(.page-id-17,.page-id-18,.page-id-19,.page-id-20,.page-id-21,.page-id-22,.page-id-23,.page-id-24,.page-id-25) .wp-block-post-content>.wp-block-group:first-child h1.wp-block-heading{color:#fff}



/* --- ACE IMPACT / EDITORIAL PROJECT STORIES v0.2 --- */
.ace-project-hero{--project:#c9a45b;--project-light:#f7f5f0;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);align-items:center;gap:clamp(24px,5vw,86px);min-height:620px;padding:clamp(80px,9vw,142px) max(24px,calc((100vw - 1320px)/2));background:#14253d;color:white;overflow:hidden}
.ace-project-hero:before{content:"";position:absolute;width:620px;height:620px;right:-220px;top:-330px;z-index:-1;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 110px rgba(255,255,255,.024),0 0 0 240px rgba(255,255,255,.014)}
.ace-project-hero .ace-project-eyebrow{color:#eddbb9;font-size:.72rem;letter-spacing:.17em;text-transform:uppercase;font-weight:800;max-width:60ch}
.ace-project-hero h1{font-size:clamp(3.1rem,5vw,6.3rem)!important;line-height:1.08;letter-spacing:-.053em;max-width:890px;color:#fff!important;margin:22px 0}
.ace-project-hero .ace-project-lead{font-size:clamp(1.1rem,1.45vw,1.38rem);line-height:1.75;color:#ecedf0;max-width:660px}
.ace-project-hero .ace-project-visual{height:480px;min-width:0;position:relative;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.24);border-radius:53% 47% 43% 57%/46% 40% 60% 54%;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.15),transparent 65%),rgba(255,255,255,.04);transform:rotate(3deg)}
.ace-project-hero .ace-project-visual:after{content:"";display:block;width:100%;height:100%;background-image:var(--project-art);background-position:center;background-repeat:no-repeat;background-size:76% auto;transform:rotate(-3deg);filter:drop-shadow(0 16px 25px rgba(0,0,0,.06))}
.ace-project-hero--blooming{--project:#8ca57a;--project-light:#eff4ed;--project-art:url('./assets/images/ace-illustration-garden.svg');background:#253f32}
.ace-project-hero--shed{--project:#b99569;--project-light:#f6f0e9;--project-art:url('./assets/images/ace-illustration-shed.svg');background:#3e3026}
.ace-project-hero--bens{--project:#92a8bd;--project-light:#eff3f7;--project-art:url('./assets/images/ace-illustration-support.svg');background:#172e44}
.ace-project-hero--edible{--project:#a2be78;--project-light:#f3f6ec;--project-art:url('./assets/images/ace-illustration-food.svg');background:#294a38}
.ace-project-hero--infusion{--project:#d1a8b0;--project-light:#fcf5f5;--project-art:url('./assets/images/ace-illustration-cafe.svg');background:#503a48}
.ace-project-hero--green{--project:#9ac1b6;--project-light:#f1f7f5;--project-art:url('./assets/images/ace-illustration-green.svg');background:#1f4948}
.ace-project-hero--exchange{--project:#9eaedc;--project-light:#f1f3fb;--project-art:url('./assets/images/ace-illustration-exchange.svg');background:#283a68}
.ace-project-hero--foke{--project:#e1bb75;--project-light:#fbf7ed;--project-art:url('./assets/images/ace-illustration-community.svg');background:#4c4632}
.ace-project-hero--lab{--project:#aaa5ba;--project-light:#f5f3f8;--project-art:url('./assets/images/ace-illustration-lab.svg');background:#3b394a}
.ace-project-hero--bens .ace-project-visual{border-radius:38% 62% 58% 42%/56% 50% 50% 44%}
.ace-project-hero--exchange .ace-project-visual{border-radius:18px;transform:none}
.ace-project-hero--exchange .ace-project-visual:after{transform:none}
.ace-project-tag{color:var(--project);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;font-weight:750}
.ace-project-story{padding:clamp(75px,8vw,130px) max(24px,calc((100vw - 1180px)/2));background:#fff}
.ace-project-story .ace-project-columns{display:grid;grid-template-columns:minmax(0,.77fr) minmax(0,1.23fr);gap:clamp(35px,8vw,128px)}
.ace-project-story h2{font-family:var(--ace-serif);font-size:clamp(2.4rem,3.7vw,4.6rem);font-weight:400;margin:.3em 0;line-height:1.12;letter-spacing:-.045em}
.ace-project-story .ace-copy{font-size:1.1rem;line-height:1.8;color:#3d4756}
.ace-project-story .ace-copy p{margin-top:0;margin-bottom:1.2em}
.ace-project-story .ace-project-eyebrow,.ace-project-impact .ace-project-eyebrow,.ace-project-next .ace-project-eyebrow{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#897341}
.ace-project-process{padding:clamp(70px,8vw,115px) max(24px,calc((100vw - 1260px)/2));background:var(--project-light,#f7f5f0)}
.ace-project-process .ace-three-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #14253d40}
.ace-project-process .ace-phase{padding:28px clamp(20px,3vw,45px) 22px 0;min-height:285px}
.ace-project-process .ace-phase:not(:first-child){padding-left:clamp(20px,3vw,45px);border-left:1px solid #14253d33}
.ace-project-process .ace-phase-num{font-family:var(--ace-serif);font-size:1.4rem;color:#6a6458}
.ace-project-process h3{font-family:var(--ace-serif);font-size:clamp(1.7rem,2.2vw,2.6rem);font-weight:400;margin:1rem 0 .8rem}
.ace-project-process p{font-size:1rem;line-height:1.75;color:#414d55}
.ace-project-impact{padding:clamp(65px,8vw,125px) max(24px,calc((100vw - 1230px)/2));background:#fff}
.ace-project-impact .ace-measure{font-family:var(--ace-serif);font-size:clamp(2rem,3.1vw,3.5rem);max-width:940px;line-height:1.25;color:#14253d}
.ace-project-impact .ace-metrics{display:grid;grid-template-columns:1fr 1fr;gap:35px;border-top:1px solid #d8d4cd;padding-top:30px;margin-top:44px}
.ace-project-impact .ace-number{font-family:var(--ace-serif);font-size:clamp(4.3rem,7vw,7rem);line-height:1;color:#14253d;margin:8px 0}
.ace-project-impact .ace-metric-explain{font-size:.9rem;color:#56606b}
.ace-project-next{padding:clamp(65px,8vw,125px) max(24px,calc((100vw - 1250px)/2));background:#14253d;color:white;position:relative}
.ace-project-next:after{content:"";position:absolute;right:9%;bottom:0;height:230px;width:200px;opacity:.32;background:url('./assets/images/ace-figure-lean.svg') bottom/contain no-repeat;pointer-events:none}
.ace-project-next h2{font-family:var(--ace-serif);font-size:clamp(2.7rem,4.3vw,5rem);color:white;max-width:850px;font-weight:400;line-height:1.1}
.ace-project-next p{max-width:700px;color:#e2e7ec;font-size:1.1rem}
.ace-project-next a{color:#14253d!important;background:#c9a45b;padding:15px 24px;text-decoration:none;font-size:.88rem;display:inline-block;font-weight:760;margin-top:22px}
.ace-editorial-note{background:#f8f6f2;padding:30px max(24px,calc((100vw - 1180px)/2));border-top:1px solid #dedbd4;font-size:.79rem;color:#59616a}
/* Project cards take project-specific illustration treatments while awaiting authorised documentary photographs. */
.ace-projects-grid .ace-project-card{isolation:isolate}
.ace-projects-grid .ace-project-card:after{content:"";position:absolute;right:0;bottom:12%;height:66%;width:56%;z-index:-1;background:url('./assets/images/ace-illustration-garden.svg') center/contain no-repeat;opacity:.37;transition:transform .25s,opacity .25s}
.ace-projects-grid .ace-project-card:nth-child(2):after{background-image:url('./assets/images/ace-illustration-shed.svg')}
.ace-projects-grid .ace-project-card:nth-child(3):after{background-image:url('./assets/images/ace-illustration-support.svg')}
.ace-projects-grid .ace-project-card:nth-child(4):after{background-image:url('./assets/images/ace-illustration-exchange.svg')}
.ace-projects-grid .ace-project-card:hover:after{transform:translateY(-12px);opacity:.55}
.ace-site-header a:hover,.ace-site-header .wp-block-navigation-item__content:hover{color:#73571e}
@media(max-width:900px){.ace-project-hero{grid-template-columns:1fr;min-height:0;padding:85px 26px 50px}.ace-project-hero .ace-project-visual{height:300px;width:min(460px,100%);justify-self:center}.ace-project-story .ace-project-columns{grid-template-columns:1fr}.ace-project-next:after{opacity:.15}}
@media(max-width:680px){.ace-project-hero{padding:60px 24px 38px}.ace-project-hero h1{font-size:clamp(2.7rem,11vw,4rem)!important}.ace-project-hero .ace-project-visual{height:245px}.ace-project-process .ace-three-cols{display:block}.ace-project-process .ace-phase,.ace-project-process .ace-phase:not(:first-child){border-left:0;border-top:1px solid #14253d2c;padding:20px 0 24px;min-height:0}.ace-project-process .ace-phase:first-child{border-top:0}.ace-project-impact .ace-metrics{grid-template-columns:1fr}.ace-projects-grid .ace-project-card:after{width:50%}}


/* ACE editorial v0.5 — transparent cut-outs integrated into each page.
   No rectangular illustration panels; preserve the complete original ACE drawings. */
.ace-header-inner .ace-brand-image{width:156px!important;max-width:156px;margin:0!important;flex-shrink:0}
.ace-header-inner .ace-brand-image img{display:block;width:156px!important;height:auto!important;object-fit:contain}
.ace-header-inner .ace-brand-image a{display:block}

/* On dark backgrounds the original transparent artwork is re-coloured in warm white ink, retaining gold accents and hand-drawn strokes. On light grounds it remains black ink. */
.ace-hero{overflow:visible;z-index:2}
.ace-hero-art{
  min-width:0; min-height:420px; height:auto; align-self:end;
  position:relative; background:radial-gradient(ellipse 49% 49% at 49% 53%,
    transparent 0%, transparent 100%)!important;
  box-shadow:none!important; border:0!important; border-radius:0!important;
  transform:translateY(42px); overflow:visible!important;
}
.ace-hero-art::before{
  content:"";position:absolute;inset:-5% -8% -3%;
  background:url('./assets/images/ace-scene-collaboration-light.png') center center / contain no-repeat!important;
  filter:none!important; opacity:1!important;transform:none!important;
}
.ace-hero-art::after{content:none!important;display:none!important}
.ace-hero .ace-hero-copy{position:relative;z-index:3}
.ace-hero .ace-editorial-title{max-width:10.5ch}
.ace-hero+ .ace-light-section{position:relative;z-index:0}

/* Let one small original stickman interact with a real heading. */
.page-id-6 .ace-light-section .ace-split>h2{position:relative;isolation:isolate;padding-right:5%}
.page-id-6 .ace-light-section .ace-split>h2::after{
  content:"";position:absolute;width:105px;height:145px;
  background:url('./assets/images/ace-stickman-11.png') center bottom / contain no-repeat;
  right:-26px;top:-66px;pointer-events:none;opacity:.84;
}

.ace-project-hero{overflow:visible!important;z-index:2}
.ace-project-hero .ace-project-content{position:relative;z-index:3;min-width:0}
.ace-project-hero .ace-project-visual{
  width:100%;min-width:0;min-height:405px;height:auto;
  position:relative;align-self:end;justify-self:center;
  aspect-ratio:1.08 / 1;
  background:transparent!important;
  box-shadow:none!important; border:0!important; border-radius:0!important;
  transform:translateY(55px)!important;overflow:visible!important;
}
.ace-project-hero .ace-project-visual::before{
  content:"";display:block;position:absolute;inset:-3% -9% -3%;
  z-index:1;background-image:var(--ace-scene)!important;
  background-position:center center!important;background-repeat:no-repeat!important;
  background-size:contain!important;
  opacity:1!important;filter:none!important;transform:none!important;
}
.ace-project-hero .ace-project-visual::after{content:none!important;display:none!important}
.ace-project-hero--blooming{--ace-scene:url('./assets/images/ace-scene-garden-light.png')}
.ace-project-hero--shed{--ace-scene:url('./assets/images/ace-scene-shed-light.png')}
.ace-project-hero--bens{--ace-scene:url('./assets/images/ace-scene-bens-light.png')}
.ace-project-hero--edible{--ace-scene:url('./assets/images/ace-scene-food-light.png')}
.ace-project-hero--infusion{--ace-scene:url('./assets/images/ace-scene-cafe-light.png')}
.ace-project-hero--green{--ace-scene:url('./assets/images/ace-scene-green-light.png')}
.ace-project-hero--exchange{--ace-scene:url('./assets/images/ace-scene-exchange-light.png')}
.ace-project-hero--foke{--ace-scene:url('./assets/images/ace-scene-community-light.png')}
.ace-project-hero--lab{--ace-scene:url('./assets/images/ace-scene-lab-light.png')}
.ace-project-hero--bens .ace-project-visual,
.ace-project-hero--exchange .ace-project-visual{border-radius:0!important;transform:translateY(55px)!important}
.ace-project-story{position:relative;z-index:1}
/* Delicate gold underline: a visual bridge from illustration to content. */
.ace-project-story:before{
  content:"";position:absolute;left:max(24px,calc((100vw - 1180px)/2));top:0;
  width:min(210px,27vw);height:3px;background:var(--project,#c9a45b);transform:rotate(-1.5deg)
}

/* Project cards are open compositions, not framed thumbnails. */
.ace-projects-grid .ace-project-card{isolation:isolate;min-height:380px;overflow:hidden}
.ace-projects-grid .ace-project-card::before{
  content:"";position:absolute;inset:auto -4% -12% auto;
  width:75%;height:90%;opacity:1!important;z-index:0;
  background:transparent;
  transform:none;pointer-events:none;
}
.ace-projects-grid .ace-project-card::after{
  content:"";position:absolute;right:-2%;bottom:-1%;width:69%;height:68%;
  border:0;border-radius:0;background-color:transparent!important;
  background:url('./assets/images/ace-scene-garden-light.png') center bottom / contain no-repeat!important;
  opacity:1!important;z-index:0;pointer-events:none;transition:transform .3s ease;
}
.ace-projects-grid .ace-project-card:nth-child(2)::after{background-image:url('./assets/images/ace-scene-shed-light.png')!important}
.ace-projects-grid .ace-project-card:nth-child(3)::after{background-image:url('./assets/images/ace-scene-bens-light.png')!important}
.ace-projects-grid .ace-project-card:nth-child(4)::after{background-image:url('./assets/images/ace-scene-exchange-light.png')!important}
.ace-projects-grid .ace-project-card>*{position:relative;z-index:1}
.ace-projects-grid .ace-project-card h3{max-width:60%;overflow-wrap:anywhere}
.ace-projects-grid .ace-project-card>p:not(.ace-project-label):not(.ace-project-more){max-width:55%}
.ace-projects-grid .ace-project-card:hover::after{transform:translateY(-6px)}

/* Figure at project call-to-action is a small editorial wink, not a hero image. */
.ace-project-next::after{
 content:"";position:absolute;right:3%;bottom:-10px;width:min(170px,17vw);height:190px;
 opacity:.92;background:transparent;
 pointer-events:none;
}
.ace-project-next::before{
 content:"";position:absolute;right:6%;bottom:0;width:min(115px,11vw);height:165px;
 background:url('./assets/images/ace-stickman-11-light.png') center bottom / contain no-repeat;z-index:1;pointer-events:none;
}
.ace-project-next>p,.ace-project-next>h2{position:relative;z-index:2}

@media(max-width:1100px){
 .ace-hero .ace-editorial-title{max-width:unset}
 .ace-projects-grid .ace-project-card h3{max-width:66%}
}
@media(max-width:900px){
 .ace-hero{grid-template-columns:1fr;gap:10px;min-height:unset;padding-bottom:35px}
 .ace-hero-art{height:300px!important;min-height:300px!important;width:min(560px,90%);justify-self:center;transform:translateY(24px)}
 .ace-project-hero{grid-template-columns:1fr;gap:10px;padding-bottom:50px}
 .ace-project-hero .ace-project-visual{min-height:300px;width:min(570px,92%);transform:translateY(20px)!important}
 .ace-project-hero--bens .ace-project-visual,.ace-project-hero--exchange .ace-project-visual{transform:translateY(20px)!important}
 .ace-project-next::after,.ace-project-next::before{display:none}
}
@media(max-width:680px){
 .ace-header-inner .ace-brand-image,.ace-header-inner .ace-brand-image img{max-width:135px!important;width:135px!important}
 .ace-header-inner{gap:1rem!important}
 .ace-hero{padding:60px 22px 28px;gap:8px}
 .ace-hero-art{height:220px!important;min-height:220px!important;width:100%;transform:translateY(12px)}
 .ace-hero-art::before{inset:-2% -7%}
 .ace-project-hero{padding:60px 22px 28px!important}
 .ace-project-hero .ace-project-visual{width:100%;min-height:220px;aspect-ratio:1.42 / 1;transform:translateY(9px)!important}
 .ace-project-hero--bens .ace-project-visual,.ace-project-hero--exchange .ace-project-visual{transform:translateY(9px)!important}
 .ace-project-hero .ace-project-visual::before{inset:-3% -4%}
 .ace-project-story{padding-top:70px}
 .page-id-6 .ace-light-section .ace-split>h2::after{display:none}
 .ace-projects-grid .ace-project-card{min-height:360px;padding:30px 26px}
 .ace-projects-grid .ace-project-card::after{width:68%;height:57%;bottom:0}
 .ace-projects-grid .ace-project-card::before{width:78%;height:78%}
 .ace-projects-grid .ace-project-card h3{max-width:100%;font-size:clamp(2rem,8vw,2.65rem)!important}
 .ace-projects-grid .ace-project-card>p:not(.ace-project-label):not(.ace-project-more){max-width:73%;font-size:.93rem}
}
@media(max-width:420px){
 .ace-projects-grid .ace-project-card::after{height:51%;width:70%}
 .ace-projects-grid .ace-project-card>p:not(.ace-project-label):not(.ace-project-more){max-width:76%}
}


/* ACE editorial v0.6 — refined after viewing a real WordPress draft screenshot.
   Emphasis: smaller and more legible headlines, larger contextual line art,
   compact transitions, no artificial full-height decorative rule. */
/* Gutenberg's generic first-level group padding was overruling the editorial
   section styles with !important. These scoped overrides correct that issue. */
.wp-block-post-content > .ace-project-hero{
  max-width:none!important;
  margin-block-start:0!important;
  padding:clamp(54px,5.2vw,84px) max(26px,calc((100vw - 1300px)/2)) clamp(42px,5vw,80px)!important;
  min-height:clamp(510px,46vw,660px);
  grid-template-columns:minmax(0,1.13fr) minmax(0,1fr);
  column-gap:clamp(16px,3vw,52px);
  align-items:center;
  overflow:hidden!important;
}
.ace-project-hero .ace-project-content{max-width:715px;align-self:center}
.ace-project-hero h1.wp-block-heading{
  font-size:clamp(3rem,4.1vw,5.15rem)!important;
  line-height:1.085; letter-spacing:-.048em;
  max-width:14.3ch; margin:14px 0 22px;
  text-wrap:balance;
}
.ace-project-hero .ace-project-tag{margin:20px 0 10px;color:color-mix(in srgb,var(--project),white 37%);letter-spacing:.18em}
.ace-project-hero .ace-project-eyebrow{margin:0;font-size:.70rem;letter-spacing:.15em}
.ace-project-hero .ace-project-lead{font-size:clamp(1rem,1.22vw,1.21rem);line-height:1.6;max-width:53ch;margin:17px 0 0}
.ace-project-hero .ace-project-visual,
.ace-project-hero--bens .ace-project-visual,
.ace-project-hero--exchange .ace-project-visual{
  width:100%;max-width:680px;min-height:325px;
  aspect-ratio:1.39 / 1;align-self:center;justify-self:center;
  transform:translate(7px,0)!important;overflow:visible!important;
}
.ace-project-hero .ace-project-visual::before{
  inset:-18% -20%!important;
  background-size:contain!important;
  background-position:center center!important;
}
.wp-block-post-content > .ace-project-story{
  max-width:none!important;margin-block-start:0!important;
  padding:clamp(56px,5.2vw,82px) max(26px,calc((100vw - 1170px)/2)) clamp(58px,6vw,96px)!important;
  border-left:0!important;
}
.ace-project-story:before{width:min(125px,18vw);height:2px;left:max(26px,calc((100vw - 1170px)/2));background:#c9a45b}
.ace-project-story .ace-project-columns{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(30px,4.7vw,76px);align-items:start}
.ace-project-story h2.wp-block-heading{font-size:clamp(2.35rem,3.25vw,3.95rem);max-width:11.5ch;line-height:1.11;margin:.32em 0 0}
.ace-project-story .ace-copy{font-size:clamp(1rem,1.2vw,1.17rem);line-height:1.65}
.ace-project-story .ace-copy p{margin-bottom:.9em}
.ace-project-story .ace-project-eyebrow{margin:0}
/* Avoid dead air on the remaining project sections. */
.wp-block-post-content > .ace-project-process{padding-top:clamp(60px,6vw,92px)!important;padding-bottom:clamp(60px,6vw,96px)!important}
.wp-block-post-content > .ace-project-impact{padding-top:clamp(60px,6vw,95px)!important;padding-bottom:clamp(60px,6vw,95px)!important}
.wp-block-post-content > .ace-project-next{padding-top:clamp(60px,6vw,95px)!important;padding-bottom:clamp(60px,6vw,95px)!important}
@media(max-width:1100px){
 .wp-block-post-content > .ace-project-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:16px;min-height:535px}
 .ace-project-hero h1.wp-block-heading{font-size:clamp(2.8rem,4.5vw,4.35rem)!important}
 .ace-project-hero .ace-project-visual{min-height:285px}
}
@media(max-width:900px){
 .wp-block-post-content > .ace-project-hero{grid-template-columns:1fr;min-height:0;padding:58px 26px 24px!important;row-gap:8px}
 .ace-project-hero .ace-project-content{max-width:680px}
 .ace-project-hero h1.wp-block-heading{font-size:clamp(2.85rem,7.8vw,4.4rem)!important;max-width:16ch}
 .ace-project-hero .ace-project-visual,.ace-project-hero--bens .ace-project-visual,.ace-project-hero--exchange .ace-project-visual{width:min(560px,100%);max-width:100%;min-height:240px;transform:translateY(3px)!important;aspect-ratio:1.7 / 1}
 .ace-project-hero .ace-project-visual::before{inset:-8% -8%!important}
 .wp-block-post-content > .ace-project-story{padding:58px 26px 70px!important}
 .ace-project-story .ace-project-columns{grid-template-columns:1fr;gap:26px}
 .ace-project-story h2.wp-block-heading{max-width:19ch}
 .ace-project-story:before{left:26px}
}
@media(max-width:560px){
 .wp-block-post-content > .ace-project-hero{padding:45px 22px 22px!important}
 .ace-project-hero .ace-project-tag{margin-top:15px}
 .ace-project-hero h1.wp-block-heading{font-size:clamp(2.55rem,10vw,3.35rem)!important;max-width:100%;line-height:1.11;margin:12px 0 16px}
 .ace-project-hero .ace-project-lead{font-size:1rem;line-height:1.62}
 .ace-project-hero .ace-project-visual,.ace-project-hero--bens .ace-project-visual,.ace-project-hero--exchange .ace-project-visual{min-height:185px;width:100%;aspect-ratio:1.44 / 1;transform:translateY(4px)!important}
 .ace-project-hero .ace-project-visual::before{inset:-4% -5%!important}
 .wp-block-post-content > .ace-project-story{padding:52px 22px 62px!important}
 .ace-project-story:before{left:22px}
 .ace-project-story h2.wp-block-heading{font-size:clamp(2.25rem,9.2vw,3.1rem);max-width:16ch}
 .ace-project-story .ace-copy{font-size:1rem}
}
