@font-face {
  font-family: 'Poppins';
  src: local('Poppins Light'), local('Poppins-Light');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Poppins';
  src: local('Poppins Bold'), local('Poppins-Bold');
  font-weight: 700;
  font-style: normal;
}

:root {
  --primary: rgb(127 48 206);
  --secondary: rgb(181 73 181);
  --accent: rgb(140 211 69);
  --bs-body-font-family: 'Poppins', sans-serif;
  --bs-body-font-weight: 300;
}

body {
  font-family: var(--bs-body-font-family);
  font-weight: var(--bs-body-font-weight);
  -webkit-font-smoothing: antialiased;
  background-color: #fcfbfd;
}

h1, h2, h3, h4, h5, h6, .fw-bold {
  font-weight: 700 !important;
}

.btn-accent {
  background-color: var(--accent) !important;
  color: #ffffff !important;
  border-radius: 16px !important;
  font-weight: 700;
  border: none;
}

.hover-lift {
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.hover-lift:hover {
  transform: translateY(-12px);
}

.border-left-accent {
  border-left: 4px solid var(--accent) !important;
  border-radius: 16px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.04);
  border-top: none;
  border-right: none;
  border-bottom: none;
}

.rounded-16 { 
  border-radius: 16px !important; 
}

.rounded-sq { 
  border-radius: 12px !important; 
}

.bg-gradient-hero { 
  background: linear-gradient(135deg, var(--primary), var(--secondary)); 
}