.embla{overflow:hidden;margin:0 auto;position:relative}.embla__container{display:flex;gap:var(--slide-spacing,16px);transition:transform .3s cubic-bezier(.4,0,.2,1)}.embla__slide{position:relative;min-width:0;height:var(--slide-height,auto);flex:0 0 auto;border-radius:12px;overflow:hidden}.embla__slide img{width:100%;height:100%;object-fit:cover;border-radius:12px;transition:all .4s cubic-bezier(.4,0,.2,1)}.embla__slide:hover img{transform:scale(1.05)}.embla__button{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;opacity:.8}.embla__button:hover{opacity:1;background:rgba(255,255,255,.2);transform:translateY(-50%) scale(1.1)}.embla__button--prev{left:16px}.embla__button--next{right:16px}.embla__button:disabled{opacity:.3;cursor:not-allowed}.embla__dots{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:16px}.embla__dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.3);border:none;cursor:pointer;transition:all .3s ease}.embla__dot--selected{background:var(--primary);width:24px;border-radius:4px}.carousel-section{margin-bottom:32px}.section-title{margin-bottom:24px}.section-title h2{font-size:1.75rem;font-weight:700;color:var(--foreground);margin:0 0 8px;line-height:1.2}.section-title p{color:var(--muted-foreground);font-size:1rem;margin:0}