:root {
  /* Fix inconsistent RGB var (used in rgba() contexts) */
  --Freshflow-primary-rgb: var(--Freshflow-base-rgb);

  /* Design tokens */
  --smp-radius-lg: 18px;
  --smp-radius-md: 14px;
  --smp-shadow-lg: 0 18px 55px rgba(3, 4, 28, 0.12);
  --smp-shadow-md: 0 10px 35px rgba(3, 4, 28, 0.10);
}

html {
  scroll-behavior: smooth;
}

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::selection {
  background: rgba(var(--Freshflow-base-rgb), 0.18);
}

/* Better anchor jumps with sticky header */
section[id] {
  scroll-margin-top: 110px;
}

/* Links: cleaner micro-interactions */
a {
  transition: color 180ms ease, opacity 180ms ease, text-decoration-color 180ms ease;
}

/* Section titles: more modern scale + spacing */
.section-title__title {
  font-size: clamp(30px, 2.2vw, 44px);
  line-height: 1.15;
  letter-spacing: -0.02em;
}

/* Constrain long subtitle text for readability (centered sections) */
.section-title__text {
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
  color: rgba(var(--Freshflow-black-rgb), 0.70);
}

/* Buttons: a bit more premium */
.thm-btn {
  border-radius: var(--smp-radius-md);
  box-shadow: 0 12px 28px rgba(var(--Freshflow-base-rgb), 0.18);
  transform: translateY(0);
}

.thm-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 18px 40px rgba(var(--Freshflow-black-rgb), 0.18);
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .thm-btn { transition: none !important; }
  .thm-btn::after { transition: none !important; }
}

/* Sticky header: translucent + blur */
.stricky-header {
  background-color: rgba(255, 255, 255, 0.86);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(var(--Freshflow-black-rgb), 0.06);
}

/* Replace template decorative shape backgrounds with industrial patterns */
.main-slider__shape-bg,
.services-two__shape-bg-1,
.services-two__shape-bg-2,
.services-two__shape-bg-3,
.project-two__bg-shape,
.before-after-two__bg-shape,
.testimonial-two__shape-bg-1,
.pricing-two__shape-bg,
.blog-two__shape-bg,
.blog-two__shape-bg-2 {
  background-image: url("../images/patterns/blueprint-grid.svg") !important;
  background-repeat: repeat !important;
  background-size: auto !important;
  mix-blend-mode: normal !important;
}

.services-two__shape-bg-2,
.blog-two__shape-bg-2,
.testimonial-two__shape-bg-1 {
  background-image: url("../images/patterns/industrial-dots.svg") !important;
}

/* Hide template floating "sparkle/bubble" shape images */
.about-two__shape-1,
.about-two__shape-2,
.about-two__shape-3,
.services-two__shape-1,
.services-two__shape-2,
.why-choose-two__shape-1,
.why-choose-two__shape-2,
.why-choose-two__shape-3,
.project-two__shape-1,
.project-two__shape-2,
.process-one__shape-1,
.process-one__shape-2,
.contact-two__shape-1,
.contact-two__shape-2,
.testimonial-two__shape-1,
.testimonial-two__shape-2,
.team-two__shape-1,
.team-two__shape-2,
.pricing-two__shape-2,
.pricing-two__shape-3,
.faq-one__shape-1 {
  display: none !important;
}

/* Improve cards across the site (where they already exist) */
.services-two__services-list li,
.pricing-two__single,
.blog-two__single,
.team-two__buttons,
.team-two__tabs-content-box,
.why-choose-two__single,
.project-two__single {
  border-radius: var(--smp-radius-lg);
}

/* Services visual: smooth image swap */
#servicesPreviewImg {
  transition: opacity 180ms ease;
}

/* Floating WhatsApp button (left) */
.smp-whatsapp-float {
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 9999;

  display: inline-flex;
  align-items: center;
  gap: 10px;

  padding: 12px 14px;
  border-radius: 999px;

  background: linear-gradient(135deg, #25D366 0%, #1DA851 100%);
  color: #fff;
  text-decoration: none;

  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);
  transform: translateY(0);
  transition: transform 160ms ease, box-shadow 160ms ease, filter 160ms ease;
}

.smp-whatsapp-float:hover,
.smp-whatsapp-float:focus-visible {
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.26);
  filter: saturate(1.05);
}

.smp-whatsapp-float__icon {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.14);
  font-size: 20px;
  line-height: 1;
}

.smp-whatsapp-float__text {
  font-weight: 800;
  font-size: 14px;
  letter-spacing: 0.01em;
}

@media (max-width: 575.98px) {
  .smp-whatsapp-float {
    padding: 12px;
  }
  .smp-whatsapp-float__text {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .smp-whatsapp-float {
    transition: none;
  }
  .smp-whatsapp-float:hover,
  .smp-whatsapp-float:focus-visible {
    transform: none;
  }
}

