oh-my-design-cli 1.8.0 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,444 @@
1
+ ---
2
+ id: ringle
3
+ name: Ringle
4
+ display_name_kr: 링글
5
+ country: KR
6
+ category: education
7
+ homepage: "https://www.ringleplus.com"
8
+ primary_color: "#3c2bac"
9
+ logo:
10
+ type: favicon
11
+ slug: "https://www.google.com/s2/favicons?domain=ringleplus.com&sz=128"
12
+ verified: "2026-06-11"
13
+ added: "2026-06-11"
14
+ omd: "0.1"
15
+ tokens:
16
+ source: live-extract
17
+ extracted: "2026-06-11"
18
+ note: "primary = live CTA indigo (#3c2bac, '링글 시작하기' / '무료체험'); deeper indigos (#2b1e90, #4130a4, #201852, #120b60) anchor dark hero bands. Headings near-black indigo #140f33; muted nav/sub text #80839e. Single body font Pretendard Variable; display in Pretendard JP ExtraBold. Flat, shadowless on inspected nodes."
19
+ colors:
20
+ primary: "#3c2bac"
21
+ primary-deep: "#2b1e90"
22
+ indigo: "#4130a4"
23
+ indigo-darker: "#201852"
24
+ indigo-darkest: "#120b60"
25
+ indigo-title: "#1c1374"
26
+ ink: "#140f33"
27
+ body: "#3e426a"
28
+ slate: "#5a5e7f"
29
+ muted: "#80839e"
30
+ tint: "#eeebfa"
31
+ tint-mid: "#cbc5f0"
32
+ lilac: "#a89ee6"
33
+ canvas: "#ffffff"
34
+ surface: "#f8f8fb"
35
+ gold: "#ffd391"
36
+ promo-blue: "#2259e5"
37
+ teens-blue: "#4495ff"
38
+ on-primary: "#ffffff"
39
+ typography:
40
+ family: { display: "Pretendard JP ExtraBold", body: "Pretendard Variable" }
41
+ display-hero: { size: 52, weight: 800, lineHeight: 1.30, use: "Hero headline, Pretendard JP ExtraBold" }
42
+ section: { size: 40, weight: 800, lineHeight: 1.30, use: "Product/section headlines, ExtraBold" }
43
+ feature: { size: 32, weight: 800, lineHeight: 1.31, use: "Feature headline, ExtraBold" }
44
+ eyebrow: { size: 22, weight: 700, lineHeight: 1.40, use: "Section label, Pretendard JP Bold" }
45
+ lead: { size: 20, weight: 500, lineHeight: 1.40, use: "Hero sub / lead text, Pretendard JP Medium" }
46
+ body: { size: 14, weight: 400, lineHeight: 1.57, use: "Body + nav, Pretendard Variable" }
47
+ nav: { size: 14, weight: 500, lineHeight: 1.57, use: "Top nav items, Pretendard JP Medium" }
48
+ spacing: { xs: 4, sm: 8, md: 10, base: 16, lg: 24, xl: 40, xxl: 60 }
49
+ rounded: { xs: 4, sm: 5, md: 8, lg: 12, xl: 24, full: 40 }
50
+ shadow:
51
+ none: "none"
52
+ components:
53
+ button-primary: { type: button, bg: "#3c2bac", fg: "#ffffff", radius: "8px", height: "61px", font: "18px / 400 Pretendard", use: "Primary CTA — 링글 시작하기" }
54
+ button-nav: { type: button, bg: "#3c2bac", fg: "#ffffff", radius: "5px", padding: "10px 16px", height: "42px", use: "Header 무료체험 CTA" }
55
+ button-on-dark: { type: button, bg: "#120b60", fg: "#ffffff", radius: "8px", height: "60px", use: "더 알아보기 link on dark indigo band" }
56
+ button-teens: { type: button, bg: "#4495ff", fg: "#ffffff", radius: "8px", height: "60px", use: "링글 틴즈 더 알아보기 CTA" }
57
+ nav-link: { type: tab, fg: "#80839e", font: "14px / 500 Pretendard JP Medium", active: "text #3c2bac", use: "Top nav item, indigo on active/hover" }
58
+ card-tint: { type: card, bg: "#eeebfa", fg: "#140f33", radius: "12px", use: "Soft lilac-tint content card" }
59
+ card-promo: { type: card, bg: "#2259e5", fg: "#ffffff", radius: "24px", padding: "60px", use: "Promotion banner card, gold accent #ffd391" }
60
+ badge-gold: { type: badge, bg: "#2259e5", fg: "#ffd391", radius: "4px", font: "16px / 700 Pretendard JP Bold", use: "Promo accent label (gold on promo blue)" }
61
+ footer-link: { type: listItem, fg: "#80839e", font: "14px / 400 Pretendard Variable", use: "Footer / nav link" }
62
+ components_harvested: true
63
+ ---
64
+
65
+ # Design System Inspiration of Ringle
66
+
67
+ ## 1. Visual Theme & Atmosphere
68
+
69
+ Ringle (링글) is Korea's premium 1:1 video-English edtech — "명문대 튜터와의 1:1 화상영어" — and its marketing surface reads like a serious, career-grade learning product rather than a playful language app. The canvas is pure white (`#ffffff`) with the occasional cool near-white surface (`#f8f8fb`), and the whole identity orbits a single confident indigo: the CTA purple `#3c2bac` that fills every "링글 시작하기" / "무료체험" button. That indigo deepens into a family of dark blues — `#2b1e90`, `#4130a4`, `#201852`, `#120b60`, `#1c1374` — that paint the full-bleed feature bands where Ringle showcases its 1:1 화상영어, AI 스피킹, and 기업 솔루션 products in reversed-out white type. The effect is studious and trustworthy: indigo signals focus and intellect, the right register for a product that pairs learners with Ivy/top-MBA tutors.
70
+
71
+ Typography is the system's backbone and its single most distinctive trait. Display runs in **Pretendard JP ExtraBold (weight 800)** at large sizes — 52px on the hero, 40px on product headlines, 32px on features — in a deep near-black indigo `#140f33`, projecting declarative confidence ("영어는 실전처럼"). Body and UI text collapse to a single workhorse, **Pretendard Variable**, at a quiet 14px / weight 400, with nav and lead text stepping up to Pretendard JP Medium at 14–20px in muted slate `#80839e`. The hierarchy is carried almost entirely by weight and size, not color: ExtraBold black-indigo to persuade, Medium grey to inform.
72
+
73
+ What distinguishes Ringle is its restraint. There is essentially no decorative depth — inspected hero, nav, headings, and CTAs all return `box-shadow: none`; separation comes from flat indigo bands and soft lilac tints (`#eeebfa`, `#cbc5f0`, `#a89ee6`) rather than elevation. Geometry is gently rounded: 8px on primary buttons and cards, 5px on the compact nav CTA, 12px on tinted cards, and a generous 24px on promo banners. A warm gold accent (`#ffd391`) and a saturated promo blue (`#2259e5`) appear only in time-boxed promotion chrome, and a bright sky blue (`#4495ff`) is reserved for the 틴즈 (teens) sub-brand. The result is a calm, intellectual, mobile-first system — premium without being cold.
74
+
75
+ **Key Characteristics:**
76
+ - Single indigo identity — CTA purple `#3c2bac` deepening into `#2b1e90`, `#4130a4`, `#201852`, `#120b60` dark bands
77
+ - Pretendard JP ExtraBold (weight 800) for all display headlines — declarative, career-grade voice
78
+ - Pretendard Variable weight 400 at 14px as the single body/UI workhorse
79
+ - Near-black indigo `#140f33` for headings; muted slate `#80839e` for nav and sub-text
80
+ - Flat depth: no shadow on inspected nodes; lilac tints (`#eeebfa`, `#cbc5f0`, `#a89ee6`) and indigo bands do the separating
81
+ - Gently rounded geometry — 8px buttons/cards, 5px nav CTA, 12px tint cards, 24px promo banners
82
+ - Reserved accents: gold `#ffd391` + promo blue `#2259e5` for promotions; sky blue `#4495ff` for 틴즈
83
+ - Hierarchy by weight/size, not color — ExtraBold to persuade, Medium grey to inform
84
+
85
+ ## 2. Color Palette & Roles
86
+
87
+ ### Primary
88
+ - **Ringle Indigo** (`#3c2bac`): Primary brand color and CTA background — the saturated indigo-purple that fills "링글 시작하기" and "무료체험". The single "action" color.
89
+ - **Deep Indigo** (`#2b1e90`): Brand-text indigo used for inline product names and emphasis (e.g. "링글 1:1 화상영어").
90
+ - **Indigo Band** (`#4130a4`): A mid dark-indigo seen as a recurring surface fill across feature sections.
91
+
92
+ ### Dark Indigo Bands
93
+ - **Indigo Dark** (`#201852`): Dark band background behind reversed-out white feature copy.
94
+ - **Indigo Darkest** (`#120b60`): Near-black indigo for "더 알아보기" links on the darkest product bands.
95
+ - **Indigo Title** (`#1c1374`): Deep indigo used on some product-landing hero headlines.
96
+
97
+ ### Neutral & Surface
98
+ - **Pure White** (`#ffffff`): Page background, white cards, reversed-out text on indigo bands.
99
+ - **Surface** (`#f8f8fb`): Cool near-white surface for alternating sections.
100
+ - **Tint** (`#eeebfa`): Soft lilac-tint card and section background.
101
+ - **Tint Mid** (`#cbc5f0`): A stronger lilac tint for highlighted surfaces.
102
+ - **Lilac** (`#a89ee6`): The mid lilac used for illustration fills and accent surfaces.
103
+
104
+ ### Text Hierarchy
105
+ - **Ink Indigo** (`#140f33`): Primary heading and strong text — near-black indigo, never pure black.
106
+ - **Body Slate** (`#3e426a`): Secondary body copy.
107
+ - **Slate** (`#5a5e7f`): Tertiary headings and labels.
108
+ - **Muted** (`#80839e`): Nav items, captions, lead/sub text, lowest-emphasis labels.
109
+
110
+ ### Accents (reserved)
111
+ - **Gold** (`#ffd391`): Warm gold accent text, used only inside promotion chrome.
112
+ - **Promo Blue** (`#2259e5`): Saturated blue for the time-boxed promotion bar and banner cards.
113
+ - **Teens Blue** (`#4495ff`): Bright sky blue reserved for the 링글 틴즈 (teens) sub-brand CTAs.
114
+ - **On Primary** (`#ffffff`): White text/icons on indigo and blue surfaces.
115
+
116
+ ## 3. Typography Rules
117
+
118
+ ### Font Family
119
+ - **Display**: `Pretendard JP ExtraBold` (also `Pretendard JP Bold`, `Pretendard JP Medium`, `Pretendard JP Regular`) — all headlines, eyebrows, nav, and lead text.
120
+ - **Body**: `Pretendard Variable` (with `Noto Sans KR` fallback) — the document default and the single body/UI workhorse at weight 400.
121
+
122
+ ### Hierarchy
123
+
124
+ | Role | Font | Size | Weight | Line Height | Notes |
125
+ |------|------|------|--------|-------------|-------|
126
+ | Display Hero | Pretendard JP ExtraBold | 52px (3.25rem) | 800 | ~1.30 | Homepage hero, color `#140f33` |
127
+ | Section Headline | Pretendard JP ExtraBold | 40px (2.50rem) | 800 | ~1.30 | Product hub headlines |
128
+ | Feature Headline | Pretendard JP ExtraBold | 32px (2.00rem) | 800 | ~1.31 | In-section feature heads |
129
+ | Eyebrow / Label | Pretendard JP Bold | 22px (1.38rem) | 700 | ~1.40 | Product name label (e.g. "링글 AI 스피킹") |
130
+ | Lead / Sub | Pretendard JP Medium | 20px (1.25rem) | 500 | ~1.40 | Hero sub-line, color `#80839e` |
131
+ | Nav | Pretendard JP Medium | 14px (0.88rem) | 500 | ~1.57 | Top nav items |
132
+ | Body | Pretendard Variable | 14px (0.88rem) | 400 | ~1.57 | Standard reading text |
133
+
134
+ ### Principles
135
+ - **Bold display, light body**: ExtraBold (800) carries every headline; Pretendard Variable 400 carries every paragraph. Weight contrast is the primary hierarchy signal.
136
+ - **One body font**: Pretendard Variable is the single workhorse for body and UI — the system does not mix functional typefaces.
137
+ - **Color stays quiet in type**: headings sit in near-black indigo `#140f33`, sub/nav in muted `#80839e`; saturated indigo is reserved for interactive elements, not running text.
138
+ - **Hangul-first sizing**: body at 14px with ~1.57 line-height — generous for dense hangul reading.
139
+
140
+ ## 4. Component Stylings
141
+
142
+ ### Buttons
143
+
144
+ **Primary CTA**
145
+ - Background: `#3c2bac`
146
+ - Text: `#ffffff`
147
+ - Radius: 8px
148
+ - Font: 18px Pretendard
149
+ - Height: 61px
150
+ - Use: Primary call-to-action — "링글 시작하기"
151
+
152
+ **Header CTA (무료체험)**
153
+ - Background: `#3c2bac`
154
+ - Text: `#ffffff`
155
+ - Radius: 5px
156
+ - Padding: 10px 16px
157
+ - Height: 42px
158
+ - Use: Compact header free-trial button
159
+
160
+ **On-Dark Link**
161
+ - Background: `#120b60`
162
+ - Text: `#ffffff`
163
+ - Radius: 8px
164
+ - Height: 60px
165
+ - Use: "더 알아보기" link on the darkest indigo feature bands
166
+
167
+ **Teens CTA**
168
+ - Background: `#4495ff`
169
+ - Text: `#ffffff`
170
+ - Radius: 8px
171
+ - Height: 60px
172
+ - Use: 링글 틴즈 sub-brand "틴즈 더 알아보기" button
173
+
174
+ ### Inputs
175
+
176
+ **Default**
177
+ - Background: `#ffffff`
178
+ - Border: 1px solid `#cbc5f0`
179
+ - Radius: 8px
180
+ - Text: 14px Pretendard Variable
181
+ - Use: Form / auth text field on white canvas
182
+
183
+ ### Cards & Containers
184
+
185
+ **Lilac Tint Card**
186
+ - Background: `#eeebfa`
187
+ - Text: `#140f33`
188
+ - Radius: 12px
189
+ - Use: Soft lilac-tinted content card on white
190
+
191
+ **Promotion Banner**
192
+ - Background: `#2259e5`
193
+ - Text: `#ffffff`
194
+ - Radius: 24px
195
+ - Padding: 60px
196
+ - Use: Time-boxed promotion banner card (gold `#ffd391` accent label inside)
197
+
198
+ ### Badges
199
+
200
+ **Gold Promo Label**
201
+ - Background: `#2259e5`
202
+ - Text: `#ffd391`
203
+ - Radius: 4px
204
+ - Font: 16px Pretendard JP Bold
205
+ - Use: Promotion accent label — warm gold on promo blue
206
+
207
+ ### Navigation
208
+ - Background: `#ffffff`
209
+ - Text: `#80839e`
210
+ - Active: `#3c2bac` indigo text
211
+ - Font: 14px Pretendard JP Medium
212
+ - Use: Top horizontal nav ("제품소개", "고객사례", "튜터", "교재", "가격")
213
+
214
+ ### Footer
215
+ - Links: `#80839e`, 14px Pretendard Variable
216
+ - Use: Footer navigation links
217
+
218
+ ---
219
+
220
+ **Verified:** 2026-06-11 (omd:add-reference CREATE — Tier 1 live inspect)
221
+ **Tier 1 sources:** https://www.ringleplus.com, https://www.ringleplus.com/ko/student/landing/home, https://www.ringleplus.com/en/student/landing/blog
222
+ **Tier 2 sources:** none available (getdesign.md/ringle → "No designs found"; styles.refero.design ?q=ringle → no Ringle-specific style)
223
+ **Conflicts unresolved:** none
224
+
225
+ ## 5. Layout Principles
226
+
227
+ ### Spacing System
228
+ - Base unit: ~4px
229
+ - Scale: 4px, 8px, 10px, 16px, 24px, 40px, 60px
230
+ - Notable: promotion banner cards use a generous 60px padding for an editorial, full-bleed feel
231
+
232
+ ### Grid & Container
233
+ - Centered single-column hero anchored by the 52px ExtraBold headline
234
+ - Product hubs (1:1 화상영어 / AI 스피킹 / 기업 / 틴즈) stack as alternating full-width bands — white sections vs dark indigo bands (`#201852`, `#120b60`)
235
+ - Each product band pairs a 22px Bold eyebrow label, a 40px ExtraBold headline, and an indigo "더 알아보기" CTA
236
+ - Cards group related case studies and use 12px radius
237
+
238
+ ### Whitespace Philosophy
239
+ - **Editorial breathing room**: generous vertical rhythm between product bands; the page reads top-to-bottom as a sequence of self-contained product stories.
240
+ - **Band segmentation**: sections separate by background — white `#ffffff`, near-white `#f8f8fb`, lilac tint `#eeebfa`, and dark indigo bands — not by borders or shadow.
241
+ - **Reserved accent rhythm**: gold `#ffd391` and promo blue `#2259e5` appear only in promotion chrome, keeping the indigo identity dominant.
242
+
243
+ ### Border Radius Scale
244
+ - Extra small (4px): badges, small chips
245
+ - Small (5px): compact header CTA
246
+ - Medium (8px): primary buttons, inputs, standard cards — the workhorse
247
+ - Large (12px): tinted content cards
248
+ - Extra large (24px): promotion banner cards
249
+
250
+ ## 6. Depth & Elevation
251
+
252
+ | Level | Treatment | Use |
253
+ |-------|-----------|-----|
254
+ | Flat (Level 0) | No shadow | Page background, inline text, hero, nav, CTAs (inspected `box-shadow: none`) |
255
+ | Tint (Level 1) | Lilac `#eeebfa` / surface `#f8f8fb` background shift | Card/section separation without elevation |
256
+ | Band (Level 2) | Dark indigo (`#201852`, `#120b60`) full-bleed band | Product feature sections with reversed white type |
257
+
258
+ **Shadow Philosophy**: Ringle reads as a near-shadowless system on its primary surfaces. Live inspection found `box-shadow: none` across the hero, nav, headings, and CTAs. Depth and grouping are communicated through flat color — soft lilac tints (`#eeebfa`, `#cbc5f0`) and full-bleed dark indigo bands (`#201852`, `#120b60`) — rather than elevation. When emphasis is needed the system reaches for color (indigo `#3c2bac`, or a dark band), not a drop shadow.
259
+
260
+ ## 7. Do's and Don'ts
261
+
262
+ ### Do
263
+ - Use indigo `#3c2bac` as the single primary action color for CTAs ("링글 시작하기", "무료체험")
264
+ - Use Pretendard JP ExtraBold (800) for all display headlines — it's the brand's voice
265
+ - Use Pretendard Variable weight 400 at 14px for body and dense UI text
266
+ - Use near-black indigo `#140f33` for headings instead of pure black
267
+ - Separate sections with flat tints (`#eeebfa`, `#f8f8fb`) and dark indigo bands (`#201852`, `#120b60`)
268
+ - Reverse copy out to white on the dark indigo product bands
269
+ - Reserve gold `#ffd391` and promo blue `#2259e5` for promotion chrome only
270
+ - Use sky blue `#4495ff` only for the 틴즈 sub-brand
271
+
272
+ ### Don't
273
+ - Spread the indigo across many elements — keep `#3c2bac` the single action signal
274
+ - Use a drop shadow for elevation — separate with tint and bands instead
275
+ - Use pure black for headings — reserve near-black indigo `#140f33`
276
+ - Mix a second body typeface — Pretendard Variable is the one workhorse
277
+ - Let gold or promo blue leak outside time-boxed promotion surfaces
278
+ - Set headlines in a light weight — display is always ExtraBold (800)
279
+ - Carry color in running text — keep saturated indigo for interactive elements
280
+
281
+ ## 8. Responsive Behavior
282
+
283
+ ### Breakpoints
284
+ | Name | Width | Key Changes |
285
+ |------|-------|-------------|
286
+ | Mobile | <640px | Single column, hero headline compresses, product bands stack |
287
+ | Tablet | 640-1024px | Moderate padding, 2-up case-study cards |
288
+ | Desktop | 1024-1440px | Full layout, centered hero, full-bleed alternating bands |
289
+
290
+ ### Touch Targets
291
+ - Primary CTA at 61px height — an unmistakable tap target
292
+ - Header CTA at 42px height with 10px 16px padding
293
+ - On-dark and teens links at 60px height
294
+
295
+ ### Collapsing Strategy
296
+ - Hero: 52px ExtraBold headline scales down on mobile, weight 800 maintained
297
+ - Product bands: full-bleed white/indigo alternation preserved on all viewports
298
+ - Case-study cards: multi-column → stacked single column
299
+
300
+ ### Image Behavior
301
+ - Product/illustration imagery carries no shadow, consistent with the flat system
302
+ - Cards maintain 12px radius across breakpoints
303
+
304
+ ## 9. Agent Prompt Guide
305
+
306
+ ### Quick Color Reference
307
+ - Primary CTA: Ringle Indigo (`#3c2bac`)
308
+ - Deep / brand-text indigo: (`#2b1e90`)
309
+ - Dark bands: (`#201852`, `#120b60`)
310
+ - Background: Pure White (`#ffffff`); near-white surface (`#f8f8fb`)
311
+ - Lilac tints: (`#eeebfa`, `#cbc5f0`, `#a89ee6`)
312
+ - Heading text: Ink Indigo (`#140f33`)
313
+ - Body text: Body Slate (`#3e426a`)
314
+ - Nav / muted text: Muted (`#80839e`)
315
+ - Promotion accents: gold (`#ffd391`) + promo blue (`#2259e5`)
316
+ - Teens sub-brand: (`#4495ff`)
317
+
318
+ ### Example Component Prompts
319
+ - "Create a hero on white. Headline at 52px Pretendard JP ExtraBold weight 800, color #140f33. Sub-line 20px Pretendard JP Medium, color #80839e. Primary CTA: #3c2bac background, white text, 8px radius, 61px tall — '링글 시작하기'."
320
+ - "Design a dark product band: #120b60 background, full width. 22px Bold white eyebrow, 40px ExtraBold white headline, and a '더 알아보기' link on #120b60 with 8px radius."
321
+ - "Build a lilac tint card: #eeebfa background, 12px radius, no shadow. Title 32px Pretendard JP ExtraBold #140f33, body 14px Pretendard Variable #3e426a."
322
+ - "Create a top nav: white background, 14px Pretendard JP Medium links in #80839e, active item indigo #3c2bac. Right-aligned '무료체험' CTA: #3c2bac, 5px radius, 10px 16px padding."
323
+
324
+ ### Iteration Guide
325
+ 1. Pretendard JP ExtraBold (800) for every headline; Pretendard Variable 400 for every paragraph
326
+ 2. Indigo `#3c2bac` is the single action color — don't spread it
327
+ 3. No shadows — separate with lilac tint `#eeebfa` and dark indigo bands `#201852` / `#120b60`
328
+ 4. Gently rounded — 8px buttons/cards, 12px tint cards, 24px promo banners
329
+ 5. Heading color is `#140f33` indigo, never pure black
330
+ 6. Reverse to white on dark bands; keep gold/promo blue inside promotion chrome only
331
+ 7. Sky blue `#4495ff` only for the 틴즈 sub-brand
332
+
333
+ ---
334
+
335
+ ## 10. Voice & Tone
336
+
337
+ Ringle's voice is **earnest, ambitious, and pragmatic** — an English-learning guide aimed squarely at working adults and high achievers who want real, career-grade fluency, not casual chat practice. The hero line "영어는 실전처럼" ("English, like the real thing") sets the register: outcome-focused, confident, never gimmicky. Copy treats the learner as a serious professional building a skill that compounds into a career — "일하는 사람을 위한 영어" (English for people who work).
338
+
339
+ | Context | Tone |
340
+ |---|---|
341
+ | Hero headlines | Declarative, outcome-framed. "영어는 실전처럼." Confident, not hype. |
342
+ | Product labels | Plain and structural. "링글 1:1 화상영어", "링글 AI 스피킹", "링글 기업 영어 솔루션". |
343
+ | CTAs | Direct, low-pressure. "링글 시작하기", "무료체험", "더 알아보기". |
344
+ | Feature descriptions | Benefit-first, career-framed. Ties English skill to professional outcomes. |
345
+ | Trust copy | Concrete and proof-led. "200+개 이상의 기업이 링글과 함께 하고 있습니다". |
346
+
347
+ **Voice samples (verbatim from live surfaces):**
348
+ - "영어는 실전처럼. 명문대 튜터와의 1:1 맞춤 화상영어" — homepage hero. *(verified live 2026-06-11)*
349
+ - "꿈꾸던 영어실력과 커리어를 만드는 일하는 사람을 위한 영어, 링글" — hero sub-line. *(verified live 2026-06-11)*
350
+ - "200+개 이상의 기업이 링글과 함께 하고 있습니다" — B2B proof headline. *(verified live 2026-06-11)*
351
+
352
+ **Forbidden register**: casual gamified hype, fear-based "you're behind" pressure, undefined jargon, exclamation-heavy marketing.
353
+
354
+ ## 11. Brand Narrative
355
+
356
+ Ringle (링글, 링글잉글리시에듀케이션서비스) was founded in **2015** by **이성파 (Lee Sungpah)** and **이승훈 (Lee Seunghoon)**, two co-founders who met as classmates in the **Stanford MBA** program. The founding insight came directly from their own pain: despite strong credentials, they struggled to express themselves in English in a top global environment — and realized many capable Korean professionals hit the same wall. The product they built reframed English education from rote test-prep into real conversation practice with tutors from top universities, structured around current-affairs reading material and AI-assisted feedback.
357
+
358
+ Ringle's stated mission, per the founders, is "영어 장벽이 없는 세상을 만드는 것" — to build a world without the English-language barrier. The product matured into Korea's leading premium 1:1 화상영어 (video-English) platform: 20–40 minute lessons with Ivy/top-MBA tutors, a library of 200+ discussion materials, real-time Google Docs collaboration, and AI conversation analysis — later extended into AI 스피킹 (unlimited AI speaking), a 기업 (B2B corporate) solution used by 200+ companies, and the 틴즈 (teens) sub-brand.
359
+
360
+ What Ringle refuses, visible in its design: the playful, gamified chrome of casual language apps, and the intimidating test-factory aesthetic of legacy English academies. What it embraces: a calm, intellectual indigo identity; bold ExtraBold headlines that speak to ambition; and copy that ties English fluency directly to career and real-world performance. The company also notes it now earns 30%+ of revenue outside Korea, reflecting a global ambition consistent with its founding story.
361
+
362
+ ## 12. Principles
363
+
364
+ 1. **Real practice over rote prep.** Ringle exists to build usable fluency, not test scores. *UI implication:* lead with conversation/outcome framing ("영어는 실전처럼"); keep product structure (tutor, material, feedback) visible and concrete.
365
+ 2. **Premium and intellectual, not playful.** The brand earns trust by feeling serious. *UI implication:* indigo `#3c2bac` identity, ExtraBold display type, near-black indigo `#140f33` text — no gamified color or bounce.
366
+ 3. **One action, one color.** Indigo means "do this." *UI implication:* reserve `#3c2bac` for the primary CTA so the next step is never ambiguous.
367
+ 4. **Calm bands over decorative depth.** *UI implication:* no shadows; separate with lilac tints and full-bleed dark indigo bands; reverse copy to white on dark.
368
+ 5. **Career-first framing.** English is a professional skill that compounds. *UI implication:* tie features to outcomes ("일하는 사람을 위한 영어", B2B proof), and address the learner as a serious professional.
369
+
370
+ ## 13. Personas
371
+
372
+ *Personas below are fictional archetypes informed by publicly observable Ringle user segments (Korean working professionals, jobseekers targeting global roles, corporate L&D buyers), not individual people.*
373
+
374
+ **김도현, 31, 서울.** A product manager preparing to interview at global tech companies. Wants real speaking reps with a sharp tutor, not vocabulary drills. Chose Ringle because the lessons feel like the actual high-stakes conversations he's preparing for.
375
+
376
+ **박지은, 36, 경기.** A working parent who studies in 20-minute lessons between job and home life. Values the flexibility and the AI 스피킹 app for unlimited low-pressure practice on her own schedule.
377
+
378
+ **이상우, 44, 기업 HR.** An L&D manager rolling out Ringle's B2B solution to employees. Wants measurable speaking assessment, managed delivery, and a vendor that feels premium enough to put in front of executives.
379
+
380
+ ## 14. States
381
+
382
+ | State | Treatment |
383
+ |---|---|
384
+ | **Empty (no lessons booked)** | White canvas. Single Ink Indigo (`#140f33`) line at body size explaining nothing is scheduled, with one indigo `#3c2bac` CTA to book. No clutter. |
385
+ | **Empty (no saved material)** | Muted (`#80839e`) single line: nothing saved yet, plus a path back to the material library. Calm and honest. |
386
+ | **Loading (tutor list / schedule)** | Skeleton rows on lilac tint `#eeebfa` at final card dimensions, 12px radius. Flat pulse — no shadow shimmer, consistent with the shadowless system. |
387
+ | **Loading (AI speaking compute)** | Inline progress within the tool surface; previous content stays visible. |
388
+ | **Error (booking failed)** | Inline message in Ink Indigo with a plain-language explanation and a retry. States the next step, never a bare "오류가 발생했습니다". |
389
+ | **Error (form validation)** | Field-level message below the input describing what's valid, not just "필수". |
390
+ | **Success (lesson booked)** | Brief inline confirmation in calm tone; next-step detail linked immediately below. No celebratory emoji. |
391
+ | **Skeleton** | `#eeebfa` blocks at final dimensions, 12px radius, flat pulse. |
392
+ | **Disabled** | Muted (`#80839e`) text on reduced-opacity surface; indigo actions fade rather than turn grey to preserve brand read. |
393
+
394
+ ## 15. Motion & Easing
395
+
396
+ **Durations**:
397
+
398
+ | Token | Value | Use |
399
+ |---|---|---|
400
+ | `motion-fast` | 120ms | Hover, button press, focus |
401
+ | `motion-standard` | 220ms | Card/section reveal, sheet, dropdown |
402
+ | `motion-slow` | 340ms | Page-level transitions, hero/band reveal |
403
+
404
+ **Easings**:
405
+
406
+ | Token | Curve | Use |
407
+ |---|---|---|
408
+ | `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Arriving — cards, bands, sheets |
409
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
410
+ | `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Two-way transitions |
411
+
412
+ **Motion rules**: Motion is functional and composed — consistent with the calm, intellectual aesthetic. Product bands fade-and-rise into view at `motion-standard / ease-enter`; CTAs respond to press with a subtle scale/opacity shift. No bounce or spring — a career-grade learning product signals steadiness, not playfulness. Under `prefers-reduced-motion: reduce`, all transitions collapse to instant; the product remains fully functional.
413
+
414
+ <!--
415
+ OmD v0.1 Sources — Philosophy Layer (sections 10–15)
416
+
417
+ Tier 1 live inspect (2026-06-11) via playwright getComputedStyle on https://www.ringleplus.com
418
+ and https://www.ringleplus.com/ko/student/landing/home:
419
+ - Hero H1 "영어는 실전처럼. 명문대 튜터와의 1:1 맞춤 화상영어" — Pretendard JP ExtraBold 52px / 800 / color rgb(20,15,51) #140f33
420
+ - Hero sub-H3 "꿈꾸던 영어실력과 커리어를 만드는 일하는 사람을 위한 영어, 링글" — Pretendard JP Medium 20px / 500 / rgb(128,131,158) #80839e
421
+ - Primary CTA "링글 시작하기" — bg rgb(60,43,172) #3c2bac / radius 8px / 61px tall
422
+ - Dark band "더 알아보기" — bg rgb(18,11,96) #120b60 / radius 8px / 60px
423
+ - Teens CTA "틴즈 더 알아보기" — bg rgb(68,149,255) #4495ff
424
+ - B2B proof "200+개 이상의 기업이 링글과 함께 하고 있습니다" — ExtraBold 40px #140f33
425
+ - box-shadow: none across hero/nav/headings/CTAs (flat system on inspected nodes)
426
+
427
+ Voice samples (§10) are verbatim from live surfaces (homepage hero, hero sub-line, B2B proof headline).
428
+
429
+ Brand narrative (§11): Ringle (링글잉글리시에듀케이션서비스) founded 2015 by co-founders
430
+ 이성파 (Lee Sungpah) and 이승훈 (Lee Seunghoon), who met in the Stanford MBA program; stated
431
+ mission "영어 장벽이 없는 세상을 만드는 것". These are widely documented public facts (founder
432
+ interviews, company press); the "30%+ revenue outside Korea" figure appears on Ringle's own
433
+ company/team page (https://www.ringleplus.com/en/company/4). Details beyond the inspected
434
+ homepage are general public knowledge, not directly quoted from a single verified statement in
435
+ this turn.
436
+
437
+ Personas (§13) are fictional archetypes informed by publicly observable Ringle user segments
438
+ (Korean working professionals, global-role jobseekers, corporate L&D buyers). Names are
439
+ illustrative; they do not refer to real people.
440
+
441
+ Interpretive claims (e.g., "premium and intellectual, not playful", "calm bands over
442
+ decorative depth") are editorial readings connecting Ringle's observed design to its
443
+ positioning, not directly sourced Ringle statements.
444
+ -->