@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500 600;font-display:swap;src:url(../fonts/Cormorant-var.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/Cormorant-italic.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(../fonts/Inter-var.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}:root{--green:#002724;--pine:#001E1C;--sage:#A6C2B6;--sage-l:#DDE8E2;--brass:#6F9283;--bronze:#3F6457;--ivory:#F7F6F2;--paper:#FFFFFF;--ink:#1E2322;--muted:#56605D;--line:#DAD8D0;--terra:#A2493C;--graphite:#2B2F2E;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;--max:1280px;--r:4px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.65;color:var(--ink);background:var(--ivory);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--green);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--bronze)}:focus-visible{outline:2px solid var(--brass);outline-offset:3px}h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.12;color:var(--green);margin:0 0 .5em;letter-spacing:-.005em}h1{font-size:clamp(2.4rem,5.2vw,4.4rem)}h2{font-size:clamp(1.9rem,3.4vw,2.9rem)}h3{font-size:clamp(1.35rem,2vw,1.7rem)}p{margin:0 0 1.1em}.skip{position:absolute;left:-999px;top:0;background:var(--green);color:#fff;padding:.7em 1em;z-index:100}.skip:focus{left:1rem;top:1rem}.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(20px,4vw,48px)}.narrow{max-width:780px}.eyebrow{font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin:0 0 1rem;display:flex;align-items:center;gap:.8rem}.eyebrow::before{content:"";width:28px;height:1px;background:currentColor}.lead{font-size:clamp(1.08rem,1.5vw,1.25rem);color:var(--muted);line-height:1.6}.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.hdr{position:absolute;top:0;left:0;right:0;z-index:50;color:#fff;transition:background .35s,box-shadow .35s,color .35s}.hdr.solid,.hdr.stuck{position:fixed;background:#F7F6F2;color:var(--green);box-shadow:0 1px 0 var(--line)}.hdr.solid{position:sticky}.hdr-in{display:flex;align-items:center;justify-content:space-between;height:84px;gap:24px}.hdr.stuck .hdr-in{height:68px}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand img{width:46px;height:46px;border-radius:3px}.brand .w{display:flex;flex-direction:column;line-height:1}.brand b{font-family:var(--serif);font-weight:600;font-size:1.32rem;letter-spacing:.12em}.brand small{font-size:.62rem;letter-spacing:.42em;font-weight:500;margin-top:5px;opacity:.85}.nav{display:flex;align-items:center;gap:2px}.nav>ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}.nav li{position:relative}.nav a,.nav .dd-btn{display:block;white-space:nowrap;color:inherit;text-decoration:none;font-size:.85rem;font-weight:500;padding:10px 9px;border-radius:var(--r);background:none;border:0;font-family:inherit;cursor:pointer;letter-spacing:.01em}.nav a:hover,.nav .dd-btn:hover,.nav a[aria-current=page]{color:var(--brass)}.dd-btn::after{content:"";display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-3px);margin-left:7px}.dd{position:absolute;top:100%;left:0;min-width:270px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:var(--r);padding:10px;list-style:none;margin:0;opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s;box-shadow:0 18px 40px rgba(2,45,38,.12)}.nav li:hover>.dd,.nav li:focus-within>.dd,.nav li.open>.dd{opacity:1;visibility:visible;transform:none}.dd a{color:var(--ink);padding:9px 12px;font-size:.9rem}.dd a:hover{background:var(--ivory);color:var(--green)}.btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--sans);font-weight:600;font-size:.92rem;letter-spacing:.02em;padding:14px 26px;border-radius:var(--r);border:1px solid var(--green);background:var(--green);color:var(--ivory);text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s;min-height:48px}.btn:hover{background:var(--pine);color:#fff;border-color:var(--pine)}.btn.ghost{background:transparent;color:var(--green)}.btn.ghost:hover{background:var(--green);color:var(--ivory)}.btn.light{background:var(--ivory);color:var(--green);border-color:var(--ivory)}.btn.light:hover{background:#fff;color:var(--green)}.btn.line-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}.btn.line-light:hover{background:#fff;color:var(--green)}.btn.brass{background:var(--brass);border-color:var(--brass);color:#fff}.btn.brass:hover{background:var(--bronze);border-color:var(--bronze)}.nav .btn{padding:10px 18px;min-height:42px;margin-left:10px;font-size:.84rem}.hdr:not(.solid):not(.stuck) .nav .btn{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}.arrow::after{content:"→";transition:transform .2s;display:inline-block}a:hover .arrow::after,.arrow:hover::after{transform:translateX(4px)}.ext::after{content:"↗";font-size:.9em}.menu-btn{display:none;background:none;border:0;color:inherit;width:48px;height:48px;cursor:pointer;padding:12px}.menu-btn span{display:block;height:1.5px;background:currentColor;margin:6px 0;transition:.25s}@media (max-width:1260px){.menu-btn{display:block}.nav{position:fixed;inset:0;background:var(--green);color:#fff;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:96px 28px 40px;overflow-y:auto;transform:translateX(100%);transition:transform .35s ease;visibility:hidden}.nav.open{transform:none;visibility:visible}.nav>ul{flex-direction:column;align-items:stretch;gap:0}.nav a,.nav .dd-btn{font-size:1.15rem;padding:14px 4px;border-bottom:1px solid rgba(255,255,255,.12);width:100%;text-align:left}.dd{position:static;opacity:1;visibility:visible;transform:none;display:none;background:transparent;border:0;box-shadow:none;padding:0 0 8px 14px;min-width:0}.nav li.open>.dd{display:block}.dd a{color:#fff;font-size:1rem;border-bottom:0}.dd a:hover{background:transparent;color:var(--sage)}.nav .btn{margin:24px 0 0;justify-content:center;background:var(--ivory)!important;color:var(--green)!important;border-color:var(--ivory)!important}.menu-btn{position:relative;z-index:60}body.menu-open .menu-btn{color:#fff}body.menu-open{overflow:hidden}body.menu-open .menu-btn span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}body.menu-open .menu-btn span:nth-child(2){opacity:0}body.menu-open .menu-btn span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}}.hero{position:relative;min-height:min(92vh,860px);display:flex;align-items:flex-end;color:#fff;background:var(--green);overflow:hidden}.hero.sub{min-height:min(64vh,560px)}.hero picture,.hero>img,.hero .hero-img{position:absolute;inset:0;width:100%;height:100%}.hero img{width:100%;height:100%;object-fit:cover}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,26,22,.55) 0%,rgba(1,26,22,.12) 32%,rgba(1,26,22,.25) 55%,rgba(1,32,27,.88) 100%)}.hero .wrap{position:relative;z-index:2;width:100%;padding-bottom:clamp(48px,8vw,96px);padding-top:140px}.hero h1{color:#fff;max-width:15ch;margin-bottom:.35em}.hero.sub h1{max-width:20ch}.hero .lead{color:rgba(255,255,255,.88);max-width:58ch}.hero .eyebrow{color:#A9C4B8}.hero .ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.crumbs{font-size:.8rem;margin-bottom:22px;color:rgba(255,255,255,.75)}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}.crumbs li+li::before{content:"/";margin-right:6px;opacity:.6}.crumbs a{color:#fff;text-decoration:none}.crumbs a:hover{color:#A9C4B8}.sec{padding:clamp(64px,9vw,120px) 0}.sec.tight{padding:clamp(48px,6vw,80px) 0}.sec.white{background:var(--paper)}.sec.green{background:var(--green);color:#E9EFEC}.sec.green h2,.sec.green h3{color:#fff}.sec.green .lead{color:rgba(233,239,236,.82)}.sec.green a:not(.btn){color:#C6DAD0}.sec.sage{background:var(--sage-l)}.sec-head{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);align-items:end;margin-bottom:clamp(36px,5vw,64px)}.sec-head h2{margin:0}.sec-head p{margin:0}@media (max-width:860px){.sec-head{grid-template-columns:1fr}}.split{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}.split.rev>:first-child{order:2}@media (max-width:900px){.split{grid-template-columns:1fr}.split.rev>:first-child{order:0}}.ph{position:relative;overflow:hidden;border-radius:2px;background:var(--sage-l)}.ph img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform 1.2s ease}.ph.tall img{aspect-ratio:4/5}.ph:hover img{transform:scale(1.03)}.chips{display:grid;gap:0;border-top:1px solid var(--line)}.chip{display:flex;gap:18px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line)}.chip b{font-family:var(--serif);font-size:1.9rem;color:var(--green);font-weight:600;min-width:2.6em;line-height:1}.chip span{color:var(--muted)}.grid{display:grid;gap:clamp(18px,2.4vw,32px)}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}@media (max-width:1020px){.g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}.tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:520px;color:#fff;text-decoration:none;overflow:hidden;border-radius:2px;background:var(--green)}.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease}.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,26,22,0) 30%,rgba(1,26,22,.9) 100%)}.tile:hover img{transform:scale(1.04)}.tile .in{position:relative;z-index:2;padding:32px}.tile h3{color:#fff;font-size:2rem;margin-bottom:.3em}.tile p{color:rgba(255,255,255,.85);font-size:.98rem}.tile .k{display:block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#A9C4B8;margin-bottom:12px;font-weight:600}.tile .go{font-weight:600;font-size:.9rem;color:#fff}.tile.t-tex{border-top:3px solid var(--sage)}.tile.t-re{border-top:3px solid var(--terra)}.tile.t-vc{border-top:3px solid var(--brass)}@media (max-width:640px){.tile{min-height:400px}}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:30px;display:flex;flex-direction:column;transition:border-color .25s,transform .25s}.card:hover{border-color:var(--sage)}.card h3{font-size:1.45rem}.card p{color:var(--muted);font-size:.96rem}.card .more{margin-top:auto;font-weight:600;font-size:.9rem;text-decoration:none}.card.proj{padding:0;overflow:hidden}.card.proj .ph img{aspect-ratio:16/10}.card.proj .body{padding:26px 28px 30px;display:flex;flex-direction:column;flex:1}.status{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:20px;background:var(--sage-l);color:var(--green);margin-bottom:12px;align-self:flex-start}.status.cur{background:#E3ECE7;color:var(--bronze)}.meta{font-size:.86rem;color:var(--muted);margin:-.3em 0 .9em}.logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}@media (max-width:900px){.logos{grid-template-columns:repeat(2,minmax(0,1fr))}}.logos a{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:28px 20px;min-height:180px;text-decoration:none;color:var(--muted);font-size:.78rem;text-align:center;transition:background .25s}.logos img{max-width:100%;height:auto;object-fit:contain;filter:grayscale(1);opacity:.78;transition:filter .3s,opacity .3s}.logos a:hover{background:#fff}.logos a:hover img{filter:none;opacity:1}.caps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.15)}.cap{padding:34px 30px 34px 0;border-bottom:1px solid rgba(255,255,255,.15)}.cap svg{width:34px;height:34px;stroke:#A9C4B8;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;margin-bottom:18px}.cap h3{font-size:1.4rem}.cap p{font-size:.95rem;color:rgba(233,239,236,.78);margin:0}.sec:not(.green) .cap{border-color:var(--line)}.sec:not(.green) .caps{border-color:var(--line)}.sec:not(.green) .cap svg{stroke:var(--bronze)}.sec:not(.green) .cap p{color:var(--muted)}@media (max-width:900px){.caps{grid-template-columns:1fr 1fr}}@media (max-width:600px){.caps{grid-template-columns:1fr}}.offices{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media (max-width:900px){.offices{grid-template-columns:1fr}}.office{border-top:2px solid var(--green);padding-top:22px}.office h3{font-size:1.4rem;margin-bottom:.2em}.office p{color:var(--muted);font-size:.95rem;margin-bottom:.6em}.office .small{font-size:.85rem}.strengths{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;counter-reset:s}.strengths div{counter-increment:s;border-top:1px solid var(--line);padding-top:22px}.strengths div::before{content:"0" counter(s);font-family:var(--serif);font-size:1.1rem;color:var(--brass);display:block;margin-bottom:12px}.strengths h3{font-size:1.3rem}.strengths p{font-size:.95rem;color:var(--muted);margin:0}@media (max-width:1000px){.strengths{grid-template-columns:1fr 1fr}}@media (max-width:600px){.strengths{grid-template-columns:1fr}}.prose{max-width:760px}.prose h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin-top:1.6em}.prose h2:first-child{margin-top:0}.prose h3{margin-top:1.4em}.prose ul{padding-left:1.1em;margin:0 0 1.2em}.prose li{margin:.35em 0}.prose li::marker{color:var(--brass)}.blocks{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(28px,4vw,56px) clamp(32px,6vw,90px)}.blocks>div{border-top:1px solid var(--line);padding-top:26px}.blocks h2{font-size:clamp(1.5rem,2.3vw,2rem)}.blocks ul{padding-left:1.1em;margin:0}.blocks li{margin:.3em 0}.blocks li::marker{color:var(--brass)}.blocks p:last-child{margin-bottom:0}@media (max-width:820px){.blocks{grid-template-columns:1fr}}.feature{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(24px,4vw,56px);align-items:center;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--terra);padding:clamp(28px,4vw,48px);border-radius:var(--r)}.feature img{width:96px;height:auto}.feature h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin-bottom:.3em}.feature p{margin:0;color:var(--muted)}@media (max-width:820px){.feature{grid-template-columns:1fr}}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:24px 0 8px}.stats div{border-top:1px solid var(--line);padding-top:16px}.stats b{display:block;font-family:var(--serif);font-size:2.4rem;color:var(--terra);font-weight:600;line-height:1}.stats span{font-size:.9rem;color:var(--muted)}.note{font-size:.82rem;color:var(--muted)}.tree{display:grid;gap:28px}.tree .root{justify-self:center;text-align:center;background:var(--green);color:#fff;padding:22px 40px;border-radius:var(--r)}.tree .root b{font-family:var(--serif);font-size:1.6rem;letter-spacing:.08em;font-weight:600}.tree .root small{display:block;font-size:.8rem;opacity:.8;margin-top:4px}.tree .cols{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;position:relative}.tree .col{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--sage);padding:24px;border-radius:var(--r)}.tree .col.re{border-top-color:var(--terra)}.tree .col.vc{border-top-color:var(--brass)}.tree .col h3{font-size:1.35rem}.tree .col ul{list-style:none;margin:0;padding:0}.tree .col li{padding:9px 0;border-top:1px solid var(--line);font-size:.93rem}.tree .mgmt{justify-self:center;max-width:640px;text-align:center;border:1px dashed var(--brass);padding:20px 28px;border-radius:var(--r);background:#F3F7F4}@media (max-width:860px){.tree .cols{grid-template-columns:1fr}}.timeline{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}.timeline li{position:relative;padding:0 0 30px 34px}.timeline li::before{content:"";position:absolute;left:-6px;top:8px;width:11px;height:11px;border-radius:50%;background:var(--ivory);border:2px solid var(--brass)}.timeline b{font-family:var(--serif);font-size:1.7rem;color:var(--green);display:block;line-height:1.1}.timeline span{color:var(--muted)}.co-head{display:grid;grid-template-columns:240px 1fr;gap:clamp(24px,5vw,64px);align-items:center;background:var(--paper);border:1px solid var(--line);padding:clamp(24px,4vw,48px);border-radius:var(--r);margin-top:-80px;position:relative;z-index:3}.co-head .lg{display:flex;align-items:center;justify-content:center;min-height:150px}.co-head .lg img{max-width:100%;height:auto}.badge{display:inline-block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--bronze);border:1px solid #C9DAD1;padding:5px 11px;border-radius:20px;margin-bottom:12px}@media (max-width:760px){.co-head{grid-template-columns:1fr;margin-top:-50px}.co-head .lg{min-height:110px;justify-content:flex-start}}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;border-top:1px solid var(--line);margin-top:20px}.facts div{padding:14px 0;border-bottom:1px solid var(--line)}.facts dt{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}.facts dd{margin:4px 0 0;font-weight:500}dl{margin:0}.dir-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.dir-filter a{padding:9px 16px;border:1px solid var(--line);border-radius:30px;text-decoration:none;font-size:.88rem;background:var(--paper);color:var(--ink)}.dir-filter a[aria-current=true]{background:var(--green);color:#fff;border-color:var(--green)}.co-card{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:center}.co-card .lg{display:flex;align-items:center;justify-content:center;height:96px}.co-card .lg img{max-width:100%;height:auto}@media (max-width:480px){.co-card{grid-template-columns:1fr}}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}.form .full{grid-column:1/-1}@media (max-width:640px){.form{grid-template-columns:1fr}}.field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:6px;letter-spacing:.02em}.field input,.field select,.field textarea{width:100%;font:inherit;font-size:1rem;padding:13px 14px;border:1px solid #C9C6BC;border-radius:var(--r);background:#fff;color:var(--ink);min-height:48px}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--brass);outline-offset:0;border-color:var(--brass)}.field .err{color:#9B2C1F;font-size:.84rem;margin-top:5px;display:block}.field.bad input,.field.bad textarea,.field.bad select{border-color:#9B2C1F}.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}.alert{padding:14px 18px;border-radius:var(--r);margin-bottom:18px;font-size:.95rem}.alert.ok{background:#E5EFE9;color:var(--green);border:1px solid var(--sage)}.alert.bad{background:#F8E9E6;color:#7A2418;border:1px solid #E4B9B1}.sec.green .field label{color:#fff}.sec.green .note{color:rgba(233,239,236,.75)}.enq{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,6vw,90px)}@media (max-width:900px){.enq{grid-template-columns:1fr}}.ftr{background:var(--pine);color:rgba(233,239,236,.78);font-size:.92rem;padding:72px 0 28px}.ftr a{color:rgba(233,239,236,.9);text-decoration:none}.ftr a:hover{color:#C6DAD0}.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}.ftr h2{font-family:var(--sans);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:#A9C4B8;margin-bottom:16px;font-weight:600}.ftr ul{list-style:none;margin:0;padding:0}.ftr li{margin:8px 0}.ftr .brand{color:#fff;margin-bottom:18px}.ftr-bot{border-top:1px solid rgba(255,255,255,.12);margin-top:52px;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:.82rem}.ftr-bot ul{display:flex;gap:20px;flex-wrap:wrap}@media (max-width:900px){.ftr-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.ftr-grid{grid-template-columns:1fr}}html.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .9s ease,transform .9s ease}html.js .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}.no-js .reveal{opacity:1;transform:none}.empty{border:1px dashed var(--line);padding:36px;text-align:center;color:var(--muted);border-radius:var(--r);background:var(--paper)}.search-form{display:flex;gap:10px;max-width:620px}.search-form input{flex:1}.results{list-style:none;padding:0;margin:28px 0 0}.results li{padding:18px 0;border-bottom:1px solid var(--line)}.results a{font-family:var(--serif);font-size:1.4rem;font-weight:600;text-decoration:none}.page404{min-height:70vh;display:flex;align-items:center}.mob-cta{display:none}@media (max-width:760px){.mob-cta{display:flex;position:fixed;right:16px;bottom:16px;z-index:40;box-shadow:0 10px 30px rgba(1,26,22,.3)}}.yas-band{background:#F6EFEA;border-top:1px solid #EAD9CF;border-bottom:1px solid #EAD9CF}.mt{margin-top:12px}.mt-l{margin-top:40px}.crumbs-dark{color:var(--muted)}.crumbs-dark a{color:var(--green)}.illus{position:absolute;right:12px;bottom:10px;z-index:3;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.78);background:rgba(1,26,22,.35);padding:3px 8px;border-radius:3px}.hero .illus{bottom:14px;right:18px}.proj-top{aspect-ratio:16/10;display:flex;align-items:flex-end;padding:24px 28px;background:linear-gradient(135deg,#F6EFEA 0%,#EAD9CF 100%);border-bottom:3px solid var(--terra)}.proj-top span{font-family:var(--serif);font-size:1.6rem;color:var(--terra);font-weight:600;line-height:1.1}.tile .illus{top:12px;bottom:auto}.sec.green .eyebrow{color:#A9C4B8}.status.cur{color:#2E4C41}.btn.brass{background:#3F6457;border-color:#3F6457}.btn.brass:hover{background:#2E4C41;border-color:#2E4C41}.eyebrow{color:#3F6457}@media (min-width:1261px){.nav{flex-wrap:nowrap;flex-shrink:1;min-width:0}.nav a,.nav .dd-btn{padding:10px 8px}.nav .btn{margin-left:8px}}.hdr .brand{flex-shrink:0}@media (min-width:1261px){.hdr:not(.solid):not(.stuck) .nav a[aria-current=page]{color:#fff;text-decoration:underline;text-decoration-color:#A9C4B8;text-decoration-thickness:2px;text-underline-offset:8px}}.co-line{font-size:.92rem;color:var(--muted);margin:-.2em 0 1.4em}.co-line span{font-weight:600;color:var(--ink)}.co-line a{white-space:nowrap}.ftr .social{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.9rem}.brand .w b{letter-spacing:.14em}.lg .lg-name{font-family:var(--serif);font-weight:600;font-size:1.25rem;letter-spacing:.06em;color:var(--green);text-align:center;line-height:1.2}.logos a{min-width:0}.logos span{max-width:100%;text-align:center;overflow-wrap:break-word}
.hdr.solid .nav a[aria-current=page],.hdr.stuck .nav a[aria-current=page]{color:var(--green);text-decoration:underline;text-decoration-color:var(--brass);text-decoration-thickness:2px;text-underline-offset:8px}

/* Tahir 30 Oct: headings in capitals (CMS text stays as typed) */
h1,h2{text-transform:uppercase;letter-spacing:.05em}
h1{overflow-wrap:break-word;hyphens:manual}
@media (max-width:640px){h1{letter-spacing:.03em}}
.hero-title,.hero h1{letter-spacing:.06em}
/* Tahir 30 Oct: EG logo dark green as primary; on photo/dark headers it sits on a dark-green plate */
.hdr:not(.solid):not(.stuck) .brand{background:#002724;padding:5px 16px 5px 5px;border-radius:6px;box-shadow:0 0 0 1px rgba(166,194,182,.45);color:#EFEFE6}
.hdr.solid .brand,.hdr.stuck .brand{color:#002724}
/* Offices with maps */
.offices.maps{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.office .map{position:relative;width:100%;height:220px;margin:14px 0 10px;border:1px solid rgba(0,39,36,.15);border-radius:4px;overflow:hidden;background:#eef3f1}
.office .map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.offices.small .office .map{height:170px}
.office .tag{display:inline-block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-bottom:6px}
.ftr-offices{list-style:none;padding:0;margin:0 0 14px}
.ftr-offices li{margin:0 0 10px;font-size:.88rem;line-height:1.45}
.ftr-offices b{display:block;font-weight:600;color:#fff}
.ftr-offices span{display:block;opacity:.85}
.ftr-offices a{font-size:.8rem}
.prop-contact{border-left:3px solid var(--terra,#B0705A);padding:10px 16px;margin:18px 0;background:rgba(176,112,90,.06)}
.prop-contact p{margin:4px 0}
.prop-contact .eyebrow{margin:0}
.card.proj .ph{position:relative}
.card.proj .credit{position:absolute;left:0;right:0;bottom:0;padding:4px 10px;font-size:.66rem;line-height:1.3;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.55),rgba(0,0,0,0))}
.card.proj .credit a{color:#fff}
.img-credit{font-size:.7rem;color:var(--muted,#667);margin-top:6px}

.hero:not(.sub) h1{font-size:clamp(2.1rem,4.4vw,3.7rem);max-width:19ch;line-height:1.08}

/* hero video (Real Estate) */
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (prefers-reduced-motion:reduce){.hero-video{display:none}}
@media (max-width:640px){.hero-video{display:none}}
/* gallery */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.gallery figure{margin:0}
.gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:4px;display:block}
.gallery figcaption{font-size:.8rem;color:var(--muted,#667);margin-top:6px}
@media (max-width:900px){.gallery{grid-template-columns:repeat(2,1fr)}}
.credits{list-style:none;padding:0}.credits li{margin:0 0 14px;line-height:1.5}
/* company logos: one consistent box, never distorted */
.co-card .lg{height:96px}



.co-card{display:flex;flex-direction:column;align-items:stretch;gap:14px}
.co-card .lg{height:84px;justify-content:flex-start;align-items:center;border-bottom:1px solid rgba(0,39,36,.1);padding-bottom:14px}
.co-card .lg img,.co-card .lg picture img{max-width:100%;max-height:none;height:auto;object-fit:contain}
.co-head .lg img,.co-head .lg picture img{max-width:100%;max-height:none;height:auto;object-fit:contain}

.logos img{max-height:none;max-width:100%;height:auto}

.office .tag{color:var(--green,#0B3B33);font-weight:600}

/* ===== WordPress block layer (EG-Group theme) ===== */
html.no-js .reveal,.editor-styles-wrapper .reveal{opacity:1!important;transform:none!important}
h1,h2,h3,h4,h5,h6{text-transform:uppercase;letter-spacing:.04em}
.wp-site-blocks{padding:0}
:where(.wp-site-blocks)>*,:where(.is-layout-flow)>*,:where(.is-layout-constrained)>*{margin-block-start:0;margin-block-end:0}
.wp-block-group,.wp-block-columns,.wp-block-column{margin:0;box-sizing:border-box}
.site-main{display:block}
.wp-block-post-content>*{margin-top:0}
figure{margin:0}
.wp-block-image{margin:0}.wp-block-image img{max-width:100%;height:auto;display:block}
.ph .wp-block-image,.ph figure{height:100%}
.ph .wp-block-image img{width:100%;height:100%;object-fit:cover}
/* Header */
.hdr .hdr-in{flex-wrap:nowrap}
.hdr .brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.hdr .brand .wp-block-site-logo img{width:46px;height:46px;display:block}
.brand .wp-block-site-title{margin:0;font-family:var(--sans);font-weight:700;font-size:1.02rem;letter-spacing:.16em;text-transform:uppercase;line-height:1}
.brand .wp-block-site-title a{color:inherit;text-decoration:none}
.hdr-right{gap:6px;min-width:0}
.hdr .eg-nav{font-size:.85rem;font-weight:500;gap:0}
.hdr .eg-nav .wp-block-navigation__container{gap:2px}
.hdr .eg-nav .wp-block-navigation-item__content{color:inherit;text-decoration:none;padding:10px 8px;border-radius:var(--r);white-space:nowrap;letter-spacing:.01em}
.hdr .eg-nav .wp-block-navigation-item__content:hover{color:var(--brass)}
.hdr .eg-nav .wp-block-navigation-submenu__toggle{padding-right:8px}
.hdr .eg-nav .wp-block-navigation__submenu-container{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:var(--r);padding:10px!important;min-width:270px!important;box-shadow:0 18px 40px rgba(2,45,38,.12)}
.hdr .eg-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{color:var(--ink);padding:9px 12px;font-size:.9rem;display:block;width:100%}
.hdr .eg-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:var(--ivory);color:var(--green)}
.hdr .eg-nav .current-menu-item>.wp-block-navigation-item__content{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px;text-decoration-color:var(--brass)}
.hdr-cta .wp-block-button__link{padding:10px 18px;min-height:42px;font-size:.84rem}
.hdr:not(.solid):not(.stuck) .hdr-cta .wp-block-button__link{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}
.hdr:not(.solid):not(.stuck) .brand{background:#002724;padding:5px 16px 5px 5px;border-radius:6px;box-shadow:0 0 0 1px rgba(166,194,182,.45);color:#EFEFE6}
body:not(.has-hero) .hdr{position:sticky;top:0;background:#F7F6F2;color:var(--green);box-shadow:0 1px 0 var(--line)}
.admin-bar .hdr.stuck{top:32px}
@media (max-width:782px){.admin-bar .hdr.stuck{top:46px}}
/* Mobile / tablet menu: the overlay below 1260px */
.eg-nav .wp-block-navigation__responsive-container-open,.eg-nav .wp-block-navigation__responsive-container-close{color:inherit;width:48px;height:48px;align-items:center;justify-content:center}
.eg-nav .wp-block-navigation__responsive-container-open svg{width:30px;height:30px}
@media (max-width:1260px){
 .eg-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
 .eg-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
 .hdr-cta{display:none}
}
.eg-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--green)!important;color:#fff!important;padding:28px}
.eg-nav .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:56px;align-items:stretch!important}
.eg-nav .is-menu-open .wp-block-navigation__container{flex-direction:column;align-items:stretch!important;gap:0;width:100%}
.eg-nav .is-menu-open .wp-block-navigation-item{width:100%;align-items:stretch!important}
.eg-nav .is-menu-open .wp-block-navigation-item__content{font-size:1.15rem;padding:14px 4px!important;border-bottom:1px solid rgba(255,255,255,.12);color:#fff!important;width:100%}
.eg-nav .is-menu-open .wp-block-navigation__submenu-container{background:transparent!important;border:0!important;box-shadow:none;padding:0 0 8px 14px!important;color:#fff!important}
.eg-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:1rem;color:#fff!important;border-bottom:0;padding:10px 4px!important}
.eg-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:transparent;color:var(--sage)!important}
/* Buttons (core) styled as the EG-Group .btn */
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px}
.wp-block-button__link,.wp-element-button{display:inline-flex;align-items:center;gap:.6em;font-family:var(--sans);font-weight:600;font-size:.92rem;letter-spacing:.02em;padding:14px 26px;border-radius:var(--r);border:1px solid var(--green);background:var(--green);color:var(--ivory);text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s;min-height:48px;line-height:1.2}
.wp-block-button__link:hover{background:var(--pine);color:#fff;border-color:var(--pine)}
.is-style-ghost .wp-block-button__link{background:transparent;color:var(--green)}
.is-style-ghost .wp-block-button__link:hover{background:var(--green);color:var(--ivory)}
.is-style-light .wp-block-button__link{background:var(--ivory);color:var(--green);border-color:var(--ivory)}
.is-style-light .wp-block-button__link:hover{background:#fff;color:var(--green)}
.is-style-line-light .wp-block-button__link{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.is-style-line-light .wp-block-button__link:hover{background:#fff;color:var(--green)}
.is-style-brass .wp-block-button__link{background:#3F6457;border-color:#3F6457;color:#fff}
.is-style-brass .wp-block-button__link:hover{background:#2E4C41;border-color:#2E4C41}
.is-style-link-arrow .wp-block-button__link{background:none;border:0;padding:0;min-height:0;color:var(--green);font-weight:600}
.is-style-link-arrow .wp-block-button__link::after{content:"→";transition:transform .2s}
.is-style-link-arrow .wp-block-button__link:hover{background:none;color:var(--bronze)}
.is-style-link-arrow .wp-block-button__link:hover::after{transform:translateX(4px)}
.sec.green .is-style-link-arrow .wp-block-button__link{color:#C6DAD0}
.wp-block-button.ext .wp-block-button__link::after{content:"↗";font-weight:400}
.mob-cta-wrap{display:none}
@media (max-width:760px){.mob-cta-wrap{display:block;position:fixed;right:16px;bottom:16px;z-index:40;margin:0}.mob-cta-wrap .mob-cta{position:static;display:block;box-shadow:0 10px 30px rgba(1,26,22,.3);border-radius:var(--r)}}
/* Photo header = core Cover block with class "hero" */
.wp-block-cover.hero{padding:0;min-height:min(92vh,860px);align-items:flex-end;justify-content:flex-start;color:#fff;background:var(--green);overflow:hidden}
.wp-block-cover.hero.sub{min-height:min(64vh,560px)}
.wp-block-cover.hero .wp-block-cover__image-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wp-block-cover.hero .wp-block-cover__background{opacity:0!important}
.wp-block-cover.hero::after{z-index:1}
.wp-block-cover.hero .wp-block-cover__inner-container{position:relative;z-index:2;width:100%;max-width:var(--max);margin:0 auto;padding:140px clamp(20px,4vw,48px) clamp(48px,8vw,96px);color:#fff}
.wp-block-cover.hero .wp-block-buttons{margin-top:30px}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none;z-index:0}
.hero-video.on{display:block}
@media (prefers-reduced-motion:reduce){.hero-video{display:none!important}}
/* Paragraph-based building blocks */
p.chip{margin:0}
.chips{display:grid}
.sec-head>.wp-block-group,.sec-head>div{min-width:0}
.prose .wp-block-list{padding-left:1.2em}
.wp-block-list{margin:0 0 1em}
.wp-block-separator{border:0;border-top:1px solid var(--line);margin:2rem 0}
/* Footer */
.ftr .ftr-h{font-family:var(--sans);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:#A9C4B8;margin:0 0 18px;font-weight:600}
.ftr .ftr-nav .wp-block-navigation__container{flex-direction:column;align-items:flex-start;gap:0}
.ftr .ftr-nav .wp-block-navigation-item__content{color:inherit;text-decoration:none;padding:5px 0;display:block}
.ftr .ftr-nav .wp-block-navigation-item__content:hover{color:#fff;text-decoration:underline}
.ftr .ftr-legal .wp-block-navigation__container{gap:18px;flex-wrap:wrap}
.ftr .ftr-legal .wp-block-navigation-item__content{color:inherit;text-decoration:none}
.ftr .ftr-legal .wp-block-navigation-item__content:hover{color:#fff}
.ftr .brand{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;color:#EFEFE6}
.ftr .brand .wp-block-site-logo img{width:46px;height:46px}
.ftr-bot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}
.social{display:flex;gap:10px;list-style:none;padding:0;margin:18px 0 0}
.social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff}
.social svg{width:18px;height:18px;fill:currentColor}
/* Contact Form 7 inside the EG-Group form grid */
.wpcf7 form.form{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.wpcf7 .wpcf7-form-control-wrap{display:block}
.wpcf7 .wpcf7-not-valid-tip{color:#A2493C;font-size:.85rem;margin-top:6px;display:block}
.sec.green .wpcf7 .wpcf7-not-valid-tip{color:#FFD7CF}
.wpcf7 form .wpcf7-response-output{grid-column:1/-1;margin:0;padding:12px 16px;border-radius:var(--r);border:1px solid var(--line)}
.wpcf7 form.sent .wpcf7-response-output{border-color:#3F6457;background:#E7F0EB;color:#14342B}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output{border-color:#A2493C;background:#FBEDEA;color:#5A1E15}
.wpcf7-spinner{margin:0 0 0 12px}
.wpcf7 .hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
@media (max-width:640px){.wpcf7 form.form{grid-template-columns:1fr}}
.wpcf7 .wpcf7-submit{min-height:48px}
/* Search */
.eg-search .wp-block-search__inside-wrapper{display:flex;gap:10px;max-width:640px}
.eg-search input{flex:1;min-height:48px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r);font:inherit}
.eg-search .wp-block-search__button{margin:0}
.results .wp-block-post-title{font-size:1.4rem;margin-top:1.4rem}
.results .wp-block-post-title a{color:var(--green)}
:focus-visible{outline:3px solid #6F9283;outline-offset:2px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link.screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;left:1rem;top:1rem;z-index:100000;background:var(--green);color:#fff;padding:.7em 1em}

.wp-block-button.arrow::after,.wp-block-button.ext::after{content:none}
.wp-block-button.arrow .wp-block-button__link::after{content:"→";transition:transform .2s;display:inline-block}
.wp-block-button.arrow .wp-block-button__link:hover::after{transform:translateX(4px)}
.wp-block-button.ext .wp-block-button__link::after{content:"↗";font-size:.9em}
body .mob-cta-wrap{display:none}
@media (max-width:760px){body .mob-cta-wrap{display:block;position:fixed;right:16px;bottom:16px;z-index:40;margin:0}}
.wpcf7 .wpcf7-submit{display:inline-flex;align-items:center;font-family:var(--sans);font-weight:600;font-size:.92rem;letter-spacing:.02em;padding:14px 26px;border-radius:var(--r);border:1px solid var(--green);background:var(--green);color:var(--ivory);cursor:pointer;min-height:48px}
.wpcf7 .wpcf7-submit:hover{background:var(--pine);border-color:var(--pine)}
.wpcf7 .on-dark .wpcf7-submit,.wpcf7 form.on-dark .wpcf7-submit{background:var(--ivory);color:var(--green);border-color:var(--ivory)}
.wpcf7 form.on-dark .wpcf7-submit:hover{background:#fff}
.sec.green .wpcf7 .wpcf7-submit{background:var(--ivory);color:var(--green);border-color:var(--ivory)}

.co-card .lg img,.logos img,.co-head .lg img,.feature img{width:auto!important;height:auto!important;object-fit:contain}
.co-card .lg img{max-height:64px!important;max-width:200px!important}
.logos img{max-height:60px!important;max-width:180px!important}
.co-head .lg img{max-height:130px!important;max-width:240px!important}
.feature .wp-block-image img{max-height:150px!important;max-width:110px!important}

.single-eg_company .sec .split{align-items:start}
@media (max-width:1260px){body .hdr-cta{display:none}}

.map.map-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--sage-l) linear-gradient(135deg,rgba(0,39,36,.04) 25%,transparent 25%,transparent 50%,rgba(0,39,36,.04) 50%,rgba(0,39,36,.04) 75%,transparent 75%) 0 0/24px 24px;border:1px solid var(--line);text-align:center;padding:16px}
.map-load{display:inline-flex;align-items:center;gap:8px;font:600 .9rem var(--sans);color:var(--green);background:#fff;border:1px solid var(--green);border-radius:var(--r);padding:10px 18px;min-height:44px;cursor:pointer}
.map-load:hover{background:var(--green);color:#fff}
.map-note{font-size:.78rem;color:var(--muted);margin:0}

/* CookieYes banner in EG-Group colours */
.cky-btn-accept{background:#002724!important;border-color:#002724!important;color:#fff!important}
.cky-btn-reject,.cky-btn-customize,.cky-btn-preferences{color:#002724!important;border-color:#002724!important;background:transparent!important}
.cky-btn-revisit-wrapper{background-color:#002724!important}
.cky-consent-container .cky-title{font-family:var(--sans)!important;text-transform:none;letter-spacing:0}

.logos img{max-width:100%!important}
.co-card .lg img{max-width:100%!important}


/* FIX ROUND 2 (30 Oct): restore centring + spacing that the block reset (.wp-block-group{margin:0}) overrode */
.wp-block-group.wrap,.wrap{margin-left:auto;margin-right:auto}
.wp-block-group.sec-head{margin-bottom:clamp(36px,5vw,64px)}
.wp-block-group.stats{margin:24px 0 8px}
.wp-block-group.mt-l{margin-top:40px}
.wp-block-group.ftr-bot{margin-top:52px}
.wp-block-group.prop-contact{margin:18px 0}
.ftr .wp-block-group.brand{margin-bottom:18px}
/* FIX ROUND 2: division tiles, a brand-green scrim behind every line of text (contrast >= 4.5:1 on any photo) */
.tile::after{background:linear-gradient(180deg,rgba(0,39,36,.08) 0%,rgba(0,39,36,.3) 35%,rgba(0,39,36,.72) 62%,rgba(0,39,36,.9) 100%)}
.tile .in{padding-top:72px;background:linear-gradient(180deg,rgba(0,39,36,0) 0,rgba(0,39,36,.45) 28px,rgba(0,39,36,.82) 64px,rgba(0,39,36,.9) 100%)}
.tile .k{color:#C6DAD0}
.tile h3,.tile p,.tile .k,.tile .go{text-shadow:0 1px 2px rgba(0,20,18,.55)}

/* FIX ROUND 2: hero text column aligned with the centred .wrap (core cover position rules zeroed its margins) */
.wp-block-cover.hero.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container,.wp-block-cover.hero .wp-block-cover__inner-container{width:100%;max-width:var(--max);margin-left:auto;margin-right:auto}


/* ===== REBUILD 7 (30 Oct 2026): content components and type scale ===== */
body{font-size:17.5px;line-height:1.7}
.prose p,.sec p{max-width:72ch}
.sec-head .lead,.lead{max-width:62ch}
h3{letter-spacing:.03em}
.wp-block-group.intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,5vw,72px);align-items:start}
.wp-block-group.intro .wp-block-image img{border-radius:var(--r);aspect-ratio:4/3;object-fit:cover;width:100%}
@media (max-width:900px){.wp-block-group.intro{grid-template-columns:1fr}}
/* facts strip */
.wp-block-group.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:36px 0 0}
.facts .fact{margin:0;padding:22px 20px 22px 0;display:flex;flex-direction:column;gap:6px;border-right:1px solid var(--line)}
.facts .fact:last-child{border-right:0}
.facts .fact b{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.4rem);line-height:1;color:var(--green);font-weight:600;font-variant-numeric:tabular-nums}
.facts .fact span{font-size:.86rem;color:var(--muted);line-height:1.45;max-width:24ch}
.facts .fact+.fact{padding-left:20px}
@media (max-width:640px){.wp-block-group.facts{grid-template-columns:1fr 1fr}.facts .fact{border-right:0;border-bottom:1px solid var(--line);padding-left:0!important}.facts .fact:nth-child(odd){padding-right:14px}}
.sec.green .facts .fact b{color:#fff}.sec.green .facts .fact span{color:#C6DAD0}.sec.green .facts,.sec.green .facts .fact{border-color:rgba(255,255,255,.18)}
/* cards */
.wp-block-group.cards{display:grid;gap:22px}
.wp-block-group.cards.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.wp-block-group.cards.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.wp-block-group.cards.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1000px){.wp-block-group.cards.g3,.wp-block-group.cards.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.wp-block-group.cards.g2,.wp-block-group.cards.g3,.wp-block-group.cards.g4{grid-template-columns:1fr}}
.wp-block-group.card.pad{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px 26px 20px;display:flex;flex-direction:column}
.sec.white .card.pad{background:var(--ivory)}
.card.pad h3{font-size:1.18rem;margin:0 0 .6em}
.card.pad p{font-size:.97rem;color:var(--ink)}
.card.pad ul{margin:.2em 0 .8em;padding-left:1.1em;font-size:.95rem}
.card.pad li{margin:.25em 0}
.card.pad .wp-block-image{margin:-26px -26px 20px}
.card.pad .wp-block-image img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r) var(--r) 0 0}
.card.pad .k{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze);font-weight:600;margin:0 0 .6em}
/* numbered process */
ol.steps{list-style:none;counter-reset:st;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;border-top:2px solid var(--green)}
ol.steps>li{counter-increment:st;position:relative;padding:58px 22px 24px 0;margin:0;font-size:.95rem;line-height:1.6;color:var(--ink)}
ol.steps>li::before{content:counter(st,decimal-leading-zero);position:absolute;top:14px;left:0;font:600 1.5rem/1 var(--serif);color:var(--brass)}
ol.steps>li::after{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;border-radius:50%;background:var(--green)}
ol.steps>li strong{display:block;font-family:var(--sans);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:8px}
@media (max-width:760px){ol.steps{grid-template-columns:1fr;border-top:0;border-left:2px solid var(--green);margin-left:6px}ol.steps>li{padding:4px 0 26px 30px}ol.steps>li::after{top:8px;left:-7px}ol.steps>li::before{position:static;display:block;margin-bottom:6px;font-size:1.2rem}}
.sec.green ol.steps{border-color:var(--sage)}.sec.green ol.steps>li{color:#E6EEE9}.sec.green ol.steps>li strong{color:#fff}.sec.green ol.steps>li::after{background:var(--sage)}.sec.green ol.steps>li::before{color:var(--sage)}
/* industry context panel */
.wp-block-group.ctx{background:var(--sage-l);border-left:4px solid var(--green);border-radius:0 var(--r) var(--r) 0;padding:clamp(24px,3.5vw,44px);margin-top:8px}
.ctx .eyebrow{color:var(--green)}
.ctx h3{margin-bottom:.7em}
.ctx p{max-width:80ch}
.ctx .src{font-size:.8rem;color:var(--muted);margin-top:1.4em;line-height:1.55}
.ctx .src a{color:var(--bronze)}
.ctx .note{font-size:.88rem;font-style:italic;color:var(--muted)}
/* spec tables */
.wp-block-table.spec{margin:18px 0 6px;overflow-x:auto}
.wp-block-table.spec table{border-collapse:collapse;width:100%;font-size:.93rem;background:#fff;min-width:560px}
.wp-block-table.spec th{font:600 .74rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;text-align:left;color:#fff;background:var(--green);padding:12px 14px;border:0}
.wp-block-table.spec td{padding:11px 14px;border:0;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.5}
.wp-block-table.spec tr:nth-child(even) td{background:#FAFAF7}
.wp-block-table.spec td:first-child{font-weight:600;color:var(--green);width:24%}
.wp-block-table.spec figcaption{font-size:.8rem;color:var(--muted);text-align:left;margin-top:8px}
/* diagrams */
.wp-block-group.diagram{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:clamp(18px,3vw,36px);margin:8px 0}
.diagram svg{width:100%;height:auto;display:block}
.diagram .vc-v{display:none}
@media (max-width:700px){.diagram .vc-h{display:none}.diagram .vc-v{display:block;max-width:360px;margin:0 auto}}
.diagram .cap{font-size:.84rem;color:var(--muted);margin:14px 0 0}
/* two-column definition list made from a list */
ul.deflist{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}
ul.deflist>li{padding:16px 0;border-bottom:1px solid var(--line);margin:0;font-size:.97rem}
ul.deflist>li strong{display:block;color:var(--green);font-size:1rem;margin-bottom:4px}
@media (max-width:760px){ul.deflist{grid-template-columns:1fr}}
.sec.green ul.deflist>li{border-color:rgba(255,255,255,.18);color:#E6EEE9}.sec.green ul.deflist>li strong{color:#fff}
/* check list */
ul.ticks{list-style:none;padding:0;margin:0}
ul.ticks>li{position:relative;padding:8px 0 8px 32px;margin:0}
ul.ticks>li::before{content:"";position:absolute;left:2px;top:15px;width:14px;height:8px;border-left:2px solid var(--brass);border-bottom:2px solid var(--brass);transform:rotate(-45deg)}
/* routing line */
.wp-block-group.route{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:10px}
.route .r{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;font-size:.95rem}
.route .r b{display:block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze);margin-bottom:6px}
.sec.white .route .r{background:var(--ivory)}
/* split text + aside */
.wp-block-group.cols2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,64px)}
@media (max-width:820px){.wp-block-group.cols2{grid-template-columns:1fr}}
.wp-block-group.green-band{background:var(--green);color:#E6EEE9}
.sec.green h2,.sec.green h3{color:#fff}.sec.green .eyebrow{color:var(--sage)}.sec.green .lead{color:#C6DAD0}.sec.green a{color:#fff}
.small{font-size:.86rem;color:var(--muted)}
.wp-block-group.mt{margin-top:clamp(36px,5vw,64px)}
.co-intro p:first-child{font-size:1.12rem;color:var(--ink)}

/* steps: 3-up grid with a rule above each step */
ol.steps{grid-template-columns:repeat(3,minmax(0,1fr));border-top:0;column-gap:32px;row-gap:8px}
ol.steps>li{border-top:2px solid var(--green);padding-top:58px}
.sec.green ol.steps>li{border-top-color:rgba(166,194,182,.6)}
@media (max-width:760px){ol.steps{grid-template-columns:1fr;border-left:2px solid var(--green)}ol.steps>li{border-top:0;padding:4px 0 26px 30px}.sec.green ol.steps{border-left-color:var(--sage)}}
.wp-block-group.ctx-wrap{margin-top:clamp(40px,5vw,72px)}

.mt{margin-top:clamp(28px,4vw,48px)!important}
ul.steps-v{list-style:none;counter-reset:sv;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
ul.steps-v>li{counter-increment:sv;font-size:.9rem;line-height:1.55;margin:0;color:var(--ink)}
ul.steps-v>li strong{color:var(--green)}
@media (min-width:701px){.diagram ul.steps-v{display:none}}
@media (max-width:700px){ul.steps-v{grid-template-columns:1fr}ul.steps-v>li{padding-left:34px;position:relative}ul.steps-v>li::before{content:counter(sv);position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:var(--green);color:#fff;font:600 .78rem/24px var(--sans);text-align:center}}
ul.rel{list-style:none;padding:0;margin:0 0 1.4em}ul.rel li{padding:7px 0;border-bottom:1px solid var(--line)}ul.rel a{text-decoration:none}
.co-side h2,.single-eg_company .reveal>h2{font-size:1.05rem;letter-spacing:.14em;margin-top:1.6em}
.single-eg_company .prose h3{font-size:1.15rem;margin-top:1.6em}
.wp-block-table.spec.compare td:first-child{width:18%}
.wp-block-table.facts-table thead{display:none}
.wpcf7 .consent{font-size:.88rem}
.wpcf7 .consent .wpcf7-list-item{margin:0 6px 0 0}

.wp-block-group.intro>*,.wp-block-group.cols2>*,.wp-block-group.ctx,.wp-block-group.ctx-wrap,.wp-block-group.card{min-width:0}
.wp-block-table.spec{max-width:100%}

.wp-block-group.diagram+.wp-block-group.ctx{margin-top:32px}

.wp-block-group.split.top{align-items:start}

.wp-block-group.intro .wp-block-table.spec table,.wp-block-group.ctx .wp-block-table.spec table,.wp-block-group.cols2 .wp-block-table.spec table{min-width:0;font-size:.86rem}
.wp-block-table.spec td,.wp-block-table.spec th{overflow-wrap:break-word;hyphens:auto}
@media (max-width:700px){.wp-block-table.spec table{min-width:0;font-size:.84rem}}

.wp-block-table.spec td,.wp-block-table.spec th{hyphens:manual}

@media (min-width:901px){.wp-block-group.split ol.steps,.wp-block-group.cols2 ol.steps,.wp-block-group.intro ol.steps{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}}

.sec.green .is-style-light .wp-block-button__link{color:var(--green)!important;background:var(--ivory)}
.sec.green .is-style-light .wp-block-button__link:hover{background:#fff}

@media (max-width:600px){
 .cky-consent-container{width:auto!important;left:8px!important;right:8px!important;bottom:8px!important}
 .cky-consent-container .cky-consent-bar{padding:12px 14px!important}
 .cky-consent-container .cky-title{font-size:14px!important;margin:0 0 4px!important}
 .cky-consent-container .cky-notice-des,.cky-consent-container .cky-notice-des p{font-size:12px!important;line-height:1.4!important;margin:0!important}
 .cky-consent-container .cky-notice-btn-wrapper{flex-direction:row!important;flex-wrap:wrap!important;gap:6px!important;margin-top:8px!important}
 .cky-consent-container .cky-btn{flex:1 1 30%!important;margin:0!important;padding:8px 4px!important;font-size:12px!important;min-height:36px}
 .wp-block-table.spec.stack thead{display:none}
 .wp-block-table.spec.stack table,.wp-block-table.spec.stack tbody,.wp-block-table.spec.stack tr,.wp-block-table.spec.stack td{display:block;width:100%!important}
 .wp-block-table.spec.stack tr{border-bottom:1px solid var(--line);padding:10px 0}
 .wp-block-table.spec.stack td{border:0!important;padding:2px 0!important}
 .wp-block-table.spec.stack td:first-child{font-weight:600;color:var(--green)}
}

.card.chart svg.bars{width:100%;height:auto;display:block;margin-top:10px}
.cards.charts .card.chart h3{font-size:1rem;letter-spacing:.12em}

/* plain (non-ranked) lists in cards */
ul.dots{list-style:none;padding:0;margin:0}
ul.dots>li{position:relative;padding:7px 0 7px 20px;margin:0;line-height:1.5}
ul.dots>li::before{content:"";position:absolute;left:2px;top:16px;width:7px;height:7px;border-radius:50%;background:var(--brass)}
ul.dots>li strong{color:var(--green,#002724);font-weight:600}

/* home hero: full tagline (Textiles, Real Estate Development, Venture Capital Investment) fits on 3-4 lines at desktop */
.hero:not(.sub) h1{font-size:clamp(1.7rem,3.3vw,3rem);max-width:21em;line-height:1.1;letter-spacing:.045em;text-wrap:balance}
.hero .eyebrow,.hero h1{text-shadow:0 1px 10px rgba(0,0,0,.35)}
@media (max-width:480px){.hero:not(.sub) h1{font-size:1.68rem;letter-spacing:.03em;max-width:none}}
.hero.sub h1{max-width:26ch}
/* hero-eyebrow-contrast */
.hero .eyebrow{color:rgba(255,255,255,.92);text-shadow:0 1px 3px rgba(0,0,0,.55),0 0 16px rgba(0,0,0,.45)}
.hero .crumbs{text-shadow:0 1px 3px rgba(0,0,0,.55),0 0 14px rgba(0,0,0,.4)}

/* ===== Fix round 9 (30 Oct 2026) ===== */
/* Specification tables: whole words only; below 600 px each row becomes a card. */
.wp-block-table.spec td,.wp-block-table.spec th{hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:normal!important}
@media (max-width:600px){
 .wp-block-table.spec{overflow:visible}
 .wp-block-table.spec table{min-width:0!important;width:100%!important;table-layout:auto!important;background:transparent}
 .wp-block-table.spec thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
 .wp-block-table.spec table,.wp-block-table.spec tbody,.wp-block-table.spec tr,.wp-block-table.spec td{display:block;width:100%!important}
 .wp-block-table.spec tr{background:#fff;border:1px solid var(--line);border-radius:6px;padding:12px 14px;margin:0 0 10px}
 .wp-block-table.spec tr:nth-child(even) td{background:transparent}
 .wp-block-table.spec td{border:0!important;padding:3px 0!important;overflow-wrap:break-word!important}
 .wp-block-table.spec td:first-child{font-weight:600;color:var(--green);font-size:1rem;padding-bottom:6px!important}
 .wp-block-table.spec td[data-label]:not(:first-child)::before{content:attr(data-label);display:block;font:600 .68rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:4px}
}
/* Cookie consent: no floating button; the footer carries a "Cookie settings" link. */
.cky-btn-revisit-wrapper,.cky-revisit-bottom-left,.cky-revisit-bottom-right{display:none!important}
.ftr .cky-link{margin:0}
.ftr .ftr-cookie{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.ftr .ftr-cookie:hover,.ftr .ftr-cookie:focus-visible{color:#fff;text-decoration:underline}
/* Textiles photo header: darker green behind the text. */
.wp-block-cover.hero.hero-dark::after{background:linear-gradient(90deg,rgba(0,39,36,.78) 0%,rgba(0,39,36,.5) 45%,rgba(0,39,36,.12) 75%),linear-gradient(180deg,rgba(0,39,36,.45) 0%,rgba(0,39,36,.1) 35%,rgba(0,39,36,.6) 70%,rgba(0,39,36,.92) 100%)}
@media (max-width:700px){.wp-block-cover.hero.hero-dark::after{background:linear-gradient(180deg,rgba(0,39,36,.55) 0%,rgba(0,39,36,.35) 35%,rgba(0,39,36,.8) 65%,rgba(0,39,36,.95) 100%)}}
/* Logo wall: every logo in an equal box. */
.logos img{max-height:56px!important;max-width:150px!important;width:auto!important;height:auto!important;opacity:.9}
.logos a{min-height:160px}
/* Skip link inside the header */
.skip-link.screen-reader-text{position:absolute!important;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.skip-link.screen-reader-text:focus{position:fixed!important;left:1rem;top:1rem;width:auto;height:auto;overflow:visible;clip-path:none;z-index:100000;background:var(--green);color:#fff;padding:.7em 1em}
/* Footer tap targets of at least 44 px on phones */
@media (max-width:700px){
 .ftr .ftr-nav .wp-block-navigation-item__content,.ftr .ftr-legal .wp-block-navigation-item__content{min-height:44px;display:flex!important;align-items:center;padding:0!important}
 .ftr .ftr-legal .wp-block-navigation__container{gap:0 22px!important}
 .ftr a[href^="tel:"],.ftr a[href^="mailto:"],.ftr a[href*="maps"]{display:inline-flex;align-items:center;min-height:44px}
 .ftr .soc a,.ftr .social a{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
}
@media (max-width:700px){.ftr .wp-block-site-title a{display:inline-flex;align-items:center;min-height:44px}}
.grid + .prop-line,.grid.g3 + .prop-line{margin-top:20px}

/* ===== Fix round 10 (30 Oct): lighter photo overlays, slim mobile cookie strip ===== */
/* Home division cards: the photo reads clearly; a gradient sits only behind the text. */
.tile::after{background:linear-gradient(180deg,rgba(0,39,36,0) 0%,rgba(0,39,36,0) 45%,rgba(0,39,36,.28) 70%,rgba(0,39,36,.45) 100%)}
.tile .in{padding-top:56px;background:linear-gradient(180deg,rgba(0,39,36,0) 0,rgba(0,39,36,.62) 56px,rgba(0,39,36,.7) 100%)}
.tile .in, .tile .in *{text-shadow:0 1px 3px rgba(0,20,18,.55)}
/* Photo headers: lighter wash, darker only at the bottom where the text sits. */
.hero::after{background:linear-gradient(180deg,rgba(1,26,22,.32) 0%,rgba(1,26,22,0) 22%,rgba(1,26,22,.06) 45%,rgba(1,26,22,.55) 72%,rgba(1,32,27,.8) 100%)}
.wp-block-cover.hero.hero-dark::after{background:linear-gradient(90deg,rgba(0,39,36,.62) 0%,rgba(0,39,36,.34) 45%,rgba(0,39,36,0) 75%),linear-gradient(180deg,rgba(0,39,36,.3) 0%,rgba(0,39,36,0) 30%,rgba(0,39,36,.35) 70%,rgba(0,39,36,.75) 100%)}
.hero h1,.hero .lead,.hero .eyebrow{text-shadow:0 1px 4px rgba(0,20,18,.6)}
@media (max-width:700px){
 .hero::after{background:linear-gradient(180deg,rgba(1,26,22,.32) 0%,rgba(1,26,22,0) 20%,rgba(1,26,22,.1) 38%,rgba(1,26,22,.62) 62%,rgba(1,32,27,.82) 100%)}
 .wp-block-cover.hero.hero-dark::after{background:linear-gradient(180deg,rgba(0,39,36,.35) 0%,rgba(0,39,36,.1) 30%,rgba(0,39,36,.62) 60%,rgba(0,39,36,.85) 100%)}
}
/* Cookie notice on phones: one slim strip at the bottom (one line of text, three buttons). */
@media (max-width:600px){
 .cky-consent-container{left:0!important;right:0!important;bottom:0!important;width:100%!important;max-width:none!important;border-radius:0!important}
 .cky-consent-container .cky-consent-bar{padding:8px 12px calc(8px + env(safe-area-inset-bottom))!important;border-radius:0!important;box-shadow:0 -2px 12px rgba(0,0,0,.12)!important}
 .cky-consent-container .cky-title{display:none!important}
 .cky-consent-container .cky-notice-group{display:flex!important;flex-direction:column!important;gap:6px!important}
 .cky-consent-container .cky-notice-des{margin:0!important;max-height:none!important;overflow:hidden!important}
 .cky-consent-container .cky-notice-des p{font-size:12px!important;line-height:18px!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
 .cky-consent-container .cky-notice-des p a,.cky-consent-container .cky-notice-des .cky-policy{display:none!important}
 .cky-consent-container .cky-notice-btn-wrapper{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:6px!important;margin:0!important;padding:0!important}
 .cky-consent-container .cky-btn{flex:1 1 0!important;margin:0!important;padding:6px 4px!important;font-size:13px!important;min-height:36px!important;height:36px!important;line-height:1!important;width:auto!important}
}

/* Fix round 10b: the green sits only behind the text, so the rest of each photo is clear (WCAG AA kept). */
.tile .in{padding-top:44px;background:linear-gradient(180deg,rgba(0,39,36,0) 0,rgba(0,39,36,.68) 40px,rgba(0,39,36,.7) 100%)}
.tile .in .k{color:#fff!important}
.hero::after{background:linear-gradient(180deg,rgba(1,26,22,.34) 0%,rgba(1,26,22,0) 22%,rgba(1,26,22,0) 60%,rgba(1,26,22,.22) 100%)}
.wp-block-cover.hero.hero-dark::after{background:linear-gradient(180deg,rgba(0,39,36,.34) 0%,rgba(0,39,36,0) 22%,rgba(0,39,36,0) 60%,rgba(0,39,36,.22) 100%)}
.wp-block-cover.hero .wp-block-cover__inner-container{position:relative;z-index:2}
.wp-block-cover.hero .wp-block-cover__inner-container::before{content:"";position:absolute;z-index:-1;inset:-56px -64px -48px -64px;background:rgba(0,39,36,.72);
 -webkit-mask-image:linear-gradient(90deg,#000 0,#000 68%,transparent 96%),linear-gradient(180deg,transparent 0,#000 56px);-webkit-mask-composite:source-in;
 mask-image:linear-gradient(90deg,#000 0,#000 68%,transparent 96%),linear-gradient(180deg,transparent 0,#000 56px);mask-composite:intersect;pointer-events:none}
.hero .eyebrow{color:#E6F0EA!important}
@media (max-width:700px){
 .hero::after,.wp-block-cover.hero.hero-dark::after{background:linear-gradient(180deg,rgba(1,26,22,.34) 0%,rgba(1,26,22,0) 20%,rgba(1,26,22,0) 100%)}
 .wp-block-cover.hero .wp-block-cover__inner-container::before{inset:-48px -24px -40px -24px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 48px);mask-image:linear-gradient(180deg,transparent 0,#000 48px);-webkit-mask-composite:source-over;mask-composite:add}
}

/* Fix round 10c: same text-only scrim on company and other template heroes. */
section.hero:not(.wp-block-cover) > .wrap{position:relative;z-index:2}
section.hero:not(.wp-block-cover) > .wrap::before{content:"";position:absolute;z-index:-1;inset:-48px -40px -40px -40px;background:rgba(0,39,36,.72);
 -webkit-mask-image:linear-gradient(90deg,#000 0,#000 62%,transparent 92%),linear-gradient(180deg,transparent 0,#000 48px);-webkit-mask-composite:source-in;
 mask-image:linear-gradient(90deg,#000 0,#000 62%,transparent 92%),linear-gradient(180deg,transparent 0,#000 48px);mask-composite:intersect;pointer-events:none}
@media (max-width:700px){
 section.hero:not(.wp-block-cover) > .wrap::before{inset:-40px -24px -32px -24px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 40px);mask-image:linear-gradient(180deg,transparent 0,#000 40px);-webkit-mask-composite:source-over;mask-composite:add}
}

/* Fix round 10d: scrim reaches the left edge; the fade on the right is measured from the right edge. */
.wp-block-cover.hero .wp-block-cover__inner-container::before{left:-400px;
 -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 450px),transparent calc(100% - 56px)),linear-gradient(180deg,transparent 0,#000 56px);
 mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 450px),transparent calc(100% - 56px)),linear-gradient(180deg,transparent 0,#000 56px)}
section.hero:not(.wp-block-cover) > .wrap::before{left:-400px;
 -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 480px),transparent calc(100% - 100px)),linear-gradient(180deg,transparent 0,#000 48px);
 mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 480px),transparent calc(100% - 100px)),linear-gradient(180deg,transparent 0,#000 48px)}
@media (max-width:1100px){
 .wp-block-cover.hero .wp-block-cover__inner-container::before,section.hero:not(.wp-block-cover) > .wrap::before{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 48px);mask-image:linear-gradient(180deg,transparent 0,#000 48px);-webkit-mask-composite:source-over;mask-composite:add}
}
@media (max-width:700px){
 .wp-block-cover.hero .wp-block-cover__inner-container::before{left:-24px}
 section.hero:not(.wp-block-cover) > .wrap::before{left:-24px}
}

/* ===== Stage 2 (31 Oct 2026): EG (EXCEL GROUP) build ===== */
h1,h2,h3,.ftr-h{text-transform:uppercase;letter-spacing:.02em}
.hero h1{font-size:clamp(2.1rem,4.6vw,4rem);overflow-wrap:break-word;hyphens:none}
.hero .tagline{font-family:var(--sans);font-size:clamp(.82rem,1.25vw,1.02rem);letter-spacing:.14em;text-transform:uppercase;color:#fff;font-weight:600;max-width:46em}
mark.tbc{background:#FFF1B8;color:#5A4600;padding:.05em .35em;border-radius:3px;font-weight:600;font-size:.92em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero mark.tbc{color:#5A4600}
.card.pad{padding:28px}.card .wp-block-image{margin:-28px -28px 20px}.card .wp-block-image img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--r) var(--r) 0 0;background:#EFEBE3}
.card h2{font-size:clamp(1.4rem,2vw,1.8rem)}
.card .wp-block-buttons{margin-top:auto;padding-top:8px}
.wp-block-group.cards.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1020px){.wp-block-group.cards.g4,.wp-block-group.cards.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.wp-block-group.cards.g4,.wp-block-group.cards.g3,.wp-block-group.cards.g2{grid-template-columns:1fr}}
.logo-sm img{max-width:150px;height:auto}.logo-md img{max-width:260px;height:auto;margin:0 auto}
.feature .wp-block-image{margin:0}
.gallery .wp-block-image{margin:0}
@media (max-width:900px){.gallery{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.gallery{grid-template-columns:1fr}}
.faq .wp-block-details{border-bottom:1px solid var(--line);padding:18px 0}.faq .wp-block-details:first-child{border-top:1px solid var(--line)}
.faq summary{cursor:pointer;font-weight:600;font-size:1.08rem;color:var(--green);list-style-position:outside}
.faq .wp-block-details p{margin:12px 0 0;color:var(--muted)}
ul.cols-list{columns:2;column-gap:40px}@media (max-width:640px){ul.cols-list{columns:1}}
.pf-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 12px}
.pf-chip{font:600 .85rem/1 var(--sans);letter-spacing:.04em;padding:11px 16px;border-radius:22px;border:1px solid var(--green);background:transparent;color:var(--green);cursor:pointer;min-height:44px}
.pf-chip.on{background:var(--green);color:#fff}
.pf .card.proj{padding:0;overflow:hidden}.pf .card.proj img{width:100%;aspect-ratio:3/2;object-fit:cover}
.pf .card.proj .status,.pf .card.proj h3,.pf .card.proj p{margin-left:24px;margin-right:24px}.pf .card.proj .status{margin-top:20px}
.pf .card.proj[hidden]{display:none}
.card.proj .wp-block-image{margin:-28px -28px 16px}
ol.steps.steps-v{display:block;border-top:0;counter-reset:st}
ol.steps.steps-v>li{display:grid;grid-template-columns:64px 1fr;gap:4px 18px;padding:18px 0;border-bottom:1px solid var(--line)}
ol.steps.steps-v>li::before{position:static;grid-row:span 2;font-family:var(--serif);font-size:2rem;color:var(--bronze)}
ol.steps.steps-v>li b{font-family:var(--serif);font-size:1.35rem;color:var(--green)}ol.steps.steps-v>li span{color:var(--muted)}
.ftr .legal-id{font-size:.78rem;line-height:1.55;opacity:.85;max-width:1100px}
.ftr .ftr-yas a{font-weight:600}
.wpcf7 input[type=file]{max-width:100%}
.wpcf7 select,.wpcf7 input,.wpcf7 textarea{max-width:100%}
ol.steps.steps-v>li::after{display:none}
.wp-block-image.logo-md,.wp-block-image.logo-sm{align-self:center}
.wp-block-image.logo-md img,.wp-block-image.logo-sm img{width:auto!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;max-height:none}
.wp-block-image.logo-md img{max-width:min(320px,100%)!important}.wp-block-image.logo-sm img{max-width:150px!important}

/* QA round 1 fixes */
.card h2.wp-block-heading{font-size:1.45rem;margin-top:0}
.is-render{position:relative}
figure.is-render::after,.wp-block-cover.is-render::after{content:"Artist\2019s impression";position:absolute;right:10px;bottom:10px;z-index:3;background:rgba(0,39,36,.82);color:#fff;font-size:.72rem;letter-spacing:.04em;padding:3px 8px;border-radius:3px;pointer-events:none;line-height:1.4}
.wp-block-cover.is-render::after{right:14px;bottom:14px;top:auto}
@media (max-width:480px){h1,.wp-block-post-title,h1.wp-block-heading{font-size:clamp(1.6rem,7.2vw,2.1rem)!important;line-height:1.15}}
.wp-block-navigation-item a:hover,.wp-block-navigation-item.current-menu-item>a,.current-menu-item>a{color:#4F6F62}
.office-tag,.tag,.eyebrow-tag{color:#4F6F62}
.wpcf7 input[type=checkbox]{width:22px;height:22px;vertical-align:middle;margin-right:8px}

:root{--brass-t:#4F6F62}
.hdr.solid .nav a:hover,.hdr.stuck .nav a:hover,.hdr.solid .nav .dd-btn:hover,.hdr.stuck .nav .dd-btn:hover,.hdr.solid .nav a[aria-current=page],.hdr.stuck .nav a[aria-current=page],.hdr.solid .eg-nav .wp-block-navigation-item__content:hover,.hdr.stuck .eg-nav .wp-block-navigation-item__content:hover,.dd a:hover{color:var(--brass-t)}
.hdr:not(.solid):not(.stuck) .nav a:hover,.hdr:not(.solid):not(.stuck) .eg-nav .wp-block-navigation-item__content:hover{color:var(--sage)}
.office .tag,.off-tag,[class*="office"] .tag{color:var(--brass-t)}
.card.is-render{position:relative}.card.is-render::after{content:"Artist\2019s impression";position:absolute;right:10px;top:10px;z-index:3;background:rgba(0,39,36,.82);color:#fff;font-size:.72rem;letter-spacing:.04em;padding:3px 8px;border-radius:3px;pointer-events:none;line-height:1.4}
@media (max-width:480px){h1,h1.wp-block-heading,.hero h1{font-size:clamp(1.45rem,6.3vw,1.85rem)!important;letter-spacing:.03em!important}}

/* Home hero: three slides, slow crossfade (31 Oct, owner: cotton B, cotton D, YAS projects collage) */
.wp-block-cover.hero-cotton .wp-block-cover__image-background{object-position:50% 50%}
.wp-block-cover.hero.hero-cotton>.wp-block-cover__background{background:url(/wp-content/uploads/2026/10/eg-hero-cotton-field.webp) 50% 45%/cover no-repeat;opacity:1!important;filter:opacity(0);animation:egSlide2 21s ease-in-out infinite}
.wp-block-cover.hero-cotton::before{content:"";position:absolute;inset:0;z-index:1;background:url(/wp-content/uploads/2026/10/eg-hero-yas-projects.webp) 50% 50%/cover no-repeat;opacity:0;animation:egSlide3 21s ease-in-out infinite;pointer-events:none}
@keyframes egSlide2{0%,26%{filter:opacity(0)}33%,59%{filter:opacity(1)}66%,100%{filter:opacity(0)}}
@keyframes egSlide3{0%,59%{opacity:0}66%,93%{opacity:1}100%{opacity:0}}
@media (max-width:700px){
.wp-block-cover.hero-cotton .wp-block-cover__image-background{content:url(/wp-content/uploads/2026/10/eg-hero-cotton-boll-mobile.webp)}
.wp-block-cover.hero.hero-cotton>.wp-block-cover__background{background-image:url(/wp-content/uploads/2026/10/eg-hero-cotton-field-mobile.webp);background-position:50% 50%}
.wp-block-cover.hero-cotton::before{background-image:url(/wp-content/uploads/2026/10/eg-hero-yas-projects-m3.webp);background-position:50% 0}
}
@media (prefers-reduced-motion:reduce){.wp-block-cover.hero.hero-cotton>.wp-block-cover__background{animation:none;filter:opacity(0)}.wp-block-cover.hero-cotton::before{animation:none;opacity:0}}

/* ADAPT VC FZCO call-outs (owner 31 Oct 12:08) */
.adapt-banner{background:#002724;color:#fff;padding:28px 28px 30px;border-radius:4px;margin-top:28px}
.adapt-banner h3{color:#fff;margin-top:0}.adapt-banner p{color:rgba(255,255,255,.92)}
.adapt-strip .wp-block-buttons{gap:12px;flex-wrap:wrap}
