:root {
  --bg-primary: #0a0a0b;
  --bg-secondary: #111113;
  --bg-card: #161618;
  --bg-glass: rgba(22,22,24,0.72);
  --border: #1e1e20;
  --border-hover: #2a2a2d;
  --text-primary: #f5f5f7;
  --text-secondary: #98989d;
  --text-tertiary: #6b6b72;
  --accent: #6c5ce7;
  --accent-hover: #7c6ff0;
  --accent-glow: rgba(108,92,231,0.3);
  --green: #00d68f;
  --green-glow: rgba(0,214,143,0.2);
  --blue: #36a2eb;
  --orange: #ff9f43;
  --pink: #fd79a8;
  --purple: #a29bfe;
  --red: #ff6b6b;
  --whatsapp: #25d366;
  --whatsapp-glow: rgba(37,211,102,0.3);
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-full: 50px;
  --shadow: 0 2px 20px rgba(0,0,0,0.3);
  --shadow-lg: 0 8px 40px rgba(0,0,0,0.4);
  --font-sans: -apple-system,BlinkMacSystemFont,'Segoe UI','SF Pro Display',sans-serif;
  --font-mono: 'SF Mono','Fira Code',monospace;
  --nav-height: 70px;
  --sidebar-width: 320px;
  --transition: 0.3s cubic-bezier(0.22,1,0.36,1);
  --transition-slow: 0.5s cubic-bezier(0.22,1,0.36,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{
  font-family:var(--font-sans);
  background:var(--bg-primary);
  color:var(--text-primary);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button,input,textarea,select{font:inherit;border:none;outline:none;background:none;color:inherit}
ul,ol{list-style:none}
::selection{background:var(--accent);color:#fff}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}

.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}
.section{padding:100px 0}
.section-title{font-size:clamp(1.8rem,4vw,3rem);font-weight:700;margin-bottom:16px;letter-spacing:-0.03em}
.section-subtitle{font-size:1.1rem;color:var(--text-secondary);margin-bottom:48px;max-width:600px}
.gradient-text{background:linear-gradient(135deg,var(--accent),var(--pink),var(--orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

.btn{
  display:inline-flex;align-items:center;gap:8px;padding:12px 28px;
  border-radius:var(--radius-full);font-weight:600;font-size:0.95rem;
  cursor:pointer;transition:var(--transition);position:relative;overflow:hidden;
}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 8px 30px var(--accent-glow)}
.btn-outline{border:1px solid var(--border);color:var(--text-primary)}
.btn-outline:hover{border-color:var(--accent);background:rgba(108,92,231,0.1)}
.btn-whatsapp{background:var(--whatsapp);color:#0a0a0b}
.btn-whatsapp:hover{background:#1ebe5b;color:#0a0a0b;transform:translateY(-2px);box-shadow:0 8px 30px var(--whatsapp-glow)}
.btn-sm{padding:8px 20px;font-size:0.85rem}
.btn-lg{padding:16px 36px;font-size:1.05rem}

.glass{
  background:var(--bg-glass);
  backdrop-filter:blur(20px) saturate(1.5);
  -webkit-backdrop-filter:blur(20px) saturate(1.5);
  border:1px solid var(--border);
}

.badge{
  display:inline-flex;align-items:center;gap:4px;padding:4px 12px;
  border-radius:var(--radius-full);font-size:0.75rem;font-weight:600;
  background:var(--bg-card);border:1px solid var(--border);
  white-space:nowrap;
}
.badge-green{color:var(--green);border-color:rgba(0,214,143,0.3);background:rgba(0,214,143,0.08)}
.badge-accent{color:var(--accent);border-color:rgba(108,92,231,0.3);background:rgba(108,92,231,0.08)}
.badge-blue{color:var(--blue);border-color:rgba(54,162,235,0.3);background:rgba(54,162,235,0.08)}
.badge-orange{color:var(--orange);border-color:rgba(255,159,67,0.3);background:rgba(255,159,67,0.08)}

.card{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  transition:var(--transition);
}
.card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow-lg)}

@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
@keyframes glow{0%,100%{box-shadow:0 0 20px var(--accent-glow)}50%{box-shadow:0 0 40px var(--accent-glow),0 0 60px rgba(108,92,231,0.15)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes wave{0%{transform:scale(1);opacity:0.8}100%{transform:scale(2.5);opacity:0}}
@keyframes liquid{0%,100%{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}50%{border-radius:30% 60% 70% 40%/50% 60% 30% 60%}}

.animate-fade{animation:fadeIn 0.6s ease forwards}
.animate-fade-up{animation:fadeInUp 0.8s ease forwards}
.stagger>*{opacity:0;animation:fadeInUp 0.6s ease forwards}
.stagger>*:nth-child(1){animation-delay:0.1s}
.stagger>*:nth-child(2){animation-delay:0.2s}
.stagger>*:nth-child(3){animation-delay:0.3s}
.stagger>*:nth-child(4){animation-delay:0.4s}
.stagger>*:nth-child(5){animation-delay:0.5s}
.stagger>*:nth-child(6){animation-delay:0.6s}

@media(max-width:768px){
  .section{padding:60px 0}
  .container{padding:0 16px}
}
