/* The process rail connects concise cards; all instructions stay visible. */
.structured-page ol.process-flow{position:relative;gap:16px;padding-top:24px;margin-top:48px}
.structured-page ol.process-flow::before{content:"";position:absolute;top:6px;left:34px;right:calc((100% - 32px)/3 - 34px);height:2px;background:#cbd4c4}
.structured-page ol.process-flow[data-step-count="4"]::before{right:calc((100% - 48px)/4 - 34px)}
.structured-page ol.process-flow[data-step-count="5"]::before{right:calc((100% - 64px)/5 - 34px)}
.structured-page .process-flow>.process-step{padding:24px 20px;background:#fffefb;border:1px solid #d6ddcf;border-radius:10px;margin:0;box-shadow:0 3px 12px rgb(23 58 44 / .025)}
.structured-page .process-flow>.process-step:last-child{padding:24px 20px;border:1px solid #d6ddcf}
.structured-page .process-step>.process-marker{left:16px;top:-36px;background:#f7f5ef;border-color:#a8b69d}
.structured-page .process-step::after{top:-19px;left:34px;right:-50px;height:3px}
.structured-page .process-step:last-child::after{display:none}
.structured-page .process-step h3{font-family:var(--sans,sans-serif);font-size:19px;line-height:1.4;font-weight:700;margin:0 0 12px!important}
.structured-page .process-step p{font-size:14px;line-height:1.75;margin:0 0 12px}
.structured-page .process-step p:last-child{margin-bottom:0}
.process-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#e7eedf;color:#173a2c;margin-bottom:20px}
.process-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.process-preparation{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;margin-top:26px;padding:22px 26px;border-left:3px solid #b78942;background:#ecefe4}
.process-preparation h3{font-size:23px;margin:0!important;line-height:1.3}
.process-preparation p{margin:0;font-size:15px;line-height:1.75}
@media(prefers-reduced-motion:no-preference){.structured-page .process-step.process-arrived{animation:process-card-arrive .55s ease-out both}.structured-page .process-step:nth-child(2){animation-delay:.16s}.structured-page .process-step:nth-child(3){animation-delay:.32s}.structured-page .process-step:nth-child(4){animation-delay:.48s}.structured-page .process-step:nth-child(5){animation-delay:.64s}}
@keyframes process-card-arrive{from{transform:translateY(8px)}to{transform:translateY(0)}}
@media(max-width:1100px){
 .structured-page ol.process-flow,.structured-page ol.process-flow[data-step-count="4"],.structured-page ol.process-flow[data-step-count="5"]{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:0;margin-top:30px}
 .structured-page ol.process-flow::before{display:none}
 .structured-page .process-flow>.process-step,.structured-page .process-flow>.process-step:last-child,.structured-page ol.process-flow[data-step-count="5"]>.process-step{padding:22px;margin-left:48px;border:1px solid #d6ddcf;min-height:0}
 .structured-page .process-step>.process-marker,.structured-page ol.process-flow[data-step-count="5"] .process-marker{top:22px;left:-48px}
 .structured-page .process-step::before{content:"";position:absolute;left:-31px;top:58px;height:calc(100% + 16px);width:2px;background:#cbd4c4}
 .structured-page .process-step:last-child::before{content:none}
 .structured-page .process-step::after,.structured-page ol.process-flow[data-step-count="5"]>.process-step::after{top:58px;left:-31px;right:auto;bottom:auto;width:3px;height:calc(100% + 16px);transform:scaleY(0);transform-origin:center top}
 .structured-page .process-step:last-child::after{display:none}
 .structured-page .process-step h3{font-size:20px}
 .process-icon{width:40px;height:40px;margin-bottom:14px}
 .process-preparation{grid-template-columns:minmax(0,1fr);gap:14px;padding:20px}
 @media(prefers-reduced-motion:no-preference){.structured-page .process-step.process-arrived::after{animation-name:process-path-vertical}}
}
@media(prefers-reduced-motion:reduce){.structured-page .process-step{animation:none!important;transform:none!important}}

/* Cards appear in sequence. The gold connectors live in the gaps, without counters. */
.structured-page ol.process-flow{gap:32px;padding-top:0;margin-top:32px}
.structured-page ol.process-flow::before,.structured-page .process-step>.process-marker{display:none}
.structured-page .process-step::before{content:none!important}
.structured-page .process-step::after{top:50%;left:100%;right:auto;bottom:auto;width:32px;height:2px;transform:scaleX(0);transform-origin:left center}
.structured-page .measurement-flow .process-step h3{min-height:2.8em}
@keyframes process-card-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
 .structured-page .process-step:nth-child(1)::after{animation-delay:.3s}
 .structured-page .process-step:nth-child(2)::after{animation-delay:.46s}
 .structured-page .process-step:nth-child(3)::after{animation-delay:.62s}
 .structured-page .process-step:nth-child(4)::after{animation-delay:.78s}
}
@media(max-width:1100px){
 .structured-page ol.process-flow,.structured-page ol.process-flow[data-step-count="4"],.structured-page ol.process-flow[data-step-count="5"]{gap:28px}
 .structured-page ol.process-flow>.process-step{margin-left:0!important}
 .structured-page .process-step::after,.structured-page ol.process-flow[data-step-count="5"]>.process-step::after{top:100%;left:50%;right:auto;bottom:auto;width:2px;height:28px;transform:scaleY(0);transform-origin:center top}
 .structured-page .measurement-flow .process-step h3{min-height:0}
}
