/* =========================================================
   MAHADEV BIRD NET — CUSTOM STYLESHEET
   Palette : Navy #0B2942 | Orange #FF6B35 | Teal #00A896
             Gold #FFC145 | Cream #FFF9F2 | Charcoal #212934
   Fonts   : Poppins (display) / Nunito Sans (body)
========================================================= */

:root{
  --navy:#0B2942;
  --navy-light:#123a5c;
  --orange:#FF6B35;
  --orange-dark:#e0551f;
  --teal:#00A896;
  --gold:#FFC145;
  --cream:#FFF9F2;
  --charcoal:#212934;
  --gray:#6b7480;
  --radius-lg:20px;
  --radius-md:14px;
  --shadow-soft:0 10px 30px rgba(11,41,66,0.08);
  --shadow-strong:0 20px 45px rgba(11,41,66,0.16);
  --font-display:'Poppins', sans-serif;
  --font-body:'Nunito Sans', sans-serif;
}

*{box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
  font-family:var(--font-body);
  color:var(--charcoal);
  background:var(--cream);
  line-height:1.7;
  overflow-x:hidden;
}

h1,h2,h3,h4,.font-display{font-family:var(--font-display); color:var(--navy); font-weight:700;}

a{text-decoration:none; transition:all .25s ease;}
img{max-width:100%; display:block;}

.section-padding{padding:90px 0;}
@media (max-width:767.98px){ .section-padding{padding:56px 0;overflow-x: hidden;} }

/* net-mesh signature texture, used as subtle section background */
.net-mesh-bg{
  background-image:
    repeating-linear-gradient(45deg, rgba(11,41,66,0.05) 0 1px, transparent 1px 18px),
    repeating-linear-gradient(-45deg, rgba(11,41,66,0.05) 0 1px, transparent 1px 18px);
}

.section-eyebrow{
  display:inline-block;
  font-family:var(--font-display);
  font-weight:600;
  font-size:0.8rem;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--orange);
  background:rgba(255,107,53,0.1);
  padding:6px 16px;
  border-radius:50px;
  margin-bottom:14px;
}

.section-title{
  font-size:clamp(1.75rem, 3vw, 2.5rem);
  margin-bottom:16px;
  line-height:1.25;
}
.section-title span{color:var(--orange);}

.section-text{color:var(--gray); max-width:620px; font-size:1.02rem;}

.section-heading{max-width:720px; margin-left:auto; margin-right:auto; margin-bottom:50px;}

.btn-cta{
  background:var(--orange);
  color:#fff;
  font-family:var(--font-display);
  font-weight:600;
  padding:13px 30px;
  border-radius:50px;
  border:2px solid var(--orange);
  box-shadow:0 10px 25px rgba(255,107,53,0.35);
}
.btn-cta:hover{
  background:var(--orange-dark);
  border-color:var(--orange-dark);
  color:#fff;
  transform:translateY(-3px);
  box-shadow:0 14px 30px rgba(255,107,53,0.45);
}

.btn-outline-hero{
  background:transparent;
  border:2px solid #fff;
  color:#fff;
  font-family:var(--font-display);
  font-weight:600;
  padding:13px 28px;
  border-radius:50px;
}
.btn-outline-hero:hover{background:#fff; color:var(--navy);}

.btn-service{
  background:var(--navy);
  color:#fff;
  font-family:var(--font-display);
  font-weight:600;
  padding:11px 26px;
  border-radius:50px;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.btn-service:hover{background:var(--teal); color:#fff; transform:translateY(-2px);}

/* Scroll reveal */
[data-reveal]{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .7s ease, transform .7s ease;
}
[data-reveal].revealed{opacity:1; transform:translateY(0);}

@media (prefers-reduced-motion: reduce){
  [data-reveal]{opacity:1; transform:none; transition:none;}
}

/* ===================== TOP BAR ===================== */
.top-bar{
  background:var(--navy);
  color:#cfe0ee;
  font-size:0.85rem;
}
.top-bar a, .top-bar span{color:#cfe0ee; margin-right:22px;}
.top-bar a:hover{color:var(--gold);}
.top-bar i{color:var(--orange); margin-right:5px;}
.top-bar-social a{
  margin-right:0;
  margin-left:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.top-bar-social a:hover{color:var(--gold);}

/* ===================== HEADER ===================== */
.site-header{background:#fff; box-shadow:0 2px 18px rgba(11,41,66,0.08); z-index:1030;}
.navbar{padding:12px 0;}
.navbar-brand{display:flex; align-items:center; gap:12px;}
.brand-text{
  display:flex;
  flex-direction:column;
  line-height:1.15;
  font-family:var(--font-display);
  font-weight:600;
  color:var(--navy);
  font-size:1.15rem;
}
.brand-text strong{color:var(--orange);}
.brand-text small{font-family:var(--font-body); font-weight:500; font-size:0.65rem; color:var(--gray); letter-spacing:1px; text-transform:uppercase;}

.nav-link{
  font-family:var(--font-display);
  font-weight:500;
  color:var(--charcoal) !important;
  position:relative;
  margin:0 6px;
}
.nav-link::after{
  content:"";
  position:absolute;
  left:0; bottom:2px;
  width:0; height:2px;
  background:var(--orange);
  transition:width .3s ease;
}
.nav-link:hover::after, .nav-link.active::after{width:100%;}
.nav-link:hover{color:var(--orange) !important;}

/* ===================== HERO ===================== */
.hero-section{position:relative;}
.carousel-item img{
  height:88vh;
  min-height:520px;
  object-fit:cover;
  filter:brightness(0.7);
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(100deg, rgba(11,41,66,0.85) 0%, rgba(11,41,66,0.45) 55%, rgba(11,41,66,0.15) 100%);
}
.hero-section .container{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
}
.hero-content{max-width:640px; color:#fff;}
.hero-eyebrow{
  display:inline-block;
  background:rgba(255,107,53,0.18);
  border:1px solid var(--orange);
  color:var(--gold);
  font-family:var(--font-display);
  font-size:0.8rem;
  letter-spacing:1.5px;
  text-transform:uppercase;
  padding:6px 16px;
  border-radius:50px;
  margin-bottom:18px;
}
.hero-content h1{
  color:#fff;
  font-size:clamp(2rem, 4.4vw, 3.3rem);
  margin-bottom:18px;
  line-height:1.2;
}
.hero-content h1 span{color:var(--orange);}
.hero-content p{font-size:1.1rem; color:#e7eef5; margin-bottom:30px;}
.hero-btns{display:flex; flex-wrap:wrap; gap:16px;}

.carousel-indicators [data-bs-target]{background:var(--orange);}
.carousel-control-prev, .carousel-control-next{width:5%;}

@media (max-width:767.98px){
  .carousel-item img{height:78vh;}
}

/* ===================== ROAD STRIP (signature moving-van element) ===================== */
.road-strip{
  position:relative;
  background:var(--navy);
  padding:18px 0 26px;
  overflow:hidden;
  text-align:center;
}
.road-strip::before{
  content:"";
  position:absolute;
  left:0; right:0; bottom:20px;
  height:4px;
  background:repeating-linear-gradient(90deg, var(--gold) 0 24px, transparent 24px 44px);
  opacity:0.85;
}
.road-strip-alt{background:var(--navy-light);}
.road-strip-inner{
  position:relative;
  height:60px;
  width:100%;
}
.service-van{
  position:absolute;
  top:0;
  left:-140px;
  width:110px;
  height:auto;
  filter:drop-shadow(0 6px 8px rgba(0,0,0,0.35));
}
.road-strip-caption{
  display:inline-block;
  margin-top:6px;
  color:#cfe0ee;
  font-family:var(--font-display);
  font-size:0.85rem;
  letter-spacing:0.5px;
}

@media (prefers-reduced-motion: reduce){
  .service-van{left:calc(50% - 55px);}
}

/* ===================== ABOUT ===================== */
.about-img-wrap{position:relative;}
.about-img-main{
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-strong);
  clip-path: polygon(0 0, 100% 0, 100% 92%, 92% 100%, 0 100%);
}
.about-badge{
  position:absolute;
  bottom:-24px;
  right:20px;
  background:var(--orange);
  color:#fff;
  border-radius:var(--radius-md);
  padding:16px 22px;
  text-align:center;
  box-shadow:var(--shadow-strong);
}
.about-badge-num{display:block; font-family:var(--font-display); font-size:1.7rem; font-weight:800;}
.about-badge-text{font-size:0.75rem; text-transform:uppercase; letter-spacing:1px;}

.about-points{list-style:none; padding:0; margin:22px 0;}
.about-points li{margin-bottom:12px; font-weight:600; color:var(--navy); display:flex; align-items:center; gap:10px;}
.about-points i{color:var(--teal); font-size:1.15rem;}

/* ===================== SERVICES ===================== */
.service-card{
  background:#fff;
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:var(--shadow-soft);
  height:100%;
  border:1px solid rgba(11,41,66,0.06);
  transition:transform .35s ease, box-shadow .35s ease;
}
.service-card:hover{transform:translateY(-8px); box-shadow:var(--shadow-strong);}
.service-img{overflow:hidden; position:relative;}
.service-img img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.service-card:hover .service-img img{transform:scale(1.08);}
.service-body{padding:32px;}
.service-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:54px; height:54px;
  border-radius:50%;
  background:rgba(0,168,150,0.12);
  color:var(--teal);
  font-size:1.4rem;
  margin-bottom:16px;
  margin-top:-58px;
  position:relative;
  border:4px solid #fff;
}
.service-body h3{margin-bottom:12px;}
.service-body p{color:var(--gray); margin-bottom:22px;}

/* ===================== WHY CHOOSE US ===================== */
.why-section{background:var(--navy); position:relative;}
.why-section .section-eyebrow{background:rgba(255,255,255,0.08); color:var(--gold);}
.why-section .section-title{color:#fff;}
.why-card{
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:var(--radius-md);
  padding:34px 22px;
  text-align:center;
  height:100%;
  transition:transform .3s ease, background .3s ease;
}
.why-card:hover{transform:translateY(-6px); background:rgba(255,107,53,0.12); border-color:var(--orange);}
.why-card i{font-size:2.1rem; color:var(--orange); margin-bottom:16px;}
.why-card h3{color:#fff; font-size:1.05rem; margin-bottom:10px;}
.why-card p{color:#c4d3e0; font-size:0.9rem; margin-bottom:0;}

/* ===================== COUNTER ===================== */
.counter-section{background:#e9e4dd; padding:70px 0; border-top:1px solid rgba(11,41,66,0.06); border-bottom:1px solid rgba(11,41,66,0.06);}
.counter-box i{font-size:1.9rem; color:var(--orange); margin-bottom:10px; display:block;}
.counter-num{font-family:var(--font-display); font-size:2.6rem; font-weight:800; color:var(--navy);}
.counter-plus{font-family:var(--font-display); font-size:2rem; font-weight:800; color:var(--orange);}
.counter-box p{color:var(--gray); font-weight:600; margin-top:4px;}

/* ===================== HOW IT WORKS ===================== */
.step-card{
  background:#fff;
  border-radius:var(--radius-md);
  padding:36px 26px;
  text-align:center;
  height:100%;
  box-shadow:var(--shadow-soft);
  position:relative;
  border-top:4px solid var(--orange);
}
.step-num{
  display:inline-block;
  font-family:var(--font-display);
  font-weight:800;
  font-size:2rem;
  color:rgba(255,107,53,0.18);
  margin-bottom:6px;
}
.step-card h3{font-size:1.1rem; margin-bottom:10px;}
.step-card p{color:var(--gray); font-size:0.92rem; margin-bottom:0;}

/* ===================== GALLERY ===================== */
.gallery-item{
  display:block;
  position:relative;
  border-radius:var(--radius-md);
  overflow:hidden;
  box-shadow:var(--shadow-soft);
}
.gallery-item img{
  width:100%;
  height:220px;
  object-fit:cover;
  transition:transform .5s ease;
}
.gallery-zoom{
  position:absolute;
  inset:0;
  background:rgba(11,41,66,0.55);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:1.6rem;
  opacity:0;
  transition:opacity .3s ease;
}
.gallery-item:hover img{transform:scale(1.1);}
.gallery-item:hover .gallery-zoom{opacity:1;}

@media (max-width:767.98px){
  .gallery-item img{height:150px;}
}

/* ===================== TESTIMONIALS ===================== */
.testimonial-section{background:var(--cream);}
.testimonial-card{
  max-width:720px;
  background:#fff;
  border-radius:var(--radius-lg);
  padding:48px;
  text-align:center;
  box-shadow:var(--shadow-soft);
  position:relative;
}
.testimonial-card i.bi-quote{font-size:2.6rem; color:var(--orange); opacity:0.35;}
.testimonial-card p{font-size:1.1rem; color:var(--charcoal); font-style:italic; margin:16px 0 22px;}
.testi-stars{color:var(--gold); display:block; margin-bottom:10px; letter-spacing:2px;}
.testi-author h4{margin-bottom:2px; font-size:1.05rem;}
.testi-author small{color:var(--gray);}
.testi-indicators{position:static; margin-top:26px;}
.testi-indicators [data-bs-target]{background:var(--orange); width:9px; height:9px; border-radius:50%;}

/* ===================== FAQ ===================== */
.accordion-button{
  font-family:var(--font-display);
  font-weight:600;
  color:var(--navy);
  background:#fff;
  border-radius:var(--radius-md) !important;
  box-shadow:none;
}
.accordion-button:not(.collapsed){background:var(--navy); color:#fff;}
.accordion-button:not(.collapsed)::after{filter:invert(1);}
.accordion-button:focus{box-shadow:none; border-color:rgba(11,41,66,0.15);}
.accordion-item{border:1px solid rgba(11,41,66,0.08); border-radius:var(--radius-md); margin-bottom:14px; overflow:hidden;}
.accordion-body{color:var(--gray);}

/* ===================== CONTACT ===================== */
.contact-info-card, .contact-form-card{
  background:#fff;
  border-radius:var(--radius-lg);
  padding:38px;
  box-shadow:var(--shadow-soft);
  height:100%;
}
.contact-info-card h3, .contact-form-card h3{margin-bottom:24px;}
.contact-info-card ul{list-style:none; padding:0; margin:0 0 24px;}
.contact-info-card li{display:flex; align-items:flex-start; gap:16px; margin-bottom:20px;}
.contact-info-card li i{
  width:46px; height:46px;
  background:rgba(255,107,53,0.1);
  color:var(--orange);
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
  font-size:1.1rem;
}
.contact-info-card li span{display:block; font-size:0.78rem; text-transform:uppercase; letter-spacing:1px; color:var(--gray);}
.contact-info-card li a{color:var(--navy); font-weight:600;}
.contact-info-card li a:hover{color:var(--orange);}
.contact-map iframe{width:100%; height:220px; border:0; border-radius:var(--radius-md);}

.form-control, .form-select{
  border-radius:10px;
  border:1px solid rgba(11,41,66,0.15);
  padding:11px 14px;
}
.form-control:focus, .form-select:focus{
  border-color:var(--orange);
  box-shadow:0 0 0 3px rgba(255,107,53,0.15);
}
.form-label{font-weight:600; color:var(--navy); font-size:0.9rem;}
.form-success-msg{
  margin-top:16px;
  color:var(--teal);
  font-weight:600;
  display:flex;
  align-items:center;
  gap:8px;
}

/* ===================== FOOTER ===================== */
.site-footer{background:var(--navy); color:#c4d3e0; padding:70px 0 24px;}
.footer-brand{display:flex; align-items:center; gap:12px; color:#fff; font-family:var(--font-display); font-size:1.2rem; font-weight:600; margin-bottom:16px;}
.footer-brand strong{color:var(--orange);}
.site-footer p{color:#a9bccd; font-size:0.92rem;}
.site-footer h4{color:#fff; font-family:var(--font-display); font-size:1.05rem; margin-bottom:20px;}
.site-footer ul{list-style:none; padding:0; margin:0;}
.site-footer ul li{margin-bottom:12px;}
.site-footer ul li a{color:#c4d3e0;}
.site-footer ul li a:hover{color:var(--orange); padding-left:4px;}
.footer-contact li{display:flex; align-items:flex-start; gap:10px; color:#c4d3e0;}
.footer-contact i{color:var(--orange); margin-top:4px;}
.footer-social{display:flex; gap:12px; margin-top:18px;}
.footer-social a{
  width:38px; height:38px;
  border-radius:50%;
  background:rgba(255,255,255,0.08);
  color:#fff;
  display:flex; align-items:center; justify-content:center;
}
.footer-social a:hover{background:var(--orange);}
.site-footer hr{border-color:rgba(255,255,255,0.12); margin:36px 0 20px;}
.footer-bottom{text-align:center;}
.footer-bottom p{margin:0; font-size:0.85rem;}
.cu-bg-wht{
	background-color:#fff!important
}
/* ===================== FLOATING BUTTONS ===================== */
.floating-btn{
  position:fixed;
  bottom:26px;
  width:58px; height:58px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:1.5rem;
  z-index:1040;
  box-shadow:var(--shadow-strong);
}
.whatsapp-btn{left:26px; background:#25D366;}
.call-btn{right:26px; background:var(--orange); animation:pulse-btn 2s infinite;}
.whatsapp-btn{animation:pulse-btn-green 2s infinite;}

@keyframes pulse-btn{
  0%{box-shadow:0 0 0 0 rgba(255,107,53,0.55);}
  70%{box-shadow:0 0 0 16px rgba(255,107,53,0);}
  100%{box-shadow:0 0 0 0 rgba(255,107,53,0);}
}
@keyframes pulse-btn-green{
  0%{box-shadow:0 0 0 0 rgba(37,211,102,0.55);}
  70%{box-shadow:0 0 0 16px rgba(37,211,102,0);}
  100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}
}
.cu-lg-wdht{width:280px}

@media (prefers-reduced-motion: reduce){
  .call-btn, .whatsapp-btn{animation:none;}
}
@media(max-width:767px)
{
	.cu-ds-nn{
		display:none!important;
	}
	.cu-jf-cntr{
		justify-content: center !important;
	}
}
@media (max-width:575.98px){
  .floating-btn{width:50px; height:50px; font-size:1.3rem; bottom:16px;}
  .whatsapp-btn{left:16px;}
  .call-btn{right:16px;}
}
@media(max-width:420px)
{.cu-lg-wdht {
    width: 220px;
}}
