# Ridgify brand kit

Version 1. Everything in this folder is generated or hand written from one source: the mark geometry and tokens. Change them in `scripts/build_logos.py` and `tokens/ridgify-tokens.json`, then rebuild.

## The idea

Ridgify is a field instrument for people who walk up a ridge and fly down it. It records the whole day, tells the ground part from the air part, and keeps the watch and the phone useful without a signal.

The mark shows exactly that: a ridge line, and three GPS fixes lifting off the summit. The last fix is amber. It is you, in the air.

Personality: calm, precise, outdoorsy. Think a well made instrument, not a fitness app. It shows facts with their age and source, and says so when it does not know.

## Logo

| File | Use |
| --- | --- |
| `logo/ridgify-lockup.svg` | Default. Mark and wordmark side by side, on paper or white |
| `logo/ridgify-lockup-reverse.svg` | On Ridge green, Ink or photos |
| `logo/ridgify-stacked.svg` | Square spaces, posters, social profile art |
| `logo/ridgify-mark.svg` | Mark alone, when the name is already visible |
| `logo/ridgify-mark-small.svg` | Heavier mark for 16 to 48 px, favicon and watch |
| `logo/ridgify-app-icon.svg` | App icon source, 1024 px, no rounded corners |
| `logo/*-ink.svg`, `*-paper.svg` | One colour versions for print, engraving, the watch |

Parts. The **ridge** is one round-capped line with two peaks. The three **fixes** rise from the higher peak and grow as they climb. The last fix is **Thermal** amber and is the only amber in the logo. The wordmark is "ridgify" in lower case, Bricolage Grotesque Bold, converted to outlines.

Clear space. Leave the diameter of the amber fix (call it 1u) on every side. Nothing else enters that area.

Minimum size. Lockup: 96 px wide on screen, 25 mm in print. Mark: 16 px, using the small variant below 48 px.

Do not: recolour the amber fix, stretch or rotate the logo, add shadows or outlines, change the font, put the colour logo on a busy photo, redraw the ridge with more peaks, or use amber for the ridge.

## Colour

| Token | Hex | Use |
| --- | --- | --- |
| Ink | `#0F1D1A` | Text on light, dark surfaces |
| Ridge | `#1C5B4B` | Primary brand colour, buttons, app icon |
| Ridge Deep | `#154436` | Icon gradient end, pressed states, dark sections |
| Paper | `#F5F2EA` | Default background, text on dark |
| Mist | `#DCE8E1` | Soft panels, selected rows |
| Line | `#D9D5C8` | Hairlines on paper |
| Stone | `#5A665F` | Secondary text on paper |
| Thermal | `#F4A52E` | The logo fix, live data, highlights. Graphics only |
| Thermal Text | `#8F5200` | Amber text on light backgrounds |
| Sky | `#296C99` | Wind data |
| Signal | `#C23B2B` | Airspace warnings, errors |

Ratio targets for text: Ink, Ridge, Stone and Thermal Text on Paper reach 15.5, 7.1, 5.4 and 5.6 to 1. Paper on Ridge reaches 7.1 to 1. Thermal on Paper reaches only 1.8 to 1, so amber is never used for text on light backgrounds. Thermal on Ridge reaches 3.9 to 1 and on Ink 8.5 to 1: use it for large numbers, dots and rules, not small copy.

Data colours stay the same everywhere: track is Ridge, lift is Thermal, wind is Sky, airspace is Signal.

Ratio of use: about 70 percent Paper or Ink, 25 percent Ridge, 5 percent Thermal.

## Type

- **Bricolage Grotesque** for the wordmark, headlines and big numbers. Weights 600 to 800. Tight tracking, about minus 2 percent on large sizes.
- **DM Sans** for body copy and interface text. Weights 400, 500, 700.
- Both are SIL Open Font License 1.1. The website hosts the files itself, with no third party font requests.
- Native apps use the system font (SF Pro on iPhone, the device font on Garmin). The logo carries the brand there.

## App icon

Ridge gradient background (`#21705C` to `#154436`), paper ridge, paper fixes, amber last fix, with three faint ridge layers along the bottom edge. iOS rounds the corners, so the artwork is full bleed with no transparency.

## Watch

The Instinct 2X screen is monochrome and has a round window at the top right. The mark is drawn with a few lines and dots so it costs almost no memory. Layout rules:

- Keep text left of x = 108 in the top area. The round window belongs to one number and its label.
- Use icons for labels where a single glyph is clear: clock, climb, speed, altitude, battery, phone, GPS, gust, direction. Spell the label out when it names something specific, such as an airspace.
- Show one primary number per page, then a two cell grid, then a footer with the phone and battery icons.
- The launcher icon is `raster/watch-icon-62.png`, black on transparent.

## Motifs

- **Ridge layers**: soft overlapping hill silhouettes at 5 to 7 percent white on Ridge, used on the icon, the website hero and the App Store art.
- **Fixes**: a short trail of dots that grows toward an amber end. Use it as a loader, a divider or a bullet trail. Keep it to three dots.

## Voice

Plain, specific and honest. Say what the app does and how fresh the data is.

| Say | Avoid |
| --- | --- |
| "Wind from the nearest station, 4 minutes old" | "Real time weather intelligence" |
| "Airspace is advisory. Check official sources before you fly." | "Never miss a restricted zone" |
| "Trail and flight are saved as separate activities" | "AI powered activity detection" |
| "Works with your Garmin Instinct 2X" | "Garmin's best app for pilots" |

Write units next to numbers (km/h, m, m/s). Use sentence case. No exclamation marks. Do not claim safety, accuracy or approval that the app cannot prove.

## Trademarks

Garmin, Instinct and Connect IQ are trademarks of Garmin Ltd. Ridgify is independent and not affiliated with or endorsed by Garmin. Say "for Garmin Instinct 2X" in descriptive text and never use Garmin's logos. PureTrack, XContest, Windy and MetNet are named only as data sources or integrations.

## Files

```
brand/
  BRANDKIT.md            this document
  brand-board.png        one page overview
  logo/                  SVG logos, generated
  raster/                PNG exports, generated
  tokens/                colours and fonts as JSON and CSS
  scripts/build_logos.py     SVG logos from geometry and the font
  scripts/export_rasters.py  PNG exports with headless Chrome
```

Rebuild:

```
pip install fonttools uharfbuzz
python3 brand/scripts/build_logos.py --font BricolageGrotesque.ttf
python3 brand/scripts/export_rasters.py
```

The font file comes from `github.com/google/fonts/ofl/bricolagegrotesque`.
