@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&family=Syne:wght@400;500;600;700;800&family=Space+Mono:wght@400;700&display=swap";:root{--bg: #020202;--surface-1: #09090b;--surface-2: #0a0a0c;--surface-3: #111116;--accent: #00e5ff;--accent-dim: rgba(0, 229, 255, .08);--text-primary: #e8e8e8;--text-muted: #666680;--line: rgba(255, 255, 255, .05);--line-accent: rgba(0, 229, 255, .2);--font-display: "Syne", sans-serif;--font-body: "Plus Jakarta Sans", sans-serif;--font-mono: "Space Mono", monospace;--spacing-xs: 10px;--spacing-sm: 20px;--spacing-md: 32px;--spacing-lg: 64px;--spacing-xl: 96px;--ease-out: cubic-bezier(.16, 1, .3, 1);--t-fast: .15s;--t-normal: .25s;--t-slow: .7s;--fs-hero: clamp(72px, 11vw, 140px);--fw-hero: 800;--ls-hero: .02em;--lh-hero: .9;--fs-section-title: clamp(36px, 5vw, 64px);--fs-heading: clamp(28px, 3.5vw, 48px);--fw-heading: 700;--ls-heading: -.02em;--lh-heading: 1.1;--fs-subheading: clamp(16px, 2vw, 20px);--fw-subheading: 600;--ls-subheading: 0em;--lh-subheading: 1.25;--fs-body: 15px;--fw-body: 400;--ls-body: .01em;--lh-body: 1.6;--fs-body-sm: 13px;--lh-body-sm: 1.5;--fs-mono-md: 11px;--fs-mono-sm: 10px;--fs-mono-xs: 9px;--ls-mono: .06em;--ls-mono-wide: .14em}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-body);font-size:15px;font-weight:400;color:var(--text-primary);background-color:var(--bg);line-height:1.6;cursor:none;-webkit-font-smoothing:antialiased}.cursor-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width var(--t-fast),height var(--t-fast)}.cursor-ring{width:28px;height:28px;border-radius:50%;border:1px solid rgba(0,229,255,.4);position:fixed;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width var(--t-normal),height var(--t-normal),border-color var(--t-normal)}.cursor-ring.is-hovering{width:16px;height:16px;border-color:#00e5ffcc}.cursor-ring.is-clicking{width:38px;height:38px}.scanline-overlay{position:fixed;inset:0;z-index:50;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.02) 2px,rgba(0,0,0,.02) 4px)}.vignette-overlay{position:fixed;inset:0;z-index:51;pointer-events:none;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.55) 100%)}#film-grain{position:fixed;inset:0;z-index:52;pointer-events:none;opacity:.03;mix-blend-mode:overlay}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0;padding:0 32px;height:52px;background:rgba(9,9,11,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line);border-radius:0}.navbar-logo{font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--text-primary);text-decoration:none;letter-spacing:.12em;text-transform:uppercase;padding-bottom:0;border-bottom:none;width:auto;text-align:left;transition:color var(--t-fast)}.navbar-logo:hover{color:var(--accent)}.navbar-cv{font-family:var(--font-mono);font-size:9px;color:var(--text-muted);text-decoration:none;letter-spacing:.06em;transition:color var(--t-fast)}.navbar-cv:hover{color:var(--accent)}.navbar-links{list-style:none;display:flex;flex-direction:row;gap:24px;width:auto}.navbar-links a,.navbar-links button{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);text-decoration:none;background:none;border:none;cursor:pointer;text-align:left;display:block;width:auto;padding:4px 0;letter-spacing:.06em;transition:color var(--t-fast)}.navbar-links a:hover,.navbar-links button:hover,.navbar-links a.active{color:var(--accent)}.navbar-status{padding-top:0;border-top:none;width:auto;display:flex;align-items:center;justify-content:flex-end;gap:6px;font-family:var(--font-mono);font-size:9px;color:var(--text-muted);letter-spacing:.06em}.navbar-status-dot{width:5px;height:5px;border-radius:50%;background:#4ade80;flex-shrink:0;animation:breathe 2.4s ease-in-out infinite}@keyframes breathe{0%,to{opacity:1;box-shadow:0 0 4px #4ade80}50%{opacity:.4;box-shadow:none}}@media (max-width: 767px){.navbar{top:0;right:0;bottom:auto;left:0;transform:none;flex-direction:row;align-items:center;justify-content:space-between;border-radius:0;border:none;border-bottom:1px solid var(--line);padding:10px 20px;gap:0;height:auto}.navbar-logo{border-bottom:none;padding-bottom:0;width:auto}.navbar-links{flex-direction:row;gap:16px;width:auto}.navbar-links a,.navbar-links button{text-align:left;width:auto}.navbar-status{border-top:none;padding-top:0;width:auto}}.card-outer{background:rgba(9,9,11,.6);border:1px solid rgba(255,255,255,.05);border-radius:4px;transition:border-color var(--t-normal)}.card-outer:hover{border-color:#00e5ff26}.card-inner{background:var(--surface-2);border:1px solid rgba(255,255,255,.03);box-shadow:inset 0 1px #ffffff0a;margin:6px;border-radius:2px;transition:border-color var(--t-normal)}.card-outer:hover .card-inner{border-color:#00e5ff33}.text-link{font-family:var(--font-body);font-size:14px;color:var(--text-muted);text-decoration:none;position:relative;transition:color var(--t-fast);cursor:pointer}.text-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background:var(--accent);transition:width var(--t-normal) var(--ease-out)}.text-link:hover{color:var(--text-primary)}.text-link:hover:after{width:100%}.section-full{min-height:100vh;display:flex;align-items:center;position:relative}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.scanline-overlay,#film-grain{display:none}}
