/* 227LAW contrast fixes loaded after color.php */
:root {
  --base-h: 151 !important;
  --base-s: 100% !important;
  --base-l: 39% !important;
  --base-two-h: 150 !important;
  --base-two-s: 100% !important;
  --base-two-l: 13% !important;
  --primary-h: 151 !important;
  --primary-s: 100% !important;
  --primary-l: 39% !important;
}

body,
section,
.section-bg,
.lawyer-section,
.pricing-plan-section,
.testimonial-section,
.faq-section {
  background-color: #020403 !important;
  color: #d8f7e8 !important;
}

.bg-white,
.bg-light,
.card,
.custom--card,
.empty-message,
.pricing-card,
.plan-card,
.testimonial-card,
.faq-item,
.accordion-item,
.accordion-button,
.filter-sidebar,
.sidebar-widget,
.widget,
.search-box,
.lawyer-filter,
.dashboard-card,
.form--control,
.nice-select,
.select2-container--default .select2-selection--single {
  background: rgba(3, 16, 11, 0.96) !important;
  border: 1px solid rgba(0, 200, 120, 0.36) !important;
  color: #d8f7e8 !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.32) !important;
}

.empty-message h1,
.empty-message h2,
.empty-message h3,
.empty-message h4,
.empty-message h5,
.empty-message h6,
.empty-message p,
.empty-message .text-muted,
.pricing-card *,
.plan-card *,
.testimonial-card *,
.faq-item *,
.accordion-item *,
.accordion-button *,
.filter-sidebar *,
.sidebar-widget *,
.widget *,
.search-box *,
.lawyer-filter *,
.card *,
.custom--card * {
  color: #d8f7e8 !important;
}

.empty-message img,
.empty_list img {
  opacity: 0.75;
  filter: invert(1) brightness(1.35) drop-shadow(0 0 12px rgba(0, 200, 120, 0.22));
}

.text-muted,
.form-check-label,
.pricing-card p,
.plan-card p,
.testimonial-card p,
.faq-item p,
.accordion-body {
  color: #a7c7b7 !important;
}

.price,
.pricing-card__price,
.plan-card__price,
.section-heading__title span,
.base-color,
.text--base,
a:hover {
  color: #00c878 !important;
}

.btn,
.btn--base,
.btn--primary,
.btn--success,
.btn-outline--base:hover,
.accordion-button:not(.collapsed)::after,
.pagination .page-item.active .page-link {
  background: linear-gradient(135deg, #00c878, #007a48) !important;
  border-color: #00c878 !important;
  color: #ffffff !important;
}

.btn:hover,
.btn--base:hover,
.btn--primary:hover {
  background: linear-gradient(135deg, #12e58c, #008f56) !important;
  border-color: #12e58c !important;
}

input,
textarea,
select,
.form--control {
  background-color: rgba(0, 0, 0, 0.62) !important;
  border-color: rgba(0, 200, 120, 0.38) !important;
  color: #f4fff9 !important;
}

input::placeholder,
textarea::placeholder {
  color: #7ca990 !important;
}

.accordion-button::after {
  filter: invert(1);
}

/* White-card readability pass: pricing, lawyer cards, testimonials and forms */
.price-card,
.practices-card,
.lawyer-card,
.service-card,
.modal-content,
.table,
.table-responsive,
.price-area .price-card {
  background: #f7fff9 !important;
  border: 1px solid rgba(0, 200, 120, 0.55) !important;
  color: #07130d !important;
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.45) !important;
}

.price-card *,
.practices-card *,
.lawyer-card *,
.service-card *,
.modal-content *,
.table *,
.table-responsive * {
  color: #07130d !important;
}

.price-card__title,
.price-card__price,
.price-card__price-value,
.price-card__item-text,
.price-card__desc,
.practices-card__title,
.practices-card__desc,
.lawyer-card__name,
.lawyer-card__content,
.service-card__title {
  color: #07130d !important;
}

.price-card__price,
.price-card__item-icon,
.price-card .la-check,
.price-card .las,
.practices-card__link,
.lawyer-card a,
.service-card a {
  color: #009b5c !important;
}

.price-card hr,
.price-card__header,
.price-card__body {
  border-color: rgba(0, 155, 92, 0.35) !important;
}

.price-card .btn,
.price-card .btn--base,
.price-card .btn-outline--base,
.modal-content .btn,
.lawyer-card .btn,
.service-card .btn {
  background: linear-gradient(135deg, #00c878, #007a48) !important;
  border-color: #00a865 !important;
  color: #ffffff !important;
}

.price-card .btn *,
.price-card .btn--base *,
.price-card .btn-outline--base *,
.modal-content .btn *,
.lawyer-card .btn *,
.service-card .btn * {
  color: #ffffff !important;
}

/* 227LAW final contrast pass: testimonials, review cards and pale panels */
.testimonails-card,
.testimonial-item,
.review-item,
.custom--accordion .accordion-item,
.custom--accordion .accordion-button,
.custom--accordion .accordion-body,
.service-card__stat,
.service-card__fee,
.empty_list,
.empty-message,
.white-card,
[class*="bg--white"],
[class*="bg-white"] {
  background: #f4fbf6 !important;
  border: 1px solid rgba(0, 155, 92, 0.42) !important;
  color: #07130d !important;
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.32) !important;
}

.testimonails-card *,
.testimonial-item *,
.review-item *,
.custom--accordion .accordion-item *,
.custom--accordion .accordion-button *,
.custom--accordion .accordion-body *,
.service-card__stat *,
.service-card__fee *,
.empty_list *,
.empty-message *,
.white-card *,
[class*="bg--white"] *,
[class*="bg-white"] * {
  color: #07130d !important;
}

.testimonial-item__desc,
.testimonial-item__designation,
.review-item__desc,
.review-item__time,
.review-item__rating-text,
.service-card__stat-label,
.service-card__fee-label,
.custom--accordion .accordion-body {
  color: #294337 !important;
}

.testimonial-item__name,
.review-item__name,
.custom--accordion .accordion-button,
.service-card__stat-value,
.service-card__fee-value {
  color: #06120c !important;
}

.testimonial-item__rating i,
.testimonial-item__rating .fa-star,
.review-item__rating-icon,
.review-item__rating-icon i,
.service-card__stars,
.service-card__stars i,
.price-card__item-icon,
.custom--accordion .accordion-button::after {
  color: #009b5c !important;
}

.testimonial-item__quote,
.testimonial-item__quote i {
  color: rgba(0, 155, 92, 0.28) !important;
}

.service-card__stat--blue,
.service-card__stat--green,
.service-card__stat--orange {
  background: #edf8f1 !important;
  border-color: rgba(0, 155, 92, 0.34) !important;
}

.btn--white,
.btn.btn--white {
  background: #f4fbf6 !important;
  border: 1px solid rgba(0, 155, 92, 0.5) !important;
  color: #07130d !important;
}

.btn--white:hover,
.btn.btn--white:hover {
  background: #00c878 !important;
  border-color: #00a865 !important;
  color: #ffffff !important;
}

/* 227LAW compact mobile footer accordion */
.footer-accordion-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #f4fff9;
  text-align: left;
}

.footer-accordion-toggle i {
  color: #00c878;
  font-size: 18px;
  transition: transform 0.2s ease;
}

.footer-accordion-toggle[aria-expanded="true"] i {
  transform: rotate(45deg);
}

@media (min-width: 576px) {
  .footer-accordion-panel.collapse {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
  }

  .footer-accordion-toggle {
    pointer-events: none;
  }

  .footer-accordion-toggle i {
    display: none;
  }
}

@media (max-width: 575px) {
  .footer-top {
    padding-top: 48px !important;
    padding-bottom: 28px !important;
  }

  .footer .row.gy-5 {
    --bs-gutter-y: 12px;
  }

  .footer-item {
    padding: 14px 14px;
    border: 1px solid rgba(0, 200, 120, 0.26);
    background: rgba(3, 16, 11, 0.82);
  }

  .footer-item__logo img {
    max-width: 170px;
  }

  .footer-item__desc {
    margin-bottom: 12px !important;
  }

  .footer-accordion-toggle {
    padding: 2px 0;
    font-size: 16px;
  }

  .footer-accordion-panel {
    padding-top: 12px;
  }

  .footer-menu,
  .footer-contact-menu {
    margin-bottom: 0 !important;
  }

  .footer-menu__item,
  .footer-contact-menu__item {
    padding: 7px 0;
  }

  .footer-bottom__inner {
    gap: 10px;
    text-align: center;
  }
}
