/* ───────────────────────────────────────────────────────────
   Custom overrides
   ─────────────────────────────────────────────────────────── */

/* 1. Hide the Framer badge */
.__framer-badge,
.__framer-badge-container,
[class*="framer-badge"] {
  display: none !important;
}

/* 2. Pricing layout: widen the entire pricing section so 3 cards have breathing room.
      Default Framer layout was 795px (designed for 2 cards). For 3 cards we
      bump everything in the chain to ~1100px and let cards stretch evenly. */

/* Outer #pricing section and all its size-locked descendants */
#pricing,
.framer-1n5vdh7,
.framer-295vsx-container,
.framer-pvXEc.framer-YZUfJ,
.framer-sl3mbx {
  width: min(1100px, 100%) !important;
  max-width: 1100px !important;
}

/* The level that had overflow:hidden — release the clip so widening propagates */
.framer-1n5vdh7 {
  overflow: visible !important;
}

/* Flex container for the Cards */
.framer-sl3mbx {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 24px !important;
  align-items: stretch !important;
  justify-content: center !important;
}

.framer-sl3mbx > [data-framer-name="Card"] {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  max-width: none !important;
  width: auto !important;
  align-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 28px !important;
}

/* Inner Sub Container should grow so cards line up at the bottom */
.framer-sl3mbx > [data-framer-name="Card"] > div {
  flex: 1 1 auto !important;
}

/* Tablet & smaller: 3 cards need ≥900px to look right. Below that, stack. */
@media (max-width: 900px) {
  .framer-sl3mbx {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    align-items: stretch !important;
  }
  .framer-sl3mbx > [data-framer-name="Card"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    padding: 24px !important;
  }
  /* Containers should respect viewport width on small screens — no fixed 1100px */
  #pricing,
  .framer-1n5vdh7,
  .framer-295vsx-container,
  .framer-pvXEc.framer-YZUfJ,
  .framer-sl3mbx {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Belt-and-suspenders: never let the body horizontally overflow on any device */
html, body {
  overflow-x: hidden !important;
}
