/* LiteCMS public theme foundation
   Static frontend/page-builder rules live here so they can be cached by the browser.
   Dynamic values are emitted as CSS variables from templates/site/header.php. */

body {
  background: var(--cms-body-bg);
  color: var(--cms-text-color);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--cms-heading-color);
}

a {
  color: var(--cms-link-color);
}

a:hover,
a:focus {
  color: var(--cms-link-hover-color);
}

@media (min-width: 1200px) {
  .container {
    max-width: var(--cms-container-max-width);
  }
}

.btn {
  border-radius: var(--cms-button-radius);
  transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease, border-color .16s ease;
}

.btn:hover,
.btn:focus {
  transform: translateY(var(--cms-button-hover-lift, -1px));
}

.btn-primary {
  --bs-btn-bg: var(--cms-btn-primary-bg);
  --bs-btn-border-color: var(--cms-btn-primary-bg);
  --bs-btn-color: var(--cms-btn-primary-text);
  --bs-btn-hover-bg: var(--cms-btn-primary-hover-bg);
  --bs-btn-hover-border-color: var(--cms-btn-primary-hover-bg);
  --bs-btn-hover-color: var(--cms-btn-primary-text);
  --bs-btn-active-bg: var(--cms-btn-primary-hover-bg);
  --bs-btn-active-border-color: var(--cms-btn-primary-hover-bg);
  --bs-btn-active-color: var(--cms-btn-primary-text);
}

.btn-secondary {
  --bs-btn-bg: var(--cms-btn-secondary-bg);
  --bs-btn-border-color: var(--cms-btn-secondary-bg);
  --bs-btn-color: var(--cms-btn-secondary-text);
  --bs-btn-hover-bg: var(--cms-btn-secondary-hover-bg);
  --bs-btn-hover-border-color: var(--cms-btn-secondary-hover-bg);
  --bs-btn-hover-color: var(--cms-btn-secondary-text);
  --bs-btn-active-bg: var(--cms-btn-secondary-hover-bg);
  --bs-btn-active-border-color: var(--cms-btn-secondary-hover-bg);
  --bs-btn-active-color: var(--cms-btn-secondary-text);
}

.card {
  border-radius: var(--cms-card-radius);
  border-color: var(--cms-card-border-color);
  border-width: var(--cms-card-border-width);
}

.cms-page-builder-section .card,
.cms-builder-card {
  box-shadow: var(--cms-card-shadow);
}

.cms-page-builder-section > .container,
.cms-page-builder-section > .container-fluid:not(.px-0) {
  border-radius: var(--cms-section-radius);
}

.cms-page-builder-section.cms-section-spacing-system {
  padding-top: var(--cms-section-spacing-y);
  padding-bottom: var(--cms-section-spacing-y);
}

.cms-builder-icon {
  color: var(--site-primary);
  font-size: var(--cms-icon-size);
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.bg-primary .cms-builder-icon,
.bg-dark .cms-builder-icon {
  color: currentColor;
}
