@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;500;700&display=swap");

.page-header {
  margin: 0;
  justify-content: space-between;
  padding: 1.2rem 0;
}
.page-header.no-padding-bottom {
  padding-bottom: 0;
}
.page-header .page-name .btn--back {
  border-right: 1px solid #e5e5e5;
  margin-right: 1rem;
  display: flex;
  align-items: center;
  width: 28px;
  height: 28px;
}
.page-header .page-name .btn--back svg {
  width: 12px;
  height: 12px;
}
.page-header .page-name .btn--back .fill {
  fill: var(--color-primary);
}
.page-header .page-name h1, .page-header .page-name h2, .page-header .page-name h3 {
  font-weight: 600;
  margin-bottom: 0;
}
.page-header .page-name .btn {
  margin: 0 -1rem !important;
}
.page-header .page-mid {
  flex: 1 1 60%;
}
.page-header .page-settings {
  margin-left: auto;
}
.page-header .page-settings > * {
  margin-left: 1rem;
}
.page-header .page-settings input[type=search] {
  max-width: 200px;
}
.page-header .nav {
  margin: 1rem 0 0 0;
}
.page-header {
  display: flex;
  flex-wrap: wrap;
}
.page-header .nav {
  width: 100%;
}
.page-header,
.page-name,
.page-settings {
  display: flex;
  align-items: center;
}.student-avatar {
  position: relative;
}
.student-avatar > .avatar {
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--color-primary);
  position: relative;
  overflow: hidden;
}
.student-avatar > .avatar abbr {
  display: block;
}
.student-avatar > .avatar img {
  /* filter: hue-rotate(300deg); */
  transform: scale(1.1);
  max-width: 100%;
  max-height: none;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: ease all 0.2s;
}
.student-avatar > .avatar img.loaded {
  opacity: 1;
}
.student-avatar.round > .avatar {
  border-radius: 100%;
}
.student-avatar.complete > .avatar {
  box-shadow: 0 0 0px 2px #fff, 0 0 0px 4px var(--color-green);
}
.student-avatar .status-circle {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-70%, -50%);
}
.student-avatar .busy-spinner {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.student-avatar .busy-spinner:before, .student-avatar .busy-spinner:after {
  width: 120%;
  height: 120%;
  margin-top: 1px;
  margin-left: 0;
  top: -10%;
  left: -10%;
}.page-name {
  flex-direction: column;
  align-items: flex-start;
}
.page-name .date-select {
  margin-top: -15px;
}
.page-name .btn {
  background: transparent;
}
.date-select .dropdown-list {
  padding: 0;
}
.date-select .vdp-datepicker__calendar {
  box-shadow: none;
}
.export-modal .modal {
  max-width: 600px;
}div.route-item-container {
  position: relative;
  margin-bottom: 20px;
}
label.route-item {
  background-color: #eee;
  border: 1px solid #ddd;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  display: block;
  padding: 40px;
  text-align: left;
}
label.route-item.hover:hover {
  background-color: #ddd;
}
label.route-item.hover {
  cursor: pointer;
}
div.route-item-container input {
  position: absolute;
  right: 0px;
  top: 0px;
  z-index: -1;
  visibility: hidden;
}
.stops-title {
  border-bottom: 1px solid var(--color-primary);
  font-size: 130%;
  font-weight: 500;
  margin-bottom: 10px;
  padding-bottom: 3px;
}
div.route-item-container h2 {
  color: #666;
  font-size: 1.4rem;
  margin-bottom: 5px;
  text-align: right;
}
div.route-item-container input:checked + label.route-item {
  background-color: var(--color-primary);
  border: 1px solid #111;
  color: #fff;
}
div.route-item-container input:checked + label.route-item h2 {
  color: #fff;
}
div.route-item-container input:checked + label.route-item .stops-title {
  border-color: #fff;
}
div.route-item-container input:checked + label.route-item .stop-list span:nth-child(1) {
  color: #eee;
}
.submit-route {
  bottom: 0;
  left: 0;
  padding: 0 10px 10px;
  position: fixed;
  width: 100%;
  z-index: 999;
}
.page--late-bus {
  padding-bottom: 80px;
  position: relative;
  z-indeX: 1;
}
.btn.btn--signup {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
}
.stop-list {
  display: grid;
  gap: 10px;
  grid-template-columns: 70px 1fr;
  margin-bottom: 5px;
}
.stop-list span:nth-child(1) {
  color: #666;
  font-size: 95%;
}.page-name {
  flex-direction: column;
  align-items: flex-start;
}
.page-name .date-select {
  margin-top: -15px;
}
.page-name .btn {
  background: transparent;
}
.date-select .dropdown-list {
  padding: 0;
}
.date-select .vdp-datepicker__calendar {
  box-shadow: none;
}
.export-modal .modal {
  max-width: 600px;
}.impersonator {
  padding: 20px;
}
.impersonator .tab-nav {
  border-bottom: 1px solid #e3e5ea;
  margin-bottom: 1rem;
}
.impersonator .results {
  max-height: 50vh;
  overflow: auto;
}
.impersonator .search {
  display: flex;
}
.impersonator .search button {
  margin-left: 10px;
}
.impersonator .title {
  display: block;
}
.impersonator .searching,
.impersonator .none {
  margin: 1em 0;
  font-size: 1.2em;
  text-align: center;
}
.impersonator .form-input {
  display: block;
  width: 100%;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  line-height: 1.25;
  color: #495057;
  background-color: #fff;
  background-image: none;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.impersonator .form-input::placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.impersonator .group .staff-list {
  padding: 1rem;
}
.impersonator .list-group {
  margin: 1em 0;
}
.impersonator .list-group .list-group-item {
  position: relative;
  cursor: pointer;
  padding: 1em;
}
.impersonator .list-group .list-group-item a {
  color: #495057;
}
.impersonator .list-group .list-group-item a .name {
  font-weight: bold;
  color: var(--color-primary);
}
.impersonator .list-group .list-group-item a:hover {
  color: var(--color-primary);
}
.impersonator .list-group .list-group-item .impersonate {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1em;
}.user-nav > button {
  padding: 0;
  border: 0 none;
  box-shadow: none;
  width: 36px;
  height: 36px;
  border-radius: 100%;
}
.user-nav > button:hover {
  padding: 0;
  border: 0 none;
  box-shadow: none;
  background: transparent;
}
.user-nav > button:hover > .avatar {
  background: var(--color-primary-a-80);
}
.user-nav > button > .avatar {
  width: 101%;
  height: 101%;
  background: var(--color-primary);
  transition: ease all 0.4s;
}
.user-nav .dropdown-list {
  flex-direction: column;
  top: 44px;
  width: 300px !important;
  max-height: 100vh;
}
.user-nav .dropdown-list nav {
  border-top: 1px solid #f2f2f2;
}
.user-nav .dropdown-list nav .dropdown-item:hover {
  background: var(--color-primary-a-70);
}
.user-nav .dropdown-list nav .dropdown-item--text {
  align-items: center;
  padding: 8px 20px;
}
.user-nav .dropdown-list nav a {
  justify-content: center;
  align-items: center;
}
.user-nav .user-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--color-text);
  padding: 1rem;
}
.user-nav .user-info .name {
  font-size: 1.3rem;
  margin: 0.4rem 0 0 0;
  font-weight: 500;
}
.user-nav .user-info .avatar {
  width: 70px;
  height: 70px;
  background: var(--color-primary) !important;
}
.user-nav footer {
  padding: 0.8rem 1.3rem 0.6rem 1.3rem;
  border-top: 1px solid #f2f2f2;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.user-nav footer .btn {
  color: var(--color-text-faded);
  padding: 0;
}
.user-nav footer .btn:hover {
  color: var(--color-primary);
}
.user-nav footer .btn .icon {
  width: 24px;
  height: 24px;
  margin-left: 0.5rem;
}header.navbar {
  background: #fff;
  display: flex;
  justify-content: space-evenly;
  min-height: 66px;
  z-index: 7;
  position: relative;
}
header.navbar .container-fluid {
  margin: 0 1rem;
}
header.navbar .brand {
  flex: 1 1 18%;
}
header.navbar .brand .brand-icon {
  cursor: pointer;
  margin-left: -6px;
}
header.navbar .brand .brand-icon .rect-1, header.navbar .brand .brand-icon .rect-2, header.navbar .brand .brand-icon .rect-3 {
  width: 18px;
  transition: ease all 200ms;
}
header.navbar .brand .brand-icon .rect-2 {
  width: 12px;
}
header.navbar .brand .brand-icon:hover .rect-1, header.navbar .brand .brand-icon:hover .rect-3 {
  width: 12px;
}
header.navbar .brand .brand-icon:hover .rect-2 {
  width: 18px;
}
header.navbar .primary-nav {
  flex: 1 1 60%;
}
header.navbar .primary-nav > ul {
  margin: 0 auto;
}
header.navbar .user-nav {
  flex: 1 1 18%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
header.navbar .container-fluid {
  padding-top: 0;
  padding-bottom: 0;
}
header.navbar .show-tray {
  margin-right: 1rem;
}
header.navbar .show-tray .fill {
  fill: var(--color-primary);
}
header.navbar .nav-items .nav-link {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  font-family: var(--font-family-button);
  font-weight: 400;
  padding: var(--space-m) var(--space-l);
}
header.navbar .nav-items .nav-link .icon {
  width: 26px;
  height: 26px;
  display: block;
  margin-bottom: var(--space-s);
}
header.navbar .nav-items .nav-link .icon .fill {
  fill: rgba(126, 126, 126, 0.4);
}
header.navbar .nav-items .nav-link .icon .stroke {
  stroke: rgba(126, 126, 126, 0.4);
}
header.navbar .nav-items .nav-link.active {
  font-weight: 500 !important;
  color: var(--color-primary);
  border-radius: var(--border-radius);
  font-weight: bold;
}
header.navbar .nav-items .nav-link.active:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  height: 4px;
  width: 100%;
  background: var(--color-primary);
  border-radius: 0 0 4px 4px;
}
header.navbar .nav-items .nav-link.active .icon {
  opacity: 1;
}
header.navbar .nav-items .nav-link.active .icon .fill {
  fill: var(--color-primary);
}
header.navbar .nav-items .nav-link.active .icon .stroke {
  stroke: var(--color-primary);
}
header.navbar .nav-items .nav-link:hover {
  color: rgb(0, 0, 0) !important;
}
header.navbar .nav-items .nav-link:hover .icon .fill {
  fill: var(--color-primary);
}
header.navbar .nav-items .nav-link:hover .icon .stroke {
  stroke: var(--color-primary);
}
[data-theme=student-late-bus] {
  --text-base: 13pt;
  --font-primary: Inter, sans-serif; /*-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";*/
  --font-family-sans-serif: Inter, sans-serif; /*-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";*/
  --font-family-heading: Inter, sans-serif;
  --font-family-button: Inter, sans-serif;
  --font-family-nav: Inter, sans-serif;
  --color-text: hsl(210, 11%, 15%);
  --color-text-faded: hsl(210, 6%, 43%);
  --color-text-heading: hsl(210, 18%, 26%);
  --color-primary: #1831a1;
  --color-primary-lighter: hsl(212, 62%, 57%);
  --color-primary-light: hsl(214, 47%, 50%);
  --color-primary-dark: hsl(214, 47%, 40%);
  --color-primary-darker: hsl(214, 47%, 30%);
  --color-primary-hover: rgb(68, 100, 187);
  --color-primary-a-10: rgba(68, 100, 187, .1);
  --color-primary-a-20: rgba(68, 100, 187, .2);
  --color-primary-a-30: rgba(68, 100, 187, .3);
  --color-primary-a-40: rgba(68, 100, 187, .4);
  --color-primary-a-50: rgba(68, 100, 187, .5);
  --color-primary-a-60: rgba(68, 100, 187, .6);
  --color-primary-a-70: rgba(68, 100, 187, .7);
  --color-primary-a-80: rgba(68, 100, 187, .8);
  --color-primary-a-90: rgba(68, 100, 187, .9);
  --color-accent: rgb(233, 109, 7);
  --color-accent-a-10: rgba(233, 109, 7, 0.10);
  --color-accent-a-20: rgba(233, 109, 7, 0.20);
  --color-purple: rgb(126, 53, 167);
  --color-purple-a-10: rgba(126, 53, 167, 0.10);
  --color-purple-a-20: rgba(126, 53, 167, 0.20);
  --color-green: rgb(80, 184, 60);
  --color-green-a-10: rgba(80, 184, 60, 0.10);
  --color-green-a-20: rgba(80, 184, 60, 0.20);
  --color-red: rgb(212, 34, 34);
  --color-red-a-10: rgba(225, 14, 14, 0.10);
  --color-red-a-20: rgba(225, 14, 14, 0.20);
  --color-grey: rgb(113, 124, 132);
  --color-grey-a-10: rgba(113, 124, 132, 0.10);
  --color-grey-a-20: rgba(113, 124, 132, 0.20);
  --color-info: hsl(198, 70%, 44%);
  --color-success: var(--color-green);
  --color-danger: var(--color-red);
  --color-warning: hsl(33, 81%, 53%);
  --color-dark: rgb(54, 66, 78);
  --color-light: var(--color-grey);
  --color-bg: hsl(220, 33%, 98%);
  --color-heading: hsl(216, 66%, 40%);
  --color-really-light: #e3e8ec;
  --color-a: var(--color-primary);
  --color-a-hover: var(--color-primary-hover);
  --color-row-hover: rgba(0, 0, 0, 0.01);
  --color-row-border: rgb(240, 240, 240);
  --color-privacy: #6fb9c1;
  --input-radius: 8px;
  --input-border: 2px solid #919599;
  --input-border-hover: 2px solid #8598a8;
  --input-border-active: 2px solid var(--color-primary);
  --input-shadow-active: 0px 0px 0px 4px var(--color-primary-a-30),
      0px 1px 0px 1px var(--color-primary-a-20);
  --btn-radius: 24px;
  --btn-padding-x: var(--space-m);
  --btn-padding-y: var(--space-s);
  --btn-shadow: 0 none;
  --btn-shadow-hover: 0 6px 9px #0000001f, 0 2px 5px #0000000f;
  --empty-gradient: repeating-linear-gradient( 45deg, #fff, #fff 10px, #F1F1F1 10px, #F1F1F1 20px );
  --heading-row-border-color: #eaeaea;
  --row-border-color: #f3f3f3;
  --input-check-radio-size: 24px;
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, input {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}
/* Remove default padding */
ul[class],
ol[class] {
  padding: 0;
}
/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}
/* Set core body defaults */
body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}
/* Remove list styles on ul, ol elements with a class attribute */
ul[class],
ol[class] {
  list-style: none;
}
/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}
/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
}
/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}
/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}
/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
* {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
}
}
:root {
  --color-primary-lighter: hsl(206, 65%, 80%);
  --color-primary-light: hsl(206, 65%, 70%);
  --color-primary: hsl(206, 65%, 60%);
  --color-primary-rgb: 115, 169, 211;
  --color-primary-dark: hsl(206, 65%, 40%);
  --color-primary-darker: hsl(206, 65%, 20%);
  --color-primary-a-10: hsla(206, 65%, 60%, .10);
  --color-primary-a-20: hsla(206, 65%, 60%, .20);
  --color-primary-a-30: hsla(206, 65%, 60%, .30);
  --color-primary-a-40: hsla(206, 65%, 60%, .40);
  --color-primary-a-50: hsla(206, 65%, 60%, .50);
  --color-primary-a-60: hsla(206, 65%, 60%, .60);
  --color-primary-a-70: hsla(206, 65%, 60%, .70);
  --color-primary-a-80: hsla(206, 65%, 60%, .80);
  --color-primary-a-90: hsla(206, 65%, 60%, .90);
  --color-accent-lighter: hsl(27, 94%, 95%);
  --color-accent-light: hsl(27, 94%, 80%);
  --color-accent: hsl(27, 94%, 47%);
  --color-accent-rgb: 233, 109, 7;
  --color-accent-dark: hsl(27, 94%, 40%);
  --color-accent-darker: hsl(27, 94%, 20%);
  --color-accent-a-10: hsla(27, 94%, 47%, .10);
  --color-accent-a-20: hsla(27, 94%, 47%, .20);
  --color-accent-a-30: hsla(27, 94%, 47%, .30);
  --color-accent-a-40: hsla(27, 94%, 47%, .40);
  --color-accent-a-50: hsla(27, 94%, 47%, .50);
  --color-accent-a-60: hsla(27, 94%, 47%, .60);
  --color-accent-a-70: hsla(27, 94%, 47%, .70);
  --color-accent-a-80: hsla(27, 94%, 47%, .80);
  --color-accent-a-90: hsla(27, 94%, 47%, .90);
  --color-gray-lighter: hsl(205, 8%, 80%);
  --color-gray-light: hsl(205, 8%, 60%);
  --color-gray: hsl(205, 8%, 50%);
  --color-gray-rgb: 119, 127, 133;
  --color-gray-dark: hsl(205, 8%, 40%);
  --color-gray-darker: hsl(205, 8%, 20%);
  --color-gray-a-10: hsla(205, 8%, 50%, .10);
  --color-gray-a-20: hsla(205, 8%, 50%, .20);
  --color-gray-a-30: hsla(205, 8%, 50%, .30);
  --color-gray-a-40: hsla(205, 8%, 50%, .40);
  --color-gray-a-50: hsla(205, 8%, 50%, .50);
  --color-gray-a-60: hsla(205, 8%, 50%, .60);
  --color-gray-a-70: hsla(205, 8%, 50%, .70);
  --color-gray-a-80: hsla(205, 8%, 50%, .80);
  --color-gray-a-90: hsla(205, 8%, 50%, .90);
  --color-danger-lighter: hsl(0, 70%, 95%);
  --color-danger-light: hsl(0, 70%, 80%);
  --color-danger: hsl(0, 70%, 45%);
  --color-danger-rgb: 191, 43, 43;
  --color-danger-dark: hsl(0, 70%, 40%);
  --color-danger-darker: hsl(0, 70%, 20%);
  --color-danger-a-10: hsla(0, 70%, 45%, .10);
  --color-danger-a-20: hsla(0, 70%, 45%, .20);
  --color-danger-a-30: hsla(0, 70%, 45%, .30);
  --color-danger-a-40: hsla(0, 70%, 45%, .40);
  --color-danger-a-50: hsla(0, 70%, 45%, .50);
  --color-danger-a-60: hsla(0, 70%, 45%, .60);
  --color-danger-a-70: hsla(0, 70%, 45%, .70);
  --color-danger-a-80: hsla(0, 70%, 45%, .80);
  --color-danger-a-90: hsla(0, 70%, 45%, .90);
  --color-white: hsl(220, 33%, 98%);
  --color-white-rgb: 247, 249, 251;
  --color-white-a-10: rgba(220, 33%, 98%, 0.1);
  --color-white-a-20: hsla(220, 33%, 98%, .20);
  --color-white-a-30: hsla(220, 33%, 98%, .30);
  --color-white-a-40: hsla(220, 33%, 98%, .40);
  --color-white-a-50: hsla(220, 33%, 98%, .50);
  --color-white-a-60: hsla(220, 33%, 98%, .60);
  --color-white-a-70: hsla(220, 33%, 98%, .70);
  --color-white-a-80: hsla(220, 33%, 98%, .80);
  --color-white-a-90: hsla(220, 33%, 98%, .90);
  --color-text: hsl(210, 11%, 15%);
  --color-text-rgb: 34, 38, 41;
}
.text--white {
  color: var(--color-white);
}
.bg--white {
  background-color: var(--color-white);
}
.text--text {
  color: var(--color-text);
}
.bg--text {
  background-color: var(--color-text);
}
.fill--white {
  fill: var(--color-white);
}
.stroke--white {
  stroke: var(--color-white);
}
.text--primary {
  color: var(--color-primary);
}
.text--primary-lighter {
  color: var(--color-primary-lighter);
}
.text--primary-light {
  color: var(--color-primary-light);
}
.text--primary-dark {
  color: var(--color-primary-dark);
}
.text--primary-darker {
  color: var(--color-primary-darker);
}
.bg--primary {
  background-color: var(--color-primary);
}
.bg--primary-lighter {
  background-color: var(--color-primary-lighter);
}
.bg--primary-light {
  background-color: var(--color-primary-light);
}
.bg--primary-dark {
  background-color: var(--color-primary-dark);
}
.bg--primary-darker {
  background-color: var(--color-primary-darker);
}
.fill--primary {
  fill: var(--color-primary);
}
.fill--primary-lighter {
  fill: var(--color-primary-lighter);
}
.fill--primary-light {
  fill: var(--color-primary-light);
}
.fill--primary-dark {
  fill: var(--color-primary-dark);
}
.fill--primary-darker {
  fill: var(--color-primary-darker);
}
.stroke--primary {
  stroke: var(--color-primary);
}
.stroke--primary-lighter {
  stroke: var(--color-primary-lighter);
}
.stroke--primary-light {
  stroke: var(--color-primary-light);
}
.stroke--primary-dark {
  stroke: var(--color-primary-dark);
}
.stroke--primary-darker {
  stroke: var(--color-primary-darker);
}
.text--accent {
  color: var(--color-accent);
}
.text--accent-lighter {
  color: var(--color-accent-lighter);
}
.text--accent-light {
  color: var(--color-accent-light);
}
.text--accent-dark {
  color: var(--color-accent-dark);
}
.text--accent-darker {
  color: var(--color-accent-darker);
}
.bg--accent {
  background-color: var(--color-accent);
}
.bg--accent-lighter {
  background-color: var(--color-accent-lighter);
}
.bg--accent-light {
  background-color: var(--color-accent-light);
}
.bg--accent-dark {
  background-color: var(--color-accent-dark);
}
.bg--accent-darker {
  background-color: var(--color-accent-darker);
}
.fill--accent {
  fill: var(--color-accent);
}
.fill--accent-lighter {
  fill: var(--color-accent-lighter);
}
.fill--accent-light {
  fill: var(--color-accent-light);
}
.fill--accent-dark {
  fill: var(--color-accent-dark);
}
.fill--accent-darker {
  fill: var(--color-accent-darker);
}
.stroke--accent {
  stroke: var(--color-accent);
}
.stroke--accent-lighter {
  stroke: var(--color-accent-lighter);
}
.stroke--accent-light {
  stroke: var(--color-accent-light);
}
.stroke--accent-dark {
  stroke: var(--color-accent-dark);
}
.stroke--accent-darker {
  stroke: var(--color-accent-darker);
}
.text--gray {
  color: var(--color-gray);
}
.text--gray-lighter {
  color: var(--color-gray-lighter);
}
.text--gray-light {
  color: var(--color-gray-light);
}
.text--gray-dark {
  color: var(--color-gray-dark);
}
.text--gray-darker {
  color: var(--color-gray-darker);
}
.bg--gray {
  background-color: var(--color-gray);
}
.bg--gray-lighter {
  background-color: var(--color-gray-lighter);
}
.bg--gray-light {
  background-color: var(--color-gray-light);
}
.bg--gray-dark {
  background-color: var(--color-gray-dark);
}
.bg--gray-darker {
  background-color: var(--color-gray-darker);
}
.fill--gray {
  fill: var(--color-gray);
}
.fill--gray-lighter {
  fill: var(--color-gray-lighter);
}
.fill--gray-light {
  fill: var(--color-gray-light);
}
.fill--gray-dark {
  fill: var(--color-gray-dark);
}
.fill--gray-darker {
  fill: var(--color-gray-darker);
}
.stroke--gray {
  stroke: var(--color-gray);
}
.stroke--gray-lighter {
  stroke: var(--color-gray-lighter);
}
.stroke--gray-light {
  stroke: var(--color-gray-light);
}
.stroke--gray-dark {
  stroke: var(--color-gray-dark);
}
.stroke--gray-darker {
  stroke: var(--color-gray-darker);
}
.text--text {
  color: var(--color-text);
}
.text--text-lighter {
  color: var(--color-text-lighter);
}
.text--text-light {
  color: var(--color-text-light);
}
.text--text-dark {
  color: var(--color-text-dark);
}
.text--text-darker {
  color: var(--color-text-darker);
}
.bg--text {
  background-color: var(--color-text);
}
.bg--text-lighter {
  background-color: var(--color-text-lighter);
}
.bg--text-light {
  background-color: var(--color-text-light);
}
.bg--text-dark {
  background-color: var(--color-text-dark);
}
.bg--text-darker {
  background-color: var(--color-text-darker);
}
.fill--text {
  fill: var(--color-text);
}
.fill--text-lighter {
  fill: var(--color-text-lighter);
}
.fill--text-light {
  fill: var(--color-text-light);
}
.fill--text-dark {
  fill: var(--color-text-dark);
}
.fill--text-darker {
  fill: var(--color-text-darker);
}
.stroke--text {
  stroke: var(--color-text);
}
.stroke--text-lighter {
  stroke: var(--color-text-lighter);
}
.stroke--text-light {
  stroke: var(--color-text-light);
}
.stroke--text-dark {
  stroke: var(--color-text-dark);
}
.stroke--text-darker {
  stroke: var(--color-text-darker);
}
.text--danger {
  color: var(--color-danger);
}
.text--danger-lighter {
  color: var(--color-danger-lighter);
}
.text--danger-light {
  color: var(--color-danger-light);
}
.text--danger-dark {
  color: var(--color-danger-dark);
}
.text--danger-darker {
  color: var(--color-danger-darker);
}
.bg--danger {
  background-color: var(--color-danger);
}
.bg--danger-lighter {
  background-color: var(--color-danger-lighter);
}
.bg--danger-light {
  background-color: var(--color-danger-light);
}
.bg--danger-dark {
  background-color: var(--color-danger-dark);
}
.bg--danger-darker {
  background-color: var(--color-danger-darker);
}
.fill--danger {
  fill: var(--color-danger);
}
.fill--danger-lighter {
  fill: var(--color-danger-lighter);
}
.fill--danger-light {
  fill: var(--color-danger-light);
}
.fill--danger-dark {
  fill: var(--color-danger-dark);
}
.fill--danger-darker {
  fill: var(--color-danger-darker);
}
.stroke--danger {
  stroke: var(--color-danger);
}
.stroke--danger-lighter {
  stroke: var(--color-danger-lighter);
}
.stroke--danger-light {
  stroke: var(--color-danger-light);
}
.stroke--danger-dark {
  stroke: var(--color-danger-dark);
}
.stroke--danger-darker {
  stroke: var(--color-danger-darker);
}
.fl {
  float: left;
}
.fr {
  float: right;
}
.container-fluid,
.container {
  width: 100%;
  padding: 0 var(--space);
  margin: 0 auto;
}
.container-fluid {
  max-width: 100%;
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: calc(-1 * var(--space));
  margin-left: calc(-1 * var(--space));
}
.col,
.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-offset-0,
.col-offset-1,
.col-offset-2,
.col-offset-3,
.col-offset-4,
.col-offset-5,
.col-offset-6,
.col-offset-7,
.col-offset-8,
.col-offset-9,
.col-offset-10,
.col-offset-11,
.col-offset-12 {
  box-sizing: border-box;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  padding-right: var(--space);
  padding-left: var(--space);
}
.col {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex: 1 0 auto;
  max-width: 100%;
}
.col-offset-0 {
  margin-left: 0;
}
.col-1 {
  -ms-flex-preferred-size: calc(8.3333333333% * 1);
  flex-basis: calc(8.3333333333% * 1);
  max-width: calc(8.3333333333% * 1);
}
.col-offset-1 {
  margin-left: calc(8.3333333333% * 1);
}
.col-2 {
  -ms-flex-preferred-size: calc(8.3333333333% * 2);
  flex-basis: calc(8.3333333333% * 2);
  max-width: calc(8.3333333333% * 2);
}
.col-offset-2 {
  margin-left: calc(8.3333333333% * 2);
}
.col-3 {
  -ms-flex-preferred-size: calc(8.3333333333% * 3);
  flex-basis: calc(8.3333333333% * 3);
  max-width: calc(8.3333333333% * 3);
}
.col-offset-3 {
  margin-left: calc(8.3333333333% * 3);
}
.col-4 {
  -ms-flex-preferred-size: calc(8.3333333333% * 4);
  flex-basis: calc(8.3333333333% * 4);
  max-width: calc(8.3333333333% * 4);
}
.col-offset-4 {
  margin-left: calc(8.3333333333% * 4);
}
.col-5 {
  -ms-flex-preferred-size: calc(8.3333333333% * 5);
  flex-basis: calc(8.3333333333% * 5);
  max-width: calc(8.3333333333% * 5);
}
.col-offset-5 {
  margin-left: calc(8.3333333333% * 5);
}
.col-6 {
  -ms-flex-preferred-size: calc(8.3333333333% * 6);
  flex-basis: calc(8.3333333333% * 6);
  max-width: calc(8.3333333333% * 6);
}
.col-offset-6 {
  margin-left: calc(8.3333333333% * 6);
}
.col-7 {
  -ms-flex-preferred-size: calc(8.3333333333% * 7);
  flex-basis: calc(8.3333333333% * 7);
  max-width: calc(8.3333333333% * 7);
}
.col-offset-7 {
  margin-left: calc(8.3333333333% * 7);
}
.col-8 {
  -ms-flex-preferred-size: calc(8.3333333333% * 8);
  flex-basis: calc(8.3333333333% * 8);
  max-width: calc(8.3333333333% * 8);
}
.col-offset-8 {
  margin-left: calc(8.3333333333% * 8);
}
.col-9 {
  -ms-flex-preferred-size: calc(8.3333333333% * 9);
  flex-basis: calc(8.3333333333% * 9);
  max-width: calc(8.3333333333% * 9);
}
.col-offset-9 {
  margin-left: calc(8.3333333333% * 9);
}
.col-10 {
  -ms-flex-preferred-size: calc(8.3333333333% * 10);
  flex-basis: calc(8.3333333333% * 10);
  max-width: calc(8.3333333333% * 10);
}
.col-offset-10 {
  margin-left: calc(8.3333333333% * 10);
}
.col-11 {
  -ms-flex-preferred-size: calc(8.3333333333% * 11);
  flex-basis: calc(8.3333333333% * 11);
  max-width: calc(8.3333333333% * 11);
}
.col-offset-11 {
  margin-left: calc(8.3333333333% * 11);
}
.col,
[class^=col-] {
  padding-right: var(--space);
  padding-left: var(--space);
}
[class^=col-] {
  width: 100%;
}
@media only screen and (max-width: 576px) {
.col\@xs,
  .col-1\@xs,
  .col-2\@xs,
  .col-3\@xs,
  .col-4\@xs,
  .col-5\@xs,
  .col-6\@xs,
  .col-7\@xs,
  .col-8\@xs,
  .col-9\@xs,
  .col-10\@xs,
  .col-11\@xs,
  .col-12\@xs,
  .col-offset-0\@xs,
  .col-offset-1\@xs,
  .col-offset-2\@xs,
  .col-offset-3\@xs,
  .col-offset-4\@xs,
  .col-offset-5\@xs,
  .col-offset-6\@xs,
  .col-offset-7\@xs,
  .col-offset-8\@xs,
  .col-offset-9\@xs,
  .col-offset-10\@xs,
  .col-offset-11\@xs,
  .col-offset-12\@xs {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: var(--space);
    padding-left: var(--space);
}
.col\@xs {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex: 1 0 auto;
    max-width: 100%;
}
.col-offset-0\@xs {
    margin-left: 0;
}
.col-1\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 1);
    flex-basis: calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
}
.col-offset-1\@xs {
    margin-left: calc(8.3333333333% * 1);
}
.col-2\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 2);
    flex-basis: calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
}
.col-offset-2\@xs {
    margin-left: calc(8.3333333333% * 2);
}
.col-3\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 3);
    flex-basis: calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
}
.col-offset-3\@xs {
    margin-left: calc(8.3333333333% * 3);
}
.col-4\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 4);
    flex-basis: calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
}
.col-offset-4\@xs {
    margin-left: calc(8.3333333333% * 4);
}
.col-5\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 5);
    flex-basis: calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
}
.col-offset-5\@xs {
    margin-left: calc(8.3333333333% * 5);
}
.col-6\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 6);
    flex-basis: calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
}
.col-offset-6\@xs {
    margin-left: calc(8.3333333333% * 6);
}
.col-7\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 7);
    flex-basis: calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
}
.col-offset-7\@xs {
    margin-left: calc(8.3333333333% * 7);
}
.col-8\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 8);
    flex-basis: calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
}
.col-offset-8\@xs {
    margin-left: calc(8.3333333333% * 8);
}
.col-9\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 9);
    flex-basis: calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
}
.col-offset-9\@xs {
    margin-left: calc(8.3333333333% * 9);
}
.col-10\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 10);
    flex-basis: calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
}
.col-offset-10\@xs {
    margin-left: calc(8.3333333333% * 10);
}
.col-11\@xs {
    -ms-flex-preferred-size: calc(8.3333333333% * 11);
    flex-basis: calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
}
.col-offset-11\@xs {
    margin-left: calc(8.3333333333% * 11);
}
}
@media only screen and (min-width: 576px) {
.container {
    max-width: 540px;
}
.col\@s,
  .col-1\@s,
  .col-2\@s,
  .col-3\@s,
  .col-4\@s,
  .col-5\@s,
  .col-6\@s,
  .col-7\@s,
  .col-8\@s,
  .col-9\@s,
  .col-10\@s,
  .col-11\@s,
  .col-12\@s,
  .col-offset-0\@s,
  .col-offset-1\@s,
  .col-offset-2\@s,
  .col-offset-3\@s,
  .col-offset-4\@s,
  .col-offset-5\@s,
  .col-offset-6\@s,
  .col-offset-7\@s,
  .col-offset-8\@s,
  .col-offset-9\@s,
  .col-offset-10\@s,
  .col-offset-11\@s,
  .col-offset-12\@s {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: var(--space);
    padding-left: var(--space);
}
.col\@s {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex: 1 0 auto;
    max-width: 100%;
}
.col-offset-0\@s {
    margin-left: 0;
}
.col-1\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 1);
    flex-basis: calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
}
.col-offset-1\@s {
    margin-left: calc(8.3333333333% * 1);
}
.col-2\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 2);
    flex-basis: calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
}
.col-offset-2\@s {
    margin-left: calc(8.3333333333% * 2);
}
.col-3\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 3);
    flex-basis: calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
}
.col-offset-3\@s {
    margin-left: calc(8.3333333333% * 3);
}
.col-4\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 4);
    flex-basis: calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
}
.col-offset-4\@s {
    margin-left: calc(8.3333333333% * 4);
}
.col-5\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 5);
    flex-basis: calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
}
.col-offset-5\@s {
    margin-left: calc(8.3333333333% * 5);
}
.col-6\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 6);
    flex-basis: calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
}
.col-offset-6\@s {
    margin-left: calc(8.3333333333% * 6);
}
.col-7\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 7);
    flex-basis: calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
}
.col-offset-7\@s {
    margin-left: calc(8.3333333333% * 7);
}
.col-8\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 8);
    flex-basis: calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
}
.col-offset-8\@s {
    margin-left: calc(8.3333333333% * 8);
}
.col-9\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 9);
    flex-basis: calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
}
.col-offset-9\@s {
    margin-left: calc(8.3333333333% * 9);
}
.col-10\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 10);
    flex-basis: calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
}
.col-offset-10\@s {
    margin-left: calc(8.3333333333% * 10);
}
.col-11\@s {
    -ms-flex-preferred-size: calc(8.3333333333% * 11);
    flex-basis: calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
}
.col-offset-11\@s {
    margin-left: calc(8.3333333333% * 11);
}
}
@media only screen and (min-width: 768px) {
.container {
    max-width: 720px;
}
.col\@m,
  .col-1\@m,
  .col-2\@m,
  .col-3\@m,
  .col-4\@m,
  .col-5\@m,
  .col-6\@m,
  .col-7\@m,
  .col-8\@m,
  .col-9\@m,
  .col-10\@m,
  .col-11\@m,
  .col-12\@m,
  .col-offset-0\@m,
  .col-offset-1\@m,
  .col-offset-2\@m,
  .col-offset-3\@m,
  .col-offset-4\@m,
  .col-offset-5\@m,
  .col-offset-6\@m,
  .col-offset-7\@m,
  .col-offset-8\@m,
  .col-offset-9\@m,
  .col-offset-10\@m,
  .col-offset-11\@m,
  .col-offset-12\@m {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: var(--space);
    padding-left: var(--space);
}
.col\@m {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex: 1 0 auto;
    max-width: 100%;
}
.col-offset-0\@m {
    margin-left: 0;
}
.col-1\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 1);
    flex-basis: calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
}
.col-offset-1\@m {
    margin-left: calc(8.3333333333% * 1);
}
.col-2\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 2);
    flex-basis: calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
}
.col-offset-2\@m {
    margin-left: calc(8.3333333333% * 2);
}
.col-3\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 3);
    flex-basis: calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
}
.col-offset-3\@m {
    margin-left: calc(8.3333333333% * 3);
}
.col-4\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 4);
    flex-basis: calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
}
.col-offset-4\@m {
    margin-left: calc(8.3333333333% * 4);
}
.col-5\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 5);
    flex-basis: calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
}
.col-offset-5\@m {
    margin-left: calc(8.3333333333% * 5);
}
.col-6\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 6);
    flex-basis: calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
}
.col-offset-6\@m {
    margin-left: calc(8.3333333333% * 6);
}
.col-7\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 7);
    flex-basis: calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
}
.col-offset-7\@m {
    margin-left: calc(8.3333333333% * 7);
}
.col-8\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 8);
    flex-basis: calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
}
.col-offset-8\@m {
    margin-left: calc(8.3333333333% * 8);
}
.col-9\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 9);
    flex-basis: calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
}
.col-offset-9\@m {
    margin-left: calc(8.3333333333% * 9);
}
.col-10\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 10);
    flex-basis: calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
}
.col-offset-10\@m {
    margin-left: calc(8.3333333333% * 10);
}
.col-11\@m {
    -ms-flex-preferred-size: calc(8.3333333333% * 11);
    flex-basis: calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
}
.col-offset-11\@m {
    margin-left: calc(8.3333333333% * 11);
}
}
@media only screen and (min-width: 992px) {
.container {
    max-width: 960px;
}
.col\@l,
  .col-1\@l,
  .col-2\@l,
  .col-3\@l,
  .col-4\@l,
  .col-5\@l,
  .col-6\@l,
  .col-7\@l,
  .col-8\@l,
  .col-9\@l,
  .col-10\@l,
  .col-11\@l,
  .col-12\@l,
  .col-offset-0\@l,
  .col-offset-1\@l,
  .col-offset-2\@l,
  .col-offset-3\@l,
  .col-offset-4\@l,
  .col-offset-5\@l,
  .col-offset-6\@l,
  .col-offset-7\@l,
  .col-offset-8\@l,
  .col-offset-9\@l,
  .col-offset-10\@l,
  .col-offset-11\@l,
  .col-offset-12\@l {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: var(--space);
    padding-left: var(--space);
}
.col\@l {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex: 1 0 auto;
    max-width: 100%;
}
.col-offset-0\@l {
    margin-left: 0;
}
.col-1\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 1);
    flex-basis: calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
}
.col-offset-1\@l {
    margin-left: calc(8.3333333333% * 1);
}
.col-2\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 2);
    flex-basis: calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
}
.col-offset-2\@l {
    margin-left: calc(8.3333333333% * 2);
}
.col-3\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 3);
    flex-basis: calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
}
.col-offset-3\@l {
    margin-left: calc(8.3333333333% * 3);
}
.col-4\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 4);
    flex-basis: calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
}
.col-offset-4\@l {
    margin-left: calc(8.3333333333% * 4);
}
.col-5\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 5);
    flex-basis: calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
}
.col-offset-5\@l {
    margin-left: calc(8.3333333333% * 5);
}
.col-6\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 6);
    flex-basis: calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
}
.col-offset-6\@l {
    margin-left: calc(8.3333333333% * 6);
}
.col-7\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 7);
    flex-basis: calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
}
.col-offset-7\@l {
    margin-left: calc(8.3333333333% * 7);
}
.col-8\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 8);
    flex-basis: calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
}
.col-offset-8\@l {
    margin-left: calc(8.3333333333% * 8);
}
.col-9\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 9);
    flex-basis: calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
}
.col-offset-9\@l {
    margin-left: calc(8.3333333333% * 9);
}
.col-10\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 10);
    flex-basis: calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
}
.col-offset-10\@l {
    margin-left: calc(8.3333333333% * 10);
}
.col-11\@l {
    -ms-flex-preferred-size: calc(8.3333333333% * 11);
    flex-basis: calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
}
.col-offset-11\@l {
    margin-left: calc(8.3333333333% * 11);
}
}
@media only screen and (min-width: 1200px) {
.container {
    max-width: 1140px;
}
.col\@xl,
  .col-1\@xl,
  .col-2\@xl,
  .col-3\@xl,
  .col-4\@xl,
  .col-5\@xl,
  .col-6\@xl,
  .col-7\@xl,
  .col-8\@xl,
  .col-9\@xl,
  .col-10\@xl,
  .col-11\@xl,
  .col-12\@xl,
  .col-offset-0\@xl,
  .col-offset-1\@xl,
  .col-offset-2\@xl,
  .col-offset-3\@xl,
  .col-offset-4\@xl,
  .col-offset-5\@xl,
  .col-offset-6\@xl,
  .col-offset-7\@xl,
  .col-offset-8\@xl,
  .col-offset-9\@xl,
  .col-offset-10\@xl,
  .col-offset-11\@xl,
  .col-offset-12\@xl {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: var(--space);
    padding-left: var(--space);
}
.col\@xl {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex: 1 0 auto;
    max-width: 100%;
}
.col-offset-0\@xl {
    margin-left: 0;
}
.col-1\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 1);
    flex-basis: calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
}
.col-offset-1\@xl {
    margin-left: calc(8.3333333333% * 1);
}
.col-2\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 2);
    flex-basis: calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
}
.col-offset-2\@xl {
    margin-left: calc(8.3333333333% * 2);
}
.col-3\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 3);
    flex-basis: calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
}
.col-offset-3\@xl {
    margin-left: calc(8.3333333333% * 3);
}
.col-4\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 4);
    flex-basis: calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
}
.col-offset-4\@xl {
    margin-left: calc(8.3333333333% * 4);
}
.col-5\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 5);
    flex-basis: calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
}
.col-offset-5\@xl {
    margin-left: calc(8.3333333333% * 5);
}
.col-6\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 6);
    flex-basis: calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
}
.col-offset-6\@xl {
    margin-left: calc(8.3333333333% * 6);
}
.col-7\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 7);
    flex-basis: calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
}
.col-offset-7\@xl {
    margin-left: calc(8.3333333333% * 7);
}
.col-8\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 8);
    flex-basis: calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
}
.col-offset-8\@xl {
    margin-left: calc(8.3333333333% * 8);
}
.col-9\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 9);
    flex-basis: calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
}
.col-offset-9\@xl {
    margin-left: calc(8.3333333333% * 9);
}
.col-10\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 10);
    flex-basis: calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
}
.col-offset-10\@xl {
    margin-left: calc(8.3333333333% * 10);
}
.col-11\@xl {
    -ms-flex-preferred-size: calc(8.3333333333% * 11);
    flex-basis: calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
}
.col-offset-11\@xl {
    margin-left: calc(8.3333333333% * 11);
}
}
@media only screen and (min-width: 1800px) {
.container {
    max-width: 1640px;
}
.col\@xxl,
  .col-1\@xxl,
  .col-2\@xxl,
  .col-3\@xxl,
  .col-4\@xxl,
  .col-5\@xxl,
  .col-6\@xxl,
  .col-7\@xxl,
  .col-8\@xxl,
  .col-9\@xxl,
  .col-10\@xxl,
  .col-11\@xxl,
  .col-12\@xxl,
  .col-offset-0\@xxl,
  .col-offset-1\@xxl,
  .col-offset-2\@xxl,
  .col-offset-3\@xxl,
  .col-offset-4\@xxl,
  .col-offset-5\@xxl,
  .col-offset-6\@xxl,
  .col-offset-7\@xxl,
  .col-offset-8\@xxl,
  .col-offset-9\@xxl,
  .col-offset-10\@xxl,
  .col-offset-11\@xxl,
  .col-offset-12\@xxl {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: var(--space);
    padding-left: var(--space);
}
.col\@xxl {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex: 1 0 auto;
    max-width: 100%;
}
.col-offset-0\@xxl {
    margin-left: 0;
}
.col-1\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 1);
    flex-basis: calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
}
.col-offset-1\@xxl {
    margin-left: calc(8.3333333333% * 1);
}
.col-2\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 2);
    flex-basis: calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
}
.col-offset-2\@xxl {
    margin-left: calc(8.3333333333% * 2);
}
.col-3\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 3);
    flex-basis: calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
}
.col-offset-3\@xxl {
    margin-left: calc(8.3333333333% * 3);
}
.col-4\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 4);
    flex-basis: calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
}
.col-offset-4\@xxl {
    margin-left: calc(8.3333333333% * 4);
}
.col-5\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 5);
    flex-basis: calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
}
.col-offset-5\@xxl {
    margin-left: calc(8.3333333333% * 5);
}
.col-6\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 6);
    flex-basis: calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
}
.col-offset-6\@xxl {
    margin-left: calc(8.3333333333% * 6);
}
.col-7\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 7);
    flex-basis: calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
}
.col-offset-7\@xxl {
    margin-left: calc(8.3333333333% * 7);
}
.col-8\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 8);
    flex-basis: calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
}
.col-offset-8\@xxl {
    margin-left: calc(8.3333333333% * 8);
}
.col-9\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 9);
    flex-basis: calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
}
.col-offset-9\@xxl {
    margin-left: calc(8.3333333333% * 9);
}
.col-10\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 10);
    flex-basis: calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
}
.col-offset-10\@xxl {
    margin-left: calc(8.3333333333% * 10);
}
.col-11\@xxl {
    -ms-flex-preferred-size: calc(8.3333333333% * 11);
    flex-basis: calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
}
.col-offset-11\@xxl {
    margin-left: calc(8.3333333333% * 11);
}
}
@media only screen and (min-width: auto) {
.container {
    max-width: auto;
}
}
:root {
  --space: 1em;
  --space-xxxs: calc(0.25 * var(--space));
  --space-xxs: calc(0.375 * var(--space));
  --space-xs: calc(0.5 * var(--space));
  --space-s: calc(0.75 * var(--space));
  --space-m: calc(1.25 * var(--space));
  --space-l: calc(2 * var(--space));
  --space-xl: calc(3.25 * var(--space));
  --space-xxl: calc(5.25 * var(--space));
  --space-xxxl: calc(8.5 * var(--space));
}
.m {
  margin: var(--space);
}
.mx {
  margin: 0 var(--space);
}
.my {
  margin: var(--space) 0;
}
.ml {
  margin-left: var(--space);
}
.mr {
  margin-right: var(--space);
}
.mt {
  margin-top: var(--space);
}
.mb {
  margin-bottom: var(--space);
}
.ml-auto {
  margin-left: auto;
}
.mr-auto {
  margin-right: auto;
}
.m-2 {
  margin: calc(2 * var(--space));
}
.mx-2 {
  margin: 0 calc(2 * var(--space));
}
.my-2 {
  margin: calc(2 * var(--space)) 0;
}
.ml-2 {
  margin-left: calc(2 * var(--space));
}
.mr-2 {
  margin-right: calc(2 * var(--space));
}
.mt-2 {
  margin-top: calc(2 * var(--space));
}
.mb-2 {
  margin-bottom: calc(2 * var(--space));
}
.m-3 {
  margin: calc(3 * var(--space));
}
.mx-3 {
  margin: 0 calc(3 * var(--space));
}
.my-3 {
  margin: calc(3 * var(--space)) 0;
}
.ml-3 {
  margin-left: calc(3 * var(--space));
}
.mr-3 {
  margin-right: calc(3 * var(--space));
}
.mt-3 {
  margin-top: calc(3 * var(--space));
}
.mb-3 {
  margin-bottom: calc(3 * var(--space));
}
.m-4 {
  margin: calc(4 * var(--space));
}
.mx-4 {
  margin: 0 calc(4 * var(--space));
}
.my-4 {
  margin: calc(4 * var(--space)) 0;
}
.ml-4 {
  margin-left: calc(4 * var(--space));
}
.mr-4 {
  margin-right: calc(4 * var(--space));
}
.mt-4 {
  margin-top: calc(4 * var(--space));
}
.mb-4 {
  margin-bottom: calc(4 * var(--space));
}
.m-5 {
  margin: calc(5 * var(--space));
}
.mx-5 {
  margin: 0 calc(5 * var(--space));
}
.my-5 {
  margin: calc(5 * var(--space)) 0;
}
.ml-5 {
  margin-left: calc(5 * var(--space));
}
.mr-5 {
  margin-right: calc(5 * var(--space));
}
.mt-5 {
  margin-top: calc(5 * var(--space));
}
.mb-5 {
  margin-bottom: calc(5 * var(--space));
}
.m-6 {
  margin: calc(6 * var(--space));
}
.mx-6 {
  margin: 0 calc(6 * var(--space));
}
.my-6 {
  margin: calc(6 * var(--space)) 0;
}
.ml-6 {
  margin-left: calc(6 * var(--space));
}
.mr-6 {
  margin-right: calc(6 * var(--space));
}
.mt-6 {
  margin-top: calc(6 * var(--space));
}
.mb-6 {
  margin-bottom: calc(6 * var(--space));
}
.m-7 {
  margin: calc(7 * var(--space));
}
.mx-7 {
  margin: 0 calc(7 * var(--space));
}
.my-7 {
  margin: calc(7 * var(--space)) 0;
}
.ml-7 {
  margin-left: calc(7 * var(--space));
}
.mr-7 {
  margin-right: calc(7 * var(--space));
}
.mt-7 {
  margin-top: calc(7 * var(--space));
}
.mb-7 {
  margin-bottom: calc(7 * var(--space));
}
.m-8 {
  margin: calc(8 * var(--space));
}
.mx-8 {
  margin: 0 calc(8 * var(--space));
}
.my-8 {
  margin: calc(8 * var(--space)) 0;
}
.ml-8 {
  margin-left: calc(8 * var(--space));
}
.mr-8 {
  margin-right: calc(8 * var(--space));
}
.mt-8 {
  margin-top: calc(8 * var(--space));
}
.mb-8 {
  margin-bottom: calc(8 * var(--space));
}
.m-9 {
  margin: calc(9 * var(--space));
}
.mx-9 {
  margin: 0 calc(9 * var(--space));
}
.my-9 {
  margin: calc(9 * var(--space)) 0;
}
.ml-9 {
  margin-left: calc(9 * var(--space));
}
.mr-9 {
  margin-right: calc(9 * var(--space));
}
.mt-9 {
  margin-top: calc(9 * var(--space));
}
.mb-9 {
  margin-bottom: calc(9 * var(--space));
}
.m-10 {
  margin: calc(10 * var(--space));
}
.mx-10 {
  margin: 0 calc(10 * var(--space));
}
.my-10 {
  margin: calc(10 * var(--space)) 0;
}
.ml-10 {
  margin-left: calc(10 * var(--space));
}
.mr-10 {
  margin-right: calc(10 * var(--space));
}
.mt-10 {
  margin-top: calc(10 * var(--space));
}
.mb-10 {
  margin-bottom: calc(10 * var(--space));
}
.m-11 {
  margin: calc(11 * var(--space));
}
.mx-11 {
  margin: 0 calc(11 * var(--space));
}
.my-11 {
  margin: calc(11 * var(--space)) 0;
}
.ml-11 {
  margin-left: calc(11 * var(--space));
}
.mr-11 {
  margin-right: calc(11 * var(--space));
}
.mt-11 {
  margin-top: calc(11 * var(--space));
}
.mb-11 {
  margin-bottom: calc(11 * var(--space));
}
.p {
  padding: var(--space);
}
.px {
  padding: 0 var(--space);
}
.py {
  padding: var(--space) 0;
}
.pl {
  padding-left: var(--space);
}
.pr {
  padding-right: var(--space);
}
.pt {
  padding-top: var(--space);
}
.pb {
  padding-bottom: var(--space);
}
.pl-auto {
  padding-left: auto;
}
.pr-auto {
  padding-right: auto;
}
.p-2 {
  padding: calc(2 * var(--space));
}
.px-2 {
  padding: 0 calc(2 * var(--space));
}
.py-2 {
  padding: calc(2 * var(--space)) 0;
}
.pl-2 {
  padding-left: calc(2 * var(--space));
}
.pr-2 {
  padding-right: calc(2 * var(--space));
}
.pt-2 {
  padding-top: calc(2 * var(--space));
}
.pb-2 {
  padding-bottom: calc(2 * var(--space));
}
.p-3 {
  padding: calc(3 * var(--space));
}
.px-3 {
  padding: 0 calc(3 * var(--space));
}
.py-3 {
  padding: calc(3 * var(--space)) 0;
}
.pl-3 {
  padding-left: calc(3 * var(--space));
}
.pr-3 {
  padding-right: calc(3 * var(--space));
}
.pt-3 {
  padding-top: calc(3 * var(--space));
}
.pb-3 {
  padding-bottom: calc(3 * var(--space));
}
.p-4 {
  padding: calc(4 * var(--space));
}
.px-4 {
  padding: 0 calc(4 * var(--space));
}
.py-4 {
  padding: calc(4 * var(--space)) 0;
}
.pl-4 {
  padding-left: calc(4 * var(--space));
}
.pr-4 {
  padding-right: calc(4 * var(--space));
}
.pt-4 {
  padding-top: calc(4 * var(--space));
}
.pb-4 {
  padding-bottom: calc(4 * var(--space));
}
.p-5 {
  padding: calc(5 * var(--space));
}
.px-5 {
  padding: 0 calc(5 * var(--space));
}
.py-5 {
  padding: calc(5 * var(--space)) 0;
}
.pl-5 {
  padding-left: calc(5 * var(--space));
}
.pr-5 {
  padding-right: calc(5 * var(--space));
}
.pt-5 {
  padding-top: calc(5 * var(--space));
}
.pb-5 {
  padding-bottom: calc(5 * var(--space));
}
.p-6 {
  padding: calc(6 * var(--space));
}
.px-6 {
  padding: 0 calc(6 * var(--space));
}
.py-6 {
  padding: calc(6 * var(--space)) 0;
}
.pl-6 {
  padding-left: calc(6 * var(--space));
}
.pr-6 {
  padding-right: calc(6 * var(--space));
}
.pt-6 {
  padding-top: calc(6 * var(--space));
}
.pb-6 {
  padding-bottom: calc(6 * var(--space));
}
.p-7 {
  padding: calc(7 * var(--space));
}
.px-7 {
  padding: 0 calc(7 * var(--space));
}
.py-7 {
  padding: calc(7 * var(--space)) 0;
}
.pl-7 {
  padding-left: calc(7 * var(--space));
}
.pr-7 {
  padding-right: calc(7 * var(--space));
}
.pt-7 {
  padding-top: calc(7 * var(--space));
}
.pb-7 {
  padding-bottom: calc(7 * var(--space));
}
.p-8 {
  padding: calc(8 * var(--space));
}
.px-8 {
  padding: 0 calc(8 * var(--space));
}
.py-8 {
  padding: calc(8 * var(--space)) 0;
}
.pl-8 {
  padding-left: calc(8 * var(--space));
}
.pr-8 {
  padding-right: calc(8 * var(--space));
}
.pt-8 {
  padding-top: calc(8 * var(--space));
}
.pb-8 {
  padding-bottom: calc(8 * var(--space));
}
.p-9 {
  padding: calc(9 * var(--space));
}
.px-9 {
  padding: 0 calc(9 * var(--space));
}
.py-9 {
  padding: calc(9 * var(--space)) 0;
}
.pl-9 {
  padding-left: calc(9 * var(--space));
}
.pr-9 {
  padding-right: calc(9 * var(--space));
}
.pt-9 {
  padding-top: calc(9 * var(--space));
}
.pb-9 {
  padding-bottom: calc(9 * var(--space));
}
.p-10 {
  padding: calc(10 * var(--space));
}
.px-10 {
  padding: 0 calc(10 * var(--space));
}
.py-10 {
  padding: calc(10 * var(--space)) 0;
}
.pl-10 {
  padding-left: calc(10 * var(--space));
}
.pr-10 {
  padding-right: calc(10 * var(--space));
}
.pt-10 {
  padding-top: calc(10 * var(--space));
}
.pb-10 {
  padding-bottom: calc(10 * var(--space));
}
.p-11 {
  padding: calc(11 * var(--space));
}
.px-11 {
  padding: 0 calc(11 * var(--space));
}
.py-11 {
  padding: calc(11 * var(--space)) 0;
}
.pl-11 {
  padding-left: calc(11 * var(--space));
}
.pr-11 {
  padding-right: calc(11 * var(--space));
}
.pt-11 {
  padding-top: calc(11 * var(--space));
}
.pb-11 {
  padding-bottom: calc(11 * var(--space));
}
.space-xxxs {
  --space: var(--space-xxxs);
}
.space-xxs {
  --space: var(--space-xxs);
}
.space-xs {
  --space: var(--space-xs);
}
.space-s {
  --space: var(--space-s);
}
.space-m {
  --space: var(--space-m);
}
.space-m {
  --space: var(--space-m);
}
.space-l {
  --space: var(--space-l);
}
.space-xl {
  --space: var(--space-xl);
}
.space-xxl {
  --space: var(--space-xxl);
}
.space-xxxl {
  --space: var(--space-xxxl);
}
:root {
  --text-base: 11pt;
  --text-scale-ratio: 1.2;
  --text-xs: calc((var(--text-base) / var(--text-scale-ratio)) / var(--text-scale-ratio));
  --text-s: calc(var(--text-xs) * var(--text-scale-ratio));
  --text-m: calc(var(--text-s) * var(--text-scale-ratio) * var(--text-scale-ratio));
  --text-l: calc(var(--text-m) * var(--text-scale-ratio));
  --text-xl: calc(var(--text-l) * var(--text-scale-ratio));
  --text-xxl: calc(var(--text-xl) * var(--text-scale-ratio));
  --text-xxxl: calc(var(--text-xxl) * var(--text-scale-ratio));
  --text-h1: 3rem;
  --text-h2: 2em;
  --text-h3: 1.8em;
  --text-h4: 1.3em;
  --text-h5: 1.2em;
  --text-h6: 1.1em;
  --font-primary: apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --font-accent: apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-size-adjust: 100%;
  text-rendering: optimizeLegibility;
  font-family: var(--font-primary);
  font-size: var(--text-base);
  color: var(--color-text);
  line-height: 1.5;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--font-primary);
  color: var(--color-text);
  margin-bottom: 0.75rem;
  font-weight: 500;
  line-height: 1.2;
}
h1, .h1 {
  font-size: var(--text-h1);
}
h2, .h2 {
  font-size: var(--text-h2);
}
h3, .h3 {
  font-size: var(--text-h3);
}
h4, .h4 {
  font-size: var(--text-h4);
}
h5, .h5 {
  font-size: var(--text-h5);
}
h6, .h6 {
  font-size: var(--text-h6);
}
.text-base {
  font-size: var(--text-base);
}
.text-xs {
  font-size: var(--text-xs);
}
.text-s {
  font-size: var(--text-s);
}
.text-m {
  font-size: var(--text-m);
}
.text-l {
  font-size: var(--text-l);
}
.text-xl {
  font-size: var(--text-xl);
}
.text-xxl {
  font-size: var(--text-xxl);
}
.text-xxxl {
  font-size: var(--text-xxxl);
}
p {
  margin-top: 0;
  margin-bottom: 1rem;
  line-height: 1.8rem;
}
a {
  color: var(--color-primary);
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}
a:hover {
  color: var(--color-a-hover);
  text-decoration: none;
}
b, strong {
  font-weight: bold;
}
small, .small {
  font-size: 0.9em;
}
mark, .mark {
  background-color: #ffffca;
}
dl, ol, ul {
  margin-top: 0;
  margin-bottom: 1rem;
}
ol ol, ol ul, ul ol, ul ul {
  margin-bottom: 0;
}
:root {
  --input-radius: 0.25em;
  --input-border: 1px solid #cdd5dc;
  --input-border-hover: 1px solid var(--color-gray);
  --input-border-active: 1px solid var(--color-primary);
  --input-shadow: 0 1px 1px #0000000f;
  --input-shadow-hover: none;
  --input-shadow-active: 0px 0px 0px 3px var(--color-primary-a-10), 0px 1px 4px 1px var(--color-primary-a-20);
  --input-check-radio-size: 20px;
}
::placeholder {
  color: var(--color-gray);
}
:-ms-input-placeholder {
  color: var(--color-gray);
}
::-ms-input-placeholder {
  color: var(--color-gray);
}
.form-input,
div.form-input > input {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 1em;
  line-height: 1em;
  background: #fff;
  font-family: var(--font-family-sans-serif);
  color: var(--color-text);
  border-radius: var(--input-radius);
  border: var(--input-border);
}
.form-input--hover, .form-input:hover,
div.form-input > input--hover,
div.form-input > input:hover {
  border: var(--input-border-hover);
  box-shadow: var(--input-shadow-hover);
}
.form-input--focus, .form-input:focus,
div.form-input > input--focus,
div.form-input > input:focus {
  outline: 0 none;
  border: var(--input-border-active);
  box-shadow: var(--input-shadow-active);
}
select.form-input {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath opacity='.3' d='M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z'/%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3C/svg%3E") no-repeat 99% 50%;
}
textarea.form-input {
  min-height: 80px;
}
div.form-input > input {
  padding: 0;
  margin-top: -1px;
}
/* Text based form-input */
div.form-input,
select.form-input,
textarea.form-input,
input:not([type=checkbox]):not([type=radio]).form-input {
  padding: 0.6rem 1rem;
  width: 100%;
}
div.form-input--l,
select.form-input--l,
textarea.form-input--l,
input:not([type=checkbox]):not([type=radio]).form-input--l {
  padding: 1em 1.4em;
  font-size: 1.1em;
}
/* Radio, check and switch */
input[type=radio].form-input,
input[type=checkbox].form-input {
  box-sizing: content-box;
  position: relative;
  width: var(--input-check-radio-size) !important;
  height: var(--input-check-radio-size) !important;
}
input[type=radio].form-input--l,
input[type=checkbox].form-input--l {
  width: 32px;
  height: 32px;
}
input[type=radio].form-input--checked, input[type=radio].form-input:checked,
input[type=checkbox].form-input--checked,
input[type=checkbox].form-input:checked {
  border-color: var(--color-primary);
  background-color: var(--color-primary);
}
input[type=checkbox].form-input--checked:after, input[type=checkbox].form-input:checked:after {
  content: "";
  color: #fff;
  width: 100%;
  height: 100%;
  transform: scale(0.8);
  background: url("data:image/svg+xml,%3Csvg enable-background='new 0 0 47 39' height='39px' id='Layer_1' version='1.1' viewBox='0 0 47 39' width='47px' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpolygon fill='%23fff' points='37.143,0.444 35.162,2.423 26.252,11.333 17.343,20.242 16.636,20.949 14.879,19.192 9.787,14.101 8.857,13.171 -0.335,22.363 0.594,23.293 5.687,28.385 7.444,30.143 7.443,30.143 16.636,39.334 25.828,30.143 25.828,30.143 26.535,29.436 35.445,20.525 44.354,11.616 46.335,9.636 '/%3E%3C/svg%3E") no-repeat center center/contain;
  position: absolute;
}
input[type=radio].form-input {
  border-radius: 100%;
}
input[type=radio].form-input--checked:after, input[type=radio].form-input:checked:after {
  content: " ";
  background: #fff;
  border-radius: 100%;
  position: absolute;
  width: 100%;
  height: 100%;
  transform: scale(0.6);
  border: 1px solid #fff;
}
.form-switch {
  position: relative;
  display: inline-block;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  margin-right: 4px;
}
.form-switch:before {
  content: "";
  display: block;
  height: calc(var(--input-check-radio-size) + 4px);
  width: calc((var(--input-check-radio-size) + 2px) * 2);
  border-radius: calc(var(--input-check-radio-size) + 2px);
  background-color: #f0f0f0;
  transition: ease all 0.4s;
}
.form-switch:after {
  border: 1px solid #c3c3c3;
  position: absolute;
  content: "";
  height: var(--input-check-radio-size);
  width: var(--input-check-radio-size);
  left: 2px;
  top: 2px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
}
.form-switch:hover:before {
  background-color: #ebebeb;
}
.form-switch:hover:after {
  -webkit-transform: translateX(18%);
  -ms-transform: translateX(18%);
  transform: translateX(18%);
}
.form-switch:hover:checked:after {
  -webkit-transform: translateX(calc(var(--input-check-radio-size) - 18%));
  -ms-transform: translateX(calc(var(--input-check-radio-size) - 18%));
  transform: translateX(calc(var(--input-check-radio-size) - 18%));
}
.form-switch:checked:before {
  background-color: var(--color-primary);
}
.form-switch:checked:after {
  -webkit-transform: translateX(var(--input-check-radio-size));
  -ms-transform: translateX(var(--input-check-radio-size));
  transform: translateX(var(--input-check-radio-size));
  border: 1px solid var(--color-primary);
}
.form-switch--focus:after, .form-switch:focus:after {
  border: 1px solid var(--color-primary);
  box-shadow: var(--input-shadow-active);
}
.form-switch--large:before {
  height: calc((var(--input-check-radio-size) + 4px) * 1.6);
  width: calc((var(--input-check-radio-size) + 2px) * 2 * 1.6);
  border-radius: calc(var(--input-check-radio-size) + 3.2px);
}
.form-switch--large:after {
  height: calc(var(--input-check-radio-size) * 1.6);
  width: calc(var(--input-check-radio-size) * 1.6);
  left: 2px;
  top: 2px;
}
.form-switch--large:checked:after {
  -webkit-transform: translateX(calc(var(--input-check-radio-size) * 1.6));
  -ms-transform: translateX(calc(var(--input-check-radio-size) * 1.6));
  transform: translateX(calc(var(--input-check-radio-size) * 1.6));
}
.form-switch--large:hover:after {
  -webkit-transform: translateX(18%);
  -ms-transform: translateX(18%);
  transform: translateX(18%);
}
.form-switch--large:hover:checked:after {
  -webkit-transform: translateX(calc(var(--input-check-radio-size) * 1.6 - 18%));
  -ms-transform: translateX(calc(var(--input-check-radio-size) * 1.6 - 18%));
  transform: translateX(calc(var(--input-check-radio-size) * 1.6 - 18%));
}
.form-field {
  width: 100%;
  margin: 0 0 1.4em 0;
}
.form-field > label .form-switch,
.form-field > label input[type=radio].form-input,
.form-field > label input[type=checkbox].form-input,
.form-field > .form-field-label .form-switch,
.form-field > .form-field-label input[type=radio].form-input,
.form-field > .form-field-label input[type=checkbox].form-input {
  margin-right: 0.4em;
}
.form-field label,
.form-field-label {
  font-weight: 400;
  display: block;
  margin: 0 0 0.4em 0;
  display: inline-flex;
  align-items: center;
}
.form-error {
  color: var(--color-danger) !important;
}
.form-field-feedback {
  display: block;
  padding: 0.6em 0;
}
.form-group {
  padding: 1rem 0;
  border-bottom: 1px solid #f3f3f3;
}
.form-group:first-of-type {
  padding-top: 0;
}
.form-group:last-of-type {
  padding-bottom: 0;
  border-bottom: 0 none;
}
.form-group .form-group-info {
  margin-bottom: 1em;
}
.form-group .form-group-info h2 {
  font-size: 1.2em;
  margin-bottom: 0.4em;
}
.form-group .form-group-info p {
  color: var(--color-light);
  margin-bottom: 0;
}
@media (--large-viewport) {
.form-group {
    display: flex;
}
.form-group.form-group-stacked {
    flex-direction: column !important;
}
.form-group.form-group-stacked .form-group-col {
    display: flex;
}
.form-group.form-group-stacked .form-group-col .form-group-info {
    width: 30%;
    padding-right: 3em;
}
.form-group.form-group-stacked .form-group-col .form-group-summary,
  .form-group.form-group-stacked .form-group-col .form-group-fields {
    width: 70%;
}
.form-group .form-group-info {
    width: 30%;
    padding-right: 3em;
}
.form-group .form-group-summary,
  .form-group .form-group-fields {
    width: 70%;
}
}
.form-action {
  padding: 20px 0 0 0;
}
.form-action .meta {
  margin: 0 20px;
  font-size: 1.1em;
  display: flex;
}
.form-action .meta .meta-item {
  margin-left: 20px;
}
.form-action.fixed {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: fixed;
  bottom: 0;
  right: 0;
  left: 0;
  background: #fff;
  padding: 10px;
}
@media (--large-viewport) {
.form-action.fixed {
    left: 110px;
    padding: 20px 60px;
}
}
:root {
  --btn-font-weight: 500;
  --btn-font-size: 1em;
  --btn-font-size-s: calc(var(--btn-font-size) - 0.2em);
  --btn-font-size-m: calc(var(--btn-font-size) + 0.2em);
  --btn-font-size-l: calc(var(--btn-font-size) + 0.4em);
  --btn-radius: 0.25em;
  --btn-padding-x: var(--space-s);
  --btn-padding-y: var(--space-xs);
  --btn-shadow: 0 2px 2px #0000001c, 0 2px 3px #0000000f;
  --btn-shadow-hover: 0 6px 9px #0000001f, 0 2px 5px #0000000f;
}
.btn {
  display: inline-flex;
  align-items: center;
  text-align: center;
  transition: ease 0.4s background shadow;
  cursor: pointer;
  border: 0 none;
  background: #fff;
  padding: var(--btn-padding-y) var(--btn-padding-x);
  border-radius: var(--btn-radius);
  font-family: var(--font-family-sans-serif);
  box-shadow: var(--btn-shadow);
  font-size: var(--btn-font-size);
  font-weight: var(--btn-font-weight);
  color: var(--color-text);
}
.btn:hover {
  box-shadow: var(--btn-shadow-hover);
}
.btn:focus {
  outline: none;
  box-shadow: 0px 0px 0px 2px var(--color-gray-a-80), 0px 1px 4px 1px var(--color-gray-a-80);
}
.btn--primary {
  color: #fff;
  background: var(--color-primary);
}
.btn--primary:hover {
  color: #fff;
  background: var(--color-primary-dark);
}
.btn--primary:focus {
  outline: none;
  box-shadow: 0px 0px 0px 2px var(--color-primary-a-80), 0px 1px 4px 1px var(--color-primary-a-80);
}
.btn--accent {
  color: #fff;
  background: var(--color-accent);
}
.btn--accent:hover {
  color: #fff;
  background: var(--color-accent-dark);
}
.btn--accent:focus {
  outline: none;
  box-shadow: 0px 0px 0px 2px var(--color-accent-a-80), 0px 1px 4px 1px var(--color-accent-a-80);
}
.btn--subtle {
  background: var(--color-gray-lighter);
  color: var(--color-gray-dark);
}
.btn--subtle:hover {
  color: var(--color-gray-darker);
  background: var(--color-gray-light);
}
.btn--subtle:focus {
  outline: none;
  box-shadow: 0px 0px 0px 2px var(--color-gray-a-80), 0px 1px 4px 1px var(--color-gray-a-80);
}
.btn--disabled, .btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.btn--s {
  font-size: var(--btn-font-size-s);
}
.btn--m {
  font-size: var(--btn-font-size-m);
}
.btn--l {
  font-size: var(--btn-font-size-l);
}
.responsive-table {
  display: block;
  width: 100%;
  overflow-x: auto;
}
.table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
.table th, .table td {
  padding: 10px;
}
.table th {
  border: 0;
  font-weight: 500;
  border-bottom: 2px solid #f5f5f5;
  text-align: left;
}
.table td {
  border-top: 1px solid #f4f5f7;
}
:root {
  --device-xs: $device-xs;
  --device-s: $device-s;
  --device-m: $device-m;
  --device-l: $device-l;
  --device-xl: $device-xl;
  --device-xxl: $device-xxl;
  --device-xs-container: $device-xs-container;
  --device-s-container: $device-s-container;
  --device-m-container: $device-m-container;
  --device-l-container: $device-l-container;
  --device-xl-container: $device-xl-container;
  --device-xxl-container: $device-xxl-container;
}
.only\@s,
.only\@m,
.only\@l,
.only\@xl,
.only\@xxl {
  display: none !important;
}
@media only screen and (max-width: 576px) {
.not\@xs {
    display: none !important;
}
}
@media only screen and (min-width: 576px) {
.only\@xs {
    display: none !important;
}
}
@media only screen and (min-width: 576px) and (max-width: 768px) {
.only\@s {
    display: block !important;
}
.not\@s {
    display: none !important;
}
}
@media only screen and (min-width: 768px) and (max-width: 992px) {
.only\@m {
    display: block !important;
}
.not\@m {
    display: none !important;
}
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
.only\@l {
    display: block !important;
}
.not\@l {
    display: none !important;
}
}
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
.only\@xl {
    display: block !important;
}
.not\@xl {
    display: none !important;
}
}
@media only screen and (min-width: 1800px) {
.only\@xxl {
    display: block !important;
}
.not\@xxl {
    display: none !important;
}
}
@media only screen and (min-width: 576px) {
.until\@xs {
    display: none !important;
}
.block\@s {
    display: block;
}
.flex\@s {
    display: flex;
}
}
@media only screen and (max-width: 768px) {
.until\@s {
    display: none !important;
}
}
@media only screen and (max-width: 992px) {
.until\@m {
    display: none !important;
}
}
@media only screen and (max-width: 1200px) {
.until\@l {
    display: none !important;
}
}
@media only screen and (max-width: 1800px) {
.until\@xl {
    display: none !important;
}
}
@media only screen and (max-width: 1800px) {
.until\@xxl {
    display: none !important;
}
}
.block\@s,
.flex\@s,
.block\@m,
.flex\@m,
.block\@l,
.flex\@l,
.block\@xl,
.flex\@xl,
.block\@xxl,
.flex\@xxl {
  display: none;
}
.block {
  display: block;
}
.flex {
  display: flex;
}
.flex-col {
  flex-direction: column;
  flex-wrap: nowrap;
}
.flex-col-r {
  flex-direction: column-reverse;
  flex-wrap: nowrap;
}
.flex-row {
  flex-direction: row;
}
.flex-row-r {
  flex-direction: row-reverse;
}
.flex-just-start {
  justify-content: flex-start;
}
.flex-just-center {
  justify-content: center;
}
.flex-just-end {
  justify-content: flex-end;
}
.flex-just-around {
  justify-content: space-around;
}
.flex-just-between {
  justify-content: space-between;
}
.flex-just-even {
  justify-content: space-evenly;
}
.flex-align-items-start {
  align-items: flex-start;
}
.flex-align-items-center {
  align-items: center;
}
.flex-align-items-end {
  align-items: flex-end;
}
.order-first {
  order: -1;
}
.order-last {
  order: 1;
}
@media only screen and (max-width: 576px) {
.block\@xs {
    display: block;
}
.flex\@xs {
    display: flex;
}
.flex-col\@xs {
    flex-direction: column;
    flex-wrap: nowrap;
}
.flex-col-r\@xs {
    flex-direction: column-reverse;
    flex-wrap: nowrap;
}
.flex-row\@xs {
    flex-direction: row;
}
.flex-row-r\@xs {
    flex-direction: row-reverse;
}
.flex-just-start\@xs {
    justify-content: flex-start;
}
.flex-just-center\@xs {
    justify-content: center;
}
.flex-just-end\@xs {
    justify-content: flex-end;
}
.flex-just-around\@xs {
    justify-content: space-around;
}
.flex-just-between\@xs {
    justify-content: space-between;
}
.flex-just-even\@xs {
    justify-content: space-evenly;
}
.flex-align-items-start\@xs {
    align-items: flex-start;
}
.flex-align-items-center\@xs {
    align-items: center;
}
.flex-align-items-end\@xs {
    align-items: flex-end;
}
.order-first\@xs {
    order: -1;
}
.order-last\@xs {
    order: 1;
}
}
@media only screen and (min-width: 576px) {
.block\@s {
    display: block;
}
.flex\@s {
    display: flex;
}
.flex-col\@s {
    flex-direction: column;
    flex-wrap: nowrap;
}
.flex-col-r\@s {
    flex-direction: column-reverse;
    flex-wrap: nowrap;
}
.flex-row\@s {
    flex-direction: row;
}
.flex-row-r\@s {
    flex-direction: row-reverse;
}
.flex-just-start\@s {
    justify-content: flex-start;
}
.flex-just-center\@s {
    justify-content: center;
}
.flex-just-end\@s {
    justify-content: flex-end;
}
.flex-just-around\@s {
    justify-content: space-around;
}
.flex-just-between\@s {
    justify-content: space-between;
}
.flex-just-even\@s {
    justify-content: space-evenly;
}
.flex-align-items-start\@s {
    align-items: flex-start;
}
.flex-align-items-center\@s {
    align-items: center;
}
.flex-align-items-end\@s {
    align-items: flex-end;
}
.order-first\@s {
    order: -1;
}
.order-last\@s {
    order: 1;
}
}
@media only screen and (min-width: 768px) {
.block\@m {
    display: block;
}
.flex\@m {
    display: flex;
}
.flex-col\@m {
    flex-direction: column;
    flex-wrap: nowrap;
}
.flex-col-r\@m {
    flex-direction: column-reverse;
    flex-wrap: nowrap;
}
.flex-row\@m {
    flex-direction: row;
}
.flex-row-r\@m {
    flex-direction: row-reverse;
}
.flex-just-start\@m {
    justify-content: flex-start;
}
.flex-just-center\@m {
    justify-content: center;
}
.flex-just-end\@m {
    justify-content: flex-end;
}
.flex-just-around\@m {
    justify-content: space-around;
}
.flex-just-between\@m {
    justify-content: space-between;
}
.flex-just-even\@m {
    justify-content: space-evenly;
}
.flex-align-items-start\@m {
    align-items: flex-start;
}
.flex-align-items-center\@m {
    align-items: center;
}
.flex-align-items-end\@m {
    align-items: flex-end;
}
.order-first\@m {
    order: -1;
}
.order-last\@m {
    order: 1;
}
}
@media only screen and (min-width: 992px) {
.block\@l {
    display: block;
}
.flex\@l {
    display: flex;
}
.flex-col\@l {
    flex-direction: column;
    flex-wrap: nowrap;
}
.flex-col-r\@l {
    flex-direction: column-reverse;
    flex-wrap: nowrap;
}
.flex-row\@l {
    flex-direction: row;
}
.flex-row-r\@l {
    flex-direction: row-reverse;
}
.flex-just-start\@l {
    justify-content: flex-start;
}
.flex-just-center\@l {
    justify-content: center;
}
.flex-just-end\@l {
    justify-content: flex-end;
}
.flex-just-around\@l {
    justify-content: space-around;
}
.flex-just-between\@l {
    justify-content: space-between;
}
.flex-just-even\@l {
    justify-content: space-evenly;
}
.flex-align-items-start\@l {
    align-items: flex-start;
}
.flex-align-items-center\@l {
    align-items: center;
}
.flex-align-items-end\@l {
    align-items: flex-end;
}
.order-first\@l {
    order: -1;
}
.order-last\@l {
    order: 1;
}
}
@media only screen and (min-width: 1200px) {
.block\@xl {
    display: block;
}
.flex\@xl {
    display: flex;
}
.flex-col\@xl {
    flex-direction: column;
    flex-wrap: nowrap;
}
.flex-col-r\@xl {
    flex-direction: column-reverse;
    flex-wrap: nowrap;
}
.flex-row\@xl {
    flex-direction: row;
}
.flex-row-r\@xl {
    flex-direction: row-reverse;
}
.flex-just-start\@xl {
    justify-content: flex-start;
}
.flex-just-center\@xl {
    justify-content: center;
}
.flex-just-end\@xl {
    justify-content: flex-end;
}
.flex-just-around\@xl {
    justify-content: space-around;
}
.flex-just-between\@xl {
    justify-content: space-between;
}
.flex-just-even\@xl {
    justify-content: space-evenly;
}
.flex-align-items-start\@xl {
    align-items: flex-start;
}
.flex-align-items-center\@xl {
    align-items: center;
}
.flex-align-items-end\@xl {
    align-items: flex-end;
}
.order-first\@xl {
    order: -1;
}
.order-last\@xl {
    order: 1;
}
}
@media only screen and (min-width: 1800px) {
.block\@xxl {
    display: block;
}
.flex\@xxl {
    display: flex;
}
.flex-col\@xxl {
    flex-direction: column;
    flex-wrap: nowrap;
}
.flex-col-r\@xxl {
    flex-direction: column-reverse;
    flex-wrap: nowrap;
}
.flex-row\@xxl {
    flex-direction: row;
}
.flex-row-r\@xxl {
    flex-direction: row-reverse;
}
.flex-just-start\@xxl {
    justify-content: flex-start;
}
.flex-just-center\@xxl {
    justify-content: center;
}
.flex-just-end\@xxl {
    justify-content: flex-end;
}
.flex-just-around\@xxl {
    justify-content: space-around;
}
.flex-just-between\@xxl {
    justify-content: space-between;
}
.flex-just-even\@xxl {
    justify-content: space-evenly;
}
.flex-align-items-start\@xxl {
    align-items: flex-start;
}
.flex-align-items-center\@xxl {
    align-items: center;
}
.flex-align-items-end\@xxl {
    align-items: flex-end;
}
.order-first\@xxl {
    order: -1;
}
.order-last\@xxl {
    order: 1;
}
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.nav,
.nav\@xs,
.nav\@s,
.nav\@m,
.nav\@l,
.nav\@xl,
.nav\@xxl {
  display: flex;
}
.nav ul.nav-items,
.nav\@xs ul.nav-items,
.nav\@s ul.nav-items,
.nav\@m ul.nav-items,
.nav\@l ul.nav-items,
.nav\@xl ul.nav-items,
.nav\@xxl ul.nav-items {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.nav .nav-item,
.nav\@xs .nav-item,
.nav\@s .nav-item,
.nav\@m .nav-item,
.nav\@l .nav-item,
.nav\@xl .nav-item,
.nav\@xxl .nav-item {
  display: flex;
  align-items: center;
  justify-content: center;
}
.nav .nav-item .nav-link,
.nav\@xs .nav-item .nav-link,
.nav\@s .nav-item .nav-link,
.nav\@m .nav-item .nav-link,
.nav\@l .nav-item .nav-link,
.nav\@xl .nav-item .nav-link,
.nav\@xxl .nav-item .nav-link {
  flex: 1 1 auto;
  position: relative;
  display: block;
  padding: var(--space-s) var(--space);
  cursor: pointer;
  color: var(--color-gray);
  font-weight: 500;
}
.nav .nav-item .nav-link:hover,
.nav\@xs .nav-item .nav-link:hover,
.nav\@s .nav-item .nav-link:hover,
.nav\@m .nav-item .nav-link:hover,
.nav\@l .nav-item .nav-link:hover,
.nav\@xl .nav-item .nav-link:hover,
.nav\@xxl .nav-item .nav-link:hover {
  text-decoration: none;
  color: var(--color-text);
}
.nav .nav-item.active .nav-link,
.nav\@xs .nav-item.active .nav-link,
.nav\@s .nav-item.active .nav-link,
.nav\@m .nav-item.active .nav-link,
.nav\@l .nav-item.active .nav-link,
.nav\@xl .nav-item.active .nav-link,
.nav\@xxl .nav-item.active .nav-link {
  font-weight: 500;
  color: var(--color-text);
}
.nav-active--fill .nav-item.active > .nav-link,
.nav\@xs-active--fill .nav-item.active > .nav-link,
.nav\@s-active--fill .nav-item.active > .nav-link,
.nav\@m-active--fill .nav-item.active > .nav-link,
.nav\@l-active--fill .nav-item.active > .nav-link,
.nav\@xl-active--fill .nav-item.active > .nav-link,
.nav\@xxl-active--fill .nav-item.active > .nav-link {
  border-radius: var(--space-xs);
  background: var(--color-primary);
  color: #fff;
}
.nav-active--fill .nav-item.active > .nav-link:hover,
.nav\@xs-active--fill .nav-item.active > .nav-link:hover,
.nav\@s-active--fill .nav-item.active > .nav-link:hover,
.nav\@m-active--fill .nav-item.active > .nav-link:hover,
.nav\@l-active--fill .nav-item.active > .nav-link:hover,
.nav\@xl-active--fill .nav-item.active > .nav-link:hover,
.nav\@xxl-active--fill .nav-item.active > .nav-link:hover {
  color: #fff;
}
.nav-active--fill-light .nav-item.active > .nav-link,
.nav\@xs-active--fill-light .nav-item.active > .nav-link,
.nav\@s-active--fill-light .nav-item.active > .nav-link,
.nav\@m-active--fill-light .nav-item.active > .nav-link,
.nav\@l-active--fill-light .nav-item.active > .nav-link,
.nav\@xl-active--fill-light .nav-item.active > .nav-link,
.nav\@xxl-active--fill-light .nav-item.active > .nav-link {
  border-radius: var(--space-xs);
  background: var(--color-primary-a-10);
  color: var(--color-primary);
}
.nav-active--fill-light .nav-item.active > .nav-link:hover,
.nav\@xs-active--fill-light .nav-item.active > .nav-link:hover,
.nav\@s-active--fill-light .nav-item.active > .nav-link:hover,
.nav\@m-active--fill-light .nav-item.active > .nav-link:hover,
.nav\@l-active--fill-light .nav-item.active > .nav-link:hover,
.nav\@xl-active--fill-light .nav-item.active > .nav-link:hover,
.nav\@xxl-active--fill-light .nav-item.active > .nav-link:hover {
  color: var(--color-primary);
}
.nav-active--under .nav-item .nav-link,
.nav\@xs-active--under .nav-item .nav-link,
.nav\@s-active--under .nav-item .nav-link,
.nav\@m-active--under .nav-item .nav-link,
.nav\@l-active--under .nav-item .nav-link,
.nav\@xl-active--under .nav-item .nav-link,
.nav\@xxl-active--under .nav-item .nav-link {
  padding: var(--space-s) var(--space) var(--space) var(--space);
}
.nav-active--under .nav-item.active > .nav-link::after,
.nav\@xs-active--under .nav-item.active > .nav-link::after,
.nav\@s-active--under .nav-item.active > .nav-link::after,
.nav\@m-active--under .nav-item.active > .nav-link::after,
.nav\@l-active--under .nav-item.active > .nav-link::after,
.nav\@xl-active--under .nav-item.active > .nav-link::after,
.nav\@xxl-active--under .nav-item.active > .nav-link::after {
  position: absolute;
  content: " ";
  transition: all 0.4s ease;
  bottom: 0;
  height: 4px;
  width: 100%;
  left: 0;
  border-radius: 4px 4px 0 0;
  background: var(--color-primary);
}
.nav--tabs,
.nav\@xs--tabs,
.nav\@s--tabs,
.nav\@m--tabs,
.nav\@l--tabs,
.nav\@xl--tabs,
.nav\@xxl--tabs {
  position: relative;
}
.nav--tabs::after,
.nav\@xs--tabs::after,
.nav\@s--tabs::after,
.nav\@m--tabs::after,
.nav\@l--tabs::after,
.nav\@xl--tabs::after,
.nav\@xxl--tabs::after {
  position: absolute;
  content: " ";
  transition: all 0.4s ease;
  bottom: 1px;
  height: 1px;
  width: 100%;
  left: 0;
  background: #e5e5e5;
  z-index: 1;
}
.nav--tabs .nav-item,
.nav\@xs--tabs .nav-item,
.nav\@s--tabs .nav-item,
.nav\@m--tabs .nav-item,
.nav\@l--tabs .nav-item,
.nav\@xl--tabs .nav-item,
.nav\@xxl--tabs .nav-item {
  z-index: 2;
  border: 1px solid transparent;
}
.nav--tabs .nav-item.active,
.nav\@xs--tabs .nav-item.active,
.nav\@s--tabs .nav-item.active,
.nav\@m--tabs .nav-item.active,
.nav\@l--tabs .nav-item.active,
.nav\@xl--tabs .nav-item.active,
.nav\@xxl--tabs .nav-item.active {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-bottom: 1px solid transparent;
  border-radius: var(--space-xs) var(--space-xs) 0 0;
}
.nav--stacked ul.nav-items,
.nav\@xs--stacked ul.nav-items,
.nav\@s--stacked ul.nav-items,
.nav\@m--stacked ul.nav-items,
.nav\@l--stacked ul.nav-items,
.nav\@xl--stacked ul.nav-items,
.nav\@xxl--stacked ul.nav-items {
  flex-direction: column;
}
.nav.active,
.nav\@xs.active,
.nav\@s.active,
.nav\@m.active,
.nav\@l.active,
.nav\@xl.active,
.nav\@xxl.active {
  display: block;
}
.nav.active .nav-items,
.nav\@xs.active .nav-items,
.nav\@s.active .nav-items,
.nav\@m.active .nav-items,
.nav\@l.active .nav-items,
.nav\@xl.active .nav-items,
.nav\@xxl.active .nav-items {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.nav\@xs,
.nav\@s,
.nav\@m,
.nav\@l,
.nav\@xl,
.nav\@xxl {
  display: none;
}
.nav-toggle,
.nav-toggle\@xs,
.nav-toggle\@s,
.nav-toggle\@m,
.nav-toggle\@l,
.nav-toggle\@xl,
.nav-toggle\@xxl {
  display: inline-flex;
  align-items: center;
  text-align: center;
  cursor: pointer;
  border: 0 none;
  background: transparent;
  padding: var(--btn-padding-y) var(--btn-padding-x);
  border-radius: var(--btn-radius);
  font-family: var(--font-family-sans-serif);
  font-size: var(--btn-font-size);
  color: var(--color-text);
  transition: ease all 200ms;
}
.nav-toggle.active, .nav-toggle:hover,
.nav-toggle\@xs.active,
.nav-toggle\@xs:hover,
.nav-toggle\@s.active,
.nav-toggle\@s:hover,
.nav-toggle\@m.active,
.nav-toggle\@m:hover,
.nav-toggle\@l.active,
.nav-toggle\@l:hover,
.nav-toggle\@xl.active,
.nav-toggle\@xl:hover,
.nav-toggle\@xxl.active,
.nav-toggle\@xxl:hover {
  background: var(--color-gray-lighter);
}
.nav-toggle svg,
.nav-toggle\@xs svg,
.nav-toggle\@s svg,
.nav-toggle\@m svg,
.nav-toggle\@l svg,
.nav-toggle\@xl svg,
.nav-toggle\@xxl svg {
  width: 1.5rem;
  height: 1.5rem;
  stroke: var(--color-gray);
}
@media only screen and (min-width: 576px) {
.nav\@xs {
    display: flex;
}
.nav-toggle\@xs {
    display: none;
}
}
@media only screen and (min-width: 768px) {
.nav\@s {
    display: flex;
}
.nav-toggle\@s {
    display: none;
}
}
@media only screen and (min-width: 992px) {
.nav\@m {
    display: flex;
}
.nav-toggle\@m {
    display: none;
}
}
@media only screen and (min-width: 1200px) {
.nav\@l {
    display: flex;
}
.nav-toggle\@l {
    display: none;
}
}
@media only screen and (min-width: 1800px) {
.nav\@xl {
    display: flex;
}
.nav-toggle\@xl {
    display: none;
}
}
@media only screen and (min-width: auto) {
.nav\@xxl {
    display: flex;
}
.nav-toggle\@xxl {
    display: none;
}
}
.navbar .container,
.navbar .container-fluid {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 auto;
  padding: var(--space);
  z-index: 99;
}
.navbar .brand {
  display: flex;
  align-items: center;
  margin-right: var(--space);
}
.navbar .brand .brand-icon svg, .navbar .brand .brand-icon img {
  display: block;
}
.navbar .brand .brand-name {
  color: var(--color-text);
  font-size: var(--text-l);
  font-weight: bold;
  margin: 0 var(--space-xs);
}
.navbar.navbar--dark .nav-link {
  color: var(--color-white-a-80);
}
.navbar.navbar--dark .nav-link:hover {
  color: var(--color-primary);
}
.navbar {
  /* Reponsive toggle */
}
.navbar nav[class^=nav].active {
  width: 100%;
  margin-top: var(--space);
}
:root {
  --panel-padding: var(--space-l);
  --panel-radius: .8rem;
  --panel-border: 0px none;
  --panel-shadow: 0 1px 1px #00000012, 0 2px 5px #0000001a;
  --panel-margin: 0 0 1rem 0;
  --panel-background: transparent;
}
.panel {
  padding: var(--panel-padding);
  border-radius: var(--panel-radius);
  box-shadow: var(--panel-shadow);
  margin: var(--panel-margin);
  position: relative;
}
.panel.panel--flat {
  box-shadow: none;
}
.panel--primary {
  border-top: 3px solid var(--color-primary);
}
.panel--accent {
  border-top: 3px solid var(--color-accent);
}
.panel-header {
  border-bottom: 2px solid #f9fafc;
  margin-bottom: 1rem;
}
.panel-header.no-border {
  border: 0 none;
}
.panel--table {
  padding: 0;
}
.panel--table .table {
  border-radius: var(--border-radius);
  margin-bottom: 0;
}
.panel--table td:first-child, .panel--table th:first-child {
  padding-left: var(--space-l);
}
.panel--table td:last-child, .panel--table th:last-child {
  padding-right: var(--space-l);
}
.breadcrumb a {
  display: inline-block;
  color: var(--color-gray);
}
.breadcrumb a:hover {
  color: var(--color-primary);
}
.breadcrumb a:after {
  display: inline-block;
  width: 5px;
  height: 5px;
  margin: 0 0.8em;
  content: "";
  border-right: 2px solid var(--color-gray-light);
  border-bottom: 2px solid var(--color-gray-light);
  transform: translateY(-2px) rotate(-45deg);
}
.breadcrumb a:last-child:after {
  display: none;
}
.badge {
  font-size: 0.85em;
  font-weight: bold;
  padding: 0.3rem 0.8rem;
  border-radius: 2em;
  display: inline-block;
}
.badge--primary {
  background: var(--color-primary);
  color: #fff;
}
.badge--secondary {
  background: var(--color-secondary);
  color: #fff;
}
.badge--dark {
  background: var(--color-dark);
  color: #fff;
}
.badge--black {
  background: var(--color-black);
  color: #fff;
}
.badge--green, .badge--approved, .badge--success {
  background: var(--color-success);
  color: #fff;
}
.badge--info {
  background: var(--color-info);
  color: #fff;
}
.badge--danger {
  background: var(--color-danger);
  color: #fff;
}
.badge--warning {
  background: var(--color-warning);
  color: #fff;
}
.badge--light {
  background: var(--color-light);
  color: #fff;
}
.badge--invert-primary {
  background: rgba(var(--color-primary-rgb), 0.06);
  color: var(--color-primary);
}
.badge--invert-secondary {
  background: rgba(var(--color-secondary-rgb), 0.06);
  color: var(--color-secondary);
}
.badge--invert-dark {
  background: rgba(var(--color-dark-rgb), 0.06);
  color: var(--color-dark);
}
.badge--invert-black {
  background: rgba(var(--color-black-rgb), 0.06);
  color: var(--color-black);
}
.badge--invert-green, .badge--invert-approved, .badge--invert-success {
  background: rgba(var(--color-success-rgb), 0.06);
  color: var(--color-success);
}
.badge--invert-info {
  background: rgba(var(--color-info-rgb), 0.06);
  color: var(--color-info);
}
.badge--invert-danger {
  background: rgba(var(--color-danger-rgb), 0.06);
  color: var(--color-danger);
}
.badge--invert-warning {
  background: rgba(var(--color-warning-rgb), 0.06);
  color: var(--color-warning);
}
.badge--invert-light {
  background: rgba(var(--color-light-rgb), 0.06);
  color: var(--color-light);
}
svg [class^=stroke--]:not(.stroke--none),
svg [class^=fill--]:not(.fill--none) {
  transition: ease all 0.2s;
}
svg .fill--none {
  fill: none;
}
svg .fill--primary {
  fill: var(--color-primary);
}
svg .fill--secondary {
  fill: var(--color-secondary);
}
svg .fill--success {
  fill: var(--color-success);
}
svg .fill--info {
  fill: var(--color-info);
}
svg .fill--danger {
  fill: var(--color-danger);
}
svg .fill--warning {
  fill: var(--color-warning);
}
svg .fill--dark {
  fill: var(--color-dark);
}
svg .fill--light {
  fill: var(--color-light);
}
svg .stroke--none {
  stroke: none;
}
svg .stroke--primary {
  stroke: var(--color-primary);
}
svg .stroke--secondary {
  stroke: var(--color-secondary);
}
svg .stroke--success {
  stroke: var(--color-success);
}
svg .stroke--info {
  stroke: var(--color-info);
}
svg .stroke--danger {
  stroke: var(--color-danger);
}
svg .stroke--warning {
  stroke: var(--color-warning);
}
svg .stroke--dark {
  stroke: var(--color-dark);
}
svg .stroke--light {
  stroke: var(--color-light);
}
a:hover svg .fill-hover--none {
  fill: none;
}
a:hover svg .fill-hover--primary {
  fill: var(--color-primary);
}
a:hover svg .fill-hover--black {
  fill: var(--color-black);
}
a:hover svg .fill-hover--secondary {
  fill: var(--color-secondary);
}
a:hover svg .fill-hover--success {
  fill: var(--color-success);
}
a:hover svg .fill-hover--info {
  fill: var(--color-info);
}
a:hover svg .fill-hover--danger {
  fill: var(--color-danger);
}
a:hover svg .fill-hover--warning {
  fill: var(--color-warning);
}
a:hover svg .fill-hover--dark {
  fill: var(--color-dark);
}
a:hover svg .fill-hover--light {
  fill: var(--color-light);
}
a:hover svg .stroke-hover--primary {
  stroke: var(--color-primary);
}
a:hover svg .stroke-hover--secondary {
  stroke: var(--color-secondary);
}
a:hover svg .stroke-hover--success {
  stroke: var(--color-success);
}
a:hover svg .stroke-hover--info {
  stroke: var(--color-info);
}
a:hover svg .stroke-hover--danger {
  stroke: var(--color-danger);
}
a:hover svg .stroke-hover--warning {
  stroke: var(--color-warning);
}
a:hover svg .stroke-hover--dark {
  stroke: var(--color-dark);
}
a:hover svg .stroke-hover--light {
  stroke: var(--color-light);
}
.list {
  display: flex;
  flex-direction: column;
  margin-left: calc(-1 * var(--list-spacing));
  margin-right: calc(-1 * var(--list-spacing));
  margin-bottom: 1rem;
}
.list > header, .list > footer, .list > div {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media (--phone-viewport) {
.list > header, .list > footer, .list > div {
    padding: 0.3rem 0;
}
}
.list > header > div, .list > footer > div, .list > div > div {
  padding: 0.1rem var(--list-spacing);
}
@media (--phone-viewport) {
.list > header > div, .list > footer > div, .list > div > div {
    width: 100%;
}
}
@media (--large-viewport) {
.list > header, .list > footer, .list > div {
    flex-wrap: nowrap;
}
.list > header > div:not([class^=w-]), .list > footer > div:not([class^=w-]), .list > div > div:not([class^=w-]) {
    width: 20%;
}
.list > header > div, .list > footer > div, .list > div > div {
    padding: 0.6rem var(--list-spacing);
}
}
.list > header {
  font-weight: bold;
}
.list--separator > header {
  border-bottom: 2px solid #f6f8f9;
}
.list--separator > div {
  border-bottom: 1px solid #f6f8f9;
}
.list--stripe > div:nth-child(odd) {
  background: #f6f8f9;
}
.list .list-item:last-child {
  border-bottom: 0 none;
}
.list .list-empty {
  padding: 2em;
  text-align: center;
}
.list .list-empty .icon {
  margin: 12px 0;
  width: 64px;
  height: 64px;
  background: var(--color-primary);
  border-radius: 100%;
  opacity: 0.5;
}
.list .list-empty h2 {
  margin: 0 0;
  font-size: 2em;
  color: var(--color-dark);
}
.list.grid-list {
  display: flex;
  flex-wrap: wrap;
}
.list.grid-list header, .list.grid-list .list-header {
  flex: 1 1 100%;
}
.list.grid-list .list-item {
  flex: 1 1 33%;
  padding: 10px;
  flex-direction: column;
  align-items: flex-start;
  border-bottom: 0 none;
}
.list.grid-list.grid-list-20 .list-item {
  flex: 1 1 20%;
}
.list.grid-list.grid-list-25 .list-item {
  flex: 1 1 25%;
}
.list.grid-list.grid-list-33.list-item {
  flex: 1 1 33%;
}
.list.grid-list.grid-list-50 .list-item {
  flex: 1 1 50%;
}
.list[aria-busy=true] {
  opacity: 0.8;
}
.pad-escape {
  margin: 0 -0.8rem;
}
.table td, .table th {
  padding: 0.8rem;
  font-weight: 400;
  border-top: 0 none !important;
  border-bottom: 0 none !important;
}
.table th.text-center {
  text-align: center;
}
.table thead tr {
  position: relative;
}
.table thead tr th {
  vertical-align: bottom;
  position: relative;
}
.table thead tr th:before {
  content: " ";
  height: 1px;
  width: 100%;
  background: var(--heading-row-border-color);
  bottom: 0;
  right: 0;
  position: absolute;
}
.table thead tr th .group-name {
  font-weight: 500;
  font-size: 1.1rem;
}
.table tbody tr {
  border-bottom: 1px solid var(--row-border-color);
}
.table .td-grade-entry {
  padding: 0;
}
.table td.assessment {
  padding: 0;
}
.table td.assessment.assessment-0 {
  border-left: 1px solid var(--heading-row-border-color);
}
.table th.assessment.assessment-0 {
  border-left: 1px solid var(--heading-row-border-color);
}
.table td.graded, .table th.graded {
  text-align: right;
  vertical-align: middle;
}
.table tr.actionable:hover,
.table tr.action-row:hover {
  background: var(--color-row-hover);
  cursor: pointer;
}
.table tr.actionable:hover td.actions > .toolbar,
.table tr.action-row:hover td.actions > .toolbar {
  opacity: 1;
}
.table tr.actionable:hover td.actions .btn--icon .fill,
.table tr.action-row:hover td.actions .btn--icon .fill {
  fill: var(--color-gray);
}
.table tr.actionable:hover td.actions .btn--icon .stroke,
.table tr.action-row:hover td.actions .btn--icon .stroke {
  stroke: var(--color-gray);
}
.table td.actions {
  vertical-align: middle;
}
.table td.actions > .toolbar {
  display: flex;
  opacity: 0;
}
.table td.actions > .toolbar > li {
  margin: 0 6px;
}
.table .table th.grade,
td.grade {
  width: 200px;
  text-align: center;
}
.table.sticky-header {
  overflow: scroll;
}
.table.sticky-header th {
  position: sticky;
  top: 0;
  z-index: 5;
  background: #fff;
}
.table.sticky-header th.student,
.table.sticky-header td.student {
  width: 350px;
}
.table.sticky {
  table-layout: fixed;
  overflow: scroll;
}
.table.sticky th {
  position: sticky;
  top: 0;
  z-index: 10;
  background: #fff;
}
.table.sticky th.student,
.table.sticky td.student {
  left: 0px;
  width: 350px;
  position: sticky;
  background: #fff;
}
.table.sticky th.over-all,
.table.sticky td.over-all {
  text-align: center;
  left: 350px;
  width: 120px;
  position: sticky;
  background: #fff;
}
.table.sticky td.student,
.table.sticky td.over-all {
  z-index: 9;
}
.table.sticky th.student,
.table.sticky th.over-all {
  z-index: 11;
}
.table td.student {
  display: flex;
  align-items: center;
}
.table td.student .student-actions {
  flex: 1 1 auto;
}
.tag-label,
.tags-input-badge-selected-default {
  position: relative;
  background: var(--color-accent);
  color: #fff;
  font-size: 0.95rem;
  font-weight: 500;
  border-radius: 26px;
  padding: 0.2rem 0.8rem;
  margin-right: 0.2rem;
}
.tag-label {
  background: var(--color-grey-a-10);
  color: var(--color-grey);
}
.tag-label--light, .tag-label--grey {
  background: var(--color-grey-a-10);
  color: var(--color-grey);
}
.tag-label--primary {
  background: var(--color-primary-a-10);
  color: var(--color-primary);
}
.tag-label--accent {
  background: var(--color-accent-a-10);
  color: var(--color-accent);
}
.tag-label--purple {
  background: var(--color-purple-a-10);
  color: var(--color-purple);
}
.tag-label--green {
  background: var(--color-green-a-10);
  color: var(--color-green);
}
.tag-label--red {
  background: var(--color-red-a-10);
  color: var(--color-red);
}
.tags-input-badge-selected-default {
  padding: 0.2rem 0.9rem 0.2rem 0.5rem;
}
.tag-input:focus-within {
  border: var(--input-border-active);
  box-shadow: var(--input-shadow-active);
}
.tag-input input:focus {
  outline: 0 none;
}
.info-tainment {
  position: relative;
  background: rgba(246, 246, 246, 0.76);
  border-radius: 2rem;
  padding: 3rem;
  margin-bottom: 1rem;
}
.info-tainment--has-undraw {
  min-height: 300px;
}
.info-tainment--has-undraw .undraw {
  max-width: 60%;
}
.info-tainment--has-undraw--bottom-right .undraw {
  right: -10px;
  bottom: -40px;
  position: absolute;
}
.info-tainment--has-undraw p {
  max-width: 60%;
}
.info-tainment h2 {
  color: var(--color-primary);
}
.info-tainment p {
  margin: 2rem 0;
}
.notice-over-icon {
  padding-top: 0;
  position: relative;
}
.notice-over-icon .icon,
.notice-over-icon .undraw {
  opacity: 0.1;
  max-width: 500px;
  max-height: 500px;
  margin: 0 auto;
  display: block;
}
.notice-over-icon .text {
  z-index: 1;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
}
.notice-empty {
  padding-top: 0;
  position: relative;
  text-align: center;
  padding: 4rem;
}
.notice-busy {
  padding-top: 0;
  position: relative;
  text-align: center;
  padding: 4rem;
}
.notice-busy .busy-spinner {
  position: static;
  margin: 0 auto;
}
.score-card .total {
  opacity: 0.8;
}
.score-card .total:before {
  content: "/";
  opacity: 0.6;
  margin-left: 0.2rem;
  margin-right: 0.2rem;
}
.score-card .percentage {
  opacity: 0.8;
  margin-left: 0.2rem;
}
.container-fluid,
.container {
  margin-right: auto;
  margin-left: auto;
}
.container-fluid {
  padding-right: 2rem;
  padding-left: 2rem;
}
.row {
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}
.row.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.col.reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}
.col,
.col-xs,
.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-offset-0,
.col-xs-offset-1,
.col-xs-offset-2,
.col-xs-offset-3,
.col-xs-offset-4,
.col-xs-offset-5,
.col-xs-offset-6,
.col-xs-offset-7,
.col-xs-offset-8,
.col-xs-offset-9,
.col-xs-offset-10,
.col-xs-offset-11,
.col-xs-offset-12 {
  box-sizing: border-box;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.col-xs {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  max-width: 100%;
}
.col-xs-1 {
  -ms-flex-preferred-size: 8.33333333%;
  flex-basis: 8.33333333%;
  max-width: 8.33333333%;
}
.col-xs-2 {
  -ms-flex-preferred-size: 16.66666667%;
  flex-basis: 16.66666667%;
  max-width: 16.66666667%;
}
.col-xs-3 {
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
  max-width: 25%;
}
.col-xs-4 {
  -ms-flex-preferred-size: 33.33333333%;
  flex-basis: 33.33333333%;
  max-width: 33.33333333%;
}
.col-xs-5 {
  -ms-flex-preferred-size: 41.66666667%;
  flex-basis: 41.66666667%;
  max-width: 41.66666667%;
}
.col-xs-6 {
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  max-width: 50%;
}
.col-xs-7 {
  -ms-flex-preferred-size: 58.33333333%;
  flex-basis: 58.33333333%;
  max-width: 58.33333333%;
}
.col-xs-8 {
  -ms-flex-preferred-size: 66.66666667%;
  flex-basis: 66.66666667%;
  max-width: 66.66666667%;
}
.col-xs-9 {
  -ms-flex-preferred-size: 75%;
  flex-basis: 75%;
  max-width: 75%;
}
.col-xs-10 {
  -ms-flex-preferred-size: 83.33333333%;
  flex-basis: 83.33333333%;
  max-width: 83.33333333%;
}
.col-xs-11 {
  -ms-flex-preferred-size: 91.66666667%;
  flex-basis: 91.66666667%;
  max-width: 91.66666667%;
}
.col-xs-12 {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  max-width: 100%;
}
.col-xs-offset-0 {
  margin-left: 0;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.start-xs {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  text-align: start;
}
.center-xs {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
}
.end-xs {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  text-align: end;
}
.top-xs {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.middle-xs {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.bottom-xs {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.around-xs {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}
.between-xs {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.first-xs {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
}
.last-xs {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}
@media only screen and (min-width: 48em) {
.container {
    width: 49rem;
}
.col-sm,
  .col-sm-1,
  .col-sm-2,
  .col-sm-3,
  .col-sm-4,
  .col-sm-5,
  .col-sm-6,
  .col-sm-7,
  .col-sm-8,
  .col-sm-9,
  .col-sm-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm-offset-0,
  .col-sm-offset-1,
  .col-sm-offset-2,
  .col-sm-offset-3,
  .col-sm-offset-4,
  .col-sm-offset-5,
  .col-sm-offset-6,
  .col-sm-offset-7,
  .col-sm-offset-8,
  .col-sm-offset-9,
  .col-sm-offset-10,
  .col-sm-offset-11,
  .col-sm-offset-12 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
}
.col-sm {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
}
.col-sm-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
}
.col-sm-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
}
.col-sm-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
}
.col-sm-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
}
.col-sm-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
}
.col-sm-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
}
.col-sm-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
}
.col-sm-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
}
.col-sm-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
}
.col-sm-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
}
.col-sm-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
}
.col-sm-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}
.col-sm-offset-0 {
    margin-left: 0;
}
.col-sm-offset-1 {
    margin-left: 8.33333333%;
}
.col-sm-offset-2 {
    margin-left: 16.66666667%;
}
.col-sm-offset-3 {
    margin-left: 25%;
}
.col-sm-offset-4 {
    margin-left: 33.33333333%;
}
.col-sm-offset-5 {
    margin-left: 41.66666667%;
}
.col-sm-offset-6 {
    margin-left: 50%;
}
.col-sm-offset-7 {
    margin-left: 58.33333333%;
}
.col-sm-offset-8 {
    margin-left: 66.66666667%;
}
.col-sm-offset-9 {
    margin-left: 75%;
}
.col-sm-offset-10 {
    margin-left: 83.33333333%;
}
.col-sm-offset-11 {
    margin-left: 91.66666667%;
}
.start-sm {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
}
.center-sm {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}
.end-sm {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
}
.top-sm {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.middle-sm {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.bottom-sm {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.around-sm {
    -ms-flex-pack: distribute;
    justify-content: space-around;
}
.between-sm {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.first-sm {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
}
.last-sm {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}
}
@media only screen and (min-width: 64em) {
.container {
    width: 65rem;
}
.col-md,
  .col-md-1,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-10,
  .col-md-11,
  .col-md-12,
  .col-md-offset-0,
  .col-md-offset-1,
  .col-md-offset-2,
  .col-md-offset-3,
  .col-md-offset-4,
  .col-md-offset-5,
  .col-md-offset-6,
  .col-md-offset-7,
  .col-md-offset-8,
  .col-md-offset-9,
  .col-md-offset-10,
  .col-md-offset-11,
  .col-md-offset-12 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
}
.col-md {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
}
.col-md-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
}
.col-md-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
}
.col-md-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
}
.col-md-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
}
.col-md-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
}
.col-md-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
}
.col-md-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
}
.col-md-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
}
.col-md-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
}
.col-md-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
}
.col-md-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
}
.col-md-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}
.col-md-offset-0 {
    margin-left: 0;
}
.col-md-offset-1 {
    margin-left: 8.33333333%;
}
.col-md-offset-2 {
    margin-left: 16.66666667%;
}
.col-md-offset-3 {
    margin-left: 25%;
}
.col-md-offset-4 {
    margin-left: 33.33333333%;
}
.col-md-offset-5 {
    margin-left: 41.66666667%;
}
.col-md-offset-6 {
    margin-left: 50%;
}
.col-md-offset-7 {
    margin-left: 58.33333333%;
}
.col-md-offset-8 {
    margin-left: 66.66666667%;
}
.col-md-offset-9 {
    margin-left: 75%;
}
.col-md-offset-10 {
    margin-left: 83.33333333%;
}
.col-md-offset-11 {
    margin-left: 91.66666667%;
}
.start-md {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
}
.center-md {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}
.end-md {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
}
.top-md {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.middle-md {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.bottom-md {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.around-md {
    -ms-flex-pack: distribute;
    justify-content: space-around;
}
.between-md {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.first-md {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
}
.last-md {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}
}
@media only screen and (min-width: 75em) {
.container {
    width: 76rem;
}
.col-lg,
  .col-lg-1,
  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg-offset-0,
  .col-lg-offset-1,
  .col-lg-offset-2,
  .col-lg-offset-3,
  .col-lg-offset-4,
  .col-lg-offset-5,
  .col-lg-offset-6,
  .col-lg-offset-7,
  .col-lg-offset-8,
  .col-lg-offset-9,
  .col-lg-offset-10,
  .col-lg-offset-11,
  .col-lg-offset-12 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
}
.col-lg {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
}
.col-lg-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
}
.col-lg-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
}
.col-lg-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
}
.col-lg-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
}
.col-lg-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
}
.col-lg-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
}
.col-lg-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
}
.col-lg-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
}
.col-lg-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
}
.col-lg-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
}
.col-lg-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
}
.col-lg-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}
.col-lg-offset-0 {
    margin-left: 0;
}
.col-lg-offset-1 {
    margin-left: 8.33333333%;
}
.col-lg-offset-2 {
    margin-left: 16.66666667%;
}
.col-lg-offset-3 {
    margin-left: 25%;
}
.col-lg-offset-4 {
    margin-left: 33.33333333%;
}
.col-lg-offset-5 {
    margin-left: 41.66666667%;
}
.col-lg-offset-6 {
    margin-left: 50%;
}
.col-lg-offset-7 {
    margin-left: 58.33333333%;
}
.col-lg-offset-8 {
    margin-left: 66.66666667%;
}
.col-lg-offset-9 {
    margin-left: 75%;
}
.col-lg-offset-10 {
    margin-left: 83.33333333%;
}
.col-lg-offset-11 {
    margin-left: 91.66666667%;
}
.start-lg {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
}
.center-lg {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}
.end-lg {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
}
.top-lg {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.middle-lg {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.bottom-lg {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.around-lg {
    -ms-flex-pack: distribute;
    justify-content: space-around;
}
.between-lg {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.first-lg {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
}
.last-lg {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}
}
.form-input-group {
  display: flex;
  align-items: center;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 1em;
  line-height: 1em;
  background: #fff;
  font-family: var(--font-family-sans-serif);
  border-radius: var(--input-radius);
  border: var(--input-border);
  padding: 0.3rem;
}
.form-input-group--hover, .form-input-group:hover {
  border: var(--input-border-hover);
  box-shadow: var(--input-shadow-hover);
}
.form-input-group--focus, .form-input-group:focus-within {
  outline: 0 none;
  border: var(--input-border-active);
  box-shadow: var(--input-shadow-active);
}
.form-input-group .form-input {
  border: 0 none;
}
.form-input-group .form-input:hover, .form-input-group .form-input:active, .form-input-group .form-input:focus {
  border: 0 none;
  box-shadow: none;
}
.form-input-group .form-input-prefix,
.form-input-group .form-input-suffix {
  flex: 1 0 auto;
  display: inline-flex;
  padding: 0.6rem 1rem;
  line-height: 1.3;
  color: var(--color-light);
}
select.form-input {
  padding-right: 30px;
}
input[type=search] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon' width='16.615' height='16.614' viewBox='0 0 16.615 16.614'%3E%3Cpath opacity='.4' fill='fill' d='M16.414,17.965a6.591,6.591,0,1,1,1.551-1.551L22.3,20.745a1.081,1.081,0,0,1,0,1.533l-.018.018a1.085,1.085,0,0,1-1.533,0l-4.332-4.332Zm-3.821-.331a5.041,5.041,0,1,0-5.041-5.041,5.041,5.041,0,0,0,5.041,5.041Z' transform='translate(-6 -6)' fill-rule='evenodd'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 10px center;
  padding-left: 2rem !important;
}
.form-actions {
  padding: 1rem 0;
  display: flex;
  align-items: center;
}
.form-actions .btn {
  margin-right: 1rem;
}
input[type=checkbox].form-input--indeterminate:after,
input[type=checkbox].form-input:indeterminate:after {
  content: "";
  color: #fff;
  width: 70%;
  height: 4px;
  transform: translate(-50%, -50%);
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 3px;
}
.form-switch--accent:checked:before {
  background-color: var(--color-accent);
}
.form-switch--accent:checked:after {
  border: 1px solid var(--color-accent);
}
.form-switch--accent:focus:after {
  border: 1px solid var(--color-accent);
  box-shadow: 0px 0px 0px 4px var(--color-accent-a-30), 0px 1px 0px 1px var(--color-accent-a-20);
}
.form-field-error {
  padding: 0.8rem 0;
  display: block;
}
@media (max-width: 900px) {
.form-group {
    flex-wrap: wrap;
}
}
.fancy-panel {
  border-radius: var(--space);
  padding: var(--space-xl);
  margin-bottom: var(--space-l);
  overflow: hidden;
  position: relative;
}
.fancy-panel .circle {
  position: absolute;
  right: 10%;
  bottom: 20px;
  z-index: 1;
  display: block;
  width: 100px;
  height: 100px;
  background: var(--color-primary-dark);
  border-radius: 100%;
}
.fancy-panel .circle-outline {
  left: 40%;
  top: -70px;
  position: absolute;
  z-index: 1;
  display: block;
  width: 100px;
  height: 100px;
  border: 30px solid var(--color-primary-light);
  border-radius: 100%;
}
.fancy-panel .square {
  left: 5%;
  bottom: -70px;
  position: absolute;
  z-index: 1;
  display: block;
  width: 100px;
  height: 100px;
  background: var(--color-accent-light);
  border-radius: var(--space);
  transform: rotate(30deg);
}
.fancy-panel .x-3 {
  transform: scale(0.3);
}
.fancy-panel .x-5 {
  transform: scale(0.5);
}
.fancy-panel .x-8 {
  transform: scale(0.8);
}
.fancy-panel .x1-5 {
  transform: scale(1.5);
}
.fancy-panel .x2 {
  transform: scale(2);
}
.fancy-panel .x3 {
  transform: scale(3);
}
.fancy-panel {
  background: var(--color-primary);
  color: #fff;
}
.fancy-panel .assessments, .fancy-panel .overall {
  z-index: 2;
}
.fancy-panel h1, .fancy-panel h2, .fancy-panel h3, .fancy-panel h4 {
  color: #fff;
}
.fancy-panel--has-undraw {
  min-height: 300px;
  overflow: visible;
}
.fancy-panel--has-undraw .undraw {
  max-width: 60%;
}
.fancy-panel--has-undraw--bottom-right .undraw {
  right: -10px;
  bottom: -40px;
  position: absolute;
}
.fancy-panel--has-undraw p {
  max-width: 60%;
}
.fancy-panel--accent-lighter {
  background: var(--color-accent-lighter);
  color: var(--color-text);
}
.fancy-panel--accent-lighter h1, .fancy-panel--accent-lighter h2, .fancy-panel--accent-lighter h3, .fancy-panel--accent-lighter h4 {
  color: var(--color-accent);
}
.fancy-panel--gray {
  background: var(--color-gray-a-10);
  color: var(--color-text);
}
.fancy-panel--gray h1, .fancy-panel--gray h2, .fancy-panel--gray h3, .fancy-panel--gray h4 {
  color: var(--color-primary);
}
.fancy-panel--outline-gray {
  border: 1px solid var(--color-gray-a-10);
  color: var(--color-text);
  background: #fff;
}
.fancy-panel--outline-gray h1, .fancy-panel--outline-gray h2, .fancy-panel--outline-gray h3, .fancy-panel--outline-gray h4 {
  color: var(--color-primary);
}
.signature-panel {
  padding: 0;
  width: 900px;
  position: relative;
  border: 1px solid var(--color-gray-a-20);
  color: var(--color-text);
  box-shadow: none;
  background: #fff;
}
.signature-panel.editing {
  border: 1px solid var(--color-primary);
  box-shadow: 0 0 0px 3px var(--color-primary-a-50);
}
.snapshot {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.snapshot .overall {
  text-align: right;
  margin-left: auto;
}
.snapshot .overall header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 2;
}
.snapshot .overall header input {
  margin-left: 12px;
}
.snapshot .overall label {
  font-size: 1rem;
  color: var(--color-primary-lighter);
}
.snapshot .overall .number,
.snapshot .overall .grade-percentage {
  position: relative;
  font-size: 7rem;
  line-height: 6rem;
  font-weight: bold;
  color: #fff;
  z-index: 1;
}
.snapshot .overall .grade-percentage {
  padding-right: 2.4rem;
}
.snapshot .overall .grade-percentage:after {
  font-size: 3rem;
  color: var(--color-primary-lighter);
  transform: translateY(-20%);
  position: absolute;
}
.snapshot .data {
  width: 100%;
  display: flex;
  z-index: 1;
}
.snapshot .data .stat {
  margin-right: 2rem;
}
.snapshot .assessments {
  width: 60%;
}
.snapshot .stats {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.snapshot .stat .number {
  font-size: 3rem;
}
.snapshot .stat label {
  color: var(--color-primary-lighter);
}
.bg--ungraded {
  background: var(--empty-gradient);
}
.ungraded-circle {
  border-radius: 30px;
  margin: auto;
  width: 30px;
  height: 30px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--empty-gradient);
}
.btn--busy,
.busy-spinner {
  position: relative;
}
.btn--busy:before, .btn--busy:after,
.busy-spinner:before,
.busy-spinner:after {
  display: block;
  content: " ";
  border-radius: 50%;
  width: 20px;
  height: 20px;
  position: absolute;
  margin-top: -11px;
  margin-left: -11px;
  top: 50%;
  left: 50%;
}
.btn--busy:before,
.busy-spinner:before {
  font-size: 10px;
  text-indent: -9999em;
  border-top: 2px solid rgba(255, 255, 255, 0.2);
  border-right: 2px solid rgba(255, 255, 255, 0.2);
  border-bottom: 2px solid rgba(255, 255, 255, 0.2);
  border-left: 2px solid #ffffff;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 0.5s infinite linear;
  animation: load8 0.5s infinite linear;
}
@-webkit-keyframes load8 {
0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}
100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
}
}
@keyframes load8 {
0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}
100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
}
}
.busy-spinner {
  display: block;
  width: 42px;
  height: 42px;
}
.busy-spinner--primary:before {
  border-top-color: var(--color-primary);
  border-right-color: var(--color-primary);
  border-bottom-color: var(--color-primary);
}
.busy-spinner--accent:before {
  border-top-color: var(--color-accent);
  border-right-color: var(--color-accent);
  border-bottom-color: var(--color-accent);
}
.busy-spinner--gray:before {
  border-top-color: var(--color-gray);
  border-right-color: var(--color-gray);
  border-bottom-color: var(--color-gray);
}
.skeleton {
  display: none;
}
[aria-busy=true] .skeleton,
[aria-busy=true] .form-input {
  background: #eceef3;
  color: #eceef3;
  animation-name: animate-skeleton;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  background: -webkit-gradient(linear, left top, right top, color-stop(8%, rgba(0, 0, 0, 0.05)), color-stop(18%, rgba(255, 255, 255, 0.15)), color-stop(33%, rgba(0, 0, 0, 0.05)));
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.05) 8%, rgba(255, 255, 255, 0.15) 18%, rgba(0, 0, 0, 0.05) 33%);
  background: linear-gradient(to right, rgba(0, 0, 0, 0.05) 8%, rgba(255, 255, 255, 0.15) 18%, rgba(0, 0, 0, 0.05) 33%);
  -webkit-background-size: 1000px 104px;
}
[aria-busy=true] .btn {
  position: relative;
  opacity: 0.4;
}
[aria-busy=true] .btn:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #eceef3;
  color: #eceef3;
  animation-name: animate-skeleton;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  background: -webkit-gradient(linear, left top, right top, color-stop(8%, rgba(0, 0, 0, 0.05)), color-stop(18%, rgba(255, 255, 255, 0.15)), color-stop(33%, rgba(0, 0, 0, 0.05)));
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.05) 8%, rgba(255, 255, 255, 0.15) 18%, rgba(0, 0, 0, 0.05) 33%);
  background: linear-gradient(to right, rgba(0, 0, 0, 0.05) 8%, rgba(255, 255, 255, 0.15) 18%, rgba(0, 0, 0, 0.05) 33%);
  -webkit-background-size: 1000px 104px;
}
[aria-busy=true] div.skeleton,
[aria-busy=true] span.skeleton {
  display: inline-block;
  min-height: 1em;
  border-radius: 4px;
  width: 100%;
}
[aria-busy=true] div.skeleton.w-20,
[aria-busy=true] span.skeleton.w-20 {
  width: 20%;
}
[aria-busy=true] div.skeleton.w-40,
[aria-busy=true] span.skeleton.w-40 {
  width: 40%;
}
[aria-busy=true] div.skeleton.w-60,
[aria-busy=true] span.skeleton.w-60 {
  width: 60%;
}
[aria-busy=true] div.skeleton.w-80,
[aria-busy=true] span.skeleton.w-80 {
  width: 80%;
}
[aria-busy=true] div.skeleton {
  display: block;
}
.table tr.loading {
  display: none;
  width: 100%;
}
[aria-busy=true] .table tr.loading,
.table[aria-busy=true] tr.loading {
  display: table-row;
}
@keyframes animate-skeleton {
0% {
    background-position: -500px 0;
}
100% {
    background-position: 500px 0;
}
}
.btn--block {
  width: 100%;
}
.btn--primary .icon {
  margin-left: 10px;
  width: 18px;
  height: 18px;
}
.btn--primary .icon .fill {
  fill: #fff;
}
.btn--primary .icon .stroke {
  stroke: #fff;
}
.btn--danger {
  color: #fff;
  background-color: var(--color-danger);
}
.dropdown button.btn.btn--icon,
.btn.btn--icon,
.btn--icon {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: transparent;
  border-radius: 100%;
}
.dropdown button.btn.btn--icon[disabled],
.btn.btn--icon[disabled],
.btn--icon[disabled] {
  opacity: 0.6;
  cursor: not-allowed;
}
.dropdown button.btn.btn--icon svg,
.btn.btn--icon svg,
.btn--icon svg {
  width: 18px;
  height: 18px;
}
.dropdown button.btn.btn--icon svg .fill,
.btn.btn--icon svg .fill,
.btn--icon svg .fill {
  fill: var(--color-gray-light);
}
.dropdown button.btn.btn--icon svg .stroke,
.btn.btn--icon svg .stroke,
.btn--icon svg .stroke {
  stroke: var(--color-gray-light);
}
.dropdown button.btn.btn--icon--primary,
.btn.btn--icon--primary,
.btn--icon--primary {
  background: #fff;
}
.dropdown button.btn.btn--icon--primary svg .fill,
.btn.btn--icon--primary svg .fill,
.btn--icon--primary svg .fill {
  fill: var(--color-primary);
}
.dropdown button.btn.btn--icon--primary svg .stroke,
.btn.btn--icon--primary svg .stroke,
.btn--icon--primary svg .stroke {
  stroke: var(--color-primary);
}
.dropdown button.btn.btn--icon--accent,
.btn.btn--icon--accent,
.btn--icon--accent {
  border: 2px solid var(--color-primary);
  background: #fff;
}
.dropdown button.btn.btn--icon--accent svg .fill,
.btn.btn--icon--accent svg .fill,
.btn--icon--accent svg .fill {
  fill: var(--color-primary);
}
.dropdown button.btn.btn--icon--accent svg .stroke,
.btn.btn--icon--accent svg .stroke,
.btn--icon--accent svg .stroke {
  stroke: var(--color-primary);
}
.dropdown button.btn.btn--icon:hover, .dropdown button.btn.btn--icon:active, .dropdown button.btn.btn--icon.btn--selected, .dropdown button.btn.btn--icon.btn--active,
.btn.btn--icon:hover,
.btn.btn--icon:active,
.btn.btn--icon.btn--selected,
.btn.btn--icon.btn--active,
.btn--icon:hover,
.btn--icon:active,
.btn--icon.btn--selected,
.btn--icon.btn--active {
  box-shadow: none;
  background: var(--color-primary-a-10);
}
.dropdown button.btn.btn--icon:hover svg .fill, .dropdown button.btn.btn--icon:active svg .fill, .dropdown button.btn.btn--icon.btn--selected svg .fill, .dropdown button.btn.btn--icon.btn--active svg .fill,
.btn.btn--icon:hover svg .fill,
.btn.btn--icon:active svg .fill,
.btn.btn--icon.btn--selected svg .fill,
.btn.btn--icon.btn--active svg .fill,
.btn--icon:hover svg .fill,
.btn--icon:active svg .fill,
.btn--icon.btn--selected svg .fill,
.btn--icon.btn--active svg .fill {
  fill: var(--color-primary);
}
.dropdown button.btn.btn--icon:hover svg .stroke, .dropdown button.btn.btn--icon:active svg .stroke, .dropdown button.btn.btn--icon.btn--selected svg .stroke, .dropdown button.btn.btn--icon.btn--active svg .stroke,
.btn.btn--icon:hover svg .stroke,
.btn.btn--icon:active svg .stroke,
.btn.btn--icon.btn--selected svg .stroke,
.btn.btn--icon.btn--active svg .stroke,
.btn--icon:hover svg .stroke,
.btn--icon:active svg .stroke,
.btn--icon.btn--selected svg .stroke,
.btn--icon.btn--active svg .stroke {
  stroke: var(--color-primary);
}
.dropdown button.btn--input .icon {
  transition: ease all 400ms;
}
.dropdown.dropdown--visible button.btn--input .icon {
  transform: rotate(180deg);
}
.dropdown button.btn--input,
.btn--input {
  padding: 0.6rem 1rem;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 1em;
  line-height: 1em;
  background: #fff;
  font-family: var(--font-family-sans-serif);
  color: var(--color-text);
  border-radius: var(--input-radius);
  border: var(--input-border);
  display: inline-flex;
  align-items: center;
  height: 2.7rem;
  font-weight: 400;
  justify-content: space-between;
}
.dropdown button.btn--input.btn--active,
.btn--input.btn--active {
  background: var(--color-primary);
  border-color: var(--color-primary-dark);
  color: #fff;
}
.dropdown button.btn--input.btn--active .icon .fill,
.btn--input.btn--active .icon .fill {
  fill: rgba(255, 255, 255, 0.6);
}
.dropdown button.btn--input.btn--active--hover, .dropdown button.btn--input.btn--active:hover,
.btn--input.btn--active--hover,
.btn--input.btn--active:hover {
  color: #fff;
}
.dropdown button.btn--input--hover, .dropdown button.btn--input:hover,
.btn--input--hover,
.btn--input:hover {
  color: var(--color-text);
  border: var(--input-border-hover);
  box-shadow: var(--input-shadow-hover);
}
.dropdown button.btn--input--focus, .dropdown button.btn--input:focus,
.btn--input--focus,
.btn--input:focus {
  outline: 0 none;
  border: var(--input-border-active);
  box-shadow: var(--input-shadow-active);
}
.btn--toggle .icon--arrow-down {
  transform: rotate(-90deg);
}
.btn--toggle.toggled .icon--arrow-down {
  transform: rotate(0deg);
}
.btn--toggle.toggled {
  box-shadow: none;
  background: var(--color-primary-a-10);
  border-radius: 100%;
}
.btn--toggle.toggled svg .fill {
  fill: var(--color-primary);
}
.btn--toggle.toggled svg .stroke {
  stroke: var(--color-primary);
}
.btn--light {
  box-shadow: none;
  background: var(--color-primary-a-10);
  color: var(--color-primary);
}
.btn--light svg .fill {
  fill: var(--color-primary);
}
.btn--light svg .stroke {
  stroke: var(--color-primary);
}
.btn--light:hover {
  box-shadow: none;
  color: #fff;
  background: var(--color-primary);
}
.btn--light:focus {
  box-shadow: 0 0 0 3px var(--color-primary-a-60);
}
.btn--light:active, .btn--light.btn--selected, .btn--light.btn--active {
  box-shadow: none;
  box-shadow: 0 0 0 3px var(--color-primary);
}
.btn--block {
  display: block;
}
.action-bar,
.list-options {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: right;
}
.action-bar .group,
.list-options .group {
  display: flex;
  align-items: center;
}
.action-bar .form-input, .action-bar .btn--icon, .action-bar .dropdown, .action-bar .view-swap,
.list-options .form-input,
.list-options .btn--icon,
.list-options .dropdown,
.list-options .view-swap {
  margin: 0 0.5rem;
}
.action-bar .dropdown,
.list-options .dropdown {
  margin-right: 0;
}
.action-bar .dropdown .dropdown-list,
.list-options .dropdown .dropdown-list {
  right: 0 !important;
}
.action-bar .dropdown .btn,
.list-options .dropdown .btn {
  text-align: right;
  justify-content: flex-end;
  color: var(--color-gray);
  line-height: 1rem;
}
.action-bar .dropdown .btn em,
.list-options .dropdown .btn em {
  font-weight: bold;
  font-style: normal;
}
.action-bar svg,
.list-options svg {
  width: 18px;
  height: 18px;
}
.action-bar svg .fill,
.list-options svg .fill {
  fill: var(--color-gray-a-60);
}
.action-bar .view-swap,
.list-options .view-swap {
  display: flex;
  align-items: center;
  border-left: 1px solid var(--color-gray-a-10);
}
.action-bar .view-swap .btn--icon svg,
.list-options .view-swap .btn--icon svg {
  width: 18px;
  height: 18px;
}
.icon--fill-primary .fill {
  fill: var(--color-primary);
}
.icon--fill-accent .fill {
  fill: var(--color-accent);
}
svg.icon .fill {
  fill: var(--color-gray);
}
svg.icon .stroke {
  stroke: var(--color-gray);
}
.dropdown .btn {
  box-shadow: none;
  display: inline-flex !important;
}
.dropdown .btn .icon--arrow-down {
  width: 14px;
  height: 14px;
  margin-left: 0.4rem;
}
.dropdown .btn .icon--arrow-down .fill {
  fill: var(--color-gray);
}
.dropdown.dropdown--visible .btn,
.dropdown .btn:hover {
  color: var(--color-primary);
  background: var(--color-primary-a-10);
}
.dropdown.dropdown--visible .btn .icon--arrow-down .fill,
.dropdown .btn:hover .icon--arrow-down .fill {
  fill: var(--color-primary);
}
.dropdown .dropdown-list .dropdown-item.active {
  font-weight: bold;
  color: var(--color-primary);
  background: var(--color-primary-a-10);
}
.select-dropdown .icon--arrow-down {
  width: 14px;
  height: 14px;
  margin-left: 0.4rem;
}
.select-dropdown .icon--arrow-down .fill {
  fill: var(--color-gray-lighter);
}
.select-dropdown:hover .icon--arrow-down .fill {
  fill: var(--color-primary);
}
.elementary-reporting[aria-busy=true] {
  opacity: 0.7;
}
.elementary-reporting .page-settings,
.elementary-reporting .page-name {
  width: 25%;
}
.elementary-reporting .page-settings {
  justify-content: flex-end;
}
.elementary-reporting .status-summary {
  width: 50%;
  text-align: center;
  position: relative;
}
.elementary-reporting .status-summary .busy-spinner {
  position: relative;
}
.elementary-reporting .status-summary .status-circle {
  margin: 0 auto;
}
.elementary-reporting .status-summary .progress-circle {
  margin: 0 auto;
}
.elementary-reporting .status-summary .score-card {
  display: inline-block;
}
.elementary-reporting .status-summary .score-card .total {
  opacity: 1;
}
.elementary-reporting .busy-spinner {
  margin: 0 auto;
}
.elementary-reporting .class-details {
  margin: 1rem 0;
}
.elementary-reporting .panel--next-steps h6 {
  color: var(--color-gray);
  font-size: 0.9rem;
}
.elementary-reporting .learning-skills {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1rem;
}
.elementary-reporting .learning-skills .learning-skill {
  flex: 1 1 50%;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.elementary-reporting .learning-skills .learning-skill h6 {
  margin-bottom: 0;
  border-radius: 0 6px 0 6px;
  color: var(--color-primary-lightest);
}
.elementary-reporting .learning-skills .learning-skill .dropdown .btn:hover {
  color: var(--color-accent);
  background: var(--color-accent-lighter);
}
.elementary-reporting .learning-skills .learning-skill .dropdown .btn:hover .fill {
  fill: var(--color-accent);
}
.elementary-reporting .learning-skills .learning-skill .dropdown .btn {
  color: #fff;
  background: var(--color-primary-a-80);
}
.elementary-reporting .learning-skills .learning-skill .dropdown .btn .fill {
  fill: var(--color-primary);
}
.elementary-reporting .table {
  margin-bottom: 200px;
}
.elementary-reporting .table th.rubric-comment-entry, .elementary-reporting .table td.rubric-comment-entry {
  border-left: 1px solid #d8d8d8;
  vertical-align: middle;
}
.elementary-reporting .table td.rubric-comment-entry {
  padding: 0;
  vertical-align: top;
}
.elementary-reporting .table td {
  vertical-align: top;
}
.elementary-reporting .table td.rubric-comment-entry, .elementary-reporting .table th.rubric-comment-entry {
  width: 65%;
}
.elementary-reporting .table td.subject, .elementary-reporting .table th.subject {
  width: 300px;
}
.elementary-reporting .table td.over-all, .elementary-reporting .table th.over-all {
  border-left: 1px solid #d8d8d8;
  border-right: 1px solid var(--heading-row-border-color);
  text-align: center;
  vertical-align: middle;
  width: 10%;
}
.elementary-reporting .table .subject {
  border-top: 0 none;
}
.elementary-reporting .table .course-heading-td {
  padding: 0;
  border-bottom: 0 none;
}
.elementary-reporting .table .course-heading-td .course-heading {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.elementary-reporting .table .course-heading-td .course-heading .course-name {
  padding: 0.7rem 1rem;
  color: var(--color-accent);
  background: var(--color-accent-a-10);
  display: inline-block;
  font-weight: 500;
  border-radius: 0 0 0 6px;
}
.elementary-reporting .table .course-heading-td .course-heading .inline-checks {
  display: inline-flex;
  justify-content: left;
  flex-wrap: wrap;
  padding: 0.8em;
}
.elementary-reporting .inline-checks > label {
  display: inline-flex;
  align-items: center;
  margin-right: 6px;
}
.elementary-reporting .inline-checks > label input {
  margin-right: 6px;
}
.alert {
  padding: 1rem;
  background: red;
}
.alert p {
  margin-bottom: 0;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.student-grade-numba {
  text-align: center;
}
.student-grade-numba .grade {
  width: 50px;
  height: 50px;
  border-radius: 50px;
  line-height: 50px;
  display: flex;
  align-self: center;
  justify-content: center;
  font-size: 1.6rem;
  font-weight: bold;
  color: var(--color-accent);
  background: var(--color-accent-a-10);
  font-family: var(--font-family-sans-serif);
}
.row {
  margin-right: -1em;
  margin-left: -1em;
}
.ml-auto {
  margin-left: auto;
}
a.student-name {
  color: var(--color-text);
  font-size: 1.05rem;
}
a.student-name:hover {
  color: var(--color-primary);
}
input:focus {
  outline: none;
}
.categorized-assessment-table {
  margin-bottom: 40px;
}
.categorized-assessment-table th .dropdown {
  margin-left: -10px;
}
.categorized-assessment-table tr.graded {
  background: #fff;
}
.categorized-assessment-table th.stat,
.categorized-assessment-table td.stat {
  text-align: center;
}
.grade-percentage {
  color: var(--color-primary);
}
.grade-percentage:after {
  content: "%";
  color: var(--color-primary-light);
}
.student-name {
  display: inline-block;
  margin: 0;
  font-weight: 500;
}
.student-name em {
  font-style: normal;
  font-weight: 600;
}
.select-down {
  padding: 0.6rem 0.6rem 0.6rem 1rem;
  position: relative;
}
.select-down:after {
  transition: ease all 400ms;
  margin-left: auto;
  padding-left: 0.8rem;
  width: 18px;
  height: 18px;
  content: " ";
  display: block;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath opacity='.3' d='M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z'/%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3C/svg%3E") no-repeat;
}
.select-down .selection a {
  color: var(--color-text);
}
.select-down .options {
  display: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 1em;
  line-height: 1em;
  background: #fff;
  font-family: var(--font-family-sans-serif);
  color: var(--color-text);
  border-radius: var(--input-radius);
  border: var(--input-border);
  top: 100%;
  left: 0;
  margin-top: 10px;
  padding: 0.6rem 0;
}
.select-down .options > a {
  padding: 0.6rem 1rem;
  color: var(--color-text);
}
.select-down .options > a:hover {
  background: var(--color-grey-a-10);
}
.select-down--open:after {
  transform: rotate(180deg);
}
.select-down--open .options {
  display: block;
  position: absolute;
  display: flex;
  flex-direction: column;
}
.form-group {
  display: flex;
}
.form-group .form-group-info {
  flex: 0 0 30%;
  min-width: 300px;
  max-width: 600px;
  padding-right: 3rem;
}
.form-group .form-group-fields {
  flex: 1 1 auto;
}
.vdp-datepicker__calendar {
  box-shadow: var(--btn-shadow-hover);
}
body[data-theme=achieved] .modal-backdrop .modal {
  max-width: 900px;
}
body[data-theme=achieved] .modal-backdrop .modal .close {
  top: 0;
  right: 0;
}
body[data-theme=achieved] .modal-backdrop .modal > header {
  padding: 2rem 3rem;
}
body[data-theme=achieved] .modal-backdrop .modal > .content {
  padding: 3rem;
}
body[data-theme=achieved] .modal-backdrop .modal > header + .content {
  padding-top: 0;
}
body[data-theme=achieved] .modal-backdrop.modal--center.show .modal {
  position: fixed;
  top: 50vh !important;
  transform: scale(1) translateY(-50%);
}
body[data-theme=achieved] .modal-backdrop.confirm-modal .modal {
  position: fixed;
  top: 50vh !important;
  transform: scale(1) translateY(-50%);
  max-width: 400px;
}
body[data-theme=achieved] .modal-backdrop.confirm-modal .modal p {
  text-align: center;
  font-size: 1.1rem;
  margin-bottom: 0;
}
body[data-theme=achieved] .modal-backdrop.confirm-modal .modal .form-action {
  display: flex;
  flex-direction: column;
}
body[data-theme=achieved] .modal-backdrop.confirm-modal .modal .form-action .btn {
  margin-top: 1rem;
  justify-content: center;
}
.pdf-preview {
  border-top: 1px dashed var(--color-gray-a-20);
  padding: 1rem 2rem;
}
.alert {
  display: flex;
  align-items: center;
  padding: var(--space);
  border-radius: var(--space);
}
.alert.alert--warning {
  background: rgba(255, 166, 0, 0.1);
  color: #eb9800;
}
.alert.alert--warning .fill {
  fill: rgba(255, 166, 0, 0.9);
}
.sub-nav {
  padding-top: var(--space-l);
}
.sub-nav ul.nav-items {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
}
.sub-nav ul.nav-items .nav-item a {
  padding: 1.2rem;
  font-weight: normal;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 0.8rem;
  border-radius: 20px;
}
.sub-nav ul.nav-items .nav-item a .icon {
  margin-bottom: 0.8rem;
}
.sub-nav ul.nav-items .nav-item a .icon .fill {
  fill: rgba(126, 126, 126, 0.4);
}
.sub-nav ul.nav-items .nav-item a:hover {
  background: var(--color-gray-a-10);
}
.sub-nav ul.nav-items .nav-item a.active {
  background: var(--color-primary);
  font-weight: bold;
  color: #fff;
}
.sub-nav ul.nav-items .nav-item a.active .icon .fill {
  fill: #fff;
}
.busy-spinner--app {
  position: fixed;
  z-index: 999;
}
.page--contained {
  max-width: 1000px;
  margin: 0 auto;
  padding: 3rem;
}
.page--centered {
  text-align: center;
}:root {
  --shadow-up: 0 6px 9px #0000001f, 0 2px 5px #0000000f;
}
.dropdown {
  position: relative;
  display: inline-block;
}
.dropdown.right .dropdown-list {
  right: 0;
}
.dropdown .btn {
  box-shadow: none;
  display: inline-block;
}
.dropdown .btn:focus {
  outline: 0 none;
}
.dropdown .dropdown-list {
  min-width: 150px;
  max-width: 300px;
  text-align: left;
  position: fixed !important;
  background: #fff;
  box-shadow: var(--shadow-up);
  border-radius: 4px;
  z-index: 800;
  top: 100%;
  display: none;
  overflow: auto;
}
.dropdown .dropdown-list .dropdown-header {
  padding: 8px 20px;
  color: var(--color-gray-light);
  font-size: 0.8rem;
}
.dropdown .dropdown-list .dropdown-item {
  display: flex !important;
  align-items: flex-end;
  padding: 8px 20px;
  color: var(--color-text);
  border-radius: 0;
}
.dropdown .dropdown-list .dropdown-item.border-top {
  border-top: 1px solid var(--color-gray-a-10);
}
.dropdown .dropdown-list .dropdown-item:hover {
  color: #fff;
  background-color: var(--color-primary);
}
.dropdown .dropdown-list .dropdown-item:focus {
  box-shadow: var(--box-shadow-input-active);
}.confirm-modal.modal-backdrop .modal {
  max-width: 600px;
  top: 50% !important;
  transform: translateY(-50%) scale(1) !important;
}.select-dropdown {
  position: relative;
  cursor: pointer;
}
.select-dropdown .selection {
  display: flex;
  align-items: center;
  min-height: 2.8rem;
}
.select-dropdown .selection .icon--arrow-down {
  margin-left: auto;
}
.select-dropdown .selection .selections .selected-item {
  display: inline-block;
  margin-left: 0.4rem;
}
.select-dropdown .selection .selections .selected-item:after {
  content: ", ";
}
.select-dropdown .selection .selections .selected-item:last-child:after {
  content: "";
}
.select-dropdown .options {
  overflow: hidden;
  position: absolute;
  background: #fff;
  width: 100%;
  min-width: 300px;
  margin-top: 0.3rem;
  z-index: 9;
  background: #fff;
  font-family: var(--font-family-sans-serif);
  color: var(--color-text);
  box-shadow: var(--shadow-up);
  border-radius: 4px;
  border: var(--input-border);
  border-radius: var(--input-radius) !important;
  margin-top: 10px;
}
.select-dropdown .options .select-dropdown-option {
  display: flex;
  align-items: center;
  padding: 0.6rem 1rem;
  transition: padding ease 200ms;
}
.select-dropdown .options .select-dropdown-option.clear-all {
  border-top: 1px solid var(--color-gray-a-10);
}
.select-dropdown .options .select-dropdown-option.clear-all a {
  color: var(--color-primary);
}
.select-dropdown .options .select-dropdown-option input {
  margin-right: 0.6rem;
  flex: 0 0 auto;
}
.select-dropdown .options .select-dropdown-option:hover {
  background-color: var(--color-primary-a-20);
}
.select-dropdown .options .select-dropdown-option--selected, .select-dropdown .options .select-dropdown-option:active {
  font-weight: bold;
  padding-left: 2.6rem;
  color: var(--color-primary);
  background: url("data:image/svg+xml,%3Csvg enable-background='new 0 0 47 39' height='39px' id='Layer_1' version='1.1' viewBox='0 0 47 39' width='47px' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpolygon fill='%23359BA7' points='37.143,0.444 35.162,2.423 26.252,11.333 17.343,20.242 16.636,20.949 14.879,19.192 9.787,14.101 8.857,13.171 -0.335,22.363 0.594,23.293 5.687,28.385 7.444,30.143 7.443,30.143 16.636,39.334 25.828,30.143 25.828,30.143 26.535,29.436 35.445,20.525 44.354,11.616 46.335,9.636 '/%3E%3C/svg%3E") no-repeat 14px center/17px;
  background-color: var(--color-primary-a-10);
}
.select-dropdown .options .select-dropdown-option--selected:hover, .select-dropdown .options .select-dropdown-option:active:hover {
  background-color: var(--color-primary-a-20);
}
.select-dropdown .footer {
  padding: 0.6rem 1rem;
}.school-selector {
  margin-right: 1rem;
}
.school-selector .school {
  display: flex;
  align-items: center;
}
.school-selector .school img {
  width: 50px;
}
.school-selector.large-school {
  display: flex;
  flex-wrap: wrap;
}
.school-selector.large-school .year-selection .icon--arrow-down, .school-selector.large-school .term-selection .icon--arrow-down {
  display: none;
}
.school-selector.large-school .year-selection:hover .icon--arrow-down, .school-selector.large-school .year-selection.dropdown--visible .icon--arrow-down, .school-selector.large-school .term-selection:hover .icon--arrow-down, .school-selector.large-school .term-selection.dropdown--visible .icon--arrow-down {
  display: block;
}
.school-selector.large-school .term-selection {
  margin-left: -10px;
}
.school-selector.large-school .school-selection {
  flex: 1 1 100%;
  order: 2;
  margin-top: -16px;
  opacity: 1;
}
.school-selector.large-school .school-selection .btn {
  padding: 8px 12px;
  border-radius: 46px;
  font-size: 1.9rem;
  font-weight: 600;
}
.school-selector .btn .current-selection .year {
  margin-left: 12px;
  font-size: 0.9rem;
}
.school-selector .btn .current-selection .year, .school-selector .btn .current-selection .term, .school-selector .btn .current-selection .school {
  color: var(--color-light);
  text-align: right;
  font-size: 1.04rem;
}
.school-selector .dropdown:hover .current-selection .year, .school-selector .dropdown:hover .current-selection .term, .school-selector .dropdown:hover .current-selection .school, .school-selector .dropdown .dropdown--visible .current-selection .year, .school-selector .dropdown .dropdown--visible .current-selection .term, .school-selector .dropdown .dropdown--visible .current-selection .school {
  color: var(--color-primary);
}
.school-selector .dropdown .btn {
  margin: 0;
  background: transparent;
}
.school-selector .dropdown .btn:hover {
  background: var(--color-primary-a-10);
}
.school-selector .dropdown .dropdown-list {
  max-height: none !important;
  width: 600px !important;
  max-width: none;
  overflow: hidden;
}
.school-selector .dropdown .dropdown-list .school-scroll-area {
  max-height: 60vh;
  margin: 0 0.4rem;
}
.school-selector .dropdown .dropdown-list .dropdown-item {
  cursor: pointer;
  border-radius: var(--input-radius);
}
.school-selector .dropdown .dropdown-list .dropdown-item--search {
  padding: 0;
  margin: 0 0.4rem 0.4rem 0.4rem;
}
.school-selector .dropdown .dropdown-list .dropdown-item.dropdown-item--search:hover {
  background: #fff;
}
.school-selector .dropdown .dropdown-list .dropdown-item.selected {
  background: var(--color-primary-a-20);
  color: var(--color-primary);
  font-weight: bold;
  border-radius: var(--input-radius);
}.tag-input {
  position: relative;
  padding: 0.8rem 1rem !important;
  height: auto !important;
}
.tag-input .tags-input {
  position: relative;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 1em;
  line-height: 1em;
  background: #fff;
  font-family: var(--font-family-sans-serif);
  color: var(--color-text);
  border-radius: var(--border-radius-input);
  border: var(--border-input);
  display: flex;
}
.tag-input .tags-input input {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 1em;
  line-height: 1em;
  background: #fff;
  font-family: var(--font-family-sans-serif);
  color: var(--color-text);
  border-radius: var(--border-radius-input);
  border: 0 none;
}
.tag-input .tags-input .tag-search {
  padding-left: 0.4rem;
  flex: 1 1 auto;
}
.tag-input .tags-input .tags-input-remove {
  font-style: normal;
  top: 4px;
  right: 6px;
  position: absolute;
  opacity: 0.7;
  cursor: pointer;
}
.tag-input .tags-input .tags-input-remove:hover {
  opacity: 1;
}
.tag-input .tags-input-badge-selected-default {
  padding: 0.3rem 1.3rem 0.3rem 0.8rem !important;
}
.tag-input .typeahead-badges {
  overflow: hidden;
  position: absolute;
  background: #fff;
  min-width: 300px;
  margin-top: 0.3rem;
  z-index: 9;
  left: -1px;
  right: -1px;
  background: #fff;
  font-family: var(--font-family-sans-serif);
  border-radius: 0 0 var(--input-radius) var(--input-radius);
  border: var(--input-border-active);
  border-top: 0 none;
}
.tag-input .typeahead-badges .tags-input-badge {
  display: flex;
  align-items: center;
  padding: 0.3rem 1rem;
}
.tag-input .typeahead-badges .tags-input-badge:hover {
  background: #f2f2f2;
}
.tag-input .typeahead-badges .tags-input-badge--selected, .tag-input .typeahead-badges .tags-input-badge:active {
  background: var(--color-primary);
  color: #fff;
}
.tag-input .typeahead-badges .tags-input-badge--selected:hover, .tag-input .typeahead-badges .tags-input-badge:active:hover {
  background: var(--color-primary);
}.update-check {
  position: fixed;
  bottom: 20px;
  left: 20px;
  z-index: 999;
  background: #fff;
  transform: scale(0.9) translateY(-20px);
  margin-bottom: 0;
  transition: all ease 400ms !important;
  opacity: 0;
  box-shadow: 0 0 1px var(--color-primary), 0 4px 12px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.update-check.show {
  transform: scale(1) translateY(0);
  opacity: 1;
  pointer-events: auto;
  user-select: auto;
}
.update-check:before, .update-check:after {
  z-index: 1;
  display: block;
  position: absolute;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.update-check .content {
  position: relative;
  z-index: 9;
}
.update-check:before {
  content: " ";
  right: -40px;
  bottom: -50px;
  width: 200px;
  height: 200px;
  background: var(--color-accent);
  border-radius: 40px;
  opacity: 0.2;
  transform: rotate(45deg);
}
.update-check:after {
  content: " ";
  left: -40px;
  top: -120px;
  width: 300px;
  height: 300px;
  border: 80px solid var(--color-primary-light);
  border-radius: 100%;
  opacity: 0.1;
}
#stat-chart {
	width: 100%;
}
.autocomplete {
  position: relative;
}
.autocomplete .form-input {
  padding: 0.8rem 1rem;
  display: flex;
  align-items: center;
}
.autocomplete .form-input:focus input, .autocomplete .form-input:hover input {
  box-shadow: none;
  border: 0 none;
}
.autocomplete .form-input input {
  display: block;
  border: 0 none;
  width: 100%;
}
.autocomplete .form-input input:focus, .autocomplete .form-input input:hover {
  box-shadow: none;
  border: 0 none;
}
.autocomplete-items {
  position: absolute;
  z-index: 99;
  background: #fff;
  padding: 0;
  margin: 0;
  border: 1px solid #eeeeee;
  max-height: 300px;
  overflow: auto;
  width: 100%;
  box-shadow: var(--shadow-up);
  border-radius: var(--border-radius);
}
.autocomplete-item {
  list-style: none;
  text-align: left;
  padding: 8px 20px;
  cursor: pointer;
}
.autocomplete-item.selected,
.autocomplete-item.is-active,
.autocomplete-item:hover {
  background-color: var(--color-primary);
  color: white;
}:root {
  --shadow-up: 0 6px 9px #0000001f, 0 2px 5px #0000000f;
}
.dropdown {
  position: relative;
  display: inline-block;
}
.dropdown.right .dropdown-list {
  right: 0;
}
.dropdown .btn {
  box-shadow: none;
  display: inline-block;
}
.dropdown .btn:focus {
  outline: 0 none;
}
.dropdown .dropdown-list {
  min-width: 150px;
  text-align: left;
  position: absolute;
  background: #fff;
  box-shadow: var(--shadow-up);
  border-radius: 4px;
  padding: 8px 0;
  z-index: 800;
  top: 100%;
  display: none;
}
.dropdown .dropdown-list .dropdown-item {
  display: flex !important;
  align-items: flex-end;
  padding: 8px 20px;
  color: var(--color-text);
  border-radius: 0;
}
.dropdown .dropdown-list .dropdown-item:hover {
  color: #fff;
  background-color: var(--color-primary);
}
.dropdown .dropdown-list .dropdown-item:focus {
  box-shadow: var(--box-shadow-input-active);
}.avatar {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--color-primary);
  position: relative;
}
.avatar.round {
  border-radius: 100%;
}
.avatar.round img {
  border-radius: 100%;
}
.avatar abbr {
  display: block;
  border-radius: 100%;
}
.avatar img {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: ease all 0.2s;
}
.avatar img.loaded {
  opacity: 1;
}.code-input {
  display: flex;
  align-items: center;
  margin-left: -4px;
  margin-right: -4px;
}
.code-input span {
  font-weight: bold;
  font-size: 1.5em;
  opacity: 0.2;
  display: block;
  padding: 16px 4px;
}
.code-input input {
  text-align: center;
  font-weight: bold;
  font-size: 1.5em;
  margin: 0 4px;
  padding: 16px 4px;
}
.code-input.dark span {
  color: #fff;
  opacity: 0.3;
}
.code-input.dark input {
  background: transparent;
  color: #fff;
  border: 1px solid #8a8a8a;
}
.code-input.dark input::placeholder {
  color: #8a8a8a;
}
.code-input.dark input:focus {
  border: 1px solid var(--color-primary);
}
.code-input.dark span {
  color: #fff;
  opacity: 0.3;
}
.code-input.dark input {
  background: transparent;
  color: #fff;
  border: 1px solid #8a8a8a;
}
.code-input.dark input::placeholder {
  color: #8a8a8a;
}
.code-input.dark input:focus {
  border: 1px solid var(--color-primary);
}.time-input {
  position: relative;
}
.time-input .suggestions {
  border: 1px solid #d4d4d4;
  max-height: 200px;
  overflow: auto;
  position: absolute;
  z-index: 99;
  width: 100%;
  background: #fff;
  padding: 0.5em 0;
  box-shadow: var(--shadow-up);
  border-radius: var(--border-radius);
}
.time-input .suggestions a {
  display: block;
  padding: 8px 20px;
  cursor: default;
  color: var(--color-dark);
}
.time-input .suggestions a.selected, .time-input .suggestions a:hover {
  color: #fff;
  background-color: var(--color-primary);
}.number-input {
  position: relative;
}
.number-input .form-input {
  text-align: center;
  z-index: 2;
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
}
.number-input .form-input::-webkit-outer-spin-button, .number-input .form-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.number-input .up, .number-input .down {
  border: 1px solid transparent;
  box-shadow: none;
  position: absolute;
  top: 0;
  bottom: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-size: 1em;
  background: transparent;
  color: var(--color-dark);
  padding: 0 8px;
  text-align: center;
  display: flex;
  justify-content: center;
}
.number-input .up:hover, .number-input .down:hover {
  z-index: 3;
  color: var(--color-primary);
  background: #fdfdfd;
}
.number-input .up:active, .number-input .up:focus, .number-input .down:active, .number-input .down:focus {
  z-index: 3;
  outline: none;
}
.number-input .down {
  left: 0;
}
.number-input .up {
  right: 0;
}.notifications {
  position: fixed;
  padding: 0;
  z-index: 999;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
}
.notifications .notification {
  margin-top: 12px;
  animation: splash 0.4s normal forwards ease-in-out;
  padding: 1.6rem 1.9rem;
  min-width: 300px;
  max-width: 300px;
  background: rgba(0, 0, 0, 0.9);
  color: #fff;
  box-shadow: 0px 2px 0px 1px rgba(0, 0, 0, 0.05), 0px 6px 6px 0px rgba(0, 0, 0, 0.05);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.notifications .notification .notification-actions {
  margin-right: 1.6rem;
}
.notifications .notification .notification-actions .action {
  float: right;
  color: #c9c946;
  font-weight: bold;
  margin-left: 6px;
}
.notifications .notification .notification-actions .action:hover {
  color: #c9c946;
}
.notifications .notification .close {
  padding: 1.6em;
  top: 0;
  right: 0;
  position: absolute;
}
.notifications .notification .close > svg {
  width: 15px;
  height: 15px;
}
.notifications .notification .close > svg path {
  fill: rgba(255, 255, 255, 0.7);
  transition: ease all 0.4s;
}
.notifications .notification .close:hover > svg path {
  fill: rgba(255, 255, 255, 0.9);
}
.notifications .notification .title {
  font-weight: bold;
  margin-bottom: 4px;
  font-size: 1.1em;
}
.notifications .notification-success {
  background: var(--color-success);
}
.notifications .notification-error {
  background: var(--color-error);
}
.notifications .notification-warning {
  background: var(--color-warning);
}
.notifications .notification.dismiss {
  opacity: 0;
  animation: out 0.4s normal forwards ease-in-out;
}
@keyframes splash {
from {
    opacity: 0;
    transform: scale(0.9, 0.9);
}
to {
    opacity: 1;
    transform: scale(1, 1);
}
}
@keyframes out {
from {
    opacity: 1;
    transform: scale(1, 1);
}
to {
    opacity: 0;
    transform: translateY(-5px);
}
}

.modal-backdrop {
  opacity: 0;
  position: fixed;
  overflow: auto;
  pointer-events: none;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: left;
  background: rgba(0, 0, 0, 0.7);
  transition: opacity 0.25s ease;
  z-index: 999;
}
.modal-backdrop .modal {
  transform: scale(0.9);
  transition: transform 0.25s ease;
  position: absolute;
  margin: auto;
  background: #fff;
  border-radius: 5px;
  box-shadow: var(--shadow-up);
  left: 20px;
  right: 20px;
  top: 20px;
  margin-bottom: 20px;
}
@media (--large-viewport) {
.modal-backdrop .modal {
    top: 8%;
    width: 50%;
    min-width: 800px;
    max-width: 100%;
    bottom: auto;
}
}
.modal-backdrop .modal .close {
  position: absolute;
  top: 1em;
  right: 1em;
  border: 0 none;
  background: transparent;
  padding: 16px;
}
.modal-backdrop .modal .close .stroke {
  stroke: rgba(0, 0, 0, 0.4);
}
.modal-backdrop .modal .close:hover {
  opacity: 1;
}
.modal-backdrop .modal .close:hover .stroke {
  stroke: var(--color-primary);
}
.modal-backdrop .modal > header {
  display: flex;
  align-items: center;
  padding: 2em 3em;
}
.modal-backdrop .modal > header .title {
  font-size: 1.2em;
}
.modal-backdrop .modal > .content {
  padding: 3em;
  min-height: 100px;
}
.modal-backdrop .modal > .content .actions {
  display: flex;
  justify-content: flex-end;
}
.modal-backdrop .modal > footer {
  padding: 2em 3em;
}
.modal-backdrop.show {
  opacity: 1;
  pointer-events: auto;
}
.modal-backdrop.show .modal {
  transform: scale(1);
}