/* ===== Variables ===== */
:root{
  --brand:#ff6a00;         /* orange */
  --brand-2:#0d6efd;       /* bootstrap blue */
  --dark:#122036;
  --muted:#6c7a91;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, sans-serif;
  color:#243043;
}

.section{padding:50px 0}
.section-title{
  font-family:"Teko", sans-serif;
  letter-spacing:.5px;
  font-weight:700;
  font-size:clamp(28px,4vw,42px);
  position:relative;
  text-align: center !important;
  
  
}
.section-title::after{
  content:"";
  display:block;
  width:150px;height:4px;
  background:linear-gradient(90deg,var(--brand),var(--brand-2));
  border-radius:2px;margin-top:10px;
  place-self: center;
}

/* ===== Topbar ===== */
.topbar{background:linear-gradient(90deg,var(--brand) 0%, var(--brand-2) 100%)}
.topbar a{ text-decoration:none }

/* ===== Navbar ===== */
.brand-box{
  display:inline-grid;place-items:center;
  width:44px;height:44px;border-radius:10px;
  font-weight:800;
  background:linear-gradient(135deg,var(--brand),#ff9452);
  color:#fff; font-family:"Teko"; font-size:26px; letter-spacing:.5px;
  box-shadow:0 6px 14px rgba(255,106,0,.35);
}
.brand-box-sm{width:38px;height:38px;font-size:22px}
.brand-text{font-family:"Poppins"; 
  font-size:3rem; 
  letter-spacing:.5px;
  font-style: italic;
}
.navbar .nav-link{font-weight:500}
.navbar .btn-brand{padding:.45rem .9rem}

/* Sticky shrink */
.navbar.is-scrolled{box-shadow:0 10px 30px rgba(17,27,46,.08)}
.navbar.is-scrolled .navbar-brand .brand-box{transform:scale(.92)}

/* ===== Buttons ===== */
.btn-brand{
  --bs-btn-color:#fff; --bs-btn-bg:var(--brand);
  --bs-btn-border-color:var(--brand);
  --bs-btn-hover-bg:#ff7f26; --bs-btn-hover-border-color:#ff7f26;
  --bs-btn-focus-shadow-rgb:255,106,0;
}

/* ===== Hero ===== */
.hero .hero-slide{min-height:75vh; position:relative; background-size:cover;background-position:center}
.hero .overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.35))}
.hero .hero-caption{max-width:760px; padding-top: 55px; animation:fadeUp .8s ease both}
@keyframes fadeUp{from{opacity:0; transform:translateY(12px)}to{opacity:1; transform:none}}
.bg-1{background-image:url('../images/banner-1.jpg')}
.bg-2{background-image:url('../images/banner-2.jpg')}
.bg-3{background-image:url('../images/banner-3.jpg')}

/* ===== About ===== */
.about-badge{
  display:inline-block;padding:.35rem .7rem;border-radius:999px;
  background:rgba(13,110,253,.1); color:var(--brand-2); font-weight:600; font-size:.9rem
}
.about-cards{
  display:grid;grid-template-columns:repeat(2,1fr);gap:14px
}
.about-card{
  background:#fff;border-radius:16px;padding:22px;
  box-shadow:0 8px 26px rgba(17,27,46,.06); transition:.25s;
}
.about-card:hover{ transform:translateY(-4px); box-shadow:0 14px 34px rgba(17,27,46,.10)}
.about-card i{font-size:28px;background:linear-gradient(135deg,var(--brand-2),var(--brand));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.about-card h5{margin:.35rem 0 .25rem}

/* ===== Service Cards ===== */
.service-card{border:0;border-radius:18px;padding:24px;box-shadow:0 6px 22px rgba(17,27,46,.07)}
.service-card .icon{
  width:56px;height:56px;border-radius:14px;display:grid;place-items:center;margin-bottom:12px;
  background:linear-gradient(135deg,rgba(13,110,253,.12), rgba(255,106,0,.12));
}
.service-card .icon i{font-size:26px;color:var(--brand)}
.service-card h5{font-weight:700}

/* ==== Service cards with image & rotating corner icon ==== */
.service-card{ border:0; border-radius:18px; box-shadow:0 6px 22px rgba(17,27,46,.07); overflow:hidden; }
.service-media{ position:relative; aspect-ratio: 4/3; background:#eef3ff; }
.service-media img{
  width:100%; height:100%; object-fit:cover; display:block;
  transition: transform .5s ease;
}
.service-card:hover .service-media img{ transform:scale(1.06); }

.svc-icon{
  position:absolute; top:10px; right:10px;
  width:52px; height:52px; border-radius:14px;
  display:grid; place-items:center;
  background:linear-gradient(135deg, var(--brand-2), var(--brand));
  color:#fff; box-shadow:0 10px 18px rgba(17,27,46,.18);
  transition: transform .6s ease;
}
.svc-icon i{ font-size:24px; line-height:1; }

.service-card:hover .svc-icon{ transform: rotate(360deg) scale(1.05); }

/* spacing for content after image */
.service-card .p-3 h5{ font-weight:700; }


/* ===== Why Us ===== */
.why-item{
  padding:22px;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(17,27,46,.07);
  transition:.25s;height:100%;
}
.why-item i{font-size:30px;color:var(--brand)}
.why-item h6{margin:.5rem 0 .25rem;font-weight:700}
.why-item:hover{transform:translateY(-4px)}

/* ===== Achievements ===== */
.bg-gradient-brand{
  background:linear-gradient(90deg,var(--brand-2) 0%, #1a4df8 50%, var(--brand) 100%);
}
.counter .num{
  font-family:"Teko";font-size:clamp(38px,5vw,60px);font-weight:700;line-height:1;
}
.counter .label{opacity:.9}

/* ===== Gallery ===== */
#galleryGrid img{width:100%;height:230px;object-fit:cover;border-radius:14px}
.gallery-item{position:relative;overflow:hidden}
.gallery-item::after{
  content:"";position:absolute;inset:0;border-radius:14px;box-shadow:inset 0 0 0 0 rgba(255,255,255,.7);
  transition:.35s;
}
.gallery-item:hover::after{box-shadow:inset 0 0 0 6px rgba(255,255,255,.85)}
.gallery-badge{
  position:absolute;left:10px;top:10px;background:rgba(0,0,0,.55);color:#fff;border-radius:999px;
  font-size:.75rem;padding:.15rem .5rem
}

/* ===== Contact ===== */
.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.contact-card{
  background:#fff;border-radius:12px;padding:12px;box-shadow:0 6px 18px rgba(17,27,46,.06);font-weight:500
}
.contact-card i{color:var(--brand);margin-right:8px}
.map-wrap iframe{border:0}


/* ===== Footer ===== */
.footer{background:#0f1b2f}
.footer-title{font-weight:700;margin-bottom:.75rem}
.footer-links li{margin:.35rem 0}
.footer-links a{color:#d5def1;text-decoration:none}
.footer-links a:hover{color:#fff}
.footer-contact li{margin:.4rem 0}
.footer-bottom{background:#0a1424;color:#9fb0cf}
.footer .badge{font-weight:600}

/* ===== Helpers ===== */
.vr{opacity:.35}
.shadow-sm{box-shadow:0 .125rem .35rem rgba(17,27,46,.08)!important}

/* ===== Responsive ===== */
@media (max-width: 991.98px){
  .hero .hero-slide{min-height:62vh}
}
@media (max-width: 575.98px){
  #galleryGrid img{height:180px}
  .contact-cards{grid-template-columns:1fr}
}


.about-section-title{
      font-family: "Teko", sans-serif;
    letter-spacing: .5px;
    font-weight: 700;
    font-size: clamp(28px, 4vw, 42px);
    position: relative;
    /* text-align: center !important; */
}

.btn-brand i {
  font-size: 1rem;
  vertical-align: middle;
}


.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    background-image: var(--bs-navbar-toggler-icon-bg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
}


/* Logo scales by height, keeps aspect ratio */
.brand-logo { height: 65px; width: auto; display: block; }

/* Remove odd focus ring / thick border on hamburger */
.navbar-toggler { border: 0; outline: 0; }
.navbar-toggler:focus { box-shadow: none; }

/* Optional: tighten nav link spacing on mobile */
@media (max-width: 991.98px) {
  #navMenu .nav-link { padding: .5rem 0; }
}


.floating-buttons {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: flex;
  flex-direction: column;
  gap: 15px;
  z-index: 1000;
}

.floating-btn {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 24px;
  text-decoration: none;
  box-shadow: 0 4px 6px rgba(0,0,0,0.3);
  transition: transform 0.2s;
  margin-bottom:100px;
}

.floating-btn:hover {
  transform: scale(1.1);
}

.call-btn {
  background-color: #28a745; /* Green for call */
}

.whatsapp-btn {
  background-color: #25D366; /* WhatsApp green */
}






/* Container */
.trusted-brands {
  padding: 50px 20px;
  background-color: #f8f9fa; /* Light gray background */
  text-align: center;
}

.section-heading {
  font-size: 2rem;
  margin-bottom: 40px;
  color: #333;
}

/* Brand Boxes Container */
.brand-boxes {
  display: flex;
  justify-content: center;
  gap: 50px;
  flex-wrap: wrap; /* For responsiveness */
}

/* Individual Brand Box */
.brand-box {
  width: 200px;
  height: 120px;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s;
}

.brand-box:hover {
  transform: translateY(-5px);
}

.brand-box img {
  max-width: 80%;
  max-height: 80%;
  object-fit: contain;
}

.bb{
  background: #fff ;
}



@media (max-width: 991.98px){
 .brand-logo { height: 58px; width: auto; display: block; }
 .brand-text{font-family:"Poppins"; 
  font-size:2rem; 
  letter-spacing:.5px;
  font-style: italic;
}
}
@media (max-width: 575.98px){
.brand-logo { height: 52px; width: auto; display: block; }
.brand-text{font-family:"Poppins"; 
  font-size:1.6rem; 
  letter-spacing:.5px;
  font-style: italic;
}
}


.footer-brand-text {
    font-family: "Poppins";
    font-size: 2rem;
    letter-spacing: .5px;
    font-style: italic;
}
@media(max-width:991px)
{
	.ds-nn-991{
		display:none!important;
	}
	.jf-centr{
		justify-content:center!important;
	}
}

@media(max-width:768px)
{
.sticky-top{
	position:relative
}	
}
@media(max-width:420px)
{
	.ds-nn-420{
		display:none!important
	}
	.about-cards{
		display:block;
	}
}