/* ==========================================================================
   Lazio CTA — Full-width call-to-action section

   All colors are hardcoded (not CSS variables) so the element is immune
   to Bricks palette dark-mode flips by default.  The --dark-mode class
   opts in to dark-mode overrides that invert backgrounds and text.
   ========================================================================== */

.lazio-cta {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 95%;
  max-width: 1440px;
  margin-inline: auto;
  padding-block: 4rem;
}

/* ---------- Full-bleed when background is set ---------- */
.lazio-cta--has-bg {
  width: 100%;
  max-width: none;
  padding-inline: max(2.5%, calc((100% - 1440px) / 2));
}

/* ---------- Background colors (hardcoded — immune to dark mode) ---------- */
.lazio-cta--bg-cream { background-color: #FFF7ED; }
.lazio-cta--bg-dark  { background-color: #1C1917; }
.lazio-cta--bg-white { background-color: #ffffff; }

/* ---------- Inner container ---------- */
.lazio-cta__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: var(--cta-max-width, 900px);
  gap: 2.5em;
  width: 100%;
}

/* ---------- Heading ---------- */
.lazio-cta__heading {
  margin: 0;
  font-family: 'Crimson Pro', Georgia, serif;
  font-style: italic;
  font-weight: 500;
  font-size: var(--text-2xl);
  line-height: 1.1em;
  letter-spacing: 0.01em;
  text-transform: capitalize;
  color: #1C1917;
  max-width: 700px;
}

/* ---------- Body (always Slate Gray) ---------- */
.lazio-cta__body {
  font-size: var(--text-ml);
  line-height: 1.3;
  color: #767676;
  max-width: 900px;
}

.lazio-cta__body p {
  margin: 0;
}

/* ---------- Button ---------- */
.lazio-cta__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'Poppins', sans-serif;
  font-size: var(--text-s);
  font-weight: 500;
  text-transform: uppercase;
  text-align: center;
  color: #FFF7ED;
  background-color: #F97316;
  border: none;
  border-radius: 0;
  min-width: 16em;
  padding: 1em 2.5em;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.3s ease;
}

.lazio-cta__button:hover {
  opacity: 0.75;
}

/* ---------- Disclaimer ---------- */
.lazio-cta__disclaimer {
  margin: 0;
  font-family: 'Poppins', sans-serif;
  font-size: var(--text-s);
  color: #767676;
}

/* ==========================================================================
   Iron (dark) background — light text overrides
   ========================================================================== */
.lazio-cta--bg-dark .lazio-cta__heading {
  color: #FFF7ED;
}

/* Body stays #767676 — Slate Gray on all backgrounds */

/* ==========================================================================
   Dark mode opt-in

   When the toggle is ON, backgrounds and text invert in dark theme.
   - Transparent: heading flips to light (page bg is dark)
   - Cream/White: bg flips to Iron, heading to light
   - Iron: bg flips to Cream, heading to dark
   Body stays Slate Gray (#767676) in all cases.
   ========================================================================== */

/* --- Transparent (no explicit background) --- */
[data-brx-theme="dark"] .lazio-cta--dark-mode:not(.lazio-cta--has-bg) .lazio-cta__heading {
  color: #FFF7ED;
}

[data-brx-theme="dark"] .lazio-cta--dark-mode:not(.lazio-cta--has-bg) .lazio-cta__disclaimer {
  color: #A8A29E;
}

/* --- Cream background → Iron bg, light heading --- */
[data-brx-theme="dark"] .lazio-cta--dark-mode.lazio-cta--bg-cream {
  background-color: #1C1917;
}

[data-brx-theme="dark"] .lazio-cta--dark-mode.lazio-cta--bg-cream .lazio-cta__heading {
  color: #FFF7ED;
}

[data-brx-theme="dark"] .lazio-cta--dark-mode.lazio-cta--bg-cream .lazio-cta__disclaimer {
  color: #A8A29E;
}

/* --- White background → Iron bg, light heading --- */
[data-brx-theme="dark"] .lazio-cta--dark-mode.lazio-cta--bg-white {
  background-color: #1C1917;
}

[data-brx-theme="dark"] .lazio-cta--dark-mode.lazio-cta--bg-white .lazio-cta__heading {
  color: #FFF7ED;
}

[data-brx-theme="dark"] .lazio-cta--dark-mode.lazio-cta--bg-white .lazio-cta__disclaimer {
  color: #A8A29E;
}

/* --- Iron background → Cream bg, dark heading --- */
[data-brx-theme="dark"] .lazio-cta--dark-mode.lazio-cta--bg-dark {
  background-color: #FFF7ED;
}

[data-brx-theme="dark"] .lazio-cta--dark-mode.lazio-cta--bg-dark .lazio-cta__heading {
  color: #1C1917;
}

/* ==========================================================================
   Mobile
   ========================================================================== */
@media (max-width: 768px) {
  .lazio-cta__heading {
    font-size: var(--text-xl);
  }

  .lazio-cta__button {
    width: 100%;
    min-width: unset;
  }
}
