/* Ablauf — global module. Self-contained on purpose: it must look identical on
   every page it is dropped into, so it does not rely on the page template's
   .pm-scope tokens. Values are the same Green/* tokens, written out literally. */

.ab-sec{
  position:relative; box-sizing:border-box;
  padding:96px 24px; background:#ffffff;
  font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#001f19; line-height:1.6; -webkit-font-smoothing:antialiased;
}
.ab-sec *,.ab-sec *::before,.ab-sec *::after{box-sizing:border-box}
.ab-wrap{max-width:1200px;margin:0 auto}

.ab-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}
.ab-eyebrow{
  display:inline-flex;align-items:center;gap:6px;width:fit-content;
  padding:8px 12px;border-radius:4px;background:rgba(21,89,63,.15);color:#155b41;
  font-size:14px;font-weight:500;
}
.ab-h2{
  margin:0;font-size:clamp(28px,4vw,40px);font-weight:800;
  line-height:1.14;letter-spacing:-.015em;color:#001f19;
}
.ab-lead{margin:0;font-size:18px;line-height:1.55;color:#001f19}

.ab-steps{display:flex;gap:14px;align-items:flex-start;margin-top:56px}
.ab-step{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.ab-num{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  width:36px;height:36px;border-radius:999px;
  background:#155b41;color:#edf4f1;font-size:16px;font-weight:700;
}
.ab-stept{font-size:16px;font-weight:700;color:#001f19}
.ab-stepd{margin:0;font-size:14px;line-height:1.5;color:#001f19}

.ab-arrow{
  display:flex;align-items:center;justify-content:center;flex:0 0 auto;align-self:center;
  width:40px;height:40px;border-radius:8px;
  background:rgba(21,91,65,.12);color:#155b41;
}
.ab-arrow svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

@media (max-width:900px){
  .ab-steps{flex-wrap:wrap}
}
@media (max-width:640px){
  .ab-sec{padding:64px 18px}
  .ab-steps{flex-direction:column;align-items:stretch;margin-top:40px}
  .ab-arrow{transform:rotate(90deg)}
}
