.gpx-hero{position:relative;width:100%;max-width:1400px;margin:0 auto;direction:ltr}
.gpx-hero__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab}
.gpx-hero__track::-webkit-scrollbar{display:none}
.gpx-hero__track.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.gpx-hero__slide{flex:0 0 100%;scroll-snap-align:start;aspect-ratio:var(--gpx-hero-ratio,1376/768)}
.gpx-hero__slide img{display:block;width:100%;height:100%;object-fit:cover}
.gpx-hero__link{display:block;height:100%}
.gpx-hero__btn{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.85);color:#6b2f2b;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15);transition:background .2s}
.gpx-hero__btn:hover{background:#fff}
.gpx-hero__btn--prev{left:14px}.gpx-hero__btn--next{right:14px}
.gpx-hero__dots{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:8px}
.gpx-hero__dot{width:10px;height:10px;border-radius:50%;border:2px solid #fff;background:transparent;padding:0;cursor:pointer;box-shadow:0 0 3px rgba(0,0,0,.3)}
.gpx-hero__dot.is-active{background:#fff}
@media (max-width:767px){.gpx-hero__btn{width:34px;height:34px}.gpx-hero__btn--prev{left:8px}.gpx-hero__btn--next{right:8px}.gpx-hero__dots{bottom:8px}}
