*{margin:0;padding:0;box-sizing:border-box;font-family:'Poppins',sans-serif;}
html{scroll-behavior:smooth;}
body{background:#f4f8fc;}
 
/* HERO */
.hero{
  position:relative;
  padding:140px 8% 80px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:70px;
  background:url("../images/3387682.jpg") center/cover no-repeat;
  overflow:hidden;
}
 
/* image + soft gradient overlay */
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:0.7;
  z-index:-2;
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(11,111,174,0.9), rgba(3,47,75,0.98));
  z-index:-1;
}
 
/* HERO TOP BAR */
.hero-topbar{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  background:#fff;
  padding:15px 4%; /* less side padding to push logo visually more left */
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.hero-topbar img{
  max-width:300px;
  height:auto;
}
 
/* top-right Upwork button */
.hero-topbar .top-cta{
  display:flex;
  align-items:center;
  gap:12px;
}
.hero-topbar .top-cta a{
  font-size:15px;             /* bigger text */
  padding:10px 26px;          /* bigger button */
  border-radius:30px;
  text-decoration:none;
  border:1px solid #00a6e7;
  color:#00a6e7;
  font-weight:600;
  background:rgba(3,47,75,0.02);
  box-shadow:0 0 0 rgba(0,166,231,0);
  transition:box-shadow 0.3s ease, background 0.3s ease, color 0.3s ease, transform 0.3s ease;
}
.hero-topbar .top-cta a:hover{
  background:#00a6e7;
  color:#fff;
  box-shadow:0 0 18px rgba(0,166,231,0.85);
  transform:translateY(-1px);
}
 
/* HERO CONTENT */
.hero-content{
  max-width:480px;
  color:#fff;
  text-align:center;
  animation:fadeLeft 1s ease;
}
 
.hero-content h1{font-size:36px;margin-bottom:20px;}
.hero-content p{font-size:18px;margin-bottom:35px;}
.cta-buttons{
  display:flex;
  justify-content:center;
}
.btn-primary,.btn-secondary{
  padding:14px 32px;border-radius:30px;text-decoration:none;transition:.4s;
}
.btn-primary{background:#00a6e7;color:#fff;font-weight:600;}
.btn-secondary{border:2px solid #00a6e7;color:#fff;}
.btn-primary:hover,.btn-secondary:hover{
  transform:translateY(-4px);
  box-shadow:0 0 25px rgba(0,166,231,.7);
}
 
/* FORM */
.hero-form{
  background:#fff;padding:40px;border-radius:20px;width:420px;
  box-shadow:0 20px 50px rgba(0,0,0,.25);
  animation:fadeUp 1s ease;
  margin-top:25px;
}
.form-title{text-align:center;font-size:26px;margin-bottom:22px;color: rgb(0, 0, 0);}
.form-title-footer{text-align:center;font-size:30px;margin-bottom:22px;color: rgb(255, 255, 255);}
.calendly-info {text-align:center;}
.hero-form input,.hero-form textarea{
  width:100%;padding:14px;margin-bottom:15px;border-radius:10px;border:1px solid #ddd;
}
/* Phone input pill shape override */
.hero-form .iti input{
  border-radius: 999px !important;
}

.mess{
  height:115px;
}
/* Fix spacing for intl-tel-input */
/* ===== FORCE OVERRIDE intl-tel-input ===== */

.hero-form .iti {
  width: 100% !important;
}

.hero-form .iti input {
  border-radius: 999px !important;
  padding: 14px 18px 14px 105px !important;
  border: 1px solid #e6e6e6 !important;
  background: #fff !important;
  font-size: 15px !important;
}
.iti__flag-container {width:100px;}
/* Dropdown */
.hero-form .iti__country-list {
  background: #fff !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,0.08) !important;
  border: 1px solid #ececec !important;
  margin-top: 8px !important;
  max-height: 240px !important;
}

/* Country row */
.hero-form .iti__country {
  padding: 10px 18px !important;
  font-size: 14px !important;
}

/* Hover */
.hero-form .iti__country:hover {
  background: #f5f5f5 !important;
}

/* Selected */
.hero-form .iti__country.iti__highlight {
  background: #efefef !important;
}

/* Dial code */
.hero-form .iti__dial-code {
  color: #666 !important;
  font-weight: 500 !important;
}



.hero-form button{
  width:100%;
  padding:14px;
  border:none;
  border-radius:30px;
  background:#00a6e7;
  color:#fff;
  font-size:16px;
  font-weight:500;
  box-shadow:0 0 0 rgba(0,166,231,0);
  transition:box-shadow 0.3s ease, background 0.3s ease, transform 0.3s ease;
}
.hero-form button:hover{
  background:#00b8ff;
  box-shadow:0 0 20px rgba(0,166,231,0.9);
  transform:translateY(-2px);
}


/* SERVICES */
.services{
  background:#fff;
  padding:80px 8%;
  text-align:center;
}

.services h2{
  font-size:36px;
  margin-bottom:50px;
}

/* GRID LAYOUT */
.services-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:30px;
  box-shadow:0 20px 30px rgba(0,0,0,.08);
  border-radius:16px;
  
}

/* CARD */
.service-card{
  background:#f4f8fc;
  padding:30px;
  border-radius:16px;
  box-shadow:0 20px 30px rgba(0,0,0,.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-card:hover{
  transform:translateY(-6px);
  box-shadow:0 0 30px rgba(0,166,231,.35);
}

.service-card i{
  font-size:34px;
  color:#00a6e7;
  margin-bottom:15px;
}

.service-card h3{
  margin-bottom:10px;
  font-size:20px;
}

.service-card p{
  font-size:15px;
  color:#333;
}

/* RESPONSIVE */
@media (max-width: 1100px){
  .services-grid{
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px){
  .services-grid{
    grid-template-columns: 1fr;
  }
}


 
/* WHY TRUST US */
.why{
  background:url("../images/abstract-futuristic-technology-with-polygonal-shapes-dark-blue-background.jpg") center/cover no-repeat;
  color:#fff;
  padding:80px 8%;
  text-align:center;
}
.why h2{font-size:36px;margin-bottom:15px;}
.why .subtitle{opacity:.9;margin-bottom:50px;}
.why-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:30px;
}
.why-card{
  background:rgba(255,255,255,.12);
  padding:30px;border-radius:16px;
  transition:.5s;
}
.why-card:hover{
  transform:translateY(-10px);
  box-shadow:0 0 25px rgba(0,166,231,.6);
}
 
/* SLIDER CONTAINER */
.success-slider {
  position: relative;
  max-width: 1100px;
  margin: 40px auto 0;
  min-height: 280px; /* prevents jump */
}
 
 
/* SLIDE */
.success-slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  gap: 40px;
 
  opacity: 0;
  transform: translateX(40px);
  pointer-events: none;
 
  transition:
    opacity 0.5s ease,
    transform 0.5s ease;
}
 
.success-slide.active {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}
 
 
/* IMAGE */
.success-stories .story-img {
  width: 45%;
  height: 260px;
  object-fit: cover;
  border-radius: 14px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.25);
}
 
/* TEXT CONTENT */
.story-content {
  width: 55%;
  text-align: left;
}
 
.story-content h3 {
  font-size: 22px;
  margin-bottom: 14px;
  color: #ffffff;
}
 
.story-content p {
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 8px;
}
 
/* RESULTS */
.results {
  margin-top: 14px;
}
 
.results p {
  font-weight: 600;
}
 
/* NAV BUTTONS */
.slider-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #032d60;
  color: #fff;
  border: none;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  font-size: 20px;
  cursor: pointer;
  transition: background 0.2s ease;
}
 
.slider-btn:hover {
  background: #021f44;
}
 
.slider-btn.prev {
  left: -60px;
}
 
.slider-btn.next {
  right: -60px;
}
 
/* RESPONSIVE */
@media (max-width: 900px) {
  .success-slide {
    flex-direction: column;
  }
 
  .success-stories .story-img,
  .story-content {
    width: 100%;
  }
 
  .slider-btn.prev {
    left: 10px;
  }
 
  .slider-btn.next {
    right: 10px;
  }
}
 
 
/* Description text */
.success-stories .why-card p{
  font-size:15px;
  line-height:1.6;
  opacity:0.95;
}


/* OVERLAY */
.modal-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.65);
  display:none;
  justify-content:center;
  align-items:center;
  z-index:9999;
}

/* BOX */
.modal-box{
  background:#fff;
  width:90%;
  max-width:1100px;
  border-radius:8px;
  position:relative;
  animation:fadeInScale 0.35s ease;
	height: 80%;
  overflow: auto;
}

/* CLOSE */
.modal-close{
  position:absolute;
  top:12px;
  right:16px;
  background:none;
  border:none;
  font-size:28px;
  cursor:pointer;
}

/* CONTENT */
.modal-content{
  display:flex;
}

/* LEFT */
.modal-form{
  width:45%;
  padding:40px;
}

.modal-form h2{
  font-size:32px;
  margin-bottom:10px;
}

.modal-form h2 span{
  color:#070483;
}

.modal-form p{
  margin-bottom:20px;
  color:#555;
}

.modal-form input,
.modal-form textarea{
  width:100%;
  padding:14px;
  margin-bottom:15px;
  border-radius:6px;
  border:1px solid #ddd;
}

.modal-form textarea{
  height:100px;
}

.modal-submit{
  width:100%;
  background:#00a6e7;
  color:#fff;
  padding:14px;
  border:none;
  border-radius:6px;
  font-size:18px;
  cursor:pointer;
}

/* RIGHT */
.modal-info{
  width:55%;
  background:#f8fbff;
  padding:40px;
}

.modal-banner{
  background:#0b3c6d;
  color:#fff;
  padding:14px;
  font-size:18px;
  font-weight:600;
  margin-bottom:30px;
}

.modal-stats{
  display:flex;
  justify-content:space-between;
  text-align:center;
  margin-bottom:30px;
}

.modal-stats strong{
  font-size:22px;
  display:block;
}

.modal-stats span{
  font-size:14px;
  color:#555;
}

/* BADGES */
.modal-badges{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}

.modal-badges span{
  background:#1b4fbf;
  color:#fff;
  padding:10px;
  text-align:center;
  border-radius:6px;
  font-size:12px;
}
/* CERTIFICATION IMAGE BELOW BADGES */
.modal-certification-image{
  margin-top: 20px;
  display: flex;
  justify-content: center;
}

.modal-certification-image img{
  width: 100%;
  max-width: 480px;   /* fits perfectly in modal-info */
  height: auto;
  object-fit: contain;
}

/* ANIMATION */
@keyframes fadeInScale{
  from{opacity:0;transform:scale(0.95);}
  to{opacity:1;transform:scale(1);}
}

/* MOBILE */
@media(max-width:900px){
  .modal-content{
    flex-direction:column;
  }
  .modal-form,
  .modal-info{
    width:100%;
  }
}

 
/* ================= TESTIMONIAL MARQUEE ================= */
.testimonials h2{
  font-size:36px;
  margin-bottom:20px;
  color:#000000;
}
.testimonials{
  padding:80px 8% 20px;
  text-align:center;
  overflow:hidden;
 
}
 
/* OUTER VIEWPORT */
.testimonial-slider{
  width:100%;
  overflow:hidden;
  position:relative;
  margin-top: 50px;
 
}
 
/* MOVING STRIP */
.testimonial-track{
  display:flex;
  gap:30px;
  width:max-content;
  will-change: transform;
}
 
 
 
 
/* CARD WIDTH (IMPORTANT) */
.testimonial{
  flex: 0 0 300px;
  max-width: 300px;
 
  background: #ffffff;
  padding: 30px;
  border-radius: 20px;              /* 👈 rounded corners */
  box-shadow: 0 20px 45px rgba(0,0,0,0.15); /* 👈 depth */
 
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}
 
.testimonial:hover{
  transform: translateY(-8px);
  box-shadow: 0 30px 60px rgba(0,166,231,0.35);
}
 
 
/* ANIMATION */
@keyframes testimonial-scroll{
  from{
    transform:translateX(0);
  }
  to{
    transform:translateX(-50%);
  }
}
 
 
/* TESTIMONIAL PROFILE IMAGE */
.testimonial-avatar{
  width:72px;
  height:72px;
  border-radius:50%;
  object-fit:cover;
  margin:0 auto 14px;
  border:3px solid #00a6e7;
}
 
/* NAME */
.testimonial-name{
  font-size:18px;
  font-weight:600;
  color:#032f4b;
  margin-bottom:4px;
}
 
/* ROLE / COMPANY */
.testimonial-role{
  display:block;
  font-size:14px;
  color:#666;
  margin-bottom:10px;
}
 
/* STAR RATING */
.testimonial-stars{
  font-size:18px;
  color:#f5b301;
  margin-bottom:14px;
  letter-spacing:2px;
}
 
/* REVIEW TEXT */
.testimonial-text{
  font-size:16px;
  color:#333;
  line-height:1.6;
}
 
 
.testimonial-arrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: none;
  background: #032d60;
  color: #fff;
  font-size: 20px;
  cursor: pointer;
  z-index: 10;
  box-shadow: 0 10px 25px rgba(0,0,0,0.25);
  transition: background 0.3s ease, transform 0.2s ease;
}
 
.testimonial-arrow:hover{
  background: #00a6e7;
  transform: translateY(-50%) scale(1.1);
}
 
.testimonial-arrow.prev{
  left: 0px;
}
 
.testimonial-arrow.next{
  right: 0px;
}
 
/* FOOTER */
/* CONTACT SECTION */
.contact{
  background:url("../images/plexus-technology-abstract-line-background.jpg") center/cover no-repeat;
  padding: 80px 8% 40px;
}
 
.contact .calendly-text{
  /*padding-left: 155px;
  padding-right: 100px;*/
  color: white;
}
 
 
 
 
 
 
/* WHY CHOOSE US */
.why-choose{
  background:#ffffff;
  padding:80px 8% 0px;
}
 
.why-choose-container{
  max-width:1200px;
  margin:auto;
  display:flex;
  align-items:center;
  gap:70px;
}
 
/* LEFT CONTENT */
.why-choose-content{
  flex:1;
  text-align:left;
}
 
.why-choose-content h2{
  font-size:38px;
  margin-bottom:35px;
  color:#032f4b;
}
 
.why-item{
  margin-bottom:28px;
}
 
/* HEADING */
.why-item h3{
  position:relative;
  font-size:20px;
  color:#111173;
  margin-bottom:6px;
  padding-left:22px;
}
 
/* ICON */
.why-item h3::before{
  content:"\f0e7";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  position:absolute;
  left:0;
  top:2px;
  color:#111173;
}
 
/* TEXT */
.why-item p{
  font-size:16px;
  color:#333;
  line-height:1.6;
}
 
/* RIGHT IMAGE */
.why-choose-image{
  margin-top: 50px;
  flex:1;
  text-align:right;
}
 
.why-choose-image img{
  max-width:90%;
}
 
/* RESPONSIVE */
@media(max-width:900px){
  .why-choose-container{
    flex-direction:column;
    text-align:center;
  }
 
  .why-choose-content{
    text-align:center;
  }
 
  .why-choose-image{
    text-align:center;
  }
}
 
/* ================= CTA CARD ================= */
 
.cta-card-wrapper {
  margin-top: 70px;
  display: flex;
  justify-content: center;
}
 
/* Black text for first part of CTA heading */
.cta-card-content h1 .cta-black {
  color: #000000;
}
 
.cta-card {
  background-color: #ffffff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 40px 50px;
  max-width: 1100px;
  width: 100%;
}
 
.cta-card-content {
  flex: 1;
  padding-right: 24px;
}
 
.cta-card-content h1 {
  font-size: 36px;
  font-weight: 800;
  color: #032d60;
  margin-bottom: 28px;
  line-height: 1.25;
}
 
.cta-button {
  display: inline-block;
  background-color: #00a6e7;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none;
  padding: 16px 32px;
  border-radius: 30px;
  transition: background-color 0.2s ease, transform 0.2s ease;
  margin-top: 35px;
 
}
 
.cta-button:hover {
  background-color: #00a6e7;
  transform: translateY(-4px);
  box-shadow:0 0 25px rgba(0,166,231,.7);
  transition: 0.2s ease;
}
 
 
.cta-illustration {
  flex: 0 0 420px;
  display: flex;
  justify-content: center;
}
 
.cta-illustration img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
 
/* ================= RESPONSIVE ================= */
 
@media (max-width: 900px) {
  .cta-card {
    flex-direction: column-reverse;
    text-align: center;
    padding: 30px;
  }
 
  .cta-card-content {
    padding-right: 0;
    margin-top: 25px;
  }
 
  .cta-card-content h1 {
    font-size: 36px;
  }
 
  .cta-illustration {
    width: 80%;
  }
}
 
 
/* Animate only when JS enables it */
.js-animate .why-item{
  opacity: 0;
  transform: translateX(-25px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
 
.js-animate .why-item.show{
  opacity: 1;
  transform: translateX(0);
}
 
.js-animate .why-item h3::before{
  transform: scale(0);
  transition: transform 0.4s ease 0.2s;
}
 
.js-animate .why-item.show h3::before{
  transform: scale(1);
}
 
 
 
.copyright{
  background:#fff;
  text-align:center;
  padding:18px 8%;
  font-size:14px;
  color:#555;
}
 
/* FAQs */
.faqs{
  background:#f4f8fc;
  padding:80px 8% 20px;
  margin-top: -50px;
}
 
.faqs h2{
  text-align:center;
  font-size:36px;
  margin-bottom:45px;
  color:#032f4b;
}
 
.faq-container{
  max-width:900px;
  margin:auto;
}
 
/* FAQ Item */
.faq-item{
  background:#fff;
  border-radius:14px;
  margin-bottom:18px;
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
  padding:0;
}
 
/* Remove default arrow */
.faq-item summary{
  list-style:none;
}
 
.faq-item summary::-webkit-details-marker{
  display:none;
}
 
/* Question */
.faq-item summary{
  cursor:pointer;
  padding:22px 26px;
  font-size:18px;
  font-weight:600;
  color:#111173;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
 
/* Icon rotation */
.faq-item summary i{
  transition:transform 0.3s ease;
}
 
/* Answer */
.faq-item p{
  padding:0 26px 22px;
  font-size:16px;
  color:#333;
  line-height:1.6;
}
 
/* Open state */
.faq-item[open] summary i{
  transform:rotate(180deg);
}
 
 
/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(40px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeLeft{from{opacity:0;transform:translateX(-60px);}to{opacity:1;transform:translateX(0);}}
 
/* RESPONSIVE */
@media(max-width:900px){
  .hero{flex-direction:column;padding-top:160px;}
  .hero-topbar{
    flex-direction:column;
    gap:10px;
    padding:10px 6%;
  }
  .hero-topbar img{
    max-width:230px;
  }
  .hero-topbar .top-cta a{
    font-size:14px;
    padding:8px 22px;
  }
	
	.cta-illustration {
  flex: 0 0 0px;
  display: flex;
  justify-content: center;
}
	
}
@media(max-width:768px){
	.success-slider {
  		min-height: 700px;
	}
	.slider-btn {top: 20%;}
	.slider-btn.prev {
    	left: -25px;
  	}
	.slider-btn.next {
   		 right: -25px;
  	}
	
	/*.copyright{width:85%;}*/
	.privacy-policy {
	  float: none !important;
	  margin-top: 5px;
	}
}
@media screen and (min-width: 769px) and (max-width: 900px) {
	.success-slider {
  		min-height: 500px;
	}
	.slider-btn {top: 25%;}
	.slider-btn.prev {
    	left: -25px;
  	}
	.slider-btn.next {
   		 right: -25px;
  	}
}
.iti {margin-bottom: 15px; width: 100%;}
.error_cls {color: #f00;
  padding: 10px 15px;
  text-align: left;
  border: 1px solid #f00;
  margin-top: 15px;
}
.privacy-policy {float: right; margin-right: 20px;}
.privacy-policy a{color: #555; text-decoration: none;}
.privacy-policy a:hover{color: #00BFF5; text-decoration: none;}
.hero-form .iti input {border-radius: 6px !important;}