From f59e4de79eafab5b229367f2bb6b0fb912daa3ac Mon Sep 17 00:00:00 2001 From: AliNaderiii <135335634+AliNaderiii@users.noreply.github.com> Date: Sat, 25 Jul 2026 12:13:23 +0000 Subject: [PATCH] Create premium AI research engineer portfolio Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com> --- assets/Ali-Naderi-CV.pdf | Bin 0 -> 614 bytes index.html | 9755 +------------------------------------- script.js | 35 + style.css | 2 + 4 files changed, 108 insertions(+), 9684 deletions(-) create mode 100644 assets/Ali-Naderi-CV.pdf create mode 100644 script.js create mode 100644 style.css diff --git a/assets/Ali-Naderi-CV.pdf b/assets/Ali-Naderi-CV.pdf new file mode 100644 index 0000000000000000000000000000000000000000..3502ccbb45462c4fd9ee4cadd31f7b3943ae71ac GIT binary patch literal 614 zcmZWnL2kk@5WM>pdqHXs)Nx2ckWi#TL9Gfcg4_@XlPtlAI+bH8TJ`Z=2Lw^^CHCyh z>`v^~>}lK<4*?V4LAl=b`#k;rL_U;O?#qJDWPugYOOdof_1d!iVKSTM+zJ z<<+v|_^XS+9sdc)*dPgNXFkPT$w7Hsdc=%`58a->;&ZIZgUPV!_koW~ZR@Xqz_}+0 zBnfrZmTW2rPuO`v$7nQkTD~}}txM+O2|kb&*6=g#ztE~oUZ!_;RvV2{Mv>0V&*6>+H;jH0^DYabFzke|fh*R7x(fP=h4Bq01f_MW t!SlP(4b}-7m^D)E(a=*_s2_xg&&!go{&WMZveMXk#vm4~)f&Bz*&ki9s_Fm$ literal 0 HcmV?d00001 diff --git a/index.html b/index.html index ee4a77d..27e2c65 100644 --- a/index.html +++ b/index.html @@ -1,9686 +1,73 @@ - - - - + + - - - - - Premium Asset Manager - Replit - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + Ali Naderi · AI Research Engineer + + + + - - - -
- - - -
Skip - to content -
-
-
-
-
    -
    -
    - - -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - Library -
    -
    -
    -
    -
    Apps - and outputs from your projects
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - Apps -
    -
    -
    -
    -
    -
    - Ali Naderi — AI Research Engineer -
    -
    -
    Ali - Naderi — AI Research EngineerWebsite -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    - Publish - a sharable version of your App, unaffected - by changes made in the project - editor -
    -
    Manage - custom domains for your published - projectView - traffic, request metrics, resource usage, and - analytics for your deployed AppFind, - fix, and monitor SEO and growth - opportunitiesStores - structured data such as user profiles, game scores, - and product catalogs.Let - users log in to your App using a prebuilt login - pageFind, - fix, and monitor security vulnerabilities and - privacy issuesHost - and save uploads like images, videos, and - documents -
    -
    -
    - -
    Connect - to Replit-native and external - servicesVersion - control for your AppStore - sensitive information (like API keys) securely in - your AppManage - skills that extend Agent capabilities -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    PublishingStarted - 2 minutes ago by Ali -
    -
    - -
    -
    -
    -
    - Provision - success - - -
    -
    - Security checks - success - - -
    -
    - Build - success - - -
    -
    - Bundle - success - - -
    -
    - Promote - current - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - Run - a deep security scanSecurity - Agent combines LLMs with leading - static analysis tools to deliver a - pen-test-grade security scan of your - project. -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - New tab - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
      -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - New tab - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
      -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - -
    13 - minutes ago -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    I’ll review the uploaded brief first, - then I’ll turn it into the right - product direction and start building - from it.

    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    The uploaded brief is present under a - slightly different filename than the - one shown in the message. I’m - locating the exact file now and will - use its contents as the source of - truth.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    I found the file; the displayed path - wrapped in the middle of its name, - so I’m reading it by directory match - rather than guessing the wrapped - text.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    I’ve reviewed the brief. I’m building - Ali Naderi’s portfolio as a - polished, single-page AI research - site with a dark-first visual - system, responsive layouts, animated - technical motifs, theme switching, - and working navigation/actions—not a - generic template.

    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    The portfolio app is scaffolded. I’m - handing the visual build to the - design pass now so it can shape the - full experience around the - research-focused brief, while - keeping the result responsive and - ready for a real deployment.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    The design build is in progress. Once - it finishes, I’ll restart the app, - check the live result at desktop and - mobile sizes, and fix any issues - before handing it over.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    The design pass is complete with the - full portfolio surface in place. I’m - starting the live app and running a - quick type check in parallel, then - I’ll inspect the rendered page at - both desktop and mobile widths.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    The app is running and type checking - cleanly. I’m doing the final visual - pass now—checking the live render on - desktop and mobile plus any - browser/workflow warnings—then I’ll - present the finished portfolio.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    The final visual check is clean at - desktop and mobile sizes, with no - browser errors and the live workflow - running normally. I’m presenting the - finished portfolio now and marking - it ready to publish.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - Ali - Naderi — - AI - Research - EngineerWebsite -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    The portfolio is complete and live in - the preview. I’m recording the - project’s durable visual direction - so future updates stay consistent, - then I’ll hand it over.

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    Built and presented Ali Naderi’s - premium AI research portfolio.

    -

    Included:

    -
      -
    • - Dark-first futuristic - research-lab aesthetic
    • -
    • - Responsive desktop/tablet/mobile - layouts
    • -
    • Hero - section with animated specialty - keywords
    • -
    • - AI-inspired neural/grid visual - treatment
    • -
    • - About, education, research - interests, skills, projects, - experience, and contact sections -
    • -
    • - Light/dark theme toggle
    • -
    • - Mobile navigation
    • -
    • - Smooth anchor navigation and - micro-interactions
    • -
    • - Reduced-motion accessibility - support
    • -
    • SEO - metadata
    • -
    • - GitHub Pages-friendly static - architecture
    • -
    -

    The app is running cleanly in preview - and is ready to publish. CV, GitHub, - LinkedIn, and project links are - currently placeholder-ready for - replacement with Ali’s real URLs. -

    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - Publish -
    -
    -
    -
    - Domain -
    - Available -
    -
    -
    -
    -
    - -
    -
    - .replit.app -
    -
    -
    -
    -
    - -
    -
    -
    -
    - Who - can access your - app -
    -
    - -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - -
    -
    -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - - - - - -
    -
    -
    -
    -
    -
    - - -
    -
    -
    - - - - - - - - + +
    + + +
    +
    +

    ALI NADERI · AI RESEARCH ENGINEER & DATA SCIENTIST

    AI RESEARCH ENGINEER M.S. MECHATRONICS

    +

    Engineering intelligence
    for the real world.

    +

    Building intelligent systems using deep learning, signal processing, and advanced machine learning techniques for real-world engineering applications.

    + +
    01 Based in Sri Lanka02 Open to research collaborations
    +
    +
    +
    AIINTELLIGENCE
    IN MOTION
    + +
    01 / 04Neural systems
    in motion
    +
    +
    +
    DEEP LEARNINGCOMPUTER VISIONPREDICTIVE MAINTENANCEAI FOR ENGINEERINGDATA SCIENCEDEEP LEARNING
    + +

    01 / THE RESEARCHER

    Curiosity, applied
    with precision.

    +

    I’m Ali Naderi, a Mechatronics Engineer specializing in Artificial Intelligence, Deep Learning, and intelligent condition monitoring systems.

    More about my journey

    My work sits at the intersection of data, machines, and meaningful outcomes. I translate complex signals and visual information into systems that help engineers understand, predict, and act.

    EducationMaster of Science
    in Mechatronics Engineering
    Research interestsMachine Learning · Deep Neural Networks
    Transformer Models · Signal Processing · Industrial AI · Computer Vision
    +
    + +

    02 / CAPABILITIES

    A stack built for
    hard problems.

    From raw vibration signals to robust deployed models, I work across the full research lifecycle.

    +
    01

    Programming

    PythonSQLMATLABGit
    +
    02

    Machine learning

    Scikit-learnXGBoostFeature EngineeringData Analysis
    + +
    04

    Computer vision

    OpenCVMedical ImagingClassificationSegmentation
    +
    05

    Signal processing

    FFTHHTWaveletsTime-Frequency Analysis
    +
    + +

    03 / SELECTED WORK

    Research that
    moves the needle.

    View GitHub
    +
    +
    VIBRATION / 01
    ◜╱╲╱╲╱╲╱╲◝
    01 — INDUSTRIAL AIRESEARCH PROJECT

    AI-Based Bearing
    Fault Diagnosis

    Deep learning framework for intelligent fault diagnosis of rotating machinery using vibration signals.

    CNNTransformerHHT FusionCWRU · IMS · Paderborn
    View case study
    +
    MEDICAL IMAGING / 02
    NEURAL
    VISION
    02 — COMPUTER VISION

    Brain Tumor Detection

    Deep learning models for automated brain tumor classification from medical imagery.

    CNNTransfer LearningOpenCV
    View case study
    +
    FORECASTING / 03
    +18.4%FORECAST SIGNAL
    03 — SCIENTIFIC AI

    Rice Production Forecasting

    Machine learning based agricultural forecasting through time-series modeling and feature engineering.

    Time SeriesRegressionFeature Engineering
    View case study
    +
    AGRICULTURE / 04
    04 — INTELLIGENT SYSTEMS

    Smart Farming AI

    Intelligent agriculture analytics using machine learning to support better decisions.

    MLAnalyticsPrediction
    View case study
    +
    VISION / 05
    05 — COMPUTER VISION

    Traffic Density Estimation

    Computer vision based traffic monitoring and density estimation system.

    OpenCVDetectionPython
    View case study
    +
    MEDICAL AI / 06
    06 — DEEP LEARNING

    Oral Cancer Detection

    AI-based medical image classification framework for early cancer detection.

    ClassificationDeep Learning
    View case study
    +
    +
    + +

    04 / RESEARCH & PUBLICATIONS

    Signals into
    understanding.

    AI-based condition monitoring and fault detection in rotating machinery.

    My research explores how scientific machine learning can make complex engineering systems more observable, explainable, and resilient.

    • 01 Scientific research experience
    • 02 Deep learning experiments
    • 03 Industrial AI applications
    • 04 Signal intelligence
    PUBLICATION PLACEHOLDER · 2024Research Paper Title

    Journal Name · DOI Link

    + +

    05 / KAGGLE

    Learning in
    public.

    K

    Experiments, competitions, and practical notebooks across machine learning, computer vision, and time series.

    Visit profile ↗
    KAGGLE PROFILE alinaderi1
    24Projects
    68Experiments
    12Datasets
    31Models
    + +
    + +

    07 / EXPERIENCE

    One continuous
    investigation.

    2020 — PRESENT

    AI Research & Deep Learning Projects

    Independent research and applied engineering across industrial AI, fault diagnosis, medical AI, and data science.

    Industrial AIFault DiagnosisMedical AIData Science
    + +

    08 / CONTACT

    Have a hard problem?
    Let’s talk.

    Open to research collaborations, engineering challenges, and conversations about intelligent systems.

    +
    +
    A·NALI NADERI

    Building intelligent solutions with Artificial Intelligence.

    © Ali Naderi
    + + \ No newline at end of file diff --git a/script.js b/script.js new file mode 100644 index 0000000..96f8eaf --- /dev/null +++ b/script.js @@ -0,0 +1,35 @@ +const root = document.documentElement; +const themeToggle = document.getElementById('themeToggle'); +const savedTheme = localStorage.getItem('ali-theme'); +if (savedTheme) root.dataset.theme = savedTheme; +function updateThemeIcon() { themeToggle.textContent = root.dataset.theme === 'light' ? '☾' : '☼'; } +updateThemeIcon(); +themeToggle.addEventListener('click', () => { + root.dataset.theme = root.dataset.theme === 'light' ? 'dark' : 'light'; + localStorage.setItem('ali-theme', root.dataset.theme); + updateThemeIcon(); +}); + +const menuBtn = document.getElementById('menuBtn'); +const nav = document.querySelector('.nav'); +menuBtn.addEventListener('click', () => nav.classList.toggle('open')); +document.querySelectorAll('.nav-links a').forEach(link => link.addEventListener('click', () => nav.classList.remove('open'))); + +const observer = new IntersectionObserver(entries => entries.forEach(entry => { + if (entry.isIntersecting) { entry.target.classList.add('visible'); observer.unobserve(entry.target); } +}), { threshold: .12 }); +document.querySelectorAll('.reveal').forEach(el => observer.observe(el)); + +window.addEventListener('scroll', () => { + const scrollable = document.documentElement.scrollHeight - window.innerHeight; + document.getElementById('progress').style.width = `${(window.scrollY / scrollable) * 100}%`; +}, { passive: true }); + +document.getElementById('contactForm').addEventListener('submit', event => { + event.preventDefault(); + const note = document.getElementById('formNote'); + note.textContent = 'Thanks — your message is ready to be connected.'; + event.target.reset(); +}); + +document.getElementById('year').textContent = new Date().getFullYear(); diff --git a/style.css b/style.css new file mode 100644 index 0000000..d17ab74 --- /dev/null +++ b/style.css @@ -0,0 +1,2 @@ +:root{--bg:#07111f;--bg2:#0b1728;--card:#101f32;--text:#edf4f4;--muted:#8fa2b4;--line:rgba(164,194,210,.16);--cyan:#82f1e1;--lime:#c6f26d;--accent:#96e3d9;--shadow:0 24px 80px rgba(0,0,0,.2)}[data-theme=light]{--bg:#f3f7f6;--bg2:#e8f0ee;--card:#fff;--text:#10202b;--muted:#60717b;--line:rgba(16,32,43,.14);--cyan:#087e75;--lime:#6d9f19;--accent:#087e75}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope, sans-serif;line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 75% 12%,rgba(34,146,145,.14),transparent 25%),radial-gradient(circle at 10% 60%,rgba(104,139,214,.08),transparent 22%);z-index:-2}.noise{position:fixed;inset:0;opacity:.035;pointer-events:none;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}.container{width:min(1160px,calc(100% - 64px));margin:auto}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--text);font-size:11px;font-weight:800;letter-spacing:.16em}.brand-mark{font-size:15px;letter-spacing:-.1em;border:1px solid var(--cyan);color:var(--cyan);padding:7px 8px;border-radius:50%;line-height:1}.brand-mark span{color:var(--lime)}.nav-links{display:flex;gap:35px}.nav.open .nav-links{display:flex}.nav a,.text-link{color:var(--muted);text-decoration:none;font-size:12px;font-weight:700;transition:.25s}.nav a:hover,.text-link:hover{color:var(--cyan)}.nav-actions{display:flex;gap:13px;align-items:center}.icon-btn,.menu-btn{border:1px solid var(--line);background:transparent;color:var(--text);width:35px;height:35px;border-radius:50%;cursor:pointer}.nav-cta{border:1px solid var(--line);padding:11px 16px;border-radius:4px}.nav-cta span,.btn span,.text-link span,.project-link span,.contact-links span{color:var(--lime);margin-left:9px}.menu-btn{display:none;border-radius:4px;font-size:17px}.progress{height:2px;background:var(--lime);position:fixed;top:0;left:0;z-index:30;width:0}.hero{min-height:650px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:40px;padding:96px 0 80px}.nameplate{font:11px 'DM Mono';letter-spacing:.14em;color:var(--text);margin:0 0 24px}.nameplate span{color:var(--lime);margin:0 6px}.eyebrow{font-family:'DM Mono',monospace;letter-spacing:.11em;font-size:10px;color:var(--cyan);margin:0 0 23px}.eyebrow i{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--lime);margin-right:9px;box-shadow:0 0 12px var(--lime)}.eyebrow span{color:var(--muted);margin:0 7px}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:700;line-height:1.08;letter-spacing:-.055em}h1{font-size:clamp(48px,6.3vw,84px);max-width:750px;margin-bottom:27px}h2{font-size:clamp(38px,4.4vw,60px);margin-bottom:22px}h1 em,h2 em{font-style:normal;color:var(--cyan)}.lede{max-width:530px;color:var(--muted);font-size:16px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:35px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;text-decoration:none;font:700 12px Manrope;letter-spacing:.03em;padding:14px 20px;cursor:pointer;transition:.25s}.btn-primary{background:var(--cyan);color:#07111f}.btn-primary:hover{background:var(--lime);transform:translateY(-2px)}.btn-outline{border-color:var(--line);color:var(--text)}.btn-outline:hover{border-color:var(--cyan)}.text-link{display:inline-block;border-bottom:1px solid var(--line);padding-bottom:5px}.hero-meta{display:flex;gap:27px;margin-top:70px;color:var(--muted);font:10px 'DM Mono';text-transform:uppercase}.hero-meta b{font-weight:400;color:var(--cyan);margin-right:8px}.hero-visual{height:480px;position:relative;display:grid;place-items:center;background:radial-gradient(circle,rgba(53,146,147,.2),transparent 48%)}.hero-visual:before{content:"";position:absolute;inset:10% 9%;border:1px solid var(--line);border-radius:50%;transform:rotate(-26deg);box-shadow:0 0 100px rgba(100,230,220,.08)}.orbital{position:absolute;border:1px solid rgba(130,241,225,.35);border-radius:50%;width:350px;height:150px;transform:rotate(32deg);animation:spin 18s linear infinite}.orbital-b{width:410px;height:200px;transform:rotate(-34deg);animation-direction:reverse;border-color:rgba(198,242,109,.25)}@keyframes spin{to{transform:rotate(392deg)}}.core{height:170px;width:170px;border-radius:50%;display:grid;place-items:center;text-align:center;background:linear-gradient(145deg,#153d4b,#102338);border:1px solid rgba(130,241,225,.6);box-shadow:0 0 60px rgba(72,209,195,.22),inset 0 0 30px rgba(130,241,225,.08);z-index:2}.core span{font-size:44px;font-weight:800;letter-spacing:-.1em;color:var(--cyan);line-height:.6}.core small{font:8px 'DM Mono';letter-spacing:.12em;color:var(--muted)}.node{position:absolute;width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 18px var(--lime);animation:float 4s ease-in-out infinite}.n1{top:18%;left:22%}.n2{top:33%;right:15%;animation-delay:1s}.n3{bottom:20%;left:21%;animation-delay:1.6s}.n4{bottom:13%;right:31%;animation-delay:2.3s}.n5{top:12%;right:36%;animation-delay:3s}@keyframes float{50%{transform:translateY(-14px);opacity:.55}}.visual-label{position:absolute;bottom:15px;left:7%;font:9px 'DM Mono';color:var(--muted);display:flex;gap:18px}.visual-label span{color:var(--lime)}.visual-label strong{font:11px Manrope;color:var(--text);line-height:1.4}.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;background:var(--bg2)}.ticker-inner{display:flex;width:max-content;gap:35px;align-items:center;animation:marquee 30s linear infinite;font:10px 'DM Mono';letter-spacing:.12em;color:var(--muted)}.ticker b{color:var(--lime);font-size:14px}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:140px 0}.section-head{margin-bottom:65px}.section-head h2{margin-bottom:0}.split{display:flex;align-items:end;justify-content:space-between;gap:30px}.section-note{max-width:300px;color:var(--muted);font-size:13px;margin:0 0 5px}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:100px}.big-copy{font-size:26px;line-height:1.45;letter-spacing:-.035em;max-width:590px}.about-intro .text-link{margin-top:26px}.about-details{color:var(--muted);font-size:14px}.detail-row{display:grid;grid-template-columns:130px 1fr;border-top:1px solid var(--line);padding:21px 0;margin-top:24px}.detail-row span{color:var(--cyan);font:10px 'DM Mono';text-transform:uppercase}.detail-row strong{color:var(--text);font-size:13px;font-weight:500}.skills-section{background:var(--bg2)}.skills-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.skill-card{grid-column:span 2;border:1px solid var(--line);padding:27px;min-height:190px;position:relative;background:rgba(255,255,255,.015);transition:.3s}.skill-card:hover,.repo:hover{border-color:var(--cyan);transform:translateY(-4px)}.skill-card.featured{grid-column:span 2;background:linear-gradient(135deg,rgba(130,241,225,.13),rgba(198,242,109,.04));border-color:rgba(130,241,225,.35)}.skill-num{font:10px 'DM Mono';color:var(--lime)}.skill-card h3{font-size:20px;letter-spacing:-.04em;margin:34px 0 20px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span,.project-tags span{border:1px solid var(--line);border-radius:2px;padding:5px 8px;color:var(--muted);font:9px 'DM Mono'}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.project-card{background:var(--card);border:1px solid var(--line);transition:.3s;overflow:hidden}.project-card:hover{border-color:rgba(130,241,225,.55);transform:translateY(-5px);box-shadow:var(--shadow)}.project-large{grid-column:span 2;display:grid;grid-template-columns:1.04fr .96fr}.project-art{height:285px;position:relative;overflow:hidden;background:#102331}.project-large .project-art{height:100%}.art-label{position:absolute;top:20px;left:21px;font:9px 'DM Mono';color:var(--cyan);letter-spacing:.1em;z-index:2}.art-bearing{background:radial-gradient(circle at 55% 50%,#20535c,#0c2030 60%)}.art-bearing:before,.art-bearing:after{content:"";position:absolute;border:1px solid rgba(130,241,225,.4);border-radius:50%;width:210px;height:210px;left:30%;top:15%;box-shadow:0 0 30px rgba(130,241,225,.1)}.art-bearing:after{width:280px;height:280px;left:21%;top:2%;border-color:rgba(198,242,109,.25)}.signal{position:absolute;inset:0;background:linear-gradient(160deg,transparent 48%,rgba(130,241,225,.55) 49%,transparent 50%);opacity:.5}.art-graph{position:absolute;bottom:25px;right:25px;color:var(--lime);font-size:24px;letter-spacing:5px}.art-medical{background:radial-gradient(circle at 50% 52%,#b3ddd2,#2a7181 15%,#10283b 38%,#0c182b 70%)}.art-medical b{position:absolute;right:24px;bottom:22px;font-size:21px;line-height:.95;color:rgba(237,244,244,.7);letter-spacing:-.06em}.scan{position:absolute;inset:18% 26%;border:1px solid rgba(198,242,109,.7);border-radius:50%;box-shadow:0 0 50px rgba(130,241,225,.35)}.art-agri{background:linear-gradient(160deg,#112e39,#173f38 50%,#0d211e)}.crop-lines,.farm-field{position:absolute;inset:50% 0 0;background:repeating-linear-gradient(165deg,transparent 0 14px,rgba(198,242,109,.35) 15px 16px)}.art-agri strong{position:absolute;right:25px;bottom:26px;font-size:31px;color:var(--lime)}.art-agri small{display:block;font:8px 'DM Mono';color:var(--muted)}.art-farm{background:linear-gradient(#102b43,#75b78e 65%,#234836)}.farm-sun{position:absolute;width:80px;height:80px;border-radius:50%;background:var(--lime);top:24%;right:24%;filter:blur(1px);box-shadow:0 0 45px var(--lime)}.farm-field{background:repeating-linear-gradient(165deg,transparent 0 19px,rgba(7,17,31,.55) 20px 21px);inset:55% -5% -10%}.art-traffic{background:#09131f}.traffic-grid{position:absolute;inset:17%;background:linear-gradient(90deg,transparent 48%,rgba(130,241,225,.55) 49% 51%,transparent 52%),linear-gradient(0deg,transparent 48%,rgba(198,242,109,.5) 49% 51%,transparent 52%);background-size:45px 45px;transform:perspective(180px) rotateX(45deg);box-shadow:0 0 40px rgba(130,241,225,.15)}.art-cancer{background:radial-gradient(circle at center,#d37d71 0 4%,#683d4b 5% 14%,#1c2638 15% 40%,#0b1726 65%)}.cancer-dot{position:absolute;inset:39%;border:1px solid var(--lime);border-radius:50%;box-shadow:0 0 30px var(--lime)}.project-body{padding:26px}.project-top{display:flex;justify-content:space-between;font:9px 'DM Mono';color:var(--cyan);letter-spacing:.08em}.status{color:var(--lime)}.project-body h3{font-size:25px;line-height:1.12;letter-spacing:-.05em;margin:25px 0 12px}.project-body p{font-size:13px;color:var(--muted);line-height:1.7;min-height:44px}.project-tags{display:flex;gap:6px;flex-wrap:wrap;margin:22px 0}.project-link{font-size:11px;color:var(--text);text-decoration:none;font-weight:700}.research-band{padding:120px 0;background:linear-gradient(120deg,#102c3c,#0b1828 65%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.research-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.research-lede{font-size:18px;max-width:340px;color:var(--muted);margin-top:50px}.research-content>p{color:var(--muted);font-size:14px;max-width:440px}.research-content ul{padding:0;margin:40px 0;list-style:none}.research-content li{border-top:1px solid var(--line);padding:13px 0;font-size:12px}.research-content li span{font:10px 'DM Mono';color:var(--lime);margin-right:22px}.paper{display:flex;gap:18px;border:1px solid var(--line);padding:21px;background:rgba(0,0,0,.12)}.paper-icon{font-size:19px;color:var(--lime)}.paper small{display:block;font:9px 'DM Mono';color:var(--cyan);margin-bottom:7px}.paper strong{display:block;font-size:15px}.paper p{font-size:11px;color:var(--muted);margin:5px 0 0}.paper a{color:var(--cyan)}.community-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:16px}.kaggle-card{background:linear-gradient(140deg,#173943,#101c2c);padding:40px;border:1px solid var(--line)}.kaggle-title{display:flex;align-items:center;justify-content:space-between}.kaggle-card h2{margin:5px 0 20px}.kaggle-card>p{color:var(--muted);font-size:13px;max-width:350px}.kaggle-mark{font-weight:800;font-size:54px;border:2px solid var(--cyan);color:var(--cyan);height:70px;width:70px;display:grid;place-items:center;border-radius:50%;line-height:1}.profile-handle{margin-top:45px;padding-top:17px;border-top:1px solid var(--line);font:9px 'DM Mono';color:var(--muted)}.profile-handle strong{display:block;color:var(--text);font:15px Manrope;margin-top:4px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.stats-grid div{background:var(--card);display:flex;flex-direction:column;justify-content:center;padding:35px}.stats-grid b{font-size:48px;letter-spacing:-.08em;color:var(--cyan)}.stats-grid span{font:10px 'DM Mono';color:var(--muted);text-transform:uppercase}.github-section{background:var(--bg2)}.repo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.repo{padding:25px;border:1px solid var(--line);color:var(--text);text-decoration:none;min-height:190px;transition:.3s}.repo-icon{font-size:22px;color:var(--lime);display:block;margin-bottom:30px}.repo strong{font-size:14px;display:block;line-height:1.3}.repo p{font-size:11px;color:var(--muted);min-height:34px}.repo small{font:9px 'DM Mono';color:var(--cyan)}.repo i{float:right;font-size:15px;font-style:normal}.timeline{position:relative;padding:20px 0 30px 170px}.timeline-line{position:absolute;left:140px;top:0;bottom:0;border-left:1px solid var(--line)}.timeline-item{position:relative;display:grid;grid-template-columns:1fr;max-width:680px}.timeline-year{font:10px 'DM Mono';color:var(--cyan);position:absolute;left:-170px;top:4px}.timeline-dot{position:absolute;left:-35px;top:3px;width:10px;height:10px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 5px var(--bg),0 0 20px var(--lime)}.timeline-item h3{font-size:22px;margin-bottom:12px}.timeline-item p{color:var(--muted);font-size:14px;max-width:550px}.contact{padding:120px 0;background:linear-gradient(120deg,#112f3e,#081421)}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:110px}.contact h2{font-size:clamp(42px,5vw,66px)}.contact> .container>div>p:not(.eyebrow){color:var(--muted);max-width:450px;font-size:14px}.contact-links{display:flex;flex-wrap:wrap;gap:21px;margin-top:37px}.contact-links a{color:var(--text);font-size:12px;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:7px}.contact-form{border-left:1px solid var(--line);padding-left:50px}.contact-form label{display:block;color:var(--muted);font:10px 'DM Mono';text-transform:uppercase;margin-bottom:20px}.contact-form input,.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);padding:11px 0;font:14px Manrope;outline:0;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--cyan)}.contact-form textarea{min-height:100px}.contact-form .btn{margin-top:10px}.form-note{font-size:11px;color:var(--lime);margin:15px 0 0}.footer{padding:30px 0;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px}.footer p{margin:0}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}@media(max-width:800px){.container{width:min(100% - 36px,600px)}.nav-links,.nav-cta{display:none}.nav.open .nav-links{display:flex;position:absolute;top:72px;left:0;right:0;padding:18px;background:var(--bg2);border:1px solid var(--line);flex-direction:column;gap:17px;z-index:10}.menu-btn{display:block}.hero{grid-template-columns:1fr;padding:70px 0 55px;min-height:auto}.hero-visual{height:390px;order:-1}.hero-copy{margin-top:10px}.hero-meta{margin-top:45px;flex-direction:column;gap:9px}.section{padding:90px 0}.about-grid,.research-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.split{align-items:start;flex-direction:column;gap:20px}.skills-grid{grid-template-columns:1fr 1fr}.skill-card,.skill-card.featured{grid-column:span 1}.project-large{grid-column:span 2}.repo-grid{grid-template-columns:1fr 1fr}.contact-form{border-left:0;padding-left:0}.footer{flex-direction:column;gap:17px;align-items:flex-start}.visual-label{left:3%}} +@media(max-width:520px){h1{font-size:47px}.hero-actions{gap:19px;flex-wrap:wrap}.hero-visual{height:315px}.core{width:130px;height:130px}.core span{font-size:34px}.orbital{width:260px;height:115px}.orbital-b{width:300px;height:150px}.skills-grid,.projects-grid,.repo-grid{grid-template-columns:1fr}.project-large{grid-column:span 1;display:block}.project-large .project-art{height:245px}.project-art{height:230px}.community-grid{grid-template-columns:1fr}.research-band{padding:85px 0}.timeline{padding-left:40px}.timeline-line{left:7px}.timeline-year{position:static;display:block;margin-bottom:23px}.timeline-dot{left:-38px}.stats-grid b{font-size:38px}.footer p{max-width:260px}.detail-row{grid-template-columns:105px 1fr}.nav{height:72px}}