.approach.approach-system{min-height:0;padding-block:48px 80px}
.approach-system .approach-intro{grid-column:span 4}
.approach-intro-copy{max-width:380px;margin-top:32px}
.approach-system .approach-modules{grid-column:span 8;display:grid;grid-auto-rows:1fr;min-width:0}
.approach-module{display:grid;grid-template-columns:24px 176px minmax(0,1fr);gap:16px;align-items:center;padding:12px 0;min-height:200px}
.approach-module+.approach-module{border-top:1px solid var(--color-structure)}
.approach-index{align-self:start;padding-top:16px}
.approach-module-copy h3{font-size:24px;line-height:32px}
.approach-module-copy p{font-size:18px;line-height:28px;margin-top:12px;max-width:480px}
.approach-icon{width:176px;height:176px;display:grid;place-items:center}
.approach-icon-float{width:90%;animation:approach-icon-float 6s ease-in-out infinite}
.approach-module:nth-child(2) .approach-icon-float{animation-delay:-2s;width:86%}
.approach-module:nth-child(3) .approach-icon-float{animation-delay:-4s;width:92%}
.approach-icon img{display:block;width:100%;height:auto;transition:transform 350ms ease-out}
@keyframes approach-icon-float{
 0%,100%{transform:translateY(3px) rotate(-1deg)}
 50%{transform:translateY(-3px) rotate(1deg)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .approach-icon:hover .approach-icon-float{animation-play-state:paused}
 .approach-icon:hover img{transform:scale(1.05) rotate(1deg)}
}
@media(min-width:768px) and (max-width:1199px){
 .approach-system .approach-intro{grid-column:span 3}
 .approach-system .approach-modules{grid-column:span 5}
 .approach-module{grid-template-columns:20px 112px minmax(0,1fr);gap:12px;min-height:200px}
 .approach-icon{width:112px;height:112px}
 .approach-module-copy h3{font-size:20px;line-height:28px;overflow-wrap:anywhere}
 .approach-module-copy p{font-size:16px;line-height:24px}
 .approach-intro-copy{font-size:18px;line-height:28px}
}
@media(max-width:767px){
 .approach.approach-system{padding-block:48px 64px}
 .approach-system .approach-intro,.approach-system .approach-modules{grid-column:1/-1}
 .approach-intro-copy{margin-top:24px}
 .approach-system .approach-modules{margin-top:16px;grid-auto-rows:auto}
 .approach-module{grid-template-columns:20px 88px minmax(0,1fr);gap:12px;min-height:0;padding:24px 0}
 .approach-icon{width:88px;height:88px}
 .approach-module-copy{display:contents}
 .approach-module-copy h3{grid-column:2/-1;grid-row:2;font-size:18px;line-height:26px;overflow-wrap:anywhere}
 .approach-module-copy p{grid-column:2/-1;margin-top:0;font-size:16px;line-height:24px}
 .approach-index{padding-top:8px}
}
@media(prefers-reduced-motion:reduce){
 .approach-icon-float{animation:none;transform:none}
 .approach-icon img{transition:none;transform:none}
}
