/* ==========================================================
   EATWELL101 BRAND SYSTEM v0.1
   Natural · Reassuring · Simple · Human · Desirable

   Core principle:
   FOOD BRINGS THE LIFE. DESIGN BRINGS THE CALM.
   ========================================================== */

:root {
  --ew-white: #ffffff;
  --ew-warm-white: #faf9f6;
  --ew-ink: #242521;
  --ew-muted: #6f726c;
  --ew-soft: #8b8d87;

  --ew-green: #183a2a;
  --ew-green-hover: #214b37;
  --ew-green-muted: #2F5F4A82;

  /* Large, warmer brand surfaces */
  --ew-green-warm: #263d32;

  --ew-footer-warm-dark: #514A43;



  --ew-stone: #e8e5de;
  --ew-border: #deddd8;
  --ew-border-soft: #efeee9;

  --ew-font-sans: inherit;
  --ew-font-serif: Georgia, "Times New Roman", serif;

  --ew-space-1: 8px;
  --ew-space-2: 16px;
  --ew-space-3: 24px;
  --ew-space-4: 32px;
  --ew-space-5: 48px;
  --ew-space-6: 64px;
  --ew-space-7: 80px;
  --ew-space-8: 96px;

  --ew-radius-sm: 4px;
  --ew-radius: 5px;
  --ew-radius-lg: 8px;
}

.ew-brand-display {
  margin: 0;
  color: var(--ew-ink);
  font-family: var(--ew-font-serif);
  font-size: clamp(48px, 6vw, 80px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.035em;
}

.ew-brand-heading {
  margin: 0;
  color: var(--ew-ink);
  font-family: var(--ew-font-serif);
  font-size: clamp(30px, 3vw, 42px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.025em;
}

.ew-ui-heading {
  margin: 0;
  color: var(--ew-ink);
  font-family: var(--ew-font-sans);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.02em;
}

.ew-recipe-title {
  margin: 0;
  color: var(--ew-ink);
  font-family: var(--ew-font-sans);
  font-size: 23px;
  font-weight: 650;
  line-height: 1.17;
  letter-spacing: -.018em;
}

.ew-meta {
  color: var(--ew-soft);
  font-family: var(--ew-font-sans);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
}

.ew-eyebrow {
  margin: 0 0 var(--ew-space-2);
  color: var(--ew-green);
  font-family: var(--ew-font-sans);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ew-btn-primary,
.ew-btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 20px;
  border-radius: var(--ew-radius);
  font-family: var(--ew-font-sans);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none !important;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}

.ew-btn-primary {
  border: 1px solid var(--ew-green);
  background: var(--ew-green);
  color: #fff !important;
}

.ew-btn-primary:hover {
  border-color: var(--ew-green-hover);
  background: var(--ew-green-hover);
}

.ew-btn-secondary {
  border: 1px solid var(--ew-border);
  background: var(--ew-white);
  color: var(--ew-ink) !important;
}

.ew-btn-secondary:hover {
  border-color: #c9c7c0;
}

.ew-link {
  color: var(--ew-green) !important;
  font-weight: 650;
  text-decoration: none !important;
}

.ew-surface-white {
  background: var(--ew-white);
}

.ew-surface-warm {
  background: var(--ew-warm-white);
}

.ew-divider {
  border-top: 1px solid var(--ew-border-soft);
}

.ew-food-image {
  overflow: hidden;
  border-radius: var(--ew-radius-sm);
  background: #f3f1ec;
}

.ew-food-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
