/* Baked in Lyons — high-altitude recipe blog · Colorado desert palette */

:root{
  --cream:#f5e8cf;     /* warm parchment / sand */
  --paper:#fdf6e7;     /* card cream */
  --ink:#331d10;       /* espresso brown (logo outline) */
  --ink-soft:#5c452e;
  --muted:#96805c;
  --line:#e8d6b2;
  --rust:#b8531f;      /* terracotta mesa rock */
  --rust-dk:#8d3b12;
  --olive:#5f6a35;     /* pine / juniper green */
  --ochre:#d99a3c;     /* cinnamon-roll sun */
  --radius:14px;
  --shadow:0 10px 30px rgba(51,29,16,.12);
  --shadow-sm:0 4px 14px rgba(51,29,16,.09);
  --maxw:1160px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  color:var(--ink);
  background:var(--cream);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:'Fraunces','Georgia',serif;font-weight:600;line-height:1.16;letter-spacing:-.01em;color:var(--ink)}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 22px}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:.98rem;padding:12px 24px;border:2px solid transparent;border-radius:999px;cursor:pointer;transition:.18s}
.btn-rust{background:var(--rust);color:#fff}
.btn-rust:hover{background:var(--rust-dk);transform:translateY(-1px)}

/* ---------- header ---------- */
.site-head{position:sticky;top:0;z-index:60;background:rgba(250,243,227,.95);backdrop-filter:blur(9px);border-bottom:1px solid var(--line)}
.head-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:11px 22px}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.brand .logo{width:52px;height:52px;flex:none;border-radius:50%;object-fit:cover;box-shadow:var(--shadow-sm)}
.wordmark{display:flex;flex-direction:column;line-height:1}
.wordmark b{font-family:'Fraunces',serif;font-weight:600;font-size:1.16rem;color:var(--ink);letter-spacing:-.01em}
.wordmark i{font-family:'Fraunces',serif;font-style:italic;font-weight:500;font-size:1.24rem;color:var(--rust);margin-top:1px}

.catnav{display:flex;align-items:flex-start;gap:26px}
.catnav a{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:.74rem;font-weight:600;letter-spacing:.02em;color:var(--ink-soft);text-transform:uppercase}
.catnav a .ci{width:30px;height:30px;color:var(--rust);transition:.16s}
.catnav a .ci svg{width:100%;height:100%}
.catnav a:hover{color:var(--rust)}
.catnav a:hover .ci{transform:translateY(-2px)}

.head-actions{display:flex;align-items:center;gap:8px;flex:none}
.icon-btn{width:40px;height:40px;border-radius:50%;border:none;background:var(--cream);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.16s}
.icon-btn svg{width:19px;height:19px}
.icon-btn:hover{background:var(--line)}
.menu-btn{display:none}
@media(max-width:940px){.catnav{display:none}.menu-btn{display:flex}}

/* ---------- sections & panels ---------- */
section.band{padding:26px 0}
section.band:first-of-type{padding-top:34px}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow-sm);padding:26px}
@media(max-width:560px){.panel{padding:18px}}

/* ---------- featured recipe grid ---------- */
.recipe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.rcard{display:block;border-radius:var(--radius);overflow:hidden;transition:.18s}
.rcard:hover{transform:translateY(-3px)}
.rthumb{border-radius:var(--radius);overflow:hidden;background:var(--cream);aspect-ratio:1/1;box-shadow:var(--shadow-sm)}
.rthumb img{width:100%;height:100%;object-fit:cover;transition:.4s}
.rcard:hover .rthumb img{transform:scale(1.05)}
.rbody{padding:14px 4px 4px}
.rtag{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--olive);margin-bottom:6px}
.rcard h3{font-size:1.18rem;line-height:1.22}
@media(max-width:860px){.recipe-grid{grid-template-columns:1fr 1fr;gap:18px}}
@media(max-width:460px){.recipe-grid{grid-template-columns:1fr 1fr;gap:14px}.rcard h3{font-size:1rem}}

/* ---------- latest ---------- */
.latest-head{display:flex;align-items:baseline;gap:16px;border-bottom:2px solid var(--ink);padding-bottom:12px;margin-bottom:24px}
.latest-head h2{font-size:1.5rem}
.viewmore{font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rust)}
.viewmore:hover{color:var(--rust-dk)}
.latest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mini{display:flex;align-items:center;gap:14px}
.mthumb{width:96px;height:96px;flex:none;border-radius:12px;overflow:hidden;background:var(--cream);box-shadow:var(--shadow-sm)}
.mthumb img{width:100%;height:100%;object-fit:cover;transition:.4s}
.mini:hover .mthumb img{transform:scale(1.06)}
.mini h3{font-size:1.02rem;line-height:1.25}
.mini:hover h3{color:var(--rust)}
@media(max-width:860px){.latest-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.latest-grid{grid-template-columns:1fr}}

/* ---------- subscribe (slim) ---------- */
.subscribe{max-width:600px;margin:8px auto 0;text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);padding:36px 30px;box-shadow:var(--shadow-sm)}
.subscribe h2{font-size:clamp(1.5rem,2.6vw,1.9rem);margin-bottom:8px}
.subscribe > p{color:var(--ink-soft);margin-bottom:20px}
.subscribe form{display:flex;gap:10px;max-width:440px;margin:0 auto;flex-wrap:wrap;justify-content:center}
.subscribe input{flex:1;min-width:220px;padding:12px 16px;border:2px solid var(--line);border-radius:999px;font-family:inherit;font-size:1rem;background:var(--cream)}
.subscribe input:focus{outline:none;border-color:var(--rust)}
.subscribe small{display:block;margin-top:13px;color:var(--muted);font-size:.8rem}

/* ---------- footer (mountain accent) ---------- */
.foot{position:relative;color:#f4e9df;margin-top:20px;background:var(--ink);overflow:hidden}
.foot-bg{position:absolute;inset:0;background:url('hero-mountains.jpg') center 42%/cover no-repeat;opacity:.22}
.foot::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(43,33,24,.86),rgba(43,33,24,.94))}
.foot-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding-top:46px;padding-bottom:38px}
.foot .brand .logo{box-shadow:0 4px 16px rgba(0,0,0,.4)}
.foot .wordmark b{color:#fff}
.foot .wordmark i{color:#ffcf9e}
.foot-tag{color:#d8cbbc;font-size:.92rem;max-width:44ch}
.foot-links{display:flex;gap:24px;flex-wrap:wrap;justify-content:center}
.foot-links a{color:#e7ddd0;font-size:.92rem;font-weight:500}
.foot-links a:hover{color:var(--ochre)}
.foot-bottom{font-size:.82rem;color:#b6a794}

/* ---------- misc ---------- */
.center{text-align:center}
.note{font-size:.82rem;color:var(--muted);font-style:italic;margin-top:18px}
