body {
  font-family: var(--font-body);
}
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-display);
}
#mainHeader .navbar {
    padding-top: 13px;
    padding-bottom: 13px;
    backdrop-filter: blur(3px);
    background: rgba(255, 255, 255, 0.9);
}
#mainHeader .nav-item .nav-link{
	font-size:0.875rem;
	font-weight: 500;
    color: var(--foreground);
    text-decoration: none;
    transition: color 0.2s;
}
#mainHeader .nav-item .nav-link:hover{
	color: hsl(var(--primary));
}
.nav-item .badge {
    font-size: 10px;
    border-radius: 9999px;
    padding-left: 6px;
    padding-right: 6px;
    padding-top: 6px;
    padding-bottom: 6px;
    display: inline-block;
}
.bg-red{
	background-color: #f22f75;
}
#mainHeader .dropdown-toggle::after {
    display:none;
}
.py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem;
}
.hero-svg svg{
	position:relative;
	top:-1px;
}
.hero-section h1{
	font-size: 4.5rem;
  line-height: 1;
  letter-spacing: -.025em;
}
.hero-content{
	padding-top: 32px;
}
.hero__image {
    position: relative;
    padding-left: 12px;
}
.hero__image img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
/* Slow zoom-in on page load */
.hero__image img {
  transform: scale(1);
  animation: slowZoomIn 2.5s ease-out forwards;
}

@keyframes slowZoomIn {
  from {
    transform: scale(0.92);
  }
  to {
    transform: scale(1);
  }
}
.italic-font{
	font-style: italic;
	font-weight: 400;
	color:
}
.hero-section .sub-para{
	font-size: 1.125rem;
  line-height: 1.75rem;
  margin-top: 24px !important;
  padding-right: 20px;
}
.book-btn {
    font-family: Outfit, system-ui, sans-serif;
    font-size: 1rem !important;
    line-height: 1.5rem;
    display: flex;
    align-items: center;
    font-weight: 600 !important;
    padding-left: 31px !important;
    padding-right: 31px !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.book-btn:hover {
    background-color: #292929;
    color: #ffffff !important;
     transform: scale(1.02); /* halka zoom */
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15); /* optional: thoda premium feel */
}
.btn{
	font-weight:500;
}
.btn--lg {
    padding: 1rem 2rem !important;
    font-size: 1rem;
}
.h-12 {
    height: 3rem;
}
.btn--primary {
    background-color: var(--foreground);
    color: var(--background);
}
.responce-text{
	color:#ff4d8d;
	font-weight:500;
	font-style:italic;
	font-size: 0.875rem;
    line-height: 1.25rem;
}
.fill-pink {
    fill: hsl(var(--pink));
}
.responce-text svg{
	width:16px;
	margin-right:5px;
}
.avatar {
    width: 32px;
    height: 32px;
    font-size: 12px;
    border-radius: 50%;
    margin-left: -8px;
  }

.avatar:first-child {
    margin-left: 0;
  }
.project-info{
	background-color:#F1F5F9 !important;
  margin-top:26px;
}
.project-info .avatar{
	background-color:#000b8d;
}  
.main-container{
	max-width: var(--container-max-width);
	padding: 0 var(--container-padding);
}
.hero-section {
  /*background: #f9fbff;*/
}
.samadhan-logo {
  width: 160px;
  height: 58px;
}
/* Smooth transition */
.transition {
  transition: all 0.3s ease;
}

/* Initial transparent state */
.navbar-transparent {
  background: transparent;
}

/* On scroll */
.navbar-scrolled {
  /*background: #ffffff;*/
  box-shadow: 0 10px 30px rgba(0,0,0,0.05);
  border-bottom: 1px solid #E1E7EF;
}

/* Nav links */
.navbar .nav-link {
  color: #111;
}

.navbar .nav-link:hover {
  color: #0d6efd;
}
.navbook-btn{
	font-family: Outfit, system-ui, sans-serif;
	padding-top: 11px;
  padding-bottom: 11px;
  line-height: 1.25rem;
  font-size: .875rem;
}
.navbook-btn:hover {
    background-color: #292929;
    color: #ffffff !important;
    transform: scale(1.02);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
}
.service-card {
  background: #fff;
  padding: 25px;
  border-radius: 16px;
  /*box-shadow: 0 10px 30px rgba(0,0,0,0.05);*/
  height: 100%;
}

.project-card {
  background: #fff;
  height: 220px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
}

.cta-section {
  background: linear-gradient(135deg, #000, #222);
}
.logo-img{
	max-width:150px;
}

.marquee-wrapper {
  background: #f8f9fa;
}

.marquee {
  overflow: hidden;
  white-space: nowrap;
  position: relative;
}

.marquee-track {
  display: flex;
  width: max-content;
  animation: marquee 30s linear infinite;
}
.marquee-track::after {
  content: "";
  display: flex;
}
.logo-item {
  width: 160px;
  height: 80px;
  margin: 0 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logo-item img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  opacity: 0.85;
  transition: all 0.3s ease;
  height: 65px;
}

.logo-item img:hover {
  opacity: 1;
  transform: scale(1.1);
}

/* Animation */
@keyframes marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

/* Fade edges */
.fade-left,
.fade-right {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 60px;
  z-index: 10;
}

.fade-left {
  left: 0;
  background: linear-gradient(to right, #fff, transparent);
}

.fade-right {
  right: 0;
  background: linear-gradient(to left, #fff, transparent);
}

/* Mobile speed */
@media (max-width: 768px) {
  .marquee-track {
    animation-duration: 20s;
  }
}
.header-sec h2{
	font-size:3rem;
}
.mb-12{
  margin-bottom: 3rem !important;
}
.mb-8{
  margin-bottom: 2rem !important;
}
.text-top{
	color:#0045ad !important;
	letter-spacing: .05em;
}
/*.header-sec h2 .text-primary{
	color:#0045ad !important;
}*/
#services .header-sec h2{
  margin-bottom: 0px !important;
}
.service-card {
  display: block;
  background: #fff;
  padding: 2rem;
  border-radius: 20px;
  margin-bottom: 1rem;
  text-decoration: none;
  color: #111;
  transition: all 0.35s ease;
  height: auto;
}

.service-card:hover {
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.service-no {
  font-family: monospace;
  opacity: 0.7;
}

.service-title {
  font-weight: 700;
  margin-bottom: 0;
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.service-sub {
  /*font-size: 0.9rem;*/
  opacity: 0.8;
  font-size: .875rem;
  line-height: 1.25rem;
  margin-bottom: 0;
  color: hsl(var(--foreground) / .7) !important;
}
.text-foreground\/70 {
    color: hsl(var(--foreground) / .7);
}

.service-desc {
  opacity: 0.85;
  font-size: .875rem;
  line-height: 1.25rem;
  max-width: 400px;
}

.arrow-circle {
  width: 48px;
  height: 48px;
  border: 2px solid rgba(0,0,0,0.3);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  transition: all 0.35s ease;
}

/* Hover Colors */
.hover-blue:hover {
  background: #2563eb;
}
.hover-purple:hover {
  background: #9333ea;
}
.hover-pink:hover {
  background: #db2777;
}
.hover-green:hover {
    background: #10B981;
}
.hover-yellow:hover {
    background: #F97316;
}
.service-card:hover .arrow-circle {
  background: rgba(255,255,255,0.15);
  border-color: #fff;
}

.service-card:hover .service-no,
.service-card:hover .service-sub,
.service-card:hover .service-desc {
  color: rgba(255,255,255,0.85);
}


/* Navigation Buttons */
.nav-btn {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid #ddd;
  background: transparent;
  transition: all 0.3s ease;
}

.nav-btn:hover {
  background: #000;
  color: #fff;
}

/* Filter Buttons */
.filter-btn {
  padding: 8px 16px;
  border-radius: 50px;
  border: 1px solid #ddd;
  background: #fff;
  font-size: 14px;
  font-weight: 500;
  color: #000;
  transition: all 0.3s ease;
  text-decoration: none;
}

.filter-btn:hover {
  background: #000;
  color: #fff;
  border-color: #000;
}

/* Portfolio Card */
.portfolio-img {
  position: relative;
  aspect-ratio: 4 / 3;
  border-radius: 16px;
  overflow: hidden;
}

.portfolio-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.5s ease;
}

.portfolio-img .overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0);
  transition: background 0.3s ease;
}

/* Hover Effects */
.portfolio-card:hover img {
  transform: scale(1.05);
}

.portfolio-card:hover .overlay {
  background: rgba(0, 0, 0, 0.2);
}

.portfolio-card:hover .title {
  color: #0045AD;
}
.portfolio-card .title{
	color:#121212;
}
.portfolio-card .title:hover{
	color:#0045AD;
}
.project-btns{
  padding-left: 2rem !important;
  padding-right: 2rem !important;
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}
.project-btns svg {
  width: 16px;
  margin-left: 8px;
  position: relative;
  top: -1px;
}
.about-section {
  background-color: hsl(var(--muted) / .3);
}
.text-primary.blue-color{
	color: #0045ad !important;
}
.about-section .display-5{
	line-height:1;
}
.about-section.seperate-page {
    padding-top: 142px;
    padding-bottom: 140px;
}
.text-muted-foreground {
    color: hsl(var(--muted-foreground)) !important;
}
.font-smsize{
	font-size:18px;
}
.dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  display: inline-block;
}

.info-card {
  display: flex;
  gap: 12px;
  padding: 16px;
  border: 1px solid #dee2e6;
  border-radius: 14px;
  background: #fff;
  align-items: start;
  height: 100%;
}
.info-card .sm-text {
    font-size: 12px;
    line-height: 18px;
	margin-bottom:0px;
}
.img-box {
  overflow: hidden;
  border-radius: 20px;
  background: #000;
}

.img-box img {
  object-fit: cover;
}

.experience-box {
  position: absolute;
  bottom: -20px;
  left: -2px;
  background: #fff;
  padding: 20px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  gap: 15px;
}

.experience-box .circle {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: hsl(var(--primary));
  color: #fff;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.w-8 {
    width: 2rem;
}
.h-8 {
    height: 2rem;
}
.testimonial-card {
  transition: all 0.3s ease;
}
.testimonial-card:hover {
  box-shadow: 0 20px 40px rgba(0,0,0,.12);
  transform: translateY(-5px);
}
.qmas-div {
    height: 42px;
    margin-bottom: 0rem !important;
}
.star-div{
	font-size:24px;
}
.slider-para{
	height:calc(100% - 160px);
  font-size: .875rem;
  line-height: 1.625;
}
.get-text{
  color:hsl(var(--pink)) !important;
}
.get-text-wraper svg{
  fill:hsl(var(--pink)) !important;
  width:14px;
}
.carousel-nav {
  position: absolute;
  /*top: 50%;*/
  /*transform: translateY(-50%);*/
  top:142px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid rgba(0,0,0,.2);
  background: transparent;
  color: #0d6efd; /* primary */
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .3s ease;
  z-index: 10;
}

.carousel-nav.prev {
  left: -56px;
}

.carousel-nav.next {
  right: -56px;
}

.carousel-nav:hover {
  background: #000;
  color: #fff;
  border-color: rgba(0,0,0,.4);
}
button.carousel-nav:hover svg {
  stroke: #ffffff !important;
}
button.carousel-nav svg {
    width: 20px;
    stroke: hsl(var(--primary));
}
@media (max-width: 768px) {
  .carousel-nav.prev {
    left: -20px;
  }
  .carousel-nav.next {
    right: -20px;
  }
}
.cta-section {
  background-color: #0f0f0f;
}
.container-wraper{
	max-width:940px;
	margin:0 auto;
}
.pattern-bg {
  position: absolute;
  inset: 0;
  opacity: 0.05;
  background-image: radial-gradient(circle at 2px 2px, #ffffff 1px, transparent 0);
  background-size: 32px 32px;
}
.cta-section h2 .text-accent{
	color:#FFE500;
}
.cta-section h2{
	line-height:50px;
}
.cta-section .lead{
	font-size:18px;
}
.book-btns {
    font-family: Outfit, system-ui, sans-serif;
    font-size: 16px;
    padding: 12px 15px;
	width:150px;
}
.text-accent{
    color: .lead{
} hsl(var(--accent));
}
/* Accent Colors */
.text-accent {
  color: #ff4d8d;
}

.bg-pink {
  background-color: #ff4d8d;
}
.bg-accent {
  background-color: #FFE500;
}
/* Logo Circle */
.logo-circle {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background-color: hsl(var(--primary));
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  color: #fff;
  font-size: 1.25rem;
  line-height: 1.75rem;
}

/* Dots */
.dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.sd-footer {
  background-color: #000b8d;
}
.footer-logo-wraper{
	margin-top: 46px;
	margin-bottom:60px !important;
}
.footer-logo {
  width: 170px;
  max-width: 100%;
}

.footer-title {
  font-size: 0.875rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

.footer-list li {
  margin-bottom: 0.5rem;
}

.footer-list a,
.footer-link {
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.875rem;
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer-list a:hover,
.footer-link:hover {
  color: hsl(var(--accent)) !important; /* accent color */
}
.footer-list li a svg{
  opacity: 0 !important;
  width:12px;
}
.footer-list li a:hover svg{
  opacity: 1 !important;
}
.social-icon {
  width: 36px;
  height: 36px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.7);
  transition: all 0.3s ease;
}

.social-icon:hover {
  background: #ffc107;
  color: #000;
}
.sd-footer .address-p{
	max-width:380px;
}

.sd-footer .text-white-50 {
    color: rgba(255,255,255,.7)!important;
}
/* our work */
.our-work.py-5{
  padding-top: 155px !important;
  padding-bottom:80px !important;
}
.heading-text{
  font-size: 3.75rem;
  line-height: 1;
}
.header-subtext{
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.max-w-2xl {
    max-width: 42rem;
}
/* tab panel */

.portfolio-card {
  border-radius: 16px;
  /*border: 1px solid #e5e7eb;*/
  background: #fff;
  overflow: hidden;
  transition: all 0.3s ease;
  height: 100%;
}

/*.portfolio-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}*/

.portfolio-img {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.portfolio-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.5s ease;
}

.portfolio-card:hover img {
  transform: scale(1.1);
}

.overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.75), transparent);
  opacity: 0;
  transition: 0.3s;
}

.portfolio-card:hover .overlay {
  opacity: 1;
}

.badges {
  position: absolute;
  top: 12px;
  left: 16px;
  display: flex;
  gap: 6px;
}
.portfolio-card .badges .badge {
    border-radius: 20px;
    padding: 6px 12px;
    font-weight: 600;
}
.portfolio-card .badges .bg-primary{
   background-color: #0045ad !important;
}
.portfolio-card .badges .bg-success{
   background-color: #00CC00 !important;
}
.portfolio-card .badges .bg-yellow{
   background-color: #FFD200 !important;
}
.portfolio-card .badges .bg-red{
   background-color: #FF0055 !important;
}
.portfolio-card .badges .bg-purple{
   background-color: #8000FF !important;
}
.image-card .bg-primary{
   background-color: #0045ad !important;
}
.image-card .bg-succes{
   background-color: #00CC00 !important;
}
.image-card .bg-yellow{
   background-color: #FFD200 !important;
}
.image-card .bg-red{
   background-color: #FF0055 !important;
}
.image-card .bg-purple{
   background-color: #8000FF !important;
}
/* initial state */
.portfolio-item {
  transition: all 0.4s ease;
}

/* hidden state */
.portfolio-item.hide {
  opacity: 0;
  transform: scale(0.95);
  pointer-events: none;
  position: absolute;
}

/* visible state */
.portfolio-item.show {
  opacity: 1;
  transform: scale(1);
  position: relative;
}

/* smooth grid alignment */
.row {
  position: relative;
}
.py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem;
}
.portfolio-card .view-link{
  font-size: 14px;
  color: #0045ad !important;
  font-size: .875rem;
  line-height: 1.25rem;
  font-weight: 600;
  font-family: Outfit, system-ui, sans-serif;
  transition: 500ms ease;
}
.portfolio-card .view-link:hover{
  background-color: hsl(var(--accent) / .1);
}
.portfolio-card .view-link:hover svg{
  margin-left: 10px;
  transition: 500ms ease;
}
.view-link svg{
  width:16px;
}
.filter-btn.active{
   background-color: #0045ad !important;
}
.filter-btn.active:hover{
   background-color: #0045ad !important;
   color:#ffffff;
}
.filter-btn{
  background-color: hsl(var(--muted));
  border-color: hsl(var(--border));
  color:#121212;
}
.filter-btn:hover{
  border-color:#0045ad !important;
  background-color: hsl(var(--muted)) !important;
  color:#121212;
}

/* service css */
/*.services-section .image-card {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  box-shadow: 0 20px 40px rgba(0,0,0,.15);
}

.services-section .image-card img {
  transition: transform .5s ease;
}

.services-section .image-card:hover img {
  transform: scale(1.05);
}

.image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.6), transparent);
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}

.image-card:hover .image-overlay {
  opacity: 1;
}

.play-btn {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
}*/

/* Soft badges */
/*.badge-soft-primary { background: rgba(13,110,253,.08); color:#0d6efd; }
.badge-soft-accent  { background: rgba(25,135,84,.08); color:#198754; }*/

/* Custom colors (example) */
/*.text-accent { color:#198754; }
.bg-accent { background:#198754; }*/
.badge-soft-primary { background: hsl(var(--primary) / .05); color:#0045ad; }
.badge-soft-accent { background-color: hsl(var(--accent) / .05); color:#FFE600; }
.badge-soft-purple { background: hsl(var(--purple) / .05); color:#6f42c1; }
.badge-soft-pink { background: hsl(var(--pink) / .05); color:#FF0055; }
.badge-soft-warning { background: rgba(255,193,7,.12); color:#FFE600; }
.badge-soft-green { background: hsl(var(--highlight) / .05); color:#00CC00; }
.badge-soft-accent svg{
  stroke:#FFE600 !important;
}
.badge-soft-purple svg{
  stroke:#6f42c1 !important;
}
.badge-soft-pink svg{
  stroke:#FF0055 !important;
}
.badge-soft-green svg{
  stroke:#00CC00 !important;
}
.badge-text{
  font-size: .875rem;
  line-height: 1.25rem;
  font-weight: 600;
}
.badge-wraper{
  display: inline-flex;
  align-items: center;
}
.badge-wraper svg{
  width:20px;
  stroke: #0045ad;
  margin-right: 10px;
}
.image-card {
  position: relative;
  overflow: hidden;
  border-radius: 1.25rem;
}
.image-card img {
  transition: transform .6s ease;
}
.image-card:hover img {
  transform: scale(1.08);
}
.image-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(0,0,0,.6), transparent);
  opacity:0;
  transition:.4s;
  display:flex;
  align-items:center;
  justify-content:center;
}
.image-card:hover .image-overlay {
  opacity:1;
}
.play-btn {
  width:64px;
  height:64px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.text-4xl{
   font-size: 2.25rem;
   line-height: 2.5rem;
}
.cols-wraper.right{
  padding-right: 20px;
}
.cols-wraper.left{
  padding-left: 20px;
}
.w-5 {
    width: 1.25rem;
}
.text-sm {
    font-size: .875rem;
    line-height: 1.25rem;
}
.list-wraper svg{
  margin-right:8px;
  stroke: #0045ad !important;
}
.service-section .cols-wraper p{
  margin-bottom: 2rem !important;
}
.btn-wraper .btn{
  padding:10px 10px;
  display: flex;
  align-items: center;
  font-weight: 700;
}
.btn-wraper .btn-primary{
  background-color: #0045ad;
  border-color:#0045ad;
}
.btn-wraper .btn-primary:hover{
  background-color: hsl(var(--primary) / .9);
  transform: scale(1.02);
  transition: 500ms ease;
}
.btn-wraper .btn-outline-primary{
  background-color: #ffffff;
  border: 2px solid #0045ad;
  color:#0045ad;
}
.btn-wraper .btn-outline-primary:hover{
  background-color:#0045ad;
  color:#ffffff;
}
.btn-wraper .btn svg{
  width:16px;
  margin-left: 14px;
}
/* index style */
.view-all-link svg {
    width: 16px;
    margin-left: 4px;
}
.bg-muted\/30 {
    background-color: hsl(var(--muted) / .3);
}
.bg-background {
    background-color: hsl(var(--background));
}
.filter-btn-wraper .filter-btn{
  background-color: #ffffff;
}
.filter-btn-wraper .filter-btn:hover{
  background-color: #000000 !important;
  color:#ffffff;
  border-color:#000000 !important;
}

.story-card {
  border: 1px solid #e5e7eb;
  border-radius: 1rem;
  overflow: hidden;
  background: #fff;
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.story-card:hover {
  /*transform: translateY(-6px);*/
  box-shadow: 0 20px 40px rgba(0,0,0,0.12);
}

.story-image {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.story-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.story-card:hover .story-image img {
  transform: scale(1.08);
}

.story-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.65), transparent);
}

.story-caption {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  right: 1rem;
  color: #fff;
}

.story-caption h3 {
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
  margin: 0;
  transition: color 0.3s ease;
}
.story-caption .badge{
  border-radius: 20px;
}
.story-card:hover .story-caption h3 {
  color: #ffc107;
}

.read-more {
  font-weight: 600;
  color: #0d6efd;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.read-more i {
  transition: transform 0.3s ease;
}

.story-card:hover .read-more i {
  transform: translateX(6px);
}
/* filter css */
.blog-card {
  border-radius: 16px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.blog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 30px rgba(0,0,0,0.12);
}
.blog-card .card-content .box-footer a{
  color: #0045ad !important;
  font-size: .875rem;
  line-height: 1.25rem;
  font-weight: 600;
  font-family: Outfit, system-ui, sans-serif;
}
.img-wrapper {
  position: relative;
  overflow: hidden;
}

.img-wrapper img {
  transition: transform 0.5s ease;
}

.blog-card:hover img {
  transform: scale(1.08);
}
.blog-d-card .card-title{
  font-family: Outfit,system-ui,sans-serif;
  color:hsl(var(--foreground));
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.box-footer .d-flex {
    flex-direction: row !important;
    gap: 0rem !important;
}
/* Optional custom badge color */
.bg-purple {
  background: #7c3aed;
}
.story-caption .badge.bg-primary {
    background-color: hsl(var(--primary)) !important;
    
}
.story-caption .badge{
   font-size: .75rem;
   line-height: 1rem;
   font-weight: 500;
}
.read-btn{
  font-size: .875rem;
  line-height: 1.25rem;
  font-weight: 600;
  font-family: Outfit, system-ui, sans-serif;
}
.read-btn svg {
    width: 15px;
}
.read-btn.text-primary {
    color: #0045ad !important;
}

.box-content .box-footer svg {
    width: 16px;
    margin-right: 6px;
}
.box-content .box-footer span{
   display:flex;
   align-items: center;
}
.blog-search-div{
  max-width: 28rem;
}
.blog-search-div input {
    height: 50px;
}
.blog-search-div input::placeholder{
    color:#9ca3af;
}
.header-subtext{
  margin-bottom: 2rem;
}
.tabbar-panel{
  margin-bottom: 3rem !important;
}
.blog-gallary .filter-item .badge {
    border-radius: 20px;
    font-weight: 600;
    font-size: .75rem;
    line-height: 1rem;
    padding-top: .25rem;
    padding-bottom: .25rem;
    padding-left: .75rem;
    padding-right: .75rem;
}
.badge.bg-primary{
   background-color: #0045ad !important;
}
.badge.bg-yellow{
   background-color: hsl(var(--accent)) !important;
}
.badge.bg-purple{
   background-color: hsl(var(--purple)) !important;
}
.badge.bg-red{
   background-color: hsl(var(--pink));
}
.badge.bg-lblue{
   background-color: hsl(var(--secondary)) !important;
}
.bg-background\/95 {
    background-color: hsl(var(--background) / .95);
}
.bgss-muted {
    background-color: hsl(var(--muted) / .3);
}
.work-portfolio .portfolio-card{
  border:1px solid hsl(var(--border));
  
}
.work-portfolio .portfolio-card:hover{
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.card-content .box-footer svg {
    width: .75rem;
    margin-right: 6px;
}
.card-content .box-footer span {
    display: flex;
    align-items: center;
    font-size: .75rem;
    line-height: 1rem;
    margin-right: 8px;
}
.mds-1 .items-start svg{
  color: hsl(var(--accent));
}
.mds-2 .list-wraper svg {
    stroke:hsl(var(--accent)) !important;
}
.mds-3 .list-wraper svg {
    stroke:#6f42c1 !important;
}
.mds-4 .list-wraper svg {
    stroke:#FF0055 !important;
}
.mds-5 .list-wraper svg {
    stroke:#00CC00 !important;
}
/* Page load animation */
/* .fade-up {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.fade-up.delay-1 { transition-delay: 0.1s; }
.fade-up.delay-2 { transition-delay: 0.2s; }
.fade-up.delay-3 { transition-delay: 0.3s; }
.fade-up.delay-4 { transition-delay: 0.4s; }

.fade-up.show {
  opacity: 1; 
  transform: translateY(0);
} */
/* .hero-left > * {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s ease;
}

.hero-left.show > * {
  opacity: 1;
  transform: translateY(0);
} */

/* delay */
/* .hero-left .delay-1 { transition-delay: 0.2s; }
.hero-left .delay-2 { transition-delay: 0.4s; }
.hero-left .delay-3 { transition-delay: 0.6s; }
.hero-left .delay-4 { transition-delay: 0.8s; } */
/* initial hidden state */
.onload-fade > * {
  opacity: 0;
  transform: translateY(40px);
  animation: fadeUp 0.8s ease forwards;
}

/* delay */
.onload-fade > *.delay-1 { animation-delay: 0.2s; }
.onload-fade > *.delay-2 { animation-delay: 0.4s; }
.onload-fade > *.delay-3 { animation-delay: 0.6s; }
.onload-fade > *.delay-4 { animation-delay: 0.8s; }

/* keyframes */
@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.icon-box {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
}

.input-icon {
  position: absolute;
  top: 50%;
  left: 18px;
  transform: translateY(-50%);
  color: #6c757d;
  font-size: 16px;
}
.map-wraper{
  height:200px;
}
.contact-container .card-block h5{
  color:color: hsl(var(--foreground));
  font-weight:700 !important;
  font-family: Outfit, system-ui, sans-serif;
  font-size: 16px;
}
.bgs-primary {
    background-color: hsl(var(--primary));
}
.bgs-accent {
    background-color: hsl(var(--accent));
}
.bgs-purple {
    background-color: hsl(var(--purple));
}
.bgs-pink {
    background-color: hsl(var(--pink));
}
.card-box{
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);
}
.card-block .rounded-3{
  border-radius: .75rem !important;
}
.card-box .form-control{
  font-size: .875rem;
  line-height: 1.25rem;
  border-color: hsl(var(--input));
  border-width: 1px;
  border-radius: .75rem !important;
  height: 3rem;
}
.card-box select{
  font-size: .875rem;
  line-height: 1.25rem;
  border-color: hsl(var(--input));
  border-width: 1px;
  border-radius: .75rem !important;
  height: 3rem;
}
.card-box textarea{
  font-size: .875rem;
  line-height: 1.25rem;
  border-color: hsl(var(--input));
  border-width: 1px;
  border-radius: .75rem !important;
  height: 135px !important;
}
.card-box .send-btn{
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.5rem;
  height: 3rem;
  border-color:hsl(var(--primary))
} 
.card-box .send-btn .bi{
  font-size: 14px;
  margin-right: 6PX;
}
.card-box .send-btn:hover{
  background-color: hsl(var(--primary) / .9);
  transform: scale(1.02);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  transition: 500ms ease;
}
.choose-card {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
}
.choose-card ul li svg{
  stroke: hsl(var(--accent)) !important;
}
.choose-card ul li {
    font-size: .875rem;
    line-height: 1.25rem;
    margin-bottom: 16px !important;
}
.choose-card ul li:last-child{
  margin-bottom:0px !important;
}
.shadow-md {
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);
}
.shadow-md:hover{
    --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);
    --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem;
}
/* team css */
.our-team {
    position: relative;
}

.team-card {
    background: #fff;
    border-radius: 16px;
    transition: all 0.3s ease;
    height: 100%;
    border:1px solid #e6e6e6;
    overflow: hidden;
}

.team-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.team-img {
    width: 100%;
    height: 300px; /* same height for all images */
    overflow: hidden;
    border-radius: 14px;
}

.team-img img {
    width: 100%;
    height:100%;
    transition: transform 0.4s ease;
    display:block;
    object-fit: cover;
}

.team-card:hover .team-img img {
    transform: scale(1.08);
}

.team-social {
    margin-top: 12px;
}

.team-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #f1f3f5;
    color: #333;
    margin: 0 4px;
    font-size: 16px;
    transition: all 0.3s ease;
}

.team-social a:hover {
    background: #0d6efd;
    color: #fff;
}
.team-content {
    padding: 15px 10px 20px; /* padding only below image */
}
.team-content .read-more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #0045ad !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

.team-content .read-more .arrow {
    display: inline-block;
    transition: transform 0.3s ease;
}

.team-content .read-more:hover {
    color: #084298;
}

.team-content .read-more:hover .arrow {
    transform: translateX(6px);
}
.our-team .cols-card .team-card{
  margin-bottom: 28px;
}
.team-modal .modal-dialog {
    transform: scale(0.8);
    transition: all 0.3s ease-in-out;
}

.team-modal.show .modal-dialog {
    transform: scale(1);
}
.team-content .detail-p{
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2; /* number of lines to show */
  line-clamp: 2; 
  -webkit-box-orient: vertical;
}
.team-modal #modalImg {
    margin: 0 auto;
    width: 120px;
    height: 120px;
    object-fit: cover;
    border: 8px solid #ebeefa;
}
#modalContent{
    padding: 15px;
    background: hsl(var(--primary));
    color: #ffffff;
    border-radius: 10px;
    margin-bottom: 0px;
    border-radius: 0px;
}
.team-modal button.btn-close {
    margin-top: 14px;
    padding-right: 24px;
    margin-bottom: 14px;
}
.blog-detail{
  padding-top: 162px;
}
.blog-detail .blog-card h2 {
    font-size: 1.6rem;   /* pehle ~2rem hota hai */
    line-height: 1.3;
}

.blog-detail .blog-img img {
    max-height: 320px;   /* image height control */
    width: 100%;
    object-fit: cover;
}
.blog-detail .blog-card:hover {
  transform: translateY(0px) !important;
}
.popular-post img {
    object-fit: cover;
    align-items: center;
    justify-content: center;
}
.blog-link-style:hover{
  color: hsl(var(--primary)) !important;
}
.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
}
.image-card .play-btn{
  display:none !important;
}
/* career page css code */
.career-section {
  background: #ffffff;
}

.career-card {
  background: #ffffff;
  padding: 20px;
  border-radius: 16px;
  transition: all 0.35s ease;
  border: 1px solid #f0f0f0;
}
.career-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.light-card {
  background: #f9f9f9;
  border: 1px solid #eee;
}

.career-card h5 {
  font-weight: 600;
  margin-bottom: 8px;
}

.career-card p {
  margin: 0;
  color: #555;
  font-size: 15px;
}

.career-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

.openings-box {
  background: #f8f9fa;
  transition: all 0.35s ease;
}
.openings-box:hover {
  transform: translateY(-6px);
  box-shadow: 0 25px 45px rgba(0, 0, 0, 0.1);
}
/* Image Hover */
.career-image-wrapper img {
  transition: transform 0.5s ease;
}

.career-image-wrapper img:hover {
  transform: scale(1.04);
}

.career-list {
  list-style: none;
  padding-left: 0;
}

.career-list li {
  padding: 10px 0;
  border-bottom: 1px dashed #ccc;
  font-weight: 500;
}

.career-list li:last-child {
  border-bottom: none;
}
.btns-blue{
  background-color: #000b8d !important;
  border-color: #000b8d !important;
}
/* responsive css */
@media only screen and (max-width: 767px) {
#mainHeader .navbar-toggler:focus {
    box-shadow: none;
}  
#mainHeader .nav-item .nav-link{
  border-bottom: 1px solid #b3b3b3;
}
.navbar .navbar-nav{
  margin-top: 10px;
}
.hero-left > * {
    opacity: 1;
    transform: none;
}
.hero-content {
    padding-top: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}  
.hero-section h1{
  font-size: 30px;
}
.hero-section .sub-para{
  font-size: 14px;
  line-height: 22px;
  padding-right: 0px;
}  
.header-sec h2 {
    font-size: 28px;
}
.font-smsize {
    font-size: 14px;
}
p.fs-5{
  font-size: 14px !important;
}
.cta-section h2 {
    font-size: 24px;
    line-height: 32px;
}
.cta-section .lead {
    font-size: 16px;
}
section.client-section.my-5 {
    margin-top: 0px !important;
    margin-bottom: 5px !important;
}
.service-card{
  border: 1px solid #b3b3b3;
}
.text-md-end{
  display:none;
}
button.carousel-nav svg {
    width: 18px;
    position: relative;
    top: -3px;
    left: -2px;
 }
#testimonialCarousel .carousel-nav.prev {
    left: -52px;
}
#testimonialCarousel .carousel-nav.next {
    right: -51px;
}
.heading-text {
    font-size: 32px;
    line-height: 1;
}
.our-work.py-5 {
    padding-top: 140px !important;
    padding-bottom: 32px !important;
}
.header-subtext {
    margin-bottom: 0rem;
}
.filterbtn-wraper{
    overflow: auto;
    flex-wrap: nowrap !important;
    text-align: left;
    justify-content: flex-start !important;
}
section.py-20.work-portfolio {
    padding-top: 50px;
    padding-bottom: 50px;
}
.cols-wraper.right {
    padding-right: 0px;
}
.cols-wraper.left {
    padding-left: 0px;
}
.blog-search-div {
    margin-top: 30px;
}
.blog-gallary .tabbar-panel {
    overflow: auto;
    flex-wrap: nowrap !important;
    text-align: left;
    justify-content: flex-start !important;
}
.blog-gallary .tabbar-panel .filter-btn{
    white-space: nowrap;
}
.carousel-item .col-lg-4 {
    flex: 0 0 100%;
    max-width: 100%;
  }

.carousel-item .col-lg-4:not(:first-child) {
    display: none;
  }
.experience-box{
  display:none;
  }
.onload-fade > * {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
.about-section.seperate-page {
    padding-bottom: 70px;
  }
.text-4xl {
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
.navbook-btn{
  display:none;
 }
 p.header-subtext {
    font-size: 15px;
    line-height: 24px;
 }
 .cta-section .container-wraper{
   text-align: center;
 }
 .cta-section .get-text-wraper{
  text-align: center;
  justify-content: center;
 }
.blog-detail {
    padding-top: 120px;
 }
.appbtn-wraper{
  text-align: center;
}     
}
@media only screen and (max-width: 576px) {
  .story-caption h3{
    font-size: 18px;
    line-height: 20px;
  }
  .process-wraper{
    flex-wrap: wrap;
  }
  .process-wraper .badge{
    width: 50%;
  }
  .box-footer .d-flex {
    flex-direction: column !important;
  }
}
@media only screen and (max-width: 470px) {
.sd-footer .col {
    flex: 1 0 100%;
}   
  .footer-list li {
    margin-bottom: 0.5rem;
    border-bottom: 1px solid #5960b3;
}
.story-card .box-footer {
    flex-wrap: wrap;
}
.story-card .box-footer .date-time-wraper {
    width: 100%;
    margin-bottom: 10px;
}
}
@media only screen and (max-width: 375px) {
  .btn-wraper .btn{
    width:100%;
    justify-content: center;
  }
}

