/* OTSI-NEO 0.90 responsive and mode-safe layer. */

.otsi-neo-builder-output,
.otsi-neo-site,
.otsi-neo-container {
  overflow-wrap: anywhere;
}

.otsi-neo-container {
  width: min(var(--otsi-neo-container, 1240px), calc(100% - 32px));
}

.otsi-neo-el {
  color: var(--otsi-neo-text, #081426);
}

.otsi-neo-bg-dark,
.otsi-neo-bg-gradient,
.otsi-neo-skin-stadium,
.otsi-neo-skin-pitch.otsi-neo-bg-dark {
  color: var(--otsi-neo-inverse, #fff);
}

.otsi-neo-bg-dark :where(h1,h2,h3,h4,h5,h6,p,li,span,small,strong,em,label),
.otsi-neo-bg-gradient :where(h1,h2,h3,h4,h5,h6,p,li,span,small,strong,em,label),
.otsi-neo-skin-stadium :where(h1,h2,h3,h4,h5,h6,p,li,span,small,strong,em,label) {
  color: inherit;
}

.otsi-neo-bg-dark :where(.button,.otsi-neo-btn,.wp-element-button),
.otsi-neo-bg-gradient :where(.button,.otsi-neo-btn,.wp-element-button) {
  color: #fff;
}

.otsi-neo-bg-dark :where(.button-secondary,.is-style-outline .wp-element-button),
.otsi-neo-bg-gradient :where(.button-secondary,.is-style-outline .wp-element-button) {
  color: var(--otsi-neo-navy, #081426);
}

.otsi-neo-grid,
.otsi-neo-cards,
.otsi-neo-stats,
.otsi-neo-logo-grid,
.otsi-neo-team-grid,
.otsi-neo-pricing-grid {
  align-items: stretch;
}

.otsi-neo-grid > *,
.otsi-neo-cards > *,
.otsi-neo-stats > *,
.otsi-neo-logo-grid > *,
.otsi-neo-team-grid > *,
.otsi-neo-pricing-grid > * {
  min-width: 0;
}

.otsi-neo-hide-desktop {
  display: none !important;
}

@media (prefers-color-scheme: dark) {
  body:not(.otsi-neo-force-light) {
    --otsi-neo-bg: #061510;
    --otsi-neo-surface: #0b211a;
    --otsi-neo-border: rgba(255,255,255,.14);
    --otsi-neo-text: #f8fff9;
    --otsi-neo-muted: rgba(248,255,249,.72);
    background: var(--otsi-neo-bg);
    color: var(--otsi-neo-text);
  }
}

body.otsi-neo-dark,
body.otsi-neo-green-mode {
  --otsi-neo-bg: #061510;
  --otsi-neo-surface: #0b211a;
  --otsi-neo-border: rgba(255,255,255,.14);
  --otsi-neo-text: #f8fff9;
  --otsi-neo-muted: rgba(248,255,249,.72);
  --otsi-neo-shadow-color: rgba(0,0,0,.35);
  background: var(--otsi-neo-bg);
  color: var(--otsi-neo-text);
}

body.otsi-neo-dark :where(.otsi-neo-el,.otsi-neo-card,.otsi-neo-panel,.otsi-neo-section),
body.otsi-neo-green-mode :where(.otsi-neo-el,.otsi-neo-card,.otsi-neo-panel,.otsi-neo-section) {
  color: var(--otsi-neo-text);
}

body.otsi-neo-dark :where(.otsi-neo-card,.otsi-neo-panel,.otsi-neo-surface),
body.otsi-neo-green-mode :where(.otsi-neo-card,.otsi-neo-panel,.otsi-neo-surface) {
  background: var(--otsi-neo-surface);
  border-color: var(--otsi-neo-border);
}

body.otsi-neo-dark :where(.button,.otsi-neo-btn,.wp-element-button),
body.otsi-neo-green-mode :where(.button,.otsi-neo-btn,.wp-element-button) {
  color: var(--otsi-neo-button-text, #fff);
}

body.otsi-neo-dark :where(.button-secondary,.button.is-secondary,.is-style-outline .wp-element-button,[class*="white"] .button,[class*="light"] .button),
body.otsi-neo-green-mode :where(.button-secondary,.button.is-secondary,.is-style-outline .wp-element-button,[class*="white"] .button,[class*="light"] .button) {
  color: var(--otsi-neo-button-light-text, #081426);
}

body.otsi-neo-dark :where(.otsi-neo-bg-white,.otsi-neo-bg-light,.has-white-background-color,.has-background[style*="ffffff"]),
body.otsi-neo-green-mode :where(.otsi-neo-bg-white,.otsi-neo-bg-light,.has-white-background-color,.has-background[style*="ffffff"]) {
  color: var(--otsi-neo-button-light-text, #081426);
}

body.otsi-neo-dark :where(.otsi-neo-bg-white,.otsi-neo-bg-light,.has-white-background-color,.has-background[style*="ffffff"]) :where(h1,h2,h3,h4,h5,h6,p,li,span,small,strong,em,label),
body.otsi-neo-green-mode :where(.otsi-neo-bg-white,.otsi-neo-bg-light,.has-white-background-color,.has-background[style*="ffffff"]) :where(h1,h2,h3,h4,h5,h6,p,li,span,small,strong,em,label) {
  color: inherit;
}

@media (max-width: 1180px) {
  .otsi-neo-columns-4,
  .otsi-neo-columns-5,
  .otsi-neo-columns-6 {
    --otsi-neo-columns: 2;
  }
}

@media (max-width: 900px) {
  .otsi-neo-hide-tablet {
    display: none !important;
  }

  .otsi-neo-hero-grid,
  .otsi-neo-columns,
  .otsi-neo-layout-columns,
  .otsi-neo-header-inner,
  .otsi-neo-footer-grid {
    grid-template-columns: 1fr !important;
  }

  .otsi-neo-el {
    padding-top: var(--otsi-neo-pt-tablet, calc(var(--otsi-neo-section-space, 72px) * .75));
    padding-bottom: var(--otsi-neo-pb-tablet, calc(var(--otsi-neo-section-space, 72px) * .75));
  }
}

@media (max-width: 640px) {
  .otsi-neo-hide-mobile {
    display: none !important;
  }

  .otsi-neo-container {
    width: min(100% - 24px, var(--otsi-neo-container, 1240px));
  }

  .otsi-neo-el {
    padding-top: var(--otsi-neo-pt-mobile, calc(var(--otsi-neo-section-space, 72px) * .55));
    padding-bottom: var(--otsi-neo-pb-mobile, calc(var(--otsi-neo-section-space, 72px) * .55));
  }

  .otsi-neo-el h1,
  .otsi-neo-el .otsi-neo-h1 {
    font-size: clamp(2.2rem, 13vw, 3.8rem);
    line-height: 1.02;
  }

  .otsi-neo-el h2,
  .otsi-neo-el .otsi-neo-h2 {
    font-size: clamp(1.8rem, 9vw, 3rem);
  }
}
