/* =========================
   GLOBAL RESET
========================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

:root{

  --primary:#6C3BFF;
  --primary-dark:#4B1FE0;
  --secondary:#8B5CFF;

  --dark:#0F172A;
  --dark-light:#1E293B;

  --text:#1F2937;
  --text-light:#64748B;

  --white:#ffffff;
  --border:#E2E8F0;

  --bg:#F8FAFC;

  --shadow-sm:0 4px 20px rgba(0,0,0,0.05);
  --shadow-md:0 10px 40px rgba(0,0,0,0.08);
  --shadow-lg:0 25px 60px rgba(108,59,255,0.18);

  --radius:24px;

}

html{
  scroll-behavior:smooth;
}

body{
  font-family:'Poppins',sans-serif;
  background:var(--bg);
  color:var(--text);
  overflow-x:hidden;
  line-height:1.7;

  padding-top:138px;
}

/* =========================
   GLOBAL ELEMENTS
========================= */

img{
  width:100%;
  display:block;
}

a{
  text-decoration:none;
}

ul{
  list-style:none;
}

.container{
  width:90%;
  max-width:1280px;
  margin:auto;
}

.section{
  padding:110px 0;
  position:relative;
}

h1,h2,h3,h4{
  font-weight:700;
  line-height:1.2;
}

h1{
  font-size:72px;
}

h2{
  font-size:48px;
  margin-bottom:20px;
}

h3{
  font-size:24px;
}

p{
  color:var(--text-light);
  font-size:16px;
}

/* =========================
   BUTTONS
========================= */

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  padding:16px 34px;

  border-radius:100px;

  font-weight:600;

  transition:0.4s ease;

  border:none;

  cursor:pointer;

  position:relative;

  overflow:hidden;
}

.primary{

  background:
  linear-gradient(
  135deg,
  var(--primary),
  var(--secondary));

  color:var(--white);

  box-shadow:var(--shadow-lg);
}

.primary:hover{

  transform:translateY(-5px);

  box-shadow:
  0 20px 40px rgba(108,59,255,0.3);

}

.secondary{

  border:2px solid rgba(255,255,255,0.5);

  color:#fff;

  backdrop-filter:blur(10px);
}

.secondary:hover{

  background:#fff;
  color:var(--primary);

}

.btn:hover{
  transform:translateY(-4px);
}

/* =========================
   TOP BAR
========================= */

.top-bar{

  background:
  linear-gradient(
  90deg,
  var(--primary),
  var(--primary-dark));

  color:#fff;

  padding:13px 0;

  overflow:hidden;

  position:fixed;

  width:100%;

  z-index:9999;

  font-size:15px;

  font-weight:500;
}

.marquee{
  display:flex;
  gap:90px;
  white-space:nowrap;
  animation:marquee 20s linear infinite;
}

@keyframes marquee{

  from{
    transform:translateX(100%);
  }

  to{
    transform:translateX(-100%);
  }

}

/* =========================
   NAVBAR
========================= */
.navbar{

  position:fixed;

  top:48px;
  left:0;

  width:100%;

  z-index:999;

  background:#fff;

  backdrop-filter:blur(18px);

  border-bottom:
  1px solid rgba(0,0,0,0.05);

  transition:0.4s ease;

}

.navbar.sticky{

  top:0;

  box-shadow:
  0 10px 40px rgba(0,0,0,0.08);

}

.nav-container{

  height:90px;

  display:flex;

  justify-content:space-between;

  align-items:center;
}

.logo{

  display:flex;

  align-items:center;

  gap:14px;

}

.logo img{

  height:72px;

  width:auto;

  object-fit:contain;

}

.logo-text{

  display:flex;

  flex-direction:column;

  font-size:26px;

  font-weight:700;

  line-height:1.05;

  max-width:320px;

  font-family:'Poppins',sans-serif;

}

.logo-text span{

  color:#7B2CBF !important;

}

/* MOBILE */

@media(max-width:768px){

.logo{

  gap:10px;

}

.logo-text{

  font-size:16px;

  max-width:180px;

}

}
.nav-links{

  display:flex;

  gap:35px;

  align-items:center;
}

.nav-links a{

  color:var(--text);

  font-weight:500;

  position:relative;

  transition:0.3s;
}

.nav-links a::after{

  content:'';

  position:absolute;

  left:0;
  bottom:-8px;

  width:0;
  height:2px;

  background:var(--primary);

  transition:0.3s;
}

.nav-links a:hover{

  color:var(--primary);
}

.nav-links a:hover::after{

  width:100%;
}

.apply-btn{

  background:
  linear-gradient(
  135deg,
  var(--primary),
  var(--secondary));

  color:#fff !important;

  padding:14px 26px;

  border-radius:100px;

  box-shadow:var(--shadow-md);
}

.apply-btn:hover{

  transform:translateY(-3px);

}

/* MENU BUTTON */

.menu-btn{

  display:none;

  font-size:30px;

  cursor:pointer;

  color:#111827;

}

/* =========================
   MOBILE NAVIGATION
========================= */

@media(max-width:768px){

  .menu-btn{
    display:block;
  }

  .nav-links{

    position:absolute;

    top:82px;
    left:0;

    width:100%;

    background:#fff;

    flex-direction:column;

    padding:25px;

    gap:22px;

    display:none;

    box-shadow:
    0 10px 30px rgba(0,0,0,0.08);

  }

  .nav-links.active{
    display:flex;
  }

}
/* =========================
   SECTION TITLE
========================= */

.section-title{
  text-align:center;
  margin-bottom:70px;
}

.section-title span{

  display:inline-block;

  background:rgba(108,59,255,0.1);

  color:var(--primary);

  padding:10px 22px;

  border-radius:100px;

  font-size:14px;

  font-weight:600;

  margin-bottom:18px;
}

/* =========================
   CARD DESIGN
========================= */

.card{

  background:#fff;

  border-radius:var(--radius);

  box-shadow:var(--shadow-sm);

  transition:0.4s ease;
}

.card:hover{

  transform:translateY(-10px);

  box-shadow:var(--shadow-md);

}

/* =========================
   FOOTER
========================= */

.footer{

  background:
  linear-gradient(
  180deg,
  #111827,
  #020617);

  color:#fff;

  padding-top:100px;

  position:relative;
}

.footer-grid{

  display:grid;

  grid-template-columns:
  repeat(auto-fit,minmax(250px,1fr));

  gap:60px;
}

.footer-logo{

  width:190px;

  margin-bottom:25px;
}

.footer h3{

  margin-bottom:25px;

  font-size:22px;
}

.footer a,
.footer p{

  display:block;

  margin-bottom:16px;

  color:#CBD5E1;

  transition:0.3s;
}

.footer a:hover{

  color:#fff;

  transform:translateX(5px);
}

.socials{

  display:flex;

  gap:16px;

  margin-top:20px;
}

.socials a{

  width:48px;
  height:48px;

  border-radius:50%;

  background:
  linear-gradient(
  135deg,
  var(--primary),
  var(--secondary));

  display:flex;

  align-items:center;

  justify-content:center;

  color:#fff;

  font-size:18px;

  transition:0.4s ease;
}

.socials a:hover{

  transform:
  translateY(-5px)
  scale(1.05);

}

.copyright{

  text-align:center;

  padding:28px;

  margin-top:70px;

  border-top:
  1px solid rgba(255,255,255,0.08);
}

/* =========================
   WHATSAPP
========================= */

.whatsapp{

  position:fixed;

  right:25px;
  bottom:25px;

  width:68px;
  height:68px;

  background:#25D366;

  border-radius:50%;

  display:flex;

  align-items:center;

  justify-content:center;

  color:#fff;

  font-size:34px;

  z-index:999;

  box-shadow:
  0 15px 35px rgba(0,0,0,0.2);

  transition:0.3s;
}

.whatsapp:hover{

  transform:scale(1.1);

}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:992px){

h1{
  font-size:56px;
}

h2{
  font-size:40px;
}

}

@media(max-width:768px){

.section{
  padding:80px 0;
}

h1{
  font-size:42px;
}

h2{
  font-size:34px;
}

.menu-btn{
  display:block;
  font-size:28px;
  cursor:pointer;
}

.nav-links{

  position:fixed;

  top:138px;

  left:-100%;

  width:100%;

  background:#fff;

  flex-direction:column;

  align-items:center;

  gap:0;

  transition:0.4s ease;

  padding:20px 0;

  box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

.nav-links.active{
  left:0;
}

.nav-links li{
  width:100%;
  text-align:center;
}

.nav-links a{
  display:block;
  padding:18px;
}

.nav-container{
  height:82px;
}

.logo img{
  height:62px;
}

.top-bar{
  font-size:13px;
}

.footer{
  text-align:center;
}

.socials{
  justify-content:center;
}

.whatsapp{

  width:60px;
  height:60px;

  font-size:30px;

}

}
