*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base: #eef3f3;--bg-surface: transparent;--bg-card: rgba(255, 255, 255, .65);--border: rgba(255, 255, 255, .6);--border-strong: rgba(0, 0, 0, .15);--accent-lime: #d6f542;--accent-lime-hover: #c4e630;--text-primary: #111111;--text-secondary: #555555;--text-muted: rgba(17, 17, 17, .4);--font-sans: "Plus Jakarta Sans", -apple-system, sans-serif;--font-serif: "Playfair Display", serif}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg-base);color:var(--text-primary);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle at 20% 0%,rgba(214,245,66,.15),transparent 40%),radial-gradient(circle at 80% 20%,rgba(120,200,255,.15),transparent 50%),radial-gradient(circle at 50% 100%,#ffffff 0%,transparent 60%);z-index:-1;pointer-events:none}h1{font-size:clamp(3rem,7vw,5.5rem);font-weight:500;line-height:1.05;letter-spacing:-.04em;color:var(--text-primary)}h2{font-size:clamp(2rem,5vw,3.5rem);font-weight:600;line-height:1.1;letter-spacing:-.03em}h3{font-size:1.2rem;font-weight:700;letter-spacing:-.01em}p{color:var(--text-secondary);font-size:1.1rem}.italic-serif{font-family:var(--font-serif);font-style:italic;font-weight:400}.container{max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:120px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:40px;font-size:16px;font-weight:600;cursor:pointer;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:var(--font-sans);letter-spacing:-.01em;border:1px solid transparent}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-primary{background:#ffffffe6;color:#000;border:1px solid rgba(0,0,0,.05);box-shadow:0 8px 24px #0000000f,inset 0 0 0 1px #fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-primary:hover{background:#fff;transform:translateY(-3px) scale(1.02);box-shadow:0 12px 30px #0000001a,inset 0 0 0 1px #fff}.btn-outline{background:transparent;color:#000;border:1px solid var(--border-strong)}.btn-outline:hover{background:#0000000d}.btn-link{background:transparent;color:var(--text-primary);border:none;border-bottom:1px solid var(--text-primary);border-radius:0;padding:4px 2px;font-weight:500}.btn-link:hover{opacity:.7;transform:translateY(0)}.card{background:var(--bg-card);border:1px solid var(--border);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-radius:32px;padding:32px;transition:all .5s cubic-bezier(.16,1,.3,1);box-shadow:0 16px 40px #0000000a,inset 0 1px #fffc}.card:hover{transform:translateY(-10px) scale(1.01);box-shadow:0 30px 60px #00000014,inset 0 1px #fff;border-color:#ffffffe6}.badge{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;border-radius:40px;font-size:13px;font-weight:700;letter-spacing:.03em;background:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-primary);border:1px solid rgba(255,255,255,.9);box-shadow:0 8px 24px #0000000d,inset 0 1px #fff;transition:transform .3s ease}.badge:hover{transform:translateY(-2px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(60px);filter:blur(10px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.animate-fadeUp{animation:fadeUp 1.2s cubic-bezier(.16,1,.3,1) forwards}.reveal{opacity:0;transform:translateY(40px);transition:all 1s cubic-bezier(.16,1,.3,1)}.reveal.active{opacity:1;transform:translateY(0)}.btn-flip{position:relative;overflow:hidden;height:54px;padding:0!important}.btn-flip span{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:transform .5s cubic-bezier(.16,1,.3,1);font-weight:700}.btn-flip .btn-flip-bottom{transform:translateY(100%);background:var(--accent-lime);color:#000}.btn-flip:hover .btn-flip-top{transform:translateY(-100%)}.btn-flip:hover .btn-flip-bottom{transform:translateY(0)}.blue-glow{position:absolute;width:300px;height:300px;background:radial-gradient(circle,rgba(59,130,246,.2),transparent 70%);border-radius:50%;pointer-events:none;z-index:0;filter:blur(40px)}@keyframes type{0%{width:0}to{width:100%}}.typewriter{display:inline-block;overflow:hidden;white-space:nowrap;border-right:2px solid var(--accent-lime);animation:type 3s steps(60,end) forwards}.badge-transparent{background:#ffffff0d;border:1px solid rgba(0,0,0,.05);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:none}
