.about-hero{min-height:760px;display:grid;grid-template-columns:47% 53%;background:var(--paper);overflow:hidden}
.about-hero-copy{padding:175px 5vw 80px 7vw;position:relative}
.about-hero h1{font-size:var(--fs-h1-hero);line-height:.84;letter-spacing:-.065em;margin:55px 0 32px}
.about-hero h1 i,.about-manifesto h2 i,.story-copy h2 i,.values-head h2 i,.team-intro h2 i{font-family:'Patrick Hand',cursive;font-weight:400;color:#66863a}
.about-hero-copy>p{font-size:var(--fs-lg);line-height:1.5;max-width:470px}
.hero-signature{position:absolute;left:7vw;bottom:65px;font:22px 'Patrick Hand',cursive;transform:rotate(-2deg);display:flex;gap:10px;align-items:center}
.hero-signature span{font-size:30px}
.about-hero-image{position:relative;height:760px;overflow:hidden;clip-path:polygon(10% 0,100% 0,100% 100%,4% 100%,0 82%,6% 62%,1% 43%,8% 23%)}
.about-hero-image>img:first-child{object-position:center 48%}
.hero-ribbon{position:absolute;right:0;bottom:42px;background:var(--lime);padding:30px 48px 28px 70px;border-radius:60% 0 0 50%;font:22px/1.2 'Patrick Hand',cursive;transform:rotate(1deg)}
.hero-symbol{position:absolute;left:40px;bottom:34px;width:92px;height:92px;object-fit:contain}

/* Editorial two-column composition: the kicker+headline are one
   grouped unit on the left, sized to a controlled measure rather
   than spanning the section — the paragraphs sit directly beside
   them at the same vertical position, so the whole thing reads as
   one connected statement left-to-right instead of a full-width
   headline with copy stranded far to the right beneath it. */
.about-manifesto{padding:110px 7vw;display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);column-gap:6vw;align-items:start}
.about-manifesto .kicker{display:block;margin-bottom:18px}
.about-manifesto h2{font-size:var(--fs-h2-sm);line-height:1.1;letter-spacing:-.03em;margin:0;max-width:400px}
.manifesto-copy{display:grid;grid-template-columns:1fr 1fr;gap:5vw;max-width:760px;padding-top:8px}
.manifesto-copy p{font-size:var(--fs-sm);line-height:1.65;margin:0}

/* Three equal centred columns on one shared grid: identical padding and
   a single-line number in each cell puts every figure on the same
   baseline, and a fixed margin under the number starts every
   description at the same height (the old justify-content:space-between
   pushed each description to the floor instead, so a one-line and a
   two-line caption started at different places). */
.about-proof{margin:0 7vw 120px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(20px,3vw,48px)}
.about-proof article{position:relative;padding:clamp(34px,3.4vw,48px) clamp(6px,1.2vw,20px);display:flex;flex-direction:column;align-items:center;text-align:center}
/* Short centred hairlines rather than floor-to-ceiling column rules —
   the full-height borders made three related figures read as a table. */
.about-proof article+article:before{content:"";position:absolute;left:calc(-1 * clamp(10px,1.5vw,24px));top:50%;transform:translateY(-50%);width:1px;height:64px;background:rgba(10,40,24,.16)}
.about-proof strong{display:block;font-size:clamp(46px,5.4vw,86px);line-height:1;letter-spacing:-.065em;color:#66863a}
.about-proof p{font-size:var(--fs-lead);line-height:1.6;max-width:260px;margin:clamp(20px,2.2vw,30px) 0 0}

.about-story{display:grid;grid-template-columns:1.05fr .95fr;background:var(--forest);color:var(--white);padding:var(--card-inset);position:relative;overflow:hidden;isolation:isolate}
.story-image{height:680px;position:relative;overflow:hidden;border-radius:120px 18px 18px 18px}
.story-image img{object-position:58% 35%}
.story-image span{position:absolute;left:28px;bottom:28px;background:var(--paper);color:var(--ink);padding:18px 26px;font:23px/1.05 'Patrick Hand',cursive;transform:rotate(-3deg)}
.story-copy{padding:100px 7vw 70px}
.story-copy h2{font-size:var(--fs-h2-lg);line-height:.94;letter-spacing:-.055em;margin:28px 0 44px}
.story-copy h2 i{color:var(--lime)}
.story-copy p{font-size:var(--fs-sm);line-height:1.65;color:#d2d8d2;max-width:510px}
.story-copy a{display:inline-block;margin-top:32px;padding-bottom:8px;border-bottom:1px solid;font-weight:700}

/* Same editorial grouping as .about-manifesto: kicker+heading form
   one unit in a controlled left column, and the values grid sits
   directly beside them at the same vertical position — not below a
   heading that spans the full width with the grid stranded far
   underneath it. */
.values-panel{padding:110px 7vw;background:#e8e4d7;display:grid;grid-template-columns:minmax(0,36%) minmax(0,1fr);column-gap:6vw;align-items:start;position:relative;isolation:isolate}
.values-head .kicker{display:block;margin-bottom:18px}
.values-head h2{font-size:var(--fs-h2-sm);line-height:1.1;letter-spacing:-.03em;margin:0;max-width:380px}
/* Only a top rule separates rows — the old border-left between
   columns made this read as a spreadsheet; removing it keeps the
   2x2 shape without the literal cell-partition lines. */
.values-list{display:grid;grid-template-columns:1fr 1fr;column-gap:48px}
.values-list article{padding:22px 0 30px;border-top:1px solid rgba(10,40,24,.12)}
.values-list article>span{font-size:var(--fs-sm);font-weight:700;letter-spacing:.04em;color:#4c6b2f;display:block}
.values-list h3{font-size:var(--fs-h4);letter-spacing:-.02em;margin:16px 0 10px}
.values-list p{font-size:var(--fs-xs);line-height:1.6;max-width:320px;margin:0}

.team-section{padding:125px 7vw}
/* column-gap only, not the "gap" shorthand — that also set an 8vw
   ROW gap, stranding the full-width kicker ~115px above its own
   heading with no visible relationship between them. */
.team-intro{display:grid;grid-template-columns:1.3fr 1fr;column-gap:8vw;row-gap:18px;align-items:start}
.team-intro .kicker{grid-column:1/-1}
.team-intro h2{font-size:var(--fs-h2-lg);line-height:.94;letter-spacing:-.055em;margin:18px 0 0}
.team-intro>p{font-size:var(--fs-sm);line-height:1.6;max-width:480px;margin:0}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:80px}
.team-grid article:nth-child(even){transform:translateY(50px)}
.team-portrait{aspect-ratio:.82;border-radius:110px 16px 16px 16px;overflow:hidden}
.team-portrait img{width:100%;height:100%;object-fit:cover;display:block}
.team-portrait.green{background:var(--lime)}.team-portrait.yellow{background:#e9c669}.team-portrait.pink{background:var(--pink)}.team-portrait.sage{background:var(--sage)}
.team-grid h3{font-size:var(--fs-h4);margin:18px 0 5px;letter-spacing:-.02em}
.team-grid p{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;opacity:.7;margin:0}
.team-ecosystem{margin-top:130px;padding:35px 0;border-top:1px solid #bcb8aa;border-bottom:1px solid #bcb8aa;display:grid;grid-template-columns:.7fr 1.3fr;align-items:center}
.team-ecosystem>span{font:20px 'Patrick Hand',cursive;color:#66863a}
.team-ecosystem>div{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.team-ecosystem b{font-size:var(--fs-xs);padding:15px 18px;border-radius:24px;background:#e8e4d7;text-align:center}
.about-recognition{border-top:0}

@media(max-width:1000px){
  .about-hero{grid-template-columns:1fr}.about-hero-copy{padding:150px 7vw 120px}.about-hero-image{height:560px;clip-path:none}.hero-signature{bottom:45px}
  .about-manifesto{grid-template-columns:1fr}.about-manifesto h2{max-width:none}.manifesto-copy{margin-top:36px}
  .about-story{grid-template-columns:1fr}.story-image{height:560px}.story-copy{padding:80px 6vw}
  .values-panel{grid-template-columns:1fr}.values-head h2{max-width:none}.values-list{margin-top:48px}
  .team-intro{grid-template-columns:1fr}.team-intro>p{margin-top:8px}
  .team-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  .about-hero-copy{padding:140px 6vw 105px}.about-hero h1{font-size:65px;margin-top:38px}.about-hero-copy>p{font-size:18px}.about-hero-image{height:430px}.hero-ribbon{padding:22px 28px 20px 42px;font-size:18px}.hero-symbol{width:65px;height:65px;left:18px;bottom:18px}
  .about-manifesto{padding:80px 6vw}.manifesto-copy{grid-template-columns:1fr;gap:26px}.manifesto-copy p{font-size:16px}
  .about-proof{grid-template-columns:1fr;margin:0 6vw 80px;column-gap:0}.about-proof article{padding:32px 0}
  .about-proof article+article:before{left:50%;top:0;transform:translateX(-50%);width:64px;height:1px}
  .about-story{padding:var(--card-inset)}.story-image{height:430px;border-radius:70px 14px 14px}.story-copy{padding:65px 5vw}
  .values-panel,.team-section{padding:80px 6vw}.values-list{grid-template-columns:1fr;margin-top:40px}.values-list article{padding:24px 0 30px}
  .team-intro{grid-template-columns:1fr;gap:28px}.team-grid{gap:12px;margin-top:55px}.team-grid article:nth-child(even){transform:translateY(28px)}.team-grid h3{font-size:17px}
  .team-ecosystem{margin-top:100px;grid-template-columns:1fr;gap:24px}.team-ecosystem>div{grid-template-columns:1fr}
}
