.elementor-widget-saen-sport-facility-tour,
.elementor-widget-saen-sport-facility-tour .elementor-widget-container {
  width: 100%;
  max-width: none;
}

.elementor-widget-saen-sport-facility-tour .ss-facility-tour {
  --ssft-container: 1500px;
  --ssft-media-width: 56%;
  --ssft-media-height: 72vh;
  --ssft-mobile-media-height: 300px;
  --ssft-mobile-gap: 14px;
  --ssft-mobile-slide-basis: 92.6%;
  --ssft-chapter-height: 68vh;
  --ssft-radius: 18px;
  --ssft-grain-opacity: .25;
  --ssft-mobile-title-min: 0px;
  --ssft-mobile-description-min: 0px;
  --ssft-mobile-features-min: 0px;
  position: relative;
  isolation: isolate;
  width: 100%;
  padding: 120px 32px 130px;
  color: #fff;
  background: #050505;
  overflow: clip;
}

.elementor-widget-saen-sport-facility-tour .ss-facility-tour * { box-sizing: border-box; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour a { color: inherit; text-decoration: none; }

.elementor-widget-saen-sport-facility-tour .ss-facility-tour__grain {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: url("https://osmo.b-cdn.net/resource-media/noise.avif") 50% 50% / 7.8125em repeat;
  opacity: var(--ssft-grain-opacity);
  filter: contrast(125%) brightness(60%);
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__grain[data-grain-animate="true"] { animation: ssft-grain .6s steps(1,end) infinite; }
@keyframes ssft-grain {
  0% { background-position: 0 0; }
  20% { background-position: -.5em .3em; }
  40% { background-position: .4em -.2em; }
  60% { background-position: -.3em -.4em; }
  80% { background-position: .2em .5em; }
}

.elementor-widget-saen-sport-facility-tour .ss-facility-tour__inner {
  position: relative;
  z-index: 1;
  width: min(100%, var(--ssft-container));
  margin-inline: auto;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__intro { max-width: 930px; margin: 0 0 90px; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__eyebrow,
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter-eyebrow {
  margin-bottom: 12px;
  color: #f2ff3b;
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__heading-mask { overflow: hidden; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__heading {
  margin: 0;
  color: #fff;
  font-size: clamp(46px,5vw,82px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.05em;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__description {
  max-width: 760px;
  margin: 22px 0 0;
  color: rgba(255,255,255,.68);
  font-size: 19px;
  line-height: 1.55;
}

.elementor-widget-saen-sport-facility-tour .ss-facility-tour__desktop {
  display: grid;
  grid-template-columns: var(--ssft-media-width) minmax(0,1fr);
  gap: clamp(46px,6vw,100px);
  align-items: start;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-column { position: relative; align-self: stretch; min-width: 0; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-sticky {
  position: sticky;
  top: clamp(84px,10vh,130px);
  height: var(--ssft-media-height);
  min-height: 420px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: var(--ssft-radius);
  background: #111;
  overflow: hidden;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-panel {
  position: absolute;
  inset: 0;
  visibility: hidden;
  opacity: 0;
  transform: scale(1.025);
  transition: opacity .7s cubic-bezier(.625,.05,0,1), transform 1.2s cubic-bezier(.625,.05,0,1), visibility 0s linear .7s;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-panel.is-active {
  visibility: visible;
  opacity: 1;
  transform: scale(1);
  transition-delay: 0s;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-panel > img:not(.ss-facility-tour__logo),
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-panel > video,
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-media > img:not(.ss-facility-tour__logo),
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-media > video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__placeholder {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 70% 25%,rgba(10,159,232,.34),transparent 32%),linear-gradient(135deg,#080808,#202020);
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__logo {
  position: absolute;
  top: 28px;
  right: 28px;
  z-index: 2;
  width: auto;
  max-width: 115px;
  max-height: 74px;
  object-fit: contain;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-caption {
  position: absolute;
  right: 24px;
  bottom: 22px;
  left: 24px;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 18px;
  color: #fff;
  border-top: 1px solid rgba(255,255,255,.35);
  text-shadow: 0 1px 18px rgba(0,0,0,.7);
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-caption span { font-size: 10px; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-caption strong { font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .05em; }

.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapters { min-width: 0; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter {
  display: flex;
  min-height: var(--ssft-chapter-height);
  flex-direction: column;
  justify-content: center;
  padding: 70px 0;
  color: rgba(255,255,255,.68);
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter:first-child { padding-top: 0; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter-number {
  --ssft-marker: rgba(255,255,255,.35);
  --ssft-marker-active: #f2ff3b;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 36px;
  color: var(--ssft-marker);
  transition: color .4s;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter.is-active .ss-facility-tour__chapter-number { color: var(--ssft-marker-active); }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter-number span { font-size: 11px; font-weight: 650; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter-number i {
  display: block;
  width: 54px;
  height: 1px;
  background: currentColor;
  transform-origin: left;
  transform: scaleX(.35);
  transition: transform .5s cubic-bezier(.625,.05,0,1);
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter.is-active .ss-facility-tour__chapter-number i { transform: scaleX(1); }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter-title {
  max-width: 630px;
  margin: 0 0 22px;
  color: #fff;
  font-size: clamp(40px,4.2vw,66px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.045em;
  overflow-wrap: anywhere;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter-description { max-width: 610px; font-size: 17px; line-height: 1.58; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter-description p { margin: 0; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__features {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 11px 22px;
  max-width: 620px;
  margin: 28px 0 0;
  padding: 24px 0 0;
  border-top: 1px solid rgba(255,255,255,.16);
  list-style: none;
}
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__features li { display: flex; gap: 9px; font-size: 14px; line-height: 1.4; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__feature-mark { color: #f2ff3b; }
.elementor-widget-saen-sport-facility-tour .ss-facility-tour__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 34px; }

.elementor-widget-saen-sport-facility-tour .btn-animate-chars {
  --ssft-btn-text: #fff;
  --ssft-btn-bg: transparent;
  --ssft-btn-border: #fff;
  --ssft-btn-hover-text: #050505;
  --ssft-btn-hover-bg: #f2ff3b;
  --ssft-btn-hover-border: #f2ff3b;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 16px 22px;
  color: var(--ssft-btn-text)!important;
  background: transparent!important;
  border: 1px solid var(--ssft-btn-border)!important;
  font-size: 11px;
  font-weight: 650;
  line-height: 1;
  text-transform: uppercase;
  transition: color .4s cubic-bezier(.625,.05,0,1), border-color .4s cubic-bezier(.625,.05,0,1);
}
.elementor-widget-saen-sport-facility-tour .btn-animate-chars > * { position: relative; z-index: 1; }
.elementor-widget-saen-sport-facility-tour .btn-animate-chars__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: var(--ssft-btn-bg);
  transition: inset .6s cubic-bezier(.625,.05,0,1), background .4s;
}
.elementor-widget-saen-sport-facility-tour .btn-animate-chars__text { display: inline-block; overflow: hidden; white-space: nowrap; line-height: 1.3; }
.elementor-widget-saen-sport-facility-tour .btn-animate-chars__text span {
  position: relative;
  display: inline-block;
  text-shadow: 0 1.3em currentColor;
  transform: translateY(0) rotate(.001deg);
  transition: transform .6s cubic-bezier(.625,.05,0,1);
}
.elementor-widget-saen-sport-facility-tour .btn-animate-chars svg { width: 16px; transition: transform .6s cubic-bezier(.625,.05,0,1); }
.elementor-widget-saen-sport-facility-tour .btn-animate-chars:hover,
.elementor-widget-saen-sport-facility-tour .btn-animate-chars:focus-visible {
  color: var(--ssft-btn-hover-text)!important;
  border-color: var(--ssft-btn-hover-border)!important;
}
.elementor-widget-saen-sport-facility-tour .btn-animate-chars:hover .btn-animate-chars__bg,
.elementor-widget-saen-sport-facility-tour .btn-animate-chars:focus-visible .btn-animate-chars__bg { inset: .125em; background: var(--ssft-btn-hover-bg); }
.elementor-widget-saen-sport-facility-tour .btn-animate-chars:hover .btn-animate-chars__text span,
.elementor-widget-saen-sport-facility-tour .btn-animate-chars:focus-visible .btn-animate-chars__text span { transform: translateY(-1.3em) rotate(.001deg); }
.elementor-widget-saen-sport-facility-tour .btn-animate-chars:hover svg { transform: translateX(3px); }

.elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile { display: none; }

@media (max-width: 1024px) {
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__desktop { grid-template-columns: 52% minmax(0,1fr); gap: 38px; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__features { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour {
    padding: 70px 16px 76px;
    overflow-x: clip;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__intro {
    max-width: 100%;
    margin-bottom: 34px;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__eyebrow { margin-bottom: 10px; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__heading {
    max-width: 12ch;
    font-size: clamp(38px,11.4vw,54px);
    line-height: .98;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__description {
    max-width: 34em;
    margin-top: 18px;
    font-size: 16px;
    line-height: 1.52;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__desktop { display: none; }

  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile {
    position: relative;
    display: block;
    width: 100%;
    overflow: visible;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile.is-swiper-ready { overflow: hidden; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-track {
    display: flex;
    align-items: stretch;
    gap: var(--ssft-mobile-gap);
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 0 4px;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 0;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    touch-action: pan-x pan-y;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-track::-webkit-scrollbar { display: none; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile.swiper-initialized .ss-facility-tour__mobile-track,
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile.is-swiper-ready .ss-facility-tour__mobile-track {
    gap: 0;
    overflow: visible;
    scroll-snap-type: none;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-card {
    position: relative;
    display: flex;
    flex: 0 0 var(--ssft-mobile-slide-basis, 92.6%);
    width: auto;
    height: auto;
    min-width: 0;
    flex-direction: column;
    color: rgba(255,255,255,.68);
    background: #151515;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: var(--ssft-radius);
    overflow: hidden;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    box-shadow: 0 18px 60px rgba(0,0,0,.16);
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile.swiper-initialized .ss-facility-tour__mobile-card,
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile.is-swiper-ready .ss-facility-tour__mobile-card {
    flex-basis: auto;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-media {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    height: var(--ssft-mobile-media-height);
    min-height: 0;
    background: #111;
    overflow: hidden;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-media::after {
    content: "";
    position: absolute;
    inset: 45% 0 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(180deg,transparent,rgba(0,0,0,.48));
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-media .ss-facility-tour__logo {
    top: 18px;
    right: 18px;
    max-width: 92px;
    max-height: 54px;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-caption {
    position: absolute;
    right: 18px;
    bottom: 16px;
    left: 18px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    text-shadow: 0 2px 18px rgba(0,0,0,.72);
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-caption span {
    flex: 0 0 auto;
    font-size: 10px;
    font-weight: 650;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-caption strong {
    min-width: 0;
    overflow: hidden;
    font-size: 11px;
    font-weight: 650;
    letter-spacing: .055em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    flex-direction: column;
    padding: 24px 20px 22px;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .ss-facility-tour__chapter-number {
    margin-bottom: 20px;
    color: var(--ssft-marker-active);
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .ss-facility-tour__chapter-number i { transform: scaleX(1); }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .ss-facility-tour__chapter-eyebrow { margin-bottom: 9px; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .ss-facility-tour__chapter-title {
    min-height: var(--ssft-mobile-title-min);
    margin-bottom: 16px;
    font-size: clamp(31px,8.7vw,38px);
    line-height: 1.02;
    letter-spacing: -.04em;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .ss-facility-tour__chapter-description {
    min-height: var(--ssft-mobile-description-min);
    font-size: 15px;
    line-height: 1.52;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .ss-facility-tour__features {
    min-height: var(--ssft-mobile-features-min);
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 22px;
    padding-top: 18px;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .ss-facility-tour__features li { font-size: 13px; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .ss-facility-tour__actions {
    flex-direction: column;
    margin-top: auto;
    padding-top: 26px;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy .btn-animate-chars {
    width: 100%;
    min-height: 50px;
  }

  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-nav {
    display: grid;
    grid-template-columns: 42px minmax(70px,1fr) auto 42px;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-arrow {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    padding: 0;
    color: #fff;
    background: transparent;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 999px;
    appearance: none;
    cursor: pointer;
    transition: opacity .25s ease, border-color .25s ease, background .25s ease;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-arrow:hover,
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-arrow:focus-visible {
    color: #050505;
    background: #f2ff3b;
    border-color: #f2ff3b;
    outline: none;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-arrow[disabled] { opacity: .28; cursor: default; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-arrow svg { width: 17px; height: 17px; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-progress {
    position: relative;
    height: 1px;
    background: rgba(255,255,255,.18);
    overflow: hidden;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-progress i {
    position: absolute;
    inset: 0 auto 0 0;
    width: 100%;
    background: #f2ff3b;
    transform: scaleX(var(--ssft-mobile-progress, .2));
    transform-origin: left center;
    transition: transform .4s cubic-bezier(.625,.05,0,1);
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-count {
    display: flex;
    align-items: baseline;
    gap: 5px;
    color: rgba(255,255,255,.58);
    font-size: 10px;
    font-weight: 650;
    letter-spacing: .06em;
  }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-count [data-ssft-mobile-current] { color: #fff; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-count em { font-style: normal; opacity: .45; }
}

@media (max-width: 390px) {
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour { padding-inline: 14px; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-copy { padding: 22px 18px 20px; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-nav { grid-template-columns: 40px minmax(54px,1fr) auto 40px; gap: 10px; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-arrow { width: 40px; height: 40px; }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__grain { animation: none!important; }
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__media-panel,
  .elementor-widget-saen-sport-facility-tour .btn-animate-chars *,
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__chapter-number *,
  .elementor-widget-saen-sport-facility-tour .ss-facility-tour__mobile-progress i { transition: none!important; }
}
