/* ========================================
GLOBAL RESET
======================================== */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
background:#ffffff;
color:#1D1D1B;
line-height:1.6;
padding-bottom:80px;
 font-family: 'Inter', sans-serif;
  line-height: 1.6;
  color: #222;
}

h1, h2, h3 {
  font-family: 'Poppins', sans-serif;
  letter-spacing: 0.5px;
}


img{
width:100%;
display:block;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

/* ========================================
HEADINGS
======================================== */

.section-title{
text-align:center;
font-size:34px;
margin-bottom:20px;
}

.section-subtitle{
text-align:center;
color:#666;
margin-bottom:40px;
}

/* ========================================
HERO SECTION
======================================== */

.hero{
padding:0 0 80px 0;
text-align:center;
}

.hero-badge{
display:inline-block;

background:#1D1D1B;

color:#e6e6e6;

padding:15px 22px;

border-radius:10px;

font-size:14px;
font-weight:600;

margin-top:0;
margin-bottom:20px;
}

.hero-brand{
font-weight:700;
letter-spacing:4px;
margin-bottom:20px;
}

.hero-heading{
font-size:44px;
margin-bottom:20px;
}

.hero-heading span{
color:#FCB111;
}

.hero-subtext{
font-size:18px;
margin-bottom:10px;
}

.hero-note{
font-size:14px;
color:#777;
}


.hero-banner {
  display: flex;
  justify-content: center;
  margin: 40px 0 20px;
  padding: 0 16px; /* mobile side spacing */
}

.hero-banner img {
  width: 100%;
  max-width: 720px; /* 🔥 controls size like screenshot */
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
  display: block;
}


.hero-banner img {
  width: 100%;
  max-width: 720px;
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
  display: block;
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.hero-banner img:hover {
  transform: scale(1.04);
  box-shadow: 0 25px 80px rgba(0, 0, 0, 0.3);
}







/* ========================================
PARTNER BAR
======================================== */

.partner-bar{
margin-top:40px;
}

    .partner-container{
display:flex;
justify-content:center;
align-items:center;
gap:40px;
flex-wrap:wrap;
margin-bottom: 30px;
}

.partner-container img{
height:60px;
width:120px;
object-fit:contain;
}

.divider{
width:1px;
height:30px;
background:#ddd;
}

/* ========================================
BENEFITS
======================================== */


/* SECTION */
.benefits {
  padding: 100px 0;
  background: #ffffff;
}

/* GRID */
.benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 35px;
  margin-top: 50px;
}

/* CARD */
.benefit-card {
  background: #ffffff;
  padding: 35px 25px;
  border-radius: 16px;
  text-align: center;
  cursor: pointer;
  border: 1px solid rgba(0,0,0,0.05);
  transition: all 0.35s ease;
  position: relative;
  overflow: hidden;
}

/* HOVER CARD */
.benefit-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 25px 60px rgba(0,0,0,0.12);
}

/* ICON BOX */
.icon {
  width: 60px;
  height: 60px;
  margin: 0 auto 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(252, 177, 17, 0.1);
  transition: all 0.4s ease;
}

/* ICON SVG */
.icon svg {
  width: 28px;
  height: 28px;
  stroke: #1D1D1B;
  transition: transform 0.4s ease;
}

/* 🔥 ICON ANIMATION (REAL ANIMATION, NOT JUST SCALE) */
.benefit-card:hover .icon svg {
  animation: iconBounce 0.6s ease;
}

/* KEYFRAMES */
@keyframes iconBounce {
  0% {
    transform: translateY(0) scale(1);
  }
  30% {
    transform: translateY(-12px) scale(1.15) rotate(6deg);
  }
  60% {
    transform: translateY(4px) scale(0.95);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}

/* ICON BG HOVER */
.benefit-card:hover .icon {
  background: #FCB111;
}

/* TEXT */
.benefit-card p {
  font-size: 15px;
  line-height: 1.6;
  color: #1D1D1B;
}

/* MOBILE */
@media (max-width: 768px) {
  .benefits-grid {
    grid-template-columns: 1fr;
  }
}

/* DISABLE HOVER ON MOBILE */
@media (hover: none) {
  .benefit-card:hover {
    transform: none;
    box-shadow: none;
  }

  .benefit-card:hover .icon svg {
    animation: none;
  }
}





/* ========================================
CHALLENGES
======================================== */

/* SECTION */
.challenges {
  padding: 100px 0;
  background: #ffffff;
}

/* GRID */
.challenge-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
  margin-top: 40px;
}

/* CARD */
.challenge-card {
  position: relative;
  background: #fafafa;
  padding: 25px 20px 25px 55px;
  border-radius: 14px;
  text-align: left;
  font-size: 15px;
  color: #1D1D1B;
  cursor: pointer;
  border: 1px solid rgba(0,0,0,0.05);
  transition: all 0.35s ease;
}

/* CHECK ICON */
.challenge-card .check {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%) scale(0.8);
  width: 26px;
  height: 26px;
  background: rgba(252, 177, 17, 0.2);
  color: #FCB111;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  font-weight: bold;
  transition: all 0.3s ease;
}

/* HOVER EFFECT */
.challenge-card:hover {
  background: #fff;
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.08);
  border-color: rgba(252, 177, 17, 0.4);
}

/* ICON ANIMATION */
.challenge-card:hover .check {
  background: #FCB111;
  color: #fff;
  transform: translateY(-50%) scale(1.1) rotate(8deg);
}

/* SUBTLE LEFT BORDER GLOW */
.challenge-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 4px;
  background: #FCB111;
  opacity: 0;
  transition: 0.3s;
  border-radius: 10px 0 0 10px;
}

.challenge-card:hover::before {
  opacity: 1;
}

/* MOBILE */
@media (max-width: 768px) {
  .challenge-grid {
    grid-template-columns: 1fr;
  }
}

/* DISABLE HOVER ON MOBILE */
@media (hover: none) {
  .challenge-card:hover {
    transform: none;
    box-shadow: none;
  }

  .challenge-card:hover .check {
    transform: translateY(-50%);
  }
}



/* ========================================
SERVICES
======================================== */

.services {
  padding: 100px 0;
  background: linear-gradient(180deg, #fafafa, #ffffff);
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  margin-top: 50px;
}

/* CARD */
.service-card {
  position: relative;
  background: #fff;
  padding: 40px 25px;
  border-radius: 16px;
  text-align: center;
  border: 1px solid rgba(0,0,0,0.05);
  cursor: pointer;
  overflow: hidden;
  transition: all 0.35s ease;
}

/* 🔥 CARD HOVER */
.service-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 25px 60px rgba(0,0,0,0.12);
}

/* ICON */
.icon {
  width: 60px;
  height: 60px;
  margin: 0 auto 20px;
  background: rgba(252, 177, 17, 0.1);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.4s ease;
}

.icon svg {
  width: 28px;
  height: 28px;
  stroke: #1D1D1B;
  fill: none;
  stroke-width: 2;
  transition: transform 0.4s ease;
}

/* 🔥 ICON ANIMATION */
.service-card:hover .icon {
  background: #FCB111;
}

.service-card:hover .icon svg {
  transform: scale(1.2) rotate(6deg);
  stroke: #fff;
}

/* TEXT */
.service-card h3 {
  font-size: 18px;
  margin-bottom: 10px;
  color: #1D1D1B;
  transition: color 0.3s ease;
}

.service-card p {
  font-size: 14px;
  color: #555;
}

/* 🔥 BOTTOM LINE ANIMATION */
.service-card::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0%;
  height: 3px;
  background: #FCB111;
  transition: all 0.4s ease;
  transform: translateX(-50%);
}

.service-card:hover::after {
  width: 80%;
}

/* 🔥 SUBTLE GLOW */
.service-card:hover {
  box-shadow: 0 20px 60px rgba(252, 177, 17, 0.2);
}

/* MOBILE */
@media (max-width: 768px) {
  .services-grid {
    grid-template-columns: 1fr;
  }
}









/* ========================================
CTA BUTTON
======================================== */

.cta-btn{

position:relative;
display:inline-block;
background:#FCB111;
color:#1D1D1B;
padding:20px 45px;
border-radius:12px;
font-weight:700;
font-size:18px;
text-decoration:none;
overflow:hidden;
transition:0.3s;
animation:shake 3s infinite;

}

.cta-btn span{
display:block;
font-size:14px;
font-weight:500;
}

/* shine effect */

.cta-btn::before{

content:'';
position:absolute;
top:0;
left:-75%;
width:50%;
height:100%;
background:rgba(255,255,255,0.6);
transform:skewX(-25deg);
animation:shine 3s infinite;

}

@keyframes shine{

0%{left:-75%;}
100%{left:125%;}

}

/* shake animation */

@keyframes shake{

0%,100%{transform:translateX(0);}
10%{transform:translateX(-2px);}
20%{transform:translateX(2px);}
30%{transform:translateX(-2px);}
40%{transform:translateX(2px);}

}

/* center CTA */

.cta-center{
text-align:center;
margin-top:40px;
}

.cta-note{
margin-top:10px;
font-size:14px;
color:#777;
}

/* ========================================
LEAD FORM
======================================== */

.lead-form{
padding:80px 0;
background-color: #1D1D1B;
}

.lead-form form{
max-width:600px;
margin:auto;
display:flex;
flex-direction:column;
gap:15px;
}

.lead-form .container .section-title {
  color: white;
}

.form-row{
display:flex;
gap:15px;
}

.form-row input{
flex:1;
}

.lead-form input,
.lead-form select{
padding:14px;
border:1px solid #ddd;
border-radius:8px;
width:100%;
}

/* ========================================
SLIDER BASE
======================================== */

.slider{
overflow:hidden;
margin-top:40px;
}

.slider-track{
display:flex;
gap:40px;
width:max-content;
animation:scroll 25s linear infinite;
}

@keyframes scroll{

0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}

}

/* ========================================
TESTIMONIALS
======================================== */

.testimonials {
  padding: 100px 0;
  background: linear-gradient(180deg, #fafafa, #f0f3ff);
  overflow: hidden;
}

.section-title {
  text-align: center;
  margin-bottom: 50px;
}

/* Slider */
.slider {
  overflow: hidden;
  position: relative;
}

/* Gradient edges */
.slider::before,
.slider::after {
  content: "";
  position: absolute;
  top: 0;
  width: 80px;
  height: 100%;
  z-index: 2;
}

.slider::before {
  left: 0;
  background: linear-gradient(to right, #fafafa, transparent);
}

.slider::after {
  right: 0;
  background: linear-gradient(to left, #fafafa, transparent);
}

/* Track */
.slider-track {
  display: flex;
  gap: 25px;
  animation: scroll 25s linear infinite;
}

/* Pause on hover */
.slider:hover .slider-track {
  animation-play-state: paused;
}

/* Card */
.testimonial-card {
  min-width: 320px;
  max-width: 320px;
  background: #ffffff;
  padding: 30px 25px;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
  transition: all 0.3s ease;
  position: relative;
}

/* Hover */
.testimonial-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}

/* Quote icon */
.testimonial-card::before {
  content: "“";
  font-size: 60px;
  position: absolute;
  top: 10px;
  left: 20px;
  color: #4f46e5;
  opacity: 0.15;
}

/* Stars */
.stars {
  color: #fbbf24;
  margin-bottom: 10px;
  font-size: 14px;
}

/* Text */
.testimonial-card p {
  font-size: 15px;
  line-height: 1.7;
  color: #444;
  margin-bottom: 20px;
}

/* Name */
.testimonial-card h4 {
  font-size: 16px;
  font-weight: 600;
  color: #111;
  margin-bottom: 5px;
}

/* Role */
.client-role {
  font-size: 13px;
  color: #777;
}

/* Animation */
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* ========================================
BRANDS
======================================== */

.brands{
padding:60px 0;
background:#ffffff;
}

.section-title{
text-align:center;
font-size:32px;
margin-bottom:40px;
}

.slider{
overflow:hidden;
position:relative;
width:100%;
}

.slider-track{
display:flex;
align-items:center;
gap:60px;
width:max-content;
animation:brandScroll 60s linear infinite;
}

.slider-track img{
width:120px;
height:auto;
object-fit:contain;
opacity:0.8;
transition:0.3s;
}

.slider-track img:hover{
opacity:1;
}

@keyframes brandScroll{
0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}
}

/* ========================================
RESULTS
======================================== */

.results{
padding:80px 0;
background:#fafafa;
}


.results img{
height:350px;
width:auto;
border-radius:10px;
}

.results .slider:hover .slider-track{
animation-play-state: paused;
}

.results .slider:hover{
cursor: pointer;
}


/* ========================================
ABOUT
======================================== */

.about{
padding:80px 0;
text-align:center;
}

.about p{
max-width:700px;
margin:auto;
color:#555;
}

/* ========================================
FOOTER
======================================== */

/* Footer styles */
.footer{
  background:#1D1D1B;
  color:white;
  padding:60px 0;
  text-align:center;
}

/* Social icons container */
.footer-social{
  margin-bottom:20px;
}

/* Default icon style */
.footer-social a span i{
  font-size: 22px;
  margin: 0 12px;
  color: white;
  transition: all 0.3s ease;
  display: inline-block;
}

/* LinkedIn hover */
.footer-social a.linkedin:hover span i{
  color: #0A66C2;
}

/* WhatsApp hover */
.footer-social a.whatsapp:hover span i{
  color: #25D366;
}

/* Instagram hover with gradient */
.footer-social a.instagram:hover span i{
  background: linear-gradient(45deg, #feda75, #fa7e1e, #d62976, #962fbf, #4f5bd5);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent; /* fallback */
}

/* Remove default link underline and outline */
.footer-social a {
  text-decoration: none;   /* removes underline */
  outline: none;           /* removes focus outline */
  display: inline-block;
}

/* Optional: remove focus border when clicked via keyboard */
.footer-social a:focus {
  outline: none;
  box-shadow: none;
}

.footer-links{
margin-bottom:20px;
}

.footer-links a{
color:white;
text-decoration:none;
margin:0 10px;
font-size:14px;
}

/* ========================================
STICKY BAR
======================================== */

.sticky-bar{

position:fixed;
bottom:0;
left:0;
width:100%;
background:#1D1D1B;
color:white;
padding:15px 0;
z-index:999;

}

.sticky-inner{

display:flex;
justify-content:space-between;
align-items:center;

}

.sticky-bar  .cta-btn {
  padding: 15px 30px;
}


.popup-overlay{
position: fixed;
top:0;
left:0;
width:100%;
height:100%;
background: rgba(29,29,27,0.9);
display:none;
justify-content:center;
align-items:center;
z-index:9999;
}

.popup-content{
background:#FFFFFF;
padding:40px;
width:500px;
border-radius:10px;
position:relative;
}

.close-btn{
position:absolute;
right:15px;
top:10px;
font-size:25px;
cursor:pointer;
color:#1D1D1B;
}

.popup-content h2{
margin-bottom:20px;
color:#1D1D1B;
}

.popup-content input,
.popup-content select{
width:100%;
padding:12px;
margin-bottom:12px;
border:1px solid #ddd;
border-radius:5px;
}

.form-row{
display:flex;
gap:10px;
}

.form-row input{
width:50%;
}

.popup-content button{
width:100%;
background:#FCB111;
border:none;
padding:14px;
font-size:16px;
font-weight:bold;
color:#1D1D1B;
border-radius:6px;
cursor:pointer;
}








/* ========================================
LARGE LAPTOPS
======================================== */

@media (max-width:1200px){

.hero-heading{
font-size:38px;
}

.container{
width:92%;
}

.services-grid{
grid-template-columns:repeat(3,1fr);
}

.benefits-grid{
grid-template-columns:repeat(2,1fr);
}

.challenge-grid{
grid-template-columns:repeat(2,1fr);
}

}


/* ========================================
TABLETS
======================================== */

@media (max-width:992px){

.section-title{
font-size:30px;
}

.hero-heading{
font-size:34px;
}

.hero-subtext{
font-size:16px;
}

.partner-container{
gap:30px;
}

.partner-container img{
height:50px;
width:100px;
}

.services-grid{
grid-template-columns:repeat(2,1fr);
}

.benefits-grid{
grid-template-columns:repeat(2,1fr);
}

.challenge-grid{
grid-template-columns:repeat(2,1fr);
}

.results img{
height:280px;
}

.popup-content{
width:90%;
}

}


/* ========================================
SMALL TABLETS
======================================== */

@media (max-width:768px){

.section-title{
font-size:26px;
}

.hero-heading{
font-size:30px;
}

.hero{
padding-bottom:15px;
}

.hero-badge{
font-size:13px;
padding:12px 18px;
}

.hero-subtext{
font-size:15px;
}

.partner-container{
gap:20px;
}

.partner-container img{
height:45px;
width:90px;
}

.benefits-grid{
grid-template-columns:1fr;
}

.benefits {
    padding: 16px 0;
}

.challenges {
    padding: 15px 0;
}

.services {
    padding: 15px 0;
}

.challenge-grid{
grid-template-columns:1fr;
}

.services-grid{
grid-template-columns:1fr;
}

.testimonial-card{
min-width:260px;
}

.results img{
width:100%;
height:auto;
max-height:220px;
margin:auto;
}

.form-row{
flex-direction:column;
}

.form-row input{
width:100%;
}

.sticky-inner{
flex-direction:column;
gap:10px;
text-align:center;
}

.lead-form {
    padding: 20px 0;
}


 .section-title {
  margin-bottom: 20px;
}

.testimonials{
  padding: 20px 0px;
}

}


/* ========================================
MOBILE
======================================== */

@media (max-width:576px){

.section-title{
font-size:24px;
}

.section-subtitle{
font-size:14px;
}

.hero-heading{
font-size:26px;
}

.hero-subtext{
font-size:14px;
}

.hero-note{
font-size:13px;
}

.benefits {
    padding: 16px 0;
}

.challenges {
    padding: 15px 0;
}

.services {
    padding: 15px 0;
}


.partner-container{
gap:15px;
}

.partner-container img{
height:40px;
width:80px;
}

.cta-btn{
padding:16px 30px;
font-size:16px;
}

.cta-btn span{
font-size:12px;
}

.benefit-card,
.challenge-card,
.service-card{
padding:22px;
}

.testimonial-card{
min-width:240px;
padding:22px;
}

.popup-content{
padding:30px 20px;
}

.footer-links a{
display:block;
margin:8px 0;
}

.footer-social a span i{
font-size:20px;
}

.lead-form {
    padding: 20px 0;
}


 .section-title {
  margin-bottom: 20px;
}

.testimonials{
  padding: 20px 0px;
}


}


/* ========================================
SMALL MOBILE (iPhone SE / 5s)
======================================== */

@media (max-width:400px){

.hero-heading{
font-size:22px;
}

.hero-badge{
font-size:12px;
padding:10px 14px;
}

.cta-btn{
font-size:15px;
padding:14px 22px;
}

.section-title{
font-size:22px;
}

.partner-container img{
height:35px;
width:70px;
}

.benefits {
    padding: 16px 0;
}

.challenges {
    padding: 15px 0;
}

.services {
    padding: 15px 0;
}


.testimonial-card{
min-width:210px;
}

.lead-form {
    padding: 20px 0;
}


 .section-title {
  margin-bottom: 20px;
}

.testimonials{
  padding: 20px 0px;
}

}