html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

* {
  box-sizing: border-box; }

* html {
  font-size: 112.5%; }

html {
  font-size: 18px;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 300;
  font-size: 0.9375em;
  line-height: 1.2; }
  @media (min-width: 37.5em) {
    html {
      font-size: 1em;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    html {
      font-size: 1.125em;
      line-height: 1.33333; } }

body {
  color: #676568; }

div,
section,
header,
footer,
aside,
figure {
  box-sizing: border-box; }

h1 {
  font-size: 1.6rem;
  line-height: 1.125;
  margin: 0;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  color: #533168; }
  @media (min-width: 25em) {
    h1 {
      font-size: 1.875rem;
      line-height: 1.2; } }
  @media (min-width: 37.5em) {
    h1 {
      font-size: 2.25rem;
      line-height: 1.16667; } }
  @media (min-width: 62em) {
    h1 {
      font-size: 2.33333rem;
      line-height: 1.14286; } }
  @media (min-width: 75em) {
    h1 {
      font-size: 2.66667rem;
      line-height: 1.125; } }

h2 {
  font-size: 1.6rem;
  line-height: 1.25;
  margin-top: 2.66667rem;
  margin-bottom: 0;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 400;
  color: #533168; }
  @media (min-width: 37.5em) {
    h2 {
      font-size: 1.875rem;
      line-height: 1.2; } }
  @media (min-width: 62em) {
    h2 {
      font-size: 2rem;
      line-height: 1.16667; } }
  h2 a {
    color: #533168;
    text-decoration: none; }
    h2 a:hover {
      color: #321d3e; }

h3, .vocabulary-assessments .article__chart__caption,
.alphabet-assessments .article__chart__caption {
  font-size: 1.4rem;
  line-height: 1.28571;
  margin-top: 2.66667rem;
  margin-bottom: 0;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  color: #533168; }
  @media (min-width: 37.5em) {
    h3, .vocabulary-assessments .article__chart__caption,
    .alphabet-assessments .article__chart__caption {
      font-size: 1.5rem;
      line-height: 1.25; } }
  @media (min-width: 62em) {
    h3, .vocabulary-assessments .article__chart__caption,
    .alphabet-assessments .article__chart__caption {
      font-size: 1.66667rem;
      line-height: 1.2; } }

h4 {
  font-size: 1.4rem;
  line-height: 1.28571;
  margin-top: 2.66667rem;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  margin-bottom: 0;
  color: #444;
  font-weight: 700; }
  @media (min-width: 62em) {
    h4 {
      font-size: 1.33333rem;
      line-height: 1.25; } }

h5 {
  font-size: 1.4rem;
  line-height: 1.28571;
  margin-top: 2.66667rem;
  margin-bottom: 0;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 300;
  color: #444; }
  @media (min-width: 62em) {
    h5 {
      font-size: 1.33333rem;
      line-height: 1.25; } }
  h5:not([class]) {
    text-transform: uppercase; }

h6 {
  font-size: 1.2rem;
  line-height: 1.16667;
  margin-top: 2.66667rem;
  margin-bottom: 0;
  color: #444;
  text-transform: uppercase;
  font-style: normal; }
  @media (min-width: 62em) {
    h6 {
      font-size: 1.22222rem;
      line-height: 1.09091; } }

a {
  color: #00798F; }
  a:hover {
    color: #004e5c; }
  h1 > a,
  h2 > a,
  h3 > a,
  .vocabulary-assessments .article__chart__caption > a,
  .alphabet-assessments .article__chart__caption > a,
  h4 > a,
  h5 > a,
  h6 > a {
    text-decoration: none; }

strong,
b {
  font-weight: 700; }

p {
  margin: 0.83333rem 0; }
  h1 + p,
  h2 + p,
  h3 + p,
  .vocabulary-assessments .article__chart__caption + p,
  .alphabet-assessments .article__chart__caption + p,
  h4 + p,
  h5 + p,
  h6 + p {
    margin-top: 1.33333rem; }

blockquote {
  font-style: italic;
  margin: 0.83333rem 0;
  padding-left: 30px; }

img {
  max-width: 100%;
  height: auto; }

figure {
  margin: 0; }
  figure img {
    display: block; }

li {
  margin-top: 0.66667rem; }

ul:not([class]) {
  margin-top: 1.33333rem;
  margin-bottom: 0;
  list-style: none;
  padding-left: 0; }
  ul:not([class]):first-child {
    margin-top: 0; }
  ul:not([class]) > li {
    padding-left: 30px;
    list-style: none;
    position: relative; }
    ul:not([class]) > li:before {
      color: #444;
      display: block;
      position: absolute;
      left: 0; }
  ul:not([class]) > li:before {
    content: "\2022";
    font-weight: 700; }
  ul:not([class]) ul {
    margin-top: 0.33333rem; }

ol:not([class]) {
  margin-top: 1.33333rem;
  margin-bottom: 0;
  list-style: none;
  padding-left: 0;
  counter-reset: number; }
  ol:not([class]):first-child {
    margin-top: 0; }
  ol:not([class]) > li {
    padding-left: 30px;
    list-style: none;
    position: relative; }
    ol:not([class]) > li:before {
      color: #444;
      display: block;
      position: absolute;
      left: 0; }
  ol:not([class]) > li:before {
    font-weight: 700;
    counter-increment: number;
    content: counters(number, ".") "."; }
  ol:not([class]) ol {
    margin-top: 0.33333rem;
    padding-left: 30px; }
    ol:not([class]) ol > li {
      padding-left: 0;
      text-indent: -30px; }
      ol:not([class]) ol > li:before {
        display: inline;
        position: static;
        margin-right: .5em; }

dl {
  margin-bottom: 1rem; }

dt {
  font-weight: 700; }

dd {
  margin-left: 30px; }

button {
  text-transform: uppercase; }

input {
  height: 2.33333rem; }

input,
textarea {
  font-size: 0.86667rem;
  line-height: 1.15385;
  border: 1px solid #e7e6e7;
  padding: 0.33333rem 0.83333rem;
  max-width: 100%;
  -webkit-appearance: none; }
  @media (min-width: 37.5em) {
    input,
    textarea {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    input,
    textarea {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

input[type="text"],
input[type="password"],
input[type="date"],
input[type="email"],
input[type="number"] {
  height: 2.33333rem;
  border-radius: 0.33333rem; }

textarea {
  border-radius: 0.33333rem; }

input[type="file"] {
  height: inherit; }

input[type="date"] {
  background-size: auto 100%;
  padding-left: 2rem;
  min-width: 11.33333rem;
  border: 1px solid #e7e6e7;
  background-color: white; }

input[type="checkbox"] {
  height: auto; }

input[type="submit"],
button {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.66667rem 1.33333rem;
  border-radius: 2.66667rem;
  font-size: 1rem;
  line-height: 1;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff;
  margin-left: 0;
  margin-right: 0; }
  @media (min-width: 37.5em) {
    input[type="submit"],
    button {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    input[type="submit"],
    button {
      font-size: 0.88889rem;
      line-height: 1.125; } }
  input[type="submit"]:hover, input[type="submit"]:focus,
  button:hover,
  button:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed input[type="submit"]:hover, .reversed input[type="submit"]:focus, .reversed
  button:hover, .reversed
  button:focus {
    background-color: #ffffff;
    color: #00798F; }

label,
legend {
  color: #6D6D6F;
  display: block;
  text-transform: uppercase;
  font-size: 0.93333rem;
  line-height: 1.07143;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  margin-bottom: 0.5rem;
  font-weight: 500; }
  @media (min-width: 62em) {
    label,
    legend {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #ffffff;
  border-radius: 0.33333rem;
  border: 1px solid #e7e6e7;
  font-size: 0.86667rem;
  line-height: 1.15385;
  text-overflow: '';
  text-indent: 0.01px;
  color: #000000;
  height: 2.33333rem;
  padding: 0 10px; }
  @media (min-width: 37.5em) {
    select {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    select {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  select[multiple] {
    min-height: 2.33333rem;
    height: auto; }

table {
  font-size: 0.86667rem;
  line-height: 1.15385;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin-top: 1.33333rem;
  text-align: left;
  margin-top: 4rem;
  margin-bottom: 4rem; }
  @media (min-width: 37.5em) {
    table {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    table {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  table:first-child {
    margin-top: 0; }
  h1 + table,
  h2 + table,
  h3 + table,
  .vocabulary-assessments .article__chart__caption + table,
  .alphabet-assessments .article__chart__caption + table,
  h4 + table,
  h5 + table,
  h6 + table {
    margin-top: 1.33333rem; }

thead th {
  vertical-align: bottom;
  color: #676568; }

thead th,
thead td {
  border-bottom: 2px solid #e7e6e7; }

tbody th,
tbody td {
  border-bottom: 1px solid #e7e6e7; }

th,
td {
  padding: 8px;
  vertical-align: top; }

th {
  font-weight: 700;
  color: #000000; }

caption + thead tr:first-child th,
caption + thead tr:first-child td,
colgroup + thead tr:first-child th,
colgroup + thead tr:first-child td,
thead:first-child tr:first-child th,
thead:first-child tr:first-child td {
  border-top: 0; }

tbody + tbody {
  border-top: 2px solid #e7e6e7; }

tr.odd {
  background-color: #ffffff; }

tr.even {
  background-color: #f3f3f3; }

:active {
  outline: 0; }

:first-child {
  margin-top: 0; }

:last-child {
  margin-bottom: 0; }

.assessed-value {
  font-size: 1.2rem;
  line-height: 1.33333; }
  @media (min-width: 37.5em) {
    .assessed-value {
      font-size: 1.3125rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .assessed-value {
      font-size: 1.33333rem;
      line-height: 1.25; } }
  .objective__title + .assessed-value {
    margin-top: 0.66667rem; }

.assessed-value__icon {
  border-radius: 50%;
  height: 1.25em;
  width: 1.25em;
  background-color: #f3f3f3;
  display: inline-block;
  margin-right: 0.66667rem;
  position: relative;
  vertical-align: middle;
  background-size: 100%; }
  .assessed-value__icon.value_yes {
    background-color: #33b1bf; }
  .assessed-value__icon.value_question {
    background-color: #ffcc00; }
  .assessed-value__icon.value_bang {
    background-color: #543168; }
  .assessed-value__icon.value_no {
    background-color: #666; }

.button {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.66667rem 1.33333rem;
  border-radius: 2.66667rem;
  font-size: 1rem;
  line-height: 1;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff; }
  @media (min-width: 37.5em) {
    .button {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .button {
      font-size: 0.88889rem;
      line-height: 1.125; } }
  .button:hover, .button:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed .button:hover, .reversed .button:focus {
    background-color: #ffffff;
    color: #00798F; }

.button--danger {
  background-color: #ffffff;
  border: 1px solid #cdcbce;
  color: #00798F;
  transition: background-color .15s linear, border-color .15s linear; }
  .button--danger:hover {
    background-color: #ffffff;
    border-color: #00798F;
    color: #00798F; }

.button--secondary {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.66667rem 1.33333rem;
  border-radius: 2.66667rem;
  font-size: 1rem;
  line-height: 1;
  background-color: #ffffff;
  border: 1px solid #cdcbce;
  color: #00798F;
  transition: background-color .15s linear, border-color .15s linear; }
  @media (min-width: 37.5em) {
    .button--secondary {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .button--secondary {
      font-size: 0.88889rem;
      line-height: 1.125; } }
  .button--secondary:hover {
    background-color: #ffffff;
    border-color: #00798F;
    color: #00798F; }

.button--play {
  padding-right: 2.66667rem;
  position: relative; }
  @media (min-width: 48em) {
    .button--play {
      padding-right: 2.66667rem; } }
  .button--play:after {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    top: 50%;
    right: 6px;
    border-radius: 50%;
    background-color: #005473;
    background-position: 50% 50%;
    transform: translateY(-50%); }

.copyright {
  font-size: 0.8rem;
  line-height: 1.25; }
  @media (min-width: 37.5em) {
    .copyright {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.copyright__separator {
  display: inline-block;
  height: .75em;
  width: 1px;
  background-color: #676568;
  text-indent: 10px;
  overflow: hidden;
  margin-left: .25em;
  margin-right: .25em;
  color: #ffffff; }

.title + .dateline {
  margin-top: 2rem; }

.file {
  display: block;
  padding-left: 54px;
  position: relative; }
  .file:before {
    content: "";
    height: 36px;
    width: 36px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    background-color: #ceb8db;
    border-radius: 50%;
    background-position: 50% 50%;
    background-size: 50% 50%;
    transition: all .15s linear; }
  .file:hover:before {
    background-color: #533168;
    transition: none; }

a.file {
  text-decoration: none; }
  a.file:hover, a.file:focus {
    text-decoration: underline; }

.file-details {
  font-size: 0.8rem;
  line-height: 1.25;
  padding-left: 54px; }
  @media (min-width: 37.5em) {
    .file-details {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.file-icon {
  float: left;
  margin-left: -36px;
  position: relative;
  top: -.333em; }

.button + .file-type {
  margin-left: 0.66667rem; }

.form-item,
.form-actions {
  margin: 0; }

.form-actions,
.form-item,
.form-wrapper {
  margin-top: 3.33333rem; }
  .form-actions:first-child,
  .form-item:first-child,
  .form-wrapper:first-child {
    margin-top: 0; }
  @media print {
    .form-actions,
    .form-item,
    .form-wrapper {
      display: none; } }

.form-item label,
.form-composite > legend,
.label {
  display: block;
  font-size: 0.93333rem;
  line-height: 1.07143;
  font-weight: 500;
  text-transform: uppercase;
  margin-bottom: 0.33333rem;
  letter-spacing: .1em; }
  @media (min-width: 62em) {
    .form-item label,
    .form-composite > legend,
    .label {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

.description {
  font-size: 0.8rem;
  line-height: 1.25;
  margin-top: 0.66667rem; }
  @media (min-width: 37.5em) {
    .description {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.fieldset-legend {
  font-family: "Avenir Next W00", helvetica, arial, sans-serif; }

.fieldset-description {
  font-size: 0.88889em;
  line-height: 1.5em;
  margin-bottom: 1.5em;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif; }

.autocomplete__wrapper {
  position: relative;
  max-width: 20em; }
  .autocomplete__wrapper > input {
    padding-right: 3em;
    background: none !important; }

.autocomplete__spinner {
  height: 14px;
  width: 14px;
  border: 2px solid #e7e6e7;
  display: block;
  border-radius: 50%;
  position: absolute;
  bottom: 0;
  top: 0;
  margin: auto;
  right: .5em; }
  .ui-autocomplete-loading + .autocomplete__spinner {
    border-color: #836297;
    animation: spin 1.4s infinite linear; }
    .ui-autocomplete-loading + .autocomplete__spinner:after {
      content: "";
      display: block;
      width: 7px;
      height: 7px;
      background-position: center;
      background-image: linear-gradient(to bottom right, transparent, white);
      position: absolute;
      bottom: 50%;
      left: 50%;
      margin: auto; }

@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.ui-widget {
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-size: 0.86667rem;
  line-height: 1.15385;
  color: #676568; }
  @media (min-width: 37.5em) {
    .ui-widget {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .ui-widget {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

.ui-widget-content {
  border-color: #e7e6e7; }

.ui-widget-content .ui-state-focus {
  background-color: #e7e6e7;
  background-image: none;
  border-color: #e7e6e7; }

.ui-autocomplete {
  transform: translateY(-4px); }

.form-type-checkboxes .form-type-checkbox,
.form-type-radios .form-type-radio {
  margin: 0.33333em 0; }

.form-type-radio {
  display: inline-block; }

.form-radio {
  display: inline-block;
  height: 1em;
  width: 1em;
  box-shadow: none;
  border: 1px solid #676568; }
  .form-radio:checked {
    border: 0.33333em solid #00798F; }

.form-type-radio {
  position: relative;
  padding-left: 22px; }

.form-radio + label:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background-position: center;
  border-radius: 50%;
  border: 1px solid #e7e6e7;
  position: absolute;
  left: 0;
  box-sizing: border-box; }

.form-radio:checked + label:before {
  border: 6px solid #00798F; }

.form-type-radio .form-radio {
  position: absolute;
  border: none; }
  .form-type-radio .form-radio:focus {
    outline: none; }
  .form-type-radio .form-radio:focus + label:before {
    border: 3px solid #005fcc; }

.form-radio + label {
  display: inline-block;
  text-transform: none;
  margin-right: 2em;
  cursor: pointer; }

.form-checkboxes {
  margin-top: 1rem;
  position: relative; }
  .form-checkboxes .checkboxesjs-buttons {
    position: absolute;
    top: -50px;
    right: 10%; }

.form-type-checkbox {
  display: inline-block; }

.form-checkbox:focus {
  outline: none; }

.form-checkbox:focus + label:before {
  border: 3px solid #005fcc; }

.form-checkbox + label {
  vertical-align: middle;
  padding-left: 2.66667rem;
  position: relative;
  text-transform: none;
  margin-right: 1.33333rem;
  margin-bottom: 2rem;
  letter-spacing: 0; }
  .form-checkbox + label:before, .form-checkbox + label:after {
    content: "";
    display: block;
    width: 2rem;
    height: 2rem;
    background-position: center;
    position: absolute; }
  .form-checkbox + label:before {
    background-color: #FFF;
    border-radius: 50%;
    border: 1px solid #cdcbce;
    top: -0.66667rem;
    left: 0; }
  .form-checkbox + label:after {
    content: "";
    display: block;
    width: 2rem;
    height: 2rem;
    background-position: center;
    top: -0.83333rem;
    left: 0.33333rem;
    display: none; }

.form-checkbox:checked + label:after {
  display: block; }

.form-checkbox + label + a {
  position: relative;
  top: -2rem;
  left: 2.66667rem;
  font-size: 0.8rem;
  line-height: 1.25; }
  @media (min-width: 37.5em) {
    .form-checkbox + label + a {
      font-size: 0.875rem;
      line-height: 1.5; } }
  @media (min-width: 62em) {
    .form-checkbox + label + a {
      font-size: 0.77778rem;
      line-height: 1.5; } }

.form-checkbox + .form-label--hidden {
  width: 2.66667rem;
  height: 2.66667rem;
  overflow: hidden;
  margin-bottom: 0;
  margin-right: 0; }
  .form-checkbox + .form-label--hidden:before {
    top: 0.33333rem; }
  .form-checkbox + .form-label--hidden:after {
    top: 0.16667rem; }

input.error,
textarea.error,
select.error {
  border: 2px solid red; }

.machine-name-label {
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: bold; }

.machine-name-value {
  font-family: monospace;
  margin: 0 .5em; }

.form-required,
.marker {
  color: #6D6D6F; }
  .form-required:after,
  .marker:after {
    color: #ff3300; }

.vertical-tab-button {
  position: relative;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif; }

#active-vertical-tab {
  top: 0; }

.field-add-more-submit[type="submit"] {
  background-color: #ffffff;
  border: 1px solid #cdcbce;
  color: #00798F;
  transition: background-color .15s linear, border-color .15s linear;
  padding: 0.33333rem 0.83333rem;
  border-radius: 0.83333rem;
  font-size: 1rem;
  line-height: 1;
  height: 1.66667rem; }
  .field-add-more-submit[type="submit"]:hover {
    background-color: #ffffff;
    border-color: #00798F;
    color: #00798F; }
  @media (min-width: 37.5em) {
    .field-add-more-submit[type="submit"] {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .field-add-more-submit[type="submit"] {
      font-size: 0.88889rem;
      line-height: 1.125; } }

.fieldgroup legend {
  display: block; }

.field--name-field-class-days-of-the-week .form-checkboxes {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  margin-top: 1rem;
  margin-bottom: -2rem; }

.field--name-field-class-days-of-the-week .form-type-checkbox {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  display: block;
  margin: 0; }
  @media (min-width: 37.5em) {
    .field--name-field-class-days-of-the-week .form-type-checkbox {
      -ms-flex-preferred-size: 32%;
          flex-basis: 32%; } }
  @media (min-width: 48em) {
    .field--name-field-class-days-of-the-week .form-type-checkbox {
      -ms-flex-preferred-size: 19%;
          flex-basis: 19%; } }

.c4l-class-bulk-upload-students > .form-submit {
  margin-top: 0.66667rem; }

.form-managed-file {
  margin-top: 0.66667rem;
  margin-bottom: 0.66667rem; }
  .form-managed-file:after {
    content: "";
    display: table;
    clear: both; }
  .form-managed-file .file {
    float: left;
    margin-right: 1.33333rem;
    margin-top: 0.16667rem; }
  .form-managed-file .form-submit {
    padding: 0.33333rem 0.83333rem;
    border-radius: 0.83333rem;
    font-size: 1rem;
    line-height: 1;
    height: 1.66667rem;
    background-color: #ffffff;
    border: 1px solid #cdcbce;
    color: #00798F;
    transition: background-color .15s linear, border-color .15s linear; }
    @media (min-width: 37.5em) {
      .form-managed-file .form-submit {
        font-size: 0.9375rem;
        line-height: 1; } }
    @media (min-width: 62em) {
      .form-managed-file .form-submit {
        font-size: 0.88889rem;
        line-height: 1.125; } }
    .form-managed-file .form-submit:hover {
      background-color: #ffffff;
      border-color: #00798F;
      color: #00798F; }

.filter-wrapper {
  display: none; }

.ief-form .button {
  padding: 0.33333rem 0.83333rem;
  border-radius: 0.83333rem;
  font-size: 1rem;
  line-height: 1;
  height: 1.66667rem; }
  @media (min-width: 37.5em) {
    .ief-form .button {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .ief-form .button {
      font-size: 0.88889rem;
      line-height: 1.125; } }

.field--name-field-student-bio {
  margin-top: 0; }

.student-bio-form .form-actions {
  margin-top: 1.33333rem; }

[id="edit-students"] {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  [id="edit-students"] .form-item {
    width: 100%;
    min-width: 320px; }
    @media (min-width: 48em) {
      [id="edit-students"] .form-item {
        width: 33%;
        margin-top: 0;
        padding-top: 0; } }
    [id="edit-students"] .form-item .form-checkbox + label:before {
      top: 5px; }
    [id="edit-students"] .form-item .form-checkbox + label:after {
      top: 0; }

.field + .field {
  margin-top: 1.33333rem; }

.field__label {
  color: #533168;
  font-weight: 500; }

.field--meta:after {
  content: "";
  display: table;
  clear: both; }

.field--meta + .field--meta {
  margin-top: 1.33333rem; }

.field--meta a {
  text-decoration: none;
  color: #21747D; }
  .field--meta a:hover, .field--meta a:focus {
    text-decoration: underline; }
  .field--meta a:hover, .field--meta a:focus {
    color: #005473; }

.field--meta .field__label {
  font-size: 1rem;
  line-height: 1.2; }
  @media (min-width: 37.5em) {
    .field--meta .field__label {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .field--meta .field__label {
      font-size: 1rem;
      line-height: 1.33333; } }

.field--meta .field__item,
.field--meta .field__value {
  font-weight: 500; }

@media (min-width: 37.5em) {
  .field--meta > .field__label {
    float: left;
    margin-right: 1.33333rem;
    width: 9.33333rem; } }

.field--inline a {
  text-decoration: none;
  color: #21747D; }
  .field--inline a:hover, .field--inline a:focus {
    text-decoration: underline; }
  .field--inline a:hover, .field--inline a:focus {
    color: #005473; }

.field--inline > .field__label {
  display: inline;
  margin-right: 0.66667rem; }

.field--inline > .field__items {
  display: inline-block; }

.fine-print {
  font-size: 0.86667rem;
  line-height: 1.15385; }
  @media (min-width: 37.5em) {
    .fine-print {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .fine-print {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 6px 6px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }

.hamburger-box {
  width: 30px;
  height: 22px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 30px;
    height: 4px;
    background-color: #00798F;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -9px; }
  .hamburger-inner::after {
    bottom: -9px; }

/*
 * Squeeze
 */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.1s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.1s 0.14s ease, opacity 0.1s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--squeeze[aria-expanded="true"] .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.14s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze[aria-expanded="true"] .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease, opacity 0.1s 0.14s ease; }
  .hamburger--squeeze[aria-expanded="true"] .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1); }

.title--page {
  margin-bottom: 1.66667rem;
  margin-top: 0; }
  .title--page:last-child {
    margin-bottom: 0; }
  .reversed .title--page {
    color: #ffffff; }

.title--page--small {
  font-size: 2.4rem;
  line-height: 1.16667; }
  @media (min-width: 37.5em) {
    .title--page--small {
      font-size: 2.625rem;
      line-height: 1.14286; } }
  @media (min-width: 62em) {
    .title--page--small {
      font-size: 2.88889rem;
      line-height: 1.15385; } }

.reversed .subtitle--page {
  color: #99ebef; }

.title--teaser {
  font-size: 1.06667rem;
  line-height: 1.125;
  color: #676568;
  font-weight: 500; }
  @media (min-width: 62em) {
    .title--teaser {
      font-size: 1rem;
      line-height: 1.16667; } }

.title--subsection {
  font-size: 1.4rem;
  line-height: 1.28571;
  color: #676568; }
  @media (min-width: 62em) {
    .title--subsection {
      font-size: 1.33333rem;
      line-height: 1.25; } }
  .title--subsection strong {
    color: #533168;
    font-weight: 500; }

.title--section + .title--subsection,
.title--subsection + .list,
.title--section + figure {
  margin-top: 1rem; }

.title--subtitle {
  font-size: 0.93333rem;
  line-height: 1.07143;
  color: #6D6D6F;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase; }
  @media (min-width: 62em) {
    .title--subtitle {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

.title--teaser + .title--subtitle,
.title--teaser + p {
  margin-top: 0.33333rem; }

.header--spaced {
  padding: 1rem 1.33333rem; }
  @media (min-width: 62em) {
    .header--spaced {
      padding: 1.33333rem 1.66667rem; } }

.path-professional-development .page__title {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 48em) {
    .path-professional-development .page__title {
      width: 83.33333%; } }
  @media (min-width: 62em) {
    .path-professional-development .page__title {
      width: 66.66667%; } }

.image-frame > img,
.image-frame > a > img {
  border: 1px solid #e7e6e7;
  box-shadow: 0 1px 3px rgba(52, 50, 53, 0.6);
  padding: 4px;
  background-color: #ffffff; }

.image-left {
  float: left;
  margin: 0 30px 0.33333em 0; }

.image-right {
  float: right;
  margin: 0 0 0.33333em 30px; }

.intro {
  font-size: 1.06667rem;
  line-height: 1.3125;
  font-weight: 500; }
  @media (min-width: 37.5em) {
    .intro {
      font-size: 1.125rem;
      line-height: 1.33333; } }
  @media (min-width: 62em) {
    .intro {
      font-size: 1.16667rem;
      line-height: 1.28571; } }
  .reversed .intro {
    color: #ffffff; }
  .intro .phone-number {
    white-space: nowrap; }

.intro + p {
  margin-top: 1.33333rem; }

.inset, .inset--long {
  margin-top: 4rem;
  margin-bottom: 4rem;
  padding: 2rem;
  color: #000000;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  border: 5px solid #000000; }
  .inset blockquote, .inset--long blockquote {
    quotes: '\201c' '\201d';
    margin-left: 1.675em;
    text-indent: 0;
    font-style: normal; }
    .inset blockquote:first-of-type, .inset--long blockquote:first-of-type {
      position: relative; }
      .inset blockquote:first-of-type:before, .inset--long blockquote:first-of-type:before {
        content: open-quote;
        position: absolute;
        left: -.7em;
        top: -.1875em;
        font-size: 4em;
        line-height: 1;
        font-weight: 700; }
    .inset blockquote:last-of-type:after, .inset--long blockquote:last-of-type:after {
      content: close-quote;
      display: inline; }
    .inset blockquote p:last-child, .inset--long blockquote p:last-child {
      display: inline; }
  @media (min-width: 48em) {
    .inset, .inset--long {
      padding: 2.66667rem 4rem; } }
  .inset:first-child, .inset--long:first-child {
    margin-top: 0; }
  .inset:last-child, .inset--long:last-child {
    margin-bottom: 0; }

.inset {
  font-size: 1.2rem;
  line-height: 1.33333;
  font-weight: 700; }
  @media (min-width: 37.5em) {
    .inset {
      font-size: 1.3125rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .inset {
      font-size: 1.33333rem;
      line-height: 1.25; } }

.languages {
  margin: 0;
  padding: 0; }
  .languages > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .languages > li {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0; }
  .languages > li > a {
    display: block; }
  .languages > li {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
    position: relative; }
    .languages > li > a,
    .languages > li > span {
      font-size: 0.93333rem;
      line-height: 1.28571;
      display: block; }
      @media (min-width: 37.5em) {
        .languages > li > a,
        .languages > li > span {
          font-size: 1rem;
          line-height: 1.3125; } }
      @media (min-width: 62em) {
        .languages > li > a,
        .languages > li > span {
          font-size: 0.88889rem;
          line-height: 1.3125; } }
  .languages > li + li {
    margin-left: 12px;
    padding-left: 12px; }
    .languages > li + li:before {
      content: "";
      display: block;
      width: 1px;
      height: 16px;
      background-position: center;
      background-color: #cdcbce;
      position: absolute;
      left: -3px;
      margin: auto;
      top: 2px;
      bottom: 0; }
  .languages span {
    color: #000000; }

.link--button {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.66667rem 1.33333rem;
  border-radius: 2.66667rem;
  font-size: 1rem;
  line-height: 1;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff; }
  @media (min-width: 37.5em) {
    .link--button {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .link--button {
      font-size: 0.88889rem;
      line-height: 1.125; } }
  .link--button:hover, .link--button:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed .link--button:hover, .reversed .link--button:focus {
    background-color: #ffffff;
    color: #00798F; }

.link--add {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.33333rem 0.83333rem;
  border-radius: 0.83333rem;
  font-size: 1rem;
  line-height: 1;
  height: 1.66667rem;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff; }
  @media (min-width: 37.5em) {
    .link--add {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .link--add {
      font-size: 0.88889rem;
      line-height: 1.125; } }
  .link--add:hover, .link--add:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed .link--add:hover, .reversed .link--add:focus {
    background-color: #ffffff;
    color: #00798F; }

.link--all {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.66667rem 1.33333rem;
  border-radius: 2.66667rem;
  font-size: 1rem;
  line-height: 1;
  background-color: #ffffff;
  border: 1px solid #cdcbce;
  color: #00798F;
  transition: background-color .15s linear, border-color .15s linear; }
  @media (min-width: 37.5em) {
    .link--all {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .link--all {
      font-size: 0.88889rem;
      line-height: 1.125; } }
  .link--all:hover {
    background-color: #ffffff;
    border-color: #00798F;
    color: #00798F; }

.link--flag {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.33333rem 0.83333rem;
  border-radius: 0.83333rem;
  font-size: 1rem;
  line-height: 1;
  height: 1.66667rem;
  background-color: #ffffff;
  border: 1px solid #cdcbce;
  color: #00798F;
  transition: background-color .15s linear, border-color .15s linear; }
  @media (min-width: 37.5em) {
    .link--flag {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .link--flag {
      font-size: 0.88889rem;
      line-height: 1.125; } }
  .link--flag:hover {
    background-color: #ffffff;
    border-color: #00798F;
    color: #00798F; }

.link--block {
  display: block; }

.link--plain {
  color: #676568;
  text-decoration: none; }
  .link--plain:hover {
    color: #444;
    text-decoration: underline; }

.link--back {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.16667rem 0.66667rem;
  border-radius: 0.83333rem;
  font-size: 0.86667rem;
  line-height: 1.38462;
  height: 1.66667rem;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff;
  color: #ffffff !important; }
  @media (min-width: 37.5em) {
    .link--back {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 37.5em) {
    .link--back {
      padding: 0.29167rem 0.66667rem; } }
  .link--back:hover, .link--back:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed .link--back:hover, .reversed .link--back:focus {
    background-color: #ffffff;
    color: #00798F; }

.link--more {
  display: inline-block;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  transition: all .15s linear; }

.link--menu {
  display: block;
  overflow: hidden;
  text-indent: 100%;
  height: 30px;
  width: 30px;
  position: relative; }
  .link--menu:before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    background-size: 30px 30px;
    background-position: 50% 50%; }

.link--print {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.16667rem 0.66667rem;
  border-radius: 0.83333rem;
  font-size: 0.86667rem;
  line-height: 1.38462;
  height: 1.66667rem;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff;
  text-decoration: none !important;
  color: #ffffff !important; }
  @media (min-width: 37.5em) {
    .link--print {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 37.5em) {
    .link--print {
      padding: 0.29167rem 0.66667rem; } }
  .link--print:hover, .link--print:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed .link--print:hover, .reversed .link--print:focus {
    background-color: #ffffff;
    color: #00798F; }

.link--edit {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.16667rem 0.66667rem;
  border-radius: 0.83333rem;
  font-size: 0.86667rem;
  line-height: 1.38462;
  height: 1.66667rem;
  background-color: #ffffff;
  border: 1px solid #cdcbce;
  color: #00798F;
  transition: background-color .15s linear, border-color .15s linear; }
  @media (min-width: 37.5em) {
    .link--edit {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 37.5em) {
    .link--edit {
      padding: 0.29167rem 0.66667rem; } }
  .link--edit:hover {
    background-color: #ffffff;
    border-color: #00798F;
    color: #00798F; }

.link--passwords {
  margin-bottom: 2.66667rem; }

.sup {
  font-weight: 700;
  text-decoration: none; }

.list--3up {
  margin: 0;
  padding: 0; }
  .list--3up > li {
    list-style: none; }
  .list--3up > li {
    margin: 0;
    margin-bottom: 2.66667rem; }
    @media (min-width: 37.5em) {
      .list--3up > li {
        margin-bottom: 2.66667rem; } }
    .list--3up > li:last-child {
      margin-bottom: 0; }
  @media (min-width: 37.5em) {
    .list--3up {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: start;
          justify-content: flex-start; } }
  @media (min-width: 37.5em) and (max-width: 61.9375em) {
    .list--3up > li {
      width: 45%;
      margin-right: 10%; }
      .list--3up > li:nth-child(2n), .list--3up > li:last-child {
        margin-right: 0; }
      .list--3up > li:nth-child(2n+1):nth-last-child(-n+2),
      .list--3up > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
        margin-bottom: 0; } }
  @media (min-width: 62em) {
    .list--3up > li {
      width: 30%;
      margin-bottom: 5%;
      margin-bottom: 2.66667rem;
      margin-right: 5%; }
      .list--3up > li:nth-child(3n), .list--3up > li:last-child {
        margin-right: 0; }
      .list--3up > li:nth-child(3n+1):nth-last-child(-n+3),
      .list--3up > li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
        margin-bottom: 0; } }

.list--4up {
  margin: 0;
  padding: 0; }
  .list--4up > li {
    list-style: none; }
  .list--4up > li {
    margin: 0;
    margin-bottom: 1.66667rem; }
    .list--4up > li:last-child {
      margin-bottom: 0;
      margin-right: 0; }
  @media (min-width: 25em) {
    .list--4up {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: center;
          justify-content: center; } }
  @media (min-width: 25em) and (max-width: 47.9375em) {
    .list--4up > li {
      width: 45.83333%;
      margin-right: 8.33333%;
      margin-bottom: 8.33333%; }
      .list--4up > li:nth-child(2n), .list--4up > li:last-child {
        margin-right: 0; }
      .list--4up > li:nth-child(2n+1):nth-last-child(-n+2),
      .list--4up > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
        margin-bottom: 0; } }
  @media (min-width: 48em) {
    .list--4up > li {
      width: 20.83333%;
      margin-right: 4.16667%; }
      .list--4up > li:nth-child(4n), .list--4up > li:last-child {
        margin-right: 0; }
      .list--4up > li:nth-child(4n+1):nth-last-child(-n+4),
      .list--4up > li:nth-child(4n+1):nth-last-child(-n+4) ~ li {
        margin-bottom: 0; } }

.list--5up {
  margin: 0;
  padding: 0; }
  .list--5up > li {
    list-style: none; }
  .list--5up > li {
    margin: 0;
    margin-bottom: 1.66667rem; }
    .list--5up > li:last-child {
      margin-bottom: 0; }
  @media (min-width: 25em) {
    .list--5up {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: center;
          justify-content: center; } }
  @media (min-width: 25em) and (max-width: 37.4375em) {
    .list--5up > li {
      width: 45.83333%;
      margin-right: 8.33333%; }
      .list--5up > li:nth-child(2n), .list--5up > li:last-child {
        margin-right: 0; }
      .list--5up > li:nth-child(2n+1):nth-last-child(-n+2),
      .list--5up > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
        margin-bottom: 0; } }
  @media (min-width: 37.5em) and (max-width: 47.9375em) {
    .list--5up > li {
      width: 25%;
      margin-right: 8.33333%; }
      .list--5up > li:nth-child(3n), .list--5up > li:last-child {
        margin-right: 0; }
      .list--5up > li:nth-child(3n+1):nth-last-child(-n+3),
      .list--5up > li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
        margin-bottom: 0; } }
  @media (min-width: 48em) and (max-width: 61.9375em) {
    .list--5up > li {
      width: 20.83333%;
      margin-right: 4.16667%; }
      .list--5up > li:nth-child(4n), .list--5up > li:last-child {
        margin-right: 0; }
      .list--5up > li:nth-child(4n+1):nth-last-child(-n+4),
      .list--5up > li:nth-child(4n+1):nth-last-child(-n+4) ~ li {
        margin-bottom: 0; } }
  @media (min-width: 62em) {
    .list--5up > li {
      width: 16.66667%;
      margin-right: 4.16667%; }
      .list--5up > li:nth-child(5n) {
        margin-right: 0; }
      .list--5up > li:nth-child(5n+1):nth-last-child(-n+5),
      .list--5up > li:nth-child(5n+1):nth-last-child(-n+5) ~ li {
        margin-bottom: 0; } }

.list--tight > li {
  margin-bottom: 1.33333rem; }

.list--no-bullets {
  margin: 0;
  padding: 0; }
  .list--no-bullets > li {
    list-style: none; }

.list--ruled {
  margin: 0;
  padding: 0; }
  .list--ruled > li {
    list-style: none; }
  .list--ruled > li {
    margin-top: 0;
    padding-bottom: 2.33333rem;
    padding-top: 2.33333rem;
    border-top: 1px solid #e7e6e7; }
  .list--ruled > li:first-child {
    margin-top: 0;
    border-top: 0;
    padding-top: 0; }

.list--ruled--above {
  margin: 0;
  padding: 0; }
  .list--ruled--above > li {
    list-style: none; }
  .list--ruled--above > li {
    margin-top: 0;
    padding-bottom: 2.33333rem;
    padding-top: 2.33333rem;
    border-top: 1px solid #e7e6e7; }

.list--ruled--tight {
  margin: 0;
  padding: 0; }
  .list--ruled--tight > li {
    list-style: none; }
  .list--ruled--tight > li {
    margin-top: 0;
    padding-bottom: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #e7e6e7; }
  .list--ruled--tight > li:first-child {
    margin-top: 0;
    border-top: 0;
    padding-top: 0; }

.list__wrapper--ruled--tight > h2 {
  margin-bottom: 1.33333rem; }

.list__wrapper--ruled--tight + .list__wrapper--ruled--tight {
  margin-top: 2rem; }

.list--definitions dt {
  display: inline-block;
  clear: left;
  float: left;
  margin-right: 0.33333rem;
  margin-top: 0.33333rem; }
  .list--definitions dt:first-child {
    margin-top: 0; }

.list--definitions dd {
  margin-left: 0;
  margin-top: 0.33333rem; }
  .list--definitions dd:nth-child(2) {
    margin-top: 0; }

.list--buttons {
  margin: 0;
  padding: 0; }
  .list--buttons > li {
    list-style: none; }
  .list--buttons > li {
    display: inline-block;
    margin-right: 0.66667rem; }

.list--links {
  margin: 0;
  padding: 0; }
  .list--links > li {
    list-style: none; }
  .list--links > li {
    display: inline-block;
    margin: 0 0.66667rem 0 0; }
    .list--links > li:last-child {
      margin-right: 0; }

.list--references {
  margin-top: 1.33333rem;
  margin-bottom: 0;
  list-style: none;
  padding-left: 0;
  counter-reset: number; }
  .list--references:first-child {
    margin-top: 0; }
  .list--references > li {
    padding-left: 30px;
    list-style: none;
    position: relative; }
    .list--references > li:before {
      color: #444;
      display: block;
      position: absolute;
      left: 0; }
  .list--references > li:before {
    font-weight: 500;
    counter-increment: number;
    content: counters(number, ".") "."; }
  .list--references > li:before {
    font-size: 0.8rem;
    line-height: 1.25;
    color: #00798F;
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    text-align: center; }
    @media (min-width: 37.5em) {
      .list--references > li:before {
        font-size: 0.75rem;
        line-height: 1.25; } }
    @media (min-width: 62em) {
      .list--references > li:before {
        font-size: 0.66667rem;
        line-height: 1.25; } }

.list--news {
  margin-top: 1.33333rem;
  margin-bottom: 0;
  list-style: none;
  padding-left: 0; }
  .list--news:first-child {
    margin-top: 0; }
  .list--news > li {
    padding-left: 30px;
    list-style: none;
    position: relative; }
    .list--news > li:before {
      color: #444;
      display: block;
      position: absolute;
      left: 0; }

.list--files {
  margin-top: 1.33333rem;
  margin-bottom: 0;
  list-style: none;
  padding-left: 0; }
  .list--files:first-child {
    margin-top: 0; }
  .list--files > li {
    padding-left: 30px;
    list-style: none;
    position: relative; }
    .list--files > li:before {
      color: #444;
      display: block;
      position: absolute;
      left: 0; }
  .list--files > li {
    border-top: 1px solid #e7e6e7;
    margin-top: 1.66667rem;
    padding-top: 1.66667rem; }
    .list--files > li:first-child {
      margin-top: 0; }

.list--c4l-process {
  -ms-flex-align: stretch;
      align-items: stretch;
  text-align: center; }
  .list--c4l-process > li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    color: #ffffff;
    position: relative; }
    .list--c4l-process > li strong {
      display: block;
      padding: 1.66667rem;
      width: 100%;
      box-sizing: border-box; }
    .list--c4l-process > li:after {
      background-color: #ff6600;
      background-size: 30px 30px;
      background-position: 50% 50%;
      border-radius: 50%;
      box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
      content: "";
      height: 48px;
      width: 48px;
      position: absolute;
      z-index: 30; }
    .list--c4l-process > li:before {
      content: "";
      position: absolute;
      height: 100%;
      width: 100%;
      top: 0;
      left: 0;
      background-position: 50% 50%;
      background-size: 200% 200%;
      z-index: -1; }
    .list--c4l-process > li:nth-child(4n+1):before {
      opacity: .7; }
    .list--c4l-process > li:nth-child(4n+2):before {
      opacity: .8; }
    .list--c4l-process > li:nth-child(4n+3):before {
      opacity: .9; }
    .list--c4l-process > li:nth-child(4n+4):before {
      opacity: 1; }
    .list--c4l-process > li:nth-child(4n+4):after {
      content: none; }
    @media (min-width: 0) and (max-width: 47.9375em) {
      .list--c4l-process > li:after {
        top: 100%;
        left: 50%;
        margin-top: 4.16667%;
        transform: translate(-50%, -50%) rotate(90deg); } }
    @media (min-width: 48em) {
      .list--c4l-process > li:after {
        top: 50%;
        left: 110%;
        transform: translate(-50%, -50%); } }
    @media (min-width: 25em) and (max-width: 47.9375em) {
      .list--c4l-process > li {
        width: 100%;
        margin-right: 0;
        margin-bottom: 8.33333%; }
        .list--c4l-process > li:nth-child(2n+1):nth-last-child(-n+2) {
          margin-bottom: 8.33333%; }
        .list--c4l-process > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
          margin-bottom: 0; } }

.list--skills a {
  text-decoration: none;
  font-size: 1.2rem;
  line-height: 1.33333;
  font-weight: 500; }
  .list--skills a:hover, .list--skills a:focus {
    text-decoration: underline; }
  @media (min-width: 48em) {
    .list--skills a {
      font-size: 1.25rem;
      line-height: 1.2; } }

.list--unit-details {
  margin: 0;
  padding: 0; }
  .list--unit-details > li {
    list-style: none; }
  .list--unit-details p strong {
    font-weight: 500; }
  .list--unit-details > li {
    clear: left;
    margin-bottom: 3.33333rem; }
    .list--unit-details > li:after {
      content: "";
      display: table;
      clear: both; }
    .list--unit-details > li .title--subtitle {
      margin-bottom: 0; }
    .list--unit-details > li .title--teaser {
      font-size: 1.4rem;
      line-height: 1.28571;
      color: #533168;
      margin-top: 0;
      margin-bottom: 0.66667rem; }
      @media (min-width: 37.5em) {
        .list--unit-details > li .title--teaser {
          font-size: 1.5rem;
          line-height: 1.25; } }
      @media (min-width: 62em) {
        .list--unit-details > li .title--teaser {
          font-size: 1.66667rem;
          line-height: 1.2; } }
    .list--unit-details > li figure {
      margin-bottom: 1.66667rem; }
      .list--unit-details > li figure > div {
        display: block;
        position: relative;
        height: 0;
        padding-bottom: 60%; }
      .list--unit-details > li figure svg {
        display: block;
        height: auto;
        width: 100%;
        position: absolute;
        bottom: 0;
        left: 0; }
    @media (min-width: 48em) {
      .list--unit-details > li article {
        padding-left: 45.45455%; }
      .list--unit-details > li figure {
        float: left;
        width: 75%;
        margin-bottom: 0;
        margin-left: -83.33333%; } }
    @media (min-width: 62em) {
      .list--unit-details > li article {
        padding-left: 31.81818%; }
      .list--unit-details > li figure {
        width: 40%;
        margin-left: -46.66667%; } }

.nav {
  margin: 0;
  padding: 0; }
  .nav > li {
    display: block;
    list-style: none;
    margin-top: 0; }

.nav-tabs {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #e7e6e7; }
  .nav-tabs:after {
    content: "";
    display: table;
    clear: both; }
  .nav-tabs > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .nav-tabs > li {
    margin-top: 0;
    margin-bottom: -1px;
    float: left; }
  .nav-tabs > li > a {
    position: relative;
    display: block;
    margin-right: 4px;
    background-color: #ffffff;
    font-size: 1.06667rem;
    line-height: 1.5;
    border-radius: 0.33333rem 0.33333rem 0 0;
    color: #6D6D6F;
    padding: 0.66667rem 1.66667rem;
    text-decoration: none;
    font-weight: 500;
    border: 1px solid transparent;
    border-bottom-color: #e7e6e7; }
    @media (min-width: 37.5em) {
      .nav-tabs > li > a {
        font-size: 1.125rem;
        line-height: 1.33333; } }
    @media (min-width: 62em) {
      .nav-tabs > li > a {
        font-size: 1rem;
        line-height: 1.33333; } }
    .nav-tabs > li > a:hover {
      background-color: #ffffff;
      color: #00798F; }
  .nav-tabs > .is-active > a,
  .nav-tabs > .is-active > a:hover {
    color: #444;
    border: 1px solid #ddd;
    background-color: #ffffff;
    color: #21747D;
    cursor: default;
    margin-bottom: -1px;
    border: 1px solid #e7e6e7;
    border-bottom-color: transparent; }

.nav--social {
  margin: 0;
  padding: 0; }
  .nav--social > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .nav--social > li {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0; }
  .nav--social > li > a {
    display: block; }
  .nav--social > li {
    margin-right: 0; }
    .nav--social > li > a {
      width: 24px;
      height: 30px;
      background-position: center;
      text-indent: 48px;
      overflow: hidden;
      white-space: nowrap;
      margin-right: 0.33333rem;
      width: 1rem;
      height: 1.91667rem;
      transition: transform .15s;
      background-position: center;
      background-size: 19px;
      margin: 0; }
      .nav--social > li > a:hover, .nav--social > li > a:focus {
        transform: scale(1.2); }

.print__container {
  color: #21747D;
  display: block;
  float: right;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  background-color: transparent; }
  .print__container:hover, .print__container:focus {
    color: #321d3e;
    background-color: transparent; }
  @media print {
    .print__container {
      display: none; } }

.print__icon {
  background-image: url("/themes/custom/c4l/img/icons_print.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  display: inline-block;
  height: 2em;
  margin-right: 0.60833rem;
  position: relative;
  vertical-align: middle;
  width: 2em; }

.testimonial {
  margin-top: 3.33333rem;
  padding: 0 0 0 3.33333rem;
  text-indent: 0;
  position: relative; }
  .testimonial:before {
    content: '\201C';
    height: 30px;
    width: 30px;
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    text-indent: 100%;
    transform: translate(0, -50%);
    background-position: 50% 50%;
    background-size: 100% 100%; }
  .testimonial p:after {
    color: #ac8fbe;
    content: '\201D'; }
  .testimonial:first-child {
    margin-top: 0; }
  .testimonial p {
    font-size: 1.2rem;
    line-height: 1.33333;
    color: #533168;
    font-style: normal; }
    @media (min-width: 37.5em) {
      .testimonial p {
        font-size: 1.3125rem;
        line-height: 1.28571; } }
    @media (min-width: 62em) {
      .testimonial p {
        font-size: 1.33333rem;
        line-height: 1.25; } }
  .testimonial cite {
    font-style: normal;
    position: relative; }
    .testimonial cite strong {
      color: #00798F;
      display: block;
      font-weight: 700;
      position: relative; }
      .testimonial cite strong:before {
        content: '\2014';
        position: absolute;
        right: 100%;
        margin-right: 3px;
        font-weight: bold;
        color: #00798F; }
    .testimonial cite em {
      font-size: 0.86667rem;
      line-height: 1.15385;
      display: block;
      font-style: normal; }
      @media (min-width: 37.5em) {
        .testimonial cite em {
          font-size: 0.875rem;
          line-height: 1.28571; } }
      @media (min-width: 62em) {
        .testimonial cite em {
          font-size: 0.88889rem;
          line-height: 1.3125; } }

.section, .section--article {
  padding-bottom: 10%;
  padding-top: 10%;
  position: relative; }
  @media (min-width: 62em) {
    .section, .section--article {
      padding-bottom: 8%; } }
  @media (min-width: 87.5em) {
    .section, .section--article {
      padding-bottom: 96px; } }
  @media (min-width: 62em) {
    .section, .section--article {
      padding-top: 8%; } }
  @media (min-width: 87.5em) {
    .section, .section--article {
      padding-top: 96px; } }
  .section .content:not(:last-child), .section--article .content:not(:last-child) {
    margin-bottom: 6%; }
    @media (min-width: 37.5em) {
      .section .content:not(:last-child), .section--article .content:not(:last-child) {
        margin-bottom: 6%; } }
    @media (min-width: 62em) {
      .section .content:not(:last-child), .section--article .content:not(:last-child) {
        margin-bottom: 4%; } }
    @media (min-width: 87.5em) {
      .section .content:not(:last-child), .section--article .content:not(:last-child) {
        margin-bottom: 56px; } }
  .section:first-child, .section--article:first-child {
    padding-top: 0; }
  .section:last-child, .section--article:last-child {
    padding-bottom: 0; }
  .section .bordered:before, .section--article .bordered:before {
    content: "";
    max-width: 800px;
    width: 83.33333%;
    background-position: 50% 0;
    background-size: 200% 100%;
    padding-bottom: 5px;
    transform: translate(-50%, -50%);
    position: absolute;
    top: 0;
    left: 50%;
    height: 0; }
    @media (min-width: 48em) {
      .section .bordered:before, .section--article .bordered:before {
        width: 66.66667%;
        background-size: 100% 100%; } }

.section--areas .title--subsection {
  text-align: center; }

.section--areas .title--teaser {
  font-size: 1.2rem;
  line-height: 1.16667; }
  @media (min-width: 62em) {
    .section--areas .title--teaser {
      font-size: 1.22222rem;
      line-height: 1.09091; } }

.section--callouts {
  margin-bottom: 6rem; }
  @media (min-width: 48em) {
    .section--callouts {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: distribute;
          justify-content: space-around; }
      .section--callouts .callout {
        max-width: 41.66667%; } }

.section--purple {
  position: relative;
  margin-bottom: 6rem; }
  .section--purple:before {
    content: "";
    display: block;
    width: 100vw;
    height: 100%;
    background-position: center;
    background-color: #533168;
    position: absolute;
    left: 50%;
    bottom: -6rem;
    transform: translateX(-50%);
    z-index: -1; }

.section--padded {
  padding-bottom: 16%; }
  @media (min-width: 48em) {
    .section--padded {
      padding-bottom: 14%; } }
  @media (min-width: 62em) {
    .section--padded {
      padding-bottom: 12%; } }
  @media (min-width: 87.5em) {
    .section--padded {
      padding-bottom: 124px; } }

.section--learn-more {
  margin-bottom: 6%; }
  @media (min-width: 37.5em) {
    .section--learn-more {
      margin-bottom: 6%; } }
  @media (min-width: 62em) {
    .section--learn-more {
      margin-bottom: 4%; } }
  @media (min-width: 87.5em) {
    .section--learn-more {
      margin-bottom: 56px; } }

.subsection {
  position: relative;
  padding-top: 6%; }
  @media (min-width: 37.5em) {
    .subsection {
      padding-top: 6%; } }
  @media (min-width: 62em) {
    .subsection {
      padding-top: 4%; } }
  @media (min-width: 87.5em) {
    .subsection {
      padding-top: 56px; } }
  .subsection.bordered:before {
    width: 100%; }
    @media (min-width: 48em) {
      .subsection.bordered:before {
        width: 100%; } }

.section--article:before {
  right: auto; }

.section__header {
  margin-bottom: 1.33333rem; }

.section__heading {
  font-size: 1.6rem;
  line-height: 1.25;
  margin-bottom: 1.33333rem; }
  @media (min-width: 37.5em) {
    .section__heading {
      font-size: 1.875rem;
      line-height: 1.2; } }
  @media (min-width: 62em) {
    .section__heading {
      font-size: 2rem;
      line-height: 1.16667; } }
  .section__heading:last-child {
    margin-bottom: 0; }

.section__heading + .section__description {
  margin-top: -1.33333rem; }

.section--intro {
  background: #533168;
  color: #ccfafb;
  position: relative;
  margin-top: 12%;
  padding-top: 0;
  padding-bottom: 20%; }
  @media (min-width: 37.5em) {
    .section--intro {
      margin-top: 8%; } }
  @media (min-width: 62em) {
    .section--intro {
      margin-top: 4.45283%; } }
  @media (min-width: 82.8125em) {
    .section--intro {
      margin-top: 59px; } }
  @media (min-width: 48em) {
    .section--intro {
      padding-bottom: 12.5%; } }
  @media (min-width: 87.5em) {
    .section--intro {
      padding-bottom: 150px; } }
  .section--intro.reversed {
    color: #ccfafb; }
  .section--intro .title--page {
    color: #ffffff; }
  .section--intro .subtitle--page {
    color: #99ebef; }
  .section--intro .triangles--top--wrapper {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
    height: 0;
    padding-bottom: 50%;
    margin-top: -12%; }
    @media (min-width: 37.5em) {
      .section--intro .triangles--top--wrapper {
        margin-top: -8%; } }
    @media (min-width: 62em) {
      .section--intro .triangles--top--wrapper {
        margin-top: -8.90566%; } }
    @media (min-width: 82.8125em) {
      .section--intro .triangles--top--wrapper {
        margin-top: -118px; } }
    @media (min-width: 48em) {
      .section--intro .triangles--top--wrapper {
        padding-bottom: 30%; } }
  .section--intro .triangles--top {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 0; }
    @media (min-width: 37.5em) {
      .section--intro .triangles--top {
        margin-bottom: 0; } }
    @media (min-width: 62em) {
      .section--intro .triangles--top {
        margin-bottom: 0; } }
    @media (min-width: 87.5em) {
      .section--intro .triangles--top {
        margin-bottom: 0; } }
    .section--intro .triangles--top:before {
      content: "";
      position: absolute;
      top: 0;
      height: 0;
      background-size: 100% auto;
      padding-bottom: 50%;
      width: 500%;
      left: -200%;
      right: -200%; }
      @media (min-width: 48em) {
        .section--intro .triangles--top:before {
          padding-bottom: 30%;
          width: 300%;
          left: -100%;
          right: -100%; } }
  .section--intro .triangles--bottom--wrapper {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    overflow: hidden;
    height: 0;
    padding-bottom: 15%; }
    @media (min-width: 48em) {
      .section--intro .triangles--bottom--wrapper {
        padding-bottom: 10%; } }
    @media (min-width: 87.5em) {
      .section--intro .triangles--bottom--wrapper {
        padding-bottom: 120px; } }
  .section--intro .triangles--bottom {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%); }
    .section--intro .triangles--bottom:before {
      content: "";
      position: absolute;
      top: 0;
      height: 0;
      background-size: 100% auto;
      background-position: 0 0;
      padding-bottom: 100%;
      width: 500%;
      left: -200%;
      right: -200%; }
      @media (min-width: 48em) {
        .section--intro .triangles--bottom:before {
          padding-bottom: 20%;
          width: 300%;
          left: -100%;
          right: -100%; } }
  .section--intro .l--constrained--narrow {
    position: relative;
    z-index: 200; }
  .simple .section--intro {
    padding-top: 0;
    padding-bottom: 12%; }
    @media (min-width: 37.5em) {
      .simple .section--intro {
        padding-top: 0; } }
    @media (min-width: 62em) {
      .simple .section--intro {
        padding-top: 0; } }
    @media (min-width: 87.5em) {
      .simple .section--intro {
        padding-top: 0; } }
    @media (min-width: 48em) {
      .simple .section--intro {
        padding-bottom: 12%; } }
    @media (min-width: 62em) {
      .simple .section--intro {
        padding-bottom: 8%; } }
    @media (min-width: 87.5em) {
      .simple .section--intro {
        padding-bottom: 112px; } }
    .simple .section--intro .triangles--top--wrapper {
      bottom: 0;
      padding-bottom: 0;
      height: auto; }
    .simple .section--intro .triangles--top {
      bottom: 0;
      padding: 0; }
      .simple .section--intro .triangles--top:before {
        padding-bottom: 0;
        top: 0;
        bottom: 0;
        height: auto; }
        @media (min-width: 37.5em) {
          .simple .section--intro .triangles--top:before {
            padding-bottom: 0; } }
        @media (min-width: 62em) {
          .simple .section--intro .triangles--top:before {
            padding-bottom: 0; } }
        @media (min-width: 87.5em) {
          .simple .section--intro .triangles--top:before {
            padding-bottom: 0; } }

.section--secondary {
  background: #f3f3f3; }

.section--feature {
  margin-top: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
  z-index: 1;
  background: #533168; }
  @media (min-width: 62em) {
    .section--feature {
      margin-top: -4.5283%; } }
  @media (min-width: 82.8125em) {
    .section--feature {
      margin-top: -60px; } }
  @media (min-width: 37.5em) {
    .section--feature {
      padding: 0; } }
  @media (min-width: 62em) {
    .section--feature {
      padding: 0; } }
  @media (min-width: 87.5em) {
    .section--feature {
      padding: 0; } }
  .section--feature .l--constrained {
    position: relative; }
  .section--feature figure {
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 250; }
    @media (min-width: 62em) {
      .section--feature figure {
        position: relative;
        height: 0;
        padding-bottom: 55%; } }
    @media (min-width: 82.8125em) {
      .section--feature figure {
        padding-bottom: 660px; } }
    .section--feature figure:after, .section--feature figure:before {
      display: block;
      width: 300%;
      left: -100%;
      right: -100%;
      position: absolute;
      top: -1px;
      bottom: -1px;
      z-index: 100;
      background-position: 50% 0;
      background-size: 100% auto; }
    .section--feature figure:after {
      content: "";
      width: 500%;
      left: -200%;
      right: -200%;
      background-size: cover;
      background-size: auto 100%; }
    @media (min-width: 62em) {
      .section--feature figure:after {
        content: none; }
      .section--feature figure:before {
        content: ""; } }
    .section--feature figure img {
      position: absolute;
      left: 50%;
      top: 0;
      transform: translateX(-50%);
      max-width: 200%;
      min-width: 130%;
      min-height: 100%;
      width: auto;
      margin-left: -2.27273%;
      opacity: .2; }
      @media (min-width: 62em) {
        .section--feature figure img {
          opacity: 1;
          min-width: 0;
          margin-left: -2.27273%;
          transform: none; } }
  .section--feature .content {
    position: relative;
    z-index: 300;
    color: #ffffff;
    padding: 20% 0;
    max-width: 480px; }
    @media (min-width: 62em) {
      .section--feature .content {
        max-width: 100%;
        padding: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 0;
        width: 45.45455%; } }
  .section--feature .subtitle--page {
    font-size: 1.2rem;
    line-height: 1.16667;
    font-weight: 500;
    margin-bottom: 0.66667rem; }
    @media (min-width: 25em) {
      .section--feature .subtitle--page {
        font-size: 1.5rem;
        line-height: 1.125; } }
    @media (min-width: 37.5em) {
      .section--feature .subtitle--page {
        font-size: 1.875rem;
        line-height: 1.2; } }
    @media (min-width: 62em) {
      .section--feature .subtitle--page {
        font-size: 1.83333rem;
        line-height: 1.09091; } }
    @media (min-width: 75em) {
      .section--feature .subtitle--page {
        font-size: 2.33333rem;
        line-height: 1; } }
    @media (min-width: 62em) {
      .section--feature .subtitle--page {
        font-weight: 400; } }
  .section--feature .title--page {
    font-size: 1.6rem;
    line-height: 1.125; }
    @media (min-width: 25em) {
      .section--feature .title--page {
        font-size: 2.25rem;
        line-height: 1.16667; } }
    @media (min-width: 37.5em) {
      .section--feature .title--page {
        font-size: 3rem;
        line-height: 1; } }
    @media (min-width: 62em) {
      .section--feature .title--page {
        font-size: 2.66667rem;
        line-height: 1; } }
    @media (min-width: 75em) {
      .section--feature .title--page {
        font-size: 3.33333rem;
        line-height: 1; } }
    @media (min-width: 87.5em) {
      .section--feature .title--page {
        font-size: 4rem;
        line-height: 1; } }

.section--ruled {
  padding: 5.66667rem 0;
  position: relative; }
  .section--ruled:first-of-type {
    padding-top: 0; }
  .section--ruled:last-of-type {
    padding-bottom: 0; }
    .section--ruled:last-of-type:after {
      content: none; }
  .section--ruled:after {
    content: "";
    display: block;
    width: 100%;
    height: 8px;
    background-position: center;
    background-position: left bottom;
    background-repeat: repeat-x !important;
    bottom: -4px;
    left: 0;
    position: absolute; }

.section--ruled--tight {
  padding: 2.66667rem 0; }

.subsection-heading {
  text-transform: uppercase;
  margin-bottom: 0.66667rem;
  color: #000000; }
  .subsection-heading:last-child {
    margin-bottom: 0; }

.table--bordered {
  border: 0;
  border-collapse: separate;
  *border-collapse: collapsed;
  border-left: 0; }
  .table--bordered th,
  .table--bordered td {
    border-left: 1px solid #e7e6e7; }
    @media (min-width: 48em) {
      .table--bordered th,
      .table--bordered td {
        padding: 1.33333rem 1.33333rem; }
        .table--bordered th.cell--checkbox,
        .table--bordered td.cell--checkbox {
          padding-top: 0.33333rem;
          padding-bottom: 0.33333rem; } }
  .table--bordered caption + thead tr:first-child th,
  .table--bordered caption + tbody tr:first-child th,
  .table--bordered caption + tbody tr:first-child td,
  .table--bordered colgroup + thead tr:first-child th,
  .table--bordered colgroup + tbody tr:first-child th,
  .table--bordered colgroup + tbody tr:first-child td,
  .table--bordered thead:first-child tr:first-child th,
  .table--bordered tbody:first-child tr:first-child th,
  .table--bordered tbody:first-child tr:first-child td {
    border-top: 0; }
  .table--bordered thead > tr {
    background-color: #006d87; }
  .table--bordered tbody td:last-child {
    border-right: 1px solid #e7e6e7; }
  .table--bordered thead th,
  .table--bordered thead td {
    color: #ffffff;
    border-bottom: 0;
    border-left-color: #005473; }
    .table--bordered thead th.cell--secondary,
    .table--bordered thead td.cell--secondary {
      border-left: 0; }
  .table--bordered .text--invisible {
    color: #006d87; }

.tr--even {
  background-color: #f3f3f3; }

.cell--primary {
  color: #533168;
  max-width: 12em; }

.cell--secondary {
  max-width: 12em;
  font-weight: 500; }

.cell--checkbox,
.cell--student {
  text-align: center; }

.table--bordered thead .cell--secondary {
  border-left: 0; }

.tags-label {
  margin-right: .5em;
  display: inline-block;
  font-size: 1rem; }

.tags-list {
  margin: 0;
  padding: 0;
  display: inline-block; }
  .tags-list > li {
    list-style: none; }

.tags-item {
  display: inline;
  margin-right: 1em; }
  .tags-item:last-child {
    margin-right: 0; }

.player,
.video {
  height: 1px;
  width: 100%;
  position: relative;
  padding-top: 62.5%;
  padding-top: 56%; }
  .player > iframe,
  .video > iframe {
    position: absolute;
    top: 1px;
    height: 100%;
    width: 100%; }

.media--wrapper {
  background: #533168;
  background: rgba(83, 49, 104, 0.95);
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: 20;
  display: none; }
  .media--wrapper .media {
    max-width: 1200px;
    width: 91.66667%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%); }
    @media (min-width: 48em) {
      .media--wrapper .media {
        width: 83.33333%; } }
    @media (min-width: 62em) {
      .media--wrapper .media {
        width: 66.66667%; } }
  .media--wrapper .link--close {
    position: absolute;
    bottom: 100%;
    right: 0;
    margin-bottom: 0.66667rem;
    height: 30px;
    width: 30px;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    opacity: .8;
    transition: all .15s; }
    .media--wrapper .link--close:hover {
      opacity: 1; }

.callout {
  padding-top: 2.66667rem;
  max-width: 800px; }

.callout__heading {
  font-size: 1.4rem;
  line-height: 1.28571;
  font-weight: 700;
  margin-bottom: 0; }
  @media (min-width: 37.5em) {
    .callout__heading {
      font-size: 1.5rem;
      line-height: 1.25; } }
  @media (min-width: 62em) {
    .callout__heading {
      font-size: 1.66667rem;
      line-height: 1.2; } }

.callout__description {
  margin-top: 0.66667rem; }
  @media (min-width: 48em) {
    .callout__description {
      margin-top: 0.33333rem; } }

.callout__link {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff;
  padding: 0.66667rem 1.33333rem;
  border-radius: 2.66667rem;
  font-size: 1rem;
  line-height: 1; }
  .callout__link:hover, .callout__link:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed .callout__link:hover, .reversed .callout__link:focus {
    background-color: #ffffff;
    color: #00798F; }
  @media (min-width: 37.5em) {
    .callout__link {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .callout__link {
      font-size: 0.88889rem;
      line-height: 1.125; } }

.callout--trainings {
  margin-top: 2.66667rem; }

.section--connect {
  background: #533168;
  padding-bottom: 20%;
  margin-bottom: -15%;
  color: #ccfafb; }
  @media (min-width: 48em) {
    .section--connect {
      padding-bottom: 14%; } }
  @media (min-width: 87.5em) {
    .section--connect {
      padding-bottom: 196px; } }
  @media (min-width: 48em) {
    .section--connect {
      margin-bottom: -10%; } }
  @media (min-width: 87.5em) {
    .section--connect {
      margin-bottom: -120px; } }

.section--pilot-programs {
  background: #533168;
  padding-top: 0;
  margin-top: 24%;
  padding-bottom: 20%;
  margin-bottom: -15%; }
  @media (min-width: 37.5em) {
    .section--pilot-programs {
      padding-top: 0; } }
  @media (min-width: 62em) {
    .section--pilot-programs {
      padding-top: 0; } }
  @media (min-width: 87.5em) {
    .section--pilot-programs {
      padding-top: 0; } }
  @media (min-width: 48em) {
    .section--pilot-programs {
      margin-top: 16%; } }
  @media (min-width: 62em) {
    .section--pilot-programs {
      margin-top: 14%; } }
  @media (min-width: 87.5em) {
    .section--pilot-programs {
      margin-top: 196px; } }
  @media (min-width: 48em) {
    .section--pilot-programs {
      padding-bottom: 14%; } }
  @media (min-width: 87.5em) {
    .section--pilot-programs {
      padding-bottom: 196px; } }
  @media (min-width: 48em) {
    .section--pilot-programs {
      margin-bottom: -10%; } }
  @media (min-width: 87.5em) {
    .section--pilot-programs {
      margin-bottom: -120px; } }
  .section--pilot-programs .l--constrained--narrow--figure figure {
    height: 0;
    position: relative;
    padding-bottom: 25%; }
  .section--pilot-programs .l--constrained--narrow--figure img {
    position: absolute;
    bottom: 0;
    width: 100%; }
  .section--pilot-programs .l--constrained--narrow--padded {
    background: #ffffff; }

.list--connect {
  margin: 0;
  padding: 0;
  position: relative; }
  .list--connect > li {
    list-style: none; }
  .list--connect:before, .list--connect:after {
    background-color: #836297;
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    left: 0; }
  .list--connect .title--teaser {
    font-size: 1.4rem;
    line-height: 1.28571;
    color: #ffffff;
    margin-bottom: 0; }
    @media (min-width: 37.5em) {
      .list--connect .title--teaser {
        font-size: 1.5rem;
        line-height: 1.25; } }
    @media (min-width: 62em) {
      .list--connect .title--teaser {
        font-size: 1.66667rem;
        line-height: 1.2; } }
  .list--connect .title--teaser + p {
    margin-top: 0.66667rem; }
    @media (min-width: 48em) {
      .list--connect .title--teaser + p {
        margin-top: 0.33333rem; } }
  .list--connect .link--facebook {
    color: #ccfafb;
    display: block; }
    .list--connect .link--facebook:hover {
      color: #ffffff; }
  .list--connect > li {
    border-bottom: 1px solid #836297;
    margin-bottom: 1.66667rem;
    padding-bottom: 1.66667rem;
    margin-top: 0; }
    .list--connect > li:last-child {
      border-bottom: none;
      margin-bottom: 0; }
  @media (min-width: 48em) {
    .list--connect {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: center;
          justify-content: center; }
      .list--connect > li {
        border-bottom: none;
        padding-bottom: 0; } }
  @media (min-width: 48em) and (max-width: 87.4375em) {
    .list--connect > li {
      margin-top: 0;
      margin-bottom: 3.33333rem; }
      .list--connect > li:nth-child(3n+1) {
        border-right: 1px solid #836297;
        width: 58.33333%;
        margin-right: 4.16667%;
        padding-right: 4.16667%; }
      .list--connect > li:nth-child(3n+2) {
        width: 37.5%; }
      .list--connect > li:nth-child(3n) {
        border-top: 1px solid #836297;
        padding-top: 3.33333rem;
        width: 100%; } }
  @media (min-width: 87.5em) {
    .list--connect > li {
      margin-bottom: 0;
      margin-top: 0; }
      .list--connect > li:nth-child(3n+1) {
        border-right: 1px solid #836297;
        width: 33.33333%;
        margin-right: 4.16667%;
        padding-right: 4.16667%; }
      .list--connect > li:nth-child(3n+2) {
        border-right: 1px solid #836297;
        width: 29.16667%;
        margin-right: 4.16667%;
        padding-right: 4.16667%; }
      .list--connect > li:nth-child(3n) {
        width: 25%; } }

.form--newsletter label {
  font-size: 0.86667rem;
  line-height: 1.15385;
  color: #ccfafb; }
  @media (min-width: 37.5em) {
    .form--newsletter label {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .form--newsletter label {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

.form--newsletter input[type="email"] {
  border: 3px solid #ffffff;
  color: #343235;
  margin-bottom: 0.66667rem;
  width: 98%; }
  .form--newsletter input[type="email"]:focus {
    outline: none;
    border-color: #ceb8db; }

@media (min-width: 37.5em) {
  .form--newsletter input[type="email"] {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    float: left;
    width: 170px;
    margin-bottom: 0;
    border-right: none; }
  .form--newsletter input[type="submit"] {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    padding-left: 1rem;
    padding-right: 1rem; } }

.block--feature {
  background: #533168;
  padding: 8.33333%; }
  @media (min-width: 48em) {
    .block--feature {
      border-radius: 6px;
      padding: 4.16667%; } }
  .block--feature p {
    font-size: 1.2rem;
    line-height: 1.33333;
    margin: 0; }
    @media (min-width: 37.5em) {
      .block--feature p {
        font-size: 1.3125rem;
        line-height: 1.28571; } }
    @media (min-width: 62em) {
      .block--feature p {
        font-size: 1.33333rem;
        line-height: 1.25; } }
  .block--feature .button {
    margin-top: 1rem; }
    @media (min-width: 75em) {
      .block--feature .button {
        margin-top: 0;
        position: absolute;
        right: 5.55556%;
        top: 50%;
        transform: translateY(-50%); } }

.block--inset {
  font-size: 0.86667rem;
  line-height: 1.15385;
  background: #f3f3f3;
  border-radius: 6px;
  color: #6D6D6F;
  padding: 1.66667rem; }
  @media (min-width: 37.5em) {
    .block--inset {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .block--inset {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .reversed .block--inset {
    background: #422753;
    color: #ceb8db; }

.block--nsf {
  position: relative; }
  .block--nsf p {
    margin-top: 0; }
  .block--nsf figure {
    margin-bottom: 1rem;
    margin-left: auto;
    margin-right: auto;
    width: 30%; }
  @media (min-width: 25em) {
    .block--nsf {
      padding-left: 25%; }
      .block--nsf figure {
        width: 18.75%;
        position: absolute;
        left: 12.5%;
        top: 50%;
        transform: translate(-50%, -50%); } }
  @media (min-width: 37.5em) {
    .block--nsf {
      padding-left: 18.75%; }
      .block--nsf figure {
        left: 9.375%;
        width: 12.5%; } }
  @media (min-width: 62em) {
    .block--nsf {
      padding-left: 12.5%; }
      .block--nsf figure {
        left: 6.25%;
        width: 7.5%; } }

.block-language {
  padding: 0;
  margin: 0.6rem 1rem 0;
  text-align: center;
  display: inline-block; }
  .block-language ul.links {
    margin: 0;
    padding: 0;
    list-style: none; }
    .block-language ul.links a {
      color: #ffffff;
      font-size: 0.8em;
      text-decoration: none; }
      .block-language ul.links a.is-active, .block-language ul.links a:hover {
        border-bottom: 1px solid #00798F; }
    .block-language ul.links li {
      display: inline;
      margin: 0;
      padding: 0 0.5rem; }
      .block-language ul.links li:first-child {
        border-right: 1px solid #000000; }

.advanced-prep__list {
  margin: 0;
  padding: 0;
  margin: 0;
  padding: 0;
  margin-top: 1.33333rem; }
  .advanced-prep__list > li {
    list-style: none; }
  .advanced-prep__list > li {
    list-style: none; }
  .advanced-prep__list > li {
    margin-top: 0;
    padding-bottom: 2em;
    padding-top: 2em;
    border-top: 1px solid #e7e6e7; }
  .advanced-prep__list > li:first-child {
    margin-top: 0;
    border-top: 0;
    padding-top: 0; }

.assessment-table {
  margin-top: 0; }
  .assessment-table a {
    text-decoration: none;
    font-weight: 500; }
    .assessment-table a:hover, .assessment-table a:focus {
      text-decoration: underline; }

.assessment-table > thead .assessed-value {
  font-size: 0.93333rem;
  line-height: 1.07143;
  text-align: center; }
  @media (min-width: 62em) {
    .assessment-table > thead .assessed-value {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .assessment-table > thead .assessed-value .assessed-value__icon {
    display: block;
    margin: 0 auto .5em auto; }
  @media (min-width: 0) and (max-width: 37.4375em) {
    .assessment-table > thead .assessed-value span {
      visibility: hidden;
      height: 0px;
      width: 0px;
      display: block; } }

.assessment-table > thead th {
  font-size: 14px;
  font-weight: normal;
  vertical-align: top;
  background-color: transparent;
  border-bottom: 2px solid #666;
  font-weight: bold; }
  .assessment-table > thead th:first-child {
    vertical-align: bottom; }

.assessment-table tr td {
  color: #533168;
  font-weight: 500;
  text-align: center;
  vertical-align: middle; }
  @media (min-width: 37.5em) {
    .assessment-table tr td {
      min-width: 8em; } }
  @media (min-width: 62em) {
    .assessment-table tr td {
      min-width: 9em; } }
  .assessment-table tr td:nth-child(2) {
    width: 10%; }

.assessment-table tr td:first-child {
  max-width: 65%;
  text-align: left; }

.assessment-table {
  margin-top: 3rem; }
  .assessment-table .data, .assessment-table .no-info {
    display: none;
    text-align: left; }
  .assessment-table td:nth-child(2) .data:nth-child(1), .assessment-table td:nth-child(2) .no-info:nth-child(1) {
    display: block; }
  .assessment-table td:nth-child(3) .data:nth-child(2), .assessment-table td:nth-child(3) .no-info:nth-child(2) {
    display: block; }
  .assessment-table td:nth-child(4) .data:nth-child(3), .assessment-table td:nth-child(4) .no-info:nth-child(3) {
    display: block; }
  .assessment-table td:nth-child(5) .data:nth-child(4), .assessment-table td:nth-child(5) .no-info:nth-child(4) {
    display: block; }
  .assessment-table thead th {
    width: 150px;
    position: relative;
    vertical-align: bottom; }
    .assessment-table thead th:nth-child(2):before {
      background-color: #33b1bf; }
    .assessment-table thead th:nth-child(3):before {
      background-color: #ffcc00; }
    .assessment-table thead th:nth-child(4):before {
      background-color: #533168; }
    .assessment-table thead th:first-of-type {
      width: 100%; }
    .assessment-table thead th:first-of-type:before, .assessment-table thead th:last-of-type:before {
      display: none; }
  .assessment-table tbody tr:nth-child(odd) {
    background-color: #f3f3f3; }
  .assessment-table tbody td {
    padding: 12px 8px; }
    .assessment-table tbody td:not(:first-of-type) {
      color: #666; }
    .assessment-table tbody td:first-of-type, .assessment-table tbody td:last-of-type {
      font-weight: bold;
      text-align: left; }

.assessment-table .assessments-bars .bar {
  float: left;
  margin-top: 20px;
  position: relative; }
  .assessment-table .assessments-bars .bar:not(.bar-0) {
    height: 30px; }
    .assessment-table .assessments-bars .bar:not(.bar-0):first-child {
      border-top-left-radius: 5px;
      border-bottom-left-radius: 5px; }
    .assessment-table .assessments-bars .bar:not(.bar-0):last-child {
      border-top-right-radius: 5px;
      border-bottom-right-radius: 5px; }
  .assessment-table .assessments-bars .bar-1 {
    width: 14.28%; }
  .assessment-table .assessments-bars .bar-2 {
    width: 28.57%; }
  .assessment-table .assessments-bars .bar-3 {
    width: 42.85%; }
  .assessment-table .assessments-bars .bar-4 {
    width: 57.14%; }
  .assessment-table .assessments-bars .bar-5 {
    width: 71.43%; }
  .assessment-table .assessments-bars .bar-6 {
    width: 85.71%; }
  .assessment-table .assessments-bars .bar-7 {
    width: 100%; }
  .assessment-table .assessments-bars .bar--independent {
    background-color: #21747D; }
  .assessment-table .assessments-bars .bar--withhelp {
    background-color: #ffcc00; }
  .assessment-table .assessments-bars .bar--muchhelp {
    background-color: #ff3300; }
  .assessment-table .assessments-bars .bar--notassessed {
    background-color: #e7e6e7; }
  .assessment-table .assessments-bars .bar .bar-label {
    position: absolute;
    font-size: 14px;
    font-weight: 400;
    left: 45%;
    right: 50%;
    top: -20px; }

.assessment-table .assessments-bars .bar-0 .bar-label {
  display: none; }

.assessments-legend .assessed-value__text {
  float: left;
  font-size: 14px;
  margin-right: 1rem;
  padding: 1.66667rem 0; }

.assessments-legend .assessed-value__icon {
  background-image: none;
  height: 1.5em;
  margin-right: 0.33333rem;
  vertical-align: baseline;
  width: 1.55em; }
  .assessments-legend .assessed-value__icon.value_no {
    background-color: #f3f3f3; }
  .assessments-legend .assessed-value__icon.value_tertiary {
    background-color: #543168; }

.assessments-legend--chart .assessed-value__text {
  float: none;
  padding: 0 0 0.33333rem 0; }

.assessment-pie--table .google-visualization-table {
  width: 85%; }

.assessment-pie--table .google-visualization-table-tr-head {
  background-color: transparent;
  text-align: left; }

.assessment-pie--table .google-visualization-table-table th {
  border-right: 0;
  padding: 12px 0;
  border-bottom: 2px solid #cdcbce; }

.assessment-pie--table .google-visualization-table-table td {
  position: relative;
  border-right: 0;
  padding: 12px 10px 12px 0;
  vertical-align: middle; }
  .assessment-pie--table .google-visualization-table-table td:first-of-type {
    padding-left: 30px; }
    .assessment-pie--table .google-visualization-table-table td:first-of-type::before {
      content: "";
      height: 20px;
      width: 20px;
      background-color: #f3f3f3;
      display: inline-block;
      margin-right: 10px;
      border-radius: 50%;
      position: absolute;
      top: 8px;
      left: 0; }

.assessment-pie--table .google-visualization-table-tr-over {
  background-color: transparent; }

.assessment-pie--table .google-visualization-table-table tbody tr:nth-child(1) td:before {
  background-color: #33b1bf; }

.assessment-pie--table .google-visualization-table-table tbody tr:nth-child(2) td:before {
  background-color: #ffcc00; }

.assessment-pie--table .google-visualization-table-table tbody tr:nth-child(3) td:before {
  background-color: #543168; }

.assessment-pie--table .google-visualization-table-table tbody tr:nth-child(4) td:before {
  border: 1px solid #949494; }

.assessment-pie--table .google-visualization-table-td.google-visualization-table-type-number {
  text-align: left; }

.assessment-chart svg path {
  width: 120%;
  height: 120%; }

.articles__wrapper {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 48em) {
    .articles__wrapper {
      width: 83.33333%; } }
  @media (min-width: 62em) {
    .articles__wrapper {
      width: 66.66667%; } }

.articles__list {
  margin: 0;
  padding: 0;
  margin: 0;
  padding: 0;
  margin-top: 1.33333rem; }
  .articles__list > li {
    list-style: none; }
  .articles__list > li {
    list-style: none; }
  .articles__list > li {
    margin-top: 0;
    padding-bottom: 2em;
    padding-top: 2em;
    border-top: 1px solid #e7e6e7; }
  .articles__list > li:first-child {
    margin-top: 0;
    border-top: 0;
    padding-top: 0; }

.list--authors {
  margin: 0;
  padding: 0; }
  .list--authors > li {
    list-style: none; }
  .list--authors figure {
    border-radius: 50%;
    overflow: hidden; }
  .list--authors .title--teaser {
    font-size: 1.2rem;
    line-height: 1.16667; }
    @media (min-width: 62em) {
      .list--authors .title--teaser {
        font-size: 1.22222rem;
        line-height: 1.09091; } }
  .list--authors.list--ruled li {
    clear: left;
    position: relative; }
  .list--authors.list--ruled .title--teaser {
    margin-top: 0; }
  .list--authors.list--ruled figure {
    float: left;
    width: 25%;
    margin-bottom: 4.16667%;
    margin-right: 4.16667%; }
  .list--authors.list--ruled .bio > p:first-child {
    margin-top: 1rem; }
  @media (min-width: 37.5em) {
    .list--authors.list--ruled li {
      padding-left: 20.83333%; }
    .list--authors.list--ruled figure {
      margin: 0;
      position: absolute;
      left: 0;
      top: 2.33333rem;
      width: 16.66667%; } }
  @media (min-width: 62em) {
    .list--authors.list--ruled li {
      padding-left: 16.66667%; }
    .list--authors.list--ruled figure {
      top: 2.33333rem;
      width: 12.5%; } }
  .list--authors.list--5up .title--teaser {
    margin-top: 1rem;
    text-align: center; }
  .list--authors.list--5up .title--subtitle {
    text-align: center; }
  .list--authors.list--5up > li {
    position: relative;
    transition: opacity .25s linear; }
  .list--authors.list--5up .is--hidden .bio {
    display: none;
    visibility: hidden; }
  .list--authors.list--5up .link--expand {
    text-decoration: none; }
    .list--authors.list--5up .link--expand .title--teaser {
      color: #00798F; }
  .list--authors.list--5up .is--inactive {
    opacity: .2; }
  @media (min-width: 48em) and (max-width: 61.9375em) {
    .list--authors.list--5up > li {
      width: 25%;
      margin-right: 8.33333%; }
      .list--authors.list--5up > li:nth-child(3n), .list--authors.list--5up > li:last-child {
        margin-right: 0; }
      .list--authors.list--5up > li:nth-child(3n+1):nth-last-child(-n+3),
      .list--authors.list--5up > li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
        margin-bottom: 0; } }
  .list--authors.list--5up .is--shown {
    z-index: 100; }
    .list--authors.list--5up .is--shown:after {
      box-sizing: content-box;
      content: "";
      height: 0;
      width: 0;
      position: absolute;
      top: 100%;
      left: 50%;
      border-bottom: 18px solid #00798F;
      border-right: 18px solid transparent;
      border-left: 18px solid transparent;
      margin-left: -18px; }
    .list--authors.list--5up .is--shown .bio {
      background: #00798F;
      color: #ffffff;
      position: absolute;
      top: 100%;
      margin-top: 1rem;
      left: 0;
      padding: 2.66667rem;
      width: 100%; }
      .list--authors.list--5up .is--shown .bio .link--close {
        position: absolute;
        top: 6px;
        right: 6px;
        height: 30px;
        width: 30px;
        display: block; }
      .list--authors.list--5up .is--shown .bio p {
        margin-bottom: 0; }
    @media (min-width: 25em) and (max-width: 37.4375em) {
      .list--authors.list--5up .is--shown .bio {
        width: 200%; }
      .list--authors.list--5up .is--shown:nth-child(2n) .bio {
        margin-left: -100%; }
      .list--authors.list--5up .is--shown:nth-child(2n+1):last-child .bio {
        margin-left: -50%; } }
    @media (min-width: 37.5em) and (max-width: 61.9375em) {
      .list--authors.list--5up .is--shown .bio {
        width: 300%; }
      .list--authors.list--5up .is--shown:nth-child(5n+2) .bio, .list--authors.list--5up .is--shown:nth-child(5n+4) .bio, .list--authors.list--5up .is--shown:nth-child(5n) .bio {
        margin-left: -100%; }
      .list--authors.list--5up .is--shown:nth-child(5n+3) .bio {
        margin-left: -200%; } }
    @media (min-width: 62em) {
      .list--authors.list--5up .is--shown .bio {
        width: 400%; }
      .list--authors.list--5up .is--shown:nth-child(5n+2) .bio {
        margin-left: -100%; }
      .list--authors.list--5up .is--shown:nth-child(5n+3) .bio {
        margin-left: -150%; }
      .list--authors.list--5up .is--shown:nth-child(5n+4) .bio {
        left: auto;
        right: 0;
        margin-right: -100%; }
      .list--authors.list--5up .is--shown:nth-child(5n+5) .bio {
        left: auto;
        right: 0; } }

.credentials__list {
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start; }
  .credentials__list > li {
    list-style: none; }

.credentials__item {
  position: relative;
  width: 50%;
  margin-top: 0;
  padding: 0;
  page-break-inside: avoid; }
  .credentials__item:before, .credentials__item:after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-position: center;
    position: absolute;
    border-color: #cdcbce;
    border-style: solid; }
  .credentials__item:nth-child(2n+1):before {
    border-width: 1px 1px 0 0;
    top: 0;
    right: 0; }
  .credentials__item:nth-child(2n+1):after {
    border-width: 0 1px 1px 0;
    bottom: 0;
    right: 0; }
  .credentials__item:nth-child(2n+2):before {
    border-width: 1px 0 0 1px;
    top: 0;
    left: 0; }
  .credentials__item:nth-child(2n+2):after {
    border-width: 0 0 1px 1px;
    bottom: 0;
    left: 0; }
  .credentials__item:nth-child(-1n+2):before {
    border-top-width: 2px; }
  .credentials__item:nth-last-child(-1n+2):after {
    border-bottom-width: 2px; }

.view--electronic-content .view__content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .view--electronic-content .view__content .views-row {
    margin-right: 60px;
    margin-bottom: 60px;
    width: 240px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-line-pack: justify;
        align-content: space-between; }
    .view--electronic-content .view__content .views-row .node__content {
      height: 100%; }
      .view--electronic-content .view__content .views-row .node__content a {
        text-decoration: none; }
      .view--electronic-content .view__content .views-row .node__content h2 {
        font-size: 1.2rem;
        font-weight: 700;
        overflow-wrap: break-spaces;
        max-width: 200px;
        text-align: center;
        margin-top: 5px; }
      .view--electronic-content .view__content .views-row .node__content .field--name-field-electronic-file-preview {
        height: 300px;
        overflow: hidden; }
        .view--electronic-content .view__content .views-row .node__content .field--name-field-electronic-file-preview img {
          width: 220px;
          height: auto; }

.electronic-content--full a {
  margin-bottom: 40px; }

.list--expanding {
  margin: 0;
  padding: 0; }
  .list--expanding > li {
    list-style: none; }
  .list--expanding > li {
    margin-top: 0;
    padding-bottom: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #e7e6e7; }
  .list--expanding > li {
    transition: background .25s linear, border .25s linear;
    border-left: 1px solid transparent;
    border-right: 1px solid transparent;
    margin-left: -6.25%;
    margin-right: -6.25%;
    padding-left: 6.25%;
    padding-right: 6.25%;
    margin-bottom: -1px; }
  .list--expanding .is--shown {
    background: #ffffff;
    border: 1px solid #e7e6e7; }

.title--expand {
  font-size: 1.2rem;
  line-height: 1.16667;
  color: #00798F;
  font-weight: 500; }
  @media (min-width: 62em) {
    .title--expand {
      font-size: 1.22222rem;
      line-height: 1.09091; } }
  .title--expand a {
    display: block;
    padding-right: 36px;
    position: relative; }
    .title--expand a:after {
      content: "";
      width: 30px;
      height: 30px;
      position: absolute;
      top: 0;
      right: 0;
      transition: all .25s linear; }
      .is--shown .title--expand a:after {
        transform: rotate(90deg); }

.content--expand > p:first-child {
  padding-top: 1rem; }

.list--figures h3, .list--figures .vocabulary-assessments .article__chart__caption, .vocabulary-assessments .list--figures .article__chart__caption,
.list--figures .alphabet-assessments .article__chart__caption, .alphabet-assessments .list--figures .article__chart__caption {
  margin-top: 1rem;
  text-align: center; }

.list--figures h3 + p, .list--figures .vocabulary-assessments .article__chart__caption + p, .vocabulary-assessments .list--figures .article__chart__caption + p, .list--figures .alphabet-assessments .article__chart__caption + p, .alphabet-assessments .list--figures .article__chart__caption + p {
  margin-top: 0; }

.list--figures figure {
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 200px;
  height: 0;
  width: 200px;
  position: relative; }
  .list--figures figure a {
    position: absolute;
    height: 100%;
    width: 100%;
    transition: all .15s linear; }
    .list--figures figure a:hover {
      opacity: .8; }
  @media (min-width: 25em) {
    .list--figures figure {
      width: auto;
      padding-bottom: 100%; } }
  .list--figures figure svg {
    display: block;
    height: auto;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0; }

.list--figures--large h3 + p, .list--figures--large .vocabulary-assessments .article__chart__caption + p, .vocabulary-assessments .list--figures--large .article__chart__caption + p, .list--figures--large .alphabet-assessments .article__chart__caption + p, .alphabet-assessments .list--figures--large .article__chart__caption + p {
  font-size: 0.8rem;
  line-height: 1.25;
  margin-top: 0.33333rem; }
  @media (min-width: 37.5em) {
    .list--figures--large h3 + p, .list--figures--large .vocabulary-assessments .article__chart__caption + p, .vocabulary-assessments .list--figures--large .article__chart__caption + p, .list--figures--large .alphabet-assessments .article__chart__caption + p, .alphabet-assessments .list--figures--large .article__chart__caption + p {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.list--figures--large > li {
  background: #f3f3f3;
  border-radius: 12px 12px 6px 6px;
  position: relative; }

.list--figures--large figure {
  display: block;
  position: relative;
  height: 0;
  padding-bottom: 60%; }
  .list--figures--large figure > svg {
    display: block;
    height: 116.66667%;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: -16.66667%; }

.list--figures--large .title--subtitle {
  margin-bottom: 0.33333rem; }

.list--figures--large .title--teaser {
  color: #533168;
  margin-top: 0; }

.list--units figure:after,
.list--online-portal figure:after {
  content: "";
  height: 2px;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0; }

.list--units figure:after {
  background: rgba(51, 51, 51, 0.2); }

.list--online-portal figure:after {
  background: rgba(83, 49, 104, 0.2); }

.footnotes {
  padding-top: 1.33333rem;
  border-top-color: #e7e6e7; }

.footnote-label,
.see-footnote {
  text-decoration: none;
  font-size: .75em;
  font-weight: bold; }
  .footnote-label:hover,
  .see-footnote:hover {
    text-decoration: underline; }

.see-footnote:target {
  background-color: transparent;
  border: 0; }

.handbook-toc__list {
  margin: 0;
  padding: 0;
  margin: 0;
  padding: 0;
  margin-top: 1.33333rem; }
  .handbook-toc__list > li {
    list-style: none; }
  .handbook-toc__list > li {
    list-style: none; }
  .handbook-toc__list > li {
    margin-top: 0;
    padding-bottom: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #e7e6e7; }
  .handbook-toc__list > li:first-child {
    margin-top: 0;
    border-top: 0;
    padding-top: 0; }

.learning-centers__heading {
  margin-bottom: 1rem; }

.learning-centers__header {
  border-bottom: 1px solid #e7e6e7;
  margin-bottom: 2.33333rem;
  padding-bottom: 1.33333rem; }

.learning-centers__list {
  margin: 0;
  padding: 0;
  padding-left: 0;
  padding-right: 0; }
  .learning-centers__list > li {
    list-style: none; }
  .learning-centers__list > li {
    margin: 0;
    margin-bottom: 2.66667rem; }
    @media (min-width: 37.5em) {
      .learning-centers__list > li {
        margin-bottom: 2.66667rem; } }
    .learning-centers__list > li:last-child {
      margin-bottom: 0; }
  @media (min-width: 37.5em) {
    .learning-centers__list {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: start;
          justify-content: flex-start; } }
  @media (min-width: 37.5em) and (max-width: 61.9375em) {
    .learning-centers__list > li {
      width: 45%;
      margin-right: 10%; }
      .learning-centers__list > li:nth-child(2n), .learning-centers__list > li:last-child {
        margin-right: 0; }
      .learning-centers__list > li:nth-child(2n+1):nth-last-child(-n+2),
      .learning-centers__list > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
        margin-bottom: 0; } }
  @media (min-width: 62em) {
    .learning-centers__list > li {
      width: 30%;
      margin-bottom: 5%;
      margin-bottom: 2.66667rem;
      margin-right: 5%; }
      .learning-centers__list > li:nth-child(3n), .learning-centers__list > li:last-child {
        margin-right: 0; }
      .learning-centers__list > li:nth-child(3n+1):nth-last-child(-n+3),
      .learning-centers__list > li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
        margin-bottom: 0; } }
  .learning-centers__list > .learning-centers__item {
    margin-bottom: 1.33333rem; }
    @media (min-width: 37.5em) {
      .learning-centers__list > .learning-centers__item {
        margin-bottom: 1.66667rem; } }

.learning-center__title {
  margin-top: 0;
  padding-top: 1rem;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 500; }
  @media (min-width: 37.5em) {
    .learning-center__title {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .learning-center__title {
      font-size: 1rem;
      line-height: 1.33333; } }
  .learning-center__title > a {
    color: #676568; }
    .learning-center__title > a:hover, .learning-center__title > a:focus {
      color: #343235;
      text-decoration: underline; }

.learning-center {
  padding-left: 5.33333rem;
  position: relative; }

.learning-center__icon {
  display: block;
  height: 4.33333rem;
  width: 4.33333rem;
  border-radius: 50%;
  background-color: #eadef1;
  float: left;
  margin-left: -5.33333rem;
  background-size: 65%;
  background-position: center; }

.learning-center__date {
  font-size: 0.8rem;
  line-height: 1.25; }
  @media (min-width: 37.5em) {
    .learning-center__date {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  .learning-center__date > .label {
    display: inline; }
  .learning-center--outdated .learning-center__date {
    color: #00798F; }

.learning-center__starburst {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  height: 1.33333rem;
  width: 1.33333rem;
  padding-top: 0.1111rem;
  border-radius: 50%;
  background-color: #21747D;
  color: white;
  font-size: 0.8rem;
  line-height: 1.25;
  text-align: center;
  font-weight: 500; }
  @media (min-width: 37.5em) {
    .learning-center__starburst {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.list--myths-facts {
  margin: 0;
  padding: 0; }
  .list--myths-facts > li {
    list-style: none; }
  .list--myths-facts > li {
    margin-bottom: 3.33333rem; }
    .list--myths-facts > li:after {
      content: "";
      display: table;
      clear: both; }
    .list--myths-facts > li:last-child {
      margin-bottom: 0; }
  .list--myths-facts .title--subtitle + p {
    margin-top: 0.33333rem; }
  .list--myths-facts .myth,
  .list--myths-facts .fact {
    padding: 3.33333rem;
    position: relative; }
    .list--myths-facts .myth:before,
    .list--myths-facts .fact:before {
      content: "";
      position: absolute;
      height: 100%;
      width: 100%;
      left: 0;
      top: 0;
      background-size: 100% 100%;
      z-index: -1; }
  .list--myths-facts .myth {
    width: 90.90909%;
    margin-bottom: -1.66667rem; }
    .list--myths-facts .myth .title--subtitle {
      color: #00798F; }
  .list--myths-facts .fact {
    color: #ffffff;
    width: 90.90909%;
    float: right; }
    .list--myths-facts .fact .title--subtitle {
      color: #99ebef; }
  @media (min-width: 62em) {
    .list--myths-facts .myth {
      float: left;
      width: 51.13636%;
      margin-bottom: 0;
      margin-right: -4.54545%; }
    .list--myths-facts .fact {
      float: right;
      margin-top: 1.66667rem;
      width: 51.13636%;
      margin-left: -4.54545%; } }

.view-class-roster th,
.view-class-roster td {
  vertical-align: middle;
  padding: 0.33333rem 0.66667rem; }
  @media (min-width: 37.5em) {
    .view-class-roster th,
    .view-class-roster td {
      padding: 0.5rem 1rem; } }
  @media (min-width: 48em) {
    .view-class-roster th,
    .view-class-roster td {
      padding: 0.66667rem 1.33333rem; } }

.view-class-roster th {
  font-size: 0.8rem;
  line-height: 1.25;
  color: #6D6D6F;
  letter-spacing: .05em;
  text-transform: uppercase; }
  @media (min-width: 37.5em) {
    .view-class-roster th {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.view-class-roster tbody tr:nth-child(2n+1) {
  background: #f3f3f3; }

.view-class-roster .views-field-title {
  font-weight: 700; }

.view-class-roster .views-field-field-grade-age {
  text-align: center; }

.view-class-roster .views-field-created {
  text-align: center;
  display: none;
  visibility: hidden; }
  @media (min-width: 48em) {
    .view-class-roster .views-field-created {
      display: table-cell;
      visibility: visible; } }

.view-class-roster td.views-field-created {
  font-size: 0.8rem;
  line-height: 1.25;
  text-transform: uppercase; }
  @media (min-width: 37.5em) {
    .view-class-roster td.views-field-created {
      font-size: 0.75rem;
      line-height: 1.25; } }
  @media (min-width: 62em) {
    .view-class-roster td.views-field-created {
      font-size: 0.66667rem;
      line-height: 1.25; } }

.view-class-roster .views-field-edit-node {
  text-align: center; }
  .view-class-roster .views-field-edit-node > a {
    display: inline-block;
    background: #ffffff;
    border: 1px solid #cdcbce;
    border-radius: 1.33333rem;
    font-size: 0.8rem;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: .05em;
    padding: 0.16667rem 0.66667rem 0.16667rem 2rem;
    position: relative;
    text-decoration: none;
    text-transform: uppercase; }
    @media (min-width: 37.5em) {
      .view-class-roster .views-field-edit-node > a {
        font-size: 0.875rem;
        line-height: 1.28571; } }
    .view-class-roster .views-field-edit-node > a:before {
      content: "";
      display: inline-block;
      position: absolute;
      left: 0.33333rem;
      top: 50%;
      transform: translateY(-50%);
      height: 1.33333rem;
      width: 1.33333rem;
      background-position: 50% 50%;
      background-size: 150%;
      opacity: .5; }
    .view-class-roster .views-field-edit-node > a:hover {
      border-color: #836297;
      color: #533168; }
      .view-class-roster .views-field-edit-node > a:hover:before {
        opacity: 1; }

.node__content > .field--name-field-passwords-for-students,
.node__content > .field--name-field-grade-age,
.node__content > .field--name-field-class-status,
.node__content > .field--name-field-screen-time-limit {
  margin-bottom: 1.66667rem; }
  .node__content > .field--name-field-passwords-for-students .field__label,
  .node__content > .field--name-field-grade-age .field__label,
  .node__content > .field--name-field-class-status .field__label,
  .node__content > .field--name-field-screen-time-limit .field__label {
    font-size: 0.8rem;
    line-height: 1.25;
    letter-spacing: .05em;
    text-transform: uppercase; }
    @media (min-width: 37.5em) {
      .node__content > .field--name-field-passwords-for-students .field__label,
      .node__content > .field--name-field-grade-age .field__label,
      .node__content > .field--name-field-class-status .field__label,
      .node__content > .field--name-field-screen-time-limit .field__label {
        font-size: 0.875rem;
        line-height: 1.28571; } }
  .node__content > .field--name-field-passwords-for-students .field__item,
  .node__content > .field--name-field-grade-age .field__item,
  .node__content > .field--name-field-class-status .field__item,
  .node__content > .field--name-field-screen-time-limit .field__item {
    font-weight: 400; }
  @media (min-width: 62em) {
    .node__content > .field--name-field-passwords-for-students,
    .node__content > .field--name-field-grade-age,
    .node__content > .field--name-field-class-status,
    .node__content > .field--name-field-screen-time-limit {
      float: left;
      margin-right: 5%; } }

.node__content .link--button {
  float: left;
  margin: 0; }

.section--inside-a-unit .title--section {
  font-size: 2.4rem;
  line-height: 1.16667;
  text-align: center; }
  @media (min-width: 37.5em) {
    .section--inside-a-unit .title--section {
      font-size: 2.625rem;
      line-height: 1.14286; } }
  @media (min-width: 62em) {
    .section--inside-a-unit .title--section {
      font-size: 2.88889rem;
      line-height: 1.15385; } }

.unit-details {
  background: #f3f3f3;
  padding: 0;
  padding-top: 1.66667rem;
  position: relative;
  overflow: hidden;
  border-radius: 6px; }
  @media (min-width: 48em) {
    .unit-details {
      padding-top: 3.33333rem; } }
  .unit-details:after {
    content: "";
    width: 120%;
    position: absolute;
    left: -10%;
    right: -10%;
    top: 100%;
    height: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.25); }
  .unit-details figure {
    height: 0;
    padding-bottom: 63.63636%;
    width: 90.90909%;
    position: relative; }
    .unit-details figure img {
      box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
      position: absolute;
      top: 0;
      left: 0;
      width: 100%; }
  .unit-details .content--unit {
    background: #533168;
    color: #ffffff;
    padding: 1.66667rem;
    position: relative;
    z-index: 2; }
  @media (min-width: 48em) {
    .unit-details figure {
      padding-bottom: 45.45455%;
      width: 45.45455%; }
    .unit-details .content--unit {
      width: 45.45455%;
      top: 0;
      bottom: 0;
      position: absolute; } }
  @media (min-width: 62em) {
    .unit-details figure {
      width: 54.54545%; }
    .unit-details .content--unit {
      width: 36.36364%; } }
  @media (min-width: 82.8125em) {
    .unit-details .content--unit {
      padding: 3.33333rem; } }
  .unit-details .title--subtitle {
    font-size: 1rem;
    line-height: 1.2;
    color: #eadef1;
    margin-bottom: 0; }
    @media (min-width: 37.5em) {
      .unit-details .title--subtitle {
        font-size: 1rem;
        line-height: 1.3125; } }
    @media (min-width: 62em) {
      .unit-details .title--subtitle {
        font-size: 1rem;
        line-height: 1.33333; } }
  .unit-details .title--teaser {
    font-size: 1.6rem;
    line-height: 1.25;
    color: #66d3db;
    margin-top: 0;
    margin-bottom: 0.66667rem; }
    @media (min-width: 37.5em) {
      .unit-details .title--teaser {
        font-size: 1.875rem;
        line-height: 1.2; } }
    @media (min-width: 62em) {
      .unit-details .title--teaser {
        font-size: 2rem;
        line-height: 1.16667; } }

.unit-details--connect figure {
  margin-left: 4.54545%; }

.unit-details--connect .content--unit {
  right: 0; }

.unit-details--small-group figure {
  margin-left: 4.54545%; }
  @media (min-width: 48em) {
    .unit-details--small-group figure {
      margin-left: 0;
      margin-right: 4.54545%;
      float: right; } }

.unit-details--small-group .content--unit {
  left: 0; }

.objective-assessments__wrapper {
  min-height: 13.33333rem;
  position: relative; }

.objective-assessments {
  margin-bottom: 1.33333rem; }

.objective-assessments__heading {
  margin-bottom: 1.33333rem;
  cursor: pointer;
  position: relative;
  padding: 0 60px 0 0;
  border: none;
  background: transparent;
  text-transform: none;
  letter-spacing: unset;
  color: #533168;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.25; }
  @media (min-width: 37.5em) {
    .objective-assessments__heading {
      font-size: 1.5rem;
      line-height: 1.25; } }
  @media (min-width: 62em) {
    .objective-assessments__heading {
      font-size: 2rem;
      line-height: 1.16667; } }
  .objective-assessments__heading:hover, .objective-assessments__heading:focus {
    color: #321d3e;
    background: transparent; }

.article__overview + .objective-assessments__content {
  margin-top: 4rem; }

.objective-assessments__arrow {
  display: block;
  height: 48px;
  width: 48px;
  position: relative;
  transform: rotate(45deg) translateY(10%) translateX(10%);
  overflow: visible;
  transition: transform .125s ease-out;
  position: absolute;
  right: 0;
  top: -0.33333rem; }
  .objective-assessments__arrow:before, .objective-assessments__arrow:after {
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background-position: center;
    background-color: #533168;
    position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    transition: transform .125s ease-out; }
  .objective-assessments__arrow:before {
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background-position: center;
    transform: scale(0.333, 1) translateX(-50%) translateY(-50%); }
  .objective-assessments__arrow:after {
    content: "";
    display: block;
    width: 4px;
    height: 100%;
    background-position: center;
    transform: scale(1, 0.333) translateX(-50%) translateY(-50%); }
  @media (min-width: 0) and (max-width: 37.4375em) {
    .objective-assessments__arrow {
      height: 30px;
      width: 30px;
      top: 0; } }
  [aria-expanded="true"] > .objective-assessments__arrow {
    transform: rotate(135deg) translateY(0) translateX(0); }
    [aria-expanded="true"] > .objective-assessments__arrow:before {
      transform: scale(0.5, 1) translateX(0) translateY(0); }
    [aria-expanded="true"] > .objective-assessments__arrow:after {
      transform: scale(1, 0.5) translateY(0) translateY(0); }

.snapshot tbody {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: none;
      flex-wrap: none; }

.snapshot tr {
  display: block;
  -ms-flex-positive: 1;
      flex-grow: 1;
  border-left: 2px solid white; }
  .snapshot tr[data-value='1'] {
    background-color: #00798F; }
  .snapshot tr[data-value='2'] {
    background-color: #ffcc00; }
  .snapshot tr[data-value='3'] {
    background-color: #ff3300; }
  .snapshot tr[data-value='null'] {
    background-color: #6D6D6F; }

.snapshot td,
.snapshot th {
  border: none; }

.student-password {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between; }

.student-password__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  border: 3px solid rgba(153, 235, 239, 0);
  border-radius: 50%;
  width: 30%; }

.student-password__image {
  display: block;
  width: 65%; }

.student__form {
  border-top: 1px solid #cdcbce;
  margin: 0;
  padding: 2.66667rem 0;
  padding: 2.66667rem 0; }

.node-student-form {
  position: relative; }
  .node-student-form:after {
    content: "";
    display: table;
    clear: both; }
  .node-student-form .field--name-title,
  .node-student-form .field--name-field-last-name,
  .node-student-form .field--name-field-grade-age {
    margin-bottom: 1.66667rem;
    margin-top: 0;
    width: 100%; }
    @media (min-width: 37.5em) {
      .node-student-form .field--name-title,
      .node-student-form .field--name-field-last-name,
      .node-student-form .field--name-field-grade-age {
        float: left; } }
    .node-student-form .field--name-title label,
    .node-student-form .field--name-field-last-name label,
    .node-student-form .field--name-field-grade-age label {
      font-size: 0.8rem;
      line-height: 1.25;
      letter-spacing: .05em;
      text-transform: uppercase; }
      @media (min-width: 37.5em) {
        .node-student-form .field--name-title label,
        .node-student-form .field--name-field-last-name label,
        .node-student-form .field--name-field-grade-age label {
          font-size: 0.875rem;
          line-height: 1.28571; } }
    .node-student-form .field--name-title .description,
    .node-student-form .field--name-field-last-name .description,
    .node-student-form .field--name-field-grade-age .description {
      display: none;
      visibility: hidden; }
  @media (min-width: 37.5em) {
    .node-student-form .field--name-title {
      padding-right: 10px;
      width: 50%; } }
  @media (min-width: 48em) {
    .node-student-form .field--name-title {
      margin-bottom: 0;
      padding-right: 30px;
      width: 30%; } }
  @media (min-width: 37.5em) {
    .node-student-form .field--name-field-last-name {
      padding-left: 10px;
      width: 50%; } }
  @media (min-width: 48em) {
    .node-student-form .field--name-field-last-name {
      margin-bottom: 0;
      padding-left: 0;
      padding-right: 30px;
      width: 30%; } }
  .node-student-form .field--name-field-grade-age select {
    width: 100%; }
  @media (min-width: 37.5em) {
    .node-student-form .field--name-field-grade-age {
      margin-bottom: 0;
      clear: left;
      padding-right: 20px;
      width: 70%; } }
  @media (min-width: 48em) {
    .node-student-form .field--name-field-grade-age {
      clear: none;
      margin-bottom: 0;
      padding-right: 30px;
      width: 25%; } }
  .node-student-form .form-actions .dropbutton-widget {
    border: none; }
  .node-student-form .form-actions input {
    width: 100%; }
    @media (min-width: 48em) {
      .node-student-form .form-actions input {
        width: inherit; } }
  @media (min-width: 48em) {
    .node-student-form .form-actions {
      position: absolute;
      right: 0;
      bottom: 0; } }

.classRoster__list {
  margin: 0;
  padding: 0;
  padding-bottom: 30px; }
  .classRoster__list:after {
    content: "";
    display: table;
    clear: both; }
  .classRoster__list > li {
    list-style: none; }

.classRoster__item {
  margin-bottom: 1rem;
  margin-top: 0; }
  @media (min-width: 31.25em) {
    .classRoster__item {
      float: left;
      width: 50%; } }
  @media (min-width: 62em) {
    .classRoster__item {
      width: 33.33333%; } }
  @media (min-width: 75em) {
    .classRoster__item {
      width: 25%; } }

.view-class-non-contact-days {
  margin: 0;
  padding: 0 0 1.33333rem; }

.non-contact-form {
  padding-top: 2.66667rem; }

.field--widget-language-select {
  margin: 0; }

.field--name-field-non-contact-date {
  margin-top: 0; }

.field--name-field-class-length,
.field--name-field-class-first-day {
  margin-bottom: 1.33333rem; }

.assessment-overview-filters .form-checkboxes {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.assessment-overview-filters .form-type-checkbox {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  margin-right: 0; }

@media (min-width: 48em) {
  .assessment-overview-filters {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    .assessment-overview-filters .form-item--unit {
      -ms-flex-preferred-size: 23.80952%;
          flex-basis: 23.80952%; }
    .assessment-overview-filters .form-item--subject-area {
      margin-top: 0 !important;
      -ms-flex-preferred-size: 66.66667%;
          flex-basis: 66.66667%; } }

@media (min-width: 62em) {
  .assessment-overview-filters .form-type-checkbox {
    -ms-flex-preferred-size: auto;
        flex-basis: auto; }
  .assessment-overview-filters .form-item--unit {
    -ms-flex-preferred-size: 19.04762%;
        flex-basis: 19.04762%; }
  .assessment-overview-filters .form-item--subject-area {
    -ms-flex-preferred-size: 76.19048%;
        flex-basis: 76.19048%; } }

.assessment-student-filters .form-checkboxes {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: -1.33333rem; }

.assessment-student-filters .form-type-checkbox {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  margin-right: 0; }

.assessment-student-filters.filters__date {
  background-color: #f3f3f3;
  border-radius: 10px;
  margin-top: 20px;
  padding: 40px; }
  .assessment-student-filters.filters__date .form-item {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%; }
  .assessment-student-filters.filters__date .label {
    color: #6D6D6F;
    -ms-flex-positive: 1;
        flex-grow: 1;
    margin-bottom: 0; }
  .assessment-student-filters.filters__date .date--option:not(.active) {
    background-color: transparent;
    border-bottom: 2px solid transparent;
    color: #00798F; }
    .assessment-student-filters.filters__date .date--option:not(.active):hover {
      border-bottom: 2px solid #005473;
      border-radius: 0px;
      color: #005473;
      margin: 0.66667rem 1.33333rem;
      padding: 0; }
  .assessment-student-filters.filters__date .date--option.active {
    background-color: #533168; }

@media (min-width: 48em) {
  .assessment-student-filters {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    .assessment-student-filters .form-item--proficiency {
      margin-top: 0 !important;
      -ms-flex-preferred-size: 66.66667%;
          flex-basis: 66.66667%; } }

@media (min-width: 62em) {
  .assessment-student-filters .form-type-checkbox {
    -ms-flex-preferred-size: auto;
        flex-basis: auto; }
  .assessment-student-filters .form-item--proficiency {
    -ms-flex-preferred-size: 76.19048%;
        flex-basis: 76.19048%; } }

.assessment-vocabulary-filters, .assessment-vocabulary-filters--student, .assessment-vocabulary-filters--class {
  padding-right: 0; }
  .assessment-vocabulary-filters .form-checkboxes, .assessment-vocabulary-filters--student .form-checkboxes, .assessment-vocabulary-filters--class .form-checkboxes {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .assessment-vocabulary-filters .form-type-checkbox, .assessment-vocabulary-filters--student .form-type-checkbox, .assessment-vocabulary-filters--class .form-type-checkbox {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  @media (min-width: 37.5em) {
    .assessment-vocabulary-filters .form-type-checkbox, .assessment-vocabulary-filters--student .form-type-checkbox, .assessment-vocabulary-filters--class .form-type-checkbox {
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
      margin-right: 0; } }

@media (min-width: 37.5em) {
  .assessment-vocabulary-filters--student .form-type-checkbox {
    -ms-flex-preferred-size: 41.66667%;
        flex-basis: 41.66667%;
    margin-right: 0; } }

@media (min-width: 48em) {
  .assessment-vocabulary-filters--student {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .assessment-vocabulary-filters--student .form-type-checkbox {
      -ms-flex-preferred-size: auto;
          flex-basis: auto; } }

@media (min-width: 62em) {
  .assessment-vocabulary-filters--student {
    -ms-flex-wrap: no-wrap;
        flex-wrap: no-wrap; }
    .assessment-vocabulary-filters--student .form-item--proficiency {
      margin-right: 8.33333%; }
    .assessment-vocabulary-filters--student .form-item--subject-area {
      margin-top: 0 !important; } }

@media (min-width: 48em) {
  .assessment-vocabulary-filters--class {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    .assessment-vocabulary-filters--class .form-item--unit {
      -ms-flex-preferred-size: 28.57143%;
          flex-basis: 28.57143%; }
    .assessment-vocabulary-filters--class .form-item--student {
      -ms-flex-preferred-size: 28.57143%;
          flex-basis: 28.57143%; }
    .assessment-vocabulary-filters--class .form-item--vocabulary {
      -ms-flex-preferred-size: 28.57143%;
          flex-basis: 28.57143%; }
    .assessment-vocabulary-filters--class .form-item--subject-area {
      margin-top: 0 !important;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
    .assessment-vocabulary-filters--class .form-type-checkbox {
      -ms-flex-preferred-size: auto;
          flex-basis: auto; } }

.vocabulary-assessments .article__chart--secondary,
.alphabet-assessments .article__chart--secondary {
  background-color: transparent;
  border-right: 1px solid #cdcbce;
  display: block;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 1;
      flex-shrink: 1;
  margin: 0;
  margin-right: 40px;
  padding: 0 2rem 0 0; }

.vocabulary-assessments .article__content-header,
.alphabet-assessments .article__content-header {
  background-color: transparent;
  padding: 2.66667rem 0px; }

.vocabulary-assessments .article__chart__caption,
.alphabet-assessments .article__chart__caption {
  font-weight: 400;
  margin-top: 0; }

.vocabulary-assessments .filters,
.alphabet-assessments .filters {
  background-color: #f3f3f3;
  margin: 0;
  padding: 1.5rem 30px; }

.class__header {
  margin-bottom: 0.66667rem; }

.class__title {
  font-size: 1.2rem;
  line-height: 1.16667;
  font-weight: 700; }
  @media (min-width: 62em) {
    .class__title {
      font-size: 1.22222rem;
      line-height: 1.09091; } }
  .class__title > a {
    color: #533168; }
    .class__title > a:hover, .class__title > a:focus {
      color: #00798F; }

.class__date {
  color: #676568;
  text-transform: uppercase;
  font-size: 0.8rem;
  line-height: 1.25; }
  @media (min-width: 37.5em) {
    .class__date {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.class__label {
  font-weight: 500; }

.class__label + .field {
  display: inline-block; }

.class__edit {
  margin-top: 0.66667rem; }

.credential {
  padding: 2rem 2.66667rem;
  page-break-inside: avoid; }

.credential__image {
  float: left;
  margin: 0 0.66667rem 0 0;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  overflow: hidden;
  background-color: #66d3db;
  background-position: 50% 105%;
  background-size: 80%;
  position: relative;
  top: -16px; }

.credential__name {
  font-size: 24px;
  margin-top: 0.33333rem;
  margin-bottom: 1.33333rem;
  white-space: nowrap; }

.feature {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2.66667rem;
  border-radius: 0.33333rem;
  overflow: hidden; }
  @media (min-width: 48em) {
    .feature {
      width: 83.33333%; } }
  @media (min-width: 62em) {
    .feature {
      width: 66.66667%; } }

.feature__content {
  background-color: white;
  padding: 2rem 30px; }
  @media (min-width: 48em) {
    .feature__content {
      padding: 2.66667rem 45px; } }

.feature__title {
  font-size: 1.2rem;
  line-height: 1.33333; }
  @media (min-width: 37.5em) {
    .feature__title {
      font-size: 1.3125rem;
      line-height: 1.14286; } }
  .feature__title > a {
    color: #533168; }
    .feature__title > a:hover, .feature__title > a:focus {
      color: #00798F; }

.feature__date {
  color: #676568;
  text-transform: uppercase;
  font-size: 0.8rem;
  line-height: 1.25;
  margin-top: 0.5rem; }
  @media (min-width: 37.5em) {
    .feature__date {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.feature__description {
  margin-top: 1.16667rem; }

.feature__actions {
  margin-top: 1.33333rem; }

.feature__link {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff;
  padding: 0.66667rem 1.33333rem;
  border-radius: 2.66667rem;
  font-size: 1rem;
  line-height: 1;
  margin-bottom: 0.66667rem; }
  .feature__link:hover, .feature__link:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed .feature__link:hover, .reversed .feature__link:focus {
    background-color: #ffffff;
    color: #00798F; }
  @media (min-width: 37.5em) {
    .feature__link {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .feature__link {
      font-size: 0.88889rem;
      line-height: 1.125; } }
  @media (min-width: 37.5em) {
    .feature__link {
      margin-bottom: 0;
      margin-right: 0.66667rem; } }

.feature__all {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  background-color: #ffffff;
  border: 1px solid #cdcbce;
  color: #00798F;
  transition: background-color .15s linear, border-color .15s linear;
  padding: 0.66667rem 1.33333rem;
  border-radius: 2.66667rem;
  font-size: 1rem;
  line-height: 1; }
  .feature__all:hover {
    background-color: #ffffff;
    border-color: #00798F;
    color: #00798F; }
  @media (min-width: 37.5em) {
    .feature__all {
      font-size: 0.9375rem;
      line-height: 1; } }
  @media (min-width: 62em) {
    .feature__all {
      font-size: 0.88889rem;
      line-height: 1.125; } }

.js #lesson-assessment {
  display: none; }

.js #lesson-assessment.is-loaded {
  display: block; }

.lesson__title {
  font-size: 1.2rem;
  line-height: 1.16667;
  font-weight: 700; }
  @media (min-width: 62em) {
    .lesson__title {
      font-size: 1.22222rem;
      line-height: 1.09091; } }
  .lesson__title > a {
    color: #533168; }
    .lesson__title > a:hover, .lesson__title > a:focus {
      color: #00798F; }

.lesson__date {
  color: #676568;
  text-transform: uppercase;
  font-size: 0.8rem;
  line-height: 1.25; }
  @media (min-width: 37.5em) {
    .lesson__date {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.lesson__description {
  font-size: 0.86667rem;
  line-height: 1.15385; }
  @media (min-width: 37.5em) {
    .lesson__description {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .lesson__description {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

h3 + .lesson__list, .vocabulary-assessments .article__chart__caption + .lesson__list, .alphabet-assessments .article__chart__caption + .lesson__list {
  margin-top: 1.33333rem; }

.lesson--list .lesson__title {
  font-size: 1.06667rem;
  line-height: 1.125; }
  @media (min-width: 62em) {
    .lesson--list .lesson__title {
      font-size: 1rem;
      line-height: 1.16667; } }

.lesson--list .lesson__type {
  font-size: 1.06667rem;
  line-height: 1.125;
  margin-bottom: 0.16667rem; }
  @media (min-width: 62em) {
    .lesson--list .lesson__type {
      font-size: 1rem;
      line-height: 1.16667; } }

@media (min-width: 48em) {
  .lesson--list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-align: end;
        align-items: flex-end; }
    .lesson--list .lesson__title {
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%; }
    .lesson--list .lesson__type {
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
      margin-bottom: 0; }
    .lesson--list .lesson__date {
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
      text-align: right; } }

.lesson__pager {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 2.66667rem; }
  .lesson__pager > a {
    -ms-flex-preferred-size: 45%;
        flex-basis: 45%; }

.field--name-field-lesson-preparation > .field__item {
  border-bottom: 1px solid #e7e6e7;
  padding-bottom: 2.66667rem;
  margin-bottom: 2.66667rem; }
  .field--name-field-lesson-preparation > .field__item:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0; }
  .field--name-field-lesson-preparation > .field__item .form-wrapper {
    margin-top: 2rem; }
  .field--name-field-lesson-preparation > .field__item label {
    margin-bottom: 0.66667rem; }

.field--name-field-lesson-preparation .link--preparation-completion {
  margin-top: 1rem; }

.prep:after {
  content: "";
  display: table;
  clear: both; }

@media (min-width: 48em) {
  .prep .prep__header {
    width: 34.78261%;
    float: left;
    margin-left: 0;
    margin-right: -100%; }
  .prep .prep__description {
    width: 52.17391%;
    float: right;
    margin-right: 0;
    margin-left: -100%; } }

@media (min-width: 62em) {
  .prep .prep__header {
    width: 30%; }
  .prep .prep__description {
    width: 60%; } }

.prep__title {
  font-size: 1.2rem;
  line-height: 1.16667;
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 0.33333rem; }
  @media (min-width: 62em) {
    .prep__title {
      font-size: 1.22222rem;
      line-height: 1.09091; } }
  .prep__title > a {
    color: #533168; }
    .prep__title > a:hover, .prep__title > a:focus {
      color: #00798F; }

.prep__date {
  color: #676568;
  text-transform: uppercase;
  font-size: 0.8rem;
  line-height: 1.25;
  margin-bottom: 0; }
  @media (min-width: 37.5em) {
    .prep__date {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.prep__description {
  font-size: 0.86667rem;
  line-height: 1.15385; }
  @media (min-width: 37.5em) {
    .prep__description {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .prep__description {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

.teaser__image {
  margin-bottom: 1.33333rem; }

@media (min-width: 48em) {
  .teaser__image {
    width: 31.25%;
    float: right;
    margin-right: 0;
    margin-left: -100%; }
  .teaser__content {
    width: 62.5%;
    float: left;
    margin-left: 0;
    margin-right: -100%; } }

.teaser__title {
  font-size: 1.2rem;
  line-height: 1.33333; }
  @media (min-width: 37.5em) {
    .teaser__title {
      font-size: 1.3125rem;
      line-height: 1.14286; } }
  .teaser__title > a {
    color: #533168; }
    .teaser__title > a:hover, .teaser__title > a:focus {
      color: #00798F; }

.teaser__date {
  color: #676568;
  text-transform: uppercase;
  font-size: 0.8rem;
  line-height: 1.25;
  margin-top: 0.5rem; }
  @media (min-width: 37.5em) {
    .teaser__date {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.teaser__description {
  margin-top: 1.16667rem; }

.teacher-note__header {
  margin-bottom: 0.33333rem; }
  .teacher-note__header span,
  .teacher-note__header time {
    font-size: 0.8rem;
    line-height: 1.25;
    margin-right: .25em; }
    @media (min-width: 37.5em) {
      .teacher-note__header span,
      .teacher-note__header time {
        font-size: 0.875rem;
        line-height: 1.28571; } }
  .teacher-note__header a:not(.username) {
    display: inline-block;
    border: 0;
    color: #ffffff;
    font-family: "Avenir Next W00", helvetica, arial, sans-serif;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .05em;
    background-color: #ffffff;
    border: 1px solid #cdcbce;
    color: #00798F;
    transition: background-color .15s linear, border-color .15s linear;
    padding: 0.16667rem 0.66667rem;
    border-radius: 0.83333rem;
    font-size: 0.86667rem;
    line-height: 1.38462;
    height: 1.66667rem;
    margin-left: .5em; }
    .teacher-note__header a:not(.username):hover {
      background-color: #ffffff;
      border-color: #00798F;
      color: #00798F; }
    @media (min-width: 37.5em) {
      .teacher-note__header a:not(.username) {
        font-size: 0.875rem;
        line-height: 1.28571; } }
    @media (min-width: 37.5em) {
      .teacher-note__header a:not(.username) {
        padding: 0.29167rem 0.66667rem; } }

.footerMenu {
  margin: 0;
  padding: 0;
  line-height: 1; }
  .footerMenu > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .footerMenu > li {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0; }
  .footerMenu > li > a {
    display: block; }

.footerMenu__item {
  margin-left: 0.5rem;
  margin-right: 0.5rem; }

.footerMenu__link {
  font-size: 0.8rem;
  line-height: 1.25;
  text-transform: uppercase;
  color: #676568;
  font-weight: 500;
  letter-spacing: .1em;
  text-decoration: none;
  transition: all .15s linear; }
  @media (min-width: 37.5em) {
    .footerMenu__link {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  .footerMenu__link:hover {
    color: #533168;
    text-decoration: underline; }

.main-menu {
  z-index: 1; }
  .main-menu[aria-expanded="true"] > .main-menu__content {
    display: block;
    position: relative; }
    .main-menu[aria-expanded="true"] > .main-menu__content:after {
      opacity: 1; }
  .main-menu[aria-expanded="false"] > .main-menu__content {
    display: none; }
    .main-menu[aria-expanded="false"] > .main-menu__content:after {
      opacity: 0; }

.main-menu__heading {
  background-color: transparent;
  height: 42px;
  width: 42px;
  overflow: hidden;
  cursor: pointer;
  opacity: 1; }
  .main-menu__heading:hover, .main-menu__heading:focus {
    background-color: transparent;
    opacity: 1; }
  @media (min-width: 48em) {
    .main-menu__heading {
      display: none; } }

@media (min-width: 0) and (max-width: 47.9375em) {
  .main-menu__content {
    margin-bottom: 1.33333rem; }
    .main-menu__content:after {
      content: "";
      display: block;
      width: 1.33333rem;
      height: 1.33333rem;
      background-position: center;
      position: absolute;
      top: -0.33333rem;
      right: 2.33333rem;
      transform: rotateZ(45deg);
      transition: opacity 200;
      background-color: #00798F;
      z-index: -1; } }

@media (min-width: 48em) {
  .main-menu__content {
    display: block !important; } }

.nav--main {
  margin: 0;
  padding: 0;
  padding: 0; }
  .nav--main > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  @media (min-width: 48em) {
    .nav--main {
      position: relative;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      .nav--main > li {
        display: inline-block;
        margin-top: 0;
        margin-bottom: 0; }
      .nav--main > li > a {
        display: block; } }
  @media (min-width: 62em) {
    .nav--main {
      right: -0.66667rem;
      -ms-flex-pack: end;
          justify-content: flex-end; } }
  @media (min-width: 75em) {
    .nav--main {
      right: -0.83333rem; } }

.nav--main > li {
  font-size: 1.6rem;
  line-height: 1.25;
  margin: 0; }
  @media (min-width: 48em) {
    .nav--main > li {
      font-size: 1.3125rem;
      line-height: 1.14286; } }
  @media (min-width: 62em) {
    .nav--main > li {
      font-size: 1rem;
      line-height: 1.16667; } }
  @media (min-width: 75em) {
    .nav--main > li {
      font-size: 1.16667rem;
      line-height: 1.28571; } }
  @media (min-width: 0) and (max-width: 47.9375em) {
    .nav--main > li {
      border-bottom: 1px solid #006d87; }
      .nav--main > li:last-child {
        border-bottom: 0; } }
  @media (min-width: 48em) {
    .nav--main > li {
      margin-right: 0.66667rem;
      margin-left: 0.66667rem; } }
  @media (min-width: 75em) {
    .nav--main > li {
      display: inline-block;
      margin-right: 0.83333rem;
      margin-left: 0.83333rem; } }

.nav--main > li > a {
  font-weight: 700;
  font-size: 1.33333rem; }
  @media (min-width: 0) and (max-width: 47.9375em) {
    .nav--main > li > a {
      color: #ffffff;
      background-color: #00798F;
      display: block;
      padding: 2rem 3rem 2rem 2rem;
      text-decoration: none; }
      .nav--main > li > a:hover {
        background-color: #006d87; } }
  @media (min-width: 48em) {
    .nav--main > li > a {
      font-size: 0.88889rem;
      text-decoration: none;
      color: #422753; }
      .nav--main > li > a:hover, .nav--main > li > a:focus {
        text-decoration: underline; }
      .nav--main > li > a:hover {
        color: #836297; }
      .nav--main > li > a.is-active {
        color: #21747D; } }
  @media (min-width: 62em) {
    .nav--main > li > a {
      font-size: 0.83333rem; } }
  @media (min-width: 75em) {
    .nav--main > li > a {
      font-size: 1rem; } }

.socialMenu {
  margin: 0;
  padding: 0;
  position: relative;
  line-height: 1; }
  .socialMenu > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .socialMenu > li {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0; }
  .socialMenu > li > a {
    display: block; }

.socialMenu__link {
  display: block;
  float: left;
  width: 30px;
  height: 30px;
  overflow: hidden;
  text-indent: 100%;
  position: relative;
  opacity: .6;
  transition: all .15s linear; }
  .socialMenu__link:before {
    content: "";
    height: 30px;
    width: 30px;
    display: block;
    position: absolute;
    left: 0;
    top: 0; }
  .socialMenu__link:hover {
    opacity: 1; }

.user-menu {
  position: relative;
  z-index: 2; }

.user-menu__heading {
  position: relative;
  height: 2.33333rem;
  width: 2.33333rem;
  background-color: #00798F;
  background-position: center;
  border-radius: 0 0 .125em .125em;
  overflow: hidden;
  text-indent: 3.33333rem;
  white-space: nowrap;
  cursor: pointer;
  color: #fff; }
  .user-menu__heading:hover, .user-menu__heading:focus {
    background-color: #005473; }
  @media (min-width: 0) and (max-width: 47.9375em) {
    .user-menu__heading {
      background-image: none;
      background-color: transparent;
      height: 42px;
      width: 42px; }
      .user-menu__heading:hover, .user-menu__heading:focus {
        background-color: transparent; }
      .user-menu__heading:after {
        content: "";
        display: block;
        height: 100%;
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-position: 50% 8px;
        background-size: 26px; } }

.user-menu__content {
  position: absolute;
  background-color: #00798F;
  border-radius: 0.16667rem;
  box-shadow: 0 0 15px rgba(103, 101, 104, 0.35);
  padding: 0;
  top: 85%;
  top: 100%;
  right: -6px;
  transition: all 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transform-origin: 80% 0;
  display: none;
  opacity: 0;
  transform: scale(0.1, 0.1);
  text-align: center; }
  .user-menu__content:before, .user-menu__content:after {
    content: "";
    display: block;
    width: 0.66667rem;
    height: 0.66667rem;
    background-position: center;
    position: absolute;
    top: -0.33333rem;
    right: 1rem;
    transform: rotateZ(45deg); }
  .user-menu__content:before {
    background-color: transparent;
    box-shadow: 0 0 15px rgba(103, 101, 104, 0.35);
    z-index: -1; }
  .user-menu__content:after {
    background-color: #21747D;
    z-index: -1; }
  [aria-expanded="false"] > .user-menu__content {
    display: none;
    opacity: 0;
    transform: scale(0.1, 0.1); }
  [aria-expanded="true"] > .user-menu__content {
    display: inline-block;
    transform: scale(1, 1);
    opacity: 1;
    box-shadow: 0 10px 15px rgba(103, 101, 104, 0.35); }

.user-menu__list {
  margin: 0;
  padding: 0;
  margin: 0;
  padding: 0;
  padding: 0.5rem 0;
  background-color: #00798F;
  border-radius: 0.16667rem;
  text-align: left; }
  .user-menu__list > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .user-menu__list > li {
    list-style: none; }

.user-menu__item {
  display: block; }
  .user-menu__item:before {
    content: none; }

.user-menu__link {
  font-size: 0.93333rem;
  line-height: 1.28571;
  display: block;
  color: #ffffff;
  text-decoration: none;
  padding: 0.5rem 1.33333rem;
  white-space: nowrap;
  position: relative;
  background-color: #00798F; }
  @media (min-width: 37.5em) {
    .user-menu__link {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .user-menu__link {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .user-menu__link.active, .user-menu__link.is-active {
    color: #ffffff;
    background-color: #00798F; }
  .user-menu__link:hover {
    color: #ffffff;
    background-color: #006d87; }

.add-student__wrapper {
  padding: 2rem 30px;
  background-color: #f3f3f3;
  margin-top: 0; }
  @media (min-width: 48em) {
    .add-student__wrapper {
      padding: 2.66667rem 45px; } }
  .add-student__wrapper input,
  .add-student__wrapper select {
    width: 100%; }

.add-student__heading {
  color: #676568; }

.node-student-form {
  padding-top: 1.33333rem; }
  .node-student-form > .field--name-title {
    margin-top: 0;
    margin-bottom: 1.33333rem; }
    .node-student-form > .field--name-title label {
      color: #343235; }
  .node-student-form > .field--name-field-last-name label {
    color: #343235; }
  @media (min-width: 37.5em) {
    .node-student-form {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .node-student-form > .field--name-title {
        -ms-flex-preferred-size: 45.45455%;
            flex-basis: 45.45455%;
        margin-top: 0;
        margin-bottom: 1.33333rem; }
      .node-student-form > .field--name-field-last-name {
        -ms-flex-preferred-size: 45.45455%;
            flex-basis: 45.45455%;
        margin-top: 0;
        margin-bottom: 1.33333rem; }
      .node-student-form > .form-actions {
        margin-top: 0;
        position: relative; } }
  @media (min-width: 62em) {
    .node-student-form {
      margin-bottom: -1.33333rem; }
      .node-student-form > .field--name-title {
        -ms-flex-preferred-size: 36.36364%;
            flex-basis: 36.36364%; }
      .node-student-form > .field--name-field-last-name {
        -ms-flex-preferred-size: 36.36364%;
            flex-basis: 36.36364%; }
      .node-student-form > .form-actions {
        margin-top: 1.33333rem; } }

.c4l-profiles-teacher-add-form .form-submit {
  margin-top: 2.66667rem; }

.assessment-form {
  padding-bottom: 1.33333rem;
  margin-bottom: 1.33333rem;
  border-bottom: 1px solid #e7e6e7; }
  .assessment-form:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0; }

.assessment-form__header {
  margin-bottom: 1.33333rem; }

.assessment-form__heading {
  font-size: 1.2rem;
  line-height: 1.16667;
  color: #533168;
  margin-bottom: 0.66667rem; }
  @media (min-width: 62em) {
    .assessment-form__heading {
      font-size: 1.22222rem;
      line-height: 1.09091; } }
  .assessment-form__heading > a {
    color: #533168; }
    .assessment-form__heading > a:hover, .assessment-form__heading > a:focus {
      color: #00798F; }

.assessment-form__date {
  font-size: 0.86667rem;
  line-height: 1.15385;
  margin-bottom: 0.66667rem; }
  @media (min-width: 37.5em) {
    .assessment-form__date {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .assessment-form__date {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

.assessment-form__note {
  width: 100%; }
  .assessment-form__note .note__textarea {
    width: 100%; }

@media (min-width: 37.5em) {
  .assessment-form {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .assessment-form__header {
    width: 100%;
    margin-bottom: 1.33333rem; }
  .assessment-form__value {
    max-width: 28em; }
  .assessment-form__date {
    -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%; }
  .assessment-form__note {
    -ms-flex-preferred-size: 58.33333%;
        flex-basis: 58.33333%; } }

@media (min-width: 62em) {
  .assessment-form__header {
    -ms-flex-preferred-size: 47.82609%;
        flex-basis: 47.82609%; }
  .assessment-form__heading {
    margin-bottom: 0.5rem; }
  .assessment-form__date {
    margin-top: 0.16667rem;
    -ms-flex-preferred-size: 18.47826%;
        flex-basis: 18.47826%; }
  .assessment-form__note {
    margin-top: 0.16667rem;
    -ms-flex-preferred-size: 22.82609%;
        flex-basis: 22.82609%; } }

@media (min-width: 75em) {
  .assessment-form__date {
    -ms-flex-preferred-size: 21.73913%;
        flex-basis: 21.73913%; }
  .assessment-form__note {
    -ms-flex-preferred-size: 26.08696%;
        flex-basis: 26.08696%; } }

.note__textarea {
  min-height: 3.83333rem; }

.assessment-form__tab {
  color: #00798F;
  text-decoration: none;
  font-size: 0.93333rem;
  line-height: 1.28571;
  font-weight: 700;
  margin-right: 2rem; }
  @media (min-width: 37.5em) {
    .assessment-form__tab {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .assessment-form__tab {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .assessment-form__tab:last-child {
    margin-right: 0; }
  .assessment-form__tab[aria-hidden="false"], .assessment-form__tab[aria-expanded="true"] {
    color: #533168;
    text-decoration: underline; }

.assessment-form__panes {
  width: 100%;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }

.assessment-form__pane {
  padding-top: 1.66667rem; }
  .assessment-form__pane[aria-hidden="true"], .assessment-form__pane[aria-expanded="false"] {
    display: none; }
  .assessment-form__pane[aria-hidden="false"], .assessment-form__pane[aria-expanded="true"] {
    display: block; }
  @media (min-width: 75em) {
    .assessment-form__pane {
      padding-top: 3.33333rem; } }

.breadcrumb {
  padding-left: 20px;
  padding-right: 20px; }
  @media (min-width: 62em) {
    .breadcrumb {
      padding-left: 36px;
      padding-right: 36px; } }
  @media (min-width: 97.25em) {
    .breadcrumb {
      padding-left: 0;
      padding-right: 0; } }

.breadcrumb-list {
  margin: 0;
  padding: 0;
  padding-left: 20px;
  padding-right: 20px; }
  .breadcrumb-list > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .breadcrumb-list > li {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0; }
  .breadcrumb-list > li > a {
    display: block; }
  @media (min-width: 62em) {
    .breadcrumb-list {
      padding-left: 36px;
      padding-right: 36px; } }
  @media (min-width: 97.25em) {
    .breadcrumb-list {
      padding-left: 0;
      padding-right: 0; } }

.breadcrumb-item {
  vertical-align: middle;
  font-size: 0.93333rem;
  line-height: 1.28571; }
  @media (min-width: 37.5em) {
    .breadcrumb-item {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .breadcrumb-item {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .breadcrumb-item + .breadcrumb-item {
    margin-top: 0; }
    .breadcrumb-item + .breadcrumb-item:before {
      content: "\3009";
      margin-left: 10px;
      margin-right: 4px;
      font-size: .75em; }

.breadcrumb-link {
  text-decoration: none; }
  .breadcrumb-link:hover, .breadcrumb-link:focus {
    text-decoration: underline; }

.comment-form .filter-wrapper {
  padding: 0;
  display: none; }

.comment-form .form-type-item .form-item-label {
  display: inline; }

.comment-form .form-actions {
  margin-top: 1rem; }

.comment-form .form-type-item {
  float: right; }

#comment-body-add-more-wrapper .form-type-select {
  margin-top: 0; }

#block-c4lstudentswitcher,
#block-c4lclasslistblock {
  display: none; }

.class-nav {
  position: relative;
  z-index: 1; }
  @media (min-width: 0) and (max-width: 47.9375em) {
    .class-nav {
      margin-right: 30px;
      margin-left: 30px;
      width: auto;
      display: block; } }

.class-nav__current {
  position: relative;
  font-size: 0.93333rem;
  line-height: 1.28571;
  height: 2.33333rem;
  color: #533168;
  background-color: #422753;
  padding: 0.66667rem;
  float: left;
  z-index: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: all 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  width: 100%;
  cursor: pointer;
  border-radius: 0 0 4.5px 4.5px; }
  @media (min-width: 37.5em) {
    .class-nav__current {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .class-nav__current {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .class-nav__current:hover, .class-nav__current:focus {
    background-color: #533168; }
  @media (min-width: 0) and (max-width: 47.9375em) {
    .class-nav__current {
      padding-left: 10px;
      padding-right: 10px;
      font-weight: 400; } }
  @media (min-width: 48em) {
    .class-nav__current {
      color: #ffffff;
      background-color: #422753; } }

.class-nav__content {
  position: absolute;
  background-color: #00798F;
  border-radius: 0.16667rem;
  box-shadow: 0 0 15px rgba(103, 101, 104, 0.35);
  padding: 0;
  top: 85%;
  top: 100%;
  right: -6px;
  transition: all 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transform-origin: 80% 0;
  display: none;
  opacity: 0;
  transform: scale(0.1, 0.1);
  text-align: center; }
  .class-nav__content:before, .class-nav__content:after {
    content: "";
    display: block;
    width: 0.66667rem;
    height: 0.66667rem;
    background-position: center;
    position: absolute;
    top: -0.33333rem;
    right: 1rem;
    transform: rotateZ(45deg); }
  .class-nav__content:before {
    background-color: transparent;
    box-shadow: 0 0 15px rgba(103, 101, 104, 0.35);
    z-index: -1; }
  .class-nav__content:after {
    background-color: #21747D;
    z-index: -1; }
  @media (min-width: 0) and (max-width: 47.9375em) {
    .class-nav__content {
      right: 0;
      top: 40px;
      z-index: 2; } }
  .class-nav__content[aria-expanded="false"] {
    display: none;
    opacity: 0;
    transform: scale(0.1, 0.1); }
  .class-nav__content[aria-expanded="true"] {
    display: inline-block;
    transform: scale(1, 1);
    opacity: 1;
    box-shadow: 0 10px 15px rgba(103, 101, 104, 0.35); }

.class-nav__list {
  margin: 0;
  padding: 0;
  margin: 0;
  padding: 0;
  padding: 0.5rem 0;
  background-color: #00798F;
  border-radius: 0.16667rem;
  text-align: left; }
  .class-nav__list > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .class-nav__list > li {
    list-style: none; }

.class-nav__item {
  display: block; }
  .class-nav__item:before {
    content: none; }

.class-nav__item > a {
  font-size: 0.93333rem;
  line-height: 1.28571;
  display: block;
  color: #ffffff;
  text-decoration: none;
  padding: 0.5rem 1.33333rem;
  white-space: nowrap;
  position: relative;
  background-color: #00798F; }
  @media (min-width: 37.5em) {
    .class-nav__item > a {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .class-nav__item > a {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .class-nav__item > a.active, .class-nav__item > a.is-active {
    color: #ffffff;
    background-color: #00798F; }
  .class-nav__item > a:hover {
    color: #ffffff;
    background-color: #006d87; }

.class-nav__add.link--add {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.16667rem 0.66667rem;
  border-radius: 0.83333rem;
  font-size: 0.86667rem;
  line-height: 1.38462;
  height: 1.66667rem;
  background-color: #00798F;
  transition: background-color .15s linear;
  color: #ffffff;
  margin: 0.66667rem 1rem 1rem;
  display: inline-block;
  text-align: center;
  min-width: 9em; }
  @media (min-width: 37.5em) {
    .class-nav__add.link--add {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 37.5em) {
    .class-nav__add.link--add {
      padding: 0.29167rem 0.66667rem; } }
  .class-nav__add.link--add:hover, .class-nav__add.link--add:focus {
    background-color: #005473;
    color: #ffffff; }
  .reversed .class-nav__add.link--add:hover, .reversed .class-nav__add.link--add:focus {
    background-color: #ffffff;
    color: #00798F; }

[id="edit-field-class-teachers"],
[id="edit-field-user-classrooms"] {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 1.33333rem;
  -ms-flex-pack: start;
      justify-content: flex-start; }
  [id="edit-field-class-teachers"] > .form-item,
  [id="edit-field-user-classrooms"] > .form-item {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
    @media (min-width: 48em) {
      [id="edit-field-class-teachers"] > .form-item,
      [id="edit-field-user-classrooms"] > .form-item {
        -ms-flex-preferred-size: 48%;
            flex-basis: 48%; } }
    @media (min-width: 62em) {
      [id="edit-field-class-teachers"] > .form-item,
      [id="edit-field-user-classrooms"] > .form-item {
        -ms-flex-preferred-size: 31%;
            flex-basis: 31%; } }

.c4l-class-add-image .form-managed-file .messages {
  display: none; }

.block-facetapi {
  margin-bottom: 2.66667rem; }
  .block-facetapi .block-title {
    text-transform: none;
    font-size: 0.93333rem;
    line-height: 1.07143;
    color: #444;
    border-bottom: 1px solid #e7e6e7; }
    @media (min-width: 62em) {
      .block-facetapi .block-title {
        font-size: 0.88889rem;
        line-height: 1.3125; } }

.facetapi-active,
.facetapi-inactive {
  color: #343235;
  font-weight: 800;
  font-size: 0.93333rem;
  line-height: 1.28571; }
  @media (min-width: 37.5em) {
    .facetapi-active,
    .facetapi-inactive {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .facetapi-active,
    .facetapi-inactive {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .facetapi-active:hover, .facetapi-active:active,
  .facetapi-inactive:hover,
  .facetapi-inactive:active {
    color: #444; }
  .facetapi-active:visited,
  .facetapi-inactive:visited {
    color: #343235; }

.facetapi-active {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: 0.8rem;
  line-height: 1.25;
  border-radius: 4px;
  padding: 3px 6px 3px 3px;
  border: none;
  margin-bottom: 0.33333rem;
  background-color: #e7e6e7; }
  @media (min-width: 37.5em) {
    .facetapi-active {
      font-size: 0.875rem;
      line-height: 1.5; } }
  @media (min-width: 62em) {
    .facetapi-active {
      font-size: 0.77778rem;
      line-height: 1.5; } }

.facetapi-remove {
  float: left;
  margin-right: 0.16667rem; }

.facetapi-count {
  font-size: 0.8rem;
  line-height: 1.25;
  color: #00798F;
  font-weight: normal; }
  @media (min-width: 37.5em) {
    .facetapi-count {
      font-size: 0.875rem;
      line-height: 1.5; } }
  @media (min-width: 62em) {
    .facetapi-count {
      font-size: 0.77778rem;
      line-height: 1.5; } }

.facetapi-facetapi-links {
  margin: 0;
  padding: 0; }
  .facetapi-facetapi-links > li {
    list-style: none; }
  .facetapi-facetapi-links .expanded {
    margin: 0;
    padding: 0; }
    .facetapi-facetapi-links .expanded > li {
      list-style: none; }

#search-form .form-item-retain-filters .form-item-label {
  display: inline; }

#facetapi-facet-apachesolrsolr-block-created li > div > ul > li > div > ul > li > div,
#facetapi-facet-apachesolrsolr-block-dm-field-event-date li > div > ul > li > div > ul > li > div {
  display: none; }

.filters {
  padding: 2rem 30px;
  border-radius: 0.33333rem;
  background-color: #f3f3f3;
  margin-bottom: 2.66667rem; }
  @media (min-width: 48em) {
    .filters {
      padding: 2.66667rem 45px; } }
  .filters input,
  .filters select {
    width: 100%; }
  .filters input.form-checkbox {
    width: auto; }
  .filters input.form-checkbox {
    width: auto; }
  .filters input[type="submit"] {
    width: auto; }
  .filters label {
    color: #676568; }
  .filters .form-actions,
  .filters .form-item,
  .filters .form-wrapper {
    margin-top: 1.33333rem; }
    .filters .form-actions:first-child,
    .filters .form-item:first-child,
    .filters .form-wrapper:first-child {
      margin-top: 0; }

@media (min-width: 48em) {
  .filters__form {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: -1.33333rem; }
    .filters__form > .form-item {
      -ms-flex-preferred-size: 45.45455%;
          flex-basis: 45.45455%;
      margin-top: 0;
      margin-bottom: 1.33333rem; } }

.messages {
  margin-bottom: 1.33333em;
  padding: 0.33333em 15px 0.33333em 30px;
  background-position: 0.66667rem 50%;
  font-weight: 500;
  color: #ffffff;
  border: 0;
  box-shadow: none;
  border-radius: 0.33333rem;
  padding: 0.66667rem 1.33333rem 0.66667rem 2.66667rem;
  background-size: 24px; }
  @media (min-width: 37.5em) {
    .messages {
      padding: 0.83333rem 1.66667rem 0.83333rem 3rem;
      background-size: 30px; } }
  @media (min-width: 48em) {
    .messages {
      padding: 1rem 2rem 1rem 3.33333rem;
      background-size: 36px; } }

.messages--error {
  background-color: #ff3300; }

.messages--warning {
  background-color: #ffcc00;
  color: #676568; }

.messages--status {
  background-color: #21747D; }

.krumo-element,
.krumo-footnote,
.krumo-call,
.krumo-preview {
  color: #000000; }

.navbar {
  margin-top: 0.66667rem; }
  @media print {
    .navbar {
      display: none; } }

.navbar__list {
  margin: 0;
  padding: 0;
  margin: 0;
  padding: 0;
  border-top: 1px solid #e7e6e7;
  overflow: hidden;
  padding: 0;
  text-align: left; }
  .navbar__list > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .navbar__list > li {
    list-style: none; }
  @media (min-width: 48em) {
    .navbar__list {
      display: -ms-flexbox;
      display: flex; } }

.navbar__list > li {
  display: block;
  padding-right: 0.66667rem; }
  .navbar__list > li:before {
    content: none; }

.navbar__list > li > a {
  font-size: 0.93333rem;
  line-height: 1.28571;
  color: #676568;
  display: block;
  font-weight: 500;
  margin: 1rem 0.66667rem 0 0.66667rem;
  padding-bottom: 0.33333rem;
  padding-top: 0.33333rem;
  position: relative;
  text-decoration: none;
  white-space: nowrap; }
  @media (min-width: 37.5em) {
    .navbar__list > li > a {
      font-size: 1rem;
      line-height: 1.3125; } }
  @media (min-width: 62em) {
    .navbar__list > li > a {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .navbar__list > li > a.active, .navbar__list > li > a.is-active {
    border-bottom: 2px solid #21747D;
    cursor: default; }
  .navbar__list > li > a:hover {
    border-bottom: 2px solid #005473;
    color: #005473; }
  .navbar__list > li > a::after {
    border-left: 1px solid #e7e6e7;
    content: "";
    height: 100%;
    padding-bottom: 0.33333rem;
    margin-left: 1rem;
    position: absolute;
    top: 0; }
  @media (min-width: 48em) and (max-width: 61.9375em) {
    .navbar__list > li > a {
      font-size: 14px;
      padding-left: 1rem;
      padding-right: 1rem; } }

.noncontact__wrapper {
  padding: 2rem 30px;
  background-color: #f3f3f3;
  margin-top: 2.66667rem; }
  @media (min-width: 48em) {
    .noncontact__wrapper {
      padding: 2.66667rem 45px; } }
  .noncontact__wrapper input,
  .noncontact__wrapper select {
    width: 100%; }

.noncontact__heading {
  color: #676568; }

.non-contact-form {
  padding-top: 1.33333rem; }
  .non-contact-form > .field--name-title {
    margin-top: 0;
    margin-bottom: 1.33333rem; }
  .non-contact-form .form-type-textfield label {
    color: #343235; }
  .non-contact-form .field--type-datetime h4 {
    color: #343235; }
  @media (min-width: 37.5em) {
    .non-contact-form {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .non-contact-form > .field--name-title {
        -ms-flex-preferred-size: 95.45455%;
            flex-basis: 95.45455%;
        margin-top: 0;
        margin-bottom: 1.33333rem; }
      .non-contact-form > .field--type-datetime {
        -ms-flex-preferred-size: 45.45455%;
            flex-basis: 45.45455%;
        margin-top: 0;
        margin-bottom: 1.33333rem; }
      .non-contact-form > .form-actions {
        margin-top: 0; } }
  @media (min-width: 62em) {
    .non-contact-form {
      margin-bottom: -1.33333rem; }
      .non-contact-form > .field--name-title {
        -ms-flex-preferred-size: 31.81818%;
            flex-basis: 31.81818%; }
      .non-contact-form > .field--type-datetime {
        -ms-flex-preferred-size: 18.18182%;
            flex-basis: 18.18182%; }
      .non-contact-form > .form-actions {
        margin-top: 1.33333rem; } }

.objectives-overview > .assessed-value {
  font-size: 1em; }

@media (min-width: 48em) {
  .objectives-overview {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    .objectives-overview > .objectives-overview__name {
      -ms-flex-preferred-size: 69.56522%;
          flex-basis: 69.56522%; }
    .objectives-overview > .assessed-value {
      font-size: 1.125em;
      -ms-flex-preferred-size: 26.08696%;
          flex-basis: 26.08696%; } }

@media (min-width: 62em) {
  .objectives-overview > .assessed-value {
    -ms-flex-preferred-size: 21.73913%;
        flex-basis: 21.73913%; } }

.objectives-overview__list {
  margin: 0;
  padding: 0; }
  .objectives-overview__list > li {
    list-style: none; }
  .objectives-overview__list > li {
    margin-top: 0;
    padding-bottom: 1.33333rem;
    padding-top: 1.33333rem;
    border-top: 1px solid #e7e6e7; }
  .objectives-overview__list > li:first-child {
    margin-top: 0;
    border-top: 0;
    padding-top: 0; }

.objectives-overview__name {
  font-size: 1.2rem;
  line-height: 1.16667;
  color: #533168;
  margin-bottom: 0.66667rem; }
  @media (min-width: 62em) {
    .objectives-overview__name {
      font-size: 1.22222rem;
      line-height: 1.09091; } }
  .objectives-overview__name > a {
    color: #533168; }
    .objectives-overview__name > a:hover, .objectives-overview__name > a:focus {
      color: #00798F; }

.pager {
  padding-left: 0;
  margin: 2.66667rem auto 0;
  text-align: center;
  list-style: none;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif; }

.pager-first,
.pager-previous,
.pager-item,
.pager-next,
.pager-last, .pager-ellipsis, .pager-current {
  display: inline-block;
  margin-top: 0;
  margin-bottom: 0.66667rem; }

.pager-first > a,
.pager-previous > a,
.pager-item > a,
.pager-next > a,
.pager-last > a, .pager-current > span {
  font-size: 1.2rem;
  line-height: 1.33333;
  margin: 0.33333rem 2px;
  padding: 2px 8px; }
  @media (min-width: 48em) {
    .pager-first > a,
    .pager-previous > a,
    .pager-item > a,
    .pager-next > a,
    .pager-last > a, .pager-current > span {
      font-size: 1.25rem;
      line-height: 1.2; } }

.pager-first > a,
.pager-previous > a,
.pager-item > a,
.pager-next > a,
.pager-last > a {
  text-decoration: none;
  transition: .3s all;
  color: #00798F; }
  .pager-first > a:hover, .pager-first > a:focus,
  .pager-previous > a:hover,
  .pager-previous > a:focus,
  .pager-item > a:hover,
  .pager-item > a:focus,
  .pager-next > a:hover,
  .pager-next > a:focus,
  .pager-last > a:hover,
  .pager-last > a:focus {
    color: #00798F;
    text-decoration: underline; }

.pager-first > a,
.pager-previous > a,
.pager-next > a,
.pager-last > a {
  font-size: 1.06667rem;
  line-height: 1.5; }
  @media (min-width: 37.5em) {
    .pager-first > a,
    .pager-previous > a,
    .pager-next > a,
    .pager-last > a {
      font-size: 1.125rem;
      line-height: 1.33333; } }
  @media (min-width: 62em) {
    .pager-first > a,
    .pager-previous > a,
    .pager-next > a,
    .pager-last > a {
      font-size: 1rem;
      line-height: 1.33333; } }

.pager-current > span {
  color: #444; }

.pager-load-more a:hover, .pager-load-more a:focus {
  background-color: #cdcbce;
  color: #343235; }

.pager-load-more .throbber {
  position: relative;
  top: 5px; }

.pager__button, .link--next:before,
.link--prev:before {
  background-position: 50%;
  height: 2rem;
  width: 2rem;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 2.33333rem;
  background-color: #836297;
  opacity: .4;
  transition: opacity .17s;
  border-radius: 1rem; }
  .pager__button:hover, .link--next:hover:before,
  .link--prev:hover:before, .pager__button:focus, .link--next:focus:before,
  .link--prev:focus:before {
    opacity: 1;
    background-color: #836297; }
  .pager__button[disabled], .link--next[disabled]:before,
  .link--prev[disabled]:before {
    opacity: .2;
    background-color: #6D6D6F; }

.link--next,
.link--prev {
  text-decoration: none;
  font-weight: 500;
  display: block;
  position: relative; }
  .link--next:hover, .link--next:focus,
  .link--prev:hover,
  .link--prev:focus {
    text-decoration: underline; }
  .link--next:before,
  .link--prev:before {
    content: "";
    display: block;
    width: 2rem;
    height: 2rem;
    background-position: center; }

.link--prev {
  padding-left: 2.66667rem;
  text-align: left; }
  .link--prev:before {
    position: absolute;
    left: 0;
    transform: translateY(-25%); }

.link--next {
  padding-right: 2.66667rem;
  text-align: right; }
  .link--next:before {
    position: absolute;
    right: 0;
    transform: translateY(-25%); }

.password-strength, div.password-confirm {
  font-size: 0.88889em;
  line-height: 1.5em;
  margin-top: 1.125em;
  width: 17em;
  float: right;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif; }

.password-strength-title {
  display: inline; }

.password-strength-text {
  float: right;
  font-weight: bold; }

.password-indicator {
  height: 0.1875em;
  background-color: #e7e6e7; }
  .password-indicator > .indicator {
    height: 100%;
    width: 0;
    background-color: #676568; }

input.password-confirm,
input.password-field {
  width: 16em; }

div.password-confirm {
  float: right;
  visibility: hidden;
  width: 17em; }

.password-suggestions {
  font-size: 0.77778em;
  line-height: 1.28571em;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif; }

.confirm-parent,
.password-parent {
  clear: left;
  margin: 0;
  width: 36.3em; }

.planner__app {
  margin-bottom: 2rem;
  position: relative; }

.planner__header {
  margin-bottom: 1.33333rem; }
  .planner__header:after {
    content: "";
    display: table;
    clear: both; }

.planner__heading {
  float: left; }

.planner__title {
  display: inline;
  margin-right: 1.33333rem; }

.planner__subtitle {
  display: inline; }

.planner__nav {
  float: right;
  margin-top: 0;
  margin-bottom: 0; }
  .planner__nav > .planner__button {
    margin-right: 0.66667rem; }
    .planner__nav > .planner__button:last-child {
      margin-right: 0; }

.planner__main {
  max-width: 100%;
  overflow-x: auto; }

.planner__table {
  text-align: center; }
  .planner__table > thead {
    border-left: 0 solid #00798F;
    border-right: 0 solid #00798F; }
  .planner__table > tbody {
    border: 1px solid #e7e6e7;
    border-top: 0; }

.planner__button--secondary {
  background-color: #ffffff;
  border: 1px solid #cdcbce;
  color: #00798F;
  transition: background-color .15s linear, border-color .15s linear; }
  .planner__button--secondary:hover {
    background-color: #ffffff;
    border-color: #00798F;
    color: #00798F; }

.planner__cell {
  border-collapse: collapse;
  border-top: 1px solid #e7e6e7;
  border-right: 1px solid #e7e6e7;
  padding: 1.33333rem;
  width: 20%; }
  .planner__cell:last-child {
    border-right: 0; }
  .planner__row:first-child > .planner__cell {
    border-top: 0; }

.planner__cell--header {
  border: 0;
  border-right: 1px solid #006d87;
  background-color: #00798F;
  font-weight: 500; }

.planner__cell--reschedule {
  background-color: #f3f3f3;
  border-top-color: #f3f3f3; }

.planner__cell--non-contact,
.planner__cell--blocked {
  background-color: #f3f3f3; }

.planner__cell--non-contact.planner__cell--header,
.planner__cell--blocked.planner__cell--header {
  background-color: #e7e6e7;
  border-right-color: #cdcbce; }
  .planner__cell--non-contact.planner__cell--header .planner__day,
  .planner__cell--blocked.planner__cell--header .planner__day {
    color: #676568; }
  .planner__cell--non-contact.planner__cell--header .planner__date,
  .planner__cell--blocked.planner__cell--header .planner__date {
    color: #6D6D6F; }

.planner__cell--today {
  background-color: #ccfafb;
  border-top-color: #99ebef;
  border-bottom-color: #99ebef; }

.planner__cell--today.planner__cell--reschedule {
  background-color: #99ebef;
  border-bottom-color: #e7e6e7; }

.planner__date {
  font-size: 0.8rem;
  line-height: 1.25;
  font-weight: 500;
  color: #ccfafb;
  letter-spacing: .1em;
  text-transform: uppercase; }
  @media (min-width: 37.5em) {
    .planner__date {
      font-size: 0.75rem;
      line-height: 1.25; } }
  @media (min-width: 62em) {
    .planner__date {
      font-size: 0.66667rem;
      line-height: 1.25; } }

.planner__day {
  font-size: 1.4rem;
  line-height: 1.28571;
  font-weight: 700;
  text-transform: none;
  color: #ffffff;
  margin-top: 0.33333rem; }
  @media (min-width: 62em) {
    .planner__day {
      font-size: 1.33333rem;
      line-height: 1.25; } }

.planner__lesson-type {
  font-size: 0.86667rem;
  line-height: 1.15385;
  margin-bottom: 0rem; }
  @media (min-width: 37.5em) {
    .planner__lesson-type {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .planner__lesson-type {
      font-size: 0.88889rem;
      line-height: 1.3125; } }

.planner__lesson-title {
  font-size: 0.86667rem;
  line-height: 1.15385;
  color: #343235;
  font-weight: 400;
  margin-top: 0;
  text-transform: none;
  font-weight: 700; }
  @media (min-width: 37.5em) {
    .planner__lesson-title {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 62em) {
    .planner__lesson-title {
      font-size: 0.88889rem;
      line-height: 1.3125; } }
  .planner__lesson-title > a {
    color: #00798F; }

.planner__lesson-link {
  display: inline-block;
  border: 0;
  color: #ffffff;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0.16667rem 0.66667rem;
  border-radius: 0.83333rem;
  font-size: 0.86667rem;
  line-height: 1.38462;
  height: 1.66667rem;
  background-color: #21747D;
  transition: background-color .15s linear;
  color: #ffffff;
  margin-top: 1rem; }
  @media (min-width: 37.5em) {
    .planner__lesson-link {
      font-size: 0.875rem;
      line-height: 1.28571; } }
  @media (min-width: 37.5em) {
    .planner__lesson-link {
      padding: 0.29167rem 0.66667rem; } }
  .planner__lesson-link:hover, .planner__lesson-link:focus {
    background-color: #00798F;
    color: #ffffff; }
  .reversed .planner__lesson-link:hover, .reversed .planner__lesson-link:focus {
    background-color: #ffffff;
    color: #00798F; }

.planner__pager .pager__button, .planner__pager .link--next:before,
.planner__pager .link--prev:before {
  position: absolute;
  top: 5.66667rem;
  z-index: 1; }

.planner__pager .pager__button--prev {
  left: -2.66667rem; }

.planner__pager .pager__button--next {
  right: -2.66667rem; }

.radios--toggle {
  border-radius: 1.5em;
  overflow: hidden;
  background: #e7e6e7;
  display: inline-block;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch;
  -ms-flex-item-align: start;
      align-self: flex-start; }
  .radios--toggle:after {
    content: "";
    display: table;
    clear: both; }
  .radios--toggle:focus-within {
    border: #00798F 3px solid; }
  .radios--toggle .radio__label {
    position: relative;
    z-index: 99;
    text-transform: none;
    border-radius: 1.5em;
    overflow: hidden;
    margin-bottom: 0;
    float: left;
    text-align: center;
    -ms-flex-positive: 1;
        flex-grow: 1;
    vertical-align: middle; }
    .radios--toggle .radio__label:focus-within {
      border: #00798F 3px solid; }
  .radios--toggle .radio__text {
    display: block;
    position: relative;
    padding: 0.55533rem 1rem;
    font-weight: bold;
    color: #533168;
    height: 100%;
    font-size: .75em;
    border-radius: 1.5em;
    vertical-align: middle; }
    .radios--toggle .radio__text:hover {
      color: #006d87; }
    @media (min-width: 48em) {
      .radios--toggle .radio__text {
        font-size: 1em; } }
  .radios--toggle .radio__input {
    border-radius: 1.5em;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    height: 100%;
    width: 100%;
    z-index: 0;
    border: 0; }
    .radios--toggle .radio__input:focus {
      border: #00798F 3px solid; }
  .radios--toggle .radio__input:checked + .radio__text {
    background-color: #533168; }
  .radios--toggle .radio__input:checked + .radio__text {
    color: #ffffff; }

.search-form {
  position: relative;
  display: inline-block;
  max-width: 100%; }
  .search-form .form-wrapper {
    padding-right: 2rem; }
  .search-form .form-item-label {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px); }

.search-button[type="submit"] {
  background-color: #ffffff;
  text-indent: 40px;
  white-space: nowrap;
  background-position: center;
  height: 2rem;
  width: 2rem;
  position: absolute;
  right: 0;
  top: 0; }

.header-search-form .form-wrapper {
  max-width: 320px; }

.header-search-form .form-text {
  border: 0;
  margin-right: 2rem; }

.header-search-form .form-submit {
  width: 2rem;
  text-indent: 2.33333rem;
  overflow: hidden;
  white-space: nowrap;
  background-position: center;
  background-color: #ffffff;
  position: absolute;
  right: 0;
  top: 0; }
  .header-search-form .form-submit:hover {
    background-color: rgba(255, 255, 255, 0.8); }

.spinner__wrapper {
  display: block;
  background-color: rgba(255, 255, 255, 0.8);
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  z-index: 10; }
  .alphabet-assessments__wrapper .spinner__wrapper {
    position: absolute;
    top: 5.33333rem; }

.spinner__text {
  text-align: center;
  font-weight: 700;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  position: absolute;
  height: 24px;
  padding-top: 84px;
  text-shadow: 0 0 20px #ffffff;
  text-transform: uppercase; }

.spinner {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
  height: 60px;
  width: 60px;
  z-index: 1;
  animation: spin 1.4s infinite linear; }
  .spinner:before {
    content: "";
    display: block;
    width: 60px;
    height: 60px;
    background-position: center;
    border: 8px solid;
    border-color: #836297 #836297 #836297 transparent;
    display: block;
    border-radius: 50%;
    box-sizing: border-box;
    z-index: 2;
    box-shadow: 0 0 20px 10px #ffffff, 0 0 20px 10px #ffffff inset; }
  .spinner:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    background-position: center;
    background: #00798F;
    border-radius: 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    z-index: 2; }

@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.tabs {
  margin-bottom: 2rem; }
  @media print {
    .tabs {
      display: none; } }

.tabs-list {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #e7e6e7; }
  .tabs-list:after {
    content: "";
    display: table;
    clear: both; }
  .tabs-list > li {
    display: block;
    list-style: none;
    margin-top: 0; }
  .tabs-list > li {
    margin-top: 0;
    margin-bottom: -1px;
    float: left; }
  .tabs-list > li > a {
    position: relative;
    display: block;
    margin-right: 4px;
    background-color: #ffffff;
    font-size: 1.06667rem;
    line-height: 1.5;
    border-radius: 0.33333rem 0.33333rem 0 0;
    color: #6D6D6F;
    padding: 0.66667rem 1.66667rem;
    text-decoration: none;
    font-weight: 500;
    border: 1px solid transparent;
    border-bottom-color: #e7e6e7; }
    @media (min-width: 37.5em) {
      .tabs-list > li > a {
        font-size: 1.125rem;
        line-height: 1.33333; } }
    @media (min-width: 62em) {
      .tabs-list > li > a {
        font-size: 1rem;
        line-height: 1.33333; } }
    .tabs-list > li > a:hover {
      background-color: #ffffff;
      color: #00798F; }
  .tabs-list > .is-active > a,
  .tabs-list > .is-active > a:hover {
    color: #444;
    border: 1px solid #ddd;
    background-color: #ffffff;
    color: #21747D;
    cursor: default;
    margin-bottom: -1px;
    border: 1px solid #e7e6e7;
    border-bottom-color: transparent; }

.view__empty {
  margin-bottom: 2rem; }

.section--images .section__heading {
  margin-bottom: 1.33333rem; }

.section--images .images {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: horizontal;
      flex-direction: horizontal;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .section--images .images .image {
    width: 100%;
    margin-bottom: .75rem;
    padding-right: 1rem; }
    @media (min-width: 25em) {
      .section--images .images .image {
        width: calc(50% - 1rem); } }
    @media (min-width: 37.5em) {
      .section--images .images .image {
        width: calc(33.333% - 1rem); } }
    @media (min-width: 62em) {
      .section--images .images .image {
        width: calc(25% - 1rem); } }

.section--images .button {
  margin-left: 0;
  margin-bottom: 1rem; }
  .section--images .button a {
    color: #ffffff;
    text-decoration: none; }

.photo-page .photo-page__item {
  margin-bottom: 1rem; }

.photo-page .button a {
  color: #ffffff;
  text-decoration: none; }

@media (min-width: 75em) {
  .node--type-class .section--images .image {
    width: calc(20% - 1rem); } }

.skip-to-main {
  color: #005473; }

.css-1wa3eu0-placeholder {
  color: #6D6D6F !important; }

.tabledrag-toggle-weight-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end; }
  .tabledrag-toggle-weight-wrapper button.tabledrag-toggle-weight {
    display: inline-block;
    font-family: "Avenir Next W00", helvetica, arial, sans-serif;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .05em;
    transition: all .15s linear;
    color: #00798F; }
    .tabledrag-toggle-weight-wrapper button.tabledrag-toggle-weight:hover, .tabledrag-toggle-weight-wrapper button.tabledrag-toggle-weight:focus {
      color: #005473;
      background-color: transparent; }

.messages.messages--error a {
  color: #ffffff; }

.header {
  margin: 0;
  position: relative;
  z-index: 2;
  margin-bottom: 4.33333rem; }
  .header:before {
    display: block;
    content: "";
    position: absolute;
    top: -200px;
    height: 105%;
    width: 100%;
    left: 0;
    right: 0;
    background-size: 170%;
    background-position: 50% 100%;
    background-repeat: repeat-x !important; }
    @media (min-width: 0) and (max-width: 47.9375em) {
      .header:before {
        height: 40px;
        top: 0; } }
    @media (min-width: 48em) {
      .header:before {
        height: 42%; } }
    @media (min-width: 62em) {
      .header:before {
        height: 44%; } }
    @media (min-width: 87.5em) {
      .header:before {
        height: 4.22222rem;
        background-size: 129.77778rem; } }
  .header .header__inner {
    padding-bottom: 0;
    position: relative;
    height: 0;
    padding-bottom: 1.33333rem;
    padding-top: 200px;
    border-bottom: 3px solid #e7e6e7; }
    @media (min-width: 48em) {
      .header .header__inner {
        padding-bottom: 13.58491%; } }
    @media (min-width: 82.8125em) {
      .header .header__inner {
        padding-bottom: 180px; } }
    @media (min-width: 0) and (max-width: 47.9375em) {
      .header .header__inner {
        height: auto;
        padding-top: 100px;
        padding-left: 0;
        padding-right: 0;
        width: 100%; } }
  .header .header__logo {
    display: block;
    position: absolute;
    width: 160px;
    left: 30px;
    top: 45px;
    z-index: 2; }
  .header .block-language {
    position: absolute;
    top: 0;
    right: 0; }
  .header .class-nav {
    z-index: 2;
    clear: both; }
  .header .user-menu {
    position: absolute;
    right: 65px;
    top: 50px;
    z-index: 2; }
  .header .main-menu__heading {
    position: absolute;
    top: 50px;
    right: 24px; }
  @media (min-width: 48em) {
    .header:before {
      top: 0;
      height: 60px; }
    .header .header__inner {
      padding-top: 0; }
    .header .class-nav {
      position: absolute;
      right: 3.33333rem;
      padding: 0 5px;
      max-width: 200px; }
    .header .block-language {
      position: absolute;
      right: 13.33333rem; }
    .header .class-nav ~ .block-language {
      right: 8.33333rem; }
    .header .user-menu {
      position: absolute;
      right: 0;
      top: 0;
      z-index: 2; }
    .header .main-menu {
      position: absolute;
      right: 0;
      bottom: -2rem;
      width: 100%; } }
  @media (min-width: 48em) and (max-width: 61.9375em) {
    .header .header__logo {
      top: 50px;
      bottom: 1rem;
      width: 19.75%;
      left: 0;
      right: 0;
      margin: auto; }
    .header .nav--main {
      width: 100%;
      text-align: center; }
      .header .nav--main > li:first-child {
        margin-left: 0; }
      .header .nav--main > li:last-child {
        margin-right: 0; } }
  @media (min-width: 62em) {
    .header:before {
      height: 70px; }
    .header .header__logo {
      top: auto;
      bottom: 0.33333rem;
      width: 19.75%;
      left: 0; }
    .header .header__logo {
      bottom: 0.33333rem; }
    .header .block-language {
      position: absolute;
      right: 14rem; }
    .header .class-nav {
      max-width: 200px; }
    .header .class-nav ~ .block-language {
      right: 7.66667rem; }
    .header #block-c4l-main-menu {
      top: 6.66667rem; }
    .header .main-menu {
      bottom: 1.33333rem; }
    .header .nav--main {
      width: 100%;
      text-align: right; } }
  @media (min-width: 75em) {
    .header .main-menu {
      bottom: 1.66667rem; } }

body {
  display: -ms-flexbox;
  display: flex;
  min-height: 100vh;
  -ms-flex-direction: column;
      flex-direction: column; }

.header,
.footer {
  -ms-flex: none;
      flex: none; }

main[role="main"] {
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  padding-bottom: 10rem; }

.footer {
  background: #f3f3f3;
  position: relative;
  margin-top: 15%;
  padding-bottom: 10%;
  text-align: center; }
  @media (min-width: 48em) {
    .footer {
      margin-top: 10%; } }
  @media (min-width: 87.5em) {
    .footer {
      margin-top: 120px; } }
  @media (min-width: 62em) {
    .footer {
      padding-bottom: 8%; } }
  @media (min-width: 87.5em) {
    .footer {
      padding-bottom: 96px; } }

.footer__content {
  position: relative;
  z-index: 50;
  margin-top: 15%; }
  @media (min-width: 48em) {
    .footer__content {
      margin-top: 10%; } }
  @media (min-width: 87.5em) {
    .footer__content {
      margin-top: 120px; } }
  .footer__content nav[role="navigation"] {
    margin-bottom: 1rem; }
  @media (min-width: 37.5em) {
    .footer__content {
      text-align: left; }
      .footer__content nav[role="navigation"] {
        margin-left: -0.5rem; }
      .footer__content .footer__content {
        position: relative; }
      .footer__content .socialMenu {
        position: absolute;
        right: 0;
        top: 0; } }
  @media (min-width: 62em) {
    .footer__content {
      text-align: center;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-align: center;
          align-items: center; }
      .footer__content nav[role="navigation"] {
        margin-bottom: 0;
        vertical-align: middle; }
      .footer__content .socialMenu {
        position: static;
        -ms-flex-order: 10;
            order: 10; }
      .footer__content .copyright {
        margin-top: 0; } }

.footer--triangles--top--wrapper {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
  height: 0;
  margin-top: -20%;
  padding-bottom: 22%; }
  @media (min-width: 48em) {
    .footer--triangles--top--wrapper {
      margin-top: -14%; } }
  @media (min-width: 87.5em) {
    .footer--triangles--top--wrapper {
      margin-top: -196px; } }
  @media (min-width: 48em) {
    .footer--triangles--top--wrapper {
      padding-bottom: 16%; } }
  @media (min-width: 87.5em) {
    .footer--triangles--top--wrapper {
      padding-bottom: 200px; } }

.footer--triangles--top {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 0; }
  @media (min-width: 37.5em) {
    .footer--triangles--top {
      margin-bottom: 0; } }
  @media (min-width: 62em) {
    .footer--triangles--top {
      margin-bottom: 0; } }
  @media (min-width: 87.5em) {
    .footer--triangles--top {
      margin-bottom: 0; } }
  .footer--triangles--top:before {
    content: "";
    position: absolute;
    top: 0;
    height: 0;
    background-size: 100% auto;
    padding-bottom: 50%;
    width: 500%;
    left: -200%;
    right: -200%; }
    @media (min-width: 37.5em) {
      .footer--triangles--top:before {
        padding-bottom: 30%;
        width: 400%;
        left: -150%;
        right: -150%; } }
    @media (min-width: 48em) {
      .footer--triangles--top:before {
        padding-bottom: 30%;
        width: 300%;
        left: -100%;
        right: -100%; } }

.article__header {
  margin-bottom: 6.66667rem;
  position: relative;
  z-index: 1; }
  .article__header .lesson__type {
    margin-top: 0.33333rem;
    display: inline-block;
    font-size: 1.06667rem;
    line-height: 1.3125; }
    @media (min-width: 37.5em) {
      .article__header .lesson__type {
        font-size: 1.125rem;
        line-height: 1.33333; } }
    @media (min-width: 62em) {
      .article__header .lesson__type {
        font-size: 1.16667rem;
        line-height: 1.28571; } }
  .article__header .lesson__info {
    margin-top: 0.33333rem;
    margin-left: 2rem;
    font-weight: bold;
    display: inline-block;
    font-size: 1.06667rem;
    line-height: 1.3125; }
    @media (min-width: 37.5em) {
      .article__header .lesson__info {
        font-size: 1.125rem;
        line-height: 1.33333; } }
    @media (min-width: 62em) {
      .article__header .lesson__info {
        font-size: 1.16667rem;
        line-height: 1.28571; } }
  @media (min-width: 48em) {
    .article__header.profile {
      margin-bottom: 8rem; } }
  .article__header + #lesson-assessment .article__overview {
    padding-top: 5.66667rem;
    padding-bottom: 5rem; }

.article__overview {
  margin-left: calc((100vw - 100%) / -2);
  margin-right: calc((100vw - 100%) / -2);
  padding-left: calc((100vw - 100%) / 2);
  padding-right: calc((100vw - 100%) / 2);
  background-color: #f3f3f3;
  padding-top: 3.33333rem;
  padding-bottom: 2.66667rem; }
  .article__header + .article__overview {
    margin-top: -6rem;
    padding-top: 5.33333rem; }
    @media (min-width: 48em) {
      .article__header + .article__overview {
        padding-top: 3.33333rem; } }

.article__overview + .article__content {
  margin-top: 5rem; }

.article__overview-content {
  margin-top: 1.33333rem; }

.article__date {
  color: #676568;
  text-transform: uppercase;
  font-size: 0.8rem;
  line-height: 1.25; }
  @media (min-width: 37.5em) {
    .article__date {
      font-size: 0.875rem;
      line-height: 1.28571; } }

.article__content-header {
  background-color: #f3f3f3;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1.33333rem; }

.article-chart__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding-top: 2.66667rem;
  width: 100%;
  -ms-flex-align: end;
      align-items: flex-end; }
  .article-chart__container hr {
    border: 1px solid #e7e6e7;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin: 3.33333rem 0; }

.article__chart .assessment-chart__title {
  color: #533168;
  font-weight: bold; }

@media print {
  .article__chart {
    height: 500px;
    page-break-before: always;
    page-break-inside: avoid; } }

.article__chart--primary {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  margin-bottom: 4rem; }
  @media screen and (min-width: 700px) {
    .article__chart--primary {
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%; } }
  @media screen and (min-width: 1000px) {
    .article__chart--primary {
      -ms-flex-preferred-size: 33%;
          flex-basis: 33%; } }
  .article__chart--primary .assessment-chart__title {
    font-size: 22px; }
  .article__chart--primary.chart--secondary {
    margin-top: 100px; }
    .article__chart--primary.chart--secondary h4 {
      color: #533168; }

.article__chart--secondary {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-preferred-size: 66%;
      flex-basis: 66%;
  margin-top: 2.66667rem; }
  @media print {
    .article__chart--secondary {
      height: 400px; } }
  .article__chart--secondary .assessment-chart:first-child {
    border-right: 1px solid #cdcbce;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    margin-right: 3.33333rem; }

.article__topics {
  margin-top: 1.33333rem; }

.article__media {
  margin-bottom: 1.33333rem; }
  @media (min-width: 48em) {
    .article__media {
      margin-bottom: 2.66667rem; } }

.article__overview__figure {
  margin: -6.66667rem auto 2.66667rem;
  width: 8rem; }
  .article__overview__figure img {
    border-radius: 50%;
    overflow: hidden; }

.has-image .article__overview {
  margin-top: 5.33333rem; }
  @media (min-width: 48em) {
    .has-image .article__overview .article__overview__inner {
      width: 100%;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-wrap: none;
          flex-wrap: none; }
    .has-image .article__overview .article__overview__figure {
      width: auto;
      -ms-flex-preferred-size: 26.08696%;
          flex-basis: 26.08696%;
      margin: 0; }
    .has-image .article__overview .article__overview__content {
      -ms-flex-preferred-size: 69.56522%;
          flex-basis: 69.56522%; } }
  @media (min-width: 62em) {
    .has-image .article__overview .article__overview__figure {
      -ms-flex-preferred-size: 17.3913%;
          flex-basis: 17.3913%; }
    .has-image .article__overview .article__overview__content {
      -ms-flex-preferred-size: 78.26087%;
          flex-basis: 78.26087%; } }

.profile__header {
  margin-bottom: 1.33333rem; }
  @media (min-width: 48em) {
    .profile__header {
      margin-bottom: 2rem; } }

.profile__overview {
  margin-left: calc((100vw - 100%) / -2);
  margin-right: calc((100vw - 100%) / -2);
  padding-left: calc((100vw - 100%) / 2);
  padding-right: calc((100vw - 100%) / 2);
  background-color: #f3f3f3;
  padding-top: 3.33333rem;
  padding-bottom: 2.66667rem; }

.l--constrained {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  width: 83.33333%; }
  @media (min-width: 48em) {
    .l--constrained {
      width: 87.5%; } }
  @media (min-width: 62em) {
    .l--constrained {
      width: 91.66667%; } }

.l--constrained--header {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  width: 91.66667%; }
  @media (min-width: 62em) {
    .l--constrained--header {
      width: 91.66667%; } }

.l--constrained--narrow {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 48em) {
    .l--constrained--narrow {
      width: 83.33333%; } }
  @media (min-width: 62em) {
    .l--constrained--narrow {
      width: 66.66667%; } }

.l--constrained--narrow--padded {
  max-width: 800px;
  width: 91.66667%;
  padding: 4.16667%;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 48em) {
    .l--constrained--narrow--padded {
      padding: 4.16667%;
      width: 75%; } }
  @media (min-width: 82.8125em) {
    .l--constrained--narrow--padded {
      padding: 50px; } }

.l--constrained--narrow--figure {
  max-width: 800px;
  width: 91.66667%;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 48em) {
    .l--constrained--narrow--figure {
      width: 75%; } }

.l--bleed {
  padding-left: 20px;
  padding-right: 20px; }
  @media (min-width: 62em) {
    .l--bleed {
      padding-left: 36px;
      padding-right: 36px; } }
  @media (min-width: 97.25em) {
    .l--bleed {
      padding-left: 0;
      padding-right: 0; } }

.l--underlap {
  position: relative;
  margin-top: -6rem;
  z-index: 0; }

.reversed {
  color: #ffffff; }

.ruled {
  border-top: 1px solid #e7e6e7;
  padding-top: 6%; }
  @media (min-width: 37.5em) {
    .ruled {
      padding-top: 6%; } }
  @media (min-width: 62em) {
    .ruled {
      padding-top: 4%; } }
  @media (min-width: 87.5em) {
    .ruled {
      padding-top: 56px; } }

form .field-multiple-table .field-multiple-drag .tabledrag-handle {
  padding-right: 0; }

.draggable a.tabledrag-handle {
  height: 2.2em;
  margin-left: 0; }

a.tabledrag-handle .handle {
  background-position: center;
  height: 100%;
  margin: 0;
  padding: 0; }

@media (min-width: 33.875em) {
  .picker--opened .picker__frame {
    bottom: 10%; } }

.picker__header {
  margin-top: 1em; }

.picker__footer {
  margin-bottom: 1em; }

.picker__weekday {
  color: #6D6D6F; }

.picker__button--today,
.picker__button--clear,
.picker__button--close {
  color: #343235; }

.picker__day--disabled {
  color: #6D6D6F; }
  .picker__day--disabled:hover {
    color: #6D6D6F; }

.picker__day--today:before {
  border-top-color: #00798F; }

.picker__button--today:before {
  border-top-color: #00798F; }

.picker__button--clear:before {
  border-top-color: #00798F; }

.picker__day--selected,
.picker__day--selected:hover,
.picker--focused .picker__day--selected {
  background-color: #21747D; }

.picker__day--highlighted {
  border-color: #00798F; }

.picker__select--month,
.picker__select--year {
  padding: .25em .5em; }

.react-alerts {
  position: fixed;
  right: 0;
  bottom: 0;
  margin: 14px;
  z-index: 999999; }

.react-alerts .alert {
  width: 300px;
  min-height: 50px;
  margin: 10px 0 0 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  border-radius: 2px;
  background-color: #333;
  font-size: 11px;
  box-shadow: 0 8px 12px 0 rgba(0, 0, 0, 0.3);
  color: #fff; }

.react-alerts .alert .content {
  -ms-flex: 1;
      flex: 1;
  text-align: left; }

.react-alerts .alert .icon {
  width: 32px;
  height: 32px; }

.react-alerts .alert .icon div {
  width: 100%;
  height: 100%;
  background-position: 50%;
  background-repeat: no-repeat; }

.react-alerts .alert .icon .info-icon {
  background-image: url("/themes/custom/c4l/img/info.png"); }

.react-alerts .alert .icon .error-icon {
  background-image: url("/themes/custom/c4l/img/error.png"); }

.react-alerts .alert .icon .success-icon {
  background-image: url("/themes/custom/c4l/img/success.png"); }

.react-alerts .alert .message {
  -ms-flex: 3;
      flex: 3;
  padding: 8px 10px; }

.react-alerts .alert .close {
  height: 50px;
  background-color: #444;
  border-radius: 0 2px 2px 0;
  line-height: 50px;
  cursor: pointer; }

.react-alerts .alert .close .close-light {
  background-image: url("/themes/custom/c4l/img/close-light.png");
  width: 100%;
  height: 100%;
  background-position: 50%;
  background-repeat: no-repeat; }

.react-alerts .alert .close .close-dark {
  background-image: url("/themes/custom/c4l/img/close-dark.png");
  width: 100%;
  height: 100%;
  background-position: 50%;
  background-repeat: no-repeat; }

.react-alerts .alert .close:hover {
  opacity: 0.5; }

.react-alerts .alert.hidden {
  display: none; }

.react-alerts .scale-enter {
  transform: scale(0); }

.react-alerts .scale-enter.scale-enter-active {
  transform: scale(1);
  transition: all 250ms cubic-bezier(0, 0, 0.5, 1.5); }

.react-alerts .scale-leave {
  transform: scale(1); }

.react-alerts .scale-leave.scale-leave-active {
  transform: scale(0);
  transition: all 250ms ease-in-out; }

.react-alerts .fade-enter {
  opacity: 0.1; }

.react-alerts .fade-enter.fade-enter-active {
  opacity: 1;
  transition: all 250ms ease-out; }

.react-alerts .fade-leave {
  opacity: 1; }

.react-alerts .fade-leave.fade-leave-active {
  opacity: 0.1;
  transition: all 250ms ease-in; }

/**
 * React Select
 * ============
 * Created by Jed Watson and Joss Mackison for KeystoneJS, http://www.keystonejs.com/
 * https://twitter.com/jedwatson https://twitter.com/jossmackison https://twitter.com/keystonejs
 * MIT License: https://github.com/keystonejs/react-select
*/
.Select {
  position: relative;
  font-family: "Avenir Next W00", helvetica, arial, sans-serif; }

.Select-control {
  position: relative;
  overflow: hidden;
  background-color: #ffffff;
  border: 1px solid #e7e6e7;
  box-sizing: border-box;
  color: #333333;
  cursor: default;
  outline: none;
  padding: 8px 52px 8px 10px;
  border-radius: 0.33333rem; }

.Select-control:hover {
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);
  cursor: pointer; }

.is-searchable.is-open > .Select-control {
  cursor: text; }

.is-open > .Select-control {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  background: #ffffff;
  border-color: #e7e6e7; }

.is-open > .Select-control > .Select-arrow {
  border-color: transparent transparent #999999;
  border-width: 0 5px 5px; }

.is-searchable.is-focused:not(.is-open) > .Select-control {
  cursor: text; }

.is-focused:not(.is-open) > .Select-control {
  border-color: #0088cc #0099e6 #0099e6;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 0 5px -1px rgba(0, 136, 204, 0.5); }

.Select-placeholder {
  color: #aaaaaa;
  padding: 8px 48px 8px 10px;
  position: absolute;
  top: 0;
  left: 0;
  right: -15px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.has-value > .Select-control > .Select-placeholder {
  color: #333333; }

.Select-value {
  color: #aaaaaa;
  padding: 8px 52px 8px 10px;
  position: absolute;
  top: 0;
  left: 0;
  right: -15px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.has-value > .Select-control > .Select-value {
  color: #333333; }

.Select-input > input {
  cursor: default;
  background: none transparent;
  box-shadow: none;
  height: auto;
  border: 0 none;
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  padding: 0;
  outline: none;
  display: inline-block;
  -webkit-appearance: none; }

.is-focused .Select-input > input {
  cursor: text; }

.Select-control:not(.is-searchable) > .Select-input {
  outline: none; }

.Select-loading {
  animation: Select-animation-spin 400ms infinite linear;
  width: 16px;
  height: 16px;
  box-sizing: border-box;
  border-radius: 50%;
  border: 2px solid #cccccc;
  border-right-color: #333333;
  display: inline-block;
  position: relative;
  margin-top: -8px;
  position: absolute;
  right: 30px;
  top: 50%; }

.has-value > .Select-control > .Select-loading {
  right: 46px; }

.Select-clear {
  color: #999999;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  padding: 6px 10px;
  position: absolute;
  right: 17px;
  top: 0; }

.Select-clear:hover {
  color: #c0392b; }

.Select-clear > span {
  font-size: 1.1em; }

.Select-arrow-zone {
  content: " ";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 30px;
  cursor: pointer; }

.Select-arrow {
  border-color: #999999 transparent transparent;
  border-style: solid;
  border-width: 5px 5px 0;
  content: " ";
  display: block;
  height: 0;
  margin-top: -ceil(2.5px);
  position: absolute;
  right: 10px;
  top: 14px;
  width: 0;
  cursor: pointer; }

.Select-menu-outer {
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  background-color: #ffffff;
  border: 1px solid #cccccc;
  border-top-color: #e6e6e6;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);
  box-sizing: border-box;
  margin-top: -1px;
  max-height: 200px;
  position: absolute;
  top: 100%;
  width: 100%;
  z-index: 1000;
  -webkit-overflow-scrolling: touch; }

.Select-menu {
  max-height: 198px;
  overflow-y: auto; }

.Select-option {
  box-sizing: border-box;
  color: #666666;
  cursor: pointer;
  display: block;
  padding: 8px 10px; }

.Select-option:last-child {
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px; }

.Select-option.is-focused {
  background-color: #00798F;
  color: #ffffff; }

.Select-option.is-disabled {
  color: #cccccc;
  cursor: not-allowed; }

.Select-noresults,
.Select-search-prompt,
.Select-searching {
  box-sizing: border-box;
  color: #999999;
  cursor: default;
  display: block;
  padding: 8px 10px; }

.Select.is-multi .Select-control {
  padding: 2px 52px 2px 3px; }

.Select.is-multi .Select-input {
  vertical-align: middle;
  border: 1px solid transparent;
  margin: 2px;
  padding: 3px 0; }

.Select-item {
  background-color: #f2f9fc;
  border: 1px solid #c9e6f2;
  color: #0088cc;
  display: inline-block;
  font-size: 1em;
  margin: 2px; }

.Select-item-icon,
.Select-item-label {
  display: inline-block;
  vertical-align: middle; }

.Select-item-label {
  cursor: default;
  border-bottom-right-radius: 2px;
  border-top-right-radius: 2px;
  padding: 3px 5px; }

.Select-item-label .Select-item-label__a {
  color: #0088cc;
  cursor: pointer; }

.Select-item-icon {
  cursor: pointer;
  border-right: 1px solid #c9e6f2;
  padding: 2px 5px 4px; }

.Select-item-icon:hover,
.Select-item-icon:focus {
  background-color: #ddeff7;
  color: #0077b3; }

.Select-item-icon:active {
  background-color: #c9e6f2; }

.Select.is-multi.is-disabled .Select-item {
  background-color: #f2f2f2;
  border: 1px solid #d9d9d9;
  color: #888888; }

.Select.is-multi.is-disabled .Select-item-icon {
  cursor: not-allowed;
  border-right: 1px solid #d9d9d9; }

.Select.is-multi.is-disabled .Select-item-icon:hover,
.Select.is-multi.is-disabled .Select-item-icon:focus,
.Select.is-multi.is-disabled .Select-item-icon:active {
  background-color: #f2f2f2; }

@keyframes Select-animation-spin {
  to {
    transform: rotate(1turn); } }

.Select.is-disabled {
  opacity: .4; }
  .Select.is-disabled .Select-control {
    cursor: default; }

.page--landing .content {
  padding-bottom: 20%;
  padding-top: 20%;
  position: relative;
  z-index: 10; }
  @media (min-width: 48em) {
    .page--landing .content {
      padding: 10% 0 15%; } }

.page--landing .logo {
  margin-bottom: 1.66667rem;
  max-width: 75%; }
  .page--landing .logo svg {
    display: block;
    height: auto;
    max-width: 100%; }

.page--landing article {
  position: relative; }

.page--landing footer {
  border-top: 1px solid #e7e6e7;
  padding-top: 1.66667rem; }
  .page--landing footer .text--update {
    display: block; }
    @media (min-width: 75em) {
      .page--landing footer .text--update {
        float: left; } }
  .page--landing footer .link--social {
    display: block; }
    @media (min-width: 75em) {
      .page--landing footer .link--social {
        float: right; } }

.elevator-pitch h2 {
  font-size: 1.6rem;
  line-height: 1.125;
  color: #836297;
  font-weight: normal; }
  @media (min-width: 25em) {
    .elevator-pitch h2 {
      font-size: 1.875rem;
      line-height: 1.2; } }
  @media (min-width: 37.5em) {
    .elevator-pitch h2 {
      font-size: 2.25rem;
      line-height: 1.16667; } }
  @media (min-width: 62em) {
    .elevator-pitch h2 {
      font-size: 2.33333rem;
      line-height: 1.14286; } }
  @media (min-width: 75em) {
    .elevator-pitch h2 {
      font-size: 2.66667rem;
      line-height: 1.125; } }

.elevator-pitch h1 {
  color: #533168;
  display: block;
  margin-top: 1.66667rem;
  margin-bottom: 3.33333rem; }

.elevator-pitch .button {
  margin-bottom: 3.33333rem; }

html, body {
  height: 100%; }

.page--landing .page-wrap {
  min-height: 100%; }

.page--landing .bg:before, .page--landing .bg:after {
  content: "";
  position: absolute;
  background-size: 100% 100%;
  display: block;
  height: 0; }

.page--landing .bg--top {
  top: 0;
  position: absolute;
  left: 0;
  height: 0;
  width: 100%; }
  .page--landing .bg--top:before, .page--landing .bg--top:after {
    top: 0; }
  .page--landing .bg--top:before {
    left: 0;
    width: 30%;
    padding-bottom: 18.30508%;
    background-position: 0 100%; }
  .page--landing .bg--top:after {
    right: 0;
    top: 0;
    width: 25%;
    padding-bottom: 14.54545%;
    background-position: 100% 0; }

.page--landing .bg--bottom {
  bottom: 0;
  position: relative; }
  .page--landing .bg--bottom:before, .page--landing .bg--bottom:after {
    bottom: 0; }
  .page--landing .bg--bottom:before {
    left: 0;
    bottom: 0;
    width: 20%;
    padding-bottom: 12.85714%;
    background-position: 100% 100%; }
  .page--landing .bg--bottom:after {
    right: 0;
    bottom: 0;
    width: 50%;
    padding-bottom: 12.02532%;
    background-position: 100% 100%; }

.page--landing .media--wrapper {
  background: #533168;
  background: rgba(83, 49, 104, 0.95);
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: 20;
  display: none; }

.page--landing .media {
  width: 66.66667%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); }

.page--landing .link--close {
  position: absolute;
  bottom: 100%;
  right: 0;
  margin-bottom: 0.66667rem;
  height: 30px;
  width: 30px;
  white-space: nowrap;
  text-indent: 100%;
  overflow: hidden;
  opacity: .8;
  transition: all .15s; }
  .page--landing .link--close:hover {
    opacity: 1; }

.page--user-login .layout-content,
.page--user-password .layout-content {
  max-width: 540px;
  margin-inline: auto; }

.page--user-login .page__title,
.page--user-password .page__title {
  text-align: center;
  -webkit-margin-after: 40px;
          margin-block-end: 40px; }

.page--user-login .form__instructions,
.page--user-password .form__instructions {
  color: #6D6D6F;
  font-size: 16px;
  font-weight: 500;
  margin: 0; }

.page--user-login #edit-openid-connect-client-google-sso-login,
.page--user-password #edit-openid-connect-client-google-sso-login {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.64 9.20455C17.64 8.56636 17.5827 7.95273 17.4764 7.36364H9V10.845H13.8436C13.635 11.97 13.0009 12.9232 12.0477 13.5614V15.8195H14.9564C16.6582 14.2527 17.64 11.9455 17.64 9.20455Z" fill="%234285F4"/><path fill-rule="evenodd" clip-rule="evenodd" d="M8.99976 18C11.4298 18 13.467 17.1941 14.9561 15.8195L12.0475 13.5614C11.2416 14.1014 10.2107 14.4205 8.99976 14.4205C6.65567 14.4205 4.67158 12.8373 3.96385 10.71H0.957031V13.0418C2.43794 15.9832 5.48158 18 8.99976 18Z" fill="%2334A853"/><path fill-rule="evenodd" clip-rule="evenodd" d="M3.96409 10.71C3.78409 10.17 3.68182 9.59318 3.68182 9C3.68182 8.40682 3.78409 7.83 3.96409 7.29V4.95818H0.957273C0.347727 6.17318 0 7.54773 0 9C0 10.4523 0.347727 11.8268 0.957273 13.0418L3.96409 10.71Z" fill="%23FBBC05"/><path fill-rule="evenodd" clip-rule="evenodd" d="M8.99976 3.57955C10.3211 3.57955 11.5075 4.03364 12.4402 4.92545L15.0216 2.34409C13.4629 0.891818 11.4257 0 8.99976 0C5.48158 0 2.43794 2.01682 0.957031 4.95818L3.96385 7.29C4.67158 5.16273 6.65567 3.57955 8.99976 3.57955Z" fill="%23EA4335"/></svg>');
  background-repeat: no-repeat;
  background-position: 20px center; }

.page--user-login #edit-openid-connect-client-microsoft-sso-login,
.page--user-password #edit-openid-connect-client-microsoft-sso-login {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 22 22" fill="none"><path d="M10.5 1.5H1.5V10.5H10.5V1.5Z" fill="%23F25022"/><path d="M10.5 11.5H1.5V20.5H10.5V11.5Z" fill="%2300A4EF"/><path d="M20.5 1.5H11.5V10.5H20.5V1.5Z" fill="%237FBA00"/><path d="M20.5 11.5H11.5V20.5H20.5V11.5Z" fill="%23FFB900"/></svg>');
  background-repeat: no-repeat;
  background-position: 20px center; }

.page--user-login #openid-connect-login-form,
.page--user-password #openid-connect-login-form {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  gap: 20px;
  -webkit-padding-after: 40px;
          padding-block-end: 40px;
  -webkit-border-after: 1px solid #e3e2e3;
          border-block-end: 1px solid #e3e2e3;
  -webkit-margin-after: 40px;
          margin-block-end: 40px; }
  .page--user-login #openid-connect-login-form .button,
  .page--user-password #openid-connect-login-form .button {
    border: 1px solid #e3e2e3;
    border-radius: 6px;
    padding: 6px 20px 6px 48px;
    background-color: transparent;
    text-transform: none;
    color: #6D6D6F;
    font-family: Avenir Next;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal; }

.page--user-login #user-login-form,
.page--user-login #user-pass,
.page--user-password #user-login-form,
.page--user-password #user-pass {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  gap: 24px; }
  .page--user-login #user-login-form .form-item,
  .page--user-login #user-login-form .form-actions,
  .page--user-login #user-pass .form-item,
  .page--user-login #user-pass .form-actions,
  .page--user-password #user-login-form .form-item,
  .page--user-password #user-login-form .form-actions,
  .page--user-password #user-pass .form-item,
  .page--user-password #user-pass .form-actions {
    margin: 0; }
  .page--user-login #user-login-form label,
  .page--user-login #user-pass label,
  .page--user-password #user-login-form label,
  .page--user-password #user-pass label {
    color: #6D6D6F;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase; }
  .page--user-login #user-login-form .description,
  .page--user-login #user-pass .description,
  .page--user-password #user-login-form .description,
  .page--user-password #user-pass .description {
    color: #676568;
    font-size: 14px;
    font-weight: 400; }

.page--user-login .login-form__submit,
.page--user-password .login-form__submit {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  gap: 20px; }
  .page--user-login .login-form__submit .form-submit,
  .page--user-password .login-form__submit .form-submit {
    color: #FFF;
    font-size: 14px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 2px;
    padding: 8px 20px; }
  .page--user-login .login-form__submit .form__reset-password,
  .page--user-login .login-form__submit .form__user-login,
  .page--user-password .login-form__submit .form__reset-password,
  .page--user-password .login-form__submit .form__user-login {
    font-size: 16px;
    font-weight: 500;
    text-decoration: none; }

.page--user-password .login-form__submit {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  gap: 20px; }
  .page--user-password .login-form__submit .form__user-login span {
    -webkit-padding-start: 8px;
            padding-inline-start: 8px;
    display: inline-block; }

.student__navigation .link--vocabulary,
.student__navigation .link--alphabet {
  font-weight: normal;
  margin-right: 0; }
  .student__navigation .link--vocabulary::after,
  .student__navigation .link--alphabet::after {
    content: none; }

.student__navigation .link--literacy {
  margin-right: 0; }
  .student__navigation .link--literacy::after {
    content: none; }

.student__navigation .link--overview {
  margin-left: 0; }

.student__panel[aria-hidden="false"] {
  display: block; }

.student__panel[aria-hidden="true"] {
  display: none; }

.student__panel .section--images .link--more {
  margin-left: 20px; }

.student__image {
  float: left;
  margin: 0 0.66667rem 0 0;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  overflow: hidden;
  background-color: #66d3db;
  background-position: 50% 105%;
  background-size: 80%; }

.student__name {
  font-size: 1.06667rem;
  line-height: 1.125;
  padding: 0.83333rem 0.66667rem 0 0; }
  @media (min-width: 62em) {
    .student__name {
      font-size: 1rem;
      line-height: 1.16667; } }
  .student__name a {
    color: #676568;
    line-height: 1; }

.student__print {
  margin-top: 2rem !important; }

@media (min-width: 48em) {
  .has-image #student--overview .article__overview {
    padding-top: 5.33333rem; } }

@media (min-width: 48em) {
  .no-image #student--overview .article__overview {
    padding-top: 5.33333rem; } }

.field--name-field-student-bio label {
  display: none; }

.student__notes .filters,
.student__notes .views-element-container {
  margin: 0.83333rem; }

.student__notes .views-row {
  margin-bottom: 1.33333rem; }
  .student__notes .views-row:last-child {
    margin-bottom: 0; }

.section--processes .title--teaser {
  text-align: center; }

.section--questions {
  padding-bottom: 16%; }
  @media (min-width: 48em) {
    .section--questions {
      padding-bottom: 14%; } }
  @media (min-width: 62em) {
    .section--questions {
      padding-bottom: 12%; } }
  @media (min-width: 87.5em) {
    .section--questions {
      padding-bottom: 124px; } }

.section--learn-more {
  position: relative;
  z-index: 100; }
  .section--learn-more .l--constrained--narrow {
    position: relative; }
  .section--learn-more .block--feature {
    margin-left: -10%;
    margin-right: -10%;
    padding-left: 10%;
    padding-right: 10%; }
    @media (min-width: 48em) {
      .section--learn-more .block--feature {
        position: absolute;
        top: 50%;
        width: 112.5%;
        left: -6.25%;
        right: -6.25%;
        margin-left: 0;
        margin-right: 0;
        transform: translateY(-50%);
        padding: 6.25%; } }

.block--newsletter .form--newsletter {
  margin: 0;
  margin-top: 1rem; }
  .block--newsletter .form--newsletter label {
    float: left;
    margin-right: 0.66667rem;
    padding-top: 0.66667rem; }

@media (min-width: 75em) {
  .block--newsletter p {
    float: left;
    margin: 0;
    width: 54.54545%; }
  .block--newsletter .form--newsletter {
    margin: 0;
    float: right;
    width: 40.90909%; }
    .block--newsletter .form--newsletter label {
      float: none;
      margin-right: 0;
      margin-top: 0;
      padding-top: 0; } }

.section--grants {
  padding-top: 16%; }
  @media (min-width: 48em) {
    .section--grants {
      padding-top: 14%; } }
  @media (min-width: 62em) {
    .section--grants {
      padding-top: 12%; } }
  @media (min-width: 87.5em) {
    .section--grants {
      padding-top: 124px; } }

.page__title {
  margin-bottom: 4rem; }

.page__subtitle {
  font-weight: 500;
  font-size: 1.06667rem;
  line-height: 1.3125;
  margin-bottom: 2rem; }
  @media (min-width: 37.5em) {
    .page__subtitle {
      font-size: 1.125rem;
      line-height: 1.33333; } }
  @media (min-width: 62em) {
    .page__subtitle {
      font-size: 1.16667rem;
      line-height: 1.28571; } }
  .page__title + .page__subtitle {
    margin-top: -3.33333rem; }

.link--back {
  position: relative;
  top: -2rem; }
  @media (min-width: 48em) {
    .link--back {
      position: absolute;
      top: -9.5rem;
      right: 0; } }

.block-system-main-block {
  position: relative; }
