/* =========================
   GOOGLE FONT
========================= */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  font-family:'Poppins',sans-serif;
  background:#0b0f19;
  color:#fff;
  overflow-x:hidden;
}

a{
  text-decoration:none;
}

ul{
  list-style:none;
}

img{
  width:100%;
  display:block;
}

.container{
  width:90%;
  max-width:1200px;
  margin:auto;
}

/* =========================
   HEADER
========================= */

.main-header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:999;
  background:#0b0f19dd;
  backdrop-filter:blur(12px);
  border-bottom:1px solid #ffffff10;
}

.header-wrapper{
  height:80px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.logo,
.footer-logo{
  font-size:30px;
  font-weight:700;
  color:#fff;
}

.logo span,
.footer-logo span{
  color:#00d4ff;
}

.navbar{
  display:flex;
  align-items:center;
  gap:40px;
}

.nav-links{
  display:flex;
  gap:30px;
}

.nav-links a{
  color:#fff;
  font-size:15px;
  transition:0.3s;
}

.nav-links a:hover{
  color:#00d4ff;
}

.header-btn{
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  color:#fff;
  padding:12px 24px;
  border-radius:10px;
}

/* HAMBURGER */

.hamburger{
  width:30px;
  display:none;
  flex-direction:column;
  gap:5px;
  cursor:pointer;
}

.hamburger span{
  width:100%;
  height:3px;
  background:#fff;
  border-radius:10px;
}

/* =========================
   HERO SECTION
========================= */

.hero-section{
  min-height:100vh;
  display:flex;
  align-items:center;
  padding-top:100px;
  position:relative;
}

.hero-content{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:50px;
  flex-wrap:wrap;
}

.hero-text{
  flex:1;
  min-width:300px;
}

.hero-tag{
  display:inline-block;
  padding:10px 20px;
  border-radius:50px;
  background:#ffffff10;
  margin-bottom:25px;
}

.hero-text h1{
  font-size:65px;
  line-height:1.1;
  margin-bottom:25px;
}

.hero-text h1 span{
  color:#00d4ff;
}

.hero-text p{
  color:#cfcfcf;
  line-height:1.8;
  margin-bottom:35px;
  max-width:550px;
}

.hero-buttons{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
}

.btn{
  display:inline-block;
  padding:15px 30px;
  border-radius:12px;
  transition:0.4s;
}

.btn-primary{
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  color:#fff;
}

.btn-outline{
  border:1px solid #ffffff20;
  color:#fff;
}

.btn:hover{
  transform:translateY(-4px);
}

.hero-image{
  flex:1;
  min-width:300px;
  position:relative;
  display:flex;
  justify-content:center;
}

.hero-image img{
  width:420px;
  border-radius:30px;
  position:relative;
  z-index:2;
}

.image-circle{
  position:absolute;
  width:420px;
  height:420px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  border-radius:50%;
  filter:blur(70px);
  opacity:0.3;
}

/* =========================
   ABOUT SECTION
========================= */

.about-section{
  padding:120px 0;
}

.about-wrapper{
  display:flex;
  align-items:center;
  gap:60px;
  flex-wrap:wrap;
}

.about-image{
  flex:1;
  min-width:300px;
  position:relative;
}

.about-image img{
  border-radius:30px;
  position:relative;
  z-index:2;
}

.about-shape{
  position:absolute;
  width:100%;
  height:100%;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  top:20px;
  left:20px;
  border-radius:30px;
  opacity:0.2;
}

.about-content{
  flex:1;
  min-width:300px;
}

.section-subtitle{
  color:#00d4ff;
  font-weight:600;
  display:block;
  margin-bottom:15px;
}

.about-content h2{
  font-size:45px;
  margin-bottom:25px;
  line-height:1.2;
}

.about-content p{
  color:#cfcfcf;
  line-height:1.8;
  margin-bottom:30px;
}

.about-features{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
  margin-bottom:35px;
}

.feature-box{
  background:#121826;
  padding:25px;
  border-radius:20px;
  border:1px solid #ffffff10;
}

/* =========================
   SERVICES
========================= */

.services-section{
  padding:120px 0;
}

.section-title{
  text-align:center;
  margin-bottom:60px;
}

.section-title span{
  color:#00d4ff;
  display:block;
  margin-bottom:15px;
}

.section-title h2{
  font-size:45px;
}

.services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
}

.service-card{
  background:#121826;
  padding:40px 30px;
  border-radius:25px;
  border:1px solid #ffffff10;
  transition:0.4s;
}

.service-card:hover{
  transform:translateY(-10px);
}

.service-icon{
  font-size:45px;
  margin-bottom:25px;
}

.service-card h3{
  margin-bottom:15px;
  font-size:24px;
}

.service-card p{
  color:#bfbfbf;
  line-height:1.7;
}

/* =========================
   FOOTER
========================= */
/* =========================
   MODERN FOOTER
========================= */

.footer-section{
  padding-top:120px;
  position:relative;
  overflow:hidden;
  background:#0f1525;
  border-top:1px solid #ffffff10;
}

/* BLUR */

.footer-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.footer-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.footer-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* TOP */

.footer-top{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1.5fr;
  gap:50px;
  padding-bottom:70px;
  position:relative;
  z-index:2;
}

/* BRAND */

.footer-brand p{
  color:#cfcfcf;
  line-height:1.9;
  margin:25px 0 35px;
  max-width:420px;
}

/* SOCIAL */

.footer-social{
  display:flex;
  gap:15px;
}

.footer-social a{
  width:50px;
  height:50px;
  border-radius:16px;
  background:#121826;
  border:1px solid #ffffff10;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:18px;
  transition:0.4s;
}

.footer-social a:hover{
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  transform:translateY(-6px);
}

/* LINKS */

.footer-links h3,
.footer-contact h3{
  font-size:24px;
  margin-bottom:30px;
}

.footer-links ul{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.footer-links a{
  color:#cfcfcf;
  transition:0.4s;
}

.footer-links a:hover{
  color:#00d4ff;
  padding-left:6px;
}

/* CONTACT */

.footer-contact{
  display:flex;
  flex-direction:column;
  gap:22px;
}

.contact-item{
  display:flex;
  align-items:flex-start;
  gap:18px;
}

.contact-icon{
  width:55px;
  height:55px;
  min-width:55px;
  border-radius:18px;
  background:#121826;
  border:1px solid #ffffff10;
  display:flex;
  align-items:center;
  justify-content:center;
}

.contact-icon i{
  font-size:20px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.contact-item span{
  color:#9f9f9f;
  font-size:14px;
  display:block;
  margin-bottom:5px;
}

.contact-item p{
  color:#fff;
  line-height:1.6;
}

/* BOTTOM */

.footer-bottom{
  border-top:1px solid #ffffff10;
  padding:30px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  position:relative;
  z-index:2;
}

.footer-bottom p{
  color:#cfcfcf;
}

.footer-bottom-links{
  display:flex;
  gap:25px;
}

.footer-bottom-links a{
  color:#cfcfcf;
  transition:0.4s;
}

.footer-bottom-links a:hover{
  color:#00d4ff;
}

/* RESPONSIVE */

@media(max-width:991px){

  .footer-top{
    grid-template-columns:1fr 1fr;
  }

  .footer-bottom{
    flex-direction:column;
    text-align:center;
  }
}

@media(max-width:600px){

  .footer-top{
    grid-template-columns:1fr;
  }

  .footer-links h3,
  .footer-contact h3{
    font-size:22px;
  }

  .footer-bottom-links{
    flex-direction:column;
    gap:12px;
  }

  .footer-social{
    flex-wrap:wrap;
  }
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .hamburger{
    display:flex;
  }

  .navbar{
    position:absolute;
    top:80px;
    left:-100%;
    width:100%;
    background:#121826;
    flex-direction:column;
    padding:40px 0;
    transition:0.4s;
  }

  .navbar.active{
    left:0;
  }

  .nav-links{
    flex-direction:column;
    text-align:center;
  }

  .hero-content,
  .about-wrapper{
    flex-direction:column;
  }

  .hero-text,
  .about-content{
    text-align:center;
  }

  .hero-text p{
    margin:auto auto 35px;
  }

  .hero-buttons{
    justify-content:center;
  }

  .services-grid{
    grid-template-columns:1fr;
  }

  .footer-wrapper{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){

  .hero-text h1{
    font-size:40px;
  }

  .about-content h2,
  .section-title h2{
    font-size:34px;
  }

  .about-features{
    grid-template-columns:1fr;
  }

  .hero-image img{
    width:100%;
  }

  .image-circle{
    width:300px;
    height:300px;
  }
}

/* =========================
   PORTFOLIO SECTION
========================= */

.portfolio-section{
  padding:120px 0;
  background:#0f1525;
}

/* FILTER BUTTONS */

.portfolio-filter{
  display:flex;
  justify-content:center;
  gap:15px;
  flex-wrap:wrap;
  margin-bottom:50px;
}

.filter-btn{
  background:#121826;
  border:none;
  color:#fff;
  padding:14px 26px;
  border-radius:12px;
  cursor:pointer;
  font-size:15px;
  transition:0.4s;
  border:1px solid #ffffff10;
}

.filter-btn:hover,
.filter-btn.active{
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
}

/* GRID */

.portfolio-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
}

/* ITEM */

.portfolio-item{
  overflow:hidden;
  border-radius:24px;
}

.portfolio-image{
  position:relative;
  overflow:hidden;
  border-radius:24px;
}

.portfolio-image img{
  width:100%;
  height:420px;
  object-fit:cover;
  transition:0.5s;
}

/* OVERLAY */

.portfolio-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    to top,
    rgba(0,0,0,0.9),
    rgba(0,0,0,0.2)
  );
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:30px;
  opacity:0;
  transition:0.5s;
}

.portfolio-overlay span{
  color:#00d4ff;
  font-size:14px;
  margin-bottom:10px;
}

.portfolio-overlay h3{
  font-size:28px;
  margin-bottom:20px;
}

.portfolio-overlay a{
  color:#fff;
  font-weight:500;
}

.portfolio-image:hover img{
  transform:scale(1.1);
}

.portfolio-image:hover .portfolio-overlay{
  opacity:1;
}

/* RESPONSIVE */

@media(max-width:991px){

  .portfolio-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){

  .portfolio-grid{
    grid-template-columns:1fr;
  }

  .portfolio-image img{
    height:320px;
  }
}


/* =========================
   SKILLS SECTION
========================= */

.skills-section{
  padding:120px 0;
}

.skills-wrapper{
  display:flex;
  align-items:center;
  gap:60px;
  flex-wrap:wrap;
}

/* LEFT */

.skills-content{
  flex:1;
  min-width:300px;
}

.skills-content h2{
  font-size:45px;
  margin-bottom:25px;
  line-height:1.2;
}

.skills-content p{
  color:#cfcfcf;
  line-height:1.8;
  margin-bottom:40px;
}

/* SKILL ITEM */

.skill-item{
  margin-bottom:30px;
}

.skill-info{
  display:flex;
  justify-content:space-between;
  margin-bottom:12px;
}

.skill-info h4{
  font-size:16px;
}

.skill-info span{
  color:#00d4ff;
}

.skill-bar{
  width:100%;
  height:12px;
  background:#1b2335;
  border-radius:50px;
  overflow:hidden;
}

.skill-progress{
  height:100%;
  border-radius:50px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  animation:grow 2s ease;
}

.photoshop{
  width:95%;
}

.illustrator{
  width:90%;
}

.motion{
  width:85%;
}

.uiux{
  width:88%;
}

@keyframes grow{
  from{
    width:0;
  }
}

/* RIGHT */

.skills-image{
  flex:1;
  min-width:300px;
  position:relative;
  display:flex;
  justify-content:center;
}

.skills-image img{
  width:100%;
  border-radius:30px;
  position:relative;
  z-index:2;
}

.skills-glow{
  position:absolute;
  width:350px;
  height:350px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  border-radius:50%;
  filter:blur(80px);
  opacity:0.25;
}

.tool-card{
  position:absolute;
  background:#121826;
  border:1px solid #ffffff10;
  padding:14px 22px;
  border-radius:14px;
  z-index:3;
  animation:float 4s ease-in-out infinite;
}

.tool-1{
  top:15%;
  left:0;
}

.tool-2{
  bottom:20%;
  left:5%;
}

.tool-3{
  top:25%;
  right:0;
}

/* RESPONSIVE */

@media(max-width:991px){

  .skills-wrapper{
    flex-direction:column-reverse;
  }

  .skills-content{
    text-align:center;
  }

  .skills-content h2{
    font-size:38px;
  }
}

@media(max-width:600px){

  .skills-content h2{
    font-size:32px;
  }

  .tool-card{
    font-size:13px;
    padding:10px 16px;
  }
}


/* =========================
   ACHIEVEMENT SECTION
========================= */

.achievement-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.achievement-blur{
  position:absolute;
  width:300px;
  height:300px;
  border-radius:50%;
  filter:blur(100px);
  opacity:0.18;
}

.blur-1{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.blur-2{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.achievement-wrapper{
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:35px;
  margin-top:70px;
  align-items:stretch;
}

/* BIG CARD */

.experience-card{
  height:100%;
  background:linear-gradient(
    145deg,
    #151c2e,
    #0f1525
  );
  border:1px solid #ffffff10;
  border-radius:35px;
  padding:60px 40px;
  position:relative;
  overflow:hidden;
}

.experience-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.15),
    rgba(0,212,255,0.08)
  );
}

.experience-icon{
  width:90px;
  height:90px;
  border-radius:25px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  margin-bottom:35px;
  position:relative;
  z-index:2;
}

.experience-icon i{
  font-size:38px;
  color:#fff;
}

.experience-card h2{
  font-size:90px;
  line-height:1;
  margin-bottom:15px;
  position:relative;
  z-index:2;
}

.experience-card h4{
  font-size:28px;
  margin-bottom:20px;
  position:relative;
  z-index:2;
}

.experience-card p{
  color:#cfcfcf;
  line-height:1.8;
  position:relative;
  z-index:2;
}

/* RIGHT GRID */

.achievement-right{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:25px;
}

/* SMALL BOX */

.achievement-box{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:28px;
  padding:35px 30px;
  display:flex;
  align-items:center;
  gap:20px;
  transition:0.4s;
  position:relative;
  overflow:hidden;
}

.achievement-box::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.1),
    rgba(0,212,255,0.06)
  );
  opacity:0;
  transition:0.4s;
}

.achievement-box:hover::before{
  opacity:1;
}

.achievement-box:hover{
  transform:translateY(-10px);
}

.achievement-icon{
  min-width:70px;
  height:70px;
  border-radius:20px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  z-index:2;
}

.achievement-icon i{
  font-size:28px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.achievement-box h3{
  font-size:38px;
  margin-bottom:5px;
  position:relative;
  z-index:2;
}

.achievement-box p{
  color:#cfcfcf;
  position:relative;
  z-index:2;
}

/* RESPONSIVE */

@media(max-width:991px){

  .achievement-wrapper{
    grid-template-columns:1fr;
  }

  .achievement-right{
    grid-template-columns:1fr 1fr;
  }

  .experience-card h2{
    font-size:70px;
  }
}

@media(max-width:600px){

  .achievement-right{
    grid-template-columns:1fr;
  }

  .experience-card{
    padding:45px 30px;
  }

  .experience-card h2{
    font-size:60px;
  }

  .experience-card h4{
    font-size:24px;
  }

  .achievement-box{
    padding:28px 24px;
  }

  .achievement-box h3{
    font-size:32px;
  }
}


/* =========================
   WHY CHOOSE ME SECTION
========================= */

.choose-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* WRAPPER */

.choose-wrapper{
  display:flex;
  align-items:center;
  gap:70px;
  flex-wrap:wrap;
}

/* LEFT */

.choose-content{
  flex:1;
  min-width:300px;
}

.choose-content h2{
  font-size:48px;
  line-height:1.2;
  margin:20px 0;
}

.choose-content p{
  color:#cfcfcf;
  line-height:1.8;
}

/* LIST */

.choose-list{
  margin-top:45px;
  display:flex;
  flex-direction:column;
  gap:25px;
}

/* ITEM */

.choose-item{
  display:flex;
  align-items:flex-start;
  gap:20px;
  background:#121826;
  padding:28px;
  border-radius:24px;
  border:1px solid #ffffff10;
  transition:0.4s;
  position:relative;
  overflow:hidden;
}

.choose-item::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.06)
  );
  opacity:0;
  transition:0.4s;
}

.choose-item:hover::before{
  opacity:1;
}

.choose-item:hover{
  transform:translateX(10px);
}

/* ICON */

.choose-icon{
  min-width:70px;
  height:70px;
  border-radius:20px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  z-index:2;
}

.choose-icon i{
  font-size:28px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* TEXT */

.choose-text{
  position:relative;
  z-index:2;
}

.choose-text h3{
  font-size:24px;
  margin-bottom:10px;
}

.choose-text p{
  color:#cfcfcf;
  line-height:1.7;
}

/* RIGHT */

.choose-image{
  flex:1;
  min-width:300px;
  position:relative;
  display:flex;
  justify-content:center;
}

.choose-image img{
  width:100%;
  border-radius:35px;
  position:relative;
  z-index:2;
}

/* GLOW */

.choose-glow{
  position:absolute;
  width:350px;
  height:350px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  border-radius:50%;
  filter:blur(100px);
  opacity:0.2;
}

/* FLOATING RATING */

.floating-rating{
  position:absolute;
  bottom:40px;
  left:-20px;
  background:#121826;
  border:1px solid #ffffff10;
  padding:25px;
  border-radius:24px;
  z-index:3;
  backdrop-filter:blur(12px);
  animation:float 4s ease-in-out infinite;
}

.rating-stars{
  display:flex;
  gap:5px;
  margin-bottom:12px;
}

.rating-stars i{
  color:#ffc107;
}

.floating-rating h4{
  font-size:24px;
  margin-bottom:8px;
}

.floating-rating p{
  color:#cfcfcf;
  font-size:14px;
}

/* RESPONSIVE */

@media(max-width:991px){

  .choose-wrapper{
    flex-direction:column-reverse;
  }

  .choose-content{
    text-align:center;
  }

  .choose-content h2{
    font-size:40px;
  }

  .choose-item{
    text-align:left;
  }
}

@media(max-width:600px){

  .choose-content h2{
    font-size:32px;
  }

  .choose-item{
    flex-direction:column;
  }

  .floating-rating{
    left:10px;
    right:10px;
    bottom:20px;
  }

  .choose-text h3{
    font-size:22px;
  }
}


/* =========================
   TESTIMONIAL SECTION
========================= */

.testimonial-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.testimonial-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.15;
}

.blur-left{
  background:#6c63ff;
  top:0;
  left:-100px;
}

.blur-right{
  background:#00d4ff;
  bottom:0;
  right:-100px;
}

/* WRAPPER */

.testimonial-wrapper{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
  margin-top:70px;
}

/* CARD */

.testimonial-card{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:30px;
  padding:40px 35px;
  position:relative;
  overflow:hidden;
  transition:0.4s;
}

.testimonial-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.06)
  );
  opacity:0;
  transition:0.4s;
}

.testimonial-card:hover::before,
.testimonial-card.active::before{
  opacity:1;
}

.testimonial-card:hover{
  transform:translateY(-12px);
}

/* QUOTE */

.quote-icon{
  width:70px;
  height:70px;
  border-radius:20px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:30px;
  position:relative;
  z-index:2;
}

.quote-icon i{
  font-size:30px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* TEXT */

.testimonial-text{
  color:#d7d7d7;
  line-height:1.9;
  margin-bottom:30px;
  position:relative;
  z-index:2;
}

/* STARS */

.testimonial-stars{
  display:flex;
  gap:6px;
  margin-bottom:30px;
  position:relative;
  z-index:2;
}

.testimonial-stars i{
  color:#ffc107;
}

/* USER */

.testimonial-user{
  display:flex;
  align-items:center;
  gap:18px;
  position:relative;
  z-index:2;
}

.testimonial-user img{
  width:65px;
  height:65px;
  border-radius:50%;
  object-fit:cover;
  border:3px solid #ffffff10;
}

.testimonial-user h4{
  font-size:20px;
  margin-bottom:5px;
}

.testimonial-user span{
  color:#bdbdbd;
  font-size:14px;
}

/* NAVIGATION */

.testimonial-nav{
  display:flex;
  justify-content:center;
  gap:20px;
  margin-top:50px;
}

.testimonial-btn{
  width:60px;
  height:60px;
  border:none;
  border-radius:18px;
  background:#121826;
  color:#fff;
  font-size:20px;
  cursor:pointer;
  transition:0.4s;
  border:1px solid #ffffff10;
}

.testimonial-btn:hover{
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
}

/* RESPONSIVE */

@media(max-width:991px){

  .testimonial-wrapper{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){

  .testimonial-wrapper{
    grid-template-columns:1fr;
  }

  .testimonial-card{
    padding:35px 28px;
  }

  .testimonial-user h4{
    font-size:18px;
  }
}


/* =========================
   PROCESS SECTION
========================= */

.process-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* GLOW */

.process-glow{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.glow-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.glow-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.process-wrapper{
  margin-top:70px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:30px;
  position:relative;
}

/* LINE */

.process-wrapper::before{
  content:"";
  position:absolute;
  top:70px;
  left:8%;
  width:84%;
  height:2px;
  background:linear-gradient(
    90deg,
    rgba(108,99,255,0.4),
    rgba(0,212,255,0.4)
  );
  z-index:0;
}

/* CARD */

.process-card{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:30px;
  padding:40px 30px;
  position:relative;
  overflow:hidden;
  transition:0.4s;
  z-index:2;
}

.process-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.06)
  );
  opacity:0;
  transition:0.4s;
}

.process-card:hover::before{
  opacity:1;
}

.process-card:hover{
  transform:translateY(-12px);
}

/* NUMBER */

.process-number{
  position:absolute;
  top:20px;
  right:25px;
  font-size:50px;
  font-weight:700;
  color:rgba(255,255,255,0.05);
}

/* ICON */

.process-icon{
  width:80px;
  height:80px;
  border-radius:24px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:30px;
  position:relative;
  z-index:2;
}

.process-icon i{
  font-size:32px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* CONTENT */

.process-card h3{
  font-size:26px;
  margin-bottom:18px;
  position:relative;
  z-index:2;
}

.process-card p{
  color:#cfcfcf;
  line-height:1.8;
  position:relative;
  z-index:2;
}

/* RESPONSIVE */

@media(max-width:991px){

  .process-wrapper{
    grid-template-columns:repeat(2,1fr);
  }

  .process-wrapper::before{
    display:none;
  }
}

@media(max-width:600px){

  .process-wrapper{
    grid-template-columns:1fr;
  }

  .process-card{
    padding:35px 25px;
  }

  .process-card h3{
    font-size:22px;
  }

  .process-number{
    font-size:42px;
  }
}



/* =========================
   FAQ SECTION
========================= */

.faq-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.faq-blur{
  position:absolute;
  width:300px;
  height:300px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.faq-wrapper{
  max-width:900px;
  margin:70px auto 0;
  display:flex;
  flex-direction:column;
  gap:25px;
}

/* FAQ ITEM */

.faq-item{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:24px;
  overflow:hidden;
  transition:0.4s;
  position:relative;
}

.faq-item::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.06),
    rgba(0,212,255,0.04)
  );
  opacity:0;
  transition:0.4s;
}

.faq-item.active::before,
.faq-item:hover::before{
  opacity:1;
}

/* QUESTION */

.faq-question{
  padding:28px 30px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
  position:relative;
  z-index:2;
}

.faq-question h3{
  font-size:22px;
  line-height:1.5;
  max-width:85%;
}

/* ICON */

.faq-icon{
  width:50px;
  height:50px;
  min-width:50px;
  border-radius:16px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:0.4s;
}

.faq-icon i{
  font-size:18px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  transition:0.4s;
}

/* ANSWER */

.faq-answer{
  max-height:0;
  overflow:hidden;
  transition:0.5s ease;
  position:relative;
  z-index:2;
}

.faq-answer p{
  padding:0 30px 30px;
  color:#cfcfcf;
  line-height:1.9;
}

/* ACTIVE */

.faq-item.active .faq-answer{
  max-height:300px;
}

.faq-item.active .faq-icon{
  transform:rotate(45deg);
}

/* RESPONSIVE */

@media(max-width:600px){

  .faq-question{
    padding:24px 22px;
  }

  .faq-answer p{
    padding:0 22px 25px;
  }

  .faq-question h3{
    font-size:18px;
  }

  .faq-icon{
    width:42px;
    height:42px;
    min-width:42px;
  }
}


/* =========================
   CTA SECTION
========================= */

.cta-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.cta-blur{
  position:absolute;
  width:350px;
  height:350px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.15;
}

.cta-section .blur-left{
  background:#6c63ff;
  top:-120px;
  left:-120px;
}

.cta-section .blur-right{
  background:#00d4ff;
  bottom:-120px;
  right:-120px;
}

/* WRAPPER */

.cta-wrapper{
  background:linear-gradient(
    145deg,
    #151c2e,
    #0f1525
  );
  border:1px solid #ffffff10;
  border-radius:40px;
  padding:70px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:60px;
  position:relative;
  overflow:hidden;
}

/* GRADIENT OVERLAY */

.cta-wrapper::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.05)
  );
}

/* CONTENT */

.cta-content{
  flex:1;
  position:relative;
  z-index:2;
}

.cta-tag{
  display:inline-block;
  padding:12px 20px;
  border-radius:50px;
  background:#ffffff10;
  border:1px solid #ffffff10;
  margin-bottom:25px;
  font-size:14px;
}

.cta-content h2{
  font-size:52px;
  line-height:1.2;
  margin-bottom:25px;
}

.cta-content p{
  color:#cfcfcf;
  line-height:1.9;
  margin-bottom:40px;
  max-width:620px;
}

/* BUTTONS */

.cta-buttons{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
}

/* IMAGE */

.cta-image{
  flex:1;
  position:relative;
  z-index:2;
}

.cta-image img{
  width:100%;
  border-radius:30px;
  object-fit:cover;
}

/* FLOATING CARD */

.cta-card{
  position:absolute;
  bottom:30px;
  left:-30px;
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:24px;
  padding:20px 24px;
  display:flex;
  align-items:center;
  gap:18px;
  backdrop-filter:blur(12px);
  animation:float 4s ease-in-out infinite;
}

.cta-card-icon{
  width:60px;
  height:60px;
  border-radius:18px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  display:flex;
  align-items:center;
  justify-content:center;
}

.cta-card-icon i{
  font-size:24px;
  color:#fff;
}

.cta-card h4{
  font-size:20px;
  margin-bottom:5px;
}

.cta-card p{
  color:#cfcfcf;
  font-size:14px;
}

/* RESPONSIVE */

@media(max-width:991px){

  .cta-wrapper{
    flex-direction:column;
    padding:50px;
  }

  .cta-content{
    text-align:center;
  }

  .cta-content p{
    margin:auto auto 40px;
  }

  .cta-buttons{
    justify-content:center;
  }

  .cta-content h2{
    font-size:42px;
  }
}

@media(max-width:600px){

  .cta-wrapper{
    padding:35px 25px;
    border-radius:30px;
  }

  .cta-content h2{
    font-size:32px;
  }

  .cta-card{
    left:10px;
    right:10px;
    bottom:15px;
    padding:18px;
  }

  .cta-card h4{
    font-size:18px;
  }
}

/* =========================
   PRICING SECTION
========================= */

.pricing-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.pricing-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.pricing-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.pricing-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.pricing-wrapper{
  margin-top:70px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:35px;
  align-items:center;
}

/* CARD */

.pricing-card{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:35px;
  padding:45px 35px;
  position:relative;
  overflow:hidden;
  transition:0.4s;
}

.pricing-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.05)
  );
  opacity:0;
  transition:0.4s;
}

.pricing-card:hover::before,
.pricing-card.active::before{
  opacity:1;
}

.pricing-card:hover{
  transform:translateY(-12px);
}

/* ACTIVE */

.pricing-card.active{
  transform:scale(1.05);
  border:1px solid rgba(0,212,255,0.25);
}

/* BADGE */

.popular-badge{
  position:absolute;
  top:20px;
  right:-40px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  color:#fff;
  padding:10px 50px;
  font-size:13px;
  transform:rotate(45deg);
  font-weight:600;
}

/* TOP */

.pricing-top{
  position:relative;
  z-index:2;
}

.pricing-tag{
  display:inline-block;
  padding:10px 18px;
  border-radius:50px;
  background:#1b2335;
  margin-bottom:25px;
  font-size:14px;
}

.pricing-top h3{
  font-size:32px;
  margin-bottom:25px;
}

/* PRICE */

.price{
  display:flex;
  align-items:end;
  gap:10px;
  margin-bottom:20px;
}

.price h2{
  font-size:52px;
  line-height:1;
}

.price span{
  color:#cfcfcf;
  margin-bottom:8px;
}

.pricing-top p{
  color:#cfcfcf;
  line-height:1.8;
}

/* FEATURES */

.pricing-features{
  margin:40px 0;
  display:flex;
  flex-direction:column;
  gap:18px;
  position:relative;
  z-index:2;
}

.pricing-features li{
  display:flex;
  align-items:center;
  gap:15px;
  color:#e4e4e4;
}

.pricing-features i{
  width:28px;
  height:28px;
  border-radius:50%;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  color:#fff;
}

/* BUTTON */

.pricing-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  height:58px;
  border-radius:18px;
  background:#1b2335;
  color:#fff;
  font-weight:600;
  transition:0.4s;
  position:relative;
  z-index:2;
}

.pricing-btn:hover{
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
}

/* RESPONSIVE */

@media(max-width:991px){

  .pricing-wrapper{
    grid-template-columns:1fr;
  }

  .pricing-card.active{
    transform:none;
  }
}

@media(max-width:600px){

  .pricing-card{
    padding:40px 25px;
    border-radius:28px;
  }

  .pricing-top h3{
    font-size:28px;
  }

  .price h2{
    font-size:42px;
  }
}



/* =========================
   ABOUT PAGE
========================= */

/* HERO */

.about-hero-section{
  padding:160px 0 120px;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.about-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.about-hero-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.about-hero-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.about-hero-wrapper{
  display:flex;
  align-items:center;
  gap:70px;
  flex-wrap:wrap;
}

/* CONTENT */

.about-content{
  flex:1;
  min-width:300px;
}

.about-content h1{
  font-size:64px;
  line-height:1.15;
  margin:20px 0 30px;
}

.about-content p{
  color:#cfcfcf;
  line-height:1.9;
  margin-bottom:20px;
}

/* INFO LIST */

.about-info-list{
  margin:35px 0;
  display:flex;
  flex-direction:column;
  gap:18px;
}

.about-info-item{
  display:flex;
  align-items:center;
  gap:15px;
  color:#fff;
}

.about-info-item i{
  font-size:20px;
  color:#00d4ff;
}

/* BUTTONS */

.about-buttons{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  margin-top:40px;
}

/* IMAGE */

.about-image{
  flex:1;
  min-width:300px;
  position:relative;
  display:flex;
  justify-content:center;
}

.about-image img{
  width:100%;
  border-radius:35px;
  position:relative;
  z-index:2;
}

.about-image-shape{
  position:absolute;
  width:85%;
  height:85%;
  border:2px dashed rgba(255,255,255,0.1);
  border-radius:35px;
  top:30px;
  right:-20px;
}

/* EXPERIENCE */

.experience-badge{
  position:absolute;
  bottom:30px;
  left:-20px;
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:24px;
  padding:25px 30px;
  z-index:3;
  backdrop-filter:blur(10px);
  animation:float 4s ease-in-out infinite;
}

.experience-badge h3{
  font-size:42px;
  margin-bottom:5px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.experience-badge p{
  color:#cfcfcf;
}

/* DETAILS SECTION */

.about-details-section{
  padding:120px 0;
}

/* WRAPPER */

.about-details-wrapper{
  display:flex;
  align-items:center;
  gap:70px;
  flex-wrap:wrap;
}

/* IMAGE */

.details-image{
  flex:1;
  min-width:300px;
}

.details-image img{
  width:100%;
  border-radius:35px;
}

/* CONTENT */

.details-content{
  flex:1;
  min-width:300px;
}

.details-content h2{
  font-size:48px;
  line-height:1.2;
  margin:20px 0 30px;
}

.details-content p{
  color:#cfcfcf;
  line-height:1.9;
  margin-bottom:20px;
}

/* SKILLS */

.skills-wrapper{
  margin-top:40px;
  display:flex;
  flex-direction:column;
  gap:25px;
}

/* ITEM */

.skill-item{
  width:100%;
}

.skill-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
}

.skill-top h4{
  font-size:20px;
}

.skill-top span{
  color:#00d4ff;
}

/* BAR */

.skill-bar{
  width:100%;
  height:12px;
  border-radius:50px;
  background:#1b2335;
  overflow:hidden;
}

.skill-progress{
  height:100%;
  border-radius:50px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
}

.progress-95{
  width:95%;
}

.progress-90{
  width:90%;
}

.progress-85{
  width:85%;
}

/* RESPONSIVE */

@media(max-width:991px){

  .about-content h1{
    font-size:52px;
  }

  .details-content h2{
    font-size:40px;
  }
}

@media(max-width:600px){

  .about-hero-section{
    padding:140px 0 100px;
  }

  .about-content h1{
    font-size:38px;
  }

  .details-content h2{
    font-size:32px;
  }

  .experience-badge{
    left:10px;
    right:10px;
    bottom:15px;
    padding:20px;
  }

  .experience-badge h3{
    font-size:34px;
  }

  .about-image-shape{
    display:none;
  }
}


/* =========================
   SKILLS & TOOLS SECTION
========================= */

.skills-tools-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.skills-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.skills-tools-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.skills-tools-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* GRID */

.skills-wrapper-grid{
  margin-top:70px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:35px;
}

/* CARD */

.skill-card{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:30px;
  padding:40px;
  position:relative;
  overflow:hidden;
  transition:0.4s;
}

.skill-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.05)
  );
  opacity:0;
  transition:0.4s;
}

.skill-card:hover::before{
  opacity:1;
}

.skill-card:hover{
  transform:translateY(-12px);
}

/* ICON */

.skill-icon{
  width:85px;
  height:85px;
  border-radius:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:30px;
  position:relative;
  z-index:2;
}

.skill-icon i{
  font-size:38px;
  color:#fff;
}

/* ICON COLORS */

.photoshop{
  background:linear-gradient(45deg,#001e36,#31a8ff);
}

.illustrator{
  background:linear-gradient(45deg,#2b0d00,#ff9a00);
}

.figma{
  background:linear-gradient(45deg,#a259ff,#ff7262);
}

.aftereffects{
  background:linear-gradient(45deg,#1f1147,#9999ff);
}

/* CONTENT */

.skill-card h3{
  font-size:30px;
  margin-bottom:18px;
  position:relative;
  z-index:2;
}

.skill-card p{
  color:#cfcfcf;
  line-height:1.8;
  margin-bottom:35px;
  position:relative;
  z-index:2;
}

/* PROGRESS */

.skill-progress-wrapper{
  position:relative;
  z-index:2;
}

.skill-progress-top{
  display:flex;
  justify-content:space-between;
  margin-bottom:12px;
}

.skill-progress-top span{
  color:#d7d7d7;
}

/* BAR */

.skill-progress-bar{
  width:100%;
  height:12px;
  background:#1b2335;
  border-radius:50px;
  overflow:hidden;
}

.skill-progress-fill{
  height:100%;
  border-radius:50px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
}

.progress-95{
  width:95%;
}

.progress-92{
  width:92%;
}

.progress-88{
  width:88%;
}

.progress-85{
  width:85%;
}

/* TOOLS SLIDER */

.tools-slider{
  margin-top:80px;
  overflow:hidden;
  position:relative;
}

/* TRACK */

.tools-track{
  display:flex;
  width:max-content;
  gap:25px;
  animation:marquee 18s linear infinite;
}

/* TOOL ITEM */

.tool-item{
  min-width:220px;
  height:90px;
  border-radius:24px;
  background:#121826;
  border:1px solid #ffffff10;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  font-size:20px;
  transition:0.4s;
}

.tool-item:hover{
  transform:translateY(-8px);
  background:#151d30;
}

.tool-item i{
  font-size:34px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* MARQUEE */

@keyframes marquee{

  from{
    transform:translateX(0);
  }

  to{
    transform:translateX(-50%);
  }
}

/* RESPONSIVE */

@media(max-width:991px){

  .skills-wrapper-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){

  .skill-card{
    padding:35px 25px;
  }

  .skill-card h3{
    font-size:26px;
  }

  .tool-item{
    min-width:180px;
    height:80px;
    font-size:18px;
  }

  .tool-item i{
    font-size:28px;
  }
}


/* =========================
   EXPERIENCE TIMELINE
========================= */

.timeline-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.timeline-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.timeline-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.timeline-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.timeline-wrapper{
  position:relative;
  max-width:1100px;
  margin:80px auto 0;
  padding:20px 0;
}

/* CENTER LINE */

.timeline-wrapper::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:4px;
  height:100%;
  background:linear-gradient(
    to bottom,
    #6c63ff,
    #00d4ff
  );
  border-radius:50px;
}

/* ITEM */

.timeline-item{
  position:relative;
  width:50%;
  padding:20px 50px;
  margin-bottom:40px;
}

/* LEFT */

.timeline-item.left{
  left:0;
  text-align:right;
}

/* RIGHT */

.timeline-item.right{
  left:50%;
}

/* DOT */

.timeline-item::before{
  content:"";
  position:absolute;
  top:45px;
  width:22px;
  height:22px;
  border-radius:50%;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  border:4px solid #0f1525;
  z-index:2;
}

.timeline-item.left::before{
  right:-11px;
}

.timeline-item.right::before{
  left:-11px;
}

/* CARD */

.timeline-content{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:30px;
  padding:35px;
  position:relative;
  overflow:hidden;
  transition:0.4s;
}

.timeline-content::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.05)
  );
  opacity:0;
  transition:0.4s;
}

.timeline-content:hover::before{
  opacity:1;
}

.timeline-content:hover{
  transform:translateY(-10px);
}

/* YEAR */

.timeline-year{
  display:inline-block;
  padding:10px 18px;
  border-radius:50px;
  background:#1b2335;
  margin-bottom:22px;
  font-size:14px;
  color:#00d4ff;
  position:relative;
  z-index:2;
}

/* CONTENT */

.timeline-content h3{
  font-size:30px;
  margin-bottom:18px;
  position:relative;
  z-index:2;
}

.timeline-content p{
  color:#cfcfcf;
  line-height:1.9;
  position:relative;
  z-index:2;
}

/* RESPONSIVE */

@media(max-width:991px){

  .timeline-wrapper::before{
    left:20px;
  }

  .timeline-item{
    width:100%;
    padding-left:70px;
    padding-right:0;
  }

  .timeline-item.left,
  .timeline-item.right{
    left:0;
    text-align:left;
  }

  .timeline-item.left::before,
  .timeline-item.right::before{
    left:9px;
  }
}

@media(max-width:600px){

  .timeline-content{
    padding:30px 22px;
    border-radius:24px;
  }

  .timeline-content h3{
    font-size:24px;
  }

  .timeline-item{
    padding-left:55px;
  }
}


/* =========================
   WHY CHOOSE ME
========================= */

.why-choose-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.choose-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.why-choose-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.why-choose-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.choose-wrapper{
  margin-top:70px;
  display:flex;
  align-items:center;
  gap:70px;
  flex-wrap:wrap;
}

/* IMAGE */

.choose-image{
  flex:1;
  min-width:320px;
  position:relative;
}

.choose-image img{
  width:100%;
  border-radius:35px;
  position:relative;
  z-index:2;
}

/* SHAPE */

.image-shape{
  position:absolute;
  width:85%;
  height:85%;
  border:2px dashed rgba(255,255,255,0.1);
  border-radius:35px;
  top:25px;
  right:-20px;
}

/* FLOATING CARD */

.floating-card{
  position:absolute;
  left:-30px;
  bottom:35px;
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:24px;
  padding:22px 25px;
  display:flex;
  align-items:center;
  gap:18px;
  z-index:3;
  backdrop-filter:blur(10px);
  animation:float 4s ease-in-out infinite;
}

.floating-icon{
  width:65px;
  height:65px;
  border-radius:18px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  display:flex;
  align-items:center;
  justify-content:center;
}

.floating-icon i{
  color:#fff;
  font-size:26px;
}

.floating-card h4{
  font-size:22px;
  margin-bottom:5px;
}

.floating-card p{
  color:#cfcfcf;
  font-size:14px;
}

/* CONTENT */

.choose-content{
  flex:1;
  min-width:320px;
  display:flex;
  flex-direction:column;
  gap:25px;
}

/* CARD */

.choose-card{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:28px;
  padding:28px;
  display:flex;
  gap:22px;
  transition:0.4s;
  position:relative;
  overflow:hidden;
}

.choose-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.05)
  );
  opacity:0;
  transition:0.4s;
}

.choose-card:hover::before{
  opacity:1;
}

.choose-card:hover{
  transform:translateX(10px);
}

/* ICON */

.choose-icon{
  width:75px;
  height:75px;
  min-width:75px;
  border-radius:22px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  z-index:2;
}

.choose-icon i{
  font-size:30px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* TEXT */

.choose-card h3{
  font-size:28px;
  margin-bottom:12px;
  position:relative;
  z-index:2;
}

.choose-card p{
  color:#cfcfcf;
  line-height:1.8;
  position:relative;
  z-index:2;
}

/* RESPONSIVE */

@media(max-width:991px){

  .choose-wrapper{
    flex-direction:column;
  }

  .choose-content,
  .choose-image{
    width:100%;
  }
}

@media(max-width:600px){

  .choose-card{
    flex-direction:column;
    padding:24px;
  }

  .choose-card h3{
    font-size:24px;
  }

  .floating-card{
    left:10px;
    right:10px;
    bottom:15px;
    padding:18px;
  }

  .image-shape{
    display:none;
  }
}



/* =========================
   CONTACT HERO SECTION
========================= */

.contact-hero-section{
  padding:160px 0 120px;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.contact-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.contact-hero-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.contact-hero-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.contact-hero-wrapper{
  display:flex;
  align-items:center;
  gap:70px;
  flex-wrap:wrap;
}

/* CONTENT */

.contact-hero-content{
  flex:1;
  min-width:320px;
}

/* BREADCRUMB */

.breadcrumb{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:25px;
}

.breadcrumb a{
  color:#cfcfcf;
  transition:0.4s;
}

.breadcrumb a:hover{
  color:#00d4ff;
}

.breadcrumb span,
.breadcrumb p{
  color:#8f8f8f;
}

/* SUBTITLE */

.contact-subtitle{
  display:inline-block;
  padding:12px 20px;
  border-radius:50px;
  background:#ffffff10;
  border:1px solid #ffffff10;
  margin-bottom:25px;
  font-size:14px;
}

/* TITLE */

.contact-hero-content h1{
  font-size:68px;
  line-height:1.1;
  margin-bottom:30px;
}

/* TEXT */

.contact-hero-content p{
  color:#cfcfcf;
  line-height:1.9;
 
  max-width:620px;
}

/* BUTTONS */

.contact-hero-buttons{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
}

/* IMAGE */

.contact-hero-image{
  flex:1;
  min-width:320px;
  position:relative;
}

.contact-hero-image img{
  width:100%;
  border-radius:35px;
  position:relative;
  z-index:2;
}

/* SHAPE */

.image-shape{
  position:absolute;
  width:85%;
  height:85%;
  border:2px dashed rgba(255,255,255,0.1);
  border-radius:35px;
  top:25px;
  right:-20px;
}

/* FLOATING CARD */

.contact-floating-card{
  position:absolute;
  left:-30px;
  bottom:35px;
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:24px;
  padding:22px 25px;
  display:flex;
  align-items:center;
  gap:18px;
  z-index:3;
  backdrop-filter:blur(10px);
  animation:float 4s ease-in-out infinite;
}

.floating-icon{
  width:65px;
  height:65px;
  border-radius:20px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  display:flex;
  align-items:center;
  justify-content:center;
}

.floating-icon i{
  font-size:26px;
  color:#fff;
}

.contact-floating-card h4{
  font-size:22px;
  margin-bottom:6px;
}

.contact-floating-card p{
  color:#cfcfcf;
  font-size:14px;
  margin:0;
}

/* RESPONSIVE */

@media(max-width:991px){

  .contact-hero-wrapper{
    flex-direction:column;
  }

  .contact-hero-content{
    text-align:center;
  }

  .contact-hero-content p{
    margin:auto auto 40px;
  }

  .contact-hero-buttons{
    justify-content:center;
  }

  .contact-hero-content h1{
    font-size:52px;
  }
}

@media(max-width:600px){

  .contact-hero-section{
    padding:140px 0 100px;
  }

  .contact-hero-content h1{
    font-size:38px;
  }

  .contact-floating-card{
    left:10px;
    right:10px;
    bottom:15px;
    padding:18px;
  }

  .contact-floating-card h4{
    font-size:18px;
  }

  .image-shape{
    display:none;
  }
}


/* =========================
   CONTACT INFO SECTION
========================= */

.contact-info-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.info-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.contact-info-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.contact-info-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.contact-info-wrapper{
  margin-top:70px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:30px;
}

/* CARD */

.contact-info-card{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:30px;
  padding:40px 30px;
  text-align:center;
  position:relative;
  overflow:hidden;
  transition:0.4s;
}

.contact-info-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.05)
  );
  opacity:0;
  transition:0.4s;
}

.contact-info-card:hover::before{
  opacity:1;
}

.contact-info-card:hover{
  transform:translateY(-12px);
}

/* ICON */

.contact-info-icon{
  width:90px;
  height:90px;
  border-radius:26px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:auto auto 30px;
  position:relative;
  z-index:2;
}

.contact-info-icon i{
  font-size:34px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* TITLE */

.contact-info-card h3{
  font-size:28px;
  margin-bottom:18px;
  position:relative;
  z-index:2;
}

/* TEXT */

.contact-info-card p{
  color:#cfcfcf;
  line-height:1.8;
  margin-bottom:25px;
  position:relative;
  z-index:2;
}

/* LINK */

.contact-info-card a{
  display:inline-block;
  color:#00d4ff;
  font-size:18px;
  font-weight:600;
  position:relative;
  z-index:2;
  word-break:break-word;
  transition:0.4s;
}

.contact-info-card a:hover{
  color:#fff;
}

/* RESPONSIVE */

@media(max-width:1100px){

  .contact-info-wrapper{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){

  .contact-info-wrapper{
    grid-template-columns:1fr;
  }

  .contact-info-card{
    padding:35px 25px;
  }

  .contact-info-card h3{
    font-size:24px;
  }

  .contact-info-icon{
    width:80px;
    height:80px;
  }

  .contact-info-icon i{
    font-size:30px;
  }
}

/* =========================
   CONTACT FORM SECTION
========================= */

.contact-form-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.form-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.contact-form-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.contact-form-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.contact-form-wrapper{
  display:flex;
  gap:60px;
  align-items:center;
  flex-wrap:wrap;
}

/* LEFT CONTENT */

.contact-form-content{
  flex:1;
  min-width:320px;
}

.contact-form-content h2{
  font-size:54px;
  line-height:1.15;
  margin:20px 0 30px;
}

.contact-form-content p{
  color:#cfcfcf;
  line-height:1.9;
  margin-bottom:40px;
  max-width:550px;
}

/* FEATURES */

.form-feature-list{
  display:flex;
  flex-direction:column;
  gap:20px;
}

.form-feature-item{
  display:flex;
  align-items:center;
  gap:15px;
}

.feature-icon{
  width:50px;
  height:50px;
  border-radius:16px;
  background:#121826;
  border:1px solid #ffffff10;
  display:flex;
  align-items:center;
  justify-content:center;
}

.feature-icon i{
  color:#00d4ff;
  font-size:18px;
}

.form-feature-item span{
  font-size:18px;
}

/* FORM CARD */

.contact-form-card{
  flex:1;
  min-width:320px;
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:35px;
  padding:45px;
  position:relative;
  overflow:hidden;
}

.contact-form-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.06),
    rgba(0,212,255,0.04)
  );
}

/* FORM */

.contact-form-card form{
  position:relative;
  z-index:2;
}

/* GRID */

.form-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:25px;
}

/* GROUP */

.form-group{
  position:relative;
  margin-bottom:28px;
}

/* INPUTS */

.form-group input,
.form-group select,
.form-group textarea{
  width:100%;
  background:#1b2335;
  border:1px solid transparent;
  border-radius:18px;
  padding:20px;
  color:#fff;
  font-size:16px;
  outline:none;
  transition:0.4s;
}

.form-group textarea{
  height:180px;
  resize:none;
}

.form-group select{
  appearance:none;
  cursor:pointer;
}

/* LABEL */

.form-group label{
  position:absolute;
  top:20px;
  left:20px;
  color:#8f8f8f;
  pointer-events:none;
  transition:0.3s;
  background:#1b2335;
  padding:0 6px;
}

/* ACTIVE */

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
  border-color:#00d4ff;
}

.form-group input:focus + label,
.form-group input:valid + label,
.form-group textarea:focus + label,
.form-group textarea:valid + label,
.form-group select:focus + label,
.form-group select:valid + label{
  top:-10px;
  left:15px;
  font-size:13px;
  color:#00d4ff;
}

/* BUTTON */

.submit-btn{
  width:100%;
  height:65px;
  border:none;
  border-radius:18px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  color:#fff;
  font-size:18px;
  font-weight:600;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  transition:0.4s;
}

.submit-btn:hover{
  transform:translateY(-5px);
  box-shadow:0 15px 35px rgba(0,212,255,0.25);
}

/* RESPONSIVE */

@media(max-width:991px){

  .contact-form-wrapper{
    flex-direction:column;
  }

  .contact-form-content{
    text-align:center;
  }

  .contact-form-content p{
    margin:auto auto 40px;
  }

  .form-feature-item{
    justify-content:center;
  }

  .contact-form-content h2{
    font-size:42px;
  }
}

@media(max-width:600px){

  .form-grid{
    grid-template-columns:1fr;
  }

  .contact-form-card{
    padding:35px 25px;
    border-radius:28px;
  }

  .contact-form-content h2{
    font-size:34px;
  }

  .form-group input,
  .form-group select,
  .form-group textarea{
    padding:18px;
  }

  .submit-btn{
    height:60px;
    font-size:17px;
  }
}


/* =========================
   SOCIAL MEDIA SECTION
========================= */

.social-media-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.social-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.social-media-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.social-media-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.social-wrapper{
  margin-top:70px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:30px;
}

/* CARD */

.social-card{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:32px;
  padding:35px;
  display:flex;
  align-items:center;
  gap:25px;
  position:relative;
  overflow:hidden;
  transition:0.4s;
}

.social-card::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:0;
  transition:0.4s;
}

/* HOVER */

.social-card:hover::before{
  opacity:1;
}

.social-card:hover{
  transform:translateY(-10px);
}

/* PLATFORM COLORS */

.facebook::before{
  background:linear-gradient(
    45deg,
    rgba(24,119,242,0.15),
    rgba(24,119,242,0.05)
  );
}

.instagram::before{
  background:linear-gradient(
    45deg,
    rgba(225,48,108,0.15),
    rgba(245,96,64,0.05)
  );
}

.behance::before{
  background:linear-gradient(
    45deg,
    rgba(23,105,255,0.15),
    rgba(23,105,255,0.05)
  );
}

.dribbble::before{
  background:linear-gradient(
    45deg,
    rgba(234,76,137,0.15),
    rgba(234,76,137,0.05)
  );
}

/* ICON */

.social-icon{
  width:90px;
  height:90px;
  min-width:90px;
  border-radius:28px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  z-index:2;
}

.social-icon i{
  font-size:38px;
  color:#fff;
}

/* PLATFORM ICON COLORS */

.facebook .social-icon{
  background:#1877f2;
}

.instagram .social-icon{
  background:linear-gradient(
    45deg,
    #833ab4,
    #fd1d1d,
    #fcb045
  );
}

.behance .social-icon{
  background:#1769ff;
}

.dribbble .social-icon{
  background:#ea4c89;
}

/* CONTENT */

.social-content{
  flex:1;
  position:relative;
  z-index:2;
}

.social-content h3{
  font-size:30px;
  margin-bottom:12px;
}

.social-content p{
  color:#cfcfcf;
  line-height:1.8;
}

/* ARROW */

.social-arrow{
  width:60px;
  height:60px;
  min-width:60px;
  border-radius:18px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  z-index:2;
  transition:0.4s;
}

.social-arrow i{
  color:#fff;
  font-size:20px;
}

/* HOVER */

.social-card:hover .social-arrow{
  transform:rotate(45deg);
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
}

/* RESPONSIVE */

@media(max-width:991px){

  .social-wrapper{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){

  .social-card{
    flex-direction:column;
    align-items:flex-start;
    padding:28px 24px;
  }

  .social-content h3{
    font-size:24px;
  }

  .social-arrow{
    margin-top:10px;
  }
}


/* =========================
   SERVICES HERO SECTION
========================= */

.services-hero-section{
  padding:160px 0 120px;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.services-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.services-hero-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.services-hero-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* WRAPPER */

.services-hero-wrapper{
  display:flex;
  align-items:center;
  gap:70px;
  flex-wrap:wrap;
}

/* CONTENT */

.services-hero-content{
  flex:1;
  min-width:320px;
}

/* SUBTITLE */

.services-subtitle{
  display:inline-block;
  padding:12px 20px;
  border-radius:50px;
  background:#ffffff10;
  border:1px solid #ffffff10;
  margin-bottom:25px;
  font-size:14px;
}

/* TITLE */

.services-hero-content h1{
  font-size:68px;
  line-height:1.1;
  margin-bottom:30px;
}

/* TEXT */

.services-hero-content p{
  color:#cfcfcf;
  line-height:1.9;
  
  max-width:620px;
}

/* BUTTONS */

.services-hero-buttons{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  margin-bottom:50px;
}

/* STATS */

.services-stats{
  display:flex;
  gap:50px;
  flex-wrap:wrap;
}

/* ITEM */

.services-stat-item h3{
  font-size:52px;
  line-height:1;
  margin-bottom:10px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.services-stat-item span{
  color:#cfcfcf;
  font-size:17px;
}

/* IMAGE */

.services-hero-image{
  flex:1;
  min-width:320px;
  position:relative;
}

.services-hero-image img{
  width:100%;
  border-radius:35px;
  position:relative;
  z-index:2;
}

/* SHAPE */

.image-shape{
  position:absolute;
  width:85%;
  height:85%;
  border:2px dashed rgba(255,255,255,0.1);
  border-radius:35px;
  top:25px;
  right:-20px;
}

/* FLOATING CARD */

.services-floating-card{
  position:absolute;
  left:-30px;
  bottom:35px;
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:24px;
  padding:22px 25px;
  display:flex;
  align-items:center;
  gap:18px;
  z-index:3;
  backdrop-filter:blur(10px);
  animation:float 4s ease-in-out infinite;
}

.floating-icon{
  width:65px;
  height:65px;
  border-radius:20px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  display:flex;
  align-items:center;
  justify-content:center;
}

.floating-icon i{
  font-size:26px;
  color:#fff;
}

.services-floating-card h4{
  font-size:22px;
  margin-bottom:6px;
}

.services-floating-card p{
  color:#cfcfcf;
  font-size:14px;
  margin:0;
}

/* RESPONSIVE */

@media(max-width:991px){

  .services-hero-wrapper{
    flex-direction:column;
  }

  .services-hero-content{
    text-align:center;
  }

  .services-hero-content p{
    margin:auto auto 40px;
  }

  .services-hero-buttons{
    justify-content:center;
  }

  .services-stats{
    justify-content:center;
  }

  .services-hero-content h1{
    font-size:52px;
  }
}

@media(max-width:600px){

  .services-hero-section{
    padding:140px 0 100px;
  }

  .services-hero-content h1{
    font-size:38px;
  }

  .services-stats{
    gap:30px;
  }

  .services-stat-item h3{
    font-size:40px;
  }

  .services-floating-card{
    left:10px;
    right:10px;
    bottom:15px;
    padding:18px;
  }

  .services-floating-card h4{
    font-size:18px;
  }

  .image-shape{
    display:none;
  }
}


/* =========================
   SERVICES GRID SECTION
========================= */

.services-grid-section{
  padding:120px 0;
  position:relative;
  overflow:hidden;
}

/* BLUR */

.grid-blur{
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}

.services-grid-section .blur-left{
  background:#6c63ff;
  top:-100px;
  left:-100px;
}

.services-grid-section .blur-right{
  background:#00d4ff;
  bottom:-100px;
  right:-100px;
}

/* GRID */

.services-grid-wrapper{
  margin-top:70px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
}

/* CARD */

.service-grid-card{
  background:#121826;
  border:1px solid #ffffff10;
  border-radius:32px;
  padding:35px;
  position:relative;
  overflow:hidden;
  transition:0.4s;
}

.service-grid-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    45deg,
    rgba(108,99,255,0.08),
    rgba(0,212,255,0.05)
  );
  opacity:0;
  transition:0.4s;
}

.service-grid-card:hover::before,
.active-card::before{
  opacity:1;
}

.service-grid-card:hover,
.active-card{
  transform:translateY(-12px);
  border-color:#00d4ff30;
}

/* TOP */

.service-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:30px;
  position:relative;
  z-index:2;
}

/* ICON */

.service-icon{
  width:85px;
  height:85px;
  border-radius:26px;
  background:#1b2335;
  display:flex;
  align-items:center;
  justify-content:center;
}

.service-icon i{
  font-size:34px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* NUMBER */

.service-number{
  font-size:22px;
  font-weight:700;
  color:#ffffff15;
}

/* TITLE */

.service-grid-card h3{
  font-size:30px;
  margin-bottom:18px;
  position:relative;
  z-index:2;
}

/* TEXT */

.service-grid-card p{
  color:#cfcfcf;
  line-height:1.9;
  margin-bottom:30px;
  position:relative;
  z-index:2;
}

/* FEATURES */

.service-features{
  display:flex;
  flex-direction:column;
  gap:15px;
  margin-bottom:35px;
  position:relative;
  z-index:2;
}

.service-features li{
  position:relative;
  padding-left:28px;
  color:#d7d7d7;
}

.service-features li::before{
  content:"";
  position:absolute;
  left:0;
  top:8px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
}

/* BUTTON */

.service-btn{
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:#00d4ff;
  font-weight:600;
  position:relative;
  z-index:2;
  transition:0.4s;
}

.service-btn i{
  transition:0.4s;
}

.service-btn:hover{
  color:#fff;
}

.service-btn:hover i{
  transform:translateX(6px);
}

/* RESPONSIVE */

@media(max-width:1100px){

  .services-grid-wrapper{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:700px){

  .services-grid-wrapper{
    grid-template-columns:1fr;
  }

  .service-grid-card{
    padding:30px 24px;
  }

  .service-grid-card h3{
    font-size:26px;
  }

  .service-icon{
    width:75px;
    height:75px;
  }

  .service-icon i{
    font-size:30px;
  }
}


/* =========================
   SERVICE DETAILS PAGE CSS
========================= */

/* HERO */

.sd-hero{
  padding:140px 0 80px;
}

.sd-hero-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:center;
}

.sd-hero-content h1{
  font-size:52px;
  margin:20px 0;
}

.sd-hero-content p{
  color:#cfcfcf;
  line-height:1.8;
  margin-bottom:25px;
}

.breadcrumb{
  color:#aaa;
  font-size:14px;
}

.breadcrumb a{
  color:#ccc;
  text-decoration:none;
}

/* IMAGE */

.sd-hero-image img{
  width:100%;
  border-radius:20px;
}

/* BUTTONS */

.sd-buttons{
  display:flex;
  gap:15px;
}

/* SECTIONS */

.sd-section{
  padding:80px 0;
}

.sd-grid-2{
  display:grid;
  grid-template-columns:2fr 1fr;
  gap:40px;
}

/* BOX */

.sd-box{
  background:#121826;
  padding:25px;
  border-radius:15px;
}

/* GRID 3 */

.sd-grid-3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:30px;
}

.sd-card{
  background:#121826;
  padding:20px;
  border-radius:15px;
  text-align:center;
}

/* PROCESS */

.sd-process{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  margin-top:30px;
}

.sd-process div{
  background:#121826;
  padding:15px 20px;
  border-radius:12px;
}

/* PRICING */

.sd-pricing{
  text-align:center;
  background:#121826;
  padding:60px;
  border-radius:25px;
}

.sd-pricing h3{
  font-size:42px;
  margin:10px 0;
}

/* CTA */

.sd-cta{
  padding:80px 0;
  text-align:center;
}

/* BUTTONS */

.btn{
  display:inline-block;
  padding:12px 20px;
  border-radius:8px;
  text-decoration:none;
  font-weight:600;
}

.btn-primary{
  background:#00d4ff;
  color:#000;
}

.btn-outline{
  border:1px solid #00d4ff;
  color:#00d4ff;
}

/* RESPONSIVE */

@media(max-width:991px){

  .sd-hero-grid,
  .sd-grid-2{
    grid-template-columns:1fr;
  }

  .sd-hero-content h1{
    font-size:38px;
  }

  .sd-grid-3{
    grid-template-columns:1fr;
  }
}


/* =========================
   portfolio PAGE CSS
========================= */

.pf-filter-section{
  padding:40px 0;
  text-align:center;
}

.pf-filter-wrapper{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:15px;
}

.pf-btn{
  padding:10px 18px;
  border-radius:30px;
  border:1px solid #ffffff20;
  background:#121826;
  color:#fff;
  cursor:pointer;
  transition:0.3s;
  font-size:14px;
}

.pf-btn:hover{
  border-color:#00d4ff;
  color:#00d4ff;
  transform:translateY(-2px);
}

.pf-btn.active{
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  border:none;
  color:#fff;
}

/* =========================
   PORTFOLIO GRID
========================= */

.pf-grid-section{
  padding:80px 0;
}

/* GRID */

.pf-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:25px;
  margin-top:50px;
}

/* CARD */

.pf-card{
  background:#121826;
  border-radius:20px;
  overflow:hidden;
  cursor:pointer;
  transition:0.4s;
  border:1px solid #ffffff10;
}

/* IMAGE */

.pf-image{
  overflow:hidden;
}

.pf-image img{
  width:100%;
  display:block;
  transition:0.5s;
}

/* HOVER ZOOM */

.pf-card:hover img{
  transform:scale(1.1);
}

/* CONTENT */

.pf-content{
  padding:20px;
}

.pf-content span{
  font-size:13px;
  color:#00d4ff;
}

.pf-content h3{
  font-size:20px;
  margin-top:8px;
}

/* HOVER EFFECT */

.pf-card:hover{
  transform:translateY(-8px);
  border-color:#00d4ff40;
}

/* RESPONSIVE */

@media(max-width:991px){
  .pf-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){
  .pf-grid{
    grid-template-columns:1fr;
  }
}

/* =========================
   CASE STUDY SECTION
========================= */

.pf-case-section{
  padding:100px 0;
}

/* WRAPPER */

.pf-case-wrapper{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  align-items:center;
}

/* TAG */

.case-tag{
  display:inline-block;
  padding:8px 15px;
  background:#ffffff10;
  border-radius:20px;
  font-size:13px;
  margin-bottom:15px;
  color:#00d4ff;
}

/* TEXT */

.pf-case-content h2{
  font-size:40px;
  margin-bottom:15px;
}

.pf-case-content p{
  color:#cfcfcf;
  line-height:1.8;
  margin-bottom:25px;
}

/* STATS */

.pf-case-stats{
  display:flex;
  gap:25px;
  margin-bottom:30px;
  flex-wrap:wrap;
}

.case-stat h3{
  font-size:28px;
  color:#00d4ff;
}

.case-stat p{
  font-size:14px;
  color:#aaa;
}

/* IMAGE */

.pf-case-image img{
  width:100%;
  border-radius:25px;
  transition:0.4s;
}

.pf-case-image img:hover{
  transform:scale(1.03);
}

/* RESPONSIVE */

@media(max-width:991px){

  .pf-case-wrapper{
    grid-template-columns:1fr;
  }

  .pf-case-content h2{
    font-size:32px;
  }
}


.ph-hero{
  padding:150px 0 80px;
}

.ph-hero-wrapper{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:60px;
  align-items:center;
}

.ph-badge{
  display:inline-block;
  padding:8px 15px;
  background:#ffffff10;
  border-radius:30px;
  color:#00d4ff;
  font-size:13px;
  margin-bottom:20px;
}

.ph-hero-content h1{
  font-size:56px;
  line-height:1.1;
  margin-bottom:20px;
}

.ph-hero-content p{
  color:#cfcfcf;
  margin-bottom:30px;
  line-height:1.8;
}

.ph-hero-actions{
  display:flex;
  gap:15px;
  flex-wrap:wrap;
}

.ph-hero-card{
  position:relative;
}

.ph-hero-card img{
  width:100%;
  border-radius:25px;
}

.ph-floating{
  position:absolute;
  bottom:20px;
  left:20px;
  background:#121826;
  padding:15px 20px;
  border-radius:15px;
  border:1px solid #ffffff10;
}

.ph-floating h3{
  color:#00d4ff;
  font-size:26px;
}

/* RESPONSIVE */

@media(max-width:991px){
  .ph-hero-wrapper{
    grid-template-columns:1fr;
    text-align:center;
  }

  .ph-hero-content h1{
    font-size:40px;
  }

  .ph-hero-actions{
    justify-content:center;
  }
}


.pf-filter{
  padding:40px 0;
}

.pf-chip-wrapper{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
}

.chip{
  padding:10px 18px;
  border-radius:25px;
  border:1px solid #ffffff20;
  background:#121826;
  color:#fff;
  cursor:pointer;
  transition:0.3s;
  font-size:14px;
}

.chip:hover{
  border-color:#00d4ff;
  color:#00d4ff;
}

.chip.active{
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  border:none;
}



.ph-grid-section{
  padding:80px 0;
}

.ph-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:25px;
}

.ph-item{
  position:relative;
  overflow:hidden;
  border-radius:20px;
}

.ph-item img{
  width:100%;
  display:block;
  transition:0.5s;
}

.ph-item:hover img{
  transform:scale(1.1);
}

.ph-overlay{
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  padding:20px;
  background:linear-gradient(transparent,rgba(0,0,0,0.8));
}

.ph-overlay span{
  color:#00d4ff;
  font-size:13px;
}

.ph-overlay h3{
  font-size:20px;
  margin-top:5px;
}

.ph-item:hover{
  transform:translateY(-6px);
  transition:0.4s;
}

/* RESPONSIVE */

@media(max-width:991px){
  .ph-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){
  .ph-grid{
    grid-template-columns:1fr;
  }

  .ph-hero-content h1{
    font-size:34px;
  }
}


/* =========================
   HIRE ME MODAL
========================= */
/* =========================
   HIRE ME MODAL (MODERN)
========================= */

.hm-modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  z-index:9999;
  padding:20px;
}

/* OVERLAY */

.hm-overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.75);
  backdrop-filter:blur(6px);
}

/* MAIN BOX */

.hm-box{
  position:relative;
  width:100%;
  max-width:950px;
  background:#121826;
  border:1px solid #ffffff15;
  border-radius:24px;
  display:grid;
  grid-template-columns:1fr 1fr;
  overflow:hidden;

  animation:hmPop 0.35s ease;
}

/* CLOSE */

.hm-close{
  position:absolute;
  top:10px;
  right:15px;
  background:none;
  border:none;
  font-size:28px;
  color:#fff;
  cursor:pointer;
}

/* LEFT */

.hm-left{
  padding:40px;
  background:linear-gradient(135deg,rgba(108,99,255,0.15),rgba(0,212,255,0.08));
}

.hm-badge{
  display:inline-block;
  padding:6px 14px;
  font-size:12px;
  border-radius:20px;
  background:#ffffff15;
  color:#00d4ff;
  margin-bottom:15px;
}

.hm-left h2{
  font-size:34px;
  margin-bottom:15px;
}

.hm-left p{
  color:#cfcfcf;
  line-height:1.7;
  margin-bottom:20px;
}

.hm-features{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:25px;
  color:#ddd;
}

/* WHATSAPP */

.hm-whatsapp{
  display:inline-block;
  padding:10px 16px;
  background:#25D366;
  color:#fff;
  border-radius:8px;
  text-decoration:none;
  font-weight:600;
}

/* RIGHT */

.hm-right{
  padding:40px;
}

.hm-right form{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.hm-row{
  display:flex;
  gap:10px;
}

.hm-right input,
.hm-right select,
.hm-right textarea{
  width:100%;
  padding:12px;
  border-radius:10px;
  border:1px solid #ffffff20;
  background:#1b2335;
  color:#fff;
  outline:none;
}

.hm-right textarea{
  min-height:100px;
}

/* BUTTON */

.hm-right button{
  padding:12px;
  border:none;
  border-radius:10px;
  background:linear-gradient(45deg,#6c63ff,#00d4ff);
  color:#fff;
  cursor:pointer;
  font-weight:600;
}

/* ANIMATION */

@keyframes hmPop{
  from{
    transform:scale(0.85);
    opacity:0;
  }
  to{
    transform:scale(1);
    opacity:1;
  }
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:768px){

  .hm-box{
    grid-template-columns:1fr;
    max-height:90vh;
    overflow-y:auto;
  }

  .hm-left,
  .hm-right{
    padding:25px;
  }

  .hm-row{
    flex-direction:column;
  }
}