/* Eight ordered steps: four columns on desktop, one column on phones. */
.template-home #mechanism .hsteps {
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
 gap:28px 20px;margin-top:36px;padding:0;overflow:visible;
}
.template-home #mechanism .hsteps::before,
.template-home #mechanism .hsteps::after,
.template-home #mechanism .hsteps>.m-axis-pulse,
.template-home #mechanism .hsteps>.m-axis-tip{display:none;}
.template-home #mechanism .hsteps>li:nth-child(n){width:auto;min-width:0;padding:0;margin:0;display:flex;counter-increment:hstep;}
.template-home #mechanism .hsteps>li::before,
.template-home #mechanism .hsteps>li::after{display:none;}
.template-home #mechanism .hsteps>li>div{width:100%;box-sizing:border-box;display:flex;flex-direction:column;margin:0;padding:24px;border:1px solid #8ba8c333;border-radius:14px;background:#0b111bcc;}
.template-home #mechanism .hsteps>li>div::before{content:counter(hstep,decimal-leading-zero);display:block;color:var(--step-accent,#8fb8da);font:500 14px/1.4 ui-monospace,monospace;margin-bottom:20px;}
.template-home #mechanism .hsteps h3{font-size:19px;line-height:1.5;margin:0 0 16px;}
.template-home #mechanism .hsteps p{font-size:14px;line-height:1.85;margin:0 0 22px;}
.template-home #mechanism .hsteps .chain{margin-top:auto;font-size:12px;line-height:1.8;padding-top:16px;}
@media(max-width:767px){.template-home #mechanism .hsteps{grid-template-columns:1fr;gap:16px;}.template-home #mechanism .hsteps>li>div{padding:24px;}}

/* Stretch every card to its grid cell, including shorter descriptions. */
.template-home #mechanism .hsteps { align-items:stretch; }
.template-home #mechanism .hsteps>li:nth-child(n) { align-self:stretch;align-items:stretch;height:auto; }
.template-home #mechanism .hsteps>li>div { flex:1;align-self:stretch;height:auto;min-height:0; }
@media(min-width:768px){
 .template-home #mechanism .hsteps{grid-auto-rows:1fr;}
 .template-home #mechanism .hsteps h3{min-height:3em;}
 .template-home #mechanism .hsteps .chain{min-height:3.6em;box-sizing:content-box;}
}

/* Keep each step number beside its title. */
.template-home #mechanism .hsteps>li>div::before { content:none;display:none; }
.template-home #mechanism .hsteps h3 {
 display:flex;align-items:baseline;gap:12px;min-height:0;
}
.template-home #mechanism .hsteps h3::before {
 content:counter(hstep,decimal-leading-zero);
 flex:0 0 auto;font:500 14px/1.5 ui-monospace,monospace;
 color:var(--step-accent,#8fb8da);
}

/* Reset legacy subgrid tracks; anchor every trace to the card bottom. */
.template-home #mechanism .hsteps>li:nth-child(n){grid-row:auto;grid-template-rows:none;flex-direction:column;}
.template-home #mechanism .hsteps>li>div{grid-row:auto;grid-template-rows:none;display:flex;flex-direction:column;flex:1;}
.template-home #mechanism .hsteps>li>div>.chain{margin-top:auto;flex:0 0 auto;min-height:3.6em;box-sizing:content-box;border-top:1px dashed #8ba8c355;padding-top:16px;}
@media(max-width:767px){.template-home #mechanism .hsteps>li>div>.chain{min-height:0;}}
