/* Custom styles for company profile using Bootstrap */
:root {
  --brand: #0b79f7;
  --accent: #06b6d4;
  --muted: #6b7280;
  --max-width: 1140px;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;font-family:Poppins, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;color:#0f172a;background:#fff}
.container{max-width:var(--max-width);}

/* Navbar */
.navbar-brand{color:var(--brand)!important}
.navbar-light .navbar-nav .nav-link{color:#374151}
.navbar-light .navbar-nav .nav-link.active{color:var(--brand);font-weight:600}

/* Navbar logo sizing */
.navbar-logo{width:40px;height:40px;object-fit:cover;border-radius:6px}

/* Transparent navbar when over hero */
.navbar{transition:background-color .32s ease, padding .28s ease, box-shadow .28s ease}
.navbar.transparent{background-color:transparent !important;box-shadow:none;padding-top:.9rem;padding-bottom:.9rem}
.navbar.transparent .navbar-brand{color:#fff!important}
.navbar.transparent .nav-link{color:rgba(255,255,255,0.95)}
.navbar.transparent .btn{box-shadow:0 6px 20px rgba(11,121,247,0.12)}

/* Make hero reach to the very top so navbar can sit over it */
header{padding-top:0}
/* Hero should fill the viewport so the image sits behind the fixed navbar */
.hero-img{height:100vh;min-height:420px;object-fit:cover}
@media (max-width:768px){ .hero-img{height:70vh;min-height:260px} }
/* Reserve space for fixed navbar so subsequent content isn't hidden */
main{padding-top:72px}
@media (max-width:768px){ main{padding-top:68px} }

/* Hero */
.caption-left{left:6%;right:auto;bottom:20%}

/* Dark overlay over hero image to keep caption readable while navbar overlays */
.carousel-item{position:relative}
.carousel-item::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,0.28) 0%, rgba(0,0,0,0.12) 40%, rgba(0,0,0,0.36) 100%);pointer-events:none}
.carousel-caption{z-index:5}

/* Service cards */
.service-card{transition:transform .28s ease, box-shadow .28s ease}
.service-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px rgba(2,6,23,0.08)}

/* Team */
.team-card img{height:160px;object-fit:contain}

/* Testimonials */
.carousel .card{border:none}

/* Testimonials - glassmorphism card */
#testimonials{background-image:url('../assets/testi-bg.jpg');background-size:cover;background-position:center;position:relative}
#testimonials::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(3,7,18,0.48), rgba(3,7,18,0.6));z-index:0}
#testiCarousel .carousel-inner{position:relative;z-index:2}
#testiCarousel .carousel-item{display:flex;justify-content:center;align-items:center;padding:3.5rem 0}
#testiCarousel .glass-card{max-width:860px;background:linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.04));border-radius:14px;border:1px solid rgba(255,255,255,0.12);box-shadow:0 12px 40px rgba(2,6,23,0.2);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:1.6rem;color:#fff}
#testiCarousel .glass-card .card-body{background:transparent}
#testiCarousel .glass-card p{font-size:1.125rem;color:rgba(255,255,255,0.95)}

@media (max-width:576px){
  #testiCarousel .glass-card{margin:0 1rem;padding:1rem}
  #testiCarousel .carousel-item{padding:1.25rem 0}
}

/* Make the testimonials section heading white for contrast */
#testimonials .text-center h2{color:#ffffff}

/* Contact */
.bg-primary{background:linear-gradient(135deg,var(--brand),var(--accent))!important}

/* Footer */
footer{font-size:.9rem}

/* Small helpers */
.text-muted{color:var(--muted)!important}

@media (max-width:576px){
  .caption-left{left:2%;right:2%;text-align:center}
}

/* Animation utilities */
.will-animate{opacity:0;transform:translateY(12px);transition:opacity .6s ease, transform .6s cubic-bezier(.2,.9,.2,1)}
.will-animate.visible{opacity:1;transform:none}
.will-animate[data-anim="slide-left"]{transform:translateX(-20px)}
.will-animate[data-anim="slide-left"].visible{transform:none}
.will-animate[data-anim="fade-up"]{transform:translateY(18px)}
.pulse-cta{animation:pulse 2.4s infinite}
@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.03)}100%{transform:scale(1)}}

/* Counter styles */
.counter{font-weight:700;font-size:1.6rem;color:var(--brand)}

/* Navbar shrink effect */
.navbar.shrink{padding-top:.35rem;padding-bottom:.35rem;box-shadow:0 8px 30px rgba(12,24,45,0.08);transition:all .28s ease}

/* Typed hero text */
.hero-caption-typed{display:inline-block;border-right:2px solid rgba(255,255,255,0.8);padding-right:.25rem;white-space:nowrap}

/* Service card tilt and hover */
.service-card{transform-style:preserve-3d;transition:transform .35s cubic-bezier(.2,.9,.2,1), box-shadow .35s ease}
.service-card:hover{transform:translateY(-10px) rotateX(2deg);box-shadow:0 16px 40px rgba(2,6,23,0.12)}
.service-icon{width:64px;height:64px;border-radius:12px;background:linear-gradient(135deg,var(--brand),var(--accent));display:inline-flex;align-items:center;justify-content:center;color:#fff;margin-bottom:1rem;box-shadow:0 8px 20px rgba(11,121,247,0.12);transition:transform .28s cubic-bezier(.2,.9,.2,1), box-shadow .28s ease}
.service-card:hover .service-icon{transform:translateY(-6px) scale(1.05);box-shadow:0 22px 45px rgba(11,121,247,0.14)}

/* CTA gradient */
.btn-primary{background:linear-gradient(90deg,var(--brand),var(--accent));border:0}

/* Small shadow accent for hero caption */
.carousel-caption .display-5{text-shadow:0 6px 20px rgba(2,6,23,0.35)}



