.ba-figure{margin:1.5rem 0}.ba-container{-webkit-user-select:none;user-select:none;aspect-ratio:3/2;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);cursor:ew-resize;touch-action:none;position:relative;overflow:hidden}.ba-container img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.ba-before-wrap{height:100%;position:absolute;inset:0 auto 0 0;overflow:hidden}.ba-before-wrap .ba-before{width:100%}.ba-handle{pointer-events:none;background:#fff;width:4px;position:absolute;top:0;bottom:0;transform:translate(-50%);box-shadow:0 0 8px #0000004d}.ba-arrow{color:var(--color-primary);width:36px;height:36px;box-shadow:var(--shadow-md);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;font-weight:900;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ba-tag{color:#fff;text-transform:uppercase;letter-spacing:.08em;pointer-events:none;background:#0009;border-radius:50px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem}.ba-tag-before{left:1rem}.ba-tag-after{right:1rem}.ba-caption{color:var(--color-text-light);text-align:center;margin-top:.75rem;font-size:.85rem}.projects-hero{background:linear-gradient(180deg, var(--color-primary), var(--color-primary-light));color:#fff;padding:clamp(4rem,8vw,7rem) 0 clamp(3rem,6vw,4rem)}.projects-hero h1{color:#fff;margin-bottom:1rem;font-size:clamp(2.25rem,4vw,3.5rem)}.projects-lede{color:#ffffffe6;max-width:720px;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.6}.projects-grid{grid-template-columns:1fr;gap:4rem;display:grid}.project-card{grid-template-columns:1fr 1fr;align-items:center;gap:2rem;display:grid}.project-meta h2{color:var(--color-primary);margin-bottom:.5rem}.project-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.project-tags span{background:var(--color-bg-alt);color:var(--color-primary);border:1px solid #e2e8f0;border-radius:50px;padding:.2rem .65rem;font-size:.8rem;font-weight:600}.project-challenge,.project-outcome{color:var(--color-text);margin-bottom:.75rem;line-height:1.65}@media (width<=900px){.project-card{grid-template-columns:1fr}}
