body{background-color:#ffffff; margin:0px; padding:0px;font-family:Space Grotesk, sans-serif;}
.hero-section h1{font-size:40px; font-weight:700; color:#222222; margin-bottom:20px;}
.hero-section{background-color: #f3f1f6; width:100%; height:auto; padding:50px 50px; border-radius:20px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; box-sizing:border-box; font-family: 'Space Grotesk', sans-serif;}
.text-secondary {color:#383838;font-size:18px; font-weight:400; margin-bottom:20px;}
.btn-dark {background-color:#222222; color:#ffffff; border:none; font-size:18px; font-weight:600; text-transform:uppercase; padding:12px 30px;}
.site-logo{width:30%;height:auto;padding:10px;}
/* Smooth Marquee for Client Logos */
.positivus-logo-marquee { overflow: hidden;width: 100%;background: #fff;padding: 12px 0;}
.positivus-logo-track { display: flex;gap: 48px;align-items: center;animation: logo-marquee 18s linear infinite;width: max-content;}
.positivus-logo-track img { filter: grayscale(1);opacity: 0.8;height:50px;transition: filter 0.2s, opacity 0.2s;}
.positivus-logo-track img:hover {filter: none;opacity: 1;}
@keyframes logo-marquee {0% { transform: translateX(0); }100% { transform: translateX(-50%); }}
@media (max-width: 900px) {.positivus-logo-track {gap: 24px;animation-duration: 28s;}
  .positivus-logo-track img {height: 20px;}}
.col-auto{margin-bottom:20px}
.serv{padding: 20px 0px;}
/* Two-column Service Architecture Cards */
.service-card-arch {
  border-radius: 24px;
  border: 2px solid #222;
  box-shadow: 0 2px 8px #0001;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 24px 18px;
  min-height: 160px;
  margin-bottom: 0;
}
.service-card-arch-light {
  background: #ffffff;
}
.service-card-arch-lime {
  background: #c6ff4f;
}
.service-title {font-weight: 700;font-size: 1.1rem;padding: 4px 10px;border-radius: 6px;margin-bottom: 12px;display: inline-block;}
.service-title-lime {background: #8953ff;color: #ffffff;}
.service-title-white {background: #eccf0e;color: #222;}
.service-title-green {background: #4dd908;color: #ffffff;}
.service-title-blue {background: #b2afff;color: #222;}
.service-img-arch {width:50%;height:auto;object-fit: contain;}
.service-learn {display: flex;align-items: center;gap: 8px;font-size:15px;font-weight:400;margin-top: 12px;}
.service-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  font-size: 1.2rem;
  font-weight: bold;
  margin-right: 4px;
}
.service-arrow-dark-lime {
  background: #222;
  color: #c6ff4f;
}
@media (max-width: 900px) {
  .service-card-arch {
    flex-direction: column;
    align-items: flex-start;
    padding: 14px 8px;
    min-height: 120px;
    margin-bottom: 12px;
  }
  .service-img-arch {
    width: 60px;
    height: 60px;
    margin-top: 8px;
  }
  .service-title {
    font-size: 1rem;
    padding: 3px 8px;
    margin-bottom: 8px;
  }
  .service-learn {
    font-size: 0.95rem;
    margin-top: 8px;
  }
  .service-arrow {
    width: 22px;
    height: 22px;
    font-size: 1rem;
  }
}

.cta-section {
  background: #ffffff;
  padding: 64px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cta-card {
  background: #97b1f8;
  border-radius: 24px;
  box-shadow: 0 8px 32px #0001;
  padding: 48px 32px;
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.cta-title {
  font-size: 2.2rem;
  font-weight: 700;
  color: #222;
  text-align: center;
}
.cta-desc {
  font-size: 1.15rem;
  color: #222;
  text-align: center;
}
.cta-btn {
  background: #222;
  color: #fff;
  border-radius: 12px;
  font-weight: 700;
  padding: 14px 40px;
  font-size: 1.15rem;
  box-shadow: 0 2px 8px #0001;
  transition: background 0.2s, color 0.2s;
  margin: 0 auto;
  display: block;
  letter-spacing: 1px;
}
.cta-btn:hover {
  background: #fff;
  color: #8953ff;
}
@media (max-width: 900px) {
  .cta-section {
    padding: 32px 0;
  }
  .cta-card {
    border-radius: 18px;
    padding: 24px 8px;
    max-width: 98vw;
  }
  .cta-title {
    font-size: 1.3rem;
  }
  .cta-desc {
    font-size: 1rem;
  }
  .cta-btn {
    width: 100%;
    padding: 12px 0;
    font-size: 1rem;
  }
}

/* Testimonial Section Styles */
.testimonial-section {background: #f6f7fa;padding: 64px 0 48px 0;text-align: center;}
.testimonial-header {margin-bottom: 36px;}
.trusted-badge {display: inline-block;background: #0e648d;color: #ffffff;border-radius: 16px;padding: 4px 18px;font-size: 1rem;margin-bottom: 18px;}
.testimonial-header h2 {font-size: 2.7rem;font-weight: 500;margin: 0 0 12px 0;color: #222;}
.trustpilot-row {display: flex;align-items: center;justify-content: center;gap: 8px;font-size: 1.1rem;color: #222;margin-top: 8px;}
.trustpilot-logo {height: 22px;vertical-align: middle;}
.trustpilot-link {color: #6c3df4;text-decoration: underline;font-size: 1rem;}
.trustpilot-star {color: #00b67a;font-size: 1.2rem;}
.testimonial-slider {max-width: 1600px;margin: 0 auto;overflow: hidden;position: relative;min-height: 340px;}
.testimonial-track {display: flex;gap: 32px;transition: transform 0.7s cubic-bezier(0.77,0,0.175,1);will-change: transform;justify-content: flex-start;}
.testimonial-card {background: #fff;border-radius: 20px;box-shadow: 0 2px 16px #0001;padding: 36px 32px 28px 32px;min-width: 370px;max-width: 400px;flex: 0 0 370px;text-align: left;display: flex;flex-direction: column;justify-content: space-between;position: relative;}
.testimonial-icon {width: 44px;height: 44px;border-radius: 12px;display: flex;align-items: center;justify-content: center;font-size: 1.5rem;margin-bottom: 18px;}
.testimonial-quote {font-size: 1.18rem;color: #222;margin-bottom: 18px;min-height: 60px;}
.testimonial-tags {margin-bottom: 18px;}
.testimonial-tags span {background: #f6f7fa;color: #222;border-radius: 16px;padding: 4px 16px;font-size: 1rem;margin-right: 8px;display: inline-block;margin-bottom: 4px;}
.testimonial-user {display: flex;align-items: center;gap: 12px;margin-top: 18px;}
.testimonial-user img {width: 44px;height: 44px;border-radius: 50%;object-fit: cover;border: 2px solid #eee;}
.testimonial-name {font-weight: 600;color: #222;font-size: 1.08rem;}
.testimonial-role {color: #888;font-size: 0.98rem;}
.testimonial-video {color: #6c3df4;font-weight: 500;text-decoration: underline;font-size: 1rem;position: absolute;right: 32px;bottom: 24px;}
@media (max-width: 1200px) {.testimonial-track {gap: 16px;}
	.testimonial-card {min-width: 320px;max-width: 340px;flex: 0 0 320px;}
}
@media (max-width: 900px) {
	.testimonial-section {padding: 32px 0 24px 0;}
	.testimonial-track {gap: 8px;}
	.testimonial-card {min-width: 260px;max-width: 300px;flex: 0 0 260px;padding: 24px 12px 18px 12px;}
}

/* Moving Image Gallery Section */
.image-gallery-section {background: #0c2e3d;padding: 80px 0;overflow: hidden;position: relative;}
.gallery-header {text-align: center;margin-bottom: 60px;padding: 0 20px;}
.gallery-header h2 {font-size: 3rem;font-weight: 700;color: #fff;margin-bottom: 16px;letter-spacing: -0.02em;}
.gallery-header p {font-size: 1.2rem;color: #eeeeee;max-width: 600px;margin: 0 auto;line-height: 1.6;}
.gallery-row {margin-bottom: 30px;width: 100%;overflow: hidden;position: relative;}
.gallery-track {display: flex;gap: 24px;width: fit-content;animation-duration: 40s;animation-timing-function: linear;animation-iteration-count: infinite;}
.gallery-row-left .gallery-track {animation-name: slideLeft;}
.gallery-row-right .gallery-track {animation-name: slideRight;}
@keyframes slideLeft {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

@keyframes slideRight {
	0% {
		transform: translateX(-50%);
	}
	100% {
		transform: translateX(0);
	}
}

.gallery-item {position: relative;width: 400px;height: 280px;border-radius:10px;overflow: hidden;box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3);transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);cursor: pointer;flex-shrink: 0;background: #2a2a3e;}
.gallery-item:hover {transform: translateY(-12px) scale(1.02);box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);}
.gallery-item img {width: 100%;height: 100%;object-fit: cover;transition: transform 0.4s ease;filter: brightness(0.9);}
.gallery-item:hover img {transform: scale(1.08);filter: brightness(1.1);}
.gallery-overlay {position: absolute;bottom: 0;left: 0;right: 0;background: linear-gradient(transparent, rgba(0, 0, 0, 0.9));color: white;padding: 32px 24px 24px;transform: translateY(100%);transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.gallery-item:hover .gallery-overlay {transform: translateY(0);}
.gallery-overlay h4 {font-size: 1.4rem;font-weight: 600;margin: 0 0 8px 0;color: #fff;letter-spacing: -0.01em;}
.gallery-overlay p {font-size: 1rem;margin: 0;color: #cccccc;opacity: 0.9;}
/* Pause animation on hover */
.gallery-row:hover .gallery-track {animation-play-state: paused;}
/* Responsive adjustments */
@media (max-width: 1024px) {
	.gallery-item {width: 350px;height: 250px;}
	.gallery-track {gap: 20px;}
}

@media (max-width: 768px) {
	.image-gallery-section {padding: 60px 0;}
	.gallery-header h2 {font-size: 2.4rem;}
	.gallery-header p {font-size: 1.1rem;}
	.gallery-item {width: 300px;height: 220px;}
	.gallery-track {gap: 16px;}
	.gallery-overlay {padding: 24px 20px 20px;}
	.gallery-overlay h4 {font-size: 1.2rem;}
	.gallery-overlay p {font-size: 0.95rem;}
}

@media (max-width: 480px) {
	.image-gallery-section {padding: 50px 0;}
	.gallery-header {margin-bottom: 40px;}
	.gallery-header h2 {font-size: 2rem;}
	.gallery-item {width: 260px;height: 190px;}
	.gallery-track {gap: 12px;}
	.gallery-overlay {padding: 20px 16px 16px;}
	.gallery-overlay h4 {font-size: 1.1rem;}
	.gallery-overlay p {font-size: 0.9rem;}
}

.gallery-track {animation-duration:10s;}

/* Footer Section */
.footer-section {
  background: #222;
  color: #fff;
  font-size: 1rem;
  letter-spacing: 1px;
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
}
.footer-main {
  font-weight: 600;
  margin-bottom: 8px;
}
.footer-links {
  font-size: 0.98rem;
}
.footer-link {
  color: #c6ff4f;
  text-decoration: none;
  margin: 0 8px;
  transition: color 0.2s;
}
.footer-link:hover {
  color: #fff;
  text-decoration: underline;
}
@media (max-width: 900px) {
  .footer-section {
    font-size: 0.95rem;
    border-radius: 0;
    padding: 16px 0;
  }
  .footer-main {
    margin-bottom: 4px;
  }
  .footer-links {
    font-size: 0.92rem;
  }
}
.CTA-section { background: #ffffff; padding: 64px 0; display: flex; align-items: center; justify-content: center; }
.cta-card-1{background-color: #ffffff;}
.cta-btn1:hover, .btn-dark{background-color: #011363;}
/* Header with Logo Left, CTA Right */
.logo-header {
  background: #fff;
  border-bottom: 1px solid #eee;
  padding: 8px 0;
  margin-bottom:20px
}
.logo-header .site-logo {
  height:110px;
  max-width: 180px;
  object-fit: contain;
  display: block;
}
.header-cta-btn {
  font-weight: 700;
  border-radius: 10px;
  padding: 10px 32px;
  font-size: 1.1rem;
  background: #222;
  color: #fff;
  box-shadow: 0 2px 8px #0001;
  transition: background 0.2s, color 0.2s;
}
.header-cta-btn:hover {
  background: #8953ff;
  color: #fff;
}
@media (max-width: 900px) {
  .logo-header .site-logo {
    height: 38px;
    max-width: 120px;
  }
  .header-cta-btn {
    padding: 8px 18px;
    font-size: 1rem;
  }
}