:root{
  --rg-primary:#0d6efd; /* bootstrap primary */
  --rg-accent:#198754; /* green */
}
body{scroll-behavior:smooth;}
.hero{
  background: linear-gradient(135deg, rgba(13,110,253,.08), rgba(25,135,84,.08));
}
.badge-card img{max-height:48px; width:auto;}
.service-card{transition:transform .15s ease, box-shadow .15s ease;}
.service-card:hover{transform:translateY(-2px);}
.whatsapp-float{
  position:fixed; right:18px; bottom:18px; z-index:1030;
  border-radius:999px; padding:12px 14px;
  box-shadow:0 10px 25px rgba(0,0,0,.18);
}
.small-muted{font-size:.95rem; color:rgba(0,0,0,.65);}


/* --- Mobile & small screens improvements --- */
img { max-width: 100%; height: auto; }

.container { padding-left: 16px; padding-right: 16px; }

.card-img-top {
  width: 100%;
  height: 240px;
  object-fit: cover;
}

@media (max-width: 576px) {
  .container { padding-left: 14px; padding-right: 14px; }
  .display-4, .display-5, .display-6 { font-size: 1.8rem; }
  h1 { font-size: 1.7rem; }
  h2 { font-size: 1.35rem; }
  .lead { font-size: 1.05rem; }

  /* Make primary CTA buttons easy to tap */
  .btn-lg { padding: .8rem 1rem; font-size: 1rem; }
  .d-flex.flex-wrap.gap-2 > a { flex: 1 1 100%; }

  /* Give cards breathing room */
  .card { border-radius: 1rem; }
  .card-img-top { height: 180px; border-top-left-radius: 1rem; border-top-right-radius: 1rem; }

  /* Avoid horizontal scroll from long lines */
  body { overflow-x: hidden; }
}

/* If any table appears (e.g. prices/specs), keep it usable on phones */
.table { width: 100%; }
.table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }
