---
version: alpha
name: Shortify
description: "Dark monochrome interface measured from shortify.framer.ai: Bebas Neue type with Inter, tonal surfaces and 99px corners."
colors:
  background: "#0A0A0A"
  surface: "#0A0A0A"
  on-surface: "#FFFFFF"
  on-background: "#FFFFFF"
  on-surface-variant: "#B6B6B6"
  on-surface-muted: "#9D9D9D"
  surface-container-low: "#000000"
  outline: "#FFFFFF33"
  outline-variant: "#FFFFFF26"
  primary: "#FFFFFF"
  on-primary: "#000000"
  secondary: "#F8CB58"
typography:
  headline-display:
    fontFamily: Bebas Neue
    fontSize: 100px
    fontWeight: 400
    lineHeight: 1
    letterSpacing: -0.02em
  headline-lg:
    fontFamily: Bebas Neue
    fontSize: 76px
    fontWeight: 400
    lineHeight: 1.4
  headline-md:
    fontFamily: Bebas Neue
    fontSize: 60px
    fontWeight: 400
    lineHeight: 1
    letterSpacing: -0.01em
  headline-sm:
    fontFamily: Bebas Neue
    fontSize: 40px
    fontWeight: 400
    lineHeight: 1
    letterSpacing: -0.01em
  title-lg:
    fontFamily: Bebas Neue
    fontSize: 30px
    fontWeight: 400
    lineHeight: 1
    letterSpacing: -0.01em
  body-md:
    fontFamily: Inter
    fontSize: 16px
    fontWeight: 400
    lineHeight: 1.5
    letterSpacing: -0.02em
  body-lg:
    fontFamily: Inter
    fontSize: 18px
    fontWeight: 400
    lineHeight: 1.5
    letterSpacing: -0.02em
  body-sm:
    fontFamily: Inter
    fontSize: 14px
    fontWeight: 400
    lineHeight: 1.5
  caption:
    fontFamily: Inter
    fontSize: 8px
    fontWeight: 400
    lineHeight: 1.2
    letterSpacing: 0.03em
  label-lg:
    fontFamily: Inter
    fontSize: 16px
    fontWeight: 500
    lineHeight: 1.5
    letterSpacing: -0.02em
  label-md:
    fontFamily: Inter
    fontSize: 14px
    fontWeight: 500
    lineHeight: 1.5
  label-sm:
    fontFamily: sans-serif
    fontSize: 12px
    fontWeight: 400
  headline-display-mobile:
    fontFamily: Bebas Neue
    fontSize: 50px
    fontWeight: 400
    lineHeight: 1
    letterSpacing: -0.02em
  headline-md-mobile:
    fontFamily: Bebas Neue
    fontSize: 40px
    fontWeight: 400
    lineHeight: 1
    letterSpacing: -0.01em
  title-lg-mobile:
    fontFamily: Bebas Neue
    fontSize: 25px
    fontWeight: 400
    lineHeight: 1
    letterSpacing: -0.01em
rounded:
  sm: 8px
  md: 12px
  lg: 40px
  xl: 99px
spacing:
  sm: 8px
  md: 10px
  lg: 20px
  xl: 60px
  gutter: 10px
  section: 80px
  margin: 60px
components:
  button-primary:
    backgroundColor: "{colors.primary}"
    textColor: "{colors.on-primary}"
    typography: "{typography.label-sm}"
    rounded: "{rounded.xl}"
    padding: 16px
    height: 45px
  button-secondary:
    textColor: "{colors.on-surface}"
    typography: "{typography.label-sm}"
    rounded: "{rounded.xl}"
    padding: 16px
    height: 48px
  button-tertiary:
    textColor: "{colors.on-surface}"
    typography: "{typography.label-sm}"
    rounded: "{rounded.xl}"
    padding: 16px
    height: 48px
  card:
    textColor: "{colors.on-primary}"
    typography: "{typography.label-sm}"
    rounded: "{rounded.md}"
    padding: 20px
  link:
    textColor: "{colors.on-surface-muted}"
---

# Shortify Design System

## Overview

Shortify describes itself as: “Scale your brand with Shortify, the premium short-form video editing agency. We deliver consistent, high-quality Reels, TikToks, and Shorts so you can just record and grow.” The interface is dark, built on **Near Black (#0A0A0A)** with **White (#FFFFFF)** text and almost no color: actions are carried by contrast, not hue.

Type is set in **Bebas Neue** and **Inter**. Headlines run large with tight negative tracking; body text is 16px. Depth comes from soft drop shadows. Corners are mostly 99px.

Measured from [shortify.framer.ai](https://shortify.framer.ai/) on November 6, 2026 at 1440×900 and 390×844 from 310 rendered elements. Values are computed styles from the live page, not the original source files.

## Colors

The palette has 10 roles, plus gradient stops #E46EFF, #0091FF, #B4DAAB, #006FFF.

- **Near Black (#0A0A0A):** Page background, seen 7 times. Token `background`.
- **White (#FFFFFF):** Primary text and headings, seen 124 times. Token `on-surface`.
- **Gray (#B6B6B6):** Secondary text, seen 9 times. Token `on-surface-variant`.
- **Gray (#9D9D9D):** Muted text and metadata, seen 13 times. Token `on-surface-muted`.
- **Near Black (#000000):** Raised areas one step from the page, seen 3 times. Token `surface-container-low`.
- **White 20% (#FFFFFF33):** Borders and dividers, seen 7 times. Token `outline`.
- **White 15% (#FFFFFF26):** Secondary dividers, seen 6 times. Token `outline-variant`.
- **White (#FFFFFF):** Primary buttons and calls to action, seen 151 times. Token `primary`.
- **Near Black (#000000):** Text and icons on primary. Token `on-primary`.
- **Amber (#F8CB58):** Accent, seen 2 times. Token `secondary`.

## Typography

**Bebas Neue**, **Inter** and **sans-serif** share the interface. Fallback stack: `Bebas Neue, Bebas Neue Placeholder, sans-serif`. Other loaded fonts: Rajdhani, Noto Sans.

- **headline-display:** Bebas Neue 100px at weight 400, line height 1, tracking -0.02em (50px on mobile). Page title (h1).
- **headline-lg:** Bebas Neue 76px at weight 400, line height 1.4. Section headings (h2).
- **headline-md:** Bebas Neue 60px at weight 400, line height 1, tracking -0.01em (40px on mobile). Sub-section headings.
- **headline-sm:** Bebas Neue 40px at weight 400, line height 1, tracking -0.01em. Card and feature titles.
- **title-lg:** Bebas Neue 30px at weight 400, line height 1, tracking -0.01em (25px on mobile). Small titles.
- **body-md:** Inter 16px at weight 400, line height 1.5, tracking -0.02em. Body text.
- **body-lg:** Inter 18px at weight 400, line height 1.5, tracking -0.02em. Lead paragraphs.
- **body-sm:** Inter 14px at weight 400, line height 1.5. Secondary and small text.
- **caption:** Inter 8px at weight 400, line height 1.2, tracking 0.03em. Captions and fine print.
- **label-lg:** Inter 16px at weight 500, line height 1.5, tracking -0.02em. Large buttons and tabs.
- **label-md:** Inter 14px at weight 500, line height 1.5. Buttons, navigation and labels.
- **label-sm:** sans-serif 12px at weight 400. Small labels and badges.

## Layout

Spacing does not follow a strict grid: 69% of measured values are multiples of 4px, so match the measured steps rather than rounding to a grid.

- **Scale:** sm 8px, md 10px, lg 20px, xl 60px.
- **Sections:** 80px vertical padding between major sections.
- **Gaps:** 10px is the most common gap in flex and grid layouts.
- **Page margin:** 60px on each side of full-width sections.
- **Breakpoints:** 679px, 679.98px, 680px, 809px, 810px, 1199px, 1199.98px.

## Elevation & Depth

Raised elements use soft drop shadows. The most used recipes:

- `rgba(79, 205, 255, 0.15) 0px 0px 25px 0px, rgba(182, 79, 255, 0.15) -15px 0px 25px 0px, rgba(144, 193, 190, 0.15) 15px 5px 25px 0px`
- `rgba(0, 0, 0, 0.1) 0px 0.602187px 1.08394px -0.666667px, rgba(0, 0, 0, 0.11) 0px 2.28853px 4.11936px -1.33333px, rgba(0, 0, 0, 0.15) 0px 10px 18px -2px, rgba(204, 156, 255, 0) -3px 0px 10px 0px inset, rgba(56, 116, 255, 0) 3px 0px 10px 0px inset`
- `rgba(0, 0, 0, 0.1) 0px -0.602187px 1.08394px -0.666667px, rgba(0, 0, 0, 0.11) 0px -2.28853px 4.11936px -1.33333px, rgba(0, 0, 0, 0.15) 0px -10px 18px -2px, rgba(0, 0, 0, 0.2) 0px -4px 25px 0px`

## Shapes

Most elements use 99px corners. Measured radii, most used first:

- **xl (99px):** 32 elements.
- **md (12px):** 28 elements.
- **sm (8px):** 12 elements.
- **lg (40px):** 4 elements.

## Components

Measured from the rendered page. Token values reference the tokens above.

- **button-primary (“Book a call Book a call”):** #FFFFFF fill, #000000 text, 12px/400, 99px radius, padding 16px.
- **button-secondary (“Book a call Book a call”):** transparent fill, #FFFFFF text, 12px/400, 99px radius, padding 16px.
- **button-tertiary (“How it Works How it Works”):** transparent fill, #FFFFFF text, 12px/400, 99px radius, padding 16px.
- **card:** transparent fill, #000000 text, 12px/400, 12px radius, padding 20px, shadow `rgba(79, 205, 255, 0.15) 0px 0px 25px 0px, rgba(182, 79, 255, 0.15) -15px 0px 25px 0px, rgba(144, 193, 190, 0.15) 15px 5px 25px 0px`.
- **link:** transparent fill, #FFFFFF99 text, padding 0px.

## Do's and Don'ts

- Do use #0A0A0A for the page and lift surfaces in small steps: #000000.
- Do keep text in 3 levels: #FFFFFF, #B6B6B6, #9D9D9D.
- Do let contrast carry emphasis; primary actions use #FFFFFF on #0A0A0A.
- Do set headlines in Bebas Neue with tight tracking (-0.02em).
- Do reuse the measured spacing steps (8px, 10px, 20px).
- Do use 99px corners on most elements; larger surfaces also use 12px, 8px and 40px.
- Don't introduce new font families beyond Bebas Neue, Inter and sans-serif.
- Don't add saturated accent colors; the measured palette is almost entirely neutral.

Generated by [Sitepeel](https://sitepeel.dev/design-md/shortify.framer.ai/), the free DESIGN.md generator (engine 2026.10.29+b828a475ee10).
