.vf-section--content{--vf-section-bg:#f8fbf9}
.vf-section__content-grid{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(var(--vf-content-columns,4),minmax(0,1fr));gap:24px}
.vf-section__content-grid--1{--vf-content-columns:1}
.vf-section__content-grid--2{--vf-content-columns:2}
.vf-section__content-grid--3{--vf-content-columns:3}
.vf-section__content-grid--4{--vf-content-columns:4}
/* 卡片高度371px。 */
.vf-section__card{position:relative;z-index:1;min-width:0;width:100%;height:371px;box-sizing:border-box;padding:20px 18px 78px;background:var(--vf-section-card);border:1px solid rgba(22,163,74,.06);border-radius:16px;box-shadow:0 4px 16px rgba(24,65,40,.05);text-align:left;overflow-wrap:anywhere}
.vf-section__icon{display:block;width:28px;height:28px;margin:0 0 10px;color:var(--vf-section-green)}
.vf-section__icon svg{display:block;width:100%;height:100%}
.vf-section__card h3{margin:0 0 8px;font-size:16px;line-height:1.4}
.vf-section__card p{margin:0;color:var(--vf-section-muted);font-size:13px;line-height:1.6}
/* 遮罩对齐网格，隐藏24px列间隙中的波浪。 */
.vf-section__wave-layer{position:absolute;z-index:2;inset:0;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 24px),transparent calc(100% - 24px),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 24px),transparent calc(100% - 24px),transparent 100%);-webkit-mask-size:calc((100% + 24px)/var(--vf-content-columns,4)) 100%;mask-size:calc((100% + 24px)/var(--vf-content-columns,4)) 100%;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}
/* 路径从左侧半高起步，第二张卡片顶部达峰，再穿过第三、第四张卡片。 */
.vf-section__wave{position:absolute;left:0;top:0;display:block;width:100%;height:371px;opacity:1;transform:none;pointer-events:none}
html[data-vf-theme="dark"] .vf-section--content{--vf-section-bg:#101713}
@media(max-width:1199px){.vf-section__content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vf-section__wave-layer{-webkit-mask-size:calc((100% + 24px)/2) 100%;mask-size:calc((100% + 24px)/2) 100%}.vf-section__wave{top:auto;bottom:0}}
.vf-section__wave-mobile,.vf-section__content-connector{display:none}
html[data-vf-theme="dark"] .vf-section__content-connector path{fill:#111B15;stroke:#111B15}
@media(max-width:767px){
    .vf-section__content-grid{grid-template-columns:minmax(0,340px);justify-content:center;gap:24px}
    .vf-section__card:not(:last-of-type) .vf-section__content-connector{display:block;position:absolute;left:35px;top:calc(100% + 1px);width:51px;height:24px;transform:none;pointer-events:none}
    .vf-section__card{height:auto;min-height:270px;padding:29px;border-radius:18px;font-family:"SF Pro","SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-style:normal;letter-spacing:0}
    .vf-section__icon{width:48px;height:48px;margin:0 0 20px;border-radius:14px}
    .vf-section__card h3{width:229px;max-width:100%;min-height:27px;margin:0 0 5px;font-size:16px;font-weight:700;line-height:26.4px;letter-spacing:0;text-align:left}
    .vf-section__card p{width:280px;max-width:100%;min-height:68px;margin:0;font-size:14px;font-weight:400;line-height:22.4px;letter-spacing:0;text-align:left}
    .vf-section__wave-layer{width:340px;max-width:100%;margin-inline:auto;-webkit-mask-image:none;mask-image:none}
    .vf-section__wave{display:none}
    .vf-section__wave-mobile{display:block;position:absolute;top:0;right:0;width:225.2583px;max-width:30%;height:100%;opacity:1}
}
