/**
 * Nutrition Drive - Typography & Alignment Utility Classes
 * Dynamically applied by nd_field_typography_classes()
 */

/* Alignment Utilities */
.nd-align-left {
  text-align: left !important;
}

.nd-align-center {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.nd-align-right {
  text-align: right !important;
}

.nd-align-justify {
  text-align: justify !important;
}

/* Font Size Presets (Responsive clamp values) */
.nd-size-xs {
  font-size: clamp(0.7rem, 1vw, 0.78rem) !important;
}

.nd-size-sm {
  font-size: clamp(0.78rem, 1.2vw, 0.88rem) !important;
}

.nd-size-base,
.nd-size-md {
  font-size: clamp(0.95rem, 1.5vw, 1.05rem) !important;
}

.nd-size-lg {
  font-size: clamp(1.15rem, 2vw, 1.35rem) !important;
}

.nd-size-xl {
  font-size: clamp(1.4rem, 3vw, 1.85rem) !important;
}

.nd-size-2xl {
  font-size: clamp(1.8rem, 4vw, 2.6rem) !important;
}

.nd-size-3xl {
  font-size: clamp(2.2rem, 4.5vw, 3.2rem) !important;
}

.nd-size-4xl {
  font-size: clamp(2.6rem, 5.2vw, 3.8rem) !important;
}

.nd-size-5xl {
  font-size: clamp(3.0rem, 6.0vw, 4.5rem) !important;
}

/* For main titles (h1/h2) with size modifiers */
h1.nd-size-2xl, h2.nd-size-2xl, .section-title.nd-size-2xl, .hero-premium-title.nd-size-2xl {
  font-size: clamp(2.4rem, 5.5vw, 3.8rem) !important;
}
h1.nd-size-3xl, h2.nd-size-3xl, .section-title.nd-size-3xl, .hero-premium-title.nd-size-3xl {
  font-size: clamp(2.8rem, 6.0vw, 4.2rem) !important;
}

/* Flex Container Alignment Helpers for Buttons */
.nd-align-center.btn,
.nd-align-center.btn-cta-forest,
.nd-align-center.open-consult-btn {
  margin-left: auto !important;
  margin-right: auto !important;
  display: inline-flex !important;
}

.nd-align-right.btn,
.nd-align-right.btn-cta-forest,
.nd-align-right.open-consult-btn {
  margin-left: auto !important;
  margin-right: 0 !important;
  display: inline-flex !important;
}
