/*
 * ADRASA Theme System Helpers
 *
 * Opt-in only. These classes are for future Elementor pages/templates and are
 * meant to replace page-id / elementor-id theme overrides with stable classes.
 *
 * They do not target legacy pages unless those pages explicitly add the class.
 */

.adrasa-theme-shell {
  --adrasa-theme-shell-max: 83.75rem;
  --adrasa-theme-shell-pad-x: 1.5625rem;
}

.adrasa-theme-shell > .e-con-inner,
.adrasa-theme-shell > .container,
.adrasa-theme-shell > .container-fluid {
  width: min(var(--adrasa-theme-shell-max), calc(100% - (var(--adrasa-theme-shell-pad-x) * 2)));
  max-width: none;
  margin-inline: auto;
  padding-inline: 0;
}

.adrasa-theme-shell--wide {
  --adrasa-theme-shell-max: 94.125rem;
}

.adrasa-theme-shell--narrow {
  --adrasa-theme-shell-max: 68rem;
}

.adrasa-theme-shell--flush > .e-con-inner,
.adrasa-theme-shell--flush > .container,
.adrasa-theme-shell--flush > .container-fluid {
  width: 100%;
}

.adrasa-theme-stack {
  --adrasa-theme-stack-gap: 0;
}

.adrasa-theme-stack > .e-con-inner {
  display: grid;
  row-gap: var(--adrasa-theme-stack-gap);
}

.adrasa-theme-stack--sm {
  --adrasa-theme-stack-gap: 1.5rem;
}

.adrasa-theme-stack--md {
  --adrasa-theme-stack-gap: 2.5rem;
}

.adrasa-theme-stack--lg {
  --adrasa-theme-stack-gap: 4rem;
}

.adrasa-theme-section-pad {
  --adrasa-theme-section-pad-top: 0;
  --adrasa-theme-section-pad-bottom: 0;
  padding-top: var(--adrasa-theme-section-pad-top);
  padding-bottom: var(--adrasa-theme-section-pad-bottom);
}

.adrasa-theme-section-pad--sm {
  --adrasa-theme-section-pad-top: 2.5rem;
  --adrasa-theme-section-pad-bottom: 2.5rem;
}

.adrasa-theme-section-pad--md {
  --adrasa-theme-section-pad-top: 4rem;
  --adrasa-theme-section-pad-bottom: 4rem;
}

.adrasa-theme-section-pad--lg {
  --adrasa-theme-section-pad-top: 6rem;
  --adrasa-theme-section-pad-bottom: 6rem;
}

@media (max-width: 991.98px) {
  .adrasa-theme-shell {
    --adrasa-theme-shell-pad-x: 1.5rem;
  }

  .adrasa-theme-stack--sm {
    --adrasa-theme-stack-gap: 1.25rem;
  }

  .adrasa-theme-stack--md {
    --adrasa-theme-stack-gap: 2rem;
  }

  .adrasa-theme-stack--lg {
    --adrasa-theme-stack-gap: 3rem;
  }

  .adrasa-theme-section-pad--sm {
    --adrasa-theme-section-pad-top: 2rem;
    --adrasa-theme-section-pad-bottom: 2rem;
  }

  .adrasa-theme-section-pad--md {
    --adrasa-theme-section-pad-top: 3rem;
    --adrasa-theme-section-pad-bottom: 3rem;
  }

  .adrasa-theme-section-pad--lg {
    --adrasa-theme-section-pad-top: 4rem;
    --adrasa-theme-section-pad-bottom: 4rem;
  }
}
