/* ═══════════════════════════════════════════════════════════════
   NOVRA FOODS — css/pages/provenance.css
═══════════════════════════════════════════════════════════════ */

.prov-hero{
  padding-top:9rem;
  padding-bottom:var(--s-6);
}
.prov-hero__inner{
  display:flex; flex-direction:column;
  gap:var(--s-3);
  max-width:48rem;
}
.prov-hero__title{
  font-family:var(--font-display);
  font-weight:var(--w-light);
  font-size:clamp(var(--t-40), 6.5vw, var(--t-80));
  line-height:1.02;
  letter-spacing:-0.025em;
  color:var(--ink-inverse);
  margin:var(--s-1) 0;
}
.prov-hero__title em{ font-style:italic; color:var(--accent); }
.prov-hero__sub{
  font-family:var(--font-display);
  font-style:italic;
  font-size:clamp(var(--t-18), 1.5vw, var(--t-21));
  line-height:1.75;
  color:var(--ink-muted-inv);
  max-width:48ch;
}


.ingredients{
  padding-block:var(--s-6);
}
.ingredient{
  display:grid;
  grid-template-columns:minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap:clamp(var(--s-4), 6vw, var(--s-7));
  align-items:start;
  padding-block:clamp(var(--s-5), 8vw, var(--s-7));
  padding-inline:var(--gutter);
  max-width:calc(var(--max-w) + (var(--gutter) * 2));
  margin-inline:auto;
  border-top:1px solid var(--rule);
}
.ingredient:last-of-type{ border-bottom:1px solid var(--rule); }

.ingredient--flip{
  grid-template-columns:minmax(0, 1.05fr) minmax(0, 0.95fr);
}
.ingredient--flip .ingredient__visual{ order:2; }

@media(max-width:840px){
  .ingredient,
  .ingredient--flip{
    grid-template-columns:1fr;
    gap:var(--s-3);
  }
  .ingredient--flip .ingredient__visual{ order:0; }
}

.ingredient__visual{
  position:relative;
  aspect-ratio:4/5;
  overflow:hidden;
  background:var(--cream-300);
  margin:0;
}
.ingredient__visual img{
  width:100%; height:100%;
  object-fit:cover;
}

.ingredient__body{
  display:flex; flex-direction:column;
  gap:var(--s-2);
  padding-top:var(--s-2);
}
.ingredient__coord{
  font-family:var(--font-mono);
  font-size:var(--t-12);
  letter-spacing:0.1em;
  color:var(--ink-faint);
}
.ingredient__name{
  font-family:var(--font-display);
  font-weight:var(--w-light);
  font-size:clamp(var(--t-32), 4.5vw, var(--t-64));
  line-height:0.98;
  letter-spacing:-0.025em;
  margin:0;
}
.ingredient__name em{ font-style:italic; color:var(--accent-deep); }
.ingredient__origin{
  font-family:var(--font-body);
  font-size:var(--t-12);
  font-weight:var(--w-medium);
  letter-spacing:var(--track-eyebrow);
  text-transform:uppercase;
  color:var(--ink-muted);
  margin-bottom:var(--s-2);
}
.ingredient__body > p{
  font-family:var(--font-display);
  font-size:clamp(var(--t-16), 1.4vw, var(--t-18));
  font-style:italic;
  line-height:1.78;
  color:var(--ink);
}
.ingredient__used{
  margin-top:var(--s-2);
  font-family:var(--font-body) !important;
  font-style:normal !important;
  font-size:var(--t-12) !important;
  letter-spacing:var(--track-eyebrow);
  text-transform:uppercase;
  color:var(--ink-muted);
  padding-top:var(--s-2);
  border-top:1px solid var(--rule);
}
.ingredient__used a{
  color:var(--accent-deep);
  border-bottom:1px solid currentColor;
  padding-bottom:1px;
}


.prov-band{
  text-align:center;
}
.prov-band__quote{
  font-family:var(--font-display);
  font-weight:var(--w-light);
  font-style:italic;
  font-size:clamp(var(--t-26), 4vw, var(--t-52));
  line-height:1.2;
  letter-spacing:-0.015em;
  color:var(--ink-inverse);
}
.prov-band__quote em{ color:var(--accent); }
.prov-band__attr{
  margin-top:var(--s-4);
  font-family:var(--font-body);
  font-size:var(--t-12);
  letter-spacing:var(--track-eyebrow);
  text-transform:uppercase;
  color:var(--ink-faint-inv);
}
