.carousel-wrapper{--gap:20px;width:100%;display:grid;position:relative;overflow:visible}.carousel-header{box-sizing:border-box;justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.carousel-title{letter-spacing:.02em;color:#fefbff;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;height:30px;margin:0;font-size:24px;font-style:normal;font-weight:600;line-height:125%;overflow:hidden}.carousel-title em{padding-right:.1em;font-style:italic}.carousel-title-skeleton{background:linear-gradient(90deg,#1f1f23 0%,#2a2a2e 50%,#1f1f23 100%) 0 0/200% 100%;border-radius:6px;width:180px;height:30px;animation:1.5s ease-in-out infinite carousel-shimmer}@keyframes carousel-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.show-all-btn{color:#acaaaf;letter-spacing:.4px;cursor:pointer;background:0 0;border:none;width:60px;height:18px;margin-top:10px;padding:0;font-size:14px;font-style:normal;font-weight:600;line-height:125%}.carousel-progress{opacity:1;gap:2px;margin-top:20px;transition:opacity .3s;display:flex}.progress-bar{background-color:rgba(255,255,255,.4);border-radius:1px;width:16px;height:2px;transition:background-color .3s}.progress-bar.active{background-color:rgba(255,255,255,.9)}.carousel-container{align-items:center;width:100%;min-width:0;display:flex;position:relative;overflow:visible}.carousel-container.at-start:before{opacity:0}.carousel-container:before{content:"";pointer-events:none;z-index:2;opacity:0;background:linear-gradient(90deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,.3) 50%,transparent 100%);width:200px;height:100%;transition:opacity .3s ease-out;position:absolute;top:0;left:0}.carousel-container:hover:before{opacity:1}.carousel-container.at-end:after{opacity:0}.carousel-container:after{content:"";pointer-events:none;z-index:2;opacity:0;background:linear-gradient(270deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,.3) 50%,transparent 100%);width:200px;height:100%;transition:opacity .3s ease-out;position:absolute;top:0;right:0}.carousel-container:hover:after{opacity:1}.carousel-window{gap:var(--gap);scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;flex-flow:row;flex:1;align-items:flex-start;width:100%;min-width:0;margin-left:-80px;margin-right:-80px;padding:0 80px;scroll-padding:0;display:flex;position:relative;overflow-x:auto;overflow-y:hidden}.carousel-window::-webkit-scrollbar{display:none}.carousel-item{-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:8px;flex:none;overflow:hidden}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.carousel-btn{color:#fff;cursor:pointer;z-index:3;opacity:0;-webkit-backdrop-filter:blur(4px);pointer-events:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;background-color:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.3);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),background-color .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px rgba(0,0,0,.3)}.carousel-btn:not(:disabled){opacity:0;transition:opacity .15s ease-out}.carousel-container:hover .carousel-btn.left:not(:disabled),.carousel-container:hover .carousel-btn.right:not(:disabled),.carousel-wrapper:hover .carousel-btn:not(:disabled){opacity:1}.carousel-btn:hover:not(:disabled){color:#000;background-color:rgba(255,255,255,.9);border-color:rgba(255,255,255,.9);transform:translateY(-50%)scale(1.1);box-shadow:0 4px 12px rgba(0,0,0,.4)}.carousel-btn:active:not(:disabled){transform:translateY(-50%)scale(1.05)}.carousel-btn.left{left:10px}.carousel-btn.right{right:10px}.carousel-btn:disabled,.carousel-btn.at-edge:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.carousel-container:hover .carousel-btn.at-edge:not(:disabled){opacity:1}.carousel-btn svg{flex-shrink:0;width:24px;height:24px}@media (max-width:1024px){.carousel-title{height:28px;font-size:22px}}@media (max-width:900px){.carousel-header{padding:0 max(12px,min(5vw,24px))}.carousel-title-skeleton{width:160px;height:26px}.carousel-btn.left{width:36px;height:36px;left:0}.carousel-btn.right{width:36px;height:36px;right:0}.carousel-btn svg{width:20px;height:20px}.carousel-window{margin-left:calc(-1*max(12px,min(5vw,24px)));margin-right:calc(-1*max(12px,min(5vw,24px)));padding-left:max(12px,min(5vw,24px));padding-right:max(12px,min(5vw,24px))}.carousel-container:before,.carousel-container:after{width:150px}}@media (max-width:820px){.carousel-title{height:auto;font-size:20px}.carousel-window{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}}@media (max-width:640px){.carousel-title{height:auto;font-size:18px}.carousel-header{padding:0 max(12px,min(5vw,16px))}.carousel-title-skeleton{width:120px;height:22px}.carousel-btn.left{width:32px;height:32px;left:0}.carousel-btn.right{width:32px;height:32px;right:0}.carousel-btn svg{width:18px;height:18px}.carousel-window{gap:16px;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.carousel-container:before,.carousel-container:after{width:120px}}@media (max-width:420px){.carousel-title{font-size:16px}}
