.fp{--fp-surface:#14111d;--fp-surface-soft:#20154733;color:#fff;background:#0a0a0a;width:100%}.fp *{box-sizing:border-box}.fp-section{width:100%}.fp-shell{width:min(1320px,100% - 64px);margin-inline:auto}.fp-section__title{color:#fff;width:min(726px,100%);font:600 60px/72px var(--font-heading);letter-spacing:normal;text-align:center;margin:0;margin-inline:auto}.fp-section__lead{color:#fff;max-width:820px;font:400 16px/24px var(--font-body);text-align:center;margin:32px auto 0}.fp img{max-width:100%;height:auto;display:block}.fp figure{margin:0}.fp h3{color:#fff;font-family:var(--font-heading);letter-spacing:normal;font-weight:600}.fp p,.fp li,.fp figcaption{color:#fff;font:400 16px/24px var(--font-body)}.fp-representations{padding:66px 0 140px}.fp-representations .fp-section__title{max-width:726px;margin-inline:auto}.fp-representations__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:94px;display:grid}.fp-representation{background:var(--fp-surface);border-radius:24px;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);place-items:center;min-height:342px;padding:32px;display:grid}.fp-representation--wide{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(380px,1fr);min-height:370px}.fp-representation img{object-fit:contain;margin-inline:auto}.fp-representation figcaption{font-weight:600}.fp-representation:not(.fp-representation--wide){flex-direction:column;justify-content:center;gap:20px;display:flex}.fp-representation:not(.fp-representation--wide) figcaption{text-align:center;width:100%}.fp-algorithms{padding:0 0 215px}.fp-algorithms__list{gap:100px;margin-top:64px;display:grid}.fp-feature{gap:32px;display:grid}.fp-feature__copy h3{margin:0 0 20px;font-size:28px;line-height:26px}.fp-feature__copy p{max-width:820px;margin:0 0 16px}.fp-feature__copy ul{text-align:left;max-width:760px;margin:18px auto 0;padding-left:22px}.fp-feature--centered .fp-feature__copy{text-align:center}.fp-feature--centered .fp-feature__copy p{margin-inline:auto}.fp-feature__media{background:var(--fp-surface);border-radius:24px;gap:30px;padding:32px;display:grid;overflow:hidden}.fp-feature__media figure{justify-content:center;align-items:center;min-width:0;min-height:250px;display:flex;position:relative}.fp-feature__media figcaption{background:#5a3fba;border-radius:999px;width:max-content;padding:7px 10px;font-size:14px;line-height:20px;position:absolute;bottom:0;left:0}.fp-feature__media img{object-fit:contain;max-height:270px}.fp-feature--collisions{background:var(--fp-surface-soft);border-radius:24px;grid-template-columns:1fr 1fr;align-items:center;min-height:370px;padding:32px}.fp-feature--collisions .fp-feature__copy{padding-left:10px}.fp-feature--collisions .fp-feature__media{background:0 0;padding:0}.fp-feature--collisions .fp-feature__media img{max-height:262px}.fp-feature--distances .fp-feature__media,.fp-feature--free-form-deformation .fp-feature__media,.fp-feature--laplacian-deformation .fp-feature__media,.fp-feature--mesh-decimation .fp-feature__media,.fp-feature--partial-offset .fp-feature__media{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-feature--distances .fp-feature__media{padding-block:52px}.fp-feature--free-form-deformation,.fp-feature--laplacian-deformation{border-radius:24px;padding:32px}.fp-feature--free-form-deformation{background:var(--fp-surface)}.fp-feature--free-form-deformation .fp-feature__media,.fp-feature--laplacian-deformation .fp-feature__media{background:0 0;padding:0}.fp-feature--fill-stitch-hole-s .fp-feature__media{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-feature--mesh-decimation .fp-feature__copy{text-align:left;width:min(792px,100%);margin-inline:auto}.fp-feature--shortest-geodesic-surface-path-building{background:linear-gradient(#0d0d0d,#0d0d0d) padding-box padding-box,radial-gradient(300% 300% at 88% 36%,#eee2ff 0,#53308d 26%,#262728 100%) border-box;border:1px solid #5a3fba;border-radius:24px;grid-template-columns:1fr 1fr;align-items:center;min-height:328px;padding:32px;overflow:hidden}.fp-feature__geodesic{background:url(/wp-content/uploads/2024/02/image-24.webp) 50%/cover no-repeat;border-radius:18px;min-height:262px}.fp-feature--iterative-closest-points .fp-feature__media{grid-template-columns:repeat(4,minmax(0,1fr))}.fp-feature--tunnels-fixing .fp-feature__media{background:0 0;grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.fp-feature--tunnels-fixing .fp-feature__media figure{background:var(--fp-surface);border-radius:24px;min-height:326px}.fp-feature--tunnels-fixing .fp-feature__media figcaption{color:#3f2bb0;background:#e5e5e8}.fp-feature--3d-boolean-operations .fp-feature__media{grid-template-columns:repeat(3,minmax(0,1fr))}.fp-feature--segmentation-by-curvature{grid-template-columns:minmax(0,1.3fr) minmax(400px,.9fr);align-items:center;gap:62px;min-height:451px}.fp-feature--segmentation-by-curvature .fp-feature__media{background:linear-gradient(#0d0d0d,#0d0d0d) padding-box padding-box,radial-gradient(300% 300% at 88% 36%,#eee2ff 0,#53308d 26%,#262728 100%) border-box;height:451px;padding:0}.fp-feature--segmentation-by-curvature .fp-feature__media img{max-height:392px}.fp-compare{background:var(--fp-surface-soft);padding:125px 0}.fp-compare__image{object-fit:contain;width:656px;min-height:525px;margin:0 auto 70px}.fp-distance{padding:125px 0 75px}.fp-distance__list{gap:100px;margin-top:140px;display:grid}.fp-distance-card{gap:32px;display:grid}.fp-distance-card__copy h3{margin:0 0 20px;font-size:28px;line-height:26px}.fp-distance-card__copy p{max-width:900px;margin:0}.fp-distance-card__copy p+p{margin-top:16px}.fp-distance-card__media{gap:30px;display:grid}.fp-distance-card__media figure{background:var(--fp-surface);border-radius:24px;justify-content:center;align-items:center;min-width:0;min-height:324px;display:flex;position:relative;overflow:hidden}.fp-distance-card__media img{object-fit:contain;max-height:366px}.fp-distance-card__media figcaption{color:#3f2bb0;background:#e5e5e8;border-radius:999px;max-width:calc(100% - 48px);padding:7px 10px;font-size:13px;line-height:20px;position:absolute;bottom:24px;left:24px}.fp-distance-card--distance-map-from-mesh{background:var(--fp-surface);border-radius:24px;padding:32px}.fp-distance-card--distance-map-from-mesh .fp-distance-card__media{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-distance-card--distance-map-from-contours .fp-distance-card__copy,.fp-distance-card--distance-map-merge .fp-distance-card__copy{text-align:center}.fp-distance-card--distance-map-from-contours .fp-distance-card__copy p,.fp-distance-card--distance-map-merge .fp-distance-card__copy p{margin-inline:auto}.fp-distance-card--distance-map-from-contours .fp-distance-card__media{grid-template-columns:repeat(3,minmax(0,1fr))}.fp-distance-card--distance-map-from-contours .fp-distance-card__media figure{background:0 0;min-height:0;display:block;overflow:visible}.fp-distance-card--distance-map-from-contours .fp-distance-card__media img{object-fit:contain;border-radius:24px;width:100%;height:366px}.fp-distance-card--distance-map-from-contours .fp-distance-card__media figcaption{color:#fff;background:0 0;max-width:none;padding:16px 0 0;font-size:16px;line-height:24px;position:static}.fp-distance-card--distance-map-iso-lines{grid-template-columns:1fr 1fr;align-items:center}.fp-distance-card--distance-map-iso-lines .fp-distance-card__media{grid-area:1/2}.fp-distance-card--distance-map-merge .fp-distance-card__media{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-voxels{background:#100e18;margin-top:125px;padding:125px 0}.fp-voxel{text-align:center;flex-direction:column;align-items:center;min-height:1020px;padding-top:80px;display:flex}.fp-voxel h3{margin:0;font-size:60px;line-height:1}.fp-voxel p{max-width:760px;margin:120px auto 0}.fp-voxel img{object-fit:contain;width:800px;max-height:630px;margin-top:auto}.fp-point-cloud{padding:125px 0 120px}.fp-cloud-card{gap:32px;margin-top:120px;display:grid}.fp-cloud-card__copy{text-align:center}.fp-cloud-card__copy h3{margin:0 0 20px;font-size:28px;line-height:26px}.fp-cloud-card__copy p{max-width:760px;margin:0 auto}.fp-cloud-card__media{background:var(--fp-surface);border-radius:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding:32px;display:grid}.fp-cloud-card__media figure{justify-content:center;align-items:center;min-height:300px;display:flex;position:relative}.fp-cloud-card__media img{object-fit:contain;max-height:300px}.fp-cloud-card__media figcaption{background:#5a3fba;border-radius:999px;padding:7px 10px;font-size:14px;line-height:20px;position:absolute;bottom:0;left:0}.fp-other{margin-top:160px}.fp-other h2{font:600 60px/1 var(--font-heading);letter-spacing:normal;margin:0 0 110px}.fp-other__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.fp-other__grid figure{background:var(--fp-surface);border-radius:24px;justify-content:center;align-items:center;min-height:368px;display:flex;position:relative;overflow:hidden}.fp-other__grid img{object-fit:contain;max-height:240px}.fp-other__grid figcaption{font-weight:600;position:absolute;bottom:32px;left:32px;right:32px}.fp-community{background:#0a0a0a;width:100%;padding:120px 2.5% 0}.fp-community__inner{background:#a1a1a600 url(/wp-content/uploads/2025/04/join-meshlib-dev-community-meshlib.webp) 89% 35%/cover no-repeat;border:1px solid #46318d;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:20px;width:100%;min-height:440px;padding:50px 0;display:flex;box-shadow:0 4px 40px #5a3fba42}.fp-community h2{color:#fff;width:52%;max-width:830px;font:600 60px/78px var(--font-heading);letter-spacing:normal;text-align:center;margin:0}.fp-community a{color:#fff;min-width:190px;min-height:52px;font:500 16px/20px var(--font-heading);background:#5a3fba;border:1px solid #5a3fba;border-radius:40px;justify-content:center;align-items:center;margin-top:50px;padding:16px 32px;text-decoration:none;transition:background-color .2s;display:inline-flex}.fp-community a:hover,.fp-community a:focus-visible{background:0 0}@media (width>=1025px) and (width<=1475px){.fp-shell{width:min(1040px,100% - 64px)}.fp .fp-section__title,.fp .fp-voxel h3,.fp .fp-other h2{width:100%;max-width:none;font-size:40px;line-height:48px}}@media (width<=1024px){.fp-shell{width:min(960px,100% - 64px)}.fp .fp-section__title,.fp .fp-voxel h3,.fp .fp-other h2{width:100%;max-width:none;font-size:40px;line-height:60px}.fp-representation--wide,.fp-feature--segmentation-by-curvature{grid-template-columns:1fr 1fr}.fp-other__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-community{padding:80px 30px 0}.fp-community__inner{background-position:50%;background-size:contain;min-height:395px;padding-block:50px}.fp-community h2{width:78%;max-width:725px;margin-top:30px;font-size:40px;line-height:52px}.fp-community a{width:40.5%;min-height:44px;margin-top:40px;padding:12px 24px}}@media (width<=767px){.fp-shell{width:min(398px,100% - 32px)}.fp .fp-section__title,.fp .fp-voxel h3,.fp .fp-other h2{text-align:left;font-size:32px;line-height:39px}.fp-representations{padding:64px 0 80px}.fp-representations__grid{grid-template-columns:1fr;margin-top:56px}.fp-representation,.fp-representation--wide{grid-column:auto;grid-template-columns:1fr;gap:24px;min-height:0;padding:24px 20px}.fp-representation img{max-height:235px}.fp-representation figcaption{text-align:center}.fp-algorithms__list,.fp-distance__list{gap:72px;margin-top:56px}.fp-algorithms{padding-bottom:125px}.fp-feature,.fp-feature--collisions,.fp-feature--shortest-geodesic-surface-path-building,.fp-feature--segmentation-by-curvature{background:0 0;grid-template-columns:1fr;gap:24px;min-height:0;padding:0}.fp-feature__copy h3,.fp-distance-card__copy h3,.fp-cloud-card__copy h3{font-size:24px;line-height:1.25}.fp-feature__media,.fp-feature--fill-stitch-hole-s .fp-feature__media,.fp-feature--iterative-closest-points .fp-feature__media,.fp-feature--3d-boolean-operations .fp-feature__media{border-radius:20px;grid-template-columns:1fr;gap:16px;padding:20px}.fp-feature--distances .fp-feature__media,.fp-feature--free-form-deformation .fp-feature__media,.fp-feature--laplacian-deformation .fp-feature__media,.fp-feature--mesh-decimation .fp-feature__media,.fp-feature--partial-offset .fp-feature__media,.fp-feature--tunnels-fixing .fp-feature__media{grid-template-columns:1fr}.fp-feature__media figure,.fp-feature--tunnels-fixing .fp-feature__media figure{min-height:260px}.fp-feature--free-form-deformation,.fp-feature--laplacian-deformation{background:var(--fp-surface);padding:24px 20px}.fp-feature--shortest-geodesic-surface-path-building{background:linear-gradient(#0d0d0d,#0d0d0d) padding-box padding-box,radial-gradient(300% 300% at 88% 36%,#eee2ff 0,#53308d 26%,#262728 100%) border-box;border:1px solid #5a3fba;border-radius:20px;padding:24px 20px;overflow:hidden}.fp-feature--segmentation-by-curvature .fp-feature__media{height:auto;min-height:390px}.fp-compare{padding:80px 0}.fp-compare__image{width:100%;min-height:0;margin-bottom:48px}.fp-section__lead{text-align:left}.fp-distance{padding:80px 0 0}.fp-distance-card,.fp-distance-card--distance-map-iso-lines{grid-template-columns:1fr}.fp-distance-card--distance-map-from-mesh{padding:24px 20px}.fp-distance-card__media,.fp-distance-card--distance-map-from-mesh .fp-distance-card__media,.fp-distance-card--distance-map-from-contours .fp-distance-card__media,.fp-distance-card--distance-map-merge .fp-distance-card__media{grid-template-columns:1fr}.fp-distance-card--distance-map-iso-lines .fp-distance-card__media{grid-area:auto}.fp-distance-card__media figure{min-height:300px}.fp-voxels{margin-top:80px;padding:80px 0}.fp-voxel{text-align:left;align-items:stretch;min-height:0;padding-top:70px}.fp-voxel+.fp-voxel{padding-top:100px}.fp-voxel p{margin-top:70px}.fp-voxel img{width:100%;margin-top:80px}.fp-point-cloud{padding:80px 0}.fp-cloud-card{margin-top:72px}.fp-cloud-card__copy{text-align:left}.fp-cloud-card__media{grid-template-columns:1fr;padding:20px}.fp-other{margin-top:110px}.fp-other h2{margin-bottom:56px}.fp-other__grid{grid-template-columns:1fr}.fp-other__grid figure{min-height:330px}.fp-community{padding:80px 0 0}.fp-community__inner{background-position:50%;background-size:100%;border-radius:5px;min-height:395px;padding:20px 15px}.fp-community h2{width:100%;max-width:none;margin:30px 0 0;font-size:32px;line-height:41.6px}.fp-community a{width:calc(100% - 60px);min-height:38px;padding:8px 12px;font-size:14px;line-height:22px}}
