/* Foodfulness landing — design tokens */
:root {
  --orange: #F97415;
  --orange-deep: #ED7412;
  --orange-light: #FFA629;
  --orange-soft: #FFE5CC;
  --orange-tint: #FFF3E6;

  --navy: #1D2740;
  --navy-2: #344163;
  --navy-3: #4D5D87;
  --navy-4: #7B91C9;

  --periwinkle: #A8BCED;
  --periwinkle-soft: #C7D3F4;
  --sky: #D7E1FC;
  --sky-light: #F5F9FF;
  --white: #FFFFFF;

  --shadow-sm: 0 1px 2px rgba(29,39,64,.18);
  --shadow-md: 0 6px 18px rgba(29,39,64,.14);
  --shadow-lg: 0 14px 40px rgba(29,39,64,.18);
  --btn-shadow: 0 2px 0 var(--orange-deep);

  --r-sm: 8px;
  --r-md: 14px;
  --r-lg: 22px;
  --r-xl: 32px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: "Inclusive Sans", system-ui, sans-serif;
  color: var(--navy);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.bellota { font-family: "Bellota", system-ui, serif; }

img { max-width: 100%; display: block; }

/* shared button styles */
.ff-btn {
  display: inline-flex; align-items: center; gap: .55rem;
  background: var(--orange);
  color: var(--white);
  font-family: "Inclusive Sans", sans-serif;
  font-weight: 600;
  border: 0;
  padding: .85rem 1.4rem;
  border-radius: 8px;
  box-shadow: var(--btn-shadow);
  cursor: pointer;
  text-decoration: none;
  font-size: 1rem;
  transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}
.ff-btn:hover { background: var(--orange-deep); }
.ff-btn:active { transform: translateY(2px); box-shadow: 0 0 0 var(--orange-deep); }
.ff-btn.ghost {
  background: transparent;
  color: var(--navy);
  border: 1.5px solid var(--navy-2);
  box-shadow: none;
}
.ff-btn.ghost:hover { background: var(--white); border-color: var(--orange); color: var(--orange-deep); }
.ff-btn.lg { padding: 1.05rem 1.7rem; font-size: 1.05rem; }

/* eyebrow pill */
.ff-eyebrow {
  display: inline-flex; align-items: center; gap: .5rem;
  background: var(--white);
  color: var(--navy-2);
  font-size: .82rem; font-weight: 600;
  padding: .45rem .85rem;
  border-radius: 999px;
  box-shadow: var(--shadow-sm);
  letter-spacing: .04em;
  text-transform: uppercase;
}
.ff-eyebrow .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--orange); }

/* reveal-on-scroll */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s ease, transform .8s ease; }
.reveal.in { opacity: 1; transform: none; }

/* nice scrollbar */
::-webkit-scrollbar { width: 12px; }
::-webkit-scrollbar-track { background: var(--sky-light); }
::-webkit-scrollbar-thumb { background: linear-gradient(var(--orange-light), var(--orange)); border-radius: 6px; border: 2px solid var(--sky-light); }
