.zg-content-hero { padding: clamp(3.5rem,7vw,7rem) 0; overflow: hidden; background: linear-gradient(135deg,var(--zg-cream-100),rgba(215,223,201,.58)); }
.zg-content-hero--compact { padding-block: clamp(3rem,6vw,5rem); }
.zg-content-hero__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.72fr); align-items:center; gap:clamp(2rem,6vw,6rem); }
.zg-content-hero h1,.zg-content-hero--compact h1 { max-width:850px; font-size:clamp(2.65rem,6vw,5.4rem); }
.zg-content-hero p { max-width:680px; color:var(--zg-muted); font-size:clamp(1rem,1.5vw,1.2rem); }
.zg-content-pack { max-width:390px; margin-inline:auto; border-radius:45% 55% 50% 50%; background:radial-gradient(circle,rgba(255,255,255,.9),transparent 62%); filter:drop-shadow(0 30px 35px rgba(16,37,27,.18)); }
.zg-content-pack img { width:100%; aspect-ratio:1; padding:.6rem; object-fit:contain; border-radius:28px; }
.zg-inline-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.5rem; }
.zg-editorial-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; align-items:stretch; }
.zg-editorial-grid > article { padding:clamp(1.5rem,4vw,3.2rem); }
.zg-editorial-card { background:var(--zg-forest-900); color:#fff; }
.zg-editorial-card p { color:rgba(255,255,255,.72); }
.zg-value-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:1.25rem; }
.zg-value-grid article { padding:1.5rem; }
.zg-value-grid p,.zg-fulfilment-grid p { color:var(--zg-muted); margin-bottom:0; }
.zg-safety-notice { margin-top:1.25rem; padding:1.5rem; border-left:5px solid var(--zg-gold-400); background:var(--zg-cream-100); }
.zg-safety-notice p { margin:.4rem 0 0; color:var(--zg-muted); }
.zg-fulfilment-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:1.25rem; }
.zg-fulfilment-grid article { padding:1.75rem; }
.zg-faq-list { display:grid; gap:.75rem; }
.zg-faq-list details { padding:0 1.25rem; }
.zg-faq-list summary { padding:1.2rem 0; cursor:pointer; color:var(--zg-forest-900); font-weight:850; }
.zg-faq-list p { padding-bottom:1.2rem; color:var(--zg-muted); }
.zg-contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:1.25rem; }
.zg-contact-details,.zg-contact-form,.zg-policy-card { padding:clamp(1.5rem,4vw,3rem); }
.zg-contact-details dl { display:grid; gap:1rem; }
.zg-contact-details dl div { padding-bottom:1rem; border-bottom:1px solid var(--zg-border); }
.zg-contact-details dt { color:var(--zg-muted); font-size:.76rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.zg-contact-details dd { margin:.2rem 0 0; font-weight:750; }
.zg-contact-form { display:grid; gap:1rem; }
.zg-policy-card { max-width:850px; margin-inline:auto; }
.zg-policy-card p { color:var(--zg-muted); font-size:1.03rem; }
.zg-policy-card hr { border:0; border-top:1px solid var(--zg-border); margin:2rem 0; }
.zg-recipe-grid,.zg-review-grid,.zg-offer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.zg-recipe-card { overflow:hidden; }
.zg-recipe-card__image { height:clamp(185px,22vw,245px); background:var(--zg-cream-200); overflow:hidden; }
.zg-recipe-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .5s var(--zg-ease); }
.zg-recipe-card:hover img { transform:scale(1.04); }
.zg-recipe-card__body { padding:1.25rem; }
.zg-recipe-card__body h2 { margin-top:.8rem; font-size:1.55rem; }
.zg-recipe-card__body p { color:var(--zg-muted); }
.zg-recipe-card__body > div { display:flex; gap:1rem; color:var(--zg-olive-700); font-size:.8rem; font-weight:750; }
.zg-recipe-detail { display:grid; grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr); gap:clamp(2rem,6vw,5rem); align-items:start; }
.zg-recipe-detail__image img { width:100%; border-radius:var(--zg-radius-lg); box-shadow:var(--zg-shadow-md); }
.zg-recipe-lead { color:var(--zg-muted); font-size:1.1rem; }
.zg-recipe-meta { display:flex; gap:1rem; margin:1rem 0; color:var(--zg-olive-700); font-weight:800; }
.zg-recipe-columns { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin-top:2rem; }
.zg-recipe-columns li { margin-bottom:.6rem; }
.zg-review-summary { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:1.4rem; margin-bottom:1rem; }
.zg-review-summary > div { display:flex; align-items:center; gap:1rem; }
.zg-review-summary strong { font-size:2.4rem; }
.zg-review-summary span,.zg-review-card__top > span:first-child { color:#94772f; letter-spacing:.08em; }
.zg-review-summary p { margin:0; color:var(--zg-muted); }
.zg-review-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.zg-review-card { padding:1.4rem; }
.zg-review-card__top { display:flex; justify-content:space-between; gap:1rem; }
.zg-review-card h2 { margin-top:1rem; font-size:1.5rem; }
.zg-review-card p { color:var(--zg-muted); }
.zg-review-card footer { display:grid; gap:.1rem; padding-top:1rem; border-top:1px solid var(--zg-border); }
.zg-review-card footer span { color:var(--zg-muted); font-size:.82rem; }
.zg-offer-card { padding:1.5rem; }
.zg-offer-card p { color:var(--zg-muted); }
.zg-offer-value { color:var(--zg-forest-900); font-size:2.2rem; font-weight:900; }
.zg-offer-value span { font-size:1rem; }
.zg-offer-card dl { display:grid; gap:.5rem; margin:1.25rem 0; }
.zg-offer-card dl div { display:flex; justify-content:space-between; gap:1rem; }
.zg-offer-card dt { color:var(--zg-muted); }
.zg-offer-card dd { margin:0; font-weight:800; }
.zg-offer-card code { padding:.3rem .5rem; border-radius:8px; background:var(--zg-cream-200); }
.zg-field { display:grid; gap:.4rem; }
.zg-field > span { color:var(--zg-forest-900); font-size:.82rem; font-weight:800; }
.zg-field input,.zg-field textarea,.zg-field select { width:100%; padding:.8rem .9rem; border:1px solid var(--zg-border-strong); border-radius:12px; background:#fff; color:var(--zg-ink); }
@media(max-width:900px){.zg-content-hero__grid,.zg-recipe-detail,.zg-contact-grid{grid-template-columns:1fr}.zg-content-pack{max-width:310px}.zg-value-grid,.zg-recipe-grid,.zg-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.zg-content-pack{max-width:250px}.zg-recipe-card__image{height:190px}.zg-editorial-grid,.zg-value-grid,.zg-fulfilment-grid,.zg-recipe-grid,.zg-review-grid,.zg-offer-grid,.zg-recipe-columns{grid-template-columns:1fr}.zg-content-hero{padding-top:3rem}.zg-review-summary{align-items:flex-start;flex-direction:column}}

/* Phase 4.1: restrained editorial media sizing */
.zg-content-pack { max-width: 520px; justify-self: center; }
.zg-content-pack img { max-height: 480px; object-fit: contain; }
.zg-recipe-detail__image { max-width: 680px; justify-self: center; }
.zg-recipe-detail__image img { max-height: 560px; object-fit: cover; }
@media (max-width: 760px) {
  .zg-content-pack { max-width: 390px; }
  .zg-content-pack img { max-height: 360px; }
  .zg-recipe-detail__image img { max-height: 420px; }
}

/* Phase 16: premium origin story */
.zg-about-story { position: relative; overflow: hidden; }
.zg-about-story::before {
  position: absolute;
  inset: 0 auto auto 0;
  width: min(42vw,520px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle,rgba(192,211,157,.2),transparent 68%);
  transform: translate(-35%,-38%);
  content: '';
  pointer-events: none;
}
.zg-origin-story { position: relative; border-radius: var(--zg-radius-lg); background: linear-gradient(145deg,#fffdf8,#f4f0e5); box-shadow: var(--zg-shadow-sm); }
.zg-origin-story p { color: var(--zg-muted); font-size: clamp(1rem,1.4vw,1.15rem); }
.zg-origin-story blockquote {
  position: relative;
  margin: 1.8rem 0 0;
  padding: 1.15rem 1.25rem 1.15rem 1.45rem;
  border-left: 4px solid var(--zg-olive-600);
  border-radius: 0 18px 18px 0;
  background: rgba(216,231,189,.45);
  color: var(--zg-forest-900);
  font-family: var(--zg-font-display);
  font-size: clamp(1.05rem,1.8vw,1.35rem);
  line-height: 1.35;
}
.zg-editorial-card .zg-btn { margin-top: 1rem; border-color: rgba(255,255,255,.3); color: #fff; }
.zg-editorial-card .zg-btn:hover { background: rgba(255,255,255,.1); color: #fff; }
