// <uniquifier>: Use a unique and descriptive class name
// <weight>: Use a value from 300 to 900

.rubik-<uniquifier> {
  font-family: "Rubik", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

body {
  font-family: "Rubik", sans-serif;
}

.btn-info {
  background-color: #a8b1f2;
  border-color: #a8b1f2;
}

.btn-light {
  background-color: #d3ff74;
  border-color: #d3ff74;
}

a {
  color: #28a745;
}

#main-navbar a {
  color: white;
}

#main-navbar .dropdown .dropdown-menu a {
  color: #000000;
}

#main-navbar .dropdown-menu {
  max-height: 80vh;
  overflow-y: auto;
}

body {
  min-height: 100vh;
  position: relative;
}

.table-topleft td {
  vertical-align: top;
  text-align: left;
}

.tip-image-container {
  text-align: center;
  /* Center-align the title */
  display: inline-block
}

.tip-image-title {
  font-size: 14px;
  /* Customize font size for titles */
  color: white;
  background-color: black;
  margin-bottom: 0px;
  height: 21px;
  /* Add margin below text */
}

.tip-image-subscript {
  font-size: 14px;
  /* Customize font size for titles */
  color: black;
  background-color: gray;
  margin-bottom: 0px;
  height: 21px;
  /* Add margin below text */
}

.protocol-execution {
  margin-bottom: 20px;
  border-left: 2px solid #3baa20;
  padding-left: 15px;
}

footer {
  position: fixed;
  bottom: 0;
  width: 100%;
  text-align: center;
  background: #010101;
  font-size: 20px;
}

@media print {
  .flash-alert-container {
    display: none;
  }
}

.nowrap {
  white-space: nowrap;
}

.btn-secondary.rebrand {
  color: #000;
  background-color: #E1E3F4;
  border: none;
}

.btn-secondary.rebrand:disabled {
  color: #777;
  pointer-events: none;
}

.btn-secondary.rebrand:hover {
  background-color: #B8BCD9;
}

input[type="text"]::placeholder {
  text-transform: none;
}

.green-800 {
  background-color: #485C11;
}

.green-900-text {
  color: #103714;
}

@media (min-width: 1500px) {
  .container {
    max-width: 1420px;
  }
}

/** copied from plasmidsaurus.com footer **/
.Footer {
  --font-sans: "Rubik Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: "Inconsolata Variable", "SF Mono", "Monaco", "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;
  --color-red-200: #fcdede;
  --color-red-300: #f1e0e0;
  --color-red-700: #ea3323;
  --color-orange-700: #f86909;
  --color-yellow-200: #fff4a6;
  --color-yellow-300: #ffe8a3;
  --color-yellow-700: #febe10;
  --color-green-100: oklch(96.2% 0.044 156.743);
  --color-green-200: #e8f3da;
  --color-green-300: #dde9e0;
  --color-green-400: #9eda1d;
  --color-green-500: oklch(72.3% 0.219 149.579);
  --color-green-600: oklch(62.7% 0.194 149.214);
  --color-green-700: #62a811;
  --color-green-800: #506e36;
  --color-green-900: #103714;
  --color-blue-300: #a9d4d1;
  --color-blue-700: #2083fc;
  --color-purple-400: #a8b1f2;
  --color-purple-700: #8538e5;
  --color-gray-50: oklch(98.5% 0.002 247.839);
  --color-gray-100: oklch(96.7% 0.003 264.542);
  --color-gray-200: oklch(92.8% 0.006 264.531);
  --color-gray-300: #f2f2ed;
  --color-gray-400: #ebebeb;
  --color-gray-500: oklch(55.1% 0.027 264.364);
  --color-gray-600: oklch(44.6% 0.03 256.802);
  --color-gray-700: #d6d3d1;
  --color-gray-800: #57534e;
  --color-gray-900: oklch(21% 0.034 264.665);
  --color-stone-600: oklch(44.4% 0.011 73.639);
  --color-black: #000000;
  --color-white: #ffffff;
  --spacing: 0.25rem;
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --container-2xl: 42rem;
  --container-4xl: 56rem;
  --text-xs: 0.75rem;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --text-base: 18px;
  --text-base--line-height: 1.4;
  --text-lg: 1.125rem;
  --text-lg--line-height: calc(1.75 / 1.125);
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --radius-lg: 0.5rem;
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --blur-sm: 8px;
  --aspect-video: 16 / 9;
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  --default-font-family: var(--font-sans);
  --default-mono-font-family: var(--font-mono);
  --breakpoint-nav: 1080px;
  --breakpoint-viz: 1200px;
  --container-width: 1500px;
  --container-width-post: 992px;
  --color-oat-500: #fffdf8;
  --color-oat-600: #f9f6f0;
  --color-oat-700: #f1e6d1;
  --color-oat-800: #e2dcd0;
  --color-background-1: #FFFDF8;
  --color-background-2: #F9F6F0;
  --color-accent-1: #485C11;
  --color-accent-2: #DFECC6;
  --color-accent-3: #8E9C78;
  --color-accent-4: #000000;
  --color-accent-5: #6F6F6F;
  --color-accent-6: #CECECE;
  --color-accent-7: #A4A4A4;
  --color-paragraph: #555555;
  --color-on-accent-1: #FFFFFF;
  --color-divider-1: #E9E9E9;
  --text-base--letter-spacing: -0.09px;
  --text-base--font-weight: 400;
  --text-display: 110px;
  --text-display--line-height: 0.85;
  --text-display--letter-spacing: -3px;
  --text-display--font-weight: 500;
  --text-tablet-display: 90px;
  --text-tablet-display--line-height: 0.8;
  --text-tablet-display--letter-spacing: -2px;
  --text-tablet-display--font-weight: 500;
  --text-mobile-display: 50px;
  --text-mobile-display--line-height: 0.85;
  --text-mobile-display--letter-spacing: -1px;
  --text-mobile-display--font-weight: 500;
  --text-display-statistics: 80px;
  --text-display-statistics--line-height: 1;
  --text-display-statistics--letter-spacing: -3.2px;
  --text-display-statistics--font-weight: 400;
  --text-tablet-display-statistics: 80px;
  --text-tablet-display-statistics--line-height: 1;
  --text-tablet-display-statistics--letter-spacing: -3.2px;
  --text-tablet-display-statistics--font-weight: 400;
  --text-mobile-display-statistics: 64px;
  --text-mobile-display-statistics--line-height: 1;
  --text-mobile-display-statistics--letter-spacing: -2.56px;
  --text-mobile-display-statistics--font-weight: 400;
  --text-heading-1: 60px;
  --text-heading-1--line-height: 1;
  --text-heading-1--letter-spacing: -1.8px;
  --text-heading-1--font-weight: 400;
  --text-tablet-heading-1: 54px;
  --text-tablet-heading-1--line-height: 1;
  --text-tablet-heading-1--letter-spacing: -1.62px;
  --text-tablet-heading-1--font-weight: 400;
  --text-mobile-heading-1: 36px;
  --text-mobile-heading-1--line-height: 1;
  --text-mobile-heading-1--letter-spacing: -1.08px;
  --text-mobile-heading-1--font-weight: 400;
  --text-heading-2: 40px;
  --text-heading-2--line-height: 1.05;
  --text-heading-2--letter-spacing: -1.6px;
  --text-heading-2--font-weight: 400;
  --text-tablet-heading-2: 40px;
  --text-tablet-heading-2--line-height: 1.1;
  --text-tablet-heading-2--letter-spacing: -1.6px;
  --text-tablet-heading-2--font-weight: 400;
  --text-mobile-heading-2: 32px;
  --text-mobile-heading-2--line-height: 1.1;
  --text-mobile-heading-2--letter-spacing: -1.28px;
  --text-mobile-heading-2--font-weight: 400;
  --text-heading-3: 32px;
  --text-heading-3--line-height: 1;
  --text-heading-3--letter-spacing: 0;
  --text-heading-3--font-weight: 400;
  --text-mobile-heading-3: 24px;
  --text-mobile-heading-3--line-height: 1;
  --text-mobile-heading-3--letter-spacing: 0;
  --text-mobile-heading-3--font-weight: 400;
  --text-heading-4: 20px;
  --text-heading-4--line-height: 1.2;
  --text-heading-4--letter-spacing: -0.4px;
  --text-heading-4--font-weight: 600;
  --text-link: 16px;
  --text-link--line-height: 1.4;
  --text-link--letter-spacing: 0.48px;
  --text-link--font-weight: 600;
  --text-caption: 16px;
  --text-caption--line-height: 1.4;
  --text-caption--letter-spacing: 0;
  --text-caption--font-weight: 500;
  --text-tablet-caption: 12px;
  --text-tablet-caption--line-height: 1.4;
  --text-tablet-caption--letter-spacing: 0;
  --text-tablet-caption--font-weight: 500;
  --text-mobile-caption: 12px;
  --text-mobile-caption--line-height: 1.4;
  --text-mobile-caption--letter-spacing: 0;
  --text-mobile-caption--font-weight: 500;
  --text-section-title: 18px;
  --text-section-title--line-height: 1.4;
  --text-section-title--letter-spacing: -0.09px;
  --text-section-title--font-weight: 600;
  --text-section-title-small: 14px;
  --text-section-title-small--line-height: 1.1;
  --text-section-title-small--letter-spacing: 0;
  --text-section-title-small--font-weight: 500;
  --text-paragraph-small: 15px;
  --text-paragraph-small--line-height: 1.4;
  --text-paragraph-small--letter-spacing: -0.075px;
  --text-paragraph-small--font-weight: 400;
  --radius-large: 30px;
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
  font-feature-settings: var(--default-font-feature-settings, normal);
  font-variation-settings: var(--default-font-variation-settings, normal);
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: antialiased;
  --hamburger-speed: 0.1s;
  --swiper-theme-color: #007aff;
  --swiper-navigation-size: 44px;
  --hsf-default-row__horizontal-spacing: 30px;
  --hsf-default-row__vertical-spacing: 20px;
  --hsf-default-module__vertical-spacing: 10px;
  --hsf-default-navigationrow-buttons__justify-content: space-between;
  --hsf-default-navigationrow-buttons-single__justify-content: end;
  --hsf-default-button__font-family: Helvetica;
  --hsf-default-button__font-size: 1em;
  --hsf-default-button__color: rgba(255, 255, 255, 1);
  --hsf-default-button__background-color: rgba(255, 92, 53, 1);
  --hsf-default-button__background-image: none;
  --hsf-default-button__border-radius: 3px;
  --hsf-default-button__border-width: 0px 0px 0px 0px;
  --hsf-default-button__border-style: none;
  --hsf-default-button__border-color: initial;
  --hsf-default-button__padding: 12px 24px;
  --hsf-default-button__box-shadow: none;
  --hsf-default-button__font-weight: 700;
  --hsf-default-richtext__font-family: Helvetica;
  --hsf-default-richtext__font-size: 1em;
  --hsf-default-richtext__color: rgb(33, 45, 58);
  --hsf-default-heading__font-family: Helvetica;
  --hsf-default-heading__color: rgb(33, 45, 58);
  --hsf-default-heading__text-shadow: none;
  --hsf-default-background__padding: 40px;
  --hsf-default-background__border-style: none;
  --hsf-default-background__border-color: rgba(255, 255, 255, 1);
  --hsf-default-background__border-radius: 0px;
  --hsf-default-background__border-width: 1px 1px 1px 1px;
  --hsf-default-progressbar-text__font-family: Helvetica;
  --hsf-default-progressbar-text__font-size: 1em;
  --hsf-default-progressbar-text__color: rgb(33, 45, 58);
  --hsf-default-progressbar-progressLine__background-color: rgba(1, 129, 132, 1);
  --hsf-default-progressbar-progressLine__background-image: none;
  --hsf-default-progressbar-progressLine__border-color: rgb(149, 148, 148);
  --hsf-default-progressbar-progressLine__border-style: none;
  --hsf-default-progressbar-progressLine__border-width: 0px 0px 0px 0px;
  --hsf-default-progressbar-trackLine__background-color: rgba(217, 217, 217, 1);
  --hsf-default-erroralert__font-family: Helvetica;
  --hsf-default-erroralert__font-size: 1em;
  --hsf-default-erroralert__color: rgb(229, 21, 32);
  --hsf-default-infoalert__font-family: Helvetica;
  --hsf-default-infoalert__font-size: 1em;
  --hsf-default-infoalert__color: rgb(37, 51, 66);
  --hsf-default-field-label__font-family: Helvetica;
  --hsf-default-field-label__font-size: 1em;
  --hsf-default-field-label__color: rgb(33, 45, 58);
  --hsf-default-field-description__font-family: Helvetica;
  --hsf-default-field-description__font-size: .8em;
  --hsf-default-field-description__color: rgba(81, 99, 131, .87);
  --hsf-default-field-footer__font-family: Helvetica;
  --hsf-default-field-footer__font-size: .8em;
  --hsf-default-field-footer__color: rgba(81, 99, 131, .87);
  --hsf-default-field-input__font-family: Helvetica;
  --hsf-default-field-input__font-size: 1em;
  --hsf-default-field-input__color: rgb(33, 45, 58);
  --hsf-default-field-input__background-color: rgb(245, 248, 250);
  --hsf-default-field-input__placeholder-color: rgb(37, 51, 66);
  --hsf-default-field-input__border-color: rgb(149, 148, 148);
  --hsf-default-field-input__border-width: 1px 1px 1px 1px;
  --hsf-default-field-input__border-style: solid;
  --hsf-default-field-input__border-radius: 3px;
  --hsf-default-field-input__padding: 10px;
  --hsf-default-field-textarea__font-family: Helvetica;
  --hsf-default-field-textarea__font-size: 1em;
  --hsf-default-field-textarea__color: rgb(33, 45, 58);
  --hsf-default-field-textarea__background-color: rgb(245, 248, 250);
  --hsf-default-field-textarea__placeholder-color: rgb(37, 51, 66);
  --hsf-default-field-textarea__border-color: rgb(149, 148, 148);
  --hsf-default-field-textarea__border-width: 1px 1px 1px 1px // have to define this or else cssnano will bork it;
  --hsf-default-field-textarea__border-style: solid;
  --hsf-default-field-textarea__border-radius: 3px;
  --hsf-default-field-textarea__padding: 10px;
  --hsf-default-field-checkbox__padding: 8px;
  --hsf-default-field-checkbox__background-color: rgb(245, 248, 250);
  --hsf-default-field-checkbox__color: rgb(33, 45, 58);
  --hsf-default-field-checkbox__border-color: rgb(149, 148, 148);
  --hsf-default-field-checkbox__border-width: 1px 1px 1px 1px // have to define this or else cssnano will bork it;
  --hsf-default-field-checkbox__border-style: solid;
  --hsf-default-field-radio__padding: 8px;
  --hsf-default-field-radio__background-color: rgb(245, 248, 250);
  --hsf-default-field-radio__color: rgb(33, 45, 58);
  --hsf-default-field-radio__border-color: rgb(149, 148, 148);
  --hsf-default-field-radio__border-width: 1px 1px 1px 1px // have to define this or else cssnano will bork it;
  --hsf-default-field-radio__border-style: solid;
  --announcement-bar-height: 57.1875px;
  font-family: var(--font-sans);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
  font-weight: var(--tw-font-weight, var(--text-base--font-weight));
  text-box-edge: cap alphabetic;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0 solid;
  position: relative;
  z-index: 10;
  overflow: hidden;
  color: var(--color-background-1);
}
.Footer a {
  color: var(--color-accent-2);
}
.Footer-container {
  margin-inline: auto;
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
}
.Footer-containerInner {
  margin-inline: auto;
  display: flex;
  max-width: var(--container-width);
  flex-direction: column;
  gap: 60px;
  padding: 16px;
  padding-top: 40px;
}
@media (width >= 1024px) {
  .Footer-containerInner {
    gap: 40px;
  }
}
@media (width >= 1024px) {
  .Footer-containerInner {
    padding: 20px;
  }
}
@media (width >= 1024px) {
  .Footer-containerInner {
    padding-top: 40px;
  }
}
.Footer-nav {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 27px;
}
@media (width >= 768px) {
  .Footer-nav {
    flex-direction: row;
  }
}
.Footer-nav a {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: transparent;
  font-family: var(--font-mono);
  font-size: var(--text-link);
  line-height: var(--tw-leading, var(--text-link--line-height));
  letter-spacing: var(--tw-tracking, var(--text-link--letter-spacing));
  font-weight: var(--tw-font-weight, var(--text-link--font-weight));
  text-decoration-line: none;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  color: var(--color-oat-500);
}
@media (hover: hover) {
  .Footer-nav a:hover {
    border-color: var(--color-accent-2);
    text-decoration: underline;
    text-underline-offset: 6px;
    text-decoration-thickness: 0.5px;
  }
}
.Footer-social {
  position: absolute;
  top: 40px;
  right: 16px;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 22px;
}
@media (width >= 768px) {
  .Footer-social {
    position: relative;
  }
}
@media (width >= 768px) {
  .Footer-social {
    top: calc(var(--spacing) * 0);
  }
}
@media (width >= 768px) {
  .Footer-social {
    right: calc(var(--spacing) * 0);
  }
}
@media (width >= 768px) {
  .Footer-social {
    margin: calc(var(--spacing) * 0);
  }
}
@media (width >= 768px) {
  .Footer-social {
    height: 100%;
  }
}
.Footer-social a {
  opacity: 80%;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
@media (hover: hover) {
  .Footer-social a:hover {
    opacity: 100%;
  }
}
.Footer-social img {
  display: block;
  height: 20px;
  width: auto;
}
.Footer-a {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
}
@media (width >= 1024px) {
  .Footer-a {
    flex-direction: row;
  }
}
.Footer-b {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 60px;
}
@media (width >= 1024px) {
  .Footer-b {
    flex-direction: row;
  }
}
@media (width >= 1024px) {
  .Footer-b {
    gap: 20px;
  }
}
.Footer-c {
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 24px;
}
@media (width >= 768px) {
  .Footer-c {
    flex-direction: row;
  }
}
@media (width >= 768px) {
  .Footer-c {
    align-items: flex-end;
  }
}
@media (width >= 768px) {
  .Footer-c {
    gap: 40px;
  }
}
.Footer-finePrint {
  display: flex;
  flex-direction: column;
  gap: 10px;
  gap: 12px;
  font-family: var(--font-mono);
  font-size: var(--text-caption);
  line-height: var(--tw-leading, var(--text-caption--line-height));
  letter-spacing: var(--tw-tracking, var(--text-caption--letter-spacing));
  font-weight: var(--tw-font-weight, var(--text-caption--font-weight));
  color: var(--color-accent-2);
  text-align: left;
}
@media (width >= 768px) {
  .Footer-finePrint {
    flex-direction: row;
  }
}
@media (width >= 768px) {
  .Footer-finePrint {
    gap: 24px;
  }
}
.Footer-finePrintText {
  font-family: var(--font-mono);
  font-size: var(--text-caption);
  line-height: var(--tw-leading, var(--text-caption--line-height));
  letter-spacing: var(--tw-tracking, var(--text-caption--letter-spacing));
  font-weight: var(--tw-font-weight, var(--text-caption--font-weight));
  color: var(--color-accent-2);
}
.Footer-finePrintLinks {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media (width >= 768px) {
  .Footer-finePrintLinks {
    flex-direction: row;
  }
}
@media (width >= 768px) {
  .Footer-finePrintLinks {
    gap: 24px;
  }
}
.Footer-finePrintLinks a {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: transparent;
  text-decoration-line: none;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
.Footer-finePrintLinks a:hover {
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-thickness: 0.5px;
  border-color: var(--color-accent-2);
}