:root{
  --bg:#130e0b;
  --paper:#efe1d0;
  --paper-2:#e7d6c1;
  --text:#f3e8dc;
  --muted:#d0bea8;
  --ink:#201612;
  --line:rgba(255,255,255,.12);
  --red:#ab382f;
  --orange:#cf6f33;
  --gold:#dca352;
  --green:#6f7e43;
  --shadow:0 24px 60px rgba(0,0,0,.24);
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family: Georgia, "Times New Roman", serif;
  line-height:1.56;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
p,h1,h2,h3{margin:0}

.frame{width:min(calc(100% - 1.4rem), var(--max)); margin-inline:auto}
.narrow{max-width:760px}

.skip-link{
  position:absolute; left:-999px; top:1rem; z-index:1000;
  padding:.75rem 1rem; border-radius:999px; background:#fff; color:#111;
  font:700 .95rem/1 Arial,Helvetica,sans-serif;
}
.skip-link:focus{left:1rem}
a:focus-visible,button:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:3px;
}

.kicker{
  color:var(--orange);
  font:800 .74rem/1.2 Arial,Helvetica,sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
h1{
  font-size:clamp(3rem, 11vw, 6.3rem);
  line-height:.9;
  letter-spacing:-.05em;
  max-width:9.5ch;
}
h2{
  font-size:clamp(2rem, 6vw, 4rem);
  line-height:.95;
  letter-spacing:-.04em;
}
h3{
  font-size:1.3rem;
  letter-spacing:-.02em;
}

.site-header{
  position:sticky; top:0; z-index:50;
  background:rgba(19,14,11,.84);
  backdrop-filter:blur(12px) saturate(140%);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.site-header .frame{
  min-height:5.9rem;
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.brand{
  display:inline-flex; align-items:center; gap:1rem; color:var(--text);
}
.brand img{
  width:5.25rem; height:5.25rem; border-radius:999px; background:#ddd0c0;
}
.brand-text{display:grid; line-height:1.02}
.brand-text strong{font-size:1.2rem}
.brand-text small{
  margin-top:.25rem;
  font:700 .66rem/1.1 Arial,Helvetica,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#dccab7;
}

.site-nav{
  display:none;
  position:absolute; left:.7rem; right:.7rem; top:calc(100% + .45rem);
  padding:.8rem; border-radius:1rem;
  background:rgba(24,17,13,.99);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow);
  flex-direction:column; align-items:stretch; gap:.18rem;
  font:700 .95rem/1 Arial,Helvetica,sans-serif;
}
.site-nav.open{display:flex}
.site-nav a{color:#eadccb; padding:.8rem .55rem; border-radius:.8rem}
.nav-shop{
  min-height:44px; padding:0 1rem; display:inline-flex; align-items:center;
  border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.05);
}
.menu-toggle{
  display:inline-flex;
  width:48px; height:48px; border:1px solid var(--line); border-radius:999px;
  background:rgba(255,255,255,.04); color:var(--text);
  align-items:center; justify-content:center; gap:4px; flex-direction:column;
}
.menu-toggle span{
  width:18px; height:2px; background:currentColor; border-radius:999px;
  transition:transform .18s ease, opacity .18s ease;
}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.primary-link{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:50px; padding:0 1.25rem;
  border-radius:999px;
  background:linear-gradient(135deg, var(--gold), var(--orange) 52%, var(--red));
  color:#1f140f;
  font:800 1rem/1 Arial,Helvetica,sans-serif;
  box-shadow:0 16px 36px rgba(171,56,47,.28);
}
.secondary-link{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:50px; padding:0 1.2rem;
  border-radius:999px; border:1px solid var(--line);
  color:var(--text);
  font:800 1rem/1 Arial,Helvetica,sans-serif;
}

.plain-note{
  padding:2.4rem 0 3.6rem;
  background:var(--paper);
}
.plain-note p{
  font-size:clamp(1.4rem, 4vw, 2.35rem);
  line-height:1.14;
  letter-spacing:-.03em;
}

.chapter{
  padding:4.4rem 0;
  background:var(--paper);
}
.chapter-grid{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:1rem;
}
.chapter-label{
  padding-top:.35rem;
  font:700 .95rem/1.3 Arial,Helvetica,sans-serif;
  color:#8f6b48;
}
.chapter-label span{
  display:block;
  margin-bottom:.55rem;
  font-size:2.2rem;
  line-height:1;
  color:var(--red);
}
.chapter-body p{
  max-width:46rem;
  color:#544335;
}
.chapter-text{
  font-size:1.18rem;
}
.lines{
  margin-top:1rem;
  border-top:1px solid rgba(32,22,18,.12);
}
.line{
  display:grid;
  grid-template-columns:160px 1fr;
  gap:1rem;
  padding:1rem 0;
  border-bottom:1px solid rgba(32,22,18,.12);
}

.diptych{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:.75rem;
  background:var(--paper-2);
  padding:.75rem;
}
.diptych figure{margin:0}
.diptych img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.diptych-left img{
  aspect-ratio:4 / 3.4;
  object-position:center 42%;
}
.diptych-right img{
  aspect-ratio:4 / 3.4;
  object-position:center center;
}

.founders-block{
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:1rem;
  align-items:start;
}
.founders-stack{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.75rem;
}
.founders-stack img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.founders-stack img:first-child{
  aspect-ratio:4 / 5.2;
}
.founders-stack img:last-child{
  aspect-ratio:4 / 5.2;
}

.recipe-block{
  display:grid;
  gap:1rem;
}
.text-arrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  font:800 1rem/1 Arial,Helvetica,sans-serif;
  border-bottom:1px solid rgba(32,22,18,.28);
  padding-bottom:.12rem;
}

.dark-band{
  background:var(--bg);
  color:var(--text);
  padding:4rem 0;
}
.dark-band-grid{
  display:grid;
  grid-template-columns:1fr auto;
  gap:1rem;
}
.dark-band p{
  max-width:40rem;
  color:#eadfcf;
}
.small-note{
  margin-top:.8rem;
  font-size:.96rem;
  color:#d8c5b3;
}
.dark-band-links{
  display:grid;
  gap:1rem;
  align-content:start;
}

.site-footer{
  background:var(--paper);
  padding:3.6rem 0 5.6rem;
}
.footer-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}
.footer-grid p{
  color:#544335;
}
.footer-place{
  align-self:end;
}

.mobile-actions{display:none}

@media (max-width: 920px){
  .chapter-grid,
  .founders-block,
  .footer-grid,
  .dark-band-grid{
    grid-template-columns:1fr;
  }
  .chapter-label{
    padding-top:0;
  }
}

@media (max-width: 760px){
  .frame{width:min(calc(100% - 1rem), var(--max))}
  .site-header .frame{min-height:5.25rem}
  .brand img{width:4.5rem; height:4.5rem}
  .brand-text strong{font-size:1rem}
  .brand-text small{font-size:.58rem; letter-spacing:.1em}
  .opening-photo img{height:44svh}
  .opening-copy{padding:1.5rem 0 2.2rem}
  .opening-copy p{font-size:1rem}
  .opening-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .chapter{padding:3.6rem 0}
  .line{
    grid-template-columns:1fr;
    gap:.35rem;
  }
  .diptych{
    grid-template-columns:1fr;
  }
  .diptych-left img,
  .diptych-right img{
    aspect-ratio:4 / 3.1;
  }
  .single-image img{
    aspect-ratio:4 / 3.1;
  }
  .founders-stack{
    grid-template-columns:1fr;
  }
  .founders-stack img:first-child,
  .founders-stack img:last-child{
    aspect-ratio:4 / 3.2;
    object-position:center 35%;
  }
  .primary-link,
  .secondary-link{
    width:100%;
  }
  .mobile-actions{
    position:sticky;
    bottom:0;
    z-index:45;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.75rem;
    padding:.85rem .85rem calc(.85rem + env(safe-area-inset-bottom));
    background:rgba(19,14,11,.97);
    backdrop-filter:blur(10px);
    border-top:1px solid rgba(255,255,255,.08);
  }
  .mobile-actions a{
    min-height:48px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font:800 1rem/1 Arial,Helvetica,sans-serif;
  }
  .mobile-actions a:first-child{
    background:linear-gradient(135deg, var(--gold), var(--orange) 52%, var(--red));
    color:#1f140f;
  }
  .mobile-actions a:last-child{
    color:var(--text);
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.05);
  }
}

.recipe-links-cards{
  gap:.85rem;
}
.recipe-card{
  display:grid;
  grid-template-columns:108px 1fr;
  gap:.9rem;
  align-items:center;
  padding:.7rem 0;
  border-top:1px solid rgba(32,22,18,.12);
}
.recipe-card:last-of-type{
  border-bottom:1px solid rgba(32,22,18,.12);
}
.recipe-card img{
  width:108px;
  height:84px;
  object-fit:cover;
  border-radius:10px;
  box-shadow:var(--shadow);
}
.recipe-card-copy{
  display:grid;
  gap:.18rem;
}
.recipe-card-copy strong{
  font-size:1.08rem;
  letter-spacing:-.02em;
}
.recipe-card-copy > span:not(.text-arrow){
  color:#544335;
}
.recipe-more-link{
  margin-top:.35rem;
  width:max-content;
}
@media (max-width:760px){
  .recipe-card{
    grid-template-columns:88px 1fr;
    gap:.75rem;
  }
  .recipe-card img{
    width:88px;
    height:72px;
  }
  .recipe-card-copy strong{
    font-size:1rem;
  }
}

.photo-caption{
  margin-top:.4rem;
  font:700 .8rem/1.2 Arial,Helvetica,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#8f6b48;
}

.site-header .frame{position:relative}
.opening-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1.4rem;
}
.opening-actions .secondary-link{
  min-height:46px;
}
@media (max-width: 760px){
  .opening-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .opening-actions .primary-link{
    grid-column:1 / -1;
  }
}

.hero{
  position:relative;
  min-height:min(92svh, 860px);
  display:flex;
  align-items:flex-end;
  background:
    linear-gradient(180deg, rgba(20,11,9,.30) 0%, rgba(20,11,9,.50) 45%, rgba(20,11,9,.82) 100%),
    linear-gradient(90deg, rgba(20,11,9,.74) 0%, rgba(20,11,9,.34) 56%, rgba(20,11,9,.16) 100%),
    radial-gradient(circle at 82% 18%, rgba(207,106,45,.16), transparent 24%),
    url("assets/hero-smoke.webp") center center / cover no-repeat;
  color:var(--text);
}
.hero-content{
  padding:7.2rem 0 3.4rem;
}
.hero .kicker{
  color:var(--gold);
}
.hero h1{
  max-width:10ch;
}
.hero-copy{
  margin-top:1rem;
  max-width:38rem;
  color:#ebdfd0;
  font-size:1.08rem;
}

@media (max-width: 760px){
  .hero{
    min-height:76svh;
    align-items:flex-end;
    background:
      linear-gradient(180deg, rgba(20,11,9,.28) 0%, rgba(20,11,9,.46) 45%, rgba(20,11,9,.84) 100%),
      linear-gradient(90deg, rgba(20,11,9,.72) 0%, rgba(20,11,9,.28) 60%, rgba(20,11,9,.10) 100%),
      radial-gradient(circle at 82% 18%, rgba(207,106,45,.14), transparent 24%),
      url("assets/hero-smoke.webp") center center / cover no-repeat;
  }
  .hero-content{
    padding:6.1rem 0 2.8rem;
  }
  .hero h1{
    max-width:11ch;
  }
  .hero-copy{
    font-size:1rem;
  }
}

/* Final polish: typography + work pair */
body{
  font-family:"Inter", Arial, Helvetica, sans-serif;
}
h1,h2,h3,
.brand-text strong,
.opening-copy h1,
.chapter-body h2,
.footer-grid h2{
  font-family:"Fraunces", Georgia, "Times New Roman", serif;
}
h1{ letter-spacing:-0.02em; }
h2,h3{ letter-spacing:-0.02em; }

.brand-text strong,
.kicker,
.site-nav,
.nav-shop,
.menu-toggle,
.primary-link,
.secondary-link,
.text-arrow,
.chapter-label,
.brand-text small{
  font-family:"Inter", Arial, Helvetica, sans-serif;
}

.work-pair{
  background:var(--paper-2);
}
.work-pair figure{
  position:relative;
}
.work-pair figcaption{
  position:absolute;
  left:1rem;
  bottom:1rem;
  padding:.45rem .65rem;
  border-radius:999px;
  background:rgba(19,14,11,.72);
  color:#f3e8dc;
  font:700 .74rem/1.1 "Inter", Arial, Helvetica, sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.work-pair .diptych-left img{
  aspect-ratio:4 / 3.55;
  object-position:center 46%;
}
.work-pair .diptych-right img{
  aspect-ratio:4 / 3.55;
  object-position:center 54%;
}

img{
  height:auto;
}

/* Slightly calmer hero CTA layout */
.opening-actions{
  align-items:center;
}

@media (max-width:760px){
  .work-pair figcaption{
    left:.75rem;
    bottom:.75rem;
    font-size:.68rem;
  }
}

/* Stable fixes */
.hero .kicker{ color: var(--gold); }

.pepper-gallery-band{
  background: var(--paper-2);
  padding: .75rem 0;
}
.pepper-gallery-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:.75rem;
}
.pepper-gallery-card{
  margin:0;
  position:relative;
}
.pepper-gallery-card img{
  width:100%;
  aspect-ratio: 4 / 3.4;
  object-fit:cover;
}
.pepper-gallery-card:nth-child(1) img{ object-position:center 44%; }
.pepper-gallery-card:nth-child(2) img{ object-position:center center; }
.pepper-gallery-card:nth-child(3) img{ object-position:center center; }
.pepper-gallery-card figcaption{
  position:absolute;
  left:1rem;
  bottom:1rem;
  padding:.45rem .7rem;
  border-radius:999px;
  background:rgba(19,14,11,.74);
  color:#f3e8dc;
  font:700 .74rem/1.1 "Inter", Arial, Helvetica, sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.contact-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1rem;
}
.contact-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 1rem;
  border-radius:999px;
  background:rgba(32,22,18,.06);
  border:1px solid rgba(32,22,18,.12);
  color:#201612;
  font:800 .95rem/1 "Inter", Arial, Helvetica, sans-serif;
}
.contact-button:hover{
  border-color:rgba(32,22,18,.22);
}

.recipe-links{
  display:grid;
  gap:.85rem;
  margin-top:1rem;
}
.recipe-links-cards{
  gap:.85rem;
}
.recipe-card{
  display:grid;
  grid-template-columns:108px 1fr;
  gap:.9rem;
  align-items:center;
  padding:.7rem 0;
  border-top:1px solid rgba(32,22,18,.12);
}
.recipe-card:last-of-type{
  border-bottom:1px solid rgba(32,22,18,.12);
}
.recipe-card img{
  width:108px;
  height:84px;
  object-fit:cover;
  border-radius:10px;
  box-shadow:var(--shadow);
}
.recipe-card-copy{
  display:grid;
  gap:.18rem;
}
.recipe-card-copy strong{
  font-size:1.08rem;
  letter-spacing:-.02em;
}
.recipe-card-copy > span:not(.text-arrow){
  color:#544335;
}
.recipe-more-link{
  margin-top:.35rem;
  width:max-content;
}

@media (max-width: 920px){
  .pepper-gallery-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px){
  .pepper-gallery-card img{
    aspect-ratio:4 / 3.1;
  }
  .pepper-gallery-card figcaption{
    left:.75rem;
    bottom:.75rem;
    font-size:.68rem;
  }
  .recipe-card{
    grid-template-columns:88px 1fr;
    gap:.75rem;
  }
  .recipe-card img{
    width:88px;
    height:72px;
  }
  .recipe-card-copy strong{
    font-size:1rem;
  }
  .contact-actions{
    display:grid;
    grid-template-columns:1fr;
  }
}
