---
name: "Sofia's Mediterranean Grill"
version: "alpha"
description: "Visual + editorial direction for Sofia's Mediterranean Grill. Generated from the Muse reading and AI-derived voice; powers consistent rendering across the Doozer site, AI agents, and future automation."
colors:
  primary:   { value: "#0a3b2c" }
  secondary: { value: "#e8d8a8" }
  accent:    { value: "#c2362b" }
typography:
  body:
    fontFamily: "sans-serif"
    fontWeight: "regular"
  display:
    fontFamily: "sans-serif"
    displayStyle: "standard"
spacing:
  s1: "4px"
  s2: "8px"
  s3: "16px"
  s4: "24px"
  s5: "32px"
  s6: "48px"
rounded:
  card:   "14px"
  button: "999px"
  image:  "18px"
---

# Sofia's Mediterranean Grill

## Overview

Savor the Mediterranean in Hasbrouck Heights

Fresh Greek and Mediterranean flavors meet warm hospitality at 220 Boulevard, just minutes from Teterboro.

Nestled on Boulevard in Hasbrouck Heights, Sofia's Mediterranean Grill brings the sun-drenched coasts of Greece and the Mediterranean straight to New Jersey. Every dish is built on time-honored recipes passed down through generations, using only the freshest ingredients: ripe tomatoes, fragrant oregano, creamy feta, and olive oil pressed from local groves. Whether you're a pilot stopping in after landing at Teterboro or a neighbor craving authentic flavors, you'll find the same warm welcome from owners who treat guests like family. The menu celebrates both classic Greek comfort food and inventive Mediterranean plates, from perfectly grilled halloumi to generous pikilia platters that pair beautifully with warm pita. The moment you walk in, the scent of lemon, garlic, and herbs fills the air, and the vibrant, sunlit dining room makes every meal feel like a celebration. It's more than a restaurant—it's a gathering place where flavors travel and friendships grow.

**Archetype:** `classic`  ·  **Voice:** `professional`  ·  **Pace:** `steady`  ·  **Density:** `medium`

## Colors

The palette is designed to reflect Sofia's Mediterranean Grill's character — every token below is a deliberate direction, not extracted noise.

- **Primary** (`{colors.primary}`) — `#0a3b2c` — dominant identity color, used for headers, primary buttons, link emphasis, brand marks.
- **Secondary** (`{colors.secondary}`) — `#e8d8a8` — supporting tone, used for soft backgrounds, dividers, and quiet emphasis.
- **Accent** (`{colors.accent}`) — `#c2362b` — high-contrast attention color, used sparingly for CTAs, badges, and editorial moments.

## Typography

- **Body** (`{typography.body}`) — `sans-serif`, `regular`. Used for paragraph text, lists, captions.
- **Display** (`{typography.display}`) — `sans-serif` in `standard` mode. Used for hero headlines, section titles, and editorial pull-outs.

Set generous line-height (1.6+) for body. Display can run tight (-0.01em letter-spacing) for graphic impact.

## Layout

Default rendering uses the Doozer Muse v3 section pipeline. Sections are addressable units — each one selectable by variant (e.g. `about/alternating`, `services/alternating`, `events/upcoming-list`). The container pattern is:

- Outer: `.container` (max-width 1400px)
- Body prose: `.container-narrow` (max-width 900px) — readability is non-negotiable
- Mobile collapse at 880px and 640px breakpoints

## Shapes

- Cards: `{rounded.card}` (14px) — gentle, signals warmth without softness
- Buttons: `{rounded.button}` (999px / pill) — directional, never timid
- Images: `{rounded.image}` (18px) — generous, frames content as artifact

## Components

Doozer ships a fixed component vocabulary that every business site shares. Each component honors the tokens above. Operators don't choose components — the Muse v3 pipeline composes them per section.

- **Hero** — full-bleed photo, brand-tinted overlay, trust pill (rating + today's hours), large display headline
- **About / Services** — `classic` text-only OR `alternating` (image+text rhythm). Smart photo selection via vision metadata.
- **Why Choose Us** — modern numbered cards (01 / 02 / 03), or icon cards, or photo cards — variant per Muse
- **Events** (`upcoming-list`) — chronological event list with affiliate-wrapped tickets
- **Reviews** — letter-on-gradient avatars (or Google profile photos when available), show-more for long reviews
- **FAQ** — native `<details>` accordion, brand-tinted accent on open
- **Hours of Operation** — live open/closed banner + weekly grid with today highlighted
- **Contact** — embedded map + action cards + Save-to-Contacts vCard + Share button
- **Network footer** — every page declares its position in the Doozer / BerrySmart network

## Do's and Don'ts

### Do
- Treat color tokens as inviolable — `{colors.primary}` is **the** brand color, not a starting suggestion.
- Pair `classic` archetype with the matching decorative hints: (none specified).
- Use `{colors.accent}` only for high-intent surfaces (CTAs, urgency, editorial pull-outs). It should feel rare.
- Preserve readability — body line-length never exceeds ~75 characters.
- Honor the `professional` voice in every line of generated copy. The Muse defines this; don't drift.

### Don't
- Don't introduce colors not in the palette. If a new color is needed, add it via the Muse, not ad-hoc.
- Don't replace Doozer components with custom HTML — the pipeline handles structural variants; new structures belong as variants under `includes/sections/`.
- Don't run banner ads, popups, or interstitials. Per the Mission Charter, affiliate revenue is a side-effect of usefulness, never the primary surface.
- Don't generate content that contradicts verified facts (address, hours, phone, rating). The AI generates voice + emphasis; verified data is sacred.

---

*Generated by [Doozer](https://doozer.work) from the active Muse for `sofias-mediterranean-grill.boulevard.biz`. Format: [Google Labs DESIGN.md](https://github.com/google-labs-code/design.md) (alpha). Refreshes when the Muse, AI content, or brand colors change.*
