.photo-compare{--split:50%;position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:16px;background:#dfe6dc;isolation:isolate}
.photo-compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
.photo-compare .photo-compare-before{clip-path:inset(0 calc(100% - var(--split)) 0 0);z-index:1}
.photo-compare-label{position:absolute;top:12px;z-index:2;padding:5px 9px;border-radius:99px;background:rgba(17,31,23,.78);color:#fff;font:700 11px/1.3 system-ui,sans-serif;letter-spacing:.09em;pointer-events:none}
.photo-compare-label.before{left:12px}.photo-compare-label.after{right:12px;background:rgba(26,100,72,.9)}
.photo-compare-divider{position:absolute;z-index:2;left:var(--split);top:0;bottom:0;width:2px;transform:translateX(-50%);background:#fff;box-shadow:0 0 4px #365342;pointer-events:none}
.photo-compare-divider::after{content:'‹ ›';display:grid;place-items:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border:2px solid #4e8870;border-radius:50%;background:#fff;color:#286345;font:bold 24px/1 system-ui;box-shadow:0 2px 12px #0003}
.photo-compare input[type=range]{position:absolute;inset:0;z-index:3;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.photo-compare:focus-within{outline:3px solid #3c805e;outline-offset:4px}
.photo-compare-note{margin:10px 0 0;color:#526c5a;font-size:12px;line-height:1.6}
.home-cleanup{padding:22px;border:1px solid #d5e3d6;border-radius:24px;background:rgba(255,255,255,.88)}
.home-cleanup-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.home-cleanup h2{margin:0 0 6px;color:#214f34;font-size:clamp(22px,3vw,30px)}
.home-cleanup-head p{margin:0;color:#617463;font-size:14px;line-height:1.6}
.home-cleanup-start{border:0;border-radius:12px;background:#2d6b47;color:#fff;padding:13px 20px;font:700 14px/1.4 system-ui;cursor:pointer;flex-shrink:0}
.home-cleanup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.home-cleanup figure{margin:0;min-width:0}.home-cleanup figcaption{margin-top:12px;font-weight:700;font-size:15px;color:#31563e}
@media(max-width:640px){.home-cleanup{padding:16px}.home-cleanup-head{align-items:flex-start;flex-direction:column}.home-cleanup-grid{grid-template-columns:1fr;gap:22px}.home-cleanup-start{width:100%}}
