Archived
TYPOGRAPHY, taken from the lockup and walked down to something you can read a paragraph in. "The Vine" in LeJour Script over COFFEEHOUSE + BAKERY in AdBhashitha is the whole brand voice, so: the script stays in the wordmark and nowhere else (it is unreadable at length); AdBhashitha carries h1–h4 and the price, and keeps the wordmark's 0.01em letter-spacing so a heading sits on the same rhythm as the logo above it; `eyebrow` and `label` are the hinge — sans, but letterspaced like the tagline — and then plain Raleway. Sizes are declared once in type.css instead of being re-chosen per template, and none of the type classes set a colour, because the same heading appears in sage on cream and in cream on sage. BUTTONS AND SURFACES have names now. `panel` is the white box that was "bg-white rounded-3xl shadow-xs" written out in nine places (which is how two of them end up with different corners); `panel-lift` is one that reacts. `pill` is one shape in four colourways, which exist because this site puts buttons on cream AND on sage and they cannot be the same colour on both. `chip`/`chip-on` are the products filter. RHYTHM: `section` (py-16 md:py-24) and `band` (py-14 md:py-20, tighter because a coloured strip is already doing the separating) replace nine hand-picked paddings. FOCUS: one visible ring for everything reachable by keyboard, as an outline rather than a shadow so it works on cream, on white and on the sage bands, at zero specificity so a utility can still win. Z-INDEX: written down in base.css, all two of it — 40 the sticky header, 30 the mobile panel, which is a child of the header and so can only ever sit under the bar. Everything else stacks in document order. The point of the comment is that a third layer doesn't get invented at 9999. DROPDOWNS: the admin's category selects were drawing the platform's own arrow in the platform's grey; they get the site's chevron and room for it. 53 tests green. Every class used across all nine pages — five public, four admin — resolves in the compiled stylesheet, so nothing here is styled by a name that doesn't exist.
93 lines
4.0 KiB
HTML
93 lines
4.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en" xmlns:th="http://www.thymeleaf.org" th:replace="~{fragments/page :: page(${title}, ${description}, ${path}, ~{::content})}">
|
|
<body>
|
|
<div th:fragment="content" class="bg-bakery-50">
|
|
|
|
<!--/* The shop's own front, which is what the story is about. Same band as the catering page. */-->
|
|
<section class="band relative flex items-center bg-bakery-900 text-white overflow-hidden">
|
|
<img th:src="${photos.of('gallery/Outside.webp')}" alt=""
|
|
class="absolute inset-0 w-full h-full object-cover object-bottom blur-[3px] scale-110">
|
|
<div class="absolute inset-0 bg-bakery-900/80"></div>
|
|
<div class="absolute inset-0 bg-gradient-to-t from-bakery-900 via-bakery-800/60 to-bakery-900/80"></div>
|
|
<div class="relative container mx-auto px-4 w-full min-w-0">
|
|
<div class="max-w-3xl mx-auto text-center">
|
|
<p class="eyebrow text-bakery-200">Since 2024</p>
|
|
<h1 class="h1 mt-3 text-bakery-50">Our story</h1>
|
|
<p class="lede mt-5 text-bakery-100">
|
|
215 E Main Street, in the middle of downtown Princeville.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<header class="container mx-auto px-4 pt-14 pb-2 md:pt-16 text-center"></header>
|
|
|
|
<div class="container mx-auto px-4 pb-16 md:pb-24">
|
|
<div class="max-w-2xl mx-auto space-y-12">
|
|
<section>
|
|
<h2 class="h3 text-bakery-900 mb-4">How it started</h2>
|
|
<p class="text-bakery-800 leading-relaxed">
|
|
Morissa Bennett opened The Vine in 2024, at 215 E Main Street, in the middle of downtown
|
|
Princeville. The plan was not complicated. Bake it ourselves, sell it ourselves, and keep
|
|
enough tables that nobody feels rushed out the door.
|
|
</p>
|
|
</section>
|
|
|
|
<section>
|
|
<h2 class="h3 text-bakery-900 mb-4">What we make</h2>
|
|
<p class="text-bakery-800 leading-relaxed">
|
|
We opened with coffee and pastries. The menu kept growing. Now there are cinnamon rolls
|
|
and caramel rolls, scones, cookie bars, macarons, brownies, and pies, plus sandwiches and
|
|
paninis once the lunch crowd shows up.
|
|
</p>
|
|
</section>
|
|
|
|
<section>
|
|
<h2 class="h3 text-bakery-900 mb-4">The cakes are the fun part</h2>
|
|
<p class="text-bakery-800 leading-relaxed">
|
|
Cakes and decorated cookies are made to order, which means we mostly bake whatever
|
|
Princeville is celebrating that week. We have done a tractor, a cow, a 76th birthday, a
|
|
retirement, a wedding, and a cake for the class of 1964. We have iced sugar cookies for
|
|
the cross country team and for a bridal party. If you can describe it, we will have a go
|
|
at it.
|
|
</p>
|
|
</section>
|
|
|
|
<section>
|
|
<h2 class="h3 text-bakery-900 mb-4">Around town</h2>
|
|
<p class="text-bakery-800 leading-relaxed">
|
|
We turn out for Christmas in the Village every year and for other civic events, and the
|
|
Princeville Civic Association counts us among the town's small businesses. Enjoy
|
|
Illinois and Discover Peoria have both pointed travelers our way. If you are one of them,
|
|
we open at 7:00am, Tuesday through Saturday.
|
|
</p>
|
|
</section>
|
|
</div>
|
|
</div>
|
|
|
|
<!--/* Somewhere to go after reading: the story is a preamble to an order. */-->
|
|
<section class="section bg-bakery-800 text-white">
|
|
<div class="container mx-auto px-4">
|
|
<div class="max-w-2xl mx-auto text-center">
|
|
<h2 class="h3">Come and see us</h2>
|
|
<p class="mt-4 text-bakery-100 leading-relaxed">
|
|
We open at 7:00am, Tuesday through Saturday. If you are after something for a date in the
|
|
diary, it is worth asking early.
|
|
</p>
|
|
<div class="mt-8 flex flex-col sm:flex-row gap-3 justify-center">
|
|
<a href="/products"
|
|
class="pill-cream">
|
|
See what we make
|
|
</a>
|
|
<a href="/contact"
|
|
class="pill-ghost">
|
|
Get in touch
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
</body>
|
|
</html>
|