:root {
  --Border-width: 8px;
  --Recommendation-01: #ff7f0e;
  --Recommendation-02: #637dc0;
  --Recommendation-03: #2ca02c;
  --Recommendation-04: #4daec0;
}

html {
  scroll-behavior: smooth;
}

.category {
  display: flex;
  height: 80px;
  align-items: center;
  justify-content: center;
  gap: 25px;
  flex-shrink: 0;
  width: 100%;
  padding-top: min(2%, 5px);
  padding-bottom: min(2%, 5px);
}

.main-rec-container {
  padding: 0 2% 2% 2%;
}

.recommendation-category-text {
  color: var(--Color, #fff);
  text-align: center;
  font-family: "Proxima Nova";
  font-size: 30px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  scroll-margin-top: 140px;
}

.recommendation-title-text {
  align-self: stretch;
  color: #000;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 28px;
  font-style: normal;
  font-weight: 700;
  line-height: 32px; /* 114.286% */
}

.table {
  display: grid;
  grid-template-columns: 40% 60%;
  /* gap: 10px; /* Space between cells */
  background: #f3f1e3;
}

.table-row {
  display: contents; /* Ensures rows act as grid items */
}

.table-cell {
  padding: 10px 40px;
  color: #000;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px; /* 177.778% */
}

.table-cell-action-item {
  color: #000;
  padding-left: 20px;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 32px; /* 177.778% */
  border-bottom: 4px solid #fff;
}

.table-cell-mayors-plan {
  border-bottom: 4px solid #fff;
}

.table-row.header .table-cell {
  border-bottom: 8px solid #fff;
}

.header .table-cell {
  color: #000;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 32px; /* 160% */
}

ul {
  padding-left: 15px;
  margin: 0;
}

.show-action-items {
  background-color: #4d4d4d;
  color: #f3f1e3;
  padding: 12px;
  /* border: none; */
  height: 50px;
  align-items: center;
  font-family: "Proxima Nova";
  font-size: 20px;
  font-weight: 400;
}
.show-action-items:hover {
  background-color: #7e7e7e;
}
.open-summary-button {
  background-color: #4d4d4d;
  color: #f3f1e3;
  padding: 7px;
  /* border: none; */
  border-radius: 3px;
  font-family: "Proxima Nova";
}
.open-summary-button:hover {
  background-color: #7e7e7e;
}
.chart6-btn {
  background-color: #5a5a5a;
  color: #f3f1e3;
  padding: 7px;
  /* border: none; */
  border-radius: 3px;
  cursor: default;
}
.chart6-btn:hover {
  cursor: default;
}
.unselected-chart6-btn {
  background-color: #e3e3e3;
  color: #5a5a5a;
}
.unselected-chart6-btn:hover {
  background-color: #c5c5c5;
}

.two-col-layout {
  display: flex;
  flex-direction: row;
  padding: 50px 30px;
  gap: 5%;
  /* max-width: 1200px;
  margin-left: auto;
  margin-right: auto; */
  justify-content: center;
  align-items: flex-start;
}

.single-col-layout {
  padding: 50px 30px;
  /* padding-bottom: 20px; */
  max-width: 590px;
  margin-left: auto;
  margin-right: auto;
}

.text-block-two-col {
  width: 50%;
}
.two-col-chart {
  width: 50%;
}

.rec-chart-full-w-single-col {
  padding: 0 30px 50px 30px;
}

.rec-chart-container {
  display: flex;
  justify-content: center;
  padding: 5%;
  background-color: #e9e7d9;
  flex-direction: column;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.rec-chart-title {
  color: #000;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px; /* 120% */
  /* margin-bottom: 30px; */
}

.rec-chart-container img {
  max-width: 100%;
  height: auto;
  display: block;
  padding-top: 12px;
  padding-bottom: 2px;
}

.rec-text-block {
  color: #000;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px; /* 160% */
}

.rec-intro-text {
  color: #fff;
  text-align: center;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px; /* 100% */
  background-color: #5a5a5a;
  padding: 15px 25px;
}

.rec-summary-container {
  display: flex;
  flex-direction: row;
  /* flex-wrap: wrap; */
  gap: 20px;
  padding-top: 21px;
}

.rec-summary-bg {
  color: #000;
  padding-right: 12px;
  padding-top: 12px;
}

.category-parent {
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
}

.category-summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
  flex-shrink: 0;
  /* min-width: 244px; */
  padding: 21px 17px;
  flex: 1;
}

.recommendation-category-summary-text {
  color: #fff;
  text-align: center;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.rec-summary-parent {
  padding: 2%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  background-color: #e9e7d9;
}

.rec-container {
  flex: 1;
  text-decoration: none;
  border-width: 2px;
  border-style: solid;
  opacity: 1;
  transition: opacity 0.3s ease;
}
.reduced-opacity {
  opacity: 0.3;
}

.rec-title-summary {
  color: #000;
  font-feature-settings: "liga" off, "clig" off;
  font-family: "Proxima Nova";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.goals-title {
  line-height: 32px;
}

.table-row.header.mobile {
  display: none;
}

.rec-hr-separator {
  margin: 0 30px;
}

@media (max-width: 992px) {
  .two-col-layout {
    flex-direction: column;
    /* gap: 20%; */
  }
  .text-block-two-col {
    width: auto;
  }
  .two-col-chart {
    width: auto;
    padding-top: 32px;
  }
}

@media (max-width: 900px) {
  .rec-summary-container {
    flex-direction: column;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
  .main-rec-container {
    padding: 0 20px 20px 20px;
  }
}

@media (max-width: 800px) {
  .table {
    grid-template-columns: unset;
  }
  .table-cell-mayors-plan {
    border-bottom: 4px solid #fff;
    padding: 0 20px 20px 20px;
  }
  .table-row.header.desktop {
    display: none;
  }
  .table-row.header.mobile {
    display: contents;
  }
  .table-cell-action-item {
    padding: 0 20px 0 0;
    border-bottom: unset;
  }
}

@media (max-width: 768px) {
  .two-col-layout {
    padding: 30px 20px;
  }
  .single-col-layout {
    padding: 30px 20px;
  }
  .rec-chart-full-w-single-col {
    padding: 0 20px 30px 20px;
  }
  .rec-summary-parent {
    padding-left: 20px;
    padding-right: 20px;
  }
  .rec-hr-separator {
    margin: 0 20px;
  }
  .recommendation-title-text {
    padding: 0 20px 0 0;
  }
  .show-action-items {
    height: auto;
  }
}

@media (max-width: 352px) {
  .category {
    height: unset;
  }
}
