:root { --bg:#000; --surface:rgba(255,255,255,0.03); --border:rgba(255,255,255,0.06); --text:#fff; --dim:rgba(255,255,255,0.5); --faint:rgba(255,255,255,0.3); --accent:#6c5ce7; --teal:#00cec9; --grad:linear-gradient(135deg,#6c5ce7,#00cec9); }
* { margin:0; padding:0; box-sizing:border-box; }
body { background:#000; color:#fff; font-family:-apple-system,BlinkMacSystemFont,'SF Pro Display',system-ui,sans-serif; overflow:hidden; height:100vh; -webkit-font-smoothing:antialiased; }
#progress-bar { position:fixed; top:0; left:0; width:100%; height:2px; z-index:100; }
#progress-fill { height:100%; background:var(--grad); width:0%; transition:width .5s ease; }
#slide-counter { position:fixed; bottom:32px; left:40px; font-size:12px; color:var(--faint); z-index:100; font-variant-numeric:tabular-nums; letter-spacing:2px; }
#deck { width:100%; height:100vh; position:relative; }
.slide { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:60px 80px; opacity:0; transform:scale(.98); transition:all .6s cubic-bezier(.16,1,.3,1); pointer-events:none; }
.slide.active { opacity:1; transform:scale(1); pointer-events:all; }
.slide.exit { opacity:0; transform:scale(1.02); }
#controls { position:fixed; bottom:24px; right:32px; display:flex; gap:6px; z-index:100; }
#controls button { width:40px; height:40px; border-radius:50%; border:1px solid var(--border); background:transparent; color:var(--faint); font-size:16px; cursor:pointer; transition:all .2s; }
#controls button:hover { border-color:rgba(255,255,255,.2); color:#fff; }
h1 { font-size:60px; font-weight:700; letter-spacing:-2.5px; line-height:1.05; max-width:920px; }
h2 { font-size:44px; font-weight:600; letter-spacing:-1.5px; line-height:1.1; max-width:820px; }
h3 { font-size:18px; font-weight:500; color:var(--dim); letter-spacing:-.3px; }
.sup { font-size:13px; font-weight:500; letter-spacing:3px; text-transform:uppercase; color:var(--teal); margin-bottom:20px; }
.sub { font-size:18px; color:var(--dim); line-height:1.6; max-width:640px; margin-top:20px; }
.gradient-text { background:var(--grad); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.meta { font-size:13px; color:var(--faint); margin-top:40px; letter-spacing:.5px; }
