/* Base styles and reset */
:root {
  /* Color system */
  --primary: #0052FF;
  --primary-dark: #0040CC;
  --primary-light: #E9EFFF;
  --secondary: #05B299;
  --accent: #FCC70B;
  --success: #05B299;
  --warning: #FF9F0A;
  --error: #FF453A;
  --neutral-100: #F8F9FA;
  --neutral-200: #E9ECEF;
  --neutral-300: #DEE2E6;
  --neutral-400: #CED4DA;
  --neutral-500: #ADB5BD;
  --neutral-600: #6C757D;
  --neutral-700: #495057;
  --neutral-800: #343A40;
  --neutral-900: #212529;
  
  /* Typography */
  --font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  
  /* Spacing system (based on 8px) */
  --space-1: 0.5rem;   /* 8px */
  --space-2: 1rem;     /* 16px */
  --space-3: 1.5rem;   /* 24px */
  --space-4: 2rem;     /* 32px */
  --space-5: 3rem;     /* 48px */
  --space-6: 4rem;     /* 64px */
  
  /* Other variables */
  --border-radius-sm: 0.25rem;
  --border-radius-md: 0.5rem;
  --border-radius-lg: 1rem;
  --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
  --transition: all 0.3s ease;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: var(--font-family);
  color: var(--neutral-900);
  line-height: 1.5;
  background-color: #FFFFFF;
  overflow-x: hidden;
}

.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--space-2);
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.2;
  margin-bottom: var(--space-2);
  font-weight: 700;
}

p {
  margin-bottom: var(--space-2);
}

a {
  text-decoration: none;
  color: var(--primary);
  transition: var(--transition);
}

img {
  max-width: 100%;
  height: auto;
}

section {
  padding: var(--space-5) 0;
}

/* Button styles */
.btn {
  display: inline-block;
  padding: 0;
  transition: var(--transition);
  border-radius: var(--border-radius-md);
  font-weight: 500;
}

.btn button {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1rem;
  cursor: pointer;
  transition: var(--transition);
  border: none;
  background: none;
  padding: var(--space-1) var(--space-2);
  display: inline-block;
}

.btn-primary {
  background-color: var(--primary);
  color: white;
  border: 1px solid var(--primary);
}

.btn-primary:hover {
  background-color: var(--primary-dark);
  border-color: var(--primary-dark);
}

.btn-primary button {
  color: white;
}

.btn-outline {
  background-color: transparent;
  border: 1px solid var(--neutral-300);
  color: var(--neutral-800);
}

.btn-outline:hover {
  border-color: var(--primary);
  background-color: var(--primary-light);
}

.btn-text {
  background: none;
  border: none;
  color: var(--neutral-700);
  padding: var(--space-1) 0;
}

.btn-text:hover {
  color: var(--primary);
}

/* Header and Navigation */
header {
  position: sticky;
  top: 0;
  z-index: 100;
  background-color: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: var(--shadow-sm);
  padding: var(--space-2) 0;
}

nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.logo h1 {
  font-size: 1.5rem;
  margin-bottom: 0;
  color: var(--primary);
}

.nav-links {
  display: flex;
  gap: var(--space-3);
}

.nav-links a {
  color: var(--neutral-700);
  font-weight: 500;
}

.nav-links a:hover {
  color: var(--primary);
}

.auth-buttons {
  display: flex;
  gap: var(--space-2);
  align-items: center;
}

.menu-toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
  margin-left: var(--space-2);
}

.menu-toggle span {
  display: block;
  width: 24px;
  height: 2px;
  background-color: var(--neutral-800);
  transition: var(--transition);
}

/* Hero Section */
.hero {
  padding: var(--space-6) 0;
  position: relative;
  overflow: hidden;
}

.hero .container {

  display: flex;
  /* grid-template-columns: 1fr 1fr; */
  /* gap: var(--space-4); */
  align-items: center;
}

.hero-content h1 {
  font-size: 3rem;
  margin-bottom: var(--space-3);
  line-height: 1.1;
}

.hero-content p {
  font-size: 1.25rem;
  color: var(--neutral-700);
  margin-bottom: var(--space-3);
}

.signup-form {
  display: flex;
  gap: var(--space-1);
  margin-bottom: var(--space-2);
}

.signup-form input {
  flex: 1;
  padding: var(--space-1) var(--space-2);
  border: 1px solid var(--neutral-300);
  border-radius: var(--border-radius-md);
  font-family: var(--font-family);
  font-size: 1rem;
}

.signup-form input:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 2px var(--primary-light);
}

.hero-image {
  position: relative;
  display: flex;
  justify-content: center;
}

.hero-image img {
  max-width: 100%;
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-lg);
}

.small-text {
  font-size: 0.875rem;
  color: var(--neutral-600);
}

/* Stats Section */
.stats {
  background-color: var(--neutral-100);
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-3);
}

.stat-card {
  background-color: white;
  padding: var(--space-3);
  border-radius: var(--border-radius-md);
  box-shadow: var(--shadow-sm);
  text-align: center;
  transition: var(--transition);
}

.stat-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-md);
}

.stat-card h3 {
  font-size: 2rem;
  color: var(--primary);
  margin-bottom: var(--space-1);
}

.stat-card p {
  font-size: 1rem;
  color: var(--neutral-600);
  margin-bottom: 0;
}

/* Features Section */
.features {
  text-align: center;
}

.features h2 {
  font-size: 2.5rem;
  margin-bottom: var(--space-4);
}

.features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.feature-card {
  background-color: white;
  padding: var(--space-3);
  border-radius: var(--border-radius-md);
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  border: 1px solid var(--neutral-200);
}

.feature-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-md);
  border-color: var(--primary-light);
}

.feature-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto var(--space-2);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--primary-light);
}

.feature-icon.secure {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230052FF'%3E%3Cpath d='M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm0 10.99h7c-.53 4.12-3.28 7.79-7 8.94V12H5V6.3l7-3.11v8.8z'/%3E%3C/svg%3E");
  background-size: 32px;
  background-position: center;
  background-repeat: no-repeat;
}

.feature-icon.insurance {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230052FF'%3E%3Cpath d='M11 17h2v-1h1c.55 0 1-.45 1-1v-3c0-.55-.45-1-1-1h-3v-1h4V8h-2V7h-2v1h-1c-.55 0-1 .45-1 1v3c0 .55.45 1 1 1h3v1H9v2h2v1zm9-13H4c-1.11 0-1.99.89-1.99 2L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 14H4V6h16v12z'/%3E%3C/svg%3E");
  background-size: 32px;
  background-position: center;
  background-repeat: no-repeat;
}

.feature-icon.compliance {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230052FF'%3E%3Cpath d='M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm-2 16l-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z'/%3E%3C/svg%3E");
  background-size: 32px;
  background-position: center;
  background-repeat: no-repeat;
}

.feature-card h3 {
  font-size: 1.25rem;
  margin-bottom: var(--space-1);
}

.feature-card p {
  color: var(--neutral-600);
  font-size: 0.95rem;
  margin-bottom: 0;
}

/* Crypto Prices Section */
.crypto-prices h2 {
  font-size: 2.5rem;
  text-align: center;
  margin-bottom: var(--space-4);
}

.prices-table {
  border-radius: var(--border-radius-md);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--neutral-200);
}

.price-row {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  padding: var(--space-2);
  align-items: center;
  border-bottom: 1px solid var(--neutral-200);
  transition: var(--transition);
}

.price-row:last-child {
  border-bottom: none;
}

.price-row:hover:not(.table-header) {
  background-color: var(--neutral-100);
}

.table-header {
  background-color: var(--neutral-100);
  font-weight: 600;
  color: var(--neutral-700);
}

.crypto-name {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.crypto-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-size: cover;
}

.crypto-icon.btc {
  background-color: #F7931A;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M17.06 11.57c.59-.69.94-1.59.94-2.57 0-1.86-1.27-3.43-3-3.87V3h-2v2h-2V3H9v2H6v2h2v10H6v2h3v2h2v-2h2v2h2v-2.13c1.73-.44 3-2.01 3-3.87 0-.98-.35-1.88-.94-2.57zM10 7h4c1.1 0 2 .9 2 2s-.9 2-2 2h-4V7zm5 10h-5v-4h5c1.1 0 2 .9 2 2s-.9 2-2 2z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 24px;
}

.crypto-icon.eth {
  background-color: #627EEA;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 1.75l-6.25 10.5L12 16l6.25-3.75L12 1.75M5.75 13.5L12 22.25l6.25-8.75L12 17.25 5.75 13.5z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 24px;
}

.crypto-icon.sol {
  background: linear-gradient(45deg, #9945FF, #14F195);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 3L1 9l11 6 9-4.91V17h2V9L12 3z M3.5 11.5v3L12 20l8.5-5.5v-3L12 17l-8.5-5.5z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 24px;
}

.crypto-icon.usdc {
  background-color: #2775CA;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm-1-13h2v2h1c1.1 0 2 .9 2 2v2c0 1.1-.9 2-2 2h-1v2h-2v-2H9v-2h4v-2H9v-2h4V7z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 24px;
}

.crypto-name h4 {
  margin-bottom: 0;
  font-size: 1rem;
}

.crypto-name span {
  font-size: 0.85rem;
  color: var(--neutral-600);
}

.change {
  font-weight: 500;
}

.change.positive {
  color: var(--success);
}

.change.negative {
  color: var(--error);
}

.change.neutral {
  color: var(--neutral-600);
}

.view-more {
  text-align: center;
  margin-top: var(--space-3);
}

/* CTA Section */
.cta {
  background-color: var(--primary-light);
  border-radius: var(--border-radius-lg);
  margin: var(--space-4) 0;
}

.cta .container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
  align-items: center;
}

.cta-content h2 {
  font-size: 2.5rem;
  margin-bottom: var(--space-2);
}

.cta-content p {
  margin-bottom: var(--space-3);
  color: var(--neutral-700);
}

.cta-image img {
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-md);
}

/* Testimonials Section */
.testimonials {
  background-color: var(--neutral-100);
  text-align: center;
}

.testimonials h2 {
  font-size: 2.5rem;
  margin-bottom: var(--space-4);
}

.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-3);
}

.testimonial-card {
  background-color: white;
  padding: var(--space-3);
  border-radius: var(--border-radius-md);
  box-shadow: var(--shadow-sm);
  text-align: left;
  transition: var(--transition);
  border: 1px solid var(--neutral-200);
}

.testimonial-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-md);
  border-color: var(--primary-light);
}

.testimonial-rating {
  color: var(--accent);
  margin-bottom: var(--space-2);
  font-size: 1.25rem;
}

.testimonial-author {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
}

.author-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: var(--neutral-300);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ADB5BD'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 24px;
}

.author-info h4 {
  margin-bottom: 0;
  font-size: 1rem;
}

.author-info p {
  margin-bottom: 0;
  font-size: 0.85rem;
  color: var(--neutral-600);
}

/* Final CTA Section */
.final-cta {
  text-align: center;
  padding: var(--space-6) 0;
}

.final-cta h2 {
  font-size: 2.5rem;
  margin-bottom: var(--space-2);
}

.final-cta p {
  font-size: 1.25rem;
  color: var(--neutral-700);
  margin-bottom: var(--space-3);
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

/* Footer */
footer {
  background-color: var(--neutral-900);
  color: white;
  padding: var(--space-5) 0 var(--space-3);
}

.footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: var(--space-4);
  margin-bottom: var(--space-4);
}

.footer-column h3 {
  color: white;
  font-size: 1.5rem;
  margin-bottom: var(--space-2);
}

.footer-column h4 {
  color: white;
  font-size: 1.25rem;
  margin-bottom: var(--space-2);
}

.footer-column p {
  color: var(--neutral-400);
  margin-bottom: var(--space-2);
}

.footer-column a {
  display: block;
  color: var(--neutral-400);
  margin-bottom: var(--space-1);
  transition: var(--transition);
}

.footer-column a:hover {
  color: white;
}

.social-links {
  display: flex;
  gap: var(--space-2);
  margin-top: var(--space-2);
}

.social-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: var(--neutral-800);
  transition: var(--transition);
}

.social-icon:hover {
  background-color: var(--primary);
}

.social-icon.twitter {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M22.46 6c-.77.35-1.6.58-2.46.69.88-.53 1.56-1.37 1.88-2.38-.83.5-1.75.85-2.72 1.05C18.37 4.5 17.26 4 16 4c-2.35 0-4.27 1.92-4.27 4.29 0 .34.04.67.11.98C8.28 9.09 5.11 7.38 3 4.79c-.37.63-.58 1.37-.58 2.15 0 1.49.75 2.81 1.91 3.56-.71 0-1.37-.2-1.95-.5v.03c0 2.08 1.48 3.82 3.44 4.21a4.22 4.22 0 0 1-1.93.07 4.28 4.28 0 0 0 4 2.98 8.521 8.521 0 0 1-5.33 1.84c-.34 0-.68-.02-1.02-.06C3.44 20.29 5.7 21 8.12 21 16 21 20.33 14.46 20.33 8.79c0-.19 0-.37-.01-.56.84-.6 1.56-1.36 2.14-2.23z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 18px;
}

.social-icon.facebook {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M20 3H4a1 1 0 0 0-1 1v16a1 1 0 0 0 1 1h8.62v-7h-2.35v-2.69h2.35v-2c0-2.33 1.42-3.6 3.5-3.6 1 0 1.84.07 2.09.1v2.43h-1.43c-1.13 0-1.35.53-1.35 1.32v1.73h2.69l-.35 2.69h-2.34V21H20a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 18px;
}

.social-icon.instagram {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 7a5 5 0 1 0 0 10 5 5 0 0 0 0-10zm0-2a7 7 0 1 1 0 14 7 7 0 0 1 0-14zm8-1a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-10.6-2.6c-2.2 0-4.16.86-5.66 2.36A8.03 8.03 0 0 0 1.33 9.4v5.2a8.03 8.03 0 0 0 2.4 5.66 8.03 8.03 0 0 0 5.67 2.4h5.2a8.03 8.03 0 0 0 5.66-2.4 8.03 8.03 0 0 0 2.4-5.67V9.4a8.03 8.03 0 0 0-2.4-5.66A8.03 8.03 0 0 0 14.6 1.34H9.4zm0 2h5.2a6.03 6.03 0 0 1 4.24 1.76A6.03 6.03 0 0 1 20.66 9.4v5.2a6.03 6.03 0 0 1-1.76 4.24 6.03 6.03 0 0 1-4.24 1.76H9.4a6.03 6.03 0 0 1-4.24-1.76A6.03 6.03 0 0 1 3.33 14.6V9.4a6.03 6.03 0 0 1 1.76-4.24A6.03 6.03 0 0 1 9.4 3.33z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 18px;
}

.social-icon.linkedin {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zM9 17H6.5v-7H9v7zM7.7 9c-.8 0-1.4-.7-1.4-1.5S6.9 6 7.7 6s1.4.7 1.4 1.5S8.6 9 7.7 9zM18 17h-2.4v-3.5c0-1-.7-1.5-1.3-1.5s-1.3.5-1.3 1.5V17h-2.5v-7h2.5v1.3c.5-.9 1.3-1.3 2.3-1.3 1.9 0 2.7 1.4 2.7 3.8V17z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 18px;
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: var(--space-3);
  border-top: 1px solid var(--neutral-800);
}

.footer-bottom p {
  margin-bottom: 0;
  color: var(--neutral-500);
  font-size: 0.875rem;
}

.footer-links {
  display: flex;
  gap: var(--space-2);
}

.footer-links a {
  color: var(--neutral-500);
  font-size: 0.875rem;
}

.footer-links a:hover {
  color: white;
}

/* Mobile menu */
nav.open .nav-links,
nav.open .auth-buttons {
  display: flex;
}

.menu-toggle.open span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.menu-toggle.open span:nth-child(2) {
  opacity: 0;
}

.menu-toggle.open span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* Responsive styles */
@media (max-width: 1024px) {
  .hero-content h1 {
    font-size: 2.5rem;
  }
  
  .cta-content h2 {
    font-size: 2rem;
  }
  
  .features-grid,
  .testimonials-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .hero .container,
  .cta .container {
    grid-template-columns: 1fr;
  }
  
  .hero-content {
    order: 1;
    text-align: center;
  }
  
  .hero-image {
    order: 0;
    margin-bottom: var(--space-3);
  }
  
  .nav-links,
  .auth-buttons {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    flex-direction: column;
    background-color: white;
    padding: var(--space-2);
    box-shadow: var(--shadow-md);
  }
  
  .menu-toggle {
    display: flex;
  }
  
  .stats-grid {
    grid-template-columns: 1fr;
  }
  
  .footer-grid {
    grid-template-columns: 1fr;
    gap: var(--space-3);
  }
  
  .footer-bottom {
    flex-direction: column;
    gap: var(--space-2);
    text-align: center;
  }
  
  .prices-table {
    overflow-x: auto;
  }
  
  .price-row {
    grid-template-columns: 2fr 1fr 1fr 0.8fr;
  }
}

@media (max-width: 576px) {
  .features-grid,
  .testimonials-grid {
    grid-template-columns: 1fr;
  }
  
  .signup-form {
    flex-direction: column;
  }
  
  section {
    padding: var(--space-4) 0;
  }
  
  .hero-content h1,
  .features h2,
  .crypto-prices h2,
  .testimonials h2,
  .final-cta h2,
  .cta-content h2 {
    font-size: 1.75rem;
  }
}

/* Animations */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.hero-content, .hero-image, .feature-card, .stat-card, .testimonial-card {
  animation: fadeIn 0.8s ease-out forwards;
}

.hero-content {
  animation-delay: 0.2s;
}

.hero-image {
  animation-delay: 0.4s;
}

.stat-card:nth-child(1) {
  animation-delay: 0.2s;
}

.stat-card:nth-child(2) {
  animation-delay: 0.4s;
}

.stat-card:nth-child(3) {
  animation-delay: 0.6s;
}

.feature-card:nth-child(1) {
  animation-delay: 0.2s;
}

.feature-card:nth-child(2) {
  animation-delay: 0.4s;
}

.feature-card:nth-child(3) {
  animation-delay: 0.6s;
}

.btn {
  position: relative;
  overflow: hidden;
}

.btn::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 5px;
  height: 5px;
  background: rgba(255, 255, 255, 0.3);
  opacity: 0;
  border-radius: 100%;
  transform: scale(1, 1) translate(-50%);
  transform-origin: 50% 50%;
}

.btn:hover::after {
  animation: ripple 1s ease-out;
}

@keyframes ripple {
  0% {
    transform: scale(0, 0);
    opacity: 0.5;
  }
  100% {
    transform: scale(20, 20);
    opacity: 0;
  }
}