.slider-navigation-w { display: none !important; }              /* broad */
.os-slide-shade { background-color: rgba(255,255,255,0.4) !important; }
.tptn_counter,
[id^="tptn_counter_"] { display: none !important; }
footer .site-info,
footer .copyright,
.footer-bottom,
.site-footer .credits {
  display: none !important;
}
.features-grid .feature-box {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  margin: 15px 0;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  border-top: 4px solid #31aa6e; /* Accent line */
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  text-align: left;
}

.features-grid .feature-box:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.1);
}

.features-grid .feature-box h4 {
  font-family: "Poppins", sans-serif;
  font-size: 1.1rem;
  font-weight: 600;
  color: #31aa6e;
  margin-bottom: 10px;
}

.features-grid .feature-box p {
  font-family: "Open Sans", sans-serif;
  font-size: 0.95rem;
  line-height: 1.5;
  color: #333;
  margin: 0;
}
/* ===========================
   TimeSight Testimonials
   =========================== */

/* Wrapper: flexible row that wraps into columns */
.ts-testimonials {
  margin: 1.5rem auto;
  max-width: 1100px;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  padding: 0 1rem;
}

/* Each testimonial card */
.ts-testimonials > figure {
  flex: 1 1 280px;   /* min width 280px, auto-wrap */
  position: relative;
  margin: 0;
  padding: 1.1rem;
  background: #f6fbf8;               /* Softer card colour */
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 1px 0 rgba(0,0,0,.03);
  border-radius: 0;                  /* Square corners */
  overflow: hidden;
  text-align: center;
}

/* Accent line at the top of each card */
.ts-testimonials > figure::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: #31aa6e;
}

/* Decorative opening quote mark */
.ts-testimonials > figure::after {
  content: "“";
  position: absolute;
  top: .4rem; left: .7rem;
  font-size: clamp(40px, 8vw, 72px);
  line-height: 1;
  font-weight: 700;
  color: rgba(49,170,110,.08);
  pointer-events: none;
}

/* Main quote text */
.ts-testimonials blockquote {
  margin: 0;
  font-size: clamp(1rem, 1.1vw + .7rem, 1.15rem);
  line-height: 1.45;
  color: #16211f;
  font-weight: 500;
  text-align: center;
}

/* Name / attribution */
.ts-testimonials figcaption {
  margin-top: .7rem;
  font-size: clamp(.9rem, .5vw + .7rem, 1rem);
  color: #2e6d57;
  text-align: center;
}

/* Small phones: reduce padding */
@media (max-width: 380px) {
  .ts-testimonials > figure { padding: .9rem; }
}
/* Smooth scroll for in-page anchors */
html { scroll-behavior: smooth; }

/* Respect reduced-motion settings */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
/* Offset for the contact section */
#contact { scroll-margin-top: 110px; }  /* tweak 110 to match your header height */
/* Kill common preloaders/overlays */
.preloader, #preloader, .site-preloader, .loader, .page-loading,
.pace, .animsition-loading, .is-loading, .loading-overlay { 
  display: none !important;
}

/* Force visible in case rows are hidden until JS init */
html, body, .site, .container, .content, .vc_row, .wpb_row, .wpb_content_element,
.hero, .hero-content {
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  transform: none !important;
  display: block !important;
}

/* WPBakery animation classes that keep opacity:0 before JS */
.wpb_animate_when_almost_visible, .wpb_start_animation, .vc_hidden, .wpb_is_hidden {
  opacity: 1 !important; visibility: visible !important; transform: none !important;
}

/* Some themes hide body until .loaded gets added */
html.js body, body:not(.loaded) { opacity: 1 !important; }
/* Reset visibility for our two slider rows only */
.slider--desktop, .slider--mobile { display: none !important; }

/* Show desktop/laptop slider on >= 992px (Bootstrap-style “lg” up) */
@media (min-width: 992px) {
  .slider--desktop { display: block !important; }
}

/* Show mobile/tablet slider on < 992px */
@media (max-width: 991.98px) {
  .slider--mobile { display: block !important; }
}

/* If your laptop breakpoint should be higher (e.g., hide on < 1200px), use this instead:
@media (min-width: 1200px) { .slider--desktop { display:block !important; } }
@media (max-width: 1199.98px) { .slider--mobile { display:block !important; } }
*/