/* Angeline Thomas — The Pantry Box / Poplar Grove Field Notes
   A warm print aesthetic: cream paper, ink serif type, generous leading.
   Not a dark card grid. This is a hand-annotated field notebook. */

:root {
    --cream: #f7f1e4;
    --paper: #fdfaf3;
    --ink: #2e2a24;
    --rust: #a4512f;
    --sage: #6c7a4f;
    --line: #d9cbb2;
    --accent: #a4512f;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    background: var(--cream);
    color: var(--ink);
    font-family: Georgia, 'Times New Roman', serif;
    line-height: 1.7;
}

header.site-head {
    background: var(--paper);
    border-bottom: 3px double var(--rust);
    padding: 2.5rem 1rem 1.5rem;
    text-align: center;
}

.head-inner .kicker {
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-size: 0.75rem;
    color: var(--rust);
    margin: 0 0 0.5rem;
    font-family: Georgia, serif;
}

h1 {
    font-size: 2.6rem;
    margin: 0;
    font-weight: normal;
    letter-spacing: 0.02em;
}

.deck {
    font-style: italic;
    color: #6b6255;
    max-width: 34rem;
    margin: 0.6rem auto 0;
    font-size: 1.05rem;
}

nav#nav-slot, .site-foot fort-nav {
    display: block;
    margin-top: 1rem;
    font-size: 0.85rem;
}
nav a, .site-foot a {
    color: var(--rust);
    text-decoration: none;
    border-bottom: 1px dotted var(--rust);
    margin: 0 0.5rem;
}
nav a:hover, .site-foot a:hover { color: var(--ink); border-bottom-style: solid; }

main {
    max-width: 42rem;
    margin: 0 auto;
    padding: 2.5rem 1.25rem 1rem;
}

section { margin-bottom: 3rem; }

.lede p, .wider-wisdom p {
    font-size: 1.08rem;
    text-align: justify;
    hyphens: auto;
    background: var(--paper);
    padding: 1.2rem 1.6rem;
    border-left: 4px solid var(--sage);
}

h2 {
    font-size: 1.5rem;
    font-weight: normal;
    color: var(--rust);
    border-bottom: 1px solid var(--line);
    padding-bottom: 0.35rem;
    letter-spacing: 0.01em;
}

.method ol {
    background: var(--paper);
    border: 1px solid var(--line);
    padding: 1.5rem 1.5rem 1.5rem 2.6rem;
}
.method li { margin-bottom: 0.8rem; }

.recipe {
    border-top: 4px solid var(--rust);
    padding-top: 1.5rem;
}
.recipe h2:first-of-type { border-bottom: none; }

.yield {
    font-style: italic;
    color: var(--sage);
    margin-top: -0.5rem;
    font-size: 0.95rem;
}

.recipe img {
    width: 100%;
    max-height: 22rem;
    object-fit: cover;
    border: 1px solid var(--line);
    margin: 1rem 0 1.5rem;
}

h3 { color: var(--ink); font-style: italic; font-weight: bold; margin-bottom: 0.4rem; }

.ingredients, .steps {
    background: var(--paper);
    padding: 1.2rem 1.5rem;
    border: 1px solid var(--line);
}
.ingredients { border-radius: 0 0 0 0; }
.steps { border-top: none; }

.failure {
    font-size: 0.95rem;
    background: #f3e9da;
    padding: 1rem 1.3rem;
    border: 1px dashed var(--rust);
    margin-top: 1rem;
}

.wider-wisdom p {
    border-left-color: var(--rust);
}

aside.neighbors {
    max-width: 42rem;
    margin: 0 auto 2rem;
    padding: 0 1.25rem;
}
aside.neighbors h2 { font-size: 1.2rem; }

footer.site-foot {
    background: var(--ink);
    color: var(--cream);
    text-align: center;
    padding: 2rem 1rem;
    font-size: 0.85rem;
}
footer.site-foot a { color: #d9b48a; }
footer.site-foot .fort-nav { color: var(--cream); }

@media (max-width: 520px) {
    h1 { font-size: 1.9rem; }
    .lede p, .wider-wisdom p { text-align: left; }
}