@import"https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400&family=Syne:wght@400;500;600;700;800&display=swap";:root{--bg: #080d09;--fg: #dde8d8;--muted: #5a6b58;--accent: #5aeb8a;--accent2: #a3d977;--border: rgba(180,220,170,.12);--mono: "Space Mono", monospace;--sans: "Syne", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden}::selection{background:var(--accent);color:var(--bg)}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");opacity:.028;pointer-events:none;z-index:9999}@media(pointer:fine){html,body,a,button,input,label,*{cursor:none!important}#portfolio-cursor{position:fixed;top:0;left:0;width:10px;height:10px;background:var(--accent);border-radius:50%;pointer-events:none;z-index:999999;transition:width .18s,height .18s,background .18s,border .18s;transform:translate(-50%,-50%)}#portfolio-cursor.big{width:32px;height:32px;background:transparent;border:1.5px solid var(--accent)}}@media(pointer:coarse){#portfolio-cursor{display:none}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:translateY(0)}.how-i-work-wrap{perspective:900px;perspective-origin:center 0%;overflow:hidden}.how-i-work-card{opacity:0;transform:rotateX(-82deg);transform-origin:top center;transition:opacity .35s ease,transform .75s cubic-bezier(.23,1,.32,1);will-change:transform,opacity;backface-visibility:hidden}.how-i-work-card.visible{opacity:1;transform:rotateX(0)}@media(prefers-reduced-motion:reduce){.how-i-work-card{transform:none;transition:opacity .4s ease}}@keyframes scrollPulse{0%{left:-100%}to{left:100%}}@keyframes lusaka-pulse{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.lusaka-ring{animation:lusaka-pulse 2.4s ease-in-out infinite}.lusaka-ring-outer{animation:lusaka-pulse 2.4s ease-in-out infinite .8s}@keyframes heroScan{0%{top:-2%;opacity:0}10%{opacity:1}85%{opacity:1}to{top:102%;opacity:0}}.hero-scanline{position:absolute;left:0;right:0;height:2px;background:linear-gradient(to right,transparent,rgba(90,235,138,.4),transparent);box-shadow:0 0 14px #5aeb8a4d;animation:heroScan 1.6s ease-in-out .4s 1 both;pointer-events:none;z-index:5}.raj-fill{clip-path:inset(0 100% 0 0);transition:clip-path .5s cubic-bezier(.65,0,.35,1) 0s}.raj-wrap.visible .raj-fill{clip-path:inset(0 0 0 0);transition:clip-path 1.1s cubic-bezier(.65,0,.35,1) .7s}@media(prefers-reduced-motion:reduce){.raj-fill{animation:none;clip-path:inset(0 0 0 0)}.hero-rings{animation:none}.hero-rings-glow,.hero-ripple{display:none}}@keyframes ringsBreathe{0%,to{transform:scale(1);opacity:.12}50%{transform:scale(1.04);opacity:.2}}.hero-rings{animation:ringsBreathe 9s ease-in-out infinite;transform-origin:50% 50%}@keyframes ringsBreatheBright{0%,to{transform:scale(1);opacity:.55}50%{transform:scale(1.04);opacity:.75}}.hero-rings-bright{animation:ringsBreatheBright 9s ease-in-out infinite;transform-origin:50% 50%}.hero-rings-glow{opacity:0;transition:opacity .45s ease;-webkit-mask-image:radial-gradient(circle 240px at var(--rx, -999px) var(--ry, -999px),rgba(0,0,0,.95) 0%,rgba(0,0,0,.35) 55%,transparent 100%);mask-image:radial-gradient(circle 240px at var(--rx, -999px) var(--ry, -999px),rgba(0,0,0,.95) 0%,rgba(0,0,0,.35) 55%,transparent 100%)}@keyframes heroRipple{0%{transform:translate(-50%,-50%) scale(.12);opacity:.65}to{transform:translate(-50%,-50%) scale(1);opacity:0}}.hero-ripple{position:absolute;width:360px;height:245px;border:1px solid rgba(90,235,138,.65);border-radius:50%;pointer-events:none;animation:heroRipple 1.15s cubic-bezier(.22,.61,.36,1) forwards;will-change:transform,opacity}.lusaka-card{opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease;pointer-events:none}.lusaka-card.show{opacity:1;transform:translateY(0)}.lusaka-dot-core{transition:transform .3s ease,box-shadow .3s ease}.map-hover-zone:hover .lusaka-dot-core,.map-hover-zone.tapped .lusaka-dot-core{transform:scale(1.5);box-shadow:0 0 12px #5aeb8a,0 0 28px #5aeb8a99}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker-wrap{overflow:hidden;padding:14px 0}.ticker{display:flex;animation:ticker 36s linear infinite;width:max-content}.ticker-item{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:0 36px;white-space:nowrap}.ticker-item.hi{color:var(--accent)}a.film-card .film-title{transition:color .25s ease}a.film-card:hover .film-title{color:var(--accent)}a.film-card .film-arrow{display:inline-block;transition:transform .25s ease}a.film-card:hover .film-arrow{transform:translate(4px)}.pub-title{transition:color .25s ease}.pub-row:hover .pub-title{color:var(--accent)}.reveal-unfold{opacity:0;transform:translate(-36px);transition:opacity .6s ease,transform .6s ease,background-color .25s ease,padding-left .2s ease}.reveal-unfold.visible{opacity:1;transform:translate(0)}@media(prefers-reduced-motion:reduce){.reveal-unfold{opacity:1;transform:none;transition:background-color .25s ease,padding-left .2s ease}}@keyframes heroWordFill{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.hero-word-fill{position:absolute;inset:0;color:var(--fg);-webkit-text-stroke:0px transparent;pointer-events:none;animation:heroWordFill 1.1s cubic-bezier(.65,0,.35,1) .5s both}@media(prefers-reduced-motion:reduce){.hero-word-fill{animation:none;clip-path:inset(0 0 0 0)}}.policy-fill{position:absolute;inset:0;color:var(--fg);-webkit-text-stroke:0px transparent;clip-path:inset(0 100% 0 0);transition:clip-path .55s cubic-bezier(.65,0,.35,1) 0s;pointer-events:none}.reveal.visible .policy-fill,.about-h2-reveal.visible .policy-fill{clip-path:inset(0 0 0 0);transition:clip-path 1s cubic-bezier(.65,0,.35,1) .5s}@media(prefers-reduced-motion:reduce){.policy-fill{transition:none;clip-path:inset(0 0 0 0)}}a.achievement-card:hover{background-color:#5aeb8a0a;padding-left:8px}a.achievement-card .achievement-title{transition:color .25s ease}a.achievement-card:hover .achievement-title{color:var(--accent)}a.achievement-card .achievement-arrow{display:inline-block;transition:transform .25s ease}a.achievement-card:hover .achievement-arrow{transform:translate(4px)}
