/* ===============================
   GLOBAL POLISH
================================ */
body{
  
   padding-top:95px; /* top-bar + navbar height */
}

/* ===============================
   TOP BAR PREMIUM
================================ */
.top-bar{
  background:linear-gradient(90deg,#0d6efd,#0a58ca);
  font-weight:600;
  position:fixed;
  top:0;
  width:100%;
  z-index:1045;
  transition:transform .35s ease;
}

/* hide on scroll */
.top-bar.hide{
  transform:translateY(-100%);
}




.top-social a{
  color:#fff;
  
  font-size:15px;
  width:32px;
  height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.15);
  transition:.3s;
}

.top-social a:hover{
  background:#ffb703;
  color:#000;
  transform:translateY(-2px);
}

/* platform colors on hover (optional) */
.top-social a:hover .fa-facebook-f{color:#1877f2}
.top-social a:hover .fa-instagram{color:#e1306c}
.top-social a:hover .fa-youtube{color:#ff0000}
.top-social a:hover .fa-whatsapp{color:#25d366}



/* ===============================
   NAVBAR PREMIUM
================================ */
.custom-navbar{
  background:linear-gradient(
    180deg,
    rgba(27,111,242,.95) 0%,
    rgba(13,94,219,.95) 100%
  );
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  padding:18px 0;
  top:32px;
  transition:all .35s ease;
  border-bottom:1px solid rgba(255,255,255,.15);
}


.custom-navbar.scrolled{
  top:0;
  background:linear-gradient(
    180deg,
    #0b3f9c 0%,
    #062c6f 100%
  );
  box-shadow:0 15px 35px rgba(0,0,0,.45);
}

.navbar-brand img{
  filter:drop-shadow(0 6px 14px rgba(0,0,0,.45));
  transition:.3s;
}

.custom-navbar.scrolled .navbar-brand img{
  transform:scale(.95);
}


.navbar-dark .nav-link{
  color:#eef3ff !important;
  font-weight:600;
  letter-spacing:.3px;
  position:relative;
  padding:6px 0;
}

.navbar-dark .nav-link::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:-10px;
  width:0;
  height:4px;
  background:#ffb703;
  border-radius:10px;
  transition:.35s;
  transform:translateX(-50%);
}

.navbar-dark .nav-link:hover::after,
.navbar-dark .nav-link.active::after{
  width:100%;
}

/* ===============================
   HERO SECTION PREMIUM
================================ */
.hero{
  background:linear-gradient(180deg,#000000 0%, #000000 70%, #0a56c7 100%);
  padding:60px 0 80px;
  color: white;
}

.hero h1{
  font-size:32px;
  font-weight:500;
  line-height:1.2;
}

.hero p{
  font-size:17px;
  opacity:.95;
}

/* CTA Button */
.hero .btn-warning{
  background:#ffb703;
  border:none;
  padding:14px 36px;
  font-weight:600;
  border-radius:8px;
  box-shadow:0 10px 25px rgba(255,183,3,.45);
}


/* ===============================
   HERO ICON BOX SECTION
================================ */
.service-highlight{
  margin-top:-110px;
  position:relative;
  z-index:10;
}
/* 🔹 MOBILE OVERFLOW FIX */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}

.hero .row{
  margin-left:0;
  margin-right:0;
}

.hero-img{
  max-width:100%;
  width:100%;
  height:auto;
}

.map-card iframe{
  width:100%;
  max-width:100%;
  display:block;
}

@media (max-width: 767px){
  .service-highlight{
    margin-top:0;
  }
}

@media (max-width: 575px){
  body{
    padding-top:120px;
  }
}


/* HERO SLIDER IMAGE */
.hero-img{
  max-height:420px;
  object-fit:contain;
  animation:float 4s ease-in-out infinite;
}

/* soft floating animation (premium feel) */
@keyframes float{
  0%{transform:translateY(0)}
  50%{transform:translateY(-10px)}
  100%{transform:translateY(0)}
}

/* carousel smooth */
.carousel-fade .carousel-item{
  transition:opacity .8s ease-in-out;
}


.highlight-box{
  padding:45px 30px;
  border-radius:16px;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
}

.icon-box{
  width:85px;
  height:85px;
  font-size:54px;
  background:linear-gradient(135deg,#0d6efd,#0a58ca);
}

/* ===============================
   SECTION PADDING (GLOBAL)
================================ */
.section-padding{
  padding:80px 0;
}

.section-padding h2{
  position:relative;
  padding-bottom:12px;
}

.section-padding h2::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:70px;
  height:4px;
  background:linear-gradient(90deg,#0d6efd,#ffc107);
  border-radius:2px;
}


/* medium devices (tablets) */
@media (max-width:991px){
  .section-padding{
    padding:60px 0;
  }
}

/* small devices (mobile) */
@media (max-width:575px){
  .section-padding{
    padding:45px 0;
  }
}


/* ===============================
   ABOUT + SECTION HEADINGS
================================ */
section h2{
  font-weight:800;
  color:#0b3f9c;
}

/* ===============================
   WHY CHOOSE US
================================ */
section .col-md-3 h1{
  font-size:42px;
}

section .col-md-3{
  padding:20px;
}

/* ===============================
   SERVICE CARDS PREMIUM
================================ */
.card{
  border:none;
  border-radius:16px;
  box-shadow:0 15px 35px rgba(0,0,0,.1);
  transition:.3s;
}

.card:hover{
  transform:translateY(-8px);
}

/* ===============================
   CONTACT SECTION
================================ */
#contact input,
#contact textarea{
  border-radius:8px;
}

/* ===============================
   PREMIUM FOOTER
================================ */
.footer{
  background:linear-gradient(
    180deg,
    #0b3f9c 0%,
    #062c6f 100%
  );
  color:#dbe6ff;
  position:relative;
  overflow:hidden;
}

/* soft glow top border */
.footer::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,#ffb703,#0d6efd);
}

/* footer logo */
.footer img{
  max-width:180px;
  filter:drop-shadow(0 10px 25px rgba(0,0,0,.4));
}

/* footer headings */
.footer h6{
  font-weight:700;
  letter-spacing:.5px;
  margin-bottom:15px;
}

/* footer links */
.footer ul li{
  margin-bottom:8px;
}

.footer ul li a{
  color:#dbe6ff;
  text-decoration:none;
  position:relative;
  padding-left:15px;
  transition:.3s;
}

.footer ul li a::before{
  content:'›';
  position:absolute;
  left:0;
  color:#ffb703;
}

.footer ul li a:hover{
  color:#ffb703;
  padding-left:20px;
}

/* call section */
.footer .btn-warning{
  padding:10px 22px;
  font-weight:600;
  border-radius:30px;
  box-shadow:0 10px 25px rgba(255,183,3,.45);
}

/* divider */
.footer hr{
  border-color:rgba(255,255,255,.15);
  margin:25px 0;
}

/* copyright */
.footer .text-center{
  font-size:14px;
  color:#b8c7ff;
}


.page-header{
  background:#0b3f9c;
}
.page-header h1{
  color:white;
}

.breadcrumb a{
  text-decoration:none;
  color:white;
  font-weight:500;
}

.breadcrumb-item.active{
  color:yellow;
}
.cta-section{
  background:linear-gradient(135deg,#111,#333);
}


.service-card{
  border-radius:20px;
  background:rgba(255,255,255,.85);
  backdrop-filter:blur(8px);
  transition:.4s ease;
  border:1px solid rgba(0,0,0,.06);
}

.service-card:hover{
  transform:translateY(-10px);
  box-shadow:0 25px 60px rgba(0,0,0,.15);
}

.service-card .fs-1{
  background:linear-gradient(135deg,#0d6efd,#ffc107);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}


.service-box{
  background:#fff;
  padding:25px;
  border-radius:20px;
  text-align:center;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
  transition:.4s;
}

.service-box:hover{
  transform:translateY(-10px);
}

.service-box img{
  width:250px;
  height:150px;
  margin-bottom:15px;
}

.service-link{
  text-decoration:none;
  font-weight:600;
  color:#0d6efd;
}

.trust-box{
  padding:25px;
  border-radius:18px;
  background:#fff;
  box-shadow:0 15px 35px rgba(0,0,0,.1);
}
.service-icon{
  font-size:48px;
  color:#0d6efd;
  display:inline-block;
  margin-bottom:15px;
}

.trust-icon{
  font-size:42px;
  color:#ffc107;
  margin-bottom:12px;
  display:inline-block;
}

.contact-box{
  background:#fff;
  padding:30px;
  border-radius:22px;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
}

.contact-item{
  display:flex;
  gap:15px;
  margin-bottom:20px;
}

.contact-item i{
  font-size:24px;
  color:#0d6efd;
}

.contact-item h6{
  margin:0;
  font-weight:600;
}

.contact-item p{
  margin:0;
  color:#555;
}

.contact-form-box{
  background:#fff;
  padding:35px;
  border-radius:22px;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
}

.contact-form-box .form-control{
  border-radius:12px;
  padding:12px;
}

.map-section iframe{
  display:block;
}
/* 🔹 CONTACT SECTION */
.contact-section {
  background: linear-gradient(135deg, #f8f9fa, #eef2f7);
}

/* 🔹 FORM CARD */
.contact-card {
  background: #fff;
  padding: 35px;
  border-radius: 15px;
  box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}

/* 🔹 INPUTS */
.custom-input {
  border-radius: 10px;
  padding: 12px 15px;
  border: 1px solid #e1e1e1;
  transition: all 0.3s ease;
}

.custom-input:focus {
  border-color: #0d6efd;
  box-shadow: 0 0 0 0.15rem rgba(13,110,253,.15);
}

/* 🔹 BUTTON */
.contact-btn {
  padding: 12px 30px;
  border-radius: 50px;
  font-weight: 600;
  transition: 0.3s ease;
}

.contact-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(13,110,253,.3);
}

/* 🔹 MAP CARD */
.map-card {
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}



