*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}

body{
    font-family:var(--font-sans);
    background:var(--bg);
    color:var(--text-primary);
    line-height:1.6;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
}

body::before{
    content:'';position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.025;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size:256px;
}

.container{max-width:1100px;margin:0 auto;padding:0 24px}

@keyframes pulse{
    0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(0,255,136,.4)}
    50%{opacity:.6;box-shadow:0 0 0 5px rgba(0,255,136,0)}
}

.floating-shapes{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.shape{position:absolute;border:1px solid rgba(0,255,136,.06)}
.shape-1{width:80px;height:80px;top:10%;left:5%;transform:rotate(45deg);animation:floatS 20s ease-in-out infinite}
.shape-2{width:120px;height:120px;top:30%;right:8%;border-radius:50%;animation:floatS 25s ease-in-out infinite reverse}
.shape-3{width:60px;height:60px;top:60%;left:12%;transform:rotate(30deg);animation:floatS 18s ease-in-out infinite 5s}
.shape-4{width:100px;height:100px;top:75%;right:15%;border-radius:30%;animation:floatS 22s ease-in-out infinite 3s}
.shape-5{width:40px;height:40px;top:45%;left:50%;transform:rotate(60deg);animation:floatS 15s ease-in-out infinite 7s}
@keyframes floatS{0%,100%{transform:translateY(0) rotate(var(--r,45deg));opacity:.4}50%{transform:translateY(-35px) rotate(calc(var(--r,45deg)+15deg));opacity:.7}}
.shape-1{--r:45deg}.shape-3{--r:30deg}.shape-5{--r:60deg}

.scroll-indicator{position:fixed;top:60px;left:0;height:2px;background:var(--green);z-index:101;box-shadow:0 0 10px rgba(0,255,136,.3);width:0;transition:width .05s linear}

.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:var(--radius-md);font-size:13px;font-family:var(--font-mono);font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s;border:none}
.btn-primary{background:var(--green);color:#000}
.btn-primary:hover{background:var(--green-hover);box-shadow:0 0 30px rgba(0,255,136,.2);transform:translateY(-1px)}
.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}
.btn-secondary:hover{border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-1px)}
.btn svg{width:14px;height:14px}

.section-label{font-family:var(--font-mono);font-size:11px;color:var(--green);text-transform:uppercase;letter-spacing:3px;margin-bottom:12px}
.section-title{font-family:var(--font-mono);font-size:28px;font-weight:700;letter-spacing:-1px;margin-bottom:48px}