  /* Responsive Table Module Styles */
  :root {
    --hsd-rt-scrollbar-color: #f2f2f2 transparent;
    --hsd-rt-webkit-scrollbar-thumb-color: #f2f2f2;
    --hsd-rt-webkit-scrollbar-track-color: transparent;
  }

  /* Table Scroll Label Module Styles */
  :root {
    /* ::before */
    --hsd-mod-tsl-before-background: transparent;
    --hsd-mod-tsl-before-color: #000;
    --hsd-mod-tsl-before-font-size: 14px;
  }

  /* If the table starts scrolling before 650px screensize, update
    the max-width to the screen size where scrolling starts */
  @media screen and (max-width: 716px) {
    .hsd-mod-table-scroll-label:before {
      content: "Scroll to see more \2192";
    }
  }
  @media screen and (max-width: 650px) {
    .hsd-mod-table-scroll-label:before {
      content: "Drag to see more \2192";
    }
  }

  /* Responsive Table Module Styles */
  .hsd-mod-responsive-table {
    max-width: 1440px;
    margin: 0 auto;
    padding: 1rem;
  }

  /* Scroll For Overflow */
  .hsd-mod-rt-scroll-cont {
    max-width: 100%;

    overflow-x: scroll;
    scrollbar-color: var(--hsd-rt-scrollbar-color);
  }
  .hsd-mod-rt-scroll-cont::-webkit-scrollbar-thumb {
    background: var(--hsd-rt-webkit-scrollbar-thumb-color);
  }
  .hsd-mod-rt-scroll-cont::-webkit-scrollbar-track {
    background: var(--hsd-rt-webkit-scrollbar-track-color);
  }

  /* Table */
  .hsd-mod-rt-table {
    max-width: 100% !important;
    width: 100% !important;
    margin: 1rem 0px;

    border-collapse: collapse;
  }

  .hsd-mod-rt-table th,
  .hsd-mod-rt-table td {
    min-width: 150px;
    padding: 8px;

    border: 1px solid #ddd;
    text-align: center;
  }

  .hsd-mod-rt-table thead th {
    background-color: #f2f2f2;
    color: #333;
  }

  .hsd-mod-rt-table tr:nth-child(even) {
    background-color: #f9f9f9;
  }

  .hsd-mod-rt-table tr:hover {
    background-color: #f1f1f1;
  }

  .hsd-mod-rt-table td {
    color: #555;
  }

  :is(.hsd-mod-rt-table td ul, .hsd-mod-rt-table td ol) {
    display: table;
    margin: 0 auto;
    list-style-position: inside;
    
    text-align: left;
  }

  .hsd-mod-rt-show-mobile {
    display: none;

    text-align: center;
  }

  @media screen and (min-width: 740px) {
    /* hide scrollbar but allow scrolling */
    .hsd-mod-rt-scroll-cont {
      /* -ms-overflow-style: none;  */
      /* for Internet Explorer, Edge */
      /* scrollbar-width: none;  */
      /* for Firefox */
      overflow-y: scroll;
    }

    .hsd-mod-rt-scroll-cont::-webkit-scrollbar {
      display: none; /* for Chrome, Safari, and Opera */
    }
  }

  @media screen and (max-width: 740px) {
    .hsd-mod-rt-show-mobile {
      display: block;
      text-align: center;
    }
  }

  /* Table Scroll Label Mod Styles */
  .hsd-mod-table-scroll-label {
    position: relative;
  }

  .hsd-mod-table-scroll-label:before {
    position: sticky;
    top: 0;
    left: 0;

    padding-left: 8px;

    background: var(--hsd-mod-tsl-before-background);
    color: var(--hsd-mod-tsl-before-color) !important;
    font-size: var(--hsd-mod-tsl-before-font-size) !important;
    font-style: italic;
  }

  /* Content w/ Lifestyles customizable root variables */
:root {
  /* cwl = Content w/ Lifestyles */

  /* Accent Class */
  --hsd-mod-cwl-50-50-accent-background-color: #000;
  --hsd-mod-cwl-50-50-accent-text-color: #fff;
  --hsd-mod-cwl-50-50-accent-link-color: #fff;
}

/* Module Parent */
.hsd-mod-content-w-lifestyle-50-50 {
  display: grid;
  grid-template-columns: 50% 50%;
  align-items: center;
  justify-items: center;
  max-width: 1440px;
  width: 100%;
  margin: 1rem auto;
}

/* Image Cont */
.hsd-mod-cwl-50-50-img {
  width: 100%;
  height: 100%;
}
.hsd-mod-cwl-50-50-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Content Cont */
.hsd-mod-cwl-50-50-content {
  margin: 1rem;
  padding: 4rem;
  box-sizing: border-box;
}

/*  ** Optional Classes ** */

/* Reverse Class */
/* (swaps image and content position when added) */
.hsd-mod-cwl-50-50-reverse {
  grid-template-columns: 50% 50%;
}
.hsd-mod-cwl-50-50-reverse .hsd-mod-cwl-50-50-content {
  order: 1;
}

/* Accent styling */
.hsd-mod-cwl-50-50-accent {
  color: var(--hsd-mod-cwl-50-50-accent-text-color) !important;
  background-color: var(--hsd-mod-cwl-50-50-accent-background-color);
}
.hsd-mod-cwl-50-50-accent a {
  color: var(--hsd-mod-cwl-50-50-accent-link-color) !important;
}

/* Split 1 image: stack two images vertically to look like one image */
.hsd-mod-cwl-50-50-img--stacked {
  height: auto;
}

.hsd-mod-cwl-50-50-img--stacked img {
  display: block;
  width: 100%;
  height: auto !important;
  margin: 0;
  padding: 0;
}

/* Media Query for mobile */
@media screen and (max-width: 767px) {
  /* Module Parent */
  .hsd-mod-content-w-lifestyle-50-50 {
    grid-template-columns: 1fr;
  }

  /* Content Cont */
  .hsd-mod-cwl-50-50-content {
    margin: 1rem;
    padding: 1rem;
  }

  /* Have the content above the image */
  .hsd-mod-content-w-lifestyle-50-50 .hsd-mod-cwl-50-50-content {
    order: 2;
  }
}
