01Principles
Six rules everything else follows.
01
One loud thing per screen.
Each screen gets one big element: the name, a section title or a number. Everything around it stays small and quiet.
02
A grid you can see.
Five columns, drawn as hairlines from top to bottom. Content snaps to them. Nothing floats.
03
Color means something.
Orange for emphasis and risk, green for good outcomes. Grays carry most of the reading.
04
The gradient means flow.
Orange to green appears only on things that move or progress: the hover card, trails, the active stage. Never in text.
05
Story first, number on hover.
Lists lead with the work. The metric waits in the card that follows your cursor.
06
Space is the thread, not the theme.
Jupiter, the satellite and the trajectory carry the personal touch. They never get in the way of reading.
02Color
Black, white, grays, and two signals.
Most of the site is black and white with a ten-step gray scale. Orange and green are reserved for emphasis. Their gradient is a surface, never a text color.
Core and accents
Dark value · light-theme inkGrays
Dark themePage
Raised
Card
Grid line
Strong line
Faint
Labels
Quiet text
Body
Headings
The gradient
Surfaces onlylinear-gradient(100deg, #FF5220 0%, #FF7A2E 28%, #F4B56A 50%, #63DBB3 72%, #12D69C 100%)
Use it for: the hover card on work items, trails and progress lines, the wash on an active stage or row, soft glows behind the footer and quotes.
Never for: text, icons, borders of ordinary boxes, or large flat fills. A grain texture sits on top of glows and cards so the gradient feels physical.
Contrast
WCAG ratios, checked| Use | Pair | Ratio | Rule |
|---|---|---|---|
| Headings | #FFFFFF on #000 | 21.0 | Any size |
| Body | #D4D4D4 on #000 | 14.2 | Any size |
| Labels | #8F8F8F on #000 | 6.5 | Small text OK |
| Faint | #6E6E6E on #000 | 4.1 | Large text or decoration only |
| Orange marks | #FF5220 on #000 | 6.5 | Small text OK |
| Green results | #12D69C on #000 | 11.1 | Any size |
| Text on orange | #000 on #FF5220 | 6.5 | Always black, never white (3.2) |
| Light theme labels | #6E6E6E on #FFF | 5.1 | Small text OK |
| Light theme orange | #C93A0E on #FFF | 5.1 | Small text OK |
| Light theme green | #087A5C on #FFF | 5.3 | Small text OK |
03Typography
Helvetica to look at, Geist to read.
Helvetica Neue for anything you look at: names, titles, numbers. Geist for anything you read at length. Geist Mono for labels and data. Bold is rare: only the hero name and the footer line.
Display · Helvetica Neue
Aa
400 for titles and numbers, 500 for item names, 700 only for the hero. Falls back to Inter Tight off Apple devices.
Body · Geist
Aa
400 for reading. Comfortable at 17px with 1.6 line height, 62 characters per line at most.
Labels · Geist Mono
Aa
Uppercase, 12px, +8% tracking. Section indexes, captions, data, timestamps.
Scale
Sizes are fluid between phone and 1440 px−5.5% · line 0.86
Natesh Aravind S
−4.5% · line 1.0
Selected work. Sorted by hat.
−3.5% · line 1.08
Ranking AI errors by clinical risk.
−2% · line 1.15
Agent Flow Blueprint
−1.5% · line 1.3
I’m Natesh, a design-driven product builder. Engineer by training, designer by method, builder by instinct.
line 1.6 · 62ch max
Doctors correct the AI’s case sheets every day. Each correction becomes a diagnosis: what broke, in which layer, and which team fixes it.
line 1.5
Shared at a public-safe level. Vendor names, internal data and patient examples stay out.
−4.5% · tabular figures
~70%
+8% · uppercase
(03)Selected work
04Grid and space
Five columns, drawn on the page.
The grid lines run from the header to the footer, behind everything. Column one holds indexes, labels and navigation. Columns two to five hold the content.
Spacing scale
Multiples of 4Breakpoints
Desktop · 1000 px and up
Five columns. Labels in column one, content in two to five.
Tablet · 640 to 999 px
Two columns of lines. Labels move above titles. Lists keep two columns.
Phone · under 640 px
One content column, 16 px gutters, two faint lines. Metrics show inline because there is no hover.
05Components
The parts, live.
Every component here is the real thing: hover, click and tab through them.
Hero name and identity
Typed, held, deletedHey explorer, you’ve reached
Natesh Aravind S
Natesh is an IIT-educated researcher and innovator, an NID-trained systems thinker and service designer, a founding product hire building agentic AI for healthcare, and an astrophysics lover, storyteller and brand builder.
Engineer by training, designer by method, builder by instinct, connecting unconventional dots across engineering, design and business.
Buttons and links
Square, Helvetica 500Labels, chips and tags
Section header
(03)Selected work
Selected work.
Pranik.ai, Mondee’s AI health-tech venture. Two agentic apps, 0 to 1. Sorted by the hat I wore.
Work list with the hover card
Hover a rowHat 02
Product leadership
Set up the product function, then took two agentic apps from 0 to 1.
3 case studies
- 02Taking agentic AI healthcare from 0 to 1, for doctors and for patients.First product person. Two squads, two apps, 20+ hospitals and camps.2025–now→
- 03Agent Flow Blueprint: a spec format for products that branch on conversation.A living spec for agents that branch on conversation, built in Claude Code.2026→
- 04Teaching an AI twin to practice like its doctor.How any doctor can train their AI twin without our team in the room.2026→
Reading highlight
For boxes you read, not click01Pranik.ai
Rank errors by harm, not by count.
Hover me. The box lifts one quiet step and its gray text steps up, so you know where you are reading.
02Pranik.ai
Kill things on evidence.
No arrow, no orange, no movement, and the cursor doesn’t lock on. Links keep the orange-to-green wash and the arrow.
Case study header
Metrics in a white blockCase 01Pranik.ai · AI evals and clinical safety
Ranking AI errors by clinical risk.
The 60-second version
Download PDF ↓
Reading mode and callouts
Trajectory stages
Done · active · upcomingTata Elxsi
R&D Engineer, EV Centre of Excellence
PassedNID Ahmedabad
M.Des, Strategic Design Management
● NowXcentro
Founding team, brand and product
AheadPending launch
Click oneFooter
Always on black, centeredUp for a stargazing session?Or already convinced we can build something interesting together?
06Illustrations
Figures drawn like a spec sheet.
Case-study figures are drawn in code with the same grid, type and color rules as the page. All examples are synthetic or illustrative.
Two line weights
1 px gray for structure, 1.5 px ink for what matters.
Square corners
No rounded boxes inside figures.
Which layer broke?
Mono labels, Helvetica titles
Uppercase mono for labels, Helvetica for anything you read.
Color has meaning
Orange is risk or the problem, green the outcome, ink is structure, gray is context.
The gradient means flow
Trails, progress, loops. Never a box fill.
Inverted block
An inverted block is focus
The current step or key result flips to the inverse color.
Every doctor edit travels the loop. Step 04 is where the fix finds its owner.
01 · Edit
Doctor corrects the AI case sheet
One edit is the counting unit.
02 · Diff
Expected vs captured
Edit-diff rules compare versions.
03 · Classify
One edit, one or more error types
Rules pre-classify at scale.
04 · Root cause
Which layer broke?
Prompt, context, memory, validation, RAG, model or UX.
05 · Triage
Clinical risk first
Safety failures jump the queue.
06 · Fix + verify
Ship, then check blind
Doctors confirm without being told.
FIG.The full set: evals loop, risk matrix, layered defense, eval gates, before and after bars, decision flow, metric tree, options compared, service blueprint, two-site curves and the trajectory map.
07Motion
Calm, quick, and only with a reason.
Motion explains a change or rewards an action. Nothing loops in the reading flow. Jupiter’s winds, its moons and the night sky are the only ambient motion, and all of them pause when off screen.
| Token | Value | Used for |
|---|---|---|
| Ease | cubic-bezier(.2, .7, .1, 1) | Everything. Fast start, soft landing. |
| Micro | 150 ms | Press states, toggles. |
| Hover | 300 ms | Row washes, arrows nudging 4 px, underlines drawing. |
| Reveal | 600 ms | Sections fade in and rise 16 px, once. Content is readable before it animates. |
| Draw-on | 900 ms | Figure lines and the trajectory trail draw as they enter view. |
| Follow | lerp 0.18 | The hover card trailing the cursor. |
| Cursor | lerp 0.32 · jet fade 300 ms | The satellite and its white jet. |
| Scrub | scroll-linked | The trajectory: travel 65% of each stage, dwell 35%. |
| Type | 42 ms · hold 2.6 s · delete 20 ms | Hero identities, typed like a console. |
| Read | 350 ms | The reading highlight fading in on a box. |
| Orbit | one place every 38 s | Moons on both rings; the rings take turns fading a moon. |
| Sunrise | 2.8 s up · 2.2 s down · ease in-out | The sun rising over Jupiter when light mode turns on, and setting when it turns off. |
08Cursor
Juno, flat.
A small Juno satellite replaces the pointer on mouse and trackpad. Test it in the pad below, in Edge, Chrome and Safari.
Move here · hover the buttons · click
09Marks
A planet, a satellite, three arrows.
Planet mark
Header mark and favicon. A banded planet with a soft glow.
Juno
The cursor, and the craft on the trajectory map.
Arrows
Inside the site, outside the site, a download.
Lock-on corners
Focus and hover target, borrowed from viewfinders.
10Voice
Plain, specific, first person.
Write the way you would explain it to a sharp friend: what happened, what you decided, and how you knew it worked.
- 01US spelling: color, organization, behavior.
- 02Very few em dashes. Use a period, a colon or a comma instead.
- 03One figure, not a range: “~70%”, never “60 to 80%”. Numbers always carry their context.
- 04No self-ratings or skill bars. Show the work instead.
- 05“Built with AI coding tools” or “built in Claude Code”. Never “vibe coded”.
- 06Public-safe: no vendor names, patient data, dashboards or private details.
- 07Case titles state the outcome or the decision, in sentence case.
- 08Space puns live in small places: labels, pending-launch notes, the footer.
Instead of
Write
Drug-name errors dropped 60–80%.
Drug-name errors fell ~70%, to about 10% of mentions.
Expert in AI evals (9/10).
Led the design of the evals loop and its rubric.
Vibe coded an internal tool.
Built the internal tool with AI coding tools.
Leveraged synergies to optimise the colour system.
Rebuilt the spec format so the whole team works from one page.
11Accessibility
Good for everyone, by default.
- 01Body text at 14:1 or better; labels at 4.5:1 or better. Faint gray only for large text or decoration.
- 02Every interactive element shows a 2 px orange focus ring, offset 3 px.
- 03Anything shown on hover is also shown on focus and on touch, inline.
- 04Reduced motion turns off reveals, draw-ons, winds, the jet and the custom cursor.
- 05The custom cursor never hides the system one until it is visible itself.
- 06Figures have a text alternative: a caption that states the takeaway.
- 07Dark on every visit; light mode is one tap away (sun and moon) and lasts for that visit.
12Tokens
Copy-ready variables.
/* Flight Manual v3.2 · dark is the default */
:root {
--bg: #000000; --raised: #0a0a0a; --card: #121212;
--line: #262626; --line-strong: #3a3a3a;
--ink: #ffffff; --body: #d4d4d4; --quiet: #b3b3b3; --muted: #8f8f8f; --faint: #6e6e6e;
--or: #ff5220; --gr: #12d69c; --on-fill: #000000;
--read: rgba(255, 255, 255, .055);
--grad: linear-gradient(100deg, #ff5220 0%, #ff7a2e 28%, #f4b56a 50%, #63dbb3 72%, #12d69c 100%);
--font-swiss: 'Helvetica Neue', Helvetica, 'Inter Tight', 'Inter Tight Variable', Arial, sans-serif;
--font-body: 'Geist', system-ui, sans-serif;
--font-mono: 'Geist Mono', 'Geist Mono Variable', ui-monospace, monospace;
--space-1: 4px; --space-2: 8px; --space-3: 16px; --space-4: 24px;
--space-5: 48px; --space-6: 96px; --space-7: 160px;
--radius: 0; --radius-card: 14px;
--ease: cubic-bezier(.2, .7, .1, 1);
--t-micro: 150ms; --t-hover: 300ms; --t-reveal: 600ms; --t-draw: 900ms;
}
:root[data-theme="light"] {
--bg: #ffffff; --raised: #f7f7f7; --card: #f2f2f2;
--line: #e5e5e5; --line-strong: #cfcfcf;
--ink: #000000; --body: #262626; --quiet: #444444; --muted: #6e6e6e; --faint: #9a9a9a;
--or: #c93a0e; --gr: #087a5c;
--read: rgba(0, 0, 0, .035);
}
About this site. Built with Astro and AI coding tools (Claude Code). Type: Helvetica Neue, with Inter Tight where Helvetica isn’t installed; Geist for reading; Geist Mono for labels. Every figure is drawn in code; there is no stock art. Flight Manual v3.2.