Cottagecore is a romanticized pastoral aesthetic that celebrates an idealized vision of rural life, handmade crafts, and simple pleasures. It draws from wildflower meadows, gingham patterns, hand-lettered signage, sun-dappled linen textures, and the warmth of a countryside kitchen. In digital design, Cottagecore translates into soft, warm color palettes, organic shapes, hand-drawn illustration elements, and typography that evokes handwriting or vintage letterpress printing. The aesthetic rejects sleek minimalism in favor of cozy imperfection and natural abundance.
| Swatch | Hex | Role |
|---|---|---|
| Meadow Cream | #FDF6EC |
Primary background |
| Linen White | #FAF3E8 |
Card / surface background |
| Sage Green | #8B9E7E |
Primary accent |
| Dusty Rose | #C9A0A0 |
Secondary accent |
| Butter Yellow | #E8D5A3 |
Warm highlight |
| Terracotta | #C07856 |
Call-to-action / emphasis |
| Lavender Mist | #B8A9C9 |
Tertiary accent |
| Bramble Brown | #6B4E3D |
Primary text |
| Faded Denim | #7E8FA6 |
Muted secondary text |
| Parchment | #F0E6D3 |
Alternate background |
| Forest Moss | #5E7153 |
Dark accent |
| Wild Berry | #8E4162 |
Highlight accent |
:root {
--cc-cream: #FDF6EC;
--cc-linen: #FAF3E8;
--cc-sage: #8B9E7E;
--cc-dusty-rose: #C9A0A0;
--cc-butter: #E8D5A3;
--cc-terracotta: #C07856;
--cc-lavender: #B8A9C9;
--cc-brown: #6B4E3D;
--cc-denim: #7E8FA6;
--cc-parchment: #F0E6D3;
--cc-moss: #5E7153;
--cc-berry: #8E4162;
}
| Font | Weight(s) | Usage | Link |
|---|---|---|---|
| Lora | 400, 500, 600, 700 | Headings; elegant serif with gentle curves | Lora |
| Crimson Text | 400, 600, 700 | Body text; warm, readable old-style serif | Crimson Text |
| Caveat | 400, 500, 600, 700 | Decorative hand-lettered text, labels, quotes | Caveat |
| Cormorant Garamond | 300, 400, 500, 600 | Display headings; refined and romantic | Cormorant Garamond |
| Nunito | 300, 400, 600 | UI labels, navigation; soft rounded sans-serif | Nunito |
| Heading | Body | Vibe |
|---|---|---|
| Cormorant Garamond 500 | Crimson Text 400 | Classic romantic editorial |
| Lora 600 | Nunito 400 | Warm and approachable |
| Caveat 600 | Crimson Text 400 | Hand-lettered charm with readable body |
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Crimson+Text:wght@400;600&family=Caveat:wght@400;600&display=swap');
body {
font-family: 'Crimson Text', 'Georgia', serif;
font-size: 1.1rem;
line-height: 1.8;
color: #6B4E3D;
-webkit-font-smoothing: antialiased;
}
h1, h2, h3 {
font-family: 'Cormorant Garamond', 'Garamond', serif;
font-weight: 500;
letter-spacing: 0.01em;
color: #5E7153;
}
.handwritten {
font-family: 'Caveat', cursive;
font-size: 1.4rem;
}
.cottage-card {
background: #FAF3E8;
border: 1px solid #E8D5A3;
border-radius: 16px;
padding: 32px;
box-shadow: 0 2px 8px rgba(107, 78, 61, 0.08);
position: relative;
}
.cottage-card::before {
content: '';
position: absolute;
top: -1px;
left: 20px;
right: 20px;
height: 3px;
background: linear-gradient(90deg, #8B9E7E, #C9A0A0, #E8D5A3);
border-radius: 3px;
}
.cottage-button {
background: #8B9E7E;
color: #FDF6EC;
border: none;
border-radius: 24px;
padding: 12px 32px;
font-family: 'Crimson Text', serif;
font-size: 1rem;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
box-shadow: 0 2px 6px rgba(94, 113, 83, 0.25);
}
.cottage-button:hover {
background: #5E7153;
box-shadow: 0 4px 12px rgba(94, 113, 83, 0.35);
transform: translateY(-1px);
}
.gingham {
background-color: #FDF6EC;
background-image:
linear-gradient(45deg, #C9A0A022 25%, transparent 25%, transparent 75%, #C9A0A022 75%),
linear-gradient(45deg, #C9A0A022 25%, transparent 25%, transparent 75%, #C9A0A022 75%);
background-size: 20px 20px;
background-position: 0 0, 10px 10px;
}
.botanical-divider {
text-align: center;
margin: 40px 0;
color: #8B9E7E;
font-size: 1.5rem;
letter-spacing: 0.5em;
opacity: 0.6;
}
.botanical-divider::before {
content: '\2740 \2740 \2740';
}
.linen-bg {
background-color: #FDF6EC;
background-image:
repeating-linear-gradient(
0deg,
transparent,
transparent 2px,
rgba(107, 78, 61, 0.03) 2px,
rgba(107, 78, 61, 0.03) 3px
),
repeating-linear-gradient(
90deg,
transparent,
transparent 2px,
rgba(107, 78, 61, 0.02) 2px,
rgba(107, 78, 61, 0.02) 3px
);
}
.cottage-hero {
background: linear-gradient(180deg, #FDF6EC 0%, #F0E6D3 100%);
padding: 80px 40px;
text-align: center;
position: relative;
overflow: hidden;
}
.cottage-hero h1 {
font-family: 'Cormorant Garamond', serif;
font-size: 3rem;
font-weight: 500;
color: #5E7153;
margin-bottom: 16px;
}
.cottage-hero p {
font-family: 'Crimson Text', serif;
font-size: 1.25rem;
color: #6B4E3D;
max-width: 600px;
margin: 0 auto;
line-height: 1.8;
}
.cottage-nav {
background: #FAF3E8;
border-bottom: 2px solid #E8D5A3;
padding: 16px 32px;
display: flex;
align-items: center;
justify-content: space-between;
}
.cottage-nav a {
font-family: 'Crimson Text', serif;
font-size: 1rem;
color: #6B4E3D;
text-decoration: none;
padding: 8px 16px;
border-radius: 8px;
transition: background 0.2s ease;
}
.cottage-nav a:hover {
background: rgba(139, 158, 126, 0.15);
color: #5E7153;
}
| Aesthetic | Relationship |
|---|---|
| Arts and Crafts | Shares the emphasis on handmade quality, natural materials, and rejection of industrial aesthetics |
| Coastal Style | Both use soft, muted palettes and natural textures but Coastal leans cool (ocean) while Cottagecore leans warm (meadow) |
| Wabi-Sabi | Shares appreciation for imperfection and natural materials, but Wabi-Sabi is more austere and Japanese-inflected |
| Art Nouveau | Both draw from botanical forms, but Art Nouveau is more stylized and ornamental |
| Cluttercore | Cottagecore’s maximalist cousin; both celebrate collected objects but Cluttercore embraces visual chaos |
| Biedermeier | Shares domestic warmth and comfort-focused design, with a similar muted palette |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Cottagecore Layout</title>
<link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Crimson+Text:wght@400;600&family=Caveat:wght@400;600&display=swap" rel="stylesheet">
<style>
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
body {
font-family: 'Crimson Text', Georgia, serif;
font-size: 1.1rem;
line-height: 1.8;
color: #6B4E3D;
background-color: #FDF6EC;
background-image:
repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(107,78,61,0.03) 2px, rgba(107,78,61,0.03) 3px),
repeating-linear-gradient(90deg, transparent, transparent 2px, rgba(107,78,61,0.02) 2px, rgba(107,78,61,0.02) 3px);
}
.container {
max-width: 800px;
margin: 0 auto;
padding: 40px 24px;
}
.hero {
text-align: center;
padding: 60px 20px;
margin-bottom: 40px;
}
.hero h1 {
font-family: 'Cormorant Garamond', serif;
font-size: 2.8rem;
font-weight: 500;
color: #5E7153;
margin-bottom: 12px;
}
.hero .subtitle {
font-family: 'Caveat', cursive;
font-size: 1.5rem;
color: #C9A0A0;
}
.divider {
text-align: center;
margin: 32px 0;
color: #8B9E7E;
font-size: 1.2rem;
letter-spacing: 0.5em;
opacity: 0.5;
}
.card {
background: #FAF3E8;
border: 1px solid #E8D5A3;
border-radius: 16px;
padding: 32px;
margin-bottom: 24px;
box-shadow: 0 2px 8px rgba(107, 78, 61, 0.08);
position: relative;
}
.card::before {
content: '';
position: absolute;
top: -1px;
left: 20px;
right: 20px;
height: 3px;
background: linear-gradient(90deg, #8B9E7E, #C9A0A0, #E8D5A3);
border-radius: 3px;
}
.card h2 {
font-family: 'Cormorant Garamond', serif;
font-size: 1.6rem;
font-weight: 500;
color: #5E7153;
margin-bottom: 12px;
}
.button {
display: inline-block;
background: #8B9E7E;
color: #FDF6EC;
border: none;
border-radius: 24px;
padding: 12px 32px;
font-family: 'Crimson Text', serif;
font-size: 1rem;
font-weight: 600;
cursor: pointer;
text-decoration: none;
transition: all 0.3s ease;
box-shadow: 0 2px 6px rgba(94, 113, 83, 0.25);
}
.button:hover {
background: #5E7153;
transform: translateY(-1px);
}
</style>
</head>
<body>
<div class="container">
<div class="hero">
<h1>A Quiet Afternoon</h1>
<p class="subtitle">where wildflowers meet warm linen</p>
</div>
<div class="divider">• • •</div>
<div class="card">
<h2>From the Garden</h2>
<p>Sun-warmed tomatoes, trailing rosemary, and the gentle hum of bees
among the lavender. Every detail is touched by the unhurried rhythm
of a countryside morning.</p>
</div>
<div class="card">
<h2>By the Hearth</h2>
<p>A wool blanket, a cup of chamomile, and the crackle of birch logs.
The design embraces warmth, softness, and the beauty of simple things.</p>
</div>
<div style="text-align: center; margin-top: 32px;">
<a href="#" class="button">Explore the Meadow</a>
</div>
</div>
</body>
</html>
rgba(107, 78, 61, 0.08)) rather than pure black for a softer, warmer feelfilter: sepia(10%) saturate(85%)) to maintain palette cohesionradial-gradient masks or SVG clip-paths for scalloped container edges when you want extra whimsy#FDF6EC or #FAF3E8 instead of #FFFFFF for backgrounds; pure white feels cold against this palette