/* Visual Palette (LIGHT theme based on Emerald / Mint and Slate) */
:root {
  --vital-bg: #f3f7f5;
  --vital-bg-alt: #e9f1ed;
  --vital-surface: #ffffff;
  --vital-accent: #10b981;
  --vital-accent-hover: #059669;
  --vital-dark-text: #1f2a38;
  --vital-gradient: linear-gradient(135deg, #10b981 0%, #047857 100%);
  --vital-shadow-raised: 0 10px 25px -5px rgba(0, 0, 0, 0.08), 0 8px 10px -6px rgba(0, 0, 0, 0.08);
  --font-display: 'Montserrat', sans-serif;
  --font-body: 'Open Sans', sans-serif;
}

/* Base Styles */
h1, h2, h3, h4, h5, h6 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* Sections padding default override */
.wellness-section-spacing {
  padding-top: 10dvh;
  padding-bottom: 10dvh;
}

/* Navigation Burger Toggle logic */
.nav-trigger-checkbox:checked ~ .wellness-menu-actions {
  display: flex !important;
}

/* Header & Navigation Styles */
.wellness-navigation-bar {
  background: var(--vital-surface);
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  position: sticky;
  top: 0;
  z-index: 50;
}
.wellness-links-nav {
  color: var(--vital-dark-text);
  font-weight: 600;
  font-size: 0.9rem;
  transition: color 0.20s ease-in-out;
}
.wellness-links-nav:hover {
  color: var(--vital-accent);
}

/* Scroll Indicator */
.wellness-scroll-indicator {
  height: 4px;
  width: 0;
  background: var(--vital-accent);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  animation: progress-grow linear;
  animation-timeline: scroll();
}
@keyframes progress-grow {
  to { width: 100%; }
}

/* Scroll-driven Reveal effects */
@keyframes slide-reveal {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.wellness-animate-on-scroll {
  animation: slide-reveal 1s ease-out both;
  animation-timeline: view();
  animation-range: entry 5% entry 35%;
}

/* Preset H: Hero Design Details */
.wellness-hero-diagonal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: var(--vital-gradient);
  opacity: 0.70;
  clip-path: polygon(0 0, 48% 0, 24% 100%, 0 100%);
  z-index: 1;
}

/* Preset H: Glassmorphism Cards styling */
.wellness-glass-card {
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background: rgba(255, 255, 255, 0.65);
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 16px;
  box-shadow: var(--vital-shadow-raised);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.wellness-glass-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 35px -10px rgba(0, 0, 0, 0.12);
}

/* Preset H: Diagonal Clips on Content Images */
.wellness-clip-right {
  clip-path: polygon(0 0, 100% 0, 88% 100%, 0 100%);
}
@media (max-width: 1023px) {
  .wellness-clip-right {
    clip-path: none;
  }
}
.wellness-clip-left {
  clip-path: polygon(12% 0, 100% 0, 100% 100%, 0 100%);
}
@media (max-width: 1023px) {
  .wellness-clip-left {
    clip-path: none;
  }
}

/* Preset H: Button Pill Border Radius with soft feedback */
.wellness-accent-button {
  padding: 0.75rem 2rem;
  border-radius: 999px;
  font-weight: 700;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: var(--vital-gradient);
  color: #fff;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 4px 15px rgba(16, 185, 129, 0.3);
}
.wellness-accent-button:hover {
  transform: scale(1.03);
  box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4);
}

/* CTA diagonal custom shape */
.wellness-cta-strip {
  clip-path: polygon(0 6dvh, 100% 0, 100% 94dvh, 0 100%);
  padding: 12dvh 0;
}

/* Preset H: Testimonials Horizontal Block with Left Accent Border */
.wellness-story-quote {
  border-left: 6px solid var(--vital-accent);
}

/* Preset H: FAQ open format items */
.wellness-faq-box {
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.wellness-faq-box:last-child {
  border-bottom: none;
}

/* Form input focus state */
.wellness-form-input:focus {
  outline: none;
  border-color: var(--vital-accent) !important;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.25);
}