/* BideshSewa — signature styles layered on top of Tailwind */

/* Hero: a subtle "departure route" motif (dashed flight path) */
.hero-bg {
  background:
    radial-gradient(900px 380px at 85% -10%, rgba(34,197,94,.12), transparent 60%),
    radial-gradient(900px 420px at 10% 0%, rgba(29,78,216,.14), transparent 60%);
}
.route-line {
  position: absolute; inset: 0; pointer-events: none; opacity: .5;
}
.dark .hero-bg {
  background:
    radial-gradient(900px 380px at 85% -10%, rgba(34,197,94,.12), transparent 60%),
    radial-gradient(900px 420px at 10% 0%, rgba(29,78,216,.20), transparent 60%);
}

/* Card lift */
.card-lift { transition: transform .22s ease, box-shadow .22s ease; }
.card-lift:hover { transform: translateY(-6px); box-shadow: 0 24px 48px -28px rgba(15,23,42,.35); }

/* Scroll reveal */
.reveal { opacity: 0; transform: translateY(20px); transition: opacity .7s ease, transform .7s ease; }
.reveal.in { opacity: 1; transform: none; }

/* FAQ accordion */
.faq-a { max-height: 0; overflow: hidden; transition: max-height .3s ease; }
.faq.open .faq-a { max-height: 400px; }
.faq.open .faq-plus { transform: rotate(45deg); }
.faq-plus { transition: transform .3s ease; }

/* Flag chip */
.flag-chip {
  font-weight: 700; font-size: .7rem; letter-spacing: .04em;
  background: linear-gradient(135deg, #1d4ed8, #16a34a); color: #fff;
  border-radius: 6px; padding: 2px 7px;
}

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
  .reveal { opacity: 1; transform: none; }
}
