:root {
  /* THEMATIC CONFIGURATION - NUTRITION & CARDIO PREVENTIVE */
  --nutri-flow-bg: #FAFAF9;       /* Soft stone-cream light background */
  --nutri-surface-clean: #FFFFFF; /* Clean card white */
  --nutri-pulse-accent: #BE123C;  /* Soft active heart crimson/rose */
  --nutri-leaf-emerald: #065F46;  /* Deep rich food-leaf green */
  --nutri-leaf-hover: #047857;
  --nutri-ink-deep: #1F2937;      /* High contrast slate/charcoal */
  --nutri-ink-muted: #6B7280;     /* Balanced slate gray */
  --nutri-soft-margin: #E5E7EB;   /* Divider light gray */
  
  /* FONTS */
  --font-display: 'Montserrat', sans-serif;
  --font-body: 'Inter', sans-serif;
}

/* Base scroll driven layout features */
html {
  scroll-behavior: smooth;
}

/* Page Scroll Progress Tracker */
.nutri-scroll-tracker {
  position: fixed;
  top: 0;
  left: 0;
  height: 4px;
  width: 0%;
  z-index: 100;
  animation: nutri-progress-glow linear;
  animation-timeline: scroll();
}

@keyframes nutri-progress-glow {
  to { width: 100%; }
}

/* Scroll Reveal animations (Pure CSS) */
@keyframes nutri-slide-up {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

.reveal {
  animation: nutri-slide-up 0.8s ease-out both;
  animation-timeline: view();
  animation-range: entry 0% entry 35%;
}

/* Clean UI shadow and state transitions */
.nutri-wellness-capsule,
.nutri-stat-capsule,
.nutri-patron-voice,
form {
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.03), 0 8px 10px -6px rgba(0, 0, 0, 0.03);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease;
}

.nutri-wellness-capsule:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.06), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

/* Pure CSS hamburger menu for navigation */
.nutri-navigation-deck {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(8px);
}

.nutri-hamburger-trigger {
  width: 30px;
  height: 20px;
}

.nutri-hamburger-trigger span {
  display: block;
  height: 3px;
  width: 100%;
  border-radius: 9px;
  transition: all 0.3s ease;
}

/* Responsive Navigation Hack (CSS-only) */
#nutri-mobile-toggle:checked ~ .nutri-index-deck {
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: var(--nutri-surface-clean);
  border-top: 1px solid var(--nutri-soft-margin);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
  padding: 1.5rem;
}

#nutri-mobile-toggle:checked ~ .nutri-index-deck ul {
  flex-direction: column;
  gap: 1rem;
}

@media (min-width: 768px) {
  .nutri-index-deck {
    display: flex !important;
  }
  .nutri-index-deck ul {
    gap: 1.5rem;
  }
}

/* Active links custom hover */
.nutri-index-deck a {
  font-weight: 500;
  font-size: 0.95rem;
  transition: color 0.2s ease;
  padding: 0.5rem 0.75rem;
}

.nutri-index-deck a:hover {
  color: var(--nutri-pulse-accent) !important;
}

/* Decorative SVGs and elements */
.nutri-logo-holder img {
  filter: none !important;
}