/* Three visual chapters, driven by the shared visible-time renderer. */
.process-section{padding-top:64px;padding-bottom:68px}
.process-heading{margin-bottom:40px}
.process-heading>*{min-width:0}
.process-line{gap:clamp(22px,3vw,44px)}
.process-line:before{left:0;right:0;background:#b2cfc52b}
.process-line:after{display:none}
.process-line>.process-step{min-width:0;padding:0;--step-light:.55;--step-color:#a5b2df}
.process-line>.process-proposal{--step-color:#d6b294}
.process-line>.process-execution{--step-color:#9fd4b7}
.process-number{width:28px;height:26px;outline:7px solid #10252c;background:#10252c;color:var(--step-color);font-size:11px}
.process-step:after{content:'';position:absolute;top:12px;left:42px;right:0;height:1px;background:var(--step-color);opacity:var(--step-light)}
.process-visual{width:100%;aspect-ratio:360/240;margin:22px 0 0;position:relative}
.process-visual svg{display:block;width:100%;height:100%;overflow:visible}
.process-line h3{font:500 clamp(27px,2.8vw,40px)/1.15 General;letter-spacing:-.04em;margin:17px 0 13px}
.process-line p{font-size:15px;line-height:1.65;max-width:310px;color:#b2c7bd}
.process-wire{fill:none;stroke:#a0b8b3;stroke-opacity:.32;stroke-width:1}
.process-flow{fill:none;stroke:#a5b8ea;stroke-width:1.5;stroke-dasharray:.14 .86;stroke-linecap:round}
.build-flow{stroke:#a9e0c3}
.process-codex{filter:brightness(0) invert(1)}
.sketch-title{font:500 19px General,sans-serif;letter-spacing:-.5px}
.sketch-small{font:500 14px Satoshi,sans-serif}
.plan-title{font:500 21px General,sans-serif;letter-spacing:-.7px}
.plan-label{font:400 10px Satoshi,sans-serif}
.build-title{font:500 20px General,sans-serif;letter-spacing:-.7px}
.build-label{font:400 6px JetBrains,monospace;letter-spacing:1px}
@media(min-width:761px) and (max-width:1000px){.process-line{gap:24px}.process-visual{margin-top:19px}.process-line h3{font-size:29px}.process-line p{font-size:14px}}
@media(max-width:760px){
 .process-section{padding-top:48px;padding-bottom:48px}
 .process-heading{grid-template-columns:minmax(0,1fr);margin-bottom:32px}
 .process-line{grid-template-columns:minmax(0,1fr);gap:40px}
 .process-line:before{display:none}
 .process-line>.process-step,.process-line>.process-step:last-child{padding:0;min-height:0}
 .process-number{position:relative;top:auto;left:auto;outline:0;background:none}
 .process-step:after{left:43px;right:0}
 .process-visual{max-width:390px;margin:9px auto 0}
 .process-line h3{font-size:32px;margin:8px 0 10px}
 .process-line p{max-width:390px;font-size:15px}
}
