*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--blue:#4af;--blue-dim:#44aaff26;--blue-glow:#4af6;--white:#fff;--white-60:#fff9;--white-40:#fff6;--white-20:#fff3;--white-08:#ffffff14;--bg:#000;--font-sans:"Space Grotesk", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);color:var(--white);font-family:var(--font-sans);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}#scene-canvas{z-index:0;width:100%;height:100%;position:fixed;top:0;left:0}.progress-bar{background:linear-gradient(90deg, var(--blue), var(--blue-glow));z-index:100;width:0%;height:2px;transition:width .1s linear;position:fixed;top:0;left:0}.nav{z-index:50;pointer-events:none;justify-content:space-between;align-items:center;padding:1.5rem 2.5rem;display:flex;position:fixed;top:0;left:0;right:0}.nav>*{pointer-events:auto}.nav-logo{font-family:var(--font-mono);color:var(--blue);letter-spacing:.15em;border:1px solid var(--blue-dim);padding:.4rem .7rem;font-size:.85rem;font-weight:500;transition:all .3s}.nav-logo:hover{border-color:var(--blue);box-shadow:0 0 20px #44aaff1a}.nav-links{gap:2rem;display:flex}.nav-links a{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--white-40);font-size:.7rem;transition:color .3s}.nav-links a:hover{color:var(--blue)}.mono-text{font-family:var(--font-mono)}.scroll-container{z-index:1;position:relative}.section{pointer-events:none;justify-content:center;align-items:center;min-height:100vh;padding:6rem 2rem;display:flex}.section>*{pointer-events:auto}.section-inner{width:100%;max-width:720px}.section .section-inner{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.section.visible .section-inner{opacity:1;transform:translateY(0)}.section-label{letter-spacing:.3em;text-transform:uppercase;color:var(--blue);opacity:.7;align-items:center;gap:1rem;margin-bottom:2rem;font-size:.65rem;display:flex}.section-label-index{font-weight:500}.section-label-line{background:var(--blue-dim);width:40px;height:1px}.section-title{letter-spacing:-.02em;color:var(--white);margin-bottom:2rem;font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.2}.section-title em{background:linear-gradient(135deg, var(--blue), #fff 80%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.section-body{color:var(--white-40);max-width:500px;font-size:1rem;line-height:1.9}.hero-section{text-align:center;flex-direction:column;position:relative}.hero-section .section-inner{opacity:0;animation:1.5s cubic-bezier(.16,1,.3,1) .3s forwards heroFadeIn}.hero-badge{border:1px solid var(--white-08);color:var(--white-40);letter-spacing:.15em;align-items:center;gap:.6rem;margin-bottom:2.5rem;padding:.4rem 1rem;font-size:.65rem;display:inline-flex}.hero-badge-dot{background:var(--blue);width:6px;height:6px;box-shadow:0 0 10px var(--blue-glow);border-radius:50%;animation:2s infinite dotPulse}.hero-name{flex-direction:column;gap:0;display:flex}.hero-name-line{letter-spacing:-.04em;background:linear-gradient(135deg, var(--blue) 0%, #fff 40%, var(--blue) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(4rem,12vw,9rem);font-weight:700;line-height:.95}.hero-subtitle{color:var(--blue);opacity:0;letter-spacing:.25em;text-transform:uppercase;min-height:1.5em;margin-top:1.5rem;font-size:.8rem}.hero-links{justify-content:center;gap:1.5rem;margin-top:2.5rem;display:flex}.btn{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.5rem;padding:.65rem 1.6rem;font-size:.72rem;transition:all .35s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden}.btn-outline{border:1px solid var(--blue-dim);color:var(--blue)}.btn-outline:hover{border-color:var(--blue);background:#44aaff0f;transform:translateY(-1px);box-shadow:0 0 30px #44aaff14}.btn-icon{font-size:.85rem}.scroll-cue{color:var(--white-20);letter-spacing:.3em;text-transform:uppercase;flex-direction:column;align-items:center;gap:.8rem;font-size:.6rem;animation:3s infinite scrollCueFade;display:flex;position:absolute;bottom:3rem;left:50%;transform:translate(-50%)}.scroll-cue-line{background:linear-gradient(to bottom, var(--blue-dim), transparent);width:1px;height:40px;animation:2s infinite scrollCueLine}.journey-path{align-items:center;gap:0;margin:2.5rem 0;display:flex}.journey-stop{flex-direction:column;align-items:center;gap:.8rem;display:flex}.journey-node{border:1.5px solid var(--blue-dim);background:0 0;border-radius:50%;width:10px;height:10px;transition:all .4s}.journey-stop.active .journey-node{background:var(--blue);border-color:var(--blue);box-shadow:0 0 15px var(--blue-glow)}.journey-info{flex-direction:column;align-items:center;gap:.2rem;display:flex}.journey-code{color:var(--white);letter-spacing:.1em;font-size:1.1rem;font-weight:500}.journey-place{color:var(--white-40);font-size:.8rem}.journey-detail{color:var(--blue);letter-spacing:.2em;text-transform:uppercase;opacity:.6;font-size:.55rem}.journey-connector{background:linear-gradient(90deg, var(--blue-dim), var(--blue-dim));flex:1;min-width:40px;height:1px;margin:0 1rem 4rem}.work-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.work-card{border:1px solid var(--white-08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff03;flex-direction:column;padding:1.5rem;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex}.work-card:hover{border-color:var(--blue-dim);background:#44aaff08;transform:translateY(-3px);box-shadow:0 12px 40px #0006}.work-card-header{justify-content:space-between;align-items:center;margin-bottom:.8rem;display:flex}.work-card-year{color:var(--blue);letter-spacing:.15em;opacity:.6;font-size:.6rem}.work-card-arrow{color:var(--white-20);font-size:1rem;transition:all .3s}.work-card:hover .work-card-arrow{color:var(--blue);transform:translate(2px,-2px)}.work-card-name{letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.work-card-desc{color:var(--white-40);flex:1;font-size:.78rem;line-height:1.7}.aspirations-list{flex-direction:column;gap:1.5rem;display:flex}.aspiration-item{border:1px solid var(--white-08);gap:1.5rem;padding:1.5rem;transition:all .3s;display:flex}.aspiration-item:hover{border-color:var(--blue-dim);background:#44aaff05}.aspiration-icon{color:var(--blue);opacity:.6;flex-shrink:0;margin-top:.1rem}.aspiration-item h3{letter-spacing:-.01em;margin-bottom:.4rem;font-size:1rem;font-weight:600}.aspiration-item p{color:var(--white-40);font-size:.82rem;line-height:1.7}.inline-link{color:var(--blue);font-family:var(--font-mono);letter-spacing:.05em;font-size:.75rem;transition:opacity .3s}.inline-link:hover{opacity:.7}.thankyou-section{text-align:center}.thankyou-inner{flex-direction:column;align-items:center;display:flex}.thankyou-title{letter-spacing:-.03em;background:linear-gradient(135deg, var(--blue), #fff 60%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(3rem,8vw,6rem);font-weight:700;line-height:1.1}.thankyou-sub{color:var(--white-40);margin-top:.5rem;font-size:1.1rem;font-weight:300}.thankyou-links{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:3rem;display:flex}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes dotPulse{0%,to{box-shadow:0 0 10px var(--blue-glow)}50%{box-shadow:0 0 20px var(--blue-glow), 0 0 40px #44aaff26}}@keyframes scrollCueFade{0%,to{opacity:.3}50%{opacity:.7}}@keyframes scrollCueLine{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}50.1%{transform-origin:bottom;transform:scaleY(1)}to{transform-origin:bottom;transform:scaleY(0)}}@media (width<=768px){.nav{padding:1rem 1.5rem}.nav-links{gap:1.2rem}.nav-links a{font-size:.6rem}.section{padding:4rem 1.5rem}.hero-name-line{font-size:clamp(3rem,15vw,5rem)}.hero-links{flex-direction:column;align-items:center;gap:1rem}.work-grid{grid-template-columns:1fr}.journey-path{flex-direction:column;gap:0}.journey-connector{width:1px;min-width:unset;background:linear-gradient(to bottom, var(--blue-dim), var(--blue-dim));height:30px;min-height:30px;margin:.5rem 0}.aspiration-item{flex-direction:column;gap:1rem}.thankyou-links{flex-direction:column;align-items:center}}@media (width<=480px){.hero-badge{font-size:.55rem}.section-title{font-size:1.8rem}.work-card{padding:1.2rem}}.page{justify-content:center;align-items:center;min-height:100vh;padding:8rem 2rem 4rem;display:flex}.page-inner{opacity:0;width:100%;max-width:640px;animation:.8s cubic-bezier(.16,1,.3,1) forwards pageIn}.page-label{letter-spacing:.3em;text-transform:uppercase;color:var(--blue);opacity:.7;margin-bottom:1.5rem;font-size:.65rem}.page-title{letter-spacing:-.03em;color:var(--white);margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:700;line-height:1.15}.page-title em{background:linear-gradient(135deg, var(--blue), #fff 80%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.page-body{color:var(--white-40);margin-bottom:3rem;font-size:1rem;line-height:1.8}.contact-form{flex-direction:column;gap:1.5rem;margin-bottom:3rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-label{letter-spacing:.2em;text-transform:uppercase;color:var(--white-40);font-size:.6rem}.form-input{border:1px solid var(--white-08);color:var(--white);font-family:var(--font-sans);background:#ffffff08;outline:none;padding:.85rem 1rem;font-size:.9rem;transition:all .3s}.form-input:focus{border-color:var(--blue-dim);background:#44aaff05;box-shadow:0 0 0 3px #44aaff0d}.form-input::placeholder{color:var(--white-20)}.form-textarea{resize:vertical;min-height:120px}.btn-primary{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;background:var(--blue);color:#000;cursor:pointer;border:none;justify-content:center;align-self:flex-start;align-items:center;gap:.6rem;padding:.8rem 2rem;font-size:.75rem;transition:all .35s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-primary:hover{background:#6bf;transform:translateY(-1px);box-shadow:0 0 30px #4af3}.btn-arrow{transition:transform .3s}.btn-primary:hover .btn-arrow{transform:translate(3px)}.contact-alt{border-top:1px solid var(--white-08);padding-top:2rem}.contact-alt>p{letter-spacing:.2em;text-transform:uppercase;color:var(--white-20);margin-bottom:1rem;font-size:.6rem}.contact-links{flex-direction:column;gap:.75rem;display:flex}.contact-link{border:1px solid var(--white-08);color:var(--white-60);align-items:center;gap:1.5rem;padding:1rem 1.2rem;font-size:.9rem;transition:all .3s;display:flex}.contact-link:hover{border-color:var(--blue-dim);color:var(--white);background:#44aaff05}.contact-link-label{letter-spacing:.2em;text-transform:uppercase;color:var(--blue);opacity:.6;min-width:50px;font-size:.55rem}.blog-grid{flex-direction:column;gap:1.5rem;display:flex}.blog-card{border:1px solid var(--white-08);padding:1.8rem;transition:all .4s cubic-bezier(.16,1,.3,1)}.blog-card:hover{border-color:var(--blue-dim);background:#44aaff05;transform:translateY(-2px)}.blog-card-meta{letter-spacing:.2em;text-transform:uppercase;color:var(--blue);opacity:.5;margin-bottom:.8rem;font-size:.6rem}.blog-card-title{letter-spacing:-.01em;color:var(--white);margin-bottom:.6rem;font-size:1.3rem;font-weight:600}.blog-card-excerpt{color:var(--white-40);margin-bottom:1rem;font-size:.82rem;line-height:1.7}.blog-card-link{letter-spacing:.1em;color:var(--blue);opacity:.6;font-size:.7rem;transition:opacity .3s}.blog-card:hover .blog-card-link{opacity:1}@keyframes pageIn{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.page{padding:6rem 1.5rem 3rem}.btn-primary{align-self:stretch}}
