/* Modernized Modal Styling          Using Bootstrap's CSS Variables to make it theme-aware (like your site) */

.modal-content {
  border: 0;
  border-radius: .5rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.modal-header {
  background-color: var(--bs-secondary-bg);
  border-bottom: 1px solid var(--bs-border-color-translucent);
}

.modal-footer {
  background-color: var(--bs-secondary-bg);
  border-top: 1px solid var(--bs-border-color-translucent);
}

/* Section headings */

.section-heading {
  font-weight: 600;
  color: var(--bs-body-color);
  padding-bottom: .5rem;
  /*border-bottom: 1px solid var(--bs-border-color);*/
}

/* FAQ category headings */

.faq-category {
  margin-top: 1.5rem;
  margin-bottom: 1rem;
  font-weight: 500;
  color: var(--bs-secondary-color);
}

/* Modern accordion styles */

.accordion-item {
  background-color: var(--bs-body-bg);
  border: 1px solid var(--bs-border-color-translucent);
  margin-bottom: .5rem;
}

.accordion-button {
  font-weight: 500;
  border-radius: .375rem;
}

.accordion-button:not(.collapsed) {
  color: var(--bs-primary-text-emphasis);
  background-color: var(--bs-primary-bg-subtle);
  box-shadow: none;
}

.accordion-button:focus {
  box-shadow: 0 0 0 .25rem var(--bs-primary-border-subtle);
}

.accordion-body {
  color: var(--bs-secondary-color);
}

/* Modern tab styles */

.nav-tabs {
  border-bottom: 1px solid var(--bs-border-color);
}

.nav-tabs .nav-link {
  font-weight: 500;
  color: var(--bs-secondary-color);
}

.nav-tabs .nav-link.active {
  color: var(--bs-primary);
  border-bottom-color: var(--bs-primary);
  border-bottom-width: 2px;
  background-color: transparent;
}

.tab-content {
  padding-top: 1.5rem;
  color: var(--bs-body-color);
}

/* Modernized Contact Section           - Uses Flexbox for clean alignment          - Adds icons */

.contact-section .list-group-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 0;
  border: none;
  border-bottom: 1px solid var(--bs-border-color-translucent);
}

.contact-section .list-group-item:last-child {
  border-bottom: none;
}

.contact-section .contact-icon {
  font-size: 1.25rem;
  color: var(--bs-primary);
}

.contact-section .contact-label {
  font-weight: 500;
  color: var(--bs-body-color);
  min-width: 140px;
}

.contact-section .contact-link {
  font-weight: 500;
  text-decoration: none;
}

.contact-section .contact-link:hover {
  text-decoration: underline;
}

/* Responsive alignment for contact section on small screens */

@media (max-width: 576px) {
  .contact-section .list-group-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }
}

@media (max-width: 576px) {
  .contact-section .contact-label {
    min-width: auto;
  }
}

@media (max-width: 576px) {
  .contact-section .contact-icon {
    display: none;
  }
}

