/**
 * Reusable membership plans — root: .company-billing-plans
 * Resets global theme .pricing_table / .pt_* rules so only these styles apply inside.
 */

.company-billing-plans {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  overflow-x: clip;
}

.company-billing-plans .our-pricing {
  padding: 0;
  background: transparent;
  width: 100%;
  max-width: 100%;
}

.company-billing-plans .company-billing-plans__inner {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 40px 20px;
  box-sizing: border-box;
}

.company-billing-plans .row {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
  max-width: 100%;
}

.company-billing-plans .row > [class*="col-"] {
  padding-left: 0;
  padding-right: 0;
  min-width: 0;
}

/* --- Grid --- */
.company-billing-plans .company-billing-plans__cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.25rem;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0.5rem 0 1rem;
  box-sizing: border-box;
  align-items: stretch;
}



@media (min-width: 640px) {
  .company-billing-plans .company-billing-plans__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .company-billing-plans .company-billing-plans__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    padding: 1rem 0 1.25rem;
  }
}

.company-billing-plans .company-billing-plans__item {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  display: flex;
  box-sizing: border-box;
}

/* --- Card shell (override global .pricing_table) --- */
.company-billing-plans .pricing_table {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  background-color: #ffffff;
  border-radius: 5px;
  padding: 15px 24px 32px;
  box-shadow: 2px 2px 1px 0 rgba(0, 0, 0, 0.1);
  box-sizing: border-box;
  cursor: default;
}

@media (min-width: 992px) {
  .company-billing-plans .pricing_table {
    padding: 15px 35px 40px;
  }
}

.company-billing-plans .pricing_table:hover {
  cursor: default;
}

/* --- Header: title + price bar (no absolute positioning) --- */
.company-billing-plans .pricing_table .pt_header_four {
  padding-top: 20px;
  position: relative;
  width: 100%;
  flex-shrink: 0;
}

.company-billing-plans .pricing_table .pt_header_four h4 {
  margin: 0;
  padding: 0;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.3;
  color: #222222;
}

.company-billing-plans .pricing_table .pt_tag_four {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  width: 100%;
  height: 70px;
  line-height: 70px;
  margin: 10px 0 0;
  padding: 0 16px;
  background-color: #fff9f9;
  border-radius: 4px;
  text-align: center;
  box-sizing: border-box;
}

.company-billing-plans .pricing_table .pt_tag_four span {
  color: #00d664;
  font-size: 20px;
  font-weight: 600;
}

/* --- Details: feature list (reset global 120px / 40px gaps) --- */
.company-billing-plans .pricing_table .pt_details {
  margin-top: 20px;
  padding: 0;
  width: 100%;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.company-billing-plans .pricing_table .pt_details ul {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.company-billing-plans .pricing_table .pt_details ul li {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid transparent;
}

.company-billing-plans .pricing_table .pt_details ul li:first-child {
  margin-top: 0;
}

.company-billing-plans .pricing_table .pt_details ul li a,
.company-billing-plans .pricing_table .pt_details ul li span {
  display: block;
  line-height: 35px;
  font-size: 15px;
  color: #555555;
  text-decoration: none;
}

.company-billing-plans .pricing_table .pt_details ul li:hover a,
.company-billing-plans .pricing_table .pt_details ul li:hover span {
  color: #222222;
}

/* Trial / fallback notes */
.company-billing-plans .company-billing-plans__trial-note,
.company-billing-plans .company-billing-plans__fallback-note {
  margin: 12px 0 0;
  padding: 0;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  line-height: 1.35;
}

.company-billing-plans .company-billing-plans__fallback-note {
  margin-top: 20px;
  color: #555555;
}

.company-billing-plans .pricing_table:not(.mid) .company-billing-plans__trial-note {
  color: #333333;
}

/* --- Side card buttons (white + green border) — beat Bootstrap .btn --- */
.company-billing-plans .pricing_table:not(.mid) .pt_details a.btn,
.company-billing-plans .pricing_table:not(.mid) .pt_details a.btn.btn-lg,
.company-billing-plans .pricing_table:not(.mid) .pt_details a.btn.btn-lg.btn-block {
  display: block;
  width: 100%;
  height: 55px;
  margin-top: 30px;
  padding: 0 12px;
  line-height: 53px;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border-radius: 4px;
  box-sizing: border-box;
  background-color: #ffffff;
  border: 1px solid #79b530;
  color: #79b530;
  box-shadow: none;
}

.company-billing-plans .pricing_table:not(.mid) .pt_details a.btn:hover,
.company-billing-plans .pricing_table:not(.mid) .pt_details a.btn.btn-lg:hover {
  background-color: #262626;
  border-color: #262626;
  color: #ffffff;
}

.company-billing-plans .pricing_table:not(.mid) .pt_details a.btn.disabled,
.company-billing-plans .pricing_table:not(.mid) .pt_details a.btn.disabled:hover {
  background-color: #ffffff;
  border-color: #79b530;
  color: #79b530;
  opacity: 0.55;
  cursor: not-allowed;
  pointer-events: none;
}

/* --- Featured / mid card --- */
.company-billing-plans .pricing_table.mid {
  background-color: #79b530;
  margin: 0;
  padding-top: 15px;
  padding-bottom: 40px;
  scale: 1.05;
}

@media (min-width: 992px) {
  .company-billing-plans .company-billing-plans__item--featured .pricing_table.mid {
    padding-top: 15px;
    padding-bottom: 45px;
  }
}

.company-billing-plans .pricing_table.mid > h3.text-center {
  color: #ffffff;
  margin: 0 0 0;
  padding: 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
}

.company-billing-plans .pricing_table.mid .pt_header_four {
  padding-top: 10px;
}

.company-billing-plans .pricing_table.mid .pt_header_four h4 {
  color: #ffffff;
}

.company-billing-plans .pricing_table.mid .pt_tag_four {
  background-color: #8ac83e;
}

.company-billing-plans .pricing_table.mid .pt_tag_four span {
  color: #ffffff;
}

.company-billing-plans .pricing_table.mid .pt_details ul li a,
.company-billing-plans .pricing_table.mid .pt_details ul li span {
  color: #ffffff;
}

.company-billing-plans .pricing_table.mid .pt_details ul li:hover a,
.company-billing-plans .pricing_table.mid .pt_details ul li:hover span {
  color: #ffffff;
}

.company-billing-plans .pricing_table.mid .company-billing-plans__trial-note {
  color: #ffffff;
  margin-top: 12px;
}

/* Mid card button: solid white, green text */
.company-billing-plans .pricing_table.mid .pt_details a.btn,
.company-billing-plans .pricing_table.mid .pt_details a.btn.btn-lg,
.company-billing-plans .pricing_table.mid .pt_details a.btn.btn-lg.btn-block {
  display: block;
  width: 100%;
  height: 55px;
  margin-top: 30px;
  padding: 0 12px;
  line-height: 53px;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border-radius: 4px;
  box-sizing: border-box;
  background-color: #ffffff;
  border: 1px solid #ffffff;
  color: #00d664;
  box-shadow: none;
}

.company-billing-plans .pricing_table.mid .pt_details a.btn:hover,
.company-billing-plans .pricing_table.mid .pt_details a.btn.btn-lg:hover {
  background-color: #f8f8f8;
  border-color: #f8f8f8;
  color: #00d664;
}

.company-billing-plans .pricing_table.mid .pt_details a.btn.disabled,
.company-billing-plans .pricing_table.mid .pt_details a.btn.disabled:hover {
  background-color: #ffffff;
  border-color: #ffffff;
  color: #00d664;
  opacity: 0.55;
  cursor: not-allowed;
  pointer-events: none;
}

.company-billing-plans .company-billing-plans__trial-note--muted {
  color: #666666;
}

/* --- Page chrome --- */
.company-billing-plans .company-billing-plans__alerts {
  margin-bottom: 1rem;
  width: 100%;
}

.company-billing-plans .company-billing-plans__loading {
  text-align: center;
  padding: 2rem 1rem;
  color: #6c757d;
}

.company-billing-plans .company-billing-plans__footer {
  text-align: center;
  width: 100%;
}

.company-billing-plans .company-billing-plans__footer a {
  color: #79b530;
  font-weight: 500;
}

.company-billing-plans .ulockd-main-title {
  margin-bottom: 1.5rem !important;
}

.company-billing-plans .ulockd-main-title h3 {
  font-weight: 600;
  margin: 0;
}

/* Static marketing embed (e.g. home page) — same grid, no dashboard chrome */
.company-billing-plans--static {
  width: 100%;
}

.company-billing-plans--static .company-billing-plans__inner {
  max-width: 1140px;
}
