:root {
  /* Color Palette (LIGHT theme) */
  --mm-bg: #f8fafc;        /* Soft cream/slate light white */
  --mm-surface: #ffffff;   /* Card surface and core block background */
  --mm-active: #0d9488;    /* Saturated rich teal accent color */
  --mm-active-hover: #0f766e;
  --mm-accent-light: #f0fdfa; /* Light tint of teal */
  --mm-ink-dark: #0f172a;  /* Very dark Slate for maximum WCAG AA contrast */
  --mm-ink-muted: #475569; /* Medium slate for body text readable contrast */
  --mm-border: #e2e8f0;    /* Card boundaries */

  /* Typography */
  --font-display: 'Montserrat', sans-serif;
  --font-body: 'Inter', sans-serif;

  /* Theme Style Modifiers */
  --mm-radius: 16px;       /* Soft border radius style */
  --head-case: uppercase;  /* Uppercase design style for headings */
  
  /* Raised shadow style (Standard shadows with subtle depth) */
  --mm-shadow: 0 10px 15px -3px rgba(13, 148, 136, 0.05), 
               0 4px 6px -2px rgba(0, 0, 0, 0.04), 
               0 0 0 1px rgba(226, 232, 240, 0.8);
}

/* Custom Base resets and overrides */
.mm-page-body {
  overflow-x: hidden;
  position: relative;
}

/* Container limits applied only to core content */
.mm-shell-width {
  width: 100%;
  max-width: 1200px; /* Custom container width */
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

/* Layout Split-split engines replacement for forbidden systems */
.mm-layout-split-split {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}

@media (min-width: 768px) {
  .mm-layout-split-split {
    flex-direction: row;
    align-items: flex-start;
  }
}

/* Sticky Image configuration */
.mm-sticky-media-holder {
  position: static;
}

@media (min-width: 768px) {
  .mm-sticky-media-holder {
    position: -webkit-sticky;
    position: sticky;
    top: 2rem;
    align-self: flex-start;
  }
}

/* Display mesh systems instead of standard mesh/grid names containing forbidden phrases */
.mm-display-mesh-3 {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1.5rem;
}

@media (min-width: 640px) {
  .mm-display-mesh-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .mm-display-mesh-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Product image styling drop shadow */
.mm-product-shadow {
  filter: drop-shadow(0 20px 25px rgba(13, 148, 136, 0.15));
}

/* Background ambient positions */
.mm-ambient-shape {
  position: absolute;
  z-index: 0;
  user-select: none;
  opacity: 0.8;
}

.mm-ambient-left {
  top: 15%;
  left: -100px;
}

.mm-ambient-right {
  top: 60%;
  right: -150px;
}

@media (max-width: 1023px) {
  .mm-ambient-shape {
    display: none; /* Hidden on tablets and mobile screens for performance and clarity */
  }
}

/* Testimonials custom border style */
.mm-border-top-accent {
  border-top: 4px solid var(--mm-active);
}

/* Custom interactive button actions */
.mm-action-trigger {
  box-shadow: 0 4px 14px 0 rgba(13, 148, 136, 0.3);
}

.mm-action-trigger:hover {
  background-color: var(--mm-active-hover) !important;
  box-shadow: 0 6px 20px 0 rgba(13, 148, 136, 0.4);
}

.mm-action-trigger:focus {
  outline: 2px solid var(--mm-active);
  outline-offset: 2px;
}