.before-after-section{--comparison-header-height:80px;--comparison-padding:32px;background:var(--ink);color:var(--on-film);height:calc(100vh - var(--comparison-header-height));min-height:calc(100vh - var(--comparison-header-height));height:calc(100svh - var(--comparison-header-height));min-height:calc(100svh - var(--comparison-header-height));box-sizing:border-box;padding-block:var(--comparison-padding);scroll-margin-top:var(--comparison-header-height);flex-direction:column;display:flex}.before-after-section>.section-wrap,.before-after-section>.section-wrap>.reveal{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.before-after-section>.section-wrap{width:calc(100% - var(--gutter)*2)}.before-after-section{--comparison-muted:#b8b2a8}.comparison-heading{text-align:center;flex-shrink:0;margin-bottom:24px}.comparison-heading>p{color:var(--comparison-muted);margin-bottom:8px;font-size:12px}.comparison-heading h2{max-width:900px;margin-inline:auto;font-size:40px;font-weight:400}.before-after-section>.section-wrap>.reveal{grid-template-rows:1fr auto auto 1fr;grid-template-columns:minmax(320px,3fr) minmax(0,7fr);column-gap:32px;display:grid}.comparison-heading{text-align:left;grid-area:2/1;margin-bottom:0}.comparison-heading h2{max-width:440px;margin-inline:0;font-size:48px}.comparison-frame-slot{grid-area:1/2/5;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;container-type:size}.comparison-frame{aspect-ratio:3/2;touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:ew-resize;background:var(--ink);border-radius:24px;flex:none;width:min(100cqw,150cqh);min-height:0;margin-inline:auto;position:relative;overflow:hidden}.comparison-photo,.comparison-before,.comparison-placeholder{width:100%;height:100%;position:absolute;inset:0}.comparison-photo{object-fit:cover;object-position:30% 85%;pointer-events:none}.comparison-before{clip-path:inset(0 calc(100% - var(--split)) 0 0);pointer-events:none}.comparison-label-shade{background:linear-gradient(to top,var(--shade-heavy),var(--shade-clear));pointer-events:none;position:absolute;inset:50% 0 0}.comparison-label{color:var(--on-film);pointer-events:none;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:999px;padding:5px 12px;font-size:13px;position:absolute;bottom:24px}.comparison-label-before{left:24px}.comparison-label-after{right:24px}.comparison-divider{top:0;bottom:0;left:var(--split);background:var(--on-film);pointer-events:none;width:1px;position:absolute;transform:translate(-50%)}.comparison-label-before{padding:3px 8px;font-size:11px}.comparison-handle{left:clamp(20px,var(--split),calc(100% - 20px));background:var(--background);width:40px;height:40px;color:var(--foreground);cursor:ew-resize;touch-action:pan-y;box-shadow:var(--shadow-soft);border:0;border-radius:50%;padding:0;position:absolute;top:50%;transform:translate(-50%,-50%)}.comparison-handle:hover,.comparison-handle:active{background:var(--background);color:var(--foreground)}.comparison-handle svg{stroke-width:1.5px;width:20px;height:20px}.comparison-bottom{text-align:left;flex-direction:column;grid-area:3/1;align-items:flex-start;gap:16px;min-width:0;margin-top:24px;display:flex}.comparison-bottom p{color:var(--comparison-muted);margin:0}.comparison-bottom>a{flex-shrink:0;height:48px;padding:12px 20px}@media (width<=700px){.before-after-section{--comparison-padding:24px}.comparison-heading h2{font-size:26px}.comparison-bottom{flex-direction:column;gap:12px}.comparison-label{bottom:20px}.comparison-label-before{left:20px}.comparison-label-after{right:20px}}@media (width>=1024px) and (width<=1440px){.comparison-heading h2{font-size:40px}}@media (width<=1023px){.before-after-section>.section-wrap>.reveal{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);gap:16px}.comparison-heading{text-align:center;grid-area:1/1;margin:0}.comparison-heading h2{max-width:900px;margin-inline:auto;font-size:32px}.comparison-frame-slot{grid-area:2/1}.comparison-frame{aspect-ratio:auto;width:100cqw;height:min(100cqh,125cqw)}.comparison-bottom{text-align:center;grid-area:3/1;align-items:center;gap:12px;margin:0}}@media (width<=700px){.comparison-heading h2{font-size:26px}.comparison-photo{object-position:22% 88%}}
