body {
  font-family: "Palanquin", "Helvetica Neue", "Helvetica", "Arial" !important; }

h1 {
  font-family: "Calistoga", serif;
  font-weight: 400;
  font-size: 3.8em;
  font-style: normal;
  letter-spacing: 1px;
  margin: 0; }

.treatment-text {
  font-family: "Calistoga", serif;
  font-weight: 400;
  color: #f7f5d6ff;
  text-shadow: 1px 1px 2px #f79f79ff;
  letter-spacing: 1px; }

h1.treatment-text {
  letter-spacing: 2.5px; }

h2 {
  font-family: "Calistoga", serif;
  font-weight: 300;
  font-size: 2.2em;
  font-style: normal;
  margin: 0 0 30px 0; }

h3 {
  font-family: "Calistoga", serif;
  font-weight: 300;
  margin: 20px 0 10px 0;
  font-style: normal; }

.bg-brand-color {
  background-color: #4c4c69ff !important;
  color: white !important; }

.hero {
  box-shadow: 0 0 13px #4c4c69fa; }

.navbar.ffa-navbar .logo {
  font-size: 1.3rem; }
@media (min-width: 768px) {
  .navbar.ffa-navbar .logo {
    font-size: 2.3rem; } }
.navbar.ffa-navbar .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='white' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
.navbar.ffa-navbar li {
  position: relative; }
.navbar.ffa-navbar li:not(.highlighted-nav-link)::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 4px;
  border-radius: 4px;
  background-color: #f79f79ff;
  bottom: 0;
  left: 0;
  transform-origin: right;
  transform: scaleX(0);
  transition: transform .3s ease-in-out; }
.navbar.ffa-navbar li:hover:not(.highlighted-nav-link)::before {
  transform-origin: left;
  transform: scaleX(1); }
.navbar.ffa-navbar .navbar-toggler-icon, .navbar.ffa-navbar a {
  color: white !important; }
.navbar.ffa-navbar li.highlighted-nav-link {
  border: 1px solid white;
  border-radius: 5px;
  transition: all 0.3s ease-in-out; }
  .navbar.ffa-navbar li.highlighted-nav-link .nav-link {
    padding: 7px;
    transition: color 0.3s ease-in-out; }
  .navbar.ffa-navbar li.highlighted-nav-link:hover {
    background-color: #f79f79ff; }
    .navbar.ffa-navbar li.highlighted-nav-link:hover .nav-link {
      color: #333 !important; }

.front-page-cards {
  box-shadow: 0px 5px 6px -6px rgba(0, 0, 0, 0.25);
  position: relative;
  /* Apply a maximum width and center the card on small and medium screens (below 992px) */ }
  .front-page-cards a {
    text-decoration: none !important; }
  .front-page-cards .card {
    border-radius: 0.75rem;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease-in-out;
    cursor: pointer;
    border: none;
    width: 100%; }
  .front-page-cards .card:hover {
    transform: scale(1.03); }
  .front-page-cards .card-title {
    font-weight: 700;
    font-size: 1.25rem;
    color: #1f2937;
    margin-bottom: 0.5rem; }
  .front-page-cards .card-text {
    font-size: 0.95rem;
    color: #6b7280; }
  @media (max-width: 991.98px) {
    .front-page-cards .card {
      max-width: 400px;
      margin-left: auto;
      margin-right: auto; } }

.action-block {
  /* Ensures columns take full height for the divider */
  /* Styling for the vertical divider */
  /* Show the spacer on medium and larger screens */ }
  .action-block .full-height-row {
    min-height: 400px; }
  .action-block .vertical-spacer {
    width: 1px;
    background-color: rgba(255, 255, 255, 0.4);
    margin: 0 1rem;
    /* Hide the spacer on small screens when columns stack */
    display: none; }
  @media (min-width: 768px) {
    .action-block .vertical-spacer {
      display: block; } }
  .action-block .action-network-block p a {
    color: white !important; }

.ffa-navbar .navbar-collapse {
  position: relative;
  z-index: 1050; }
.ffa-navbar .navbar-nav .dropdown-menu {
  z-index: 1060; }

footer .footer-bg {
  background-color: #ffffff;
  color: #1f2937; }
footer .footer-link-group a {
  color: #374151;
  text-decoration: none;
  transition: color 0.2s; }
footer .footer-link-group a:hover {
  color: #3f51b5;
  text-decoration: underline !important; }
footer .land-acknowledgement {
  font-size: 0.85rem;
  line-height: 1.6;
  color: #555 !important;
  border-bottom: 1px solid #e5e7eb;
  padding-bottom: 1.5rem; }
footer .copyright {
  color: #555 !important; }
footer .copyright a {
  color: #555;
  text-decoration: none;
  transition: color 0.2s; }
footer .copyright a:hover {
  color: #3f51b5;
  text-decoration: underline; }
footer .social-icon-dark {
  color: #3f51b5; }
