/* ---------- About Us page ----------
   Each section is drawn on a canvas the width of its reference artwork: --u is one reference pixel,
   so the canvas always spans min(100vw, 1600px). Below 900px the sections fall back to stacked layouts. */
.about { --ag: #0b5a24; --ag-dark: #063c17; --aink: #0b0b0b; overflow: hidden; background: #fff; color: var(--aink); font-family: "Google Sans", var(--font); }
.ab-canvas { position: relative; width: calc(var(--w) * var(--u)); height: calc(var(--h) * var(--u)); margin-inline: auto; }
.about section { --u: calc(min(100vw, 1600px) / var(--w)); }
.about h1, .about h2, .about h3 { letter-spacing: -.02em; }
.about .icon--fill { stroke-width: .4 !important; }

/* 1. hero (1800 x 874) */
.ab-hero { --w: 1800; --h: 740; background: linear-gradient(90deg, #fff 50%, #0b2716 50%); }
/* the hero spans the full viewport like the other pages' heroes (other sections stop at 1600px) */
.about .ab-hero { --u: calc(100vw / var(--w)); }
.ab-hero .ab-canvas { background:
  radial-gradient(calc(110 * var(--u)) calc(100 * var(--u)) at 0 0, #e6f3ea 99%, transparent 100%),
  radial-gradient(calc(440 * var(--u)) calc(204 * var(--u)) at 0 calc(900 * var(--u)), #d2ecdc 40%, #e3f2e8 99%, transparent 100%),
  radial-gradient(calc(838 * var(--u)) calc(550 * var(--u)) at calc(900 * var(--u)) calc(1150 * var(--u)), #f3f9f5 99.5%, transparent 100%),
  #fff; }
.ab-hero__photo { position: absolute; top: 0; left: calc(780 * var(--u)); width: calc(1020 * var(--u)); height: 100%; object-position: center top; }
.ab-hero__copy { position: absolute; z-index: 1; top: 0; left: calc(83 * var(--u)); width: calc(760 * var(--u)); }
.ab-hero__logo { display: block; width: calc(552 * var(--u)); height: auto; margin: calc(40 * var(--u)) 0 0 calc(-17 * var(--u)); mix-blend-mode: multiply; }
.ab-eyebrow { display: flex; align-items: center; margin-top: calc(30 * var(--u)); font-size: calc(30 * var(--u)); font-weight: 800; line-height: 1.2; letter-spacing: .03em; text-transform: uppercase; color: var(--ag); }
.ab-eyebrow::before, .ab-eyebrow::after { content: ""; width: calc(60 * var(--u)); height: calc(3 * var(--u)); margin-right: calc(19 * var(--u)); background: var(--ag); }
.ab-eyebrow::after { width: calc(44 * var(--u)); margin: 0 0 0 calc(15 * var(--u)); background: linear-gradient(90deg, var(--ag) 30%, transparent); }
.ab-hero__title { margin-top: calc(18 * var(--u)); font-size: calc(77.5 * var(--u)); font-weight: 700; line-height: calc(79 * var(--u)); letter-spacing: -.04em; color: var(--aink); }
.ab-hero__title span { display: block; color: var(--ag); }
.ab-hero__title { white-space: nowrap; }
.ab-hero__lead { margin-top: calc(16 * var(--u)); font-size: calc(29 * var(--u)); line-height: calc(41 * var(--u)); color: #111; }
.ab-hero__btns { display: flex; gap: calc(35 * var(--u)); margin-top: calc(28 * var(--u)); }
.ab-btn { display: inline-flex; align-items: center; gap: calc(36 * var(--u)); height: calc(78 * var(--u)); padding-left: calc(37 * var(--u)); border-radius: calc(16 * var(--u)); font-size: calc(26 * var(--u)); font-weight: 700; transition: background .2s, color .2s, transform .2s; }
.ab-btn .icon { width: calc(38 * var(--u)); height: calc(38 * var(--u)); stroke-width: 2.2; }
.ab-btn--solid { width: calc(329 * var(--u)); background: var(--ag); color: #fff; }
.ab-btn--solid:hover { background: var(--ag-dark); transform: translateY(-1px); }
.ab-btn--line { width: calc(326 * var(--u)); gap: calc(19 * var(--u)); border: calc(2 * var(--u)) solid var(--ag); background: #fff; color: #0b4a1f; }
.ab-btn--line:hover { background: #eef7f0; transform: translateY(-1px); }
.ab-hero__dots { position: absolute; top: calc(40 * var(--u)); left: calc(805.5 * var(--u)); width: calc(76.5 * var(--u)); height: calc(84 * var(--u)); background: radial-gradient(circle, #bee5d2 calc(6 * var(--u)), transparent calc(6.6 * var(--u))) 0 0 / calc(25.5 * var(--u)) calc(28 * var(--u)); }
.ab-hero__card { position: absolute; top: calc(520 * var(--u)); left: calc(1262 * var(--u)); width: calc(426 * var(--u)); height: calc(193 * var(--u)); display: flex; align-items: center; gap: calc(23 * var(--u)); padding-left: calc(25 * var(--u)); border-radius: calc(18 * var(--u)); background: #fff; box-shadow: 0 calc(8 * var(--u)) calc(24 * var(--u)) rgba(0, 0, 0, .12); }
.ab-hero__card > span { flex: none; width: calc(110 * var(--u)); height: calc(110 * var(--u)); border-radius: 50%; display: grid; place-items: center; background: var(--ag); color: #fff; }
.ab-hero__card .icon { width: calc(58 * var(--u)); height: calc(58 * var(--u)); stroke-width: 2.2; }
.ab-hero__card p { font-size: calc(25 * var(--u)); line-height: calc(36 * var(--u)); color: #1c1c1c; }
.ab-hero__card strong { display: block; margin-bottom: calc(6 * var(--u)); font-size: calc(27.5 * var(--u)); line-height: calc(37 * var(--u)); font-weight: 700; color: var(--aink); letter-spacing: -.01em; }

/* 2. for trainers + how we work (1979 x 795) */
.ab-trainers { --w: 1979; --h: 795; position: relative; background: #fbfbfb; }
.ab-pitch { position: absolute; top: 0; left: 0; width: calc(1024 * var(--u)); height: calc(784 * var(--u)); overflow: hidden; border-radius: 0 calc(70 * var(--u)) calc(46 * var(--u)) 0; background: radial-gradient(40% 30% at 32% 100%, #00230f, transparent), #00150b; }
.ab-trainers::before { content: ""; position: absolute; left: 0; width: max(0px, (100vw - 1600px) / 2); height: calc(784 * var(--u)); background: #00150b; }
.ab-pitch__photo { position: absolute; top: 0; right: 0; width: calc(494 * var(--u)); height: 100%; object-fit: cover; -webkit-mask-image: linear-gradient(90deg, transparent, #000 calc(40 * var(--u))); mask-image: linear-gradient(90deg, transparent, #000 calc(40 * var(--u))); }
.ab-pitch__copy { position: relative; z-index: 1; padding: calc(62 * var(--u)) 0 0 calc(85 * var(--u)); color: #fff; }
.ab-pitch__chip { display: inline-flex; align-items: center; height: calc(42 * var(--u)); padding-inline: calc(18 * var(--u)); border-radius: calc(10 * var(--u)); background: #2f8f17; font-size: calc(22 * var(--u)); font-weight: 700; letter-spacing: .01em; text-transform: uppercase; }
.ab-pitch__title { margin-top: calc(26 * var(--u)); font-size: calc(62 * var(--u)); font-weight: 700; line-height: calc(66 * var(--u)); }
.ab-pitch__title span { color: #8edb4a; }
.ab-pitch__list { margin-top: calc(14 * var(--u)); }
.ab-pitch__list li { display: flex; align-items: center; gap: calc(21 * var(--u)); height: calc(55.5 * var(--u)); font-size: calc(26 * var(--u)); font-weight: 500; }
.ab-pitch__list span { flex: none; width: calc(38 * var(--u)); height: calc(38 * var(--u)); border-radius: 50%; display: grid; place-items: center; background: #28a63c; }
.ab-pitch__list .icon { width: calc(22 * var(--u)); height: calc(22 * var(--u)); stroke-width: 3.4; }
.ab-pitch__btn { display: inline-flex; align-items: center; gap: calc(23 * var(--u)); width: calc(342 * var(--u)); height: calc(85 * var(--u)); margin-top: calc(33 * var(--u)); padding-left: calc(30 * var(--u)); border-radius: calc(14 * var(--u)); background: #fff; color: #0d3a1c; font-size: calc(27 * var(--u)); font-weight: 700; transition: transform .2s, box-shadow .2s; }
.ab-pitch__btn:hover { transform: translateY(-1px); box-shadow: 0 calc(8 * var(--u)) calc(20 * var(--u)) rgba(0, 0, 0, .3); }
.ab-pitch__btn .icon { width: calc(46 * var(--u)); height: calc(46 * var(--u)); color: #0b5a24; stroke-width: 1.9; }

.ab-work { position: absolute; top: 0; left: calc(1047 * var(--u)); width: calc(872 * var(--u)); }
.ab-rule-title { display: flex; align-items: center; justify-content: center; gap: calc(24 * var(--u)); margin-top: calc(66 * var(--u)); font-size: calc(30.5 * var(--u)); font-weight: 800; line-height: 1.2; letter-spacing: .01em; text-transform: uppercase; color: #077a1d; }
.ab-rule-title::before, .ab-rule-title::after { content: ""; width: calc(104 * var(--u)); height: calc(2 * var(--u)); background: linear-gradient(90deg, transparent, currentColor 40%); }
.ab-rule-title::after { background: linear-gradient(270deg, transparent, currentColor 40%); }
.ab-steps { position: relative; display: grid; padding: 0; list-style: none; grid-template-columns: repeat(4, calc(229 * var(--u))); width: calc(916 * var(--u)); margin: calc(23 * var(--u)) 0 0 calc(-22.5 * var(--u)); text-align: center; }
.ab-steps li { position: relative; display: flex; flex-direction: column; align-items: center; }
.ab-steps li:not(:last-child)::after { content: ""; position: absolute; top: calc(109 * var(--u)); left: calc(50% + 81 * var(--u)); width: calc(62 * var(--u)); height: calc(2.5 * var(--u)); background: repeating-linear-gradient(90deg, #1b5e2c 0 calc(8 * var(--u)), transparent calc(8 * var(--u)) calc(13.5 * var(--u))); }
.ab-steps li:nth-child(2)::before { content: ""; position: absolute; left: 0; top: calc(192 * var(--u)); height: calc(91 * var(--u)); border-left: 1px solid #dfe3df; }
.ab-steps__num { width: calc(40 * var(--u)); height: calc(40 * var(--u)); border-radius: 50%; display: grid; place-items: center; background: var(--ag-dark); color: #fff; font-size: calc(22 * var(--u)); font-weight: 700; line-height: 1; }
.ab-steps__ico { width: calc(128 * var(--u)); height: calc(128 * var(--u)); margin-top: calc(6 * var(--u)); border-radius: 50%; display: grid; place-items: center; background: #f1f8f1; border: calc(2 * var(--u)) solid #e1ede1; color: #0b6a1f; }
.ab-steps__ico .icon { width: calc(72 * var(--u)); height: calc(72 * var(--u)); stroke-width: 2.3; }
.ab-steps h3 { margin-top: calc(12 * var(--u)); font-size: calc(25 * var(--u)); font-weight: 700; line-height: calc(30 * var(--u)); color: #000; }
.ab-steps p { margin-top: calc(8 * var(--u)); font-size: calc(22 * var(--u)); line-height: calc(32 * var(--u)); color: #222; white-space: pre-line; }

.ab-revenue { position: absolute; top: calc(471 * var(--u)); left: 0; width: 100%; height: calc(289 * var(--u)); border-radius: calc(28 * var(--u)); background: linear-gradient(180deg, #023a1b, #01331a); color: #fff; }
.ab-revenue .ab-rule-title { gap: calc(14 * var(--u)); margin-top: calc(23 * var(--u)); font-size: calc(25 * var(--u)); color: #bdeb5f; }
.ab-revenue .ab-rule-title::before, .ab-revenue .ab-rule-title::after { width: calc(46 * var(--u)); background: currentColor; }
.ab-revenue ul { display: grid; grid-template-columns: 275fr 298fr 299fr; margin-top: calc(22 * var(--u)); text-align: center; }
.ab-revenue li { display: flex; flex-direction: column; align-items: center; height: calc(160 * var(--u)); }
.ab-revenue li + li { border-left: 1px solid rgba(255, 255, 255, .28); }
.ab-revenue .icon { width: calc(60 * var(--u)); height: calc(60 * var(--u)); margin-top: calc(-14 * var(--u)); stroke-width: 2.4; }
.ab-revenue p { margin-top: calc(14 * var(--u)); font-size: calc(23 * var(--u)); font-weight: 600; line-height: calc(30 * var(--u)); }
.ab-revenue strong { margin-top: calc(10 * var(--u)); font-size: calc(27 * var(--u)); font-weight: 700; line-height: calc(34 * var(--u)); }
.ab-revenue li:first-child strong { color: #f0f7a3; }
.ab-revenue small { margin-top: calc(4 * var(--u)); font-size: calc(22 * var(--u)); font-weight: 600; line-height: calc(30 * var(--u)); }
.ab-revenue li:first-child small { font-size: calc(20 * var(--u)); font-weight: 500; }

/* 3. purpose (1706 x 562) */
.ab-purpose { --w: 1706; --h: 562; background: #f6f5f3; }
.ab-purpose__copy { position: absolute; top: 0; left: calc(75 * var(--u)); padding-top: calc(76 * var(--u)); }
.ab-purpose__eyebrow { font-size: calc(22 * var(--u)); font-weight: 700; line-height: 1.1; letter-spacing: .06em; text-transform: uppercase; color: #3c8a51; }
.ab-purpose__title { margin-top: calc(32 * var(--u)); font-size: calc(50 * var(--u)); font-weight: 700; line-height: calc(58 * var(--u)); color: var(--aink); }
.ab-purpose__title span { color: #0b4a22; }
.ab-purpose__lead { margin-top: calc(19 * var(--u)); font-size: calc(20.5 * var(--u)); line-height: calc(36.5 * var(--u)); color: #444; }
.ab-purpose__lead::after { content: ""; display: block; width: calc(75 * var(--u)); height: calc(3 * var(--u)); margin-top: calc(26 * var(--u)); background: #2f6a43; }
.ab-purpose__photo { position: absolute; top: calc(6 * var(--u)); left: calc(425 * var(--u)); width: calc(710 * var(--u)); height: calc(556 * var(--u)); object-fit: cover; -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent), linear-gradient(0deg, transparent, #000 3%); -webkit-mask-composite: source-in; mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent), linear-gradient(0deg, transparent, #000 3%); mask-composite: intersect; }
.ab-purpose__list { position: absolute; top: calc(59 * var(--u)); left: calc(1173 * var(--u)); width: calc(415 * var(--u)); }
.ab-purpose__list li { display: flex; align-items: flex-start; gap: calc(29 * var(--u)); height: calc(123 * var(--u)); }
.ab-purpose__list span { flex: none; width: calc(88 * var(--u)); height: calc(88 * var(--u)); border-radius: calc(16 * var(--u)); display: grid; place-items: center; background: linear-gradient(145deg, #0e7130, #064419); color: #fff; box-shadow: 0 calc(4 * var(--u)) calc(10 * var(--u)) rgba(6, 68, 25, .25); }
.ab-purpose__list .icon { width: calc(48 * var(--u)); height: calc(48 * var(--u)); stroke-width: 1.7; }
.ab-purpose__list div { flex: 1; align-self: stretch; padding-top: calc(4 * var(--u)); }
.ab-purpose__list li + li div { border-top: calc(1.5 * var(--u)) solid #e3e3df; margin-top: calc(-17 * var(--u)); padding-top: calc(21 * var(--u)); }
.ab-purpose__list h3 { font-size: calc(22 * var(--u)); font-weight: 700; line-height: calc(30 * var(--u)); color: #0b0b0b; letter-spacing: -.01em; }
.ab-purpose__list p { margin-top: calc(3 * var(--u)); font-size: calc(18.5 * var(--u)); line-height: calc(29.5 * var(--u)); color: #4e4e4e; white-space: pre-line; }

/* 4. cta (3412 x 496) */
.ab-cta { --w: 3412; --h: 340; background: radial-gradient(60% 120% at 50% 35%, #033a21, #00281a 55%, #00180f); color: #fff; }
.ab-cta__body { position: relative; z-index: 1; padding-top: calc(66 * var(--u)); text-align: center; }
.ab-cta h2 { font-size: calc(97 * var(--u)); font-weight: 700; line-height: 1.2; letter-spacing: -.015em; }
.ab-cta p { margin-top: calc(14 * var(--u)); font-size: calc(58 * var(--u)); line-height: 1.3; color: #d4e7dd; }


/* ---------- tablet & mobile: stacked layouts in real px ---------- */
@media (max-width: 1023px) {
  .about section { --u: 1px; }
  .ab-canvas { width: auto; height: auto; padding-inline: 24px; }
  .ab-hero__lead br, .ab-hero__card br, .ab-purpose__lead br { display: none; }

  .ab-hero { background: #fff; }
  .ab-hero .ab-canvas { display: flex; flex-direction: column; padding-bottom: 32px; }
  .ab-hero__copy, .ab-hero__photo, .ab-hero__card { position: relative; top: auto; left: auto; }
  .ab-hero__copy { order: 1; width: auto; }
  .ab-hero__logo { width: min(380px, 92%); margin: 28px 0 0 -12px; }
  .ab-eyebrow { margin-top: 28px; font-size: .95rem; } .ab-eyebrow::before { width: 40px; margin-right: 12px; } .ab-eyebrow::after { width: 30px; margin-left: 10px; }
  .ab-hero__title { margin-top: 14px; font-size: clamp(2.1rem, 7.4vw, 3.4rem); line-height: 1.08; letter-spacing: -.03em; white-space: normal; }
  .ab-hero__lead { margin-top: 16px; max-width: 560px; font-size: 1.05rem; line-height: 1.6; }
  .ab-hero__btns { flex-wrap: wrap; gap: 12px; margin-top: 24px; }
  .ab-btn, .ab-btn--line { width: auto; height: 54px; gap: 12px; padding: 0 24px; border-radius: 12px; font-size: 1rem; } .ab-btn .icon { width: 22px; height: 22px; }
  .ab-btn--line { border-width: 2px; }
  .ab-hero__dots { display: none; }
  .ab-hero__photo { order: 2; width: calc(100% + 48px); height: clamp(320px, 64vw, 520px); margin: 28px -24px 0; object-position: 78% top; }
  .ab-hero__card { order: 3; width: min(380px, 100%); height: auto; margin: -64px 0 0 auto; gap: 16px; padding: 16px 20px 16px 16px; border-radius: 16px; box-shadow: 0 10px 28px rgba(0, 0, 0, .15); }
  .ab-hero__card > span { width: 64px; height: 64px; } .ab-hero__card .icon { width: 34px; height: 34px; }
  .ab-hero__card p { font-size: .95rem; line-height: 1.45; } .ab-hero__card strong { margin-bottom: 4px; font-size: 1.05rem; line-height: 1.35; }

  .ab-trainers { padding-bottom: 48px; } .ab-trainers::before { display: none; }
  .ab-pitch, .ab-work, .ab-revenue { position: relative; top: auto; left: auto; width: auto; height: auto; }
  .ab-pitch { margin-inline: -24px; border-radius: 0 0 28px 28px; }
  .ab-pitch__photo { width: 48%; -webkit-mask-image: linear-gradient(90deg, transparent, #000 40%); mask-image: linear-gradient(90deg, transparent, #000 40%); object-position: 30% top; }
  .ab-pitch__copy { padding: 40px 24px 44px; max-width: 62%; }
  .ab-pitch__chip { height: 30px; padding-inline: 12px; border-radius: 8px; font-size: .78rem; }
  .ab-pitch__title { margin-top: 16px; font-size: clamp(2rem, 5.6vw, 2.6rem); line-height: 1.1; }
  .ab-pitch__list { margin-top: 18px; } .ab-pitch__list li { height: auto; gap: 12px; padding-block: 6px; font-size: 1rem; }
  .ab-pitch__list span { width: 26px; height: 26px; } .ab-pitch__list .icon { width: 15px; height: 15px; }
  .ab-pitch__btn { width: auto; height: 56px; gap: 12px; margin-top: 24px; padding: 0 24px; border-radius: 12px; font-size: 1rem; } .ab-pitch__btn .icon { width: 26px; height: 26px; }
  .ab-work { margin-top: 44px; }
  .ab-rule-title { gap: 14px; margin-top: 0; font-size: 1.3rem; } .ab-rule-title::before, .ab-rule-title::after { width: 64px; height: 2px; }
  .ab-steps { grid-template-columns: repeat(4, 1fr); row-gap: 28px; width: auto; margin: 24px 0 0; }
  .ab-steps li:not(:last-child)::after { top: 82px; left: calc(50% + 52px); width: calc(100% - 104px); height: 2px; background: repeating-linear-gradient(90deg, #1b5e2c 0 6px, transparent 6px 10px); }
  .ab-steps li:nth-child(2)::before { display: none; }
  .ab-steps__num { width: 32px; height: 32px; font-size: 1rem; }
  .ab-steps__ico { width: 96px; height: 96px; margin-top: 6px; border-width: 2px; } .ab-steps__ico .icon { width: 50px; height: 50px; }
  .ab-steps h3 { margin-top: 12px; font-size: 1.1rem; line-height: 1.3; } .ab-steps p { margin-top: 4px; padding-inline: 4px; font-size: .92rem; line-height: 1.45; }
  .ab-revenue { margin-top: 36px; padding: 22px 16px 24px; border-radius: 22px; }
  .ab-revenue .ab-rule-title { gap: 12px; margin-top: 0; font-size: 1.05rem; } .ab-revenue .ab-rule-title::before, .ab-revenue .ab-rule-title::after { width: 36px; }
  .ab-revenue ul { grid-template-columns: repeat(3, 1fr); margin-top: 18px; }
  .ab-revenue li { height: auto; padding: 8px 10px; } .ab-revenue .icon { width: 40px; height: 40px; margin-top: 0; }
  .ab-revenue p { margin-top: 10px; font-size: 1rem; line-height: 1.35; } .ab-revenue strong { margin-top: 6px; font-size: 1.15rem; line-height: 1.35; }
  .ab-revenue small, .ab-revenue li:first-child small { margin-top: 2px; font-size: .92rem; line-height: 1.35; }

  .ab-purpose .ab-canvas { display: grid; grid-template-columns: 1fr 1fr; column-gap: 32px; align-items: center; padding-block: 44px; }
  .ab-purpose__copy, .ab-purpose__photo, .ab-purpose__list { position: relative; top: auto; left: auto; width: auto; height: auto; }
  .ab-purpose__copy { padding-top: 0; }
  .ab-purpose__eyebrow { font-size: .9rem; } .ab-purpose__title { margin-top: 14px; font-size: clamp(2rem, 5.4vw, 2.6rem); line-height: 1.15; }
  .ab-purpose__lead { margin-top: 14px; font-size: 1rem; line-height: 1.65; } .ab-purpose__lead::after { width: 60px; height: 3px; margin-top: 20px; }
  .ab-purpose__photo { width: 100%; max-width: 480px; justify-self: center; }
  .ab-purpose__list { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 32px; margin-top: 28px; }
  .ab-purpose__list li, .ab-purpose__list li + li { height: auto; gap: 16px; padding-block: 14px; }
  .ab-purpose__list li + li div, .ab-purpose__list div { margin: 0; padding: 0; border: 0; }
  .ab-purpose__list span { width: 60px; height: 60px; border-radius: 14px; } .ab-purpose__list .icon { width: 32px; height: 32px; }
  .ab-purpose__list h3 { font-size: 1.08rem; line-height: 1.35; } .ab-purpose__list p { margin-top: 2px; font-size: .95rem; line-height: 1.5; }

  .ab-cta .ab-canvas { padding-block: 44px; }
  .ab-cta__body { padding-top: 0; }
  .ab-cta h2 { font-size: clamp(1.6rem, 4.6vw, 2.3rem); } .ab-cta p { margin-top: 8px; font-size: 1.05rem; }

}

@media (max-width: 640px) {
  .ab-canvas { padding-inline: 16px; }
  .ab-hero__photo { width: calc(100% + 32px); margin-inline: -16px; }
  .ab-btn, .ab-btn--line { flex: 1 1 200px; justify-content: center; }
  .ab-pitch { margin-inline: -16px; }
  .ab-pitch__photo { width: 100%; opacity: .35; -webkit-mask-image: none; mask-image: none; object-position: 70% top; }
  .ab-pitch__copy { max-width: none; padding-inline: 16px; }
  .ab-steps { grid-template-columns: 1fr 1fr; }
  .ab-steps li:nth-child(2)::after { display: none; }
  .ab-revenue ul { grid-template-columns: 1fr; }
  .ab-revenue li { padding-block: 14px; } .ab-revenue li + li { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .22); }
  .ab-purpose .ab-canvas, .ab-purpose__list { grid-template-columns: 1fr; }
  .ab-purpose__photo { margin-top: 24px; }
  .ab-purpose__list { margin-top: 16px; }
}
.ab-hero__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: inherit; }
