#section-icon::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: url('/content/images/icons/Communitech-Icon–Primary.png') no-repeat right top;
            background-size: auto;
            opacity: 0.5; /* Adjust opacity here */
            /*z-index: -1; *//* Ensure it stays behind the content */
        }
#section-icon {
            position: relative; /* Make the section a positioning context for ::before */
        }
        
h1 {
    font-family: "DM Sans", sans-serif !important;
    font-weight: 400 !important;
    font-size: 40px !important;
    line-height: 44px !important;
}
h2 {
    font-family: "DM Sans", sans-serif !important;
    color: #222222 !important;
    font-weight: 400 !important;
    font-size: 32px !important;
    line-height: 36px !important;
}
h3 {
    font-family: "DM Sans", sans-serif !important;
    font-weight: 500 !important;
    font-size: 24px !important;
    line-height: 28px !important;
}
h4 {
    font-family: "DM Sans", sans-serif !important;
    font-weight: 500 !important;
    font-size: 20px !important;
    line-height: 24px !important;
}
h5 {
    font-family: "DM Sans", sans-serif !important;
    font-weight: 400 !important;
}
p {
    font-family: "DM Sans", sans-serif !important;
}
display-1 {
    font-family: "DM Sans", sans-serif !important;
    font-weight: 400 !important;
    font-size: 56px !important;
}
.ct-display {
    font-family: "DM Sans", sans-serif !important;
    font-weight: 100 !important;
}
a {
    color: #222222 !important;
    }
.nav-link-oc {
    padding: 0 !important;
}
.rounded-lg {
    border-radius: 18px !important;
}
.btn-warning {
  font-weight: 300;
  color: #222222;
  -bs-btn-bg: #FFB14A !important;
}
.btn-ct-secondary {
  font-weight: 300;
  color: #222222;
  bg: #ffffff;
  border-color: #222222 !important;
}
.btn-ct-secondary-white {
  font-weight: 300;
  color: #ffffff;
  bg: none;
  border-color: #ffffff !important;
}
.btn-ct-third {
  --bs-btn-padding-x: 0 !important;
  btn-font-weight: 300;
  btn-color: #222222;
  btn-bg: #ffffff;
  btn-border-color: #ffffff;
}
.btn-ct-cta {
    background-color: #FFB14A !important;
}
.card {
    --bs-card-cap-bg: #063F80 !important;
}
.fc-daygrid-day-number {
        colour: #222222 !important;
    }
.legend-color-box {
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 3px;
  border: 1px solid #ccc;
}
.event-legend ul {
  padding-left: 0;
}
.event-legend li {
  margin-right: 1rem;
}

.fc-event-title {
  font-weight: bold;
}

.fc-list-event td {
  vertical-align: top;
  padding-top: 1rem;
}

.fc-event-description {
  font-size: 0.875em;
  color: #6c757d;
}

.fc .fc-listMonth-view .fc-list-event {
    background: #E6E7E8;
    border-radius: 0.5rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    margin-bottom: 2rem;
    overflow: hidden;
    transition: transform 0.2s ease;
  }

  .fc .fc-listMonth-view .fc-list-event:hover {
    transform: translateY(-2px);
  }

  /* Optional: soften inner td spacing */
  .fc .fc-listMonth-view .fc-list-event td {
    padding: 2rem !important;
    border: none;
    vertical-align: top;
  }

  /* Optional: remove top border between day headings and events */
  .fc .fc-listMonth-view .fc-list-day > td {
    border-top: none !important;
  }

  /* Optional: center the day heading more clearly */
  .fc .fc-listMonth-view .fc-list-day-cushion {
    background-color: #fff;
    padding: 1.5rem !important;
    font-weight: bold;
  }
  
.housing-card {
  width: 320px;
  background-color: #214552;
}

.housing-dark {
  background-color: #193640;
}

.transportation-card {
  width: 320px;
  background-color: #fe571e;
}

.transportation-dark {
  background-color: #e14b1c;
}

.healthcare-card {
  width: 320px;
  background-color: #33a493;
}

.healthcare-dark {
  background-color: #2f8f80;
}

.employment-card {
  width: 320px;
  background-color: #6d1a48;
}

.employment-dark {
  background-color: #5c143c;
}

.livability-card {
  width: 320px;
  background-color: #186d77;
}

.livability-dark {
  background-color: #175761;
}

.housing-status {
  background-color: #7fa843;
  padding: 3rem 1.5rem;
}

.housing-status-needsattention {
  background-color: #b02724;
  padding: 3rem 1.5rem;
}

.housing-status-inprogress {
  background-color: #efb734;
  padding: 3rem 1.5rem;
}

.housing-status-ontrack {
  background-color: #7fa843;
  padding: 3rem 1.5rem;
}

.housing-status-achieved {
  background-color: #5ecaf1;
  padding: 3rem 1.5rem;
}

.status-description {
  font-size: 1.5em;
}

.letter-spacing-2 {
  letter-spacing: 0.2em;
}

.letter-spacing-1 {
  letter-spacing: 0.09em;
}
.grid-wrapper {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.pill-option {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 6px 14px;
  border-radius: 50px;
  cursor: pointer;
  font-weight: 500;
  transition: 0.2s ease;
}

.pill-option input {
  accent-color: #333;
}

.pill-blue { background: #dbeafe; }
.pill-teal { background: #ccfbf1; }
.pill-green { background: #d1fae5; }
.pill-lightgreen { background: #ecfdf5; }
.pill-orange { background: #ffedd5; }
.pill-yellow { background: #fef9c3; }
.pill-pink { background: #fce7f3; }
.pill-red { background: #fee2e2; }

.pill-option:hover {
  transform: scale(1.02);
}