/* Flying Safari — Google reviews slider (Elementor-safe) */
.fs-gr{
  --fs-gr-ink:#12141a;
  --fs-gr-muted:#5c6570;
  --fs-gr-line:rgba(18,20,26,.1);
  --fs-gr-sand:#f4f0e8;
  --fs-gr-gold:#a8844a;
  --fs-gr-card:#fff;
  font-family:Montserrat,system-ui,sans-serif;
  color:var(--fs-gr-ink);
  background:var(--fs-gr-sand);
  width:100%;
  clear:both;
  position:relative;
  z-index:2;
  isolation:isolate;
}
.fs-gr *,
.fs-gr *::before,
.fs-gr *::after{box-sizing:border-box}
.fs-gr__wrap{
  width:min(1120px,92%);
  margin:0 auto;
  padding:clamp(2.75rem,7vw,4.25rem) 0 clamp(2.25rem,5vw,3.25rem);
}
.fs-gr__head{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem 1.25rem;
  margin-bottom:0;
}
.fs-gr__head h2{
  margin:0 !important;
  padding:0 !important;
  font-family:"Barlow Condensed",Montserrat,sans-serif !important;
  font-size:clamp(1.85rem,4.2vw,2.75rem) !important;
  font-weight:800 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
  line-height:1 !important;
  color:var(--fs-gr-ink) !important;
  background:none !important;
  border:0 !important;
}
.fs-gr__lead{
  margin:.6rem 0 0 !important;
  color:var(--fs-gr-muted) !important;
  line-height:1.55 !important;
  max-width:42ch;
  font-size:.95rem !important;
  font-weight:500 !important;
}
.fs-gr__rating{
  display:inline-flex !important;
  align-items:center;
  gap:.5rem;
  padding:.55rem .9rem !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid var(--fs-gr-line) !important;
  box-shadow:0 8px 20px rgba(18,20,26,.05) !important;
  font-size:.82rem !important;
  font-weight:600 !important;
  color:var(--fs-gr-ink) !important;
  text-decoration:none !important;
  white-space:nowrap;
  line-height:1.2 !important;
  min-height:0 !important;
  width:auto !important;
}
.fs-gr__rating:hover{border-color:rgba(168,132,74,.55) !important;color:var(--fs-gr-ink) !important}
.fs-gr__rating .score{font-size:1.05rem;font-weight:800}
.fs-gr__rating .stars{color:#f4b400;letter-spacing:.05em;font-size:.9rem}
.fs-gr__rating .via{color:var(--fs-gr-muted);font-weight:500}

.fs-gr__slider{position:relative;margin-top:1.5rem}
.fs-gr__track{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  gap:1rem !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  padding:4px 2px 14px !important;
  margin:0 !important;
  list-style:none !important;
  scrollbar-width:none;
  width:100% !important;
  max-width:100% !important;
}
.fs-gr__track::-webkit-scrollbar{display:none !important;width:0;height:0}

.fs-gr__slide{
  flex:0 0 min(320px, 85vw) !important;
  width:min(320px, 85vw) !important;
  max-width:min(320px, 85vw) !important;
  scroll-snap-align:start;
  min-width:0 !important;
  display:block !important;
  float:none !important;
  position:relative !important;
}
@media (min-width:900px){
  .fs-gr__slide{
    flex-basis:calc((100% - 2rem) / 3) !important;
    width:calc((100% - 2rem) / 3) !important;
    max-width:calc((100% - 2rem) / 3) !important;
  }
}

.fs-gr__card{
  background:var(--fs-gr-card) !important;
  border-radius:16px !important;
  border:1px solid var(--fs-gr-line) !important;
  box-shadow:0 12px 28px rgba(18,20,26,.06) !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  min-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
  width:100% !important;
}
.fs-gr__media{
  aspect-ratio:16/10;
  background:#e8e2d8;
  overflow:hidden;
  width:100% !important;
  flex:0 0 auto;
}
.fs-gr__media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  max-width:none !important;
}
.fs-gr__body{
  padding:1.15rem 1.15rem 1.2rem !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  gap:0;
}
.fs-gr__stars{
  color:#f4b400 !important;
  letter-spacing:.08em;
  font-size:.95rem !important;
  margin:0 0 .65rem !important;
  line-height:1 !important;
}
.fs-gr__card p,
.fs-gr__quote{
  margin:0 !important;
  padding:0 !important;
  font-size:.9rem !important;
  line-height:1.55 !important;
  color:#333 !important;
  flex:1 1 auto;
  font-weight:500 !important;
  font-family:Montserrat,system-ui,sans-serif !important;
}
.fs-gr__footer{
  display:flex !important;
  align-items:center !important;
  gap:.75rem !important;
  margin-top:1.05rem !important;
  padding-top:.9rem !important;
  border-top:1px solid var(--fs-gr-line) !important;
}
.fs-gr__avatar{
  width:42px !important;
  height:42px !important;
  border-radius:50% !important;
  object-fit:cover !important;
  flex-shrink:0 !important;
  background:#ddd !important;
  display:block !important;
  margin:0 !important;
  border:0 !important;
}
.fs-gr__who{
  margin:0 !important;
  font-size:.8rem !important;
  font-weight:700 !important;
  color:var(--fs-gr-ink) !important;
  line-height:1.25 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}
.fs-gr__src{
  margin:.18rem 0 0 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:.35rem !important;
  font-size:.7rem !important;
  color:var(--fs-gr-muted) !important;
  font-weight:600 !important;
}
.fs-gr__src svg{width:13px;height:13px;display:block;flex-shrink:0}

.fs-gr__nav{
  display:flex !important;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin-top:.15rem;
  min-height:40px;
}
.fs-gr__arrows{display:flex;gap:.45rem;align-items:center}
.fs-gr__btn{
  -webkit-appearance:none !important;
  appearance:none !important;
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  max-width:38px !important;
  max-height:38px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:50% !important;
  border:1px solid var(--fs-gr-line) !important;
  background:#fff !important;
  color:var(--fs-gr-ink) !important;
  cursor:pointer;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 6px 16px rgba(18,20,26,.06) !important;
  font-size:0 !important;
  line-height:0 !important;
  text-indent:0 !important;
  float:none !important;
}
.fs-gr__btn:disabled{opacity:.35;cursor:default}
.fs-gr__btn svg{width:16px;height:16px;display:block}

.fs-gr__dots{
  display:flex !important;
  gap:6px !important;
  align-items:center !important;
  flex-wrap:wrap;
  min-height:10px;
}
/* spans — never inherit Elementor button styles */
.fs-gr__dot{
  display:inline-block !important;
  width:6px !important;
  height:6px !important;
  min-width:6px !important;
  min-height:6px !important;
  max-width:6px !important;
  max-height:6px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:rgba(18,20,26,.2) !important;
  box-shadow:none !important;
  cursor:pointer;
  flex:0 0 6px !important;
  line-height:0 !important;
  font-size:0 !important;
  vertical-align:middle;
  transition:width .15s ease, background .15s ease;
}
.fs-gr__dot.is-active{
  background:var(--fs-gr-gold) !important;
  width:16px !important;
  max-width:16px !important;
  border-radius:999px !important;
}

.fs-gr__loading,
.fs-gr__empty{
  width:100%;
  text-align:center;
  color:var(--fs-gr-muted);
  padding:2rem 1rem;
  margin:0;
  font-size:.95rem;
}

.fs-gr--goa{background:#fff6f0}
.fs-gr--pune{background:#f3efe7}
